Main Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - ßingen

Hi again,

I want to add some more suggestions from my experience with FET.

- Multiple conditions. Maybe it's too difficult, but it would be very powerful to be able to combine constraints with logical operators (with, for example, "NOT" and "OR" would be enough). So it would be possible to implement conditions as: "if a teacher works some day in the afternoon, he wants to end up early in the morning", or "if a teacher works 2 days in the afternoon, he wants to have a free morning", etc.
- In "teacher interval max day per week" and "teachers not available times" constraints weight must be 100%. Why? I'm trying to translate teacers' preferences, for example a teacher who would prefer not to work from 8-9h. It's a wish, but if he has to work at this interval he could.
- A constraint for mutiple teachers, but not for all. A list like in the define activities dialog to be able to add several teachers. Because if you have to add a constraint for *almost* everybody, you have to add it manually for every one.
- In activities dialog, it would be better to display the information in a grid (like in an spreadsheet), and even to be able to update the cells clicking over them, without need to enter in the modify dialog. Also could be useful a copy-paste method in this grid, to duplicate them easyly. This idea could apply to other dialogs, as constraints ones.

Thanks for you attention once again,

Suggestions / Re: teachers preferred times
July 07, 2009, 01:07:29 PM
But you can add constraint activities preferred time slots for a teacher (you'll get a warning, but ignore it :-). You can add any weight there. It is like a not available, with any weight and gaps counting.

I had the same problem as Silvia (same school system), so I'm going to try this solution...


We do it this way:
add a subject "surveillance".
add activities to teacher that should to surveillance. (Activities with teacher name, no student, subject surveillance and duration 1.

Yes, I did it more or less this way. My problem was with the break surveillances and the gap counting, but I think I will be able to solve it, maybe marking some teachers as not available at break time.


You could add an activity tag for each activity and constraint preferred rooms, all rooms, for this tag.

Ok, I will try this way.

It might be easy to make that in a custom version. Because each slots can be or not considered a gap in teacher's timetable. And the good thing is that you are using GNU/Linux and I don't need to compile for you a Windows version. Let me know if you agree on a custom version and I'll send the code. Tell me the days and the hours when gaps should not be counted for teachers, 0 indexed. For instance, Monday first hour is day 0, hour 0. I do not promise a fast implementation, but I might do it soon.

Thank you very much, but I will try to handle it in another way. Maybe choosing before which teachers will do break surveillances and which ones will do the other surveillances. I have to try...
Besides, I think it's better to concentrate the efforts in global solutions to improve the software for everybody as much as we can.
If I can't solve it anyway I will tell you, but for now I hope the custom version not to be necessary. Thank you very much anyway.

Ok, it finished compiling.

The wide dialogs disappeared, and the check-box  for the subgroups works great! Maybe it would be useful in all the filters, including the "add constraint" ones.

I've seen the new filter in "activities not overlapping" constraint. It's also a very great improvement the "select output directory" option in settings.

Very good work!

Hi, meanwhile it's compiling, some comments:

- It would be great FET to assign rooms to activities that have no constraint about it. Besides of avoiding to put manually a room for each activity, it would allow to check if there are enough rooms for everything. It would be useful to associate a priority range number to each room, so in case there's more than one option for an activity the one with the largest number would be choosen.
Too difficult and not FET usual notation.

Really difficult? Probably I have no knowledge enough, and I haven't read the fet source code, but imagine something like that:
Now there are some activities that remain without a classroom assigned, if there's no constraint related (maybe I'm missing something?). The idea would be, once the timetable is generated, to go through all the activities without room and assign it the first room available at this time slot. If there's a priority number for the rooms, the order to choose "the first room" would be this number, so this would mean the available room with the largest number.
Actually, it's more or less what I would do if I had to do it manually.

Maybe for gaps problem, choose the teachers who do the surveillance and mark the rest unavailable in some slots (not available are not counted as gaps).

Yes, maybe for some situations, or for some teachers. But in my school there are always, at every time slot, one or two teachers of "surveillance". Their tasks are to look after students who are made out of class by behaviour reasons, or that feel ill, to go to the classroom if a teacher has not come, etc. These surveillances count equal than a break surveillance in order to make the timetable. So my strategy was the following: I defined two groups G1 and G2 (we call these surveillances "guardia") and as many activities as hours dedicated to these surveillances for every teacher (not everybody has the same number, depending on several factors). So FET distributes this hours in a random way, maybe at break time, or maybe at normal hours. So I don't  decide previously who makes surveillance at break time, and if a teacher complains about it, I can say it's a software fault ;-)
But if a teacher does not have break time surveillance I don't want this slot to be counted as a gap.

