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 - Nagendra

#31
General Stuff / Re: Core and side lessons
June 15, 2019, 03:29:51 AM
1) Add an activity tag for each activity and then use space constraint "an activity tag has preferred rooms"
2) use the time constraint "Max gaps per week for all teachers" set it to "0". You might want to use this in combination with "Max span per day for all teachers". So that the no of teaching hours for teacher will be almost uniform for all days without any gap
3) Use the time constraint Activities -> set of activities has a preferred starting times and then select "teacher-1", and mark the allowed and not allowed times.


#32
Some subjects might have 200 students, some might have only 5. Suppose, If 5 activities with 200 students each are placed in any time slot, then I may not be able to accommodate them in proper rooms. On the other hand, if 5 activities with 10 students each are placed in any time slot, it is wastage of resources. This is the reason why I wanted to place activities on the basis of total no of unique students (subgroups) giving exam in any time slot.

My idea is once FET gives the timetable (of course with no rooms) then I will run my Matlab code to generate seating plan and allot them in rooms. A sample seating plan of a room is attached (generated from MATLAB). Room capacity is 80. Students from 5 different groups are giving the exam in the same room. (Subject code is mentioned against every roll number)
#33
I think I haven't explained clearly.

For example there are 10 activities. Say 3 FET days, 2 FET hours each day.
A-1 (Activity-1) is attended by 8 students (8 unique subgroups
A-2 by 15
A-3 by 10
A-4 by 5
A-5 by 6
A-6 by 10
A-7 by 9
A-8 by 4
A-9 by 12
A-10 by 11

So, I want to schedule it on such a way that, total no of students on any day any hour (say Day 1 hour 2) remains almost same

So the possibile combination is
Day-1 Hour-1: A1 & A5     : Total students 14
Day-1 Hour-2: A2              : 15
Day-2 Hour-1: A3 & A4     : 15
Day-2 Hour-2: A6 & A8     : 14
Day-3 Hour-1: A7 & A10   : 20
Day-3 Hour-2: A9               : 12

I want FET to choose the best possible combination respecting other constraints  :). If at all possible with any existing constraint.
#34
I came across a peculiar case.

No of FET Days: 10
No of Fet hours per day: 2
No of rooms: 8 (out of 8, I marked 3 rooms unavailable all times). i.e only 5 are available all times

So, the timetable is possible only for 100 activities (10*2*5)

Just to check, I added 105 activities. Surprisingly FET is not saying "not enough room" and it is trying to find a timetable...

An example is attached. At the start of timetable generation itself, it should point out that there is not enough room for 5 (105-10*2*5) activities. The highest timetable contains 100 activities, at least then FET should pop-up an error saying no room for remaining 5 activities.
#35
In the attached sample exam timetable, more events are scheduled in Day-1 as compared to that of Day-2.

1) How do I constrain the activities to be distributed evenly (with some weight) among all the FET days
2) Similarly, how do I constrain the activities to be distributed evenly (with some weight) among all FET hours of any FET day?


even if the above two are not possible, its OK. But the below one is much needed.

3) How do I constrain the number of activities of all FET hours of all days in such a way that the total number of students (unique subgroups) will be equal (with some weight)?
i.e: for example, the number of students giving exam on Day-1 in Slot-1 should be approximately equal to the number of students giving exam on Day-5 in Slot-2.....

PS: Currently I don't have any rooms assigned, I prefer not to assign rooms because four different student groups will be sitting in every room while giving exams.
#36
Report a Bug / Re: Potential bug
June 14, 2019, 12:54:33 PM
Quote from: Liviu Lalescu on June 14, 2019, 12:31:28 PM
I am afraid I do not understand completely. Do you mean generate automatically the code with Matlab?

No, I am talking about the highlighted option in the attachment.

I generated all constraints with 100% weight. I needed to change it step by step (100, 95, 90......) for all constraints to get a possible timetable. Changing the weight manually is completely ruled out. So the option hanging at the bottom saved me. Thanks for including such wonderful options.
#37
Report a Bug / Re: Potential bug
June 14, 2019, 12:26:22 PM
Done!

Modify set of constraints at one go has helped a lot in changing the weight %age and test run timetable

The only pending thing in exam scheduling is "Don't print empty days". I think Volker might do something regarding that.
#38
Report a Bug / Re: Potential bug
June 14, 2019, 10:49:06 AM
Yes. For exam....I could add students max hours daily for all students without any problem.

however, I wanted to have exams for every student on alternate days (to the extent possible i.e. may be with weight 75%).

So, "min days between a set of activities" for every student is what I needed. Isn't it possible to add "show related" checkbox there? Like you have it in activity dialog...

If it is very simple and doesn't take more than 10 minutes of your time, then I request you to add "show related" checkbox there (and any other similar type of constraints).

Anyhow, I will spend 10-15 mins time and write a MATLAB code to constrain the activities of each student. Becuase in actual case there may be 5000 students and I will not be able to add manually (even though the chheckbox feature is introduced)
#39
Report a Bug / Potential bug
June 14, 2019, 08:28:04 AM
In my timetable individual roll numbers are subgroups. I added activities to FET student groups. I want to use activities->min days between set of activities. I want to implement this constraint for every student. But, as the subgroups are individual roll numbers, when I select the subgroup from filter, no activities are shown. How do I constrain, if no activities are listed?
#40
General Stuff / Re: Core and side lessons
June 14, 2019, 03:17:29 AM
If you have so many combinations, then I fear, you may have to choose each student roll number as a subgroup.

Then:

Year: Year C

