Special Weigths for timeslots

Started by gesamtschule, September 28, 2008, 10:04:07 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

gesamtschule

We have a lot of teacher which don't work full time. So there are a lot of wishes when the teacher are don't want to work. You can classify them into:
At Monday 1st hour it's impossible for me to work and
At Monday 1st hour I'm really tired, so it would be great if don't has to work there.
Fortunately the first constraint is easy to define, but I'm unable to increase the satisfaction of the teacher-college by defining constraints with 90% that the person shouldn't work on monday morning.
This is for us a major issue and it would be great if you could fixed it.

Liviu Lalescu

Please add constraint activities preferred time slots (or starting times), teacher T, all subjects, all students sets, all activity tags, 90%, not allowed on Monday first hour.

Volker Dirr

Quote[...] At Monday 1st hour I'm really tired, so it would be great if don't has to work there.
[...] but I'm unable to increase the satisfaction of the teacher-college by defining constraints with 90% that the person shouldn't work on monday morning.
This is for us a major issue and it would be great if you could fixed it.
So what should i do? Talk to your teacher-college?
No kidding. My chef would laugh at me if i suggest that constraint.
So the only possible solution is to set maybe a break to all students/teachers at that time.

Liviu Lalescu

Volker, I think he is trying to minimize the activities at Monday 1st hour, because people are tired then.

If you also want as little possible activities on Monday 1st hour, add constraint activities preferred starting times (or time slots), 90%, not allowed Monday 1st.

gesamtschule

Quote
Quote[...] At Monday 1st hour I'm really tired, so it would be great if don't has to work there.
[...] but I'm unable to increase the satisfaction of the teacher-college by defining constraints with 90% that the person shouldn't work on monday morning.
This is for us a major issue and it would be great if you could fixed it.
So what should i do? Talk to your teacher-college?
No kidding. My chef would laugh at me if i suggest that constraint.
So the only possible solution is to set maybe a break to all students/teachers at that time.
No no, it was a simple example. Their are some teachers who have really serious reasons why they don't want to teach at a special time, but it is possible to work for them at this this time (For example his children  must wait at a foreign school that the  dad bring them home) .  Other teachers has times where it is really impossible to work at special times (for example they definitely don't get a person which looks on the children and the children are not old enough to be alone).

Volker Dirr

#5
That is also an other reason why i work only with 100% weights.

Maybe you have 10 of those wishes. Add that constraints with 100%. If FET can't solve that, then talk to that 10 guy and tell them:
"It is not possible to do it. But maybe it is possible if i increase your max gaps per week. What do you want? That free period, but with a higher gap? Up to what number of gap?"

(Or if you don't want to talk (or other reason), you just increase the max gaps of all teachers and try again and just tell the college that a lower max gap was not possible.)


gesamtschule

Well of course you could work with try and error, but if each run needs at least 1 hour and you have 20 of such wishes, you need a lot of time to get a nice timetable. I think than it would be more effective to calculate 20 possible solution over night and analyze the solution manually.  

Volker Dirr

#7
Not practical:

If your timetable already need 1 hour to solve.
What do you expect if you add more contraints? It is slower!

So even if you add some of those 20 wishes and you generate multible variants. What do you want to do?

Maybe one table include (no conflict) following:
a) a table with wish 1, 4, 7, 9 and 10.
b) a table with wish 1, 4, 7, 9, 11.
c) a table with wish 1, 4, 7, 12.
and so one...

What do you want to do with so many tables?
What do you want to do if you get that three tables i wrote above?

You need to decide! You just decide later by that. You waste a lot of time for nothing if you calculate and decide later the same thing you can already decide before!

Also constraints with less then 100% are bad, because some possible solution might skipped! That is not critical if you have an easy timetable. in that case you can use weight with less then 100%. But it is critical if you use an difficult timetable, because FET might skip a solution just because of an wish that is not needed!

gesamtschule

QuoteNot practical:

If your timetable already need 1 hour to solve.
What do you expect if you add more contraints? It is slower!
Ok that is clear but no problem if the solution is better
Quote
So even if you add some of those 20 wishes and you generate multible variants. What do you want to do?

Maybe one table include (no conflict) following:
a) a table with wish 1, 4, 7, 9 and 10.
b) a table with wish 1, 4, 7, 9, 11.
c) a table with wish 1, 4, 7, 12.
and so one...

What do you want to do with so many tables?
What do you want to do if you get that three tables i wrote above?

You need to decide! You just decide later by that. You waste a lot of time for nothing if you calculate and decide later the same thing you can already decide before!
Well of course I must made a decision, but this is the same if I calculated many solution with 100%. If I get a lot of  solution I can rate the solution with a second program for example.
Quote
Also constraints with less then 100% are bad, because some possible solution might skipped! That is not critical if you have an easy timetable. in that case you can use weight with less then 100%. But it is critical if you use an difficult timetable, because FET might skip a solution just because of an wish that is not needed!
Have you ever thought about why the program give at many constraint the possibility to define constraints with lesser than 100%? Of course it is possible that a solution is skipped. That's the basic of non deterministic algorithm. You can easily create 10 solution and hope that the best will be there. If I add every constraint with 100%, then I will need so much time that I could create the plan by hand.

Volker Dirr

#9
Feel free and do what you want.
I just know that my time is limited and i need solutions fast. i don't have time to do your try and error method that need much more time.
I also don't want to get a poor table and decide later which poor table is the best. That just make the college upset. You never know if your table is the best, because maybe you need to increase weight of constraint A a little bit, maybe you need to increase weight of constraint B a little bit. I know i have the best table, because i use 100% weight. I am able to solve very quick 100% of all wishes by using a clear top down method. And i know i have the best table, because i haven't any broken constraint (so no conflict). You don't know if you if you must increase up to 96%, or 97% or 98% or 99.5% or ... I know, because i use 100%.
But if you think it is fair if you privilege some teachers - it is your decision.

In my opinion it is clear. Always use 100%. If it fail, think why it failed. Solve that problem. And add next. Maybe add weight less then 100%, but only to the last constraint if it is not possible with 100%.

I beat 4 guys that were using gp-untis with different methods. Of course they used the same dataset. And that guys were experienced. One tried my method with Untis (it was me, so i beat myself :-)) but FET was better. Ii also beat 3 other guys that used Untis with different methods. Also similar methods then yours. They need many hours to find "normal" tables. I do it in just 2,5 hours. (add the whole dataset, add all constraints and generating the timetable!) and FET generate the best timetable we ever saw by this quick 100% method.

I also tried your method. Believe me, it was only an "normal" table, but not a good one.