How do you suggest to name this check box? "Show all contained subsets" is good? Do you have better suggestions?
I have made this Smiley The name I chosen for the check box is "Recursive". Do you think is a good name? I made it normally unchecked - do you suggest to make it default checked?

Yes, both names are ok for me. And also default unchecked.

Thanks again,


a little bit late, so I've downloaded the recently released 5.10.0. I'm now compiling it, and would report my results.

See you,


after inputing almost all the data from my school, I would suggest some improvements for this great piece of software.

First of all, I must say I've used version 5.7.0 because it's the one that comes with the last version of kubuntu. I have read in the news sections the changelog and removed the only one that I've seen already implemented (the one referring to multiple activity tags for an activity), but sorry if I repeat something.

- Ther's no filter in "Activities not overlapping" constraint, so it makes hard to select them when you have a lot of activities.
- When filtering a group, there should be a checkbox to show all its subgroups. So, for example, it could be possible to show all activities of a whole year.
- Some constraints dialogs (for example "Activity preferred room", "Activity preferred starting time") are much wider than my screen (using kde 4.2, 1024x768 display, I can give more details if needed)
- It would be great FET to assign rooms to activities that have no constraint about it. Besides of avoiding to put manually a room for each activity, it would allow to check if there are enough rooms for everything. It would be useful to associate a priority range number to each room, so in case there's more than one option for an activity the one with the largest number would be choosen.
- In my school the timetable is divided in morning (from 8:00 to 14:30h) and afternoon (15:00 to 17:00h). In the morning there's a break from 11:00 to 11:30h. I have defined this break as an hour of the timetable, but not allowing activities for any set of students in this slot. The reason is to plan the surveillance of the teachers in this slot. There must be always 2 teachers looking after the pupils during this period, so I define activities without students. The problem is that if a teacher does not have surveillance at break time, it should not count as a gap. If I define this slot as break in "Misc time constraints" then I can not define the surveillance activities.
- The lunch break is therefore from 14:30 to 15:00 (I have not defined it as a slot of the timetable, because there are no pupils in the school, they are at home having dinner). As it's a short time, often is convenient for many teachers to avoid having class from 13:30 to 14:30 slot and from 15:00 to 16:00 slot in the same day. Maybe something like a constraint of incompatible slots for some/all teachers would do the trick (and could apply to other situations).
- We try that all the teachers work maximum 2 afternoons per week. This has been easy to define with "All teachers work in an hourly interval max days per week". But we try also that teachers who work two days per week in the afternoon to have a free morning. I don't know how to define this situation.
I have seen some custom versions of FET considering the morning / afternoon division. I have to read them carefully, but I think they are not exactly my situation. For example, we don't want the condition "Teachers can only have lesson either in morning or afternoon. never both"...

Thanks for your attention,

Hi again,

finally I've been able to place almost everything: 6 years with almost all the needed divisions. The few ones left are because I need some data from my school, which I will receive soon I think. But it seems it won't be a problem. Following Silvia's method everything works right.
Now I must optimize it a little bit to attend teacher's wishes.
And finally there's the display problem left. The gp-untis way of footnote legend is not good, but I don't like neither the way it's displayed in FET when there are 3 or 4 simultaneous activities in a group, because the column of this day becomes too wide. I'm going to have a look the CSS section in order to see if I can improve it a little bit, but it seems there's no easy solution...

Thanks again,

You have 12 activities for 2 ESO A, 10 activities for 2 ESO B and 9 activities for 2 ESO D. So 2 ESO 2 has 31 activities in total - which is wrong. Does 2 ESO D need to belong to 2 ESO A and to 2 ESO B?

Certainly I needed a break. For a moment I thought that first of all FET would consider 2ESOA and 2ESOB completely separated groups (with no intersection), as this is the actual case in my school, and then it would understand that by 2ESOD belongs to 2ESOA and to 2ESOB I meant 2ESOD belongs to the union of 2ESOA and 2ESOB. My everyday routine at the school lead me to think so, but of course it has no sense for FET. I want to apologize for wasting your time which such an error.
Plus, I have to recognize that I'm the maths teacher, so I hope none of my students is reading this thread. ;-)

QuoteOK, now I have the time to detail my subcategories.
I used 2 automatic subcategories.
Year 1
Subcategory1: A / B / C / I3
Subcategory2: -1 / -2 / -3 /-4 /-5

Now, I get 1A, 1B and 1C for common subjects like history or common classes of English.
is this more clear?

Yes, I think so. Now I'm out, but I will try it as soon as I can. I think this configuration will be enough for me. And of course I will post the results.

Thank you very much for your help to all of you!

Maybe it's too late or I've been too long testing with FET, but I think I've messed up myself.

In my last test I have used just one category: for A and B groups. Then I have defined manually the needed subgroups. As I have not defined them as categories, I've avoided the problem of the large amount of subgroups when crossing all possibilities. Some of these subgroups are simultaneously subgroups of A and B.

