FET Forum

FET Development => Custom FET for Particular Needs => Topic started by: mathmake on January 11, 2020, 12:45:20 PM

Title: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mathmake on January 11, 2020, 12:45:20 PM
Hi all folks in FET forum,

I've searched all over the forum but  haven't find a solution to my timetabling problem. I'm working in a ordinary comprehensive school in Finland with students from 7th to 9th grade. In each grade there is 9 classes (subgroups). They have different teachers in different subjects.

In our school we have divided a school year to five terms that will last 7 weeks each. Working days are from Monday to Friday and each of them has 5 lessons (periods) maximum. Many of the subjects have many different courses. For example 7th graders have 3 math courses. That means three hours in a week in three different term. The teacher will not change between the courses. Different subjects have different number of courses.

Math: 3 courses
Finnish: 3 courses
English: 2 courses
Music: 1 course
Home Economics: 2 courses
History: 2
...

What would be most effective way to take advantage of great FET to distribute also activities (teachers, classes and courses of subjects) to different terms? Should I make a week of 5*5 days or could I use tags like course 1, course 2 or something? Most important thing would be that there can't be running two courses of one subject at the same time.

I would be glad to have some suggestions how to do this without dividing courses to different terms manually and running FET with each term separately.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 11, 2020, 01:10:27 PM
Hello,

I just saw your message now. I will read more thoroughly. Until then, I have some preliminary things:

1) In the official FET, you schedule activities (each activity has a specified students set, teacher, and subject) to time slots. If you want to allocate (students+subject) to a teacher, it is more difficult, maybe possible with tricks, but not guaranteed. So please tell me if you know for each activity the students, the subject, and the teacher.

2) I come from a country in which the timetable is weekly (5 days x n hours). If you would help me with an example of your institution's timetable I could imagine better. I will try to read your post more thoroughly and answer, but maybe you could send me such an example. If it is private, maybe you could send by email. In this way I will be sure that I will understand correctly the difficulties in your timetable.

Additional question: English will take place in 2 terms, 2 hours in each week?

Edit: I think I begin to understand, hopefully. So in term 1, each week's timetable (each week out of the 7 weeks in this term) is the same? And in each term (2...5) correspondingly each week's timetable is the same?

I think that the important thing that two courses with the same subject cannot be run at the same time might be done with a customization, if we'll use a 25 days timetable, as you suggested.

Yes, maybe we could think of a 25 days timetable or a 5 days timetable with some tags. I will think some more.

Maybe we could do a FET 5 days timetable if for each real-life students set we add 5 students sets, one for each term.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 11, 2020, 04:01:42 PM
Hi Liviu,

first of all thank you for a really quick answer.

For activities teacher, subject and student set (ex. 7A, 7B, 7C and so on) is known. One course means that a subject is studied three hours in a week during one period, two courses means that it is studied three hours in a week during two separate periods (like English, for example) and so on. It is not important that which term courses of subjects rhat have many courses are in. Only thing that matters is that they are not in same term. A certain teacher will teach a certain group in all courses in a specific subject.

You understood our term right.

In advance I planned to solve this problem so that I were about to make separate subjects from separate courses (ex. instead just subject Math there would be Math1, Math2 and Math3). After that I planned to have a constraint that a set of those subjects cannot be in a same time set of five days.

I can send you our current timetables, if they are needed.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 11, 2020, 04:13:55 PM
Hello, mathmake,

It is very good that the activities have the teacher specified.

I am trying to understand your data. But please send me your current timetables.

"period" and "periods" - what does this mean in your third paragraph of your previous post?

Pleas do not make subjects Math1, Math2, Math3, but add activity tags (Math1, Math2, Math3, or simply 1, 2, 3, which maybe you can use in all the subjects). But I would like to see firstly your current timetables to make sure.

I think we'll need a customization so that Math1 is in the same term, Math2 is in the same term, and Math3 is in the same term, and Math1 and Math2 cannot be in the same term, 1 and 3, and 2 and 3, and the same for all the subjects/activity tags. This should be possible.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 12, 2020, 04:17:02 PM
Hi Liviu,

and thank you for your reply. I used the word "period" instead of "term" by mistake. We use to call our term to "jakso" in Finnish, which is period in English. I should have used the word term. With words lesson or hour I've ment period in FET.

I attached my own schedules of all 5 terms and I did the same thing with two groups of students (8B and 8F). Please don't mind 5th or 6th lessons since they are always on the same slot. I have to also mention that 8th and 9th graders have 4 courses of Math (MA in schedules). The first row of the each period in schedules is a subject, the second row is a teacher and the last one is a class room. Rooms can be ignored in FET, because most of the teachers will give their lessons always in the same room.

Not every teacher has so few lessons than I do here in Finland. :) I'm the assistant headmaster in our school, so one of my offical duties is to make all schedules to teachers and students. I'll start to make them not until May, so there is no hurry yet.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 12, 2020, 05:02:23 PM
Hello, Markus, nice to meet you!  :)

1) Isn't there a mistake in your 8B timetables for MA? Week 7 and Week 17 have MA on Tuesday 11:30-12:40, but you said same subject cannot overlap. Hmm, also vRUA2.1 on week 50 and week 17, they occupy the same 3 positions? Could you clarify for me your sentence "Most important thing would be that there can't be running two courses of one subject at the same time." in your first post?

2) It might be easy and possible to use the official FET, without customizations, if I understood correctly. We just need to create for each real students set and teacher 5 copies. Then, to constrain the subjects for the real students set not to overlap, we could simply add a constraint activities not overlapping for each subject x real students set pair.

If this does not work, we could also try with a 25 days FET "week", with a customization.


No, this is not correct. You don't know ahead the repartition of subjects over the terms (as you said in your first post). So we need to do a 25 FET-days-per-week timetable, with the customizations that:

a) The subjects cannot be in the same time (but see my question (1)).

b) The courses cannot overlap (so you cannot have more than 3 subjects in the same real 5 days week or, if each 3 divisions of a subject must be in the same real 5-days week, constrain this).

3) Yes, there is no hurry, but it is always best to be prepared for the worst. It is also best to check that it works correctly and there are no bugs in our ideas/implementation. I would also advise you to make some small tests before inputting too much data, so you/we don't work in vain.

4) Please clarify (it is a bit difficult for me to check every subject): a subject is either 3 or 0 times (periods) on a real week? (so, not 1 on one week and 2 on other week?) I see that BM for 8B allows 2 in a week and 1 in another week, so I think it is allowed to split them.

