How much time should i wait?

Started by xtzetzias, February 12, 2024, 07:26:37 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

xtzetzias

Hello everyone,
I'm trying to make a timetable and it seems the conditions i've set are quite tight.
I'm running fet on an old i7 proccessor, 3 threads and till now (that's 32 hours) it has managed to place 354, 354 and 355 out of 356 activities at 3, 4 and 10 hours respectivelly.
My question is, how much time should i let it run? Is there a rule about this? What's your experience?

Liviu Lalescu

Hello,

I saw a record of ~47 hours and I think I saw one over 100 hours.

If it arrived at n_activities-1, the chances are high that it is solvable. But I am not sure if you should stop and restart.

If you want, you can send me your file, and I'll generate over night with 8 threads (I have an 8-core 16-threads computer, a powerful Ryzen 2700X). I need to see the file's behavior.

xtzetzias

Great machine!
Ok, i attach the file You cannot view this attachment.
Thanks!
(Meanwhile, my wife accidently stopped the generarion at 32 and a half hours... I'll start it over tommorrow.

Liviu Lalescu

Yes, it is a good computer, even if it is 6 years old :)

It is a useful information that it didn't finish in 32.5 hours. I thought this time was ~10 hours. Hmm... this might be worse.

But I'll try anyway.

Are there constraints which can be relaxed? Or constraints which you inputted which are actually stronger in the .fet file than it should be, because you did not find the exact constraint in FET?

xtzetzias

No, i don't think so, I think I've found the proper constraints. If it keeps failing, I'll have to relax something. The interesting observation I've made is that in this 32 hour effort as well as in previous ones with almost the same constraints, the activity that is always left to be placed is the one with id 573. I've spent some time trying to figure out why it's always the same, but with no results. That can't be a coincidence however, unless there's a certain way that fet tries to generate the timetable, that leads to this.
I'll give it some more thought.

Liviu Lalescu

The initial order of the activities is the same in each generation, so this id 573 is the last?

I am generating and I obtained very quickly 354/356, along with two other 352. See the screenshot. I think your file belongs to the category in which you need to restart after say 10-15 minutes.

The random seed for this 354 (so you can generate single starting with this random seed and see the time in which you arrive to 354, to compare with my computer):

----------
Generation started on: 2/12/24 11:03 PM

The random seed at the start of generation is:
   s10=11, s11=3, s12=3,
   s20=11, s21=3, s22=3.

This file was automatically generated by FET 6.17.0.
----------

I will let you know the progress.

I have hopes that by restarting at 10 minutes in a whole night we'll find a solution.

xtzetzias

I don't know how to check the initial order nor the random seed. I'll do some reading :-)
However i checked that the semi-finished timetables (the ones that only the specific activity was not placed) were different.
I'll try the stop and start method.

Liviu Lalescu

Random seed: enter the random seed I gave you in the Settings > Advanced > Random seed and generate single on your exact file.

Start/stop: generate multiple: 1000 timetables, time limit = 10 minutes (or some value you consider for your computer).

xtzetzias


Liviu Lalescu

#9
Got a 355/356 at 4m 50s (see attached screenshot). Fingers crossed tonight. I hope this time limit is the way to beat this data file.

Edit: the starting random seed is:

---
Generation started on: 2/13/24 12:26 AM

The random seed at the start of generation is:
   s10=68262778, s11=1552882767, s12=641034255,
   s20=1869336812, s21=2540485328, s22=2706429529.

This file was automatically generated by FET 6.17.0.
---

xtzetzias

So, with your first random seed, 8 threads, managed 354/356 in two threads, both at about 18 minutes.
I'll try the other seed as well.

Liviu Lalescu

Just to make sure you understood correctly: a certain starting random seed can be specified only for generating single. If you input a seed and generate multiple, the starting seeds are computed differently for each thread.

If you want to compare your computer with mine, try my last seed (for 355/356) by generating single on your computer (note: since I generated on 8 threads, it is a bit slower than if I generated on a single thread on my computer, since the processor gets more used and warmer).

xtzetzias

Yes, i got it after my last post. Now, first random seed, single, 3min14sec.

xtzetzias

Second seed, single 355/356 in 7m14s.

Liviu Lalescu

Unfortunately, no success (see attached screenshot). 355/356 were reached in only one timetable, and I also generated that timetable single for over 7 hours.

Seems like you need to relax some constraints.