Main Menu

Generation Logic

Started by Teck Hock, August 27, 2021, 01:18:17 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Teck Hock

I have quite a complex TT with abt 604 activities.
Sometimes it increases very fast till 59+. Then stay there for many many hours until I stop the process.
Sometimes it increases till 56+. Then stay there for many many hours until I stop the process.
This morning I did another attempt, all 604 activities completed in less than 20 mins.

Can help me understand the logic behind this and what are the ways we can do to improve our chances?

Thks

Liviu Lalescu

59+  ->  do you mean above 590?

Sometimes restarting does help. You can generate multiple with a time limit.

I cannot say exactly what the problem is. The generation is semi-random.

Teck Hock

ya. 59+ means above 590.
I just got another fully generated TT with a better period distribution.

Liviu Lalescu

For some very difficult files you need restarting.

You can generate multiple, if you have a multi-core computer. I have 8 cores / 16 threads and I usually generate in parallel on 8 threads selected in the interface (on the files of the users). This way, you have much better chances.

Teck Hock

Btw there is a spinner Timetables - set at 10.
What is this value for?
Thks

Liviu Lalescu

Number of timetables total.

Teck Hock


Liviu Lalescu

Choose to how many final timetables you would like. Say you choose it to 100 (Timetables spin box).

Say you have 8 cores/16 threads and you choose spin box Threads = 8.

You will obtain 100 timetables, and a possible scenario: core 1 will work on 12 timetables, core 2 will work on 13, ..., core 8 will work on 10 timetables (depends on luck), with the sum timetables = 100 and the time maybe 8 times faster than to generate 100 timetables on a single core (but the processor will heat more and be a bit slower).

By the way, there is a Help button there, please read.

Teck Hock

This 603 activities TT, I got a fully generated TT 1 or 2 days ago. I think in less than 30 mins.

But this round after 15 hours.

If I continue to let it run, will it get the fully generated TT?

Thks

Liviu Lalescu

I am not sure. There is a file, examples/FET-5-official/Namibia/by-Bobby/set-2/may-take-hours/CONCORDIA.fet, in the FET examples, which solves in under 1 minute or in 5 hours.

Some users say that they need to restart.

Teck Hock

I have a partial TT with 537 activities.
I have make 3 sub-activities inactive.
The generation was fast and was completed for 534 activities in 15 min 44 s.
See first opicture

Then I make 1 more sub-activity active.

However the generation after 1 hour, it is max placed activities is 436.
See second picture.

I have tried earlier even to 3 hours it didnt cross 500 activities.

Questions.
1. Is the last activities that I make active the main cause?
2. How should I go about finding which activities should I modify?
3. Any advise on how to resolve this?

Thks

Liviu Lalescu

1.: Probably yes.

2. and 3.: I would leave active all the activities and try deactivating constraints, then activate them one by one.

You might want to generate on multiple threads, if you have a multi-core computer.

Teck Hock

Would like to understand more details on how generation is done.

1. If I generated a TT, then I add some activities, does FET start from existing generated and continue with added activities or does FET start everything from fresh again?

2. How does FET prioritse the activity to be slot in?

3. If FET encounter a difficult activity that cannot be slotted in, will it just keep trying that activity or skip to the next activity and later then try this difficult activity again?

Thks

Liviu Lalescu

1. Start from scratch.

2. The initial order of the activities is computed based of constraints on each activity, more difficult first.

3. If there are 420 activities and FET reaches 410, it means all the activities in the initial order  from 1 to 410 are placed. Then FET tries with number 411. If it cannot, it will displace numbers say 316 and 390 and place 411, and it will have only 409 activities placed, it will try to place the number 316 and 390, and so on.

Teck Hock