I will now read and think some more and modify my message or post a new reply if I think of something else.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 12, 2020, 06:46:07 PM
I made a sum by term of the prominent subjects for 8B:

MU: 2+1,   TE: 3+1,   LI: 1+2+2+2+2,   HI: 3+3,   MA: 3+3+3+3,   vRUA2.1: 3+3,   UEEV.2: 3,   OP: 1,   ENA1: 3+1,   BM: 2+1+3,   RUB1.2: 1+1.

Need clarification for TE, OP, and RUB1.2 (sum is not divisible by 3), and also how much can be a subject be divided by terms.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 12, 2020, 07:04:38 PM
Hi,

1) what I ment was that in same term considering one class of students. Another classes can have same subject exactly same time given by different teacher. Courses of same subject of one class can be at the same period, but not in the same term. All the courses of a subject are in different terms. Week 7 is a timetable of 4th term and week 17 is a timetable of 5th term. Week 50 is a timetable of 3th term. They all are followed roughly seven real-life weeks .

2) For example there is 4 courses of Math to a class of 9th graders. This mean that some 9th class might have it in 1st (3 hours in a rel-life week), 2nd (3 h/wk), 3rd((3 h/wk) and 5th (3 h/wk) term. Another class could have it 2nd , 3rd, 4th and 5th term. If those classes have different teachers, lessons can be exactly at the same time.

In a 25 days FET week Math (duration 12) would be splitted for example like in the table below.




t1-Mont1-Tuet1-Wedt1-Thut1-Frit2-Mont2-Tuet2-Wedt2-Thut2-Frit3-Mont3-Tuet3-Wedt3-Thut3-Frit4-Mont4-Tuet4-Wedt4-Thut4-Frit5-Mont5-Tuet5-Wedt5-Thut5-Fri
1001110101011100000000111

3) I really appreciate your help, but I'm sure you have lot to do.

4) There are few courses splitted to different terms nowadays, but it's not desirable. This is a case with RUA. We would like to have schedules that if a course of some subject is in a term then there would be three lessons (periods, 75 minutes in our case) of it in a week in real-life. There are few subjects that are studied few lessons every week, like Athletics (LI), OP (Student Counselling) and TE (Healthy Life). OP and TE are combined , so the will make 2 courses together (TE: 1 + 0.5 and OP 0.5). Subjects starting with UE are different religions. In Finland we study different religions in different groups. Please don't take them into account because they can be added to the timetables later on.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 12, 2020, 07:36:56 PM
Hello,

Actually, in the past couple of months I did only minor FET improvements and was getting kind of bored  :)  . I also like challenges, like Finland institutions' timetables, which were not proposed until now. But we'll do as you consider best, of course, and continue only on your option.

(Note: see my Edit below, which might be a better solution instead of this.) Maybe the mainly needed new constraints are max/min number of activities from a subject+students set (or from a selected set of activities) in a real-life week (FET days 1-5, 6-10, 11-15, 16-20, and 21-25), with a variable weight, probably near 100%, but allowed <100% (with 100% only is available now, selecting the slots - see the constraints activities occupy max/min time slots from selection, but you need to add 5 constraints for each real-life week).

And maybe other needed customizations, which appear on the way.

We'll continue to work on this on/if it is your option, don't worry, and sorry if I was a bit hasty - this is my style  :)

Edit: I said above that activities occupy min time slots from selection is available with weight 100% now. But it won't work, since it cannot allow zero slots (which is permitted). I think that a better direction would be to add activities into components of 3, and add constraints with variable weights (to be implemented, as a custom version, if you want) to schedule them in the same term. And disallow activities from different components to be in the same term. This might be more efficient.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 13, 2020, 12:12:03 PM
Hi,

suggestion you made in your edit sounds to be good solution and it is easier to understand to me, too. And I really like your style. Things sill be completed that way.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 13, 2020, 12:48:58 PM
OK, thank you! Let me know if and when you would like to begin the data input and customizations. And don't worry, we can stop or have a break at any time.

I think it might be a kind of trial-and-error in the beginning, not inputting too much data, until we make sure we got things right. Ideas might appear and replace other ideas. Because, as I told you, FET was created for a real week, not for 5.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 13, 2020, 07:53:25 PM
Hi,

I made a sample of two 8th classes. I wrote comments to the rightmost column how lessons should be divided between terms and few conditions considering two subjects, OP and TE. Will there be too much new constraints so that customation would be too complicated?

I made out that one way to do what I need is to run FET few times. First I could replace weekdays with "Term 1", "Term 2", ..., "Term 5" and periods with "Subject 1", "Subject 2", ... and set Duration of an activity same as number of courses of a subject. Then I could run FET the first time and let it make timetables that has courses of each class and teacher placed evenly between terms. After that terms would not include all subjects, because they are divided to different terms. According to results I could write separate activity sheet for each term and run FET with those to get timetables for each term.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 13, 2020, 09:22:29 PM
Hello, Markus,

About your two-phase approach to the problem: yes, it is an idea, but it will not optimize perfectly, choosing from all the variants, as in a 25-days timetable. Because phase 1 will restrict the timetables. And you said that you don't want to restrict which subject goes to which term.

I think that in the two-phase approach you can use the official FET without requiring customizations.

About the one-phase customized FET: it is good that you showed me a complete example with all the activities and very clearly structured and explained.

I hope that the customizations will come with few constraints. Let me analyze below:

There will be min 1 days between each pair of (sub)activities, with 100%.

About VT and VP: consider (1+1+1+1+1)+1. So add the first part with max in each term = 1 and the second part without additional constraints.

About LI: consider (1+1+1+1+1)+(1+1+1+1). So add the first part with max in each term = 1 and the second part with max in each term = 1.

About MA (and similarly the other subjects): consider (1+1+1+1+1+1+1+1+1+1+1+1) (12 1s), max in each term = 3 and max terms occupied = 4.

About TE and OP: I think we can solve with constraints activities preferred time slots (to force some of them in the 4th or 5th term).

About RUA and RUB: I think we could add 2 subgroups in 8A: 8ARUA and 8ARUB. The rest will come naturally.

It is easier and more efficient to consider "max" constraints instead of "min".

So it seems that two new types of constraints is what we need: constraint activities max in a term and constraint activities occupy max terms.

Do we need to think of weights under 100%? It is easier with only allowing 100%.

The bad part is that you need to work with CSV, and the import/export was done by Volker. But I will try to modify his code there. Because we need to import the activities like: (split duration) (1+1+1+1+1)+(1+1+1+1), and add automatically these two new constraints, cleverly.

