Assigning Students to Classes

Started by kirstyjay, September 04, 2019, 04:49:47 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


Hi. I have just downloaded FET in order to try and organise my classes for this year and I'm having trouble working out how I would enter the data for my circumstances. I have read through the documentation but my circumstances are a little different so I can't get my head around it. I shall explain:

I have a private English academy. I am only organising my own classes, therefore there is only one institution/building, one classroom, one subject and one teacher. The thing I have to organise is the different students of differing levels into the timetable. The constraints are when each child can come, due to other activities.

For example, I have students in the following levels : Infantil, Primary 1&1, Primary 3&4, Primary 5&6, ESO, Adult Beginner and Adult Intermediate.

In each of these levels I have some students.

For example, in the infantil group I may have Maria, Juan, Aday, Manuel, Sara, Judith, Carlota, Iker and Fran.

Maria can only come on tuesdays and thursdays afer 5pm.
Juan can come only on Monday Wednesday and Friday.
Aday can only come before 5pm
Sara can come on Monday and Friday before 5pm


I only want a maximum or 8 children in a group, and ech group comes twice a week - so for the infantil level, this will result in 2 sets of 2 classes.

I need the program to work out the best times for each level to come for 2 sessions each week that will be suitable for all the students.

I have tried setting up the students as 'subgroups' with the constraints for each student, and the levels as 'groups' but it isn't working.

Can anyone give me an idea how I can set it up so that the students are allocated to their group and timetabled so that it fits in with everybody's time constraints?

Many thanks in advance!


Liviu Lalescu

Hello! (again :)  )

I saw that you also asked a similar question in 2013 - how did you manage then? ( )

I think it should be possible. Indeed, add students as FET subgroups, and organize them in groups and years as you want. Add activities without teacher, for each FET subgroup (real student). I think 2 activities for each subgroup.

Then you might use constraints of type activity (tags) not overlapping, activities occupy max time slots from selection (so that there are only 4 slots for the Infantil, for instance), and maybe activities max simultaneous in selected time slots. And of course the easy not available constraints for the subgroups.

The two sessions per week should have the same students groupings? (this is a bit more difficult, I think).

On necessity, there can be done further customizations on FET for your data, as I did for Peter B's version: (only the beginning is in German).


I obviously didn't get it in 2013, because I'm still trying now!  ;D I must have given up. I was wondering why I already had a forum username when I went to register.

I'm finding it all really confusing. I have added all the students individually as subgroups, but it won't create the timetable and I really don't understand why.

Liviu Lalescu

I would find useful to see your file, and also an example of a timetable (pdf or office). If they are private, you can send to my email. Otherwise archive if necessary and post here.


Ok. Here is a sample of a timetable in 'horario.pdf'. This is one from last year. As you can see, some children come once a week, some twice. The colours represent the levels. A child can come in any class, as long as it's the same colour (level). so if there are 4 infant classes, it doesn't really matter whether the groups are the same each class, as long as the level is.

Also attached is my fet file. Kirsty.fet. This has this year's students so far. Every time I run a timetable at the moment, it puts the classes consecutively on the same day, which I can't have. Even though I have unticked the 'consecutive' box, and selected that there is at least a day between classes. I don't know why it won't do it. Students need to come on different days. They can be consecutive days, but preferably 2 days apart if possible.

Liviu Lalescu

Something like the attached files?

1) Please use FET official (not mapr), latest version (5.39.0 for now). You'll get a warning on my files, ignore it (I have future 5.39.1 on my hard disk).

2) See the HTML fet-results All activities days horizontal (after you generate).

3) In liviu3.fet I left only 1 active activity for Carla RL, Valeria RT, and Iker TA, to be possible. I also made that you work only 15 hours per week (14 isn't possible) - this is the constraint activities occupy max time slots from selection.

4) In liviu4.fet I deactivated the constraints min days for the 3 students above (and they have 2 activities each) and you work all the 20 hours per week.