Year C is divided into 7 groups
Groups: M-C1, M-C2, G-C1, G-C2, C-C1, C-C2, P-C1 (Here the first letter represents the subject you mentioned)

Each group is divided into subgroups as given below.

Subgroups:
M-C1: S1,S2,S3,S4,S5
M-C2: S6,S7,S8,S9,s10
G-C1: S1,S2,S6,S9,S11
G-C2: S12,S13,S14,S15
C-C1: S1,S2,S6,S14
C-C2: S4,S7,S16,S17.
P-C1:S3,S5,S8,S9.

For example, check latest FET snapshot 5.38.0 : examples-> India-> Kurukshetra-> Institute of Technology -> MED_2019-20-1.Fet
I too had a similar requirement, then I decided to have individual roll numbers as subgroups and finally came-up with above example. Check the years, B.Tech 3rd Year or B.Tech 4th Year, they have electives (side lessons)

If I have to draw a correlation between your and my student set

Year: B.Tech 3rd Year -> Year C

Groups:
5ME 1-4 -> C1   (This I used for compulsory lectures Group-1)
5ME 5-8 -> C2   (This I used for compulsory lectures Group-2)
5ME MEPE16 -> G-C1
5ME MEPE17 -> G-C2
5ME MEPE18 -> C-C1
5ME MEPE20 -> C-C2
.
.
.
.


Subgroups:
Replace the roll numbers with S1, S2..... as per the requirement

What I don't understand is which one is your core (compulsory) subject and which one is your elective (side) subjects.

Let me know if you need any further help in understanding this example.

PS: Don't be afraid of adding so many subgroups. I have a MATLAB program written exclusively for generating student sets for this type of combinations.
#41
Get Help / Re: FET for exam scheduling
June 14, 2019, 02:27:33 AM
Quote from: Volker Dirr on June 13, 2019, 08:36:46 PM
1) i found it. i didn't read carefully. please check if that is what you need: https://lalescu.ro/liviu/fet/forum/index.php?topic=220.0

No. I want the timetable of a subgroup (a single student) to look like Attachment-1 rather than as Attachment-2 (which is currently the case)

So, I need something like, "Don't print empty day of a week" for student subgroups
#42
Get Help / Re: FET for exam scheduling
June 14, 2019, 02:17:58 AM
Quote from: Volker Dirr on June 13, 2019, 08:34:25 PM
2) you mean for the teacher, not for the student? yes, change the weight. i think/fear/... you should do it for each teacher separated.
I want it for students. Some students will be giving 6 exams (maximum 1 hour daily works here). Whereas some might be giving 15 exams (maximum one hour daily doesn't work).

So, I am thinking of using maximum one hour for all students daily with 99% weight. (I think it should work?)

Quote
4) add one min day constraint for each student. it must constrain all activities of the student.

Here comes the problem, in my timetable individual roll numbers are subgroups. I added activities to FET student groups. I want to use activities->min days between set of activities. So, I should select all the activities of a student set by filtering them. But, the subgroups are individual roll numbers (approximately 5000: not a problem I can write a MATLAB code for that), when I select the subgroup from filter, no activities are shown. How do I constrain, if no activities are listed?
#43
Get Help / FET for exam scheduling
June 13, 2019, 07:48:03 PM
I am thinking of preparing an exam schedule using FET

Data------
1) 12 days per week and 2 FET hours per day
2) FET Group Names are real-life subject names
3) FET Subgroups are real-life individual student roll numbers
4) FET subjects are real-life subject names
5) Created activities by selecting a FET group and FET subject (In fact names of both FET group and FET subject are same :P)

Constraint added-----
1) Students maximum hours daily one {this is just temporary and I need to remove this constraint and replace it with a better one as expressed in point 2 below}

Now coming to my doubts/questions
1) How do I disable printing (html) empty days in student timetables? i.e. in the attached example, I don't want to see Day 3, 5, 6, 7, 9, 11 & 12 for that particular student. This is to make timetable look decent.

2) Some times it is not possible to use the 'maximum hours daily -1' constraint. So, How do I ensure that the timetabler tries to place 'maximum one-hour in a day for all possible cases and 2 hours for impossible ones?....I think by changing the weight, this should be taken care of

3) As the Subject names and FET Group Names are same, it is not looking good to see the same name repeating in every box. How do I restrict Subject names from printing?....I think one option is by changing the css.

4) How do I ensure that there will be maximum possible gap (for preparation/revision) between two exams (activities) for a student?. What constraint I should use. I prefer alternate day exams for any student (to the extent possible)
#44
In our country, India, I don't know if such compulsion is there for schools. However, our's is a technical university which is autonomous.

I just asked it for information purpose and to check options/features.
#45
Get Help / Re: combine break (Lunch) time with gaps
June 13, 2019, 02:31:09 PM
Quote from: Liviu Lalescu on June 13, 2019, 02:13:47 PM
I think Volker wrote the statistics for gaps of students, see the HTML results.
Yeah...In HTML it is...But in .csv it is not there.

Quote from: Liviu Lalescu on June 13, 2019, 02:13:47 PM
Yes, for each subgroup  :-[
Hmm, I can write a MATLAB code to create them (subjected to the availability of .csv of statistics). But I don't think it is feasible to have 1000's of addition activities just to avoid gaps.

I am leaving it as it is.....However, I impose the minimum gaps per week constraint on each year individually, instead of "all students". This way atleast I can reduce the gaps for some years.  :D

But, if there can be a way to add a constraint "minimum gaps between a 'GAP' and activity tag", it will solve my purpose. But, it doesn't make sense at all.  ;D