I can begin work on these two new constraints on your accept. It seems possible, not difficult. Then I need to customize the CSV import code.

Or you might want to choose to do your timetable in the two-phase approach, in which case you do not need my customizations.

Please let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 14, 2020, 05:26:49 PM
Hi,

this two-phase approach was a plan B. I were trying to figure out how to make timetables to all terms with uncustomized FET in case that customization would be too complicated.

Your suggestion sounds great! Feel free to make any modifications to the file I sent you. Speaking of VT, VP and LI do this second part mean a second activity with the same name by practice. I guess two constraints you are considering are fine and they offer flexibility we might need in a future with this second part thing and constraints mentioned. Working with CSVs is fine to me.

Many thanks to you, Liviu!
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 14, 2020, 05:45:38 PM
OK then, I will begin implementing these two new constraints, which is not difficult for me, because I know this portion of code and the idea.

Then I will test, importing your provided CSV file and adding manually from the menu the two new constraints. This will prove that our approach works.

Then will come a maybe more difficult part for me, because I don't know exactly the CSV import code: to import your data with additional columns for the two new constraints.

I will write here informing you of the progress and put snapshots to test, when ready.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 15, 2020, 01:32:57 PM
I am ready with the two new constraints, I hope they are working correctly.

Please get your custom version as a snapshot (fully functional, only the name contains "snapshot" so I can release a final version later) from here: https://lalescu.ro/liviu/fet/download/custom/mathmake/

I added from the GUI the constraints for 8A for these four subjects: MA, VT, VP, and LI (the new constraints, as we talked). There is the file liviu.fet as an example, obtained by importing from your CSV data and adding the new constraints. This file also contains the necessary students structure (I added the year 8 and divided it by two categories).

I am not sure how to consider adding automatically adding the two new constraints after importing your activities from the CSV file. Could you consider to add the constraints manually from the FET GUI for your whole data, or it is too difficult? (please also open with a text/XML editor a .fet file, you can see its structure - you might be able to generate the constraints with a program of yours.)

Please let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 16, 2020, 05:43:53 PM
Thank you ,Liviu!

I'll make some testing with greater number of student sets. Adding constraints in GUI or manually to XML-file is fine to me.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 16, 2020, 06:04:47 PM
You are welcome, Markus!

It is difficult to add the constraints manually in the XML .fet file. It was just a suggestion if you can create some script or program. Adding the constraints by the FET GUI should indeed be acceptable, since there are filters for the activities there.

Please keep me informed, I am very interested if FET is able to manage a timetable for your institution.

There may appear other problems, just write here and we'll try to solve them.

After you check that the two new constraints work OK, I would like to release a version which does not contain the word "snapshot" for you. This is very easy, just a matter of making an archive and compiling it for Windows.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 29, 2020, 07:10:21 AM
Hi Liviu,

I've made more activities including all 9th graders to run some tests. FET suddenly shuts down after placing about 100 activities of little bit over 500 activities. A file of my test set is as an attachment. A version with less constraints runs nice. Is it a lack of memory or what do you think?

One more question. What is the best way to force some activity to be placed in certain term?

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 29, 2020, 08:07:30 AM
Hello, Markus,

It is a bug. I isolated it, but I need more time to re-understand what I did there and fix it perfectly. Memory usage is very low. I just access an array with -1 index.

To fix a single activity in a term: activity preferred starting times/time slots.
To fix more activities in a term: activities preferred starting times/time slots.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 29, 2020, 11:15:16 AM
I fixed the bug and released a new snapshot version. Please get it from https://lalescu.ro/liviu/fet/download/custom/mathmake/ and let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 29, 2020, 12:54:01 PM
I wanted to check if we can add more constraints, and it is possible. I did a progressive approach. See the attached files (in an archive). The last file solves more difficultly, sometimes seem not to solve.

I added min hours daily for students = 4, max span per day = 4, max gaps per day = 1, and then progressively decreased the gaps per week and early max beginnings at second hour to 1.

The last timetable (liviu6.fet) looks really nice, but I am not sure if you need it like this, and also if you add more activities it might be impossible, so please start without my constraints and slowly increase the difficulty if the timetables are possible.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 29, 2020, 04:09:40 PM
Thank you, Liviu!

It runs smoothly. I'm ready to add activities of students at the 8th grade.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 29, 2020, 07:22:04 PM
I am glad it works!

I decided to add a version without "snapshot". The same location: https://lalescu.ro/liviu/fet/download/custom/mathmake/ . Don't worry, we can always add new changes, if necessary.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on January 30, 2020, 07:23:33 PM
I've done some more testing. It's amazing what you can do with this software!

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on January 30, 2020, 07:30:20 PM
Thank you for your feed-back! I am always happy to know it is useful  :)

Keep me informed of your results, I am very interested.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 16, 2020, 08:52:24 AM
Hello both of You!

As a headmaster of 480 student school and 50 teachers, I've had quite busy times lately. For some strange reason I decided to relax by discovering open source timetabeling software. I have to change my medicines...

Well, I found this very interesting conversation. My situation is just like Mathmake's and I will install this version provided here. I have been making timetables for 20 years with many tools including magnetic board   :P Lately using Untis in 5-semester school. Untis gets the job done nicely, but I have the feeling I'm using only 5 percent of it and not understanding the rest 95.
And I would be very pleased if I could use open source tools.

So, now there are at least two users in Finland  8) - well , I'm not a user yet, let's see.

BR Mikko

 
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 16, 2020, 08:57:15 AM
Hello, Mikko,

Nice to meet you!

I hope you will be able to use this custom FET version successfully. I am here to help  :)

Just now I saw that the examples from mathmake are not included in the "examples" directory of FET - I should do this, because otherwise it is difficult to understand the process. The examples are however available in the download directory for the mathmake custom version.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 16, 2020, 09:27:23 PM
Yep, I will study those.
FET seems quite straigth forward and easy to understand.
How to split one subject courses to five semesters I don't understand yet.

For example we have 3 courses Math on 7th year; 1 course is 3 lessons / week
That could go as:
3+0+3+0+3
2+2+2+2+1

in any combination.

But we have 1 course religion. And that I want  to all three lessons in on one semester, so:
3+0+0+0+0 or
0+3+0+0+0 or
0+0+3+0+0 or
0+0+0+3+0 or
0+0+0+0+3 or

i'll keep studying


 
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 16, 2020, 10:24:49 PM
Please see the attached simple file. See the activities list and the all time constraints list. You need to use the last 2 constraints in the activities time constraints menu.