But now I have two problems:

- In the timetable of group A activities of group B are printed.
- When I try to generate timetables, FET complains of subgroup D having 31 activities and only 30 timeslots, but I've only defined 9 activities (3 subjects of 3 hours each one) for group D. I've created a false timesolt at the end (called "patch") to be able to generate the timetable, but of course I have to delete it.

It seems FET is restricting simultaneity at subgroup level, and that is counting all activities of groups A and B as of the whole subgroup D (which is a mix of pupils of A and B). So it's actually not assigning any activity to the group A and group B at the same time. If this is the case, I don't understand why. D is subgroup of A and B, but of course they don't have to be all together all the time.

I attach the .fet file and the html timetable (see year 2 ESO), in case it's useful for you to help me.

Thank you very much,

Quotehi again. I think Bingen can do nicely with the same categories I use, because I suspect he is working with a very similar type of school as I do. I'll contact you by mail and we can check if you can do it with 3 categories. If you do, we'll post the results here so everybody can use the help.

I3 is a subgroup of 1rst ESO, the same as 1A, 1B, 1C, etc
I use 1A-1+1A-2+1B-1+1B2+1C-1+1C2 for catalan, spanish and maths, and then I3 (=instrumental 3) for the diversity group of 1st ESO.
Does it sound more clear now?

I think so. Then you are actually using 2 categories only, aren't you? One for "A, B, C, I3" and another for "-1, -2". Is it ok? But then I suppose that in the timetable of, for example, 1ESOA the I3 activities don't appear. It's not a bad option, as you can print a part the I3 timetable, but I was trying to define the diversity group as subgroup of both A and B (we don't have C).
Another difficulty I have is that besides of "hores B" we have more types of divisions, like optative activities, that can be up to 4 subgroups. I suppose I could adapt your method just increasing this category until 4, and using for each activity the number needed, and supposing that pupils in group 1 are always the same, which would not be true, but I think it would work.


Quotesorry to chime in and forgive my intrusion.
I just wanted to let you know how I solved this problem of diversity groups and optional subjects in my school. Looks like your school is very similar to mine.

I used the automatic subdivision and did the following:

Year 1r ESO divided into A B C I3 -1 -2
this way I get: 1r ESO A for common subjects, 1r ESO A-1 for hores B, 1r ESO A-2 for the other half of hora B, 1r ESO I3 for diversity in catalan, spanich and maths.

Then I get 3r ESO-1 (some students from A, some from B and some from C) for optional subjetcs, etc

This has worked for me because I get a general timetable to give to 1r ESO A where it says:
first half go to english and second half go to tecno. I3 go to catalan while A is in spanish, B in maths and C in catalan, etc.

I don't know if I made myself clear.

Hi, Silvia,

thank you very much for your help. I think I've understood it more or less. I assume the first category is "A B C". But "I3 -1 -2" are together a category? Or there is one category for I3 and another for "-1 -2"?

Could you send me your .fet archive, please? This way I could see exactly how you did it, and see how is displayed the result. (If you prefer to send it to me by mail, it's beguzkit at xtec)

Thank you very much,

they have around 6 items in each category. so there are 6*6*6*6*6*6*6=279936 subgoups.
But that is stupid, because there are only around 180 students in a year.

You are right, the best is individual students approach, but I just told you about a good timetabling program like the above one, which has many categories and divisions.

I'll think about it. I also hate that many categories, but we should also listen to requests from users.

ok. but a user should be warned if the numer of subgroups is too high, because:
1. it is not the best (need much main memory; so it maybe slowdown FET)
2. it is critical, because subgroup html tables will need MUCH disk space

I hadn't thought about all this, but you're allright. In fact, even without these considerations, I've always thought that creating a lot of subgroups is no a comfortable way of handling the timetable.

Quote[...] I don't know if I have explained it clear enough, but if not I could send a spreadsheet with an example.

yes, please sent me an example, because i am not 100% sure about your idea.

It's in this post:

QuoteSorry, the attachment

The check box option displaying the same day+hour constraints could be a good option, but I think it would be important to be able to join in an activity object the teacher, the room and the group of students (although not necessary the subgroup). If it's impossible now, I suggest it for the future.

If you want, I could write you a small program to divide into more categories. Just let me know. I hope that you will be able though to work with FET as it is, to have a confirmation that such situations like your's are solvable.

No, no, please, don't worry! And thank you very much. I think it's better for everyone that you both focus on improving the software in a large view to obtain the best possible FET. In the worst case, I could use gp-Untis this year (my school has a license paid), and the next year use FET (of course I prefer free software, and with the short time I've been using FET in particular I think it's really a very good software).

Sorry, the attachment