School with some normal and some fortnightly years - how to deal with it?

Started by dkaspersky, July 28, 2023, 05:55:30 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

dkaspersky

Hello.
I am learning how to use FET to implement it for scheduling in my school. However, I have found a difficulty and decided to ask you for your advice how to deal with it in the best possible way.
Our secondary school combines in one building two various types of school: technikum (a technical school in Poland where students are learning how to work in a profession and also have the ability to pass the maturity exam and continue education on studies) and vocational school (for students who would like to start work after education and learn their profession by working at their employer). The first type of school has school activities every week as usually. The problem is in the vocational school: students are learning in a fortnightly way: one week at school - one week at work for their employer. Additionally, the years present at school are also fortnightly: when year I is at school - year II is at work and when year I is at work - year II is at school. Most of the subjects and teachers are the same for year I and II, but some can differ so they need to be scheduled separately. Do you have an idea how can I deal with the situation in FET? The students from the technical school needs to have equal schedules for each week so I think, that the workaround with two schedules won't work.
I would be very grateful for any tips how to deal with the situation!
Kind regards,
David

Liviu Lalescu

Hello, David,

I tried to read carefully your post, but I am not sure I got all the exact details, so forgive me if I am wrong. I'll also read later; I'll post again if changes appear.

There was an interesting post here: https://lalescu.ro/liviu/fet/forum/index.php?topic=351.0 . If I remember correctly, this guy added for each pair of fortnightly activities:

Add 2*ndaysperweek FET days.

Weekly activities:
1) min+max days between each pair of activity = 1 week;
2) same starting hour (not time, but hour) for each pair.
3) constraint activities occupy max 1 different rooms for each pair.

Fortnightly activities:
I think the same as above, but min+max = 2 weeks;

For the mutual exclusion of years I and II, maybe students set not available, or again min days between pairs of activities, or... hmm... I am not sure I get this correctly.

The big problem: you need to add a lot of constraints. This task might be possible to automate as a modification/customization in the source code.

Even if you use many constraints of these types, the timetable should be solved fast enough.

You might want to consider also the FET Terms mode, with 2 terms, each having ndaysperweek. You have some special constraints there, so that a group of activities take place on a single term.

Volker Dirr

Liviu wrote about the "exact way".

But that is maybe unneeded. If that schools share only a few teachers or rooms, then each school can do it own timetable idependently and only set a few shared teachers/room not available if they should work at the other school.

Advantage of this variant: easier to enter, understand and modify
Disadvanatge: might not work perfect if you share some teachers or rooms


Livius Variant is the exact way that you must use if you share some/many teachers/rooms.

I am not 100% sure, but maybe you can even use one of the workarounds that i wrote in the manual.
see:
https://www.timetabling.de/manual/FET-manual.en.html#id_36

dkaspersky

Thank you for your replies!

Maybe I haven't described our "situation" briefly enough. We are a "school complex", which shares the same administration and teacher team. Currently our school complex occupies two buildings: in the first building we have primary and school students / activities and in the second building (the case described in the post before) we are teaching technical and vocational school students. Most teachers are traveling between the buildings, because we are considered as "one" school, just the types are different (like combining Grundschule and Gymnasium from Germany in one building, Realschule and Hauptschule in the second building, but activities are teached by mostly the same teachers).

As you can imagine, doing scheduling for so much types of schools takes a lot of effort. Currently each "building" does its scheduling manually, but I would like to change it and do the task with FET 😁 . This year I would like to start with the technical and vocational school (because it is more complicated) and if the solution works then extend it for scheduling of the whole "school complex".
So the problem which prompted me to write this post is that almost all groups from my school has "normal" schedules (one timetable for all weeks). Just two years (currently 3 groups) of the vocational school is visiting the school in a fortnightly way. All remaining years / groups are using a weekly timetable (to be precise, in the past school year it was 18 weekly groups and 3 fortnightly.

I am not sure if doing the schedule in terms mode or doubling the number of days per week is a good solution for such a low number of groups. Maybe there is an easier solution which I can't currently see?
While doing the teachers schedule manually, we are planning all activities in a weekly form (since most activities are from the technical students) and if there is an activity of a vocational group - we are trying to match the schedule of year 1 and 2 as much as possible, so that teachers won't have gaps every second week.

My latest idea is to create in FET one year "1&2" which would represent the timetable for years 1 and 2 from the vocational school. Since the second year has just 3 subjects less than the first year, I could create constraints that would move these subjects to the beginning / end of the day, so that year 1 would have the "full schedule" and year 2 would simply start later or finish earlier. However, this solution has 2 major disadvantages. If one subject is taught by different teachers in year 1 and 2, then both teachers would have gaps (but I still can add both teachers to one activity and move the activity at the beginning of the day, so the gap wouldn't be as problematic). More complicated is the possible varying number of groups in a year. In the past school year we had two groups in year 1 and one group in year two, so the solution would't fit, as every teacher that teaches the second group would have gaps every two weeks. Luckily in the next school year we will have the same number of groups in years 1 and 2 so it won't be a problem, but I don't know what comes in the next years...

Maybe you have some ideas / hints how to improve it? Thanks for reading and thank you for your time!  :)

Volker Dirr

About year 1 and 2: Has the teacher with that problematic subject only activities in year 1 and 2? In that case you migth place the subject at least on 3 days different. Just place it into the last hour of year 2 and the other one hour later - the end of year 1. Of course that mean the teacher with the "normal" subject might get a gap if he doesn't teach in an other year also.

I think there are only 3 variants:
1. The exact way like Liviu wrote it (so with 14 days)
2. The workaround trick that i wrote in the manual. (so with 7 days only). Please have a look into the manual (link is in my previous post). Your data set migth be too complex. You must think yourself if it is possible or not. Nobody can answer that without knowing your dataset.
3. Mix the variants. Depeing on your dataset you still might do 2 seperate timetables. One with the exact way and the other with the "normal" way.

For example my first school was closed (Realschule) and an other school started in exact the same building (Gesamtschule). So we shared the rooms and we also shared some teachers for 6 years (time). So the first year (time) we wasn't allowed anymore to get new students. So there was no year 5 (group/class) anymore, but we still got the other classes, since the students finished the school of course at our Realschule. But the new students went all to the Gesamtschule. And so one... So in the 3th year (time) the Realschule had the years 8, 9 and 10; while the Gesamtschule had year 5, 6, 7. Like i said: We shared some teachers (not all, maybe 30%; But we shared also another maybe 30% with other Realschulen ~20-30km away. In the "prime time" we shared the teachers with 8 other schools). Each school (So as you can see there were many school using the same teachers!) done the timetable independent. That is possible, you only talk to each other and set the teacher (or room) as not available.

Each variant has advantages and disadvantages. First of all i recommend to do it similar like you done it last year, just by using FET. Then try one (or even both) other variants and compare which one is better.