Activity with optional teacher

Started by russell, September 19, 2014, 02:12:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

russell

Hi everyone.

How to let FET choose a better teacher between the two for a specific activity with respect to other constraint?
In other word: I have an activity A1 that the teacher can be T1 or T2. I don't want to restrict A1 to T1 if there is a better timetable with A1 and T2. How to achieve that? (I hope it's been clear)

Thanks.

Liviu Lalescu

This is not directly possible in FET. Maybe you can devise some tricks. Maybe you can consider a real teacher to be a FET room and allocate activities to "rooms". Or you can use the other constraints with weight < 100%.

We also have a custom version on http://lalescu.ro/liviu/fet/custom.html (see custom version #3, for course planning).

russell

How to apply the same constraint to rooms if I use room as teacher? For example max 2 days in a week which is also with Thursday not available. Thanks.

Liviu Lalescu

Hmm, I did not think of this, as the custom version for jimmyjim did not need this.

It might be possible, maybe as another custom version. I'll think about it. Let me know how many teachers do you have and maybe other details.

Do you need also real rooms?

russell

There isn't any real room. But there are lots of constraint about teachers, activities and students.

Day & Hours: 5 days in week with different hours each day (6, 7, 8, 6, 8 ). There is a break between every 2 hours.

Teachers: at this time there are about 30 teachers. Some of them has specific days or hours and some with exception of specific days or hours of a day but limited to max day per week. Teachers mustn't have any gaps in the day (or max 1 gap). It strongly prefers that a teacher doesn't have max 3 hours a day with a class or even if he had it's not been continuous.

Students: number of classes are 17. All of the students must begin the day in hour 1. Three of them are coming 6 hours daily (from hour 1 to 6, even in a day with 8 or 7).

Courses: min days = 2, weight = %90 AND min day = 1, weight = %95. Max hours of same activities in a day are 3 hours. Difficult activity in early and sport in last hours prefers. Difficult activity must not be more than 4 hours a day. Some of activities must not be in a same day.

Special cases: there are some courses with 6 hours in a day that must be continues.

-What I want to do in an example:
Algebra is 3 hours weekly. One part is 2 hours another 1. The teacher of this course can be John or Bob (All the 3 hours must be with one teacher not 2 hours with John and 1 hour with Bob or vice versa). Now there is a chance if I assign John to this course generating the timetable become impossible (or the soft conflict arises), but by assigning Bob to this course generating the time table become flawless.
I have some courses with a similar situation so if I want to manually test all possible states it become confusing and last too long.

Thanks for your help.

yush

This may work, but I haven't try it myself:
- This trick will require the custom version that allow multiple activities per room at the same time
- Say activities A1 and A2 may be taught by T1, T2, or T3
- Create rooms RT1, RT2, and RT3 to be used a pseudo teachers for T1, T2, and T3
- Assign RT1 to T1 to homeroom, RT2 to T2, etc.
- Assign RT1-3 as preferred rooms for A1 and A2
- Number of students for A1-3 should be capacity of room minus 1. For reason that will be apparent later.
- Assign max room constraint = 1 room for A1 and A2 to endure that only one teachers will be assigned to all splits
- Now, come to trick to "bind" the teacher T1-3 with RT1-3:
- If T1 only teaches, say, 20 out of 40 available periods, you need to create 20 dummy activities that uses RT1, with a dummy student group with the max number of student. This is important so FET won't assign multiple activities to RT1 because its capacity is already reached.
- Also assign 20 dummy activities with T1 as the teacher with dummy student group with 1 student (so it will not share room with the other dummies created above.)
- Since T1 has RT1 as homeroom, these dummy activities will use up the rest of RT1's available slots.
- This way, teacher T1 and room RT1 is kind of "glued" together. The only time RT1 is available for other activities are also time that T1 is available (or actually, "teaching" in RT1)
- Actually, those are the time that T1 can be in RT1, but with only 1 student, so, it is still available for other activities, such as A1, A2 and A3
- You should be able to assign all the teacher constraints to T1, such as max day per week, and RT1 should "respect" that since all its available slot is "glued" to T1.

I hope it makes sense.

russell

It's tricky yush. I will check it. Thanks

Liviu Lalescu

#7
I hope yush's tricks will work. It is relying on a custom version, and the trick seems to imply much work from the user (I admit I did not read thoroughly).

I have thought about making it directly. Course planning might be possible as a custom version, but it would be a very long, difficult and tedious work.

russell

Sorry about delay.

Thank you very much yush, your trick works nice.
Good job FET team and I hope FET could plan courses soon.
:)

Liviu Lalescu

Thank you, yush!

I added this in the TODO.