5) To add the min days between activities I used the option Advanced->Spread activities over the week.

6) There is a max simultaneous 8 activities, I am not sure if it is necessary.

7) There is a tags not overlapping constraint, I think you need it.

Please let me know.


Many thanks! I have no idea what you've done, and I really need to work it out so I can adjust it as and when needed!

How did you set people to only have 1 day a week? There are others that only have 1 day a week and I could do that for all. It may make the timetable easier to generate...

EDIT: It still seems to be putting people at times they can't come. I've found about 3 or 4 students allocated to times they can't come. Maybe I should just do it manually, as I always have! This is probably why I gave up last time. 5 years later and I'm still trying to find an easier way of doing this.  ??? :o ;D

Liviu Lalescu

You are welcome!

Add activities for each real student, split = 2 (they are already added in my file). Then in the activities dialog double click the (second? or first? as you like) activity and (un)select Active, leaving only one (or reverting to two) active activities for a student.

See the All time constraints dialog for the constraints I added.

Spread the activities with 100% min 1 days and 95% or more min 2 days.

You can ask me more, as needed.

Liviu Lalescu

I did a minor mistake when inputting the activities, at first I forgot about the activities of Irene HA, and I added it at the end. So the order of the activities is not perfect. If you want, you can fix that, or I can help you fixing this, by export+modifying the CSV activities+then import of the activities.

Liviu Lalescu

Quote from: kirstyjay on September 04, 2019, 09:32:31 PM
EDIT: It still seems to be putting people at times they can't come. I've found about 3 or 4 students allocated to times they can't come. Maybe I should just do it manually, as I always have! This is probably why I gave up last time. 5 years later and I'm still trying to find an easier way of doing this.  ??? :o ;D

Please send me the fixed file (data_and_timetable.fet) and tell me the problematic students as you say, so I can check.

I think you forgot to add/update the not available constraints for those students, as I doubt the program makes this bug.


@Liviu Lalescu I'm going to bump my topic again, because once again I'm trying to do my timetable and whatever I do I'm getting conflicts left right and centre. After years of this, I still am completely confused as to how I'm supposed to set it up.

Last year I re-downloaded your files off this thread and adjusted them, but I've tried to do the same again this year and I really have no idea what's going wrong. Here is all the information I have. If you could explain to me how I set this up, I'd be most grateful. I just want to be able to do it myself!

I'm doing the same as I do every year. I have one building. I've put 3 spaces in this time... I have 2 small classrooms that hold maximum 8 people in each, and a patio area set up for infant classes that fits about 5-6 students max.

My hours of work are from 15:30h to 20:30h.

If there are too many conflicts of hours for just me to do classes, then my daughter can do infant classes only on the patio area. However if she's doing infant classes, I can't, because there is only one infant area. She can only do classes the first hour, from 15:30h to 16:30h.

I have set the class groups as 'years'. There are the following groups:

Infant 1 (3 years old)
Infant 2 (4 and 5 years old)
Primary 1/2
Primary 3 (3 and 4 are split in two, as there are a lot of students)
Primary 4
Primary 5/6
British Curriculum
Adult 1
Adult 2 (this group will only be once a week)
Adult 3 (this group will only be once a week)

EVERYONE is learning English. Most as a second language, apart fro the British Curriculum group. Adults usually come at the end of the day in the last hour at 19:30h. This is because they have a tendency to cancel and at least I get to go home early if they do.

Each student is set as a 'group' under the years.

Some students have 1 hour a week, some have 2. How can I set that?

Each student has hours that they can't come. I have inputed these restrictions for each individual student, depending on what their parents have told me. Any that have no restricitons have no other activities, so they can come whenever.

Attached is my file.

Thanks in advance for any help!!!

Liviu Lalescu

Hello, kirstyjay,

You might need to use the Block planning mode of FET. Let me know what guidance do you need.