FET Forum

FET Support (English) => General Stuff => Topic started by: infoo_ on January 17, 2023, 11:23:43 PM

Title: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: infoo_ on January 17, 2023, 11:23:43 PM
Hello

Suppose we have generated a timetable on January.

On March, a teacher's left and the activities related to him are assigned to another teacher. Every teacher has its own "A teacher's not available time", thus if we try to generate another timetable, it is probably that a lot of activities will be allocated in another periods.

So my question is: If a schedule needs to be changed, how to automatically prevent unwanted allocation changes?

That is, modify the minimum amount of activities possible, and that the activities that really need to move do so.

A useful insight came from an answer of @Liviu Lalescu :

Quote from: Liviu Lalescu on January 15, 2023, 08:36:01 PMIf your file is "name.fet", open "name_data_and_timetable.fet", from the results, with FET, and generate it. It has all the activities locked.

However, I don't understand how "locked activities" work (where can we find them?) and how can I use this to prevent a lot of allocation changes.

I would like an automatic behaviour, but if it's not possible, what activities should I lock? If I lock some activities that should be unlocked, then an impossible timetable could arise?

Thanks in advance
Title: Re: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: Liviu Lalescu on January 18, 2023, 05:09:44 PM
Hello,

Locking an activity means adding for it a constraint activity preferred starting time and maybe a constraint activity preferred room (both probably not permanently locked).

You can add/remove these locking constraints in the timetable view dialogs and in the advanced lock/unlock menus.

You can remove these locking constraints also from the time/space constraints list.

Unfortunately, there is no way to know exactly which activities should be locked and unlocked to regenerate a timetable. FET was designed from the start to generate an initial timetable - locking constraints were added as a necessity but not elegantly.
Title: Re: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: infoo_ on January 19, 2023, 05:31:12 AM
Hello

data_and_timetable.fet is just another FET file with all activities locked? If so, can I edit some activities to meet the requested March timetable?

So before doing any locking/unlocking, would it be nice to make a copy of the data_and_timetable.fet just for prevention?

As always, I cant can start locking a few activities, and then if the timetable is generated, I can increase the amount of locked activities (from the very first changed timetable, not from the subsequents) to try until I find approximately the most blocked activities distribution?

Edited
Title: Re: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: Liviu Lalescu on January 19, 2023, 08:05:07 AM
Hello,

I think yes.
Title: Re: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: infoo_ on January 19, 2023, 08:21:21 AM
Quote from: Liviu Lalescu on January 19, 2023, 08:05:07 AMI think yes.

Thanks! I made a small change in my last message because of a typo. But I think the answer is still the same.
Title: Re: If a schedule needs to be changed, how to prevent unwanted allocation changes?
Post by: Liviu Lalescu on January 19, 2023, 08:39:09 AM
Yes, I assumed this was a typo :)