Morning and afternoon, breaks, rooms plan, etc.

Started by ßingen, June 30, 2009, 04:30:38 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Liviu Lalescu

Quote
Really difficult? Probably I have no knowledge enough, and I haven't read the fet source code, but imagine something like that:
Now there are some activities that remain without a classroom assigned, if there's no constraint related (maybe I'm missing something?). The idea would be, once the timetable is generated, to go through all the activities without room and assign it the first room available at this time slot. If there's a priority number for the rooms, the order to choose "the first room" would be this number, so this would mean the available room with the largest number.
Actually, it's more or less what I would do if I had to do it manually.

Yes, not that difficult, but complicated a bit and does not respect FET notation in a way, because each constraint must be checked for at generation time. I talked with others on the same matter, now your idea of solving it seems a bit nicer, but still I don't like this kind of constraint.

You could add an activity tag for each activity and constraint preferred rooms, all rooms, for this tag.

Quote
Yes, maybe for some situations, or for some teachers. But in my school there are always, at every time slot, one or two teachers of "surveillance". Their tasks are to look after students who are made out of class by behaviour reasons, or that feel ill, to go to the classroom if a teacher has not come, etc. These surveillances count equal than a break surveillance in order to make the timetable. So my strategy was the following: I defined two groups G1 and G2 (we call these surveillances "guardia") and as many activities as hours dedicated to these surveillances for every teacher (not everybody has the same number, depending on several factors). So FET distributes this hours in a random way, maybe at break time, or maybe at normal hours. So I don't  decide previously who makes surveillance at break time, and if a teacher complains about it, I can say it's a software fault ;-)
But if a teacher does not have break time surveillance I don't want this slot to be counted as a gap.

It might be easy to make that in a custom version. Because each slots can be or not considered a gap in teacher's timetable. And the good thing is that you are using GNU/Linux and I don't need to compile for you a Windows version. Let me know if you agree on a custom version and I'll send the code. Tell me the days and the hours when gaps should not be counted for teachers, 0 indexed. For instance, Monday first hour is day 0, hour 0. I do not promise a fast implementation, but I might do it soon.

Volker Dirr

QuoteBut in my school there are always, at every time slot, one or two teachers of "surveillance". Their tasks are to look after students who are made out of class by behaviour reasons, or that feel ill, to go to the classroom if a teacher has not come, etc.

We do it this way:
add a subject "surveillance".
add activities to teacher that should to surveillance. (Activities with teacher name, no student, subject surveillance and duration 1. (some have 2, but in that case you should think about removing the min n days constraint.)
so every teacher see his surveillance in the table.
now you need to care about a good schedule.
add one (or two) pseudo rooms.
add constraint subject prefer that one (or two) pseudo room.
so there are max one (or two) surveillance avtivities in a single timeslot.
maybe also think about adding a not available constraint to that room. I do that with the last period, because we don't do surveillance in the last period.

ßingen

Quote
You could add an activity tag for each activity and constraint preferred rooms, all rooms, for this tag.

Ok, I will try this way.

Quote
It might be easy to make that in a custom version. Because each slots can be or not considered a gap in teacher's timetable. And the good thing is that you are using GNU/Linux and I don't need to compile for you a Windows version. Let me know if you agree on a custom version and I'll send the code. Tell me the days and the hours when gaps should not be counted for teachers, 0 indexed. For instance, Monday first hour is day 0, hour 0. I do not promise a fast implementation, but I might do it soon.

Thank you very much, but I will try to handle it in another way. Maybe choosing before which teachers will do break surveillances and which ones will do the other surveillances. I have to try...
Besides, I think it's better to concentrate the efforts in global solutions to improve the software for everybody as much as we can.
If I can't solve it anyway I will tell you, but for now I hope the custom version not to be necessary. Thank you very much anyway.

  ßingen.

ßingen

Quote

We do it this way:
add a subject "surveillance".
add activities to teacher that should to surveillance. (Activities with teacher name, no student, subject surveillance and duration 1.
(...)

Yes, I did it more or less this way. My problem was with the break surveillances and the gap counting, but I think I will be able to solve it, maybe marking some teachers as not available at break time.

Thanks,

  ßingen.