How to adjust Time Table?

Started by thanhnambkhn, November 30, 2016, 03:21:07 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

thanhnambkhn

Hi Liviu,
Fet generates Time Table result, which is amazing and useful, it is no-doubt.

But I see that it's not enough.

Let's see this problem explain here:
- The School A, uses FET to generate to the Time Table AT_1. AT_1 is perfect and work like charm.
- Someday, there are some changes (some teachers change their requirements, or user want to manual change some activities from an hour to other hour ...)
- The school needs new Time Table (AT_2) which adapts new requirements, but It has least change compare to AT_1. (As you know, change all time_table of all school is very bad)

I see FET have lock/unlock function, but it is not enough to solve the above problem.
So my question here is how to do that?

Volker Dirr

for small changes (a few activities):
- do it manualy with FET or (a bit more comfortable) with TiTiTo.

for larger changes (more then a fist full activities):
if you have got an easy timetable: use the lock/unlock feature. But it is only usefull if you have got easy timetables.

for difficult timetables:
read
http://www.timetabling.de/manual/FET-manual.en.html#id_38

in fact it it isn't needed that all activities will stay at the same time. in fact it is only needed that teachers and students still got the same working times / free days. You can add those "new" constraints by not available times.

thanhnambkhn

Hi Volker Dirr,

Quotefor small changes (a few activities):
- do it manualy with FET or (a bit more comfortable) with TiTiTo.
-> Which is "small changes", could you give me an example, how to do it manually which has least effect to other teachers, students.
-> I can not use TiTiTo, I use Fet-cl with some customizes which make FET-cl be suitable for Vietnamese high schools.

Quotefor larger changes (more then a fist full activities):
if you have got an easy timetable: use the lock/unlock feature. But it is only usefull if you have got easy timetables.
-> Which is "easy timetable"? How to know which items should be locked or unlock?
Ex 1: A Students set needs to change an activity A at hour H, day D to hour H' on the next day.
Ex 2: A Students set needs to ex-change an activity A at hour H, day D to an other activity A' at hour H', day D'.
How should use lock/unlock feature in these cases?

Quotein fact it it isn't needed that all activities will stay at the same time. in fact it is only needed that teachers and students still got the same working times / free days. You can add those "new" constraints by not available times.
-> Confirm:
Would you mean: add new constraints which make all teachers, students sets "Not available time" with all days which that teacher (or students set) does not have any activity in the current time table?
Ex: Current time table: Teacher T, have 2 activities at: (A1,H1,D1) at Monday;  (A2,H2,D2) at Friday;
So when re-generate TimeTable, I should add new constraint which makes Teacher T not available time at the remain days (Tuesday, Wednesday, Thursday,)? Do I get your idea correctly?

Thank you so much for your help.

Volker Dirr

#3
"small" changes -> not many. maybe around 10. Of course you can do that also with 100, but in my opinion that is stupid. something around 10 is "small".

TiTiTo works with FET-gui and with FET-cl, since both produce the same file. I don't know your customizes. So you changed the fet file format? TiTiTo just read the fet file.

"easy" -> FET solves in a few minutes or max hours. Of course you can do that also if it need days to solve, but in my opinion it doesn't make sense then.
If you have "difficult" timetables and try to use that trick, then you will see that you will get impossible datasets very fast.

"how you know" -> you need to think. it is difficult to say that without an example. most needed is to think. if you don't know how to think, you can just do it with try and error. as soon as you found successful try you need to think, only by that you can learn "how to know".

About your examples:

ex 1: in that case you need to unlock only that single activity (if you have got an easy timetable).

ex 2: in that case you need to unlock that 2 activities (if you have got an easy timetable.)

You need to unlock more activities, if you have got an difficult timetable. i can't explain more detailed without a dataset.

last example:
correct! in normal case you only need to care about that. All other can stay the same. so only add those constraints and regenerate.