make fet-cl dump highest without stopping

Started by mercurialuser, September 06, 2017, 10:00:21 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mercurialuser


I'd like to have fet-cl write the highest timetable without stopping the program. I'm getting 63x out of 639 activity placed and so I'd like to see what it is happening, which activity is blocked by which constraint, etc etc..

It would be nice to be able to load the saved partial timetable and restart the search from that point... of course, I'd modify the constraints to be able to place the remaining activities...


Liviu Lalescu

Quote from: mercurialuser on September 06, 2017, 10:00:21 PM
I'd like to have fet-cl write the highest timetable without stopping the program. I'm getting 63x out of 639 activity placed and so I'd like to see what it is happening, which activity is blocked by which constraint, etc etc..

It is difficult, because I cannot rely on more signals. I already use SIGTERM.

But I think you can safely interrupt the generation with SIGTERM and get the highest stage timetable. It would not be useful to continue the generation. If you change a constraints, the whole procedure changes (see your second request and my answer, below). You can see the initial activities order in the logs, and the maximum placed activities. The next one after the maximum placed is problematic.

I will add your words in the TODO. Meanwhile, please let me know if my above words help.

Quote
It would be nice to be able to load the saved partial timetable and restart the search from that point... of course, I'd modify the constraints to be able to place the remaining activities...

This would not be possible. If you modify the constraints, the whole thing is changed.

But I will add also these words of yours in the TODO.

mercurialuser

You can use SIGUSR1 and 2 (in linux)

If I relax the constraints there should be no problem to resume the search...

After about 90 minutes I have 635 out of 639 activities placed. I'd like to tell FET to ignore any constraint and put the remaining activities in the timetable, or save the timetable while still searching.

It may be easy for me to place the missing actvities or I may accept the activities breaking a constraint... in the meantime FET can still be searching...

Liviu Lalescu

Quote from: mercurialuser on September 06, 2017, 11:02:19 PM
You can use SIGUSR1 and 2 (in linux)

I need to address all the operating systems.

Quote
If I relax the constraints there should be no problem to resume the search...

After about 90 minutes I have 635 out of 639 activities placed. I'd like to tell FET to ignore any constraint and put the remaining activities in the timetable, or save the timetable while still searching.

It may be easy for me to place the missing actvities or I may accept the activities breaking a constraint... in the meantime FET can still be searching...

The program cannot break the constraints, but you are right to request a feature to save the highest/current timetable. But I don't have enough signals (on Windows and maybe other systems).

I'll think about this.