Please let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 17, 2020, 09:02:23 AM
I will, thank you for your quick answer/help!
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 17, 2020, 10:02:40 PM
It seems to work just rigth. I just don't understand how it works...
What would be best way to learn to understand those constraints?

E.g. I know the constraint with Religion puts it in one semester, I just dont understand how it works. Sorry  :-[
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 17, 2020, 10:17:55 PM
Absolutely no problem!  :)  I am here to help (but I'll probably go to sleep soon).

To add/modify the constraint for Religion (all 3 are in a single term/semester): go to Data/Time constraints/Activities/A set of activities occupy max terms, select the subject Religion and add all the activities, then Max occupied terms = 1. You have also shortcut tab on the main form, Time/Activities/A set of activities occupy max terms. You can also modify from All time constraints dialog.

To add/modify the constraint for Math (max 3 are in a single term/semester): similarly, Max activities from a set in a term, select subject Math and add all the activities, then Max activities in a term = 3. Similar as above, shortcuts are possible.

Is this what you are asking, or you meant another thing?
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 19, 2020, 09:37:33 PM
Thanks, exactly this!
One more and even more stupid noob question: where/how do you define terms?
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 19, 2020, 09:42:28 PM
They are hard-coded, the first 5 days are the days of the first term, the next 5 days are the days of the second term, ... . There must be 25 days per week, 5 terms x 5 days.

This can be changed in the program or generalized, but mathmake did not require this.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on May 21, 2020, 09:18:53 AM
Okei, thanks. We have just the same system, so this works perfectly. I just did not understand the way it works.

BTW, Finnish lower secondary / junior high schools ( grades 7th-9th) use mostly, as far as I know, either 2-term or 5-term timetabeling; schools/municipalities are aloud to choose this by themselves. There are also 4-term and 6-term systems.

These 5-term schools are usually connected to a senior high school (common resources). There are major changes going on in senior high system. So, this term-system can be changed in the near future. Because of this, it could be useful to be able to change those terms, but this is not needed now.

Thanks again for your kind help!
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 21, 2020, 09:54:07 AM
Yes, our work on this was more like a proof of concept.

You are welcome!  :)
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on May 26, 2020, 07:13:03 PM
Hi Liviu,

I've started to run FET to make timetables. After adding some time constraints I've started to get assortion failed errors (image attached). I can't tell exactly which constraint is causing the problem.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 26, 2020, 07:16:41 PM
Hello, Markus,

I apologize for the bug! Please send us/me your file as soon as possible, I'll try to correct as soon as possible. I need your file to hunt down the bug.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on May 26, 2020, 07:29:02 PM
Hi Liviu,

thank you for a very quick answer! Here is the first version of the file, that the  problem appears.

Markus

Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 26, 2020, 07:31:36 PM
OK, thank you, I will see it soon. You could also send me more advanced versions of your file, so that I can check further and ensure everything is OK.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on May 26, 2020, 07:35:28 PM
Here you are.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 26, 2020, 07:47:49 PM
Oh, what a little silly bug I did but what bad consequences :)

I solved it, just need to compile for Windows and put the new version (probably at most 30 minutes). Please stay tuned.

I just saw your constraint with 99% preferred times early the first 4 slots of the day. You have also the constraint activities occupy max time slots from selection: add all the activities, selected slots = last of each day, max occupied = an incremental approach. And if you add activities you need to update the activities in the list of this constraint. But this has nothing to do with the reported crash bug. I also tried to increase your preferred times from 99% to 99.99% and it worked, slower, but better, with less soft conflicts. But if you add more other constraints, it might not work.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on May 26, 2020, 07:57:50 PM
Thanks Liviu!

Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on May 26, 2020, 08:19:03 PM
You are welcome!  :)

I just put the new version: https://lalescu.ro/liviu/fet/download/custom/mathmake/

You might want to read again the ending of my previous post, I edited it.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on June 08, 2020, 04:26:59 PM
Hi Liviu,

I've made few versions of timetables for our school with FET now. They are getting better and better. FET runs extremely nice despite a great number of constraints we have.

There is only one tiny problem that I'm trying to fix. Activities are divided a bit unevenly to the terms for some teachers. There might be a term of 9 hours in a week and another term having 18 hours in a week for couble of teachers.

The solution I'm trying now is to add the min hours daily for some teachers. Is there any other way to divide activities evenly between terms and at the same time respect the term structure we would like to have? Would spreading activities evenly over the week constraint do the job or would it brake term constraints you've made to mathmake custom version?

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 08, 2020, 04:37:04 PM
Hello, Markus,

I would like to see your file (send me a locked file, data_and_timetable.fet, and tell me which teachers are problematic and how). And send also the unlocked file.

If I understood correctly, you say that for example teacher T has 9 activities in the first 5 FET days and 18 activities in the next 5 days. Maybe this can be solved by constraints activities occupy min/max time slots from selection, if you add 5 constraints for each teacher and in each constraint you add the activities of that teacher and select a term. The occupy min constraint has a setting - allow empty slots - how should it be? But I would like to see your file for making sure.

If I understood correctly, the constraints you are proposing are not adequate.
Title: Re: Five 7 weeks terms in a school year
Post by: mathmake on June 08, 2020, 05:09:08 PM
Hi Liviu,

you understood it right!

I guess your suggestion is working! I think that constraint min activities in a set of time slots would be enough.

Thank you again for your help! I'm runnig FET right now. I'll send you files you asked after it has solved the current timetable in case your solution would not work for some reason. But I think it will do the trick.

Markus
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 08, 2020, 05:11:10 PM
You are welcome!  :)

OK, inform me either of success or of failure.

PS: I updated my post above, one of my comments was incorrect. The allow empty slots is for another constraint, activities min simultaneous in selected time slots.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 09, 2020, 10:37:40 AM
Hello!

We have 1941 activities in our timetable and making all the constraints just now.

I have one noob-question again: is it possible to import activities again from a csv-file, writing them over the old ones? For example, I noticed that some things would be much easier with activity tags. But if I import activities from csv,  it adds those activities, not  writing them over the old ones.

Or can I just (how?) just delete  all activities ad import again?

I have all the data in those csv-files, but the constraints ar only in my fet-file, if I understand it rigth?
Title: Re: Five 7 weeks terms in a school year
Post by: Volker Dirr on June 09, 2020, 10:57:14 AM
If you delete all activities, then most constraints will stay (like teacher, students and room constraints), but all constraints about activities will be removed.
maybe just delete all activities and check the constraints list to see if that is critical in your dataset or not.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 09, 2020, 11:19:06 AM
Volker, you forgot to say that to remove all the activities mikkojoo can go to Activity planning and Delete all, or in the activities dialog just press Enter on Remove and keep it pressed.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 09, 2020, 11:28:52 AM
Thanks to both of you!
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 09, 2020, 05:56:41 PM
I'm getting on.

Now I have few problems:

- how do I force as many teachers as possible to have an activity on Wed 1st hour? We have a teacher meeting before that, so I would like as many as possible teacher not to have gap after meeting.

Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 09, 2020, 06:03:54 PM
I think you can use the magic constraint activities min simultaneous in selected time slots, with a progressive approach. All activities, selected slot = Wed 1st, min simultaneous = x, where you find x by a progressive approach.

Please read that constraints' help, and also read the help for constraints activities max simultaneous in selected time slots, and activities occupy min/max time slots from selection.

With the constraint activities occupy min time slots from selection you can ensure that a certain teacher has an activity on Wed 1st.

Please let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 09, 2020, 06:21:21 PM
Thanks, I'll try that!

Another:
- we have three kind of activities containing Sports:
-- actual Sports-lessons
-- two types of optional activities, where a student can have also Sports

So, I would like to be able to avoid those sporty activities to be on same day
All those activities have an activity tag (for room reservations) if that could be helpful with this?
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 09, 2020, 06:23:44 PM
Either add a constraint min 1 days between activities for all such activities of a student, or use student max hours daily with an activity tag. The first is preferable.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 09, 2020, 07:19:29 PM
Thanks, worked perfectly.
I have to say, that I was impressed from the beginning. But still, it's quite amazing how fine FET solves the problems one by one.

I have been making timetables since 1998, first magnetic board, then Finnish timetableing software Kurre (without any optimisation) and Kissi. Then, for couple of years I have been using Untis, which has been used in my present school since 80'.

But FET is the most straigth forward and efficient tool for this. I feel I have learned really much in only few days and I want to thank you Liviu, Volker and also Mathmake (because I found this program bacause of his 5-term work).
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 09, 2020, 07:41:33 PM
Thank you for your nice words!  :)

Yes, FET was created with suggestions by users, for users, step by step.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 13, 2020, 11:48:09 AM
Quote from: Liviu Lalescu on June 08, 2020, 04:37:04 PM

If I understood correctly, you say that for example teacher T has 9 activities in the first 5 FET days and 18 activities in the next 5 days. Maybe this can be solved by constraints activities occupy min/max time slots from selection, if you add 5 constraints for each teacher and in each constraint you add the activities of that teacher and select a term. The occupy min constraint has a setting - allow empty slots - how should it be? But I would like to see your file for making sure.

If I understood correctly, the constraints you are proposing are not adequate.

I'm now in this same  situation. I can't use "Min hours daily for all teachers" bacause we have few teachers teaching only few hours (one  activity a day is okay).

I don't understand quoted thing above. What constraint are you talking about?
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 13, 2020, 11:56:54 AM
In the activities time constraints, there are two constraints: "A set of activities occupies min (or max) time slots from selection". I think you can use the "min" variant. Add 5 such constraints, one for each term: select all activities of a teacher, then select all slots of the term with X, min/max occupied = the desired value.

Please let me know.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 13, 2020, 12:52:06 PM
Thanks again!
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 13, 2020, 06:25:58 PM
Seems to work alrigth, but because we have quite many activities with meny groups and activities, these constraints are quite heavy, both to me and and the computer :)
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 13, 2020, 06:31:36 PM
Hmm, I am so sorry. Don't worry about the computer, these constraints are optimized to the fullest.

Maybe you could send me your file, so that I can have a look.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 16, 2020, 02:18:07 PM
The situation is quite good now., really.
Again, i have a noob question: how can I move an activity manually - the timetable is really good, but I could move a few activities manually to make it even better?
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 16, 2020, 03:56:05 PM
Unfortunately, this is not easy. You might work with the locked timetable and deactivate some locking constraints (activity preferred starting time/room) and lock them to other places.
Title: Re: Five 7 weeks terms in a school year
Post by: Volker Dirr on June 16, 2020, 06:20:18 PM
see https://lalescu.ro/liviu/fet/forum/index.php?topic=3987.msg21392#msg21392
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 17, 2020, 10:34:21 AM
Ok, this is fine!
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 21, 2020, 12:51:18 PM

"Is this a bug?!6 2020-08-30 - 13 - 1"

In all cases i saw it was not a bug so far, but i am not sure. That is why i wrote the waring. i can't answer that without seeing your dataset. Maybe sent it to me. see my mail at www.timetabling.de

"Ambiguous valid timetables at su kesä 21 2020. (ID 1 and ID 1)"
Has it something to do with the 5-term system or should I just read manuals more carefully?

I guess this happens because you imported at least 2 fet files and set both with the same date. That is impossible/ambiguous because TiTiTo don't know which one you want to use today.
So you need to setup different dates for the timetables or delete the old table.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on June 21, 2020, 12:53:59 PM
The main problem seems to be that we have so many constraints, that they are overlapping and not working the best possible way.
The biggest concern just now is that there are quite many 1-activity days for teachers. Student/group timetables are quite good, but we would prefere even less 2-activity days.
Title: Re: Five 7 weeks terms in a school year
Post by: Volker Dirr on June 21, 2020, 01:18:11 PM
"Is this a bug?!6 2020-08-30 - 13 - 1"

In all cases i saw it was not a bug so far, but i am not sure. That is why i wrote the waring. i can't answer that without seeing your dataset. I will check it if you sent me your dataset to my email (see www.timetabling.de )



"Ambiguous valid timetables at su kesä 21 2020. (ID 1 and ID 1)"
Has it something to do with the 5-term system or should I just read manuals more carefully?


This happens because you imported at least 2 fet files and set both with the same date. That is impossible/ambiguous because TiTiTo don't know which one you want to use today.
So you need to setup different dates for the timetables or delete the old tables.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on June 21, 2020, 02:55:17 PM
Volker, I think you wrongly edited post #68 of mikkojoo?
Title: Re: Five 7 weeks terms in a school year
Post by: Volker Dirr on June 21, 2020, 06:33:42 PM
uppss...
yes, sorry. I wanted to modify my post.
hmmm... I can't undo it.

Sadly i don't rember exactly the original post.

If i remeber correct the original post included the two problems with TiTiTo that i quoted; one (similar?) problem with FET-Read and the comment that he has no time to care about that.

I am so sorry mikkojoo. Please ask/write one more time.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on July 05, 2020, 09:47:35 AM
No problem, I got the answers I needed!

Really big thanks for FET and for you Liviu and Volker.

I began using FET in MAy and in June we got our 2020-2021 timetable ready. The learning curve was deep and it was hard work, but worth it! The program is much more understandable than Untis we have been using for decades in our school.

Volkers help on using TiTiTo was to the point, but in the end I did not use it. We have to use Kurre is a "final tool" for timetabeling and publishing timetables for students. So, I made the finalising in Kurre.

FET is just amazing tool for a five term school like ours. Thanks!
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on July 05, 2020, 09:57:04 AM
So, we got the the timetable done and I'm really happy and little bit proud for that.

I think we have too many and too complicated constraints there. There are more than 3000 of those now... Some of them are certainly overlaping and some are just stupid. But anyway, we got the job done, thanks to FET.

I noticed that Visma, the company behind Kurre, Wilma, Primus, made a donation to you some years ago. It would be so nice to have these funtionalities in Kurre or API / interface getting information from one to another. Now I needed to manually enter those five timetables to Kurre. 
Title: Re: Five 7 weeks terms in a school year
Post by: Volker Dirr on July 05, 2020, 11:27:13 AM
Visma is a commercial company. They got a lot of contracts with different states, schools, ... .For example Norway payed them 560 Million NOK to code a timetabling tool. It would be easy from them to code a FET timetable import. I bet less then 1 week for a single guy. But their clients will wonder why they pay Million of Euro for a function that they didn't code. So if they do that they won't earn so much money in the future.
Title: Re: Five 7 weeks terms in a school year
Post by: mikkojoo on July 05, 2020, 06:38:58 PM
 8)
That's true.

FET rules anyway.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on July 05, 2020, 08:15:06 PM
Quote from: mikkojoo on July 05, 2020, 09:57:04 AM
So, we got the the timetable done and I'm really happy and little bit proud for that.

I think we have too many and too complicated constraints there. There are more than 3000 of those now... Some of them are certainly overlaping and some are just stupid. But anyway, we got the job done, thanks to FET.

I noticed that Visma, the company behind Kurre, Wilma, Primus, made a donation to you some years ago. It would be so nice to have these funtionalities in Kurre or API / interface getting information from one to another. Now I needed to manually enter those five timetables to Kurre.

Thank you for your kind words!

Yes, Visma donated, but they did not find at that time that they could use FET for a Norwegian school (and I am not sure now either - I do not know if in Norway it is like in Finland). If mathmake and you, mikkojoo, would not have suggested this approach with 5x5 days per week, we would not find out FET can solve Finnish timetables.

Import/export should be really easy. FET writes the results as CSV and XML, or it could be customized to output the results in other formats.

Overlapping/redundant constraints sometimes slow down a bit the generation, sometimes are ignored (depending on their type). But probably the speed is not much affected by redundant constraints.
Title: Re: Five 7 weeks terms in a school year
Post by: Liviu Lalescu on July 06, 2020, 11:07:42 AM
What do you think, should I make a prominent version, with the name like "FET-Terms" or "FET-Finland"? (which of those?), and put it near the most important FET custom versions? How to customize the number of terms and the number of days in a week?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on July 06, 2020, 06:38:52 PM
I added an entry in the 10 most important custom versions: https://lalescu.ro/liviu/fet/custom.html . If you want further work on this custom version, let me know.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on July 07, 2020, 09:44:39 PM
Thanks again.
I will ceratainly continue working with FET - after vacation :D

In Finland there are
1) lower secondary schools with 5-term school year, 
2) but at least as many with 1 or 2 term school year.
3) Also elemntary and comprehensive schools are normally using either one timetable all year (with minor changes autumn/spring term) or 2-term timetabeling. 
4) Upper secondary schools are mostly in  5-term system.
6) In all Finnish schools nuber of days in a school week is 5.

I will be out of office until August now. After that the beginning of school year will probably take most of my time, but little bit later I will be back with this.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on July 08, 2020, 09:55:57 AM
OK.

So 1 term is like using the official FET?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mathmake on August 25, 2020, 01:55:37 PM
Quote from: Liviu Lalescu on July 08, 2020, 09:55:57 AM
So 1 term is like using the official FET?

Yes. Especially younger students (from 1st to 6th grade) has same timetable whole school year.

Markus
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on April 17, 2021, 06:31:51 PM
Starting with FET-6.0.0, released on 17 April 2021, FET-mathmake (terms, Finland) is integrated into the official FET. Please use official FET (6.0.0 or later).
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on April 26, 2021, 11:11:33 AM
Ok, thanks for the information. I will download it.

We have been using FET-made timetable for all 5 terms here in our school. The timetable is totally ok, but we very quite in a hurry last summer ja noobs with FET. Now we are starting process for next schhool year.

BR Mikko
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on April 26, 2021, 11:17:19 AM
I wish you success, Mikko!

There are some typos in your post and I am not sure I understand it completely. But I think I understood the idea.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 03, 2021, 09:44:11 AM
I just wanted to say, that FET is really good! We had some problems, because we had to do timetables in such a short time - we were learning by doing, which is always great but quite hard.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 03, 2021, 10:23:18 AM
I am glad it worked, Mikko!  :)

If this program proved useful to you, you could help by spreading the word about it, and letting people know that it is entirely free software, depending completely on donations.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 11, 2021, 02:45:42 PM
Hi again!
Now I'm just starting to make new timetable.
I have all the information imported as csv-tiles and evertything is fine.
My question is: I have 5 day in a week, 5 hours in a day, 5 terms in a year.

Something is wrong there, shoud I have 25 days or what?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 11, 2021, 02:53:57 PM
"You are working in the Terms mode and the number of days per week (5) is not equal to the number of terms (5) x the number of days per term (5) - please correct this before generating."

This is somehow wrong.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 11, 2021, 03:01:11 PM
I think I got it.
I had to make 25 days in a week, monday1, tuesday1, ... ... thursday5, friday5.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 11, 2021, 03:24:06 PM
Exactly, please read the help for the FET terms mode, in the Help menu of FET.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 12:56:18 PM
Again making timetables and doing well.

It would be nice to have constrain "Min activities from a set in a term" - I have done it with "a set of activities has a set of preferred timeslots" but it's quite hard to make for each term and each set of activities.

Generally, FET is very smooth to use and handy.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 01:03:38 PM
And; it would be useful if would work like this

min activities from a set of activities in a term && in not more than minimum then == 0

Then it would be possible to define number of occupied terms and minimum&maximum of activities in a term >> more or less equal number of activities in occupied term (and others to be 0).
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 01:24:19 PM
Hello,

I am glad you like it!

OK, I will try to make this, since it seems useful. It might be difficult, but it is useful. Could you send me your input file? I cannot guarantee that it is possible to implement it, though.

Do you know about the existing constraint activities occupy min time slots from selection? It might help (but you need to add n_terms activities).

As for me, I have a personal appeal, for users of FET in Finland: please spread the word about FET, and please spread the word that this project desperately needs financial support, as I am not helped by any organization (only by the kind individual donations).
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 01:48:56 PM
Here is the zipped file
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 01:53:23 PM
There are lots of constraints...
There are many things we have to consider; certain activities in one term, others spanned to certain terms, usually we don't want to have "empty"  terms between occupied terms.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 01:58:29 PM
Thank you for your file! Could you indicate to me what constraints should be removed and which ones of type min activities in a term should be added, if I make it, so I can test it?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:10:39 PM
It's hard for me to say what should be removed...
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:15:33 PM
But, for example activities "MA" should all have constraints for each group:
1) min 2 activities in a term
2) no empty terms between occupied terms

Then there should be a constraint "max 3 activities in a term" for each set of activities. This for everything.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:19:42 PM
For example for "BG" I have done same thing like this:
a) there are 9 activities per group altogether
b) they should be in terms 2,3,4, so
c) constraint "max days between avtivies" = 16
d) constarint "max activities in a term" = 3
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:22:30 PM
But for MA (maths) it's more complicated because
- there are more activities (9 or 12)
- they should be spanned in 4 terms (9 acts) or 5 terms (12 acts)
- there should be a) min 2 acts in a term b) max 3 acts in a term
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:24:53 PM
Do You get my point or is there something I'm missing / should do other way?

I will be off for a while, doing some outdoor sports, because it's finally spring here in Finland 
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 04:25:29 PM
OK, I got the idea. Please let me know if constraint min activities from a set in a term would be enough; I mean, in this case could you use the other constraints to say that there is no empty term in between occupied terms?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 04:27:53 PM
I understood. I will test on some simpler files and then on your file. Please let me know if a new constraint type min activities from a set in a term with/without allowing empty terms would be enough.

Have a nice sport!
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:32:01 PM
As a quick idea, I think "min acts in a term" would be a solution just like that.
If there would even be an option for empty terms or not, in between them, it would be perfect - I think.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 04:35:51 PM
I think it is impossible an option to allow empty terms in between the non-empty terms. You need to use max days between activities. Is that OK?

By "min acts in a term" do you mean min activities from a set in a term with/without allow empty terms?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:45:32 PM
Its totally ok!
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 04:47:39 PM
Or maybe you need also another constraint, max terms between activities? Because max days is not perfect in this case.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:53:03 PM
Quote from: Liviu Lalescu on May 19, 2022, 04:47:39 PMOr maybe you need also another constraint, max terms between activities? Because max days is not perfect in this case.


This is true!

"Min activities from a set in a term" is fine just like that - just like "Max activities from a set in  a term". It is not necessary that the same constraint cares about empty terms.

Btw, I wrote some words about FET in my Facebook, just to tell Finnish principals about FET.
I will tell everyone willing to hear about this software and how nice it is to make timetables with it.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 04:54:02 PM
Is it possible to use 'max terms between activities' with value 0?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 04:55:04 PM
Quote from: mikkojoo on May 19, 2022, 04:54:02 PMIs it possible to use 'max terms between activities' with value 0?

Yes, it should be very easy to allow 0.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 05:00:18 PM
Ok, I did not realize that  :o
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 05:00:47 PM
Quote from: mikkojoo on May 19, 2022, 04:53:03 PM"Min activities from a set in a term" is fine just like that - just like "Max activities from a set in  a term". It is not necessary that the same constraint cares about empty terms.

Btw, I wrote some words about FET in my Facebook, just to tell Finnish principals about FET.
I will tell everyone willing to hear about this software and how nice it is to make timetables with it.

Thank you!

I am not sure I understand the first paragraph. We need to allow empty terms in this constraint, otherwise your timetable will be impossible for 9 activities, min 2 per term, 5 terms.

Please go outside. You'll write later.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 05:12:50 PM
I'll go now  8)
Yes, you have it rigth. This and 'max terms between activities' would be perfect solution for me.
Back in hour or two
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 08:04:35 PM
I hope it will go well. I hope that I written the correct code for the generate part, which was the important and difficult part. I did for the more complicated min in a term and for the easy max terms between.

It remains now only the interface, which is tedious and long, but very simple.

Now I am too tired to work anymore, but I hope later tomorrow I might have something working for a test run. Note that before putting a snapshot for you, I need to test and re-examine my code, which might take some more.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 19, 2022, 08:16:34 PM
I can't stop wondering your skills and kindness.
I'm here first time in a year and you are tryin to fulfill my quite special needs immediately.

So thanks very much!
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 19, 2022, 08:19:51 PM
You are welcome!  :-)

But the constraints you requested are logical and necessary for hopefully more Finnish users.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 20, 2022, 11:15:39 AM
I am getting used 8)  with an idea of making very basic introduction video about basic 5-term planning with FET, in Finnish
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 20, 2022, 11:24:47 AM
Thank you!  :)

Work continues. I'll let you know.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 20, 2022, 05:13:03 PM
I hope it is done. I might re-check the code later and maybe test some more, but seems to work OK for now.

The download link for the test version (for now): https://lalescu.ro/liviu/fet/download/test/

I added the constraints activities min 2 in a term for your file and it solved. I attach the file and the solution.

Please let me know.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 21, 2022, 08:29:02 AM
Been busy until now. Thanks so much.
I'll try it today/tomorrow.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 21, 2022, 08:35:21 AM
No problem! You're welcome!

I might release in a few days, I hope everything will be OK. But I hope I'll get your confirmation that it works as expected before this.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 22, 2022, 09:14:00 AM
Works perfectly!
There were some activities that I had manipulated with 'set of activities has a se f preferred time slots' and I changed those to use these new ones.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 22, 2022, 09:17:36 AM
Sorry to ask for even more, but is it possible / how hard it would be to have
'min activities in a term'
'max activities in a term'

for a teacher?
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 22, 2022, 09:23:40 AM
Btw, this can be done easily enough with constraint 'max activities from a set in a term", so that's not anything very important
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 22, 2022, 01:03:29 PM
Hello,

I just arrived now.

Thank you for the feed-back!

I would prefer not to add more constraints types, to keep things simple. You just need to add for that teacher two constraints, max and min activities from a set in a term (and take care if you modify the activities of that teacher, to update the two constraints).

Isn't it equivalent min and max activities in a term for a teacher with min and max activities from a set in a term (if you add all the activities of that teacher in the constraints)?

I am thinking of releasing the new version later today or Monday afternoon, so please let me know.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 23, 2022, 12:11:26 PM
Yes, You are rigth.
Having as equal terms as possible for a teacher is a common request, that's why I decided to write it down.
It's certainly possible to do it just like you said, only little bit laborious task for 50 teachers and 5 terms
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 23, 2022, 12:26:23 PM
Hmm, if I understood correctly, in my approach you need to add 50x2 constraints, and in your approach either 50x2 constraints, one for each teacher, or 2 universal constraints (if the requirements are the same?) In my approach, you only need to care about the constraints again if you add more activities for a teacher.

I would prefer not to add some more constraints. Anyway, the internal representation would be the same - so nearly the same speed of generation.

I will probably take a short break now, probably answer later.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 23, 2022, 07:29:42 PM
I just released the new version FET-6.5.0, with these two new constraints. Thank you for the suggestions!
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 25, 2022, 05:25:10 AM
Been busy using those new ones, have to download that  8)
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 27, 2022, 05:37:11 AM
Works fine!

I have a problem: I would like all students day end after 3th or 4th hour every day - not after 2nd. What constraints should I use?

Less important: On Tuesdays I'd like all teachers day NOT to have gaps before our meeting on 5th hour (KOKOUS)
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 27, 2022, 05:20:21 PM
Quote from: mikkojoo on May 27, 2022, 05:37:11 AMWorks fine!

Thanks for the feed-back!

QuoteI have a problem: I would like all students day end after 3th or 4th hour every day - not after 2nd. What constraints should I use?

A constraint activities occupy min time slots from selection for each students set, as in the attached file (and solution) which solves in a reasonable time (I think comparable with the original file).

You could add students min 3 hours daily, but this is stronger than the condition you have in mind. It still solves.

QuoteLess important: On Tuesdays I'd like all teachers day NOT to have gaps before our meeting on 5th hour (KOKOUS)

This is too difficult. Maybe you could force each teacher to have activities on the 4th hour each Tuesday.

A customization might be possible, but looks very complicated, difficult, and the timetable might not solve fast.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on May 27, 2022, 05:35:43 PM
I used this all by myself 8)  (proud): [
Quote from: Liviu Lalescu on May 27, 2022, 05:20:21 PMYou could add students min 3 hours daily,

Quote from: Liviu Lalescu on May 27, 2022, 05:20:21 PMThis is too difficult. Maybe you could force each teacher to have activities on the 4th hour each Tuesday.
As I said, this is not important enough.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on May 27, 2022, 05:47:32 PM
Quote from: mikkojoo on May 27, 2022, 05:35:43 PMI uset this all by myself 8)  (proud): [
Quote from: Liviu Lalescu on May 27, 2022, 05:20:21 PMYou could add students min 3 hours daily,

:)

Another idea, instead of my first idea, considering your file's early students constraints, is to constrain each students set to have activities both at 2nd and 3rd slot of each day (modify each of my added constraints, so that min occupied = 50 instead of 25). This might be even more efficient for the generation, but I am not sure.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 03, 2022, 01:52:41 PM
Everything is working quite nice. Thnaks!

I have some problems with too many constrains - there are so many of them that it is impossible to keep all of them. This is my prblem, npt because of FET.

About statistics, it would be nice to see sums of activities in a term:
1. per teacher
2. per group
even 3. per teacher and subject but this could end up being not very easy to read.

Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 03, 2022, 04:52:21 PM
Thank you for the feed-back!

I added your suggestion in the TODO. Unfortunately, I am not skilled in this part - Volker wrote the HTML export of the statistics.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 04, 2022, 11:28:37 AM
Thanks again. One year more done with FET.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 04, 2022, 11:32:08 AM
You're welcome! Could I see your file, please?

PS: In Finland school starts in June? In Romania school ends in June and starts in September.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 04, 2022, 11:54:49 AM
Our schoolyear ends today  8)
Next schoolyear starts at 11th August.

I'm not very proud about my file, all the constraints are a mess. Don't be too hard on my file...
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 04, 2022, 11:57:51 AM
We have to do timetables very early because our transportation crew needs timetables for theis work. This is something we headmasters don't like too much.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 04, 2022, 02:52:21 PM
Wow, what a file! You either had very much patience, or much luck.

I am generating multiple for almost 3 hours on 8 threads (I have 8 core / 16 threads processor) and only obtained a single timetable. I'm going to let it some more, out of curiosity.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 04, 2022, 03:00:58 PM
Just finished posting the above and I obtained two more timetables. In case you would like to choose a better one, I attach the solutions.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 05, 2022, 04:56:15 PM
Patience is my middle name  8)
If You have a working solution, please post it.
I made timetables with two machines at the same time and I changed constraits if I got stucked.

It was always a overnigth job to have a timetable...

I know I did not work the I should have; I made most group and subject constraints first and teachers after that. But, there were mistakes and things I forgot, so I had to make corrections and alternative solutions. And then it was a mess.

But, I got a working  timetable -  certainly not the best but a working one.

There are so many things to consider (after students) about teachers - even terms for most of them, as little as possible gaps for others.
And then there is a special case, with two teachers absent for terms 1-2 (laaann and vahhen) and on teacher (hakesk) teaching "their" activities at thet time. That was quite a adventure.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: Liviu Lalescu on June 05, 2022, 06:30:02 PM
I took your locked file, unlocked and obtained other 3 different solutions. I posted them above, I wonder why you did not see them. Two of them might be better than yours. Just run on the ...data_and_timetable.fet and it will find the timetable instantly. And a positive thing is that if you run these locked files, some activities will find a room and the conflicts will be even lower.

If you want me to run on my computer some of your other attempted files on which you could not obtain a solution, send them to me, and I'll try them on my computer.
Title: Re: FET with five terms / for Finland (Five 7 weeks terms in a school year)
Post by: mikkojoo on June 05, 2022, 06:55:45 PM
Yep, now I can see it!
I'll have a look, thanks.