Main Menu
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 - nouvakis

#1
Quote from: Liviu Lalescu on October 04, 2015, 05:59:26 PM
I suggest you a better approach: click Clear, then select the filter for that teacher, then click All :)

this is not the problem. On the "Time slots" Tab, I have to write the "max occupied time slots" - it depends on the number of the activities. Doesn't it ?
#2
Quote from: Liviu Lalescu on October 04, 2015, 05:45:29 PM
Quote from: nouvakis on October 02, 2015, 10:11:35 PM
It would be very useful if you print the count of selected Activities !

Sorry, I do not understand. Where? And why?

At the right box we have the selected activities. If I select all the actvities of a teacher I have to count by hand. It would be useful if you print the list.count somewhere :)
#3
Suggestions / Set of Activities occupy max time slots
October 02, 2015, 10:11:35 PM
It would be very useful if you print the count of selected Activities !
#4
Suggestions / Re: min hours per day, max hours per day
October 09, 2014, 04:29:47 PM
Quote from: Liviu Lalescu on October 08, 2014, 05:29:48 PM
I will keep thinking of this idea, and is something comes up I will let you know.

Thanks for your efforts
#5
Suggestions / Re: min hours per day, max hours per day
October 04, 2014, 07:47:11 PM
Quote from: Liviu Lalescu on October 04, 2014, 06:50:28 PM
I agree with the above, but not on 4). It is more complicated. You need to not abandon search so easily if things are not the way you want.

Firstly, I think you should consider also max gaps per day/week, like I do. Also, there are two phases. In the first phase you do a preliminary test, and if it is OK you exit with success. In the second phase you compute the exact current timetable and only exit without success if you cannot remove any useful activity anymore. I think you can see this two phase approach in the (majority of?) teachers' and students' constraints.
I am sure that you are right about this. I am not sure if I realised exactly all of your variables (and all lines of code).

Quote from: Liviu Lalescu
Are you sure this is an important constraint?
As I mentioned at previous messages it will result to more balanced days for teachers.

Quote from: Liviu Lalescu
I don't know if I can add it to the official. I am afraid not to mess things up, making a critical mistake.
I hope ...

Quote from: Liviu Lalescu
Later edit: in your files, you forgot to modify the fitness and get(Detailed)Description in timeconstraint.cpp.
I saw it aftewards (the Description part).
I have no idea about the fitness part !

Quote from: Liviu Lalescu
Also, this max occurs should have only weight 100%?
In my case yes.

Quote from: Liviu Lalescu
Also, in modifyconstraintteachermaxhoursdailyform.cpp, line 48 is wrong.
I changed this line
maxOccursSpinBox->setValue(1);

I am thinking that
a. value -1 should ignore the setting
b. when value of max occurance is equal to nDaysPerWeek the setting should also be ignored
#6
Suggestions / Re: min hours per day, max hours per day
October 04, 2014, 04:56:05 PM
I think that I managed to "inject" the right source code to manage this constraint (at least the teacher's max hours per day occurance).
Maybe the code is not optimal, but it seems to work.

1) modify forms Teacher Max hours per day as below


2) defines in generate_pre.cpp
int teachersMaxOccursDailyMaxHours1[MAX_TEACHERS];
int teachersMaxOccursDailyMaxHours2[MAX_TEACHERS];

3) init code in same file (function computeTeachersMaxHoursDaily) line 1906
teachersMaxOccursDailyMaxHours1=-1;
teachersMaxOccursDailyMaxHours2=-1;

line 1940 (and similar)

if (teachersMaxHoursDailyMaxHours1[tmd->teacher_ID]==-1 ||
   (teachersMaxHoursDailyMaxHours1[tmd->teacher_ID] >= tmd->maxHoursDaily &&
          teachersMaxHoursDailyPercentages1[tmd->teacher_ID] <= tmd->weightPercentage))
{
    teachersMaxHoursDailyMaxHours1[tmd->teacher_ID] = tmd->maxHoursDaily;
         if (tmd->maxOccur>0)
                    teachersMaxOccursDailyMaxHours1[tmd->teacher_ID] = tmd->maxOccur;  // nouvakis
    teachersMaxHoursDailyPercentages1[tmd->teacher_ID] = tmd->weightPercentage;
}

4) generate.cpp line 7536 (this one could be better ... maybe by using an array ?)
if (limitHoursDaily>=0 && limitMaxOccurs>0 && increased)
{
                    int count_max_occurs;
                    count_max_occurs = 0;
                    for (int tmp_d=0; tmp_d < gt.rules.nDaysPerWeek; tmp_d++)
                        if (newTeachersDayNHours(tch, tmp_d)>=limitHoursDaily)
                        {
                            count_max_occurs++;
                            if (count_max_occurs>limitMaxOccurs)
                            {
                                okteachersmaxhoursdaily=false;
                                goto impossibleteachersmaxhoursdaily;
                            }
                        }
}

