group splitting - once more

Started by liquid, March 07, 2011, 09:14:38 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

liquid

Group splitting appears to be one of the the most difficult part of building timetables if one reads forum topics and FAQ. Apologize if I repeat the issue but I could not find a solution which would fit my needs or maybe I didn't understand the hints well.
Here is what I need to do with groups:
  • On one level, there are four groups, say 5a, 5b, 5c, 5d. They are split into boys and girls which is easy to do.
  • The four groups (a, b, c, d) are divided into other four groups which attend mandatory (not optional) English language course, say 5e1, 5e2, 5e3, 5e4, based on the skill of the students. Of course, each of 5e* group can have their lessons in the same time slot, but never when (a, b, c, d) have, and never when m* (see below) and boys and girls have.
  • Similarly, (a, b, c, d) should be divided in three maths groups, m1, m2, m3 which can have their lessons in the same time slot, but never when 5e* and a, b, c, d have, and of course boys and girls of each groups.
Could you, please, explain once more how to do it?

Liviu Lalescu

Methods

1) Features: exact, 5e1 and 5e2 may be not simultaneous, a bit more complicated to implement than 2), students' timetable contains exact students.

How to do: years 5a, 5b, 5c, 5d. Divide each year automatically by 3 categories. C1: 2 divisions, boys, girls, C2: e1, e2, e3, e4, C3: m1, m2, m3.

2) Features: not exact, 5e1 and 5e2 must be simultaneous, very easy to implement, students' timetable must be manually modified / contains not exact information.

How to do: year 5, divide be 1 category: C1: a, b, c, d. English lessons: add A(5a, 5b, 5c, 5d, Teacher T, Subject English). So, options boys/girls, English and Math treat the students in year 5 as a whole.

I hope I am not mistaking.

Please let me know.

liquid

#2
I chose the first solution. It seems to be working. Now I'm fine tunning the rest of timetable. It's wondering, FET requires 10 working hours a day to schedule all the activities. Human done timetable with the same constraints required only 9. I have to look closer to what FET does.

Liviu Lalescu

QuoteI chose the first solution. It seems to be working. Now I'm fine tunning the rest of timetable. It's wondering, FET requires 10 working hours a day to schedule all the activities. Human done timetable with the same constraints required only 9. I have to look closer to what FET does.

I advise you to try to schedule the activities with only basic constraints, in 9 hours per day. If this is impossible, then you have a bug in this basic data. If possible, then the rest of constraints are buggy.

I can safely say that FET schedules better than human timetablers, so I think you have a bug in your data.

liquid

Indeed, I entered all stuff once more from scratch. I did not search previous one for errors. All activities were placed in 9 hour days. One more question however: a subject has preferred room but amount of subject_hours*classes exceeds hours_per_day*days. It is clear that some activities with this subject cannot be scheduled in preferred room. It is OK but how to do that. I set preferred room for this subject with weight 90% but FET assigned some activities to preferred room and did the rest to no room.

Liviu Lalescu

QuoteIndeed, I entered all stuff once more from scratch. I did not search previous one for errors. All activities were placed in 9 hour days.

To find the errors, I advise you to compare by contents the old and new .fet file.

Quote
One more question however: a subject has preferred room but amount of subject_hours*classes exceeds hours_per_day*days. It is clear that some activities with this subject cannot be scheduled in preferred room. It is OK but how to do that. I set preferred room for this subject with weight 90% but FET assigned some activities to preferred room and did the rest to no room.

Say activity A can go to room R1 (preferred) or R2 (if impossible into R1). Then, constraint 1: preferred rooms for A: R1 and R2, 100%, then constraint 2: preferred room for A: R1, 90%.