Dynamic allocation of teachers

Started by maxi_mus, April 24, 2024, 04:00:14 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

maxi_mus

This may be a dumb question, but I can't find a solution in the docs.

Let's say there is a subject like art, and for each class, FET can dynamically allocate a teacher. How do I create these activities correctly?

I have entered the 'qualified subject' and the 'target hours' for the teachers in question.

Liviu Lalescu

Unfortunately, you cannot tell FET to allocate a teacher to an activity. Each activity must have a subject, a set of teachers, and a set of students sets.

In the FET block planning mode, we use tricks to allocate activities (students, subject) to teachers (FET days) and time slots (FET hours). But this might be overkill for your situation.

A possible trick: use the constraint type activities max simultaneous in selected time slots. For art, add all the art activities (art activities will not have a teacher selected), select all the time slots with X (red), max simultaneous = n_teachers - 1. This way, a teacher will always be available. But I am not sure this will work.

Or, maybe another trick: create an activity with subject art, a teacher, and no students. And use constraints of type activities min/max simultaneous in selected time slots, or activities occupy max time slots from selection.

I am not sure I understand exactly your problem, because it is not completely explained.

maxi_mus

There is not much more to it than mentioned, I have 12 classes, each of them has a double lesson of art each week, and I have two teachers who teach these 24 lessons. Which teacher has which class is irrelevant.

Of course, I have constraints for each of these 2 teachers, with regards to gaps, maximum days to work, etc. etc.

maxi_mus

Quote from: Liviu Lalescu on April 24, 2024, 04:41:21 PMUnfortunately, you cannot tell FET to allocate a teacher to an activity. Each activity must have a subject, a set of teachers, and a set of students sets.

This is actually pretty surprising to me. I would have assumed that in many countries, the classes have a fixed teacher for a fixed subject. But I would have thought that in some systems, it's totally irrelevant which classes a certain teacher teaches, as long as he gets the target amount of lessons of a certain subject... So basically FET cannot be used in this scenario, right?

Also, just to make sure: qualified subjects and target lessons have no influence on the algorithm?

Liviu Lalescu

Quote from: maxi_mus on April 24, 2024, 05:07:38 PM
Quote from: Liviu Lalescu on April 24, 2024, 04:41:21 PMUnfortunately, you cannot tell FET to allocate a teacher to an activity. Each activity must have a subject, a set of teachers, and a set of students sets.

This is actually pretty surprising to me. I would have assumed that in many countries, the classes have a fixed teacher for a fixed subject. But I would have thought that in some systems, it's totally irrelevant which classes a certain teacher teaches, as long as he gets the target amount of lessons of a certain subject... So basically FET cannot be used in this scenario, right?

Also, just to make sure: qualified subjects and target lessons have no influence on the algorithm?

You could use the Block planning mode in this way, but, since you need gaps constraints for your teachers, this is impossible. Otherwise, FET needs each activity to have a certain teacher (or more, or empty).

Yes, no influence. Volker I think suggested them, for easier input of the data.

Liviu Lalescu

Quote from: maxi_mus on April 24, 2024, 05:04:55 PMThere is not much more to it than mentioned, I have 12 classes, each of them has a double lesson of art each week, and I have two teachers who teach these 24 lessons. Which teacher has which class is irrelevant.

Of course, I have constraints for each of these 2 teachers, with regards to gaps, maximum days to work, etc. etc.

These are the details I needed. Please allow me a bit of time to think and answer - I hope a trick is possible.

maxi_mus

Quote from: Liviu Lalescu on April 24, 2024, 05:14:12 PMYou could use the Block planning mode in this way, but, since you need gaps constraints for your teachers, this is impossible. Otherwise, FET needs each activity to have a certain teacher (or more, or empty).


I was afraid you were going to say that. But is this scenario really that uncommon? I would have assumed that in many institutions there are home room teachers for certain subjects, but otherwise (for other subjects( the teacher is irrelevant. Or is it your experience that most schools function this way? Am I the first to ask this or is this a common question?

Liviu Lalescu

I am not a professional timetabler or teacher. I am just a programmer who liked the provocation of creating such a software. I was helped by many users with their suggestions along the time.

In Europe, Africa, and Asia, the majority of users did not request allocation of teachers to activities. But I think there were some requests like yours, and I advised them to use tricks.

In USA and Canada, we developed recently the Block planning mode.

If an organization would support me financially to research this feature, I would be interested to give it a try. But it might be a titanic task.

maxi_mus

Yes, I understand. Such a change would possibly fundamentally change the core of the algorithm I suppose.

But I suppose then, that much of Europe functions the same way. (This has nothing to do with FET,) but I do wonder why this system is so popular. Who cares if one has has sports or other soft subjects with a predetermined teacher every year. I would assume that optimizing the schedules for the teachers would have far larger benefits.

Liviu Lalescu

Quote from: maxi_mus on April 24, 2024, 05:04:55 PMThere is not much more to it than mentioned, I have 12 classes, each of them has a double lesson of art each week, and I have two teachers who teach these 24 lessons. Which teacher has which class is irrelevant.

Of course, I have constraints for each of these 2 teachers, with regards to gaps, maximum days to work, etc. etc.

If these 12 activities cannot overlap and each teacher has a predefined number of assigned activities, this should work:

1) Add 12 activities without teachers.
2) Add 12 activities without students.
3) Two constraints activities not overlapping, first for (1) and second for (2).
4) Two constraints: activities min (allowing empty slots) and max 2 simultaneous in selected time slots, for all these 24 activities.

Otherwise, let me know and I'll try again to think of something else.

Liviu Lalescu

Quote from: maxi_mus on April 24, 2024, 05:42:42 PMYes, I understand. Such a change would possibly fundamentally change the core of the algorithm I suppose.

But I suppose then, that much of Europe functions the same way. (This has nothing to do with FET,) but I do wonder why this system is so popular. Who cares if one has has sports or other soft subjects with a predetermined teacher every year. I would assume that optimizing the schedules for the teachers would have far larger benefits.

Unfortunately, the algorithm might be very complicated, indeed.

Maybe a further customization of the block planning mode to allow gaps and free days constraints specifications for the teachers/students would be possible.

maxi_mus

BTW, do you happen to know if Untis supports this?

Liviu Lalescu

I am not sure, but I think such an addition to the algorithm might be too difficult to implement.

Maybe Volker or other users know better.