I will send the files by email
#7
Suggestions / Re: Ongoing timetable changes
February 08, 2014, 03:03:32 PM
Quote from: Volker Dirr on February 08, 2014, 01:35:51 PM
Quote from: nouvakis on February 07, 2014, 05:57:20 PM
1. Can you point these strings ?

For example the attached one.

thanks again. I am fixing it now !
#8
Suggestions / force activities consecutive
February 08, 2014, 10:37:00 AM
The Min Days between activities constraint has a weight percentage which I set to 95%.

I think that there should be another weight percentage for the option "if activities in same day, force activities consecutive" (when checked) because you handle it as a 100%.

If this is possible, then the word force should be replaced by something else.
#9
Suggestions / Re: Ongoing timetable changes
February 07, 2014, 05:57:48 PM
Quote from: Liviu Lalescu on February 03, 2014, 04:39:13 PM
I added a link in the Tools/Links, please let me know if it is OK or if you want something improved.

thanks !
#10
Suggestions / Re: Ongoing timetable changes
February 07, 2014, 05:57:20 PM
Quote from: Volker Dirr on February 03, 2014, 02:52:40 PM
Hallo Nouvakis,

ahh... I misunderstood your program until today. It's totally different from my TiTiTo software.
Looks like your tool is (more like) a manual scheduling system. It will be helpful to guys that want to do (small) changes at a calculated timetable.
So for example guys that didn't use 100% weight for scheduling can use it. (But i still recommend to use only 100% weight.)

In my opinion 2 things are missing:
1. Some strings are not translated into English language.
2. It should care/warn at least if a basic constraint is broken.

1. Can you point these strings ?
2. I will add as much as I can !!!

thanks !
#11
Suggestions / Re: Ongoing timetable changes
February 03, 2014, 03:40:18 PM
Quote from: Liviu Lalescu on February 03, 2014, 02:46:23 PM
This is nice to hear! Thank you!

So, this is freeware (not GNU GPL)?

Should I place a link in the Tools/Links section of FET? Please let me know the description and the URL. (but I will add it in another section, in the non GNU GPL part.)

I've created a blog for this program
http://fet-read.blogspot.gr/
#12
Suggestions / Re: Ongoing timetable changes
February 02, 2014, 11:12:33 PM
well, this is my GUI for .fet files.

The FET_READ is able to
a) read the complete solution (data_and_timetable.fet) or
b) read data.fet and activities.xml (incomplete solution)
c) Right click on cells allows to put/remove activities (if is possible), lock/unlock activities, clear day or days
d) Ctrl-Click on cells set/unset teacher available days

finally you are able to
1. save the new fet file (old name plus date, so the original file is retained)
2. export to excel file (not very fancy since I have not a good freeware export library)

It is all yours, free for anybody !

PS: inside the zip file there are two files (FET_READ.exe and template1.xls)

download from http://tiny.cc/a1foax



#13
Suggestions / Re: min hours per day, max hours per day
December 14, 2013, 06:19:49 AM
Quote from: Silver on October 21, 2013, 08:07:10 PM
- if the problem in 1 teacher timetable you can used "teacher avelible" - the first time constraint.

- you can used "max hours for teacher" :
max hours = 4
recommended = 95 %
= 5 - 4 - 4 - 4 - 4

This one could produce (min=3 100%, max=4 95%)
6, 6, 3, 3, 3

not acceptable !
#14
Suggestions / Re: min hours per day, max hours per day
October 19, 2013, 08:31:55 AM
QuoteIt is also a bit weird constraint.
5+5+4+4+3 is more balanced than 5+5+5+3+3.

QuoteBut I suggest you a trick: add another duration 1 activity to this teacher, and make min hours daily = 4. (but be careful, this new activity might add a gap, so you may need to reconsider gaps constraints.)
I would like to try your trick, but I don't understand it. I should add another activity duration 1 without students? Is that correct?
#15
Suggestions / min hours per day, max hours per day
October 18, 2013, 09:39:47 PM
I use these constraints but there is a problem.
If I set
min_hours = 3 and
max hours = 5
and a teacher should work 21 hours per week we could have combination: 5 + 5 + 5 + 3 + 3
but a better one should be: 5 + 5 + 4 + 4 + 3

So, I recommend a new constraint like "frequency of max hours per day"
For my example this new parameter would be 2 (5+5)