Some ideas to integrate custom Ver. into official

Started by Chafik Graiguer, March 15, 2010, 05:01:54 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Chafik Graiguer

Hello
I was encouraged by this announcement:
QuoteI have released a new snapshot for future version 5.13.0.

Changes/new features:
1) for constraints students (set) min hours daily is now possible to allow empty days (in advanced usage).
This is a further step toward the possibility of achieving Moroccan schools needs by Official FET version
To suggest the followings
- How it is easy/possible to add this constraint for teachers:
Can work two consecutive days X times per week
if X=0 this means teacher has a free day afetr every working day
This may be usefull for part time teachers who need to work in other schools
if X=1 this means there will be at most two consecutive workings days ...etc
To avoid any confusion, a settings may be included into advanced menu to enable disable this feature

Now, how this will be useful to Moroccan schools?
We may define 17 days like this
Day 1 (monday morning)
Day 2 (monday afternoon)
Day 3 Fake day
Day 4  (Tuesday  morning)
day 5  (Tuesday  afternoon)
Day 6 Fake day
Day 7 (Wednesday morning)
Day 8 (Wednesday afternoon)
Day 9 Fake day
Day 10  (Thursday  morning)
day 11  (Thursday  afternoon)
Day 12 Fake day
..etc


We will set All Fake days as Break times (al teachers + all students not available)

So with X=0
a teacher can have working days: Day 1+ Day (4 or 5 )+ Day (7 or 8) ..etc
but never Day 1 + Day 2 or Day 3 + Day 4 ..etc

For Exception teachers wishing to work morning and afternoon two times per week, we will set X=2

So again, I dont know, how it is possible to implement new constraint: can/cants work two consecutive days?

Liviu Lalescu

It is much more complicated to add your idea than the simpler approach using day1=morning and day2=afternoon and only having exceptions.

Also, you didn't think of the min days between activities and teachers max days per week which need to be considered for Moroccan schools.

Chafik Graiguer


Chafik Graiguer

#3
Well I thought about carefully
The idea is to find a way to make official FET usable for moroccan school by adding a constraint so we can benefit form official updates without need for editing source code and compiling every time
QuoteIt is much more complicated to add your idea than the simpler approach using day1=morning and day2=afternoon and only having exceptions.
Yes! moroccan users continue to use  day1=morning and day2=afternoon
But they will add another fake day after every odd day 2, 4, 6, 8...
day1 - day2 -fake day- day3 - day4 - fake day..etc
if consecutive two days is not allowed, so FET will fill say day1 and day3 (because they are not consecutive due to the fake day!!) but never day1 and day2 or day3 and day4 because they are consecutive

Now
Quote
Also, you didn't think of the min days between activities and teachers max days per week which need to be considered for Moroccan schools.
How this would affect Max days per week for teachers ?
I dont think it will affect them: for example, there is no way, it could  harm  a teacher with  Max 3 days per week
Yes, for students, we may need Min days between activities
But again, min days should be greater or equal to 2
For example, Subject Math for Student set 1A_1:
Day1 --- Day2 --fake day - Day3 - Day4
Math --- 0000 - 0000 ----- Math - 0000

Again, this is dependant on a constraint for teachers like this: can work two consecutive days X times per week
Such a constraint will also solve the exception teachers problem as well by allowing  them to work two consecutive days 1 or 2 times per week

Volker Dirr

what about the printed html timestables? will it not look to strange if you do it that way?

Volker Dirr

QuoteAgain, this is dependant on a constraint for teachers like this: can work two consecutive days X times per week
isn't that just possible with the min n day constraint of the activities? (of course only if you use 100%, but like you maybe know, i always use only 100% weights.)

Liviu Lalescu

Yes, alfaromeo, it is a good suggestion.

Problems:

1) Users will probably not know how to add the half days and the fake days.

2) It is more difficult to add the constraint you suggest with >2 days exceptions. Probably I can make that value to be only 0, 1 or 2.

3) How to name the constraint? It is very weird.

Chafik Graiguer

#7
Hi Volker
Quotewhat about the printed html timestables? will it not look to strange if you do it that way?
This is not a problem
Since I export finisher timetable to CSV format
Then import it with Microsoft Excel, then run some macros to get rid of fake days, and Joining morning and afternoon days to show One real day
Quote
QuoteAgain, this is dependant on a constraint for teachers like this: can work two consecutive days X times per week
isn't that just possible with the min n day constraint of the activities? (of course only if you use 100%, but like you maybe know, i always use only 100% weights.)
I dont think so
I will explain: here in Morocco, teacher can work either morning or afternoon, bot both
So, Liviu made a custom version, where user enter 12 days
Each day is in reality a morning or an afternoon !!!
Now, we need to ensure that teacher doesnot work two consecutive days, which mean morning + afternoon (same day)
Hope you get it  :-?  ::)

Volker Dirr

Quote
I will explain: here in Morocco, teacher can work either morning or afternoon, bot both
So, Liviu made a custom version, where user enter 12 days
Each day is in reality a morning or an afternoon !!!
Now, we need to ensure that teacher doesnot work two consecutive days, which mean morning + afternoon (same day)
Hope you get it  :-?

Yes, i know. Maybe i was a bit to short:
I mean why don't you add an pseudo activity to every teacher that is splitted into as many parts as a week days has (so 5 or 6) or less if you want. Duration of the activities is as big as number of hours per day. use min n day = 2 and 100% weight. so use this pseudo activityis to get a free half day.

Chafik Graiguer

#9
QuoteYes, alfaromeo, it is a good suggestion.
I think non morrocan users also may find it usefull
Sometimes, half-time teachers  may wish to a have a free day every every working day, in order to work for other schools

Quote
Problems:

1) Users will probably not know how to add the half days and the fake days.
Yes,
Because of that, an additional chapter  to the user's guide is needed
I am ready to write one with some screen shots
QuoteYes, alfaromeo, it is a good suggestion.

Problems:
2) It is more difficult to add the constraint you suggest with >2 days exceptions. Probably I can make that value to be only 0, 1 or 2
Fortunately, we dont need more than 2 !!
2 is enough !!


Quote
Problems:
3) How to name the constraint? It is very weird.
Well, The name isnot a big problem
If it is possible to implement such constraint, I will think about a name !!

Liviu Lalescu

Quote
Quote
I will explain: here in Morocco, teacher can work either morning or afternoon, bot both
So, Liviu made a custom version, where user enter 12 days
Each day is in reality a morning or an afternoon !!!
Now, we need to ensure that teacher doesnot work two consecutive days, which mean morning + afternoon (same day)
Hope you get it  :-?

Yes, i know. Maybe i was a bit to short:
I mean why don't you add an pseudo activity to every teacher that is splitted into as many parts as a week days has (so 5 or 6) or less if you want. Duration of the activities is as big as number of hours per day. use min n day = 2 and 100% weight. so use this pseudo activityis to get a free half day.

A brilliant trick? It seems to me it is correct (but I am tired now).

Volker Dirr

QuoteA brilliant trick?

i hope so, but maybe i forget one of his requirements.

even if he might get a problem because of a free needed day, but unsing my trick only less then days per week. he can solve that just by adding an pseudo activity to one of the splitted subactivities with a max days between constraint == 1.

also if moring and eving has different number of periods it is no problem. just don't use break to lock that periods. do only students not available. so the teachers pseudo activity still fit into the day.

let us know more alpharomeo.

Chafik Graiguer

#12
Quote
A brilliant trick? It seems to me it is correct (but I am tired now).
Yes ! it is a brilliant idea!
Now, we can use official FET with 12 dyas (6 real days)
One question: is it usable with or without fake days?
Another problem: FET will have limited possiblities to place activities
Because if teacher T1 has lessons on day 1 (monday morning), it means possible workings days are only day1, day3, day5 ..etc:
-day 1 YES
- day 2 No, because Big pseudo activity
- day 3 YES
- day 4 No, Big pseudo activity
day 5 YES

if teacher T2 has lessons on day 2 (monday afternoon), he will have lessons only on days:day 2, day 4, day 6..etc

So each teacher will have to work either odd or even days

here is pseudo days we used to use in FET right now:
Monday  ---  Tuesday  ---  Wednesday  --- Tuesday  ---  Friday  --- Saturday
day1-day2 - day3-day4 - day5-day6 -  day7-day8 -  day9-day10 -   day11-day12-

Volker Dirr

Quote
One question: is it usable with or without fake days?

i descriped with fake day.

Quote
Another problem: FET will have limited possiblities to place activities
Because if teacher T1 has lessons on day 1 (monday morning), it means possible workings days are only day1, day3, day5 ..etc:
-day 1 YES
- day 2 No, because Big pseudo activity
- day 3 YES
- day 4 No, Big pseudo activity
day 5 YES

if teacher T2 has lessons on day 2 (monday afternoon), he will have lessons only on days:day 2, day 4, day 6..etc

So each teacher will have to work either odd or even days

i am not sure if i understood correct. do you want this or do you think this is a problem in my solution?

if you use fake days, then you don't have this problems.


if you want that, then you don't need to use fake days, but you maybe also need to add a max day=2 constraint at the same time. i am not sure. i am tired now. i will check/think tomorrow more.

Chafik Graiguer

#14
Quote

i descriped with fake day.

....
if you use fake days, then you don't have this problems.
That is right !!

Quote
i am not sure if i understood correct. do you want this or do you think this is a problem in my solution?
It is not a big problem
But:
1- IT will reduce possibilities for FET as described above
2- It is not a good timetable for a teacher to work only odd days (mornings) or only even days (afternoons)
it should be a little bit balanced !!

In bref: Your idea is brilliant ! if used in conjunction with fake days
I will think about it more carefully