FET Forum

FET Support (English) => Get Help => Topic started by: k3nt0n on October 12, 2025, 11:04:38 PM

Title: project week: before BaEiTo? FET to schedule workshops/laboratories
Post by: k3nt0n on October 12, 2025, 11:04:38 PM
We have a project week in dicember where each teacher give 3 workshops/laboratories (6+6+6 hours).
A 6 hours lab is spreaded over the week 2+2+2.


The data we have are:
-35 teachers x 2/3 workshop = about 100 workshops
-300 students that choose a workshop-area and 3 prefered workshop to attend

students have to be covered all the 30 week-hours (5day x 6hours)

So we want to assign them the first and second lab at least + hopefully third (without overlaps) + full the rest with some 2 hours from not overly crowded labs, doesn't matter which one

I think it's best to divide everything into two phases.
The first phase is to create the workshop schedule so that there's minimal overlap between workshops in the same tematic-area.
The second phase is to assign students to the workshops.

My question is this:
If "BaEiTo" can be a solution in the second phase,
in the first phase, is it possible to use FET or a custom version of it to create a workshop schedule that minimize overlaps?

Maybe assigning labs (activities) to same rooms so FET will not overlap them?
Or spamming everything with the "activities are not overlapping" constraint?
(using dummies students just for fill up activities?)

This last approach accept <100% so FET can give me the best without stop because unfeasable (unlike rooms)?
Suggestions?

Thanks you
  Andrea C.
Title: Re: project week: before BaEiTo? FET to schedule workshops/laboratories
Post by: Volker Dirr on October 13, 2025, 08:07:44 AM
Good question. I never done it like that.

It is a variant between StElTo and BaElTo, but both doesn't fit 100%.
I fear a bit in theory it might work, but in practice it will fail.
Why I think so? Because last time we done it with the BaElTo variant (so every student chose 3 projects, but got only a single one) was already difficult. Especially because there were 2 out of ~40 projects that were not selected at all (ok, one time selected by 4 students; but that is too less). I fear in your variant this might also happen and it will be more difficult to solve in your variant.

Just to be clear, some more questions:
a) In your variant, when should the students select the projects? Before phase 1 or after phase 1? I fear both is not easy.
b) You wrote "35 teachers x 2/3 workshop = about 100 workshops". I am not 100% sure what you mean with "2/3". Do you mean that you have full time working teachers that will do 3 projects and have time working teachers that will do only 2 projects?
c) Will a single teacher offer 3 times the same project or 3 different projects?

About the half time working teachers: We solved the problem by this: Each half time teacher was forced to work together with an other half time teacher (they search themself for an other teachers; worked fine). So this half time teachers are able to to share a project and the half time teachers are not always present (while the students are always present). Yes, that means sometimes both teachers are present; but to simplify the project week planning that is totally fine. You can also increase or decrease the number of students in a project if you fear a teacher work to less or much.
Title: Re: project week: before BaEiTo? FET to schedule workshops/laboratories
Post by: k3nt0n on October 13, 2025, 03:30:19 PM
Hi Volker,

a)
a1- Teachers give to school labs they want to offer
a2- Students choose prefered labs
a3- We give back teachers schedule and students schedule

b) full teacher have 18 hours so 3 labs, 6+6+6
others are support teachers and some times they attend to students needs
so can be variable, teachers with 1 lab only, others 2 labs, others 3, one 4 because we have a teacher at 24 hour contract
the remaining hours, if in excess, are used to assist and help stuff (manually placed)
In FET i make 3 activities each teacher 2+2+2 , 2+2+2 , 2+2+2 or less in the cases indicated above

c) 3 different projects each teacher (no repetition)

I imagined i could prepare theachers schedule skeleton right after "a1" and before "a2".

Because i already know theachers availability,
and i can assume with sufficient accuracy
which laboratories will be chosen by a student with certain aptitudes.
30 hours a week are filled by 5 labs
If i've 10 labs in the same area we can set them overlapped 2 by 2
So 5 are full aviable without overlap.
This would be a manual approach.

But the temptation is to wait "a2" phase

and assuming n=100 labs, generate a 100x100 upper triangular matrix containing the number of students who chose both labs in the pair (lab_i, lab_j) for all n*(n-1)/2 pairs.
Extract a weighted list and insert the weights from 99% downward into FET, allowing it to generate the least overlapping schedule

If not possible with FET, i try to make a PLI model using open solver ( https://opensolver.org/ ) .
I've to solve some modelling challenges, maybe mask teachers availability is not hard, or a choise matrix that distinguish lab1 lab2 lab3, but the gap to change building!??!
This calculation would be fast and with a well weighted objective function it give back most non-overlapping possible followed by the least overlapping.

But before this modelling and implementation effort ... if FET can help ...
Title: Re: project week: before BaEiTo? FET to schedule workshops/laboratories
Post by: Volker Dirr on October 13, 2025, 05:32:30 PM
I see. I fear a bit BaElTo is not the right tool for this.
You should maybe try FET in the block mode.
Or try StElTo. I guess it might work if you start with 1st and 2nd choice only. I am not sure how to import the 3rd choice fast/best. (Of course you can import all 3 at once, but I guess/fear it will be an impossible data set and StElTo doesn't care about the order of the choices, so it might find partly solution only with 2nd and 3rd choice, but not with the 1st one.)
Let us know as soon as you have a data set, then I can maybe also have a look. It is always very difficult to answer if I don't know the whole data.