270 likes | 394 Views
UKCI2005 – London, UK. Fuzzy Multiple Heuristic Ordering for Course Timetabling. Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi. Automated Scheduling, optimisAtion and Planning (ASAP) Group,
E N D
UKCI2005 – London, UK Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi Automated Scheduling, optimisAtion and Planning (ASAP) Group, School of Computer Science and IT University of Nottingham Jubilee Campus, Wollaton Road Nottingham, NG8 1BB, UK
Outline • Introduction to Timetabling Problem • Graph Based Heuristic Ordering • Sequential Construction Algorithm • Fuzzy Modeling • Experimental Results • Problem Definitions • Results • Conclusions and Future Work
Course Timetabling Problem Time slot 1 Time slot 2 Assign the set of events to time slots, subjects to specified constraints Which event should be scheduled first ? • randomly • based on how difficult to schedule the event
Graph Based Heuristic Ordering C2 C1 C2 C1 C3 C4 C3 C4 Heuristic use to measure event difficulties to be scheduled: Largest Degree (LD) First The degree of an event is simply a count of the number of other events which conflict in the sense that students are enrolled in both events. This heuristic orders events in terms of those with the highest degree first
Graph Based Heuristic Ordering C2 C1 C2 C1 C3 C4 C3 C4 Heuristic use to measure event difficulties to be scheduled: Weighted Largest Degree (WLD) First This heuristic also based on LD. Beside the number of events in conflict, the total number of students involved in the conflict are taken into account as well.
Graph Based Heuristic Ordering C2 C1 C2 C1 C3 C4 C3 C4 Heuristic use to measure event difficulties to be scheduled: Largest Coloured Degree (LCD) First This heuristic is based on LD. For this heuristic, only events which already assigned to the schedule are considered as the events which will cause conflict.
Graph Based Heuristic Ordering C2 C1 C2 C1 C3 C4 C3 C4 Heuristic use to measure event difficulties to be scheduled: Largest Enrollment (LE) First The number of students enrolled for each event is used to order the events (the highest number of student first).
Graph Based Heuristic Ordering C2 C1 C2 C1 C3 C4 C3 C4 Heuristic use to measure event difficulties to be scheduled: Least Saturation Degree (SD) First The number of time slots available is used to order the events. The basic motivation is that events with less time slots available are more likely to be difficult to be scheduled. The fewer time slots that are available, the higher up the ordering is the event.
Fuzzy Modeling Choose heuristics combination from heuristic list – SD, LD, LE, wLD and LCD Generate fuzzy rules that related to heuristics chosen. Define fuzzy membership functions for each heuristic General Framework Sequential Constructive Algorithm Non-fuzzy single heuristic ordering Problem Definitions Calculate events difficulty to be scheduled Constructive Initial Solution Ordered events with decreasingly difficulty Iterative improvement Assign event to timeslot Anymore events? ‘Optimal’ Solution Reorder events No Yes
Rescheduling scheduled events Insert event ex 1 2 3 4 . . . P move event to other timeslot List of events that conflict with ex Bump back event Unscheduled events
Fuzzy Multiple Heuristic Ordering Sequential Constructive Algorithm Fuzzy Modeling Choose heuristics combination from heuristic list – SD, LD, LE, wLD and LCD Non-fuzzy Single Heuristic Ordering Generate fuzzy rules that related to heuristics chosen. Define fuzzy membership functions for each heuristic Problem Definitions Calculate events difficulty to be scheduled Constructive Initial Solution Ordered events with decreasingly difficulty Iterative improvement Assign event to timeslot Yes No Anymore events? ‘Optimal’ Solution Reorder events
Fuzzy Model – Fixed Fuzzy Rules S - Small M - Medium H – High VS – Very Small VH – Very High If LD is High and SD is Small and LE is High then examweight is Very High
Fuzzy Model - Membership Function TUNING !
Problem Definition (2) • Task - • Assign courses to time slots that must satisfy the following hard constraints : • No student is required to attend more than one course at the same time • A course can only be scheduled to a room which satisfies the features required by the course • A course can only be scheduled to a room which has enough room to accommodate all students registered for it • Only one course can be scheduled in one room at any time slot
Problem Definition (3) • No student should be scheduled to attend only one course on a day • No course should be scheduled at the last time slot of the day for any student • No student should be scheduled to attend more than two courses consecutively in any one day • Objective - • Minimise violation of the following soft constraints :
Experimental Results : Comparison of solution quality - : infeasible solution
Experimental Results : Comparison of number of “rescheduling procedures” * : maximum number of “rescheduling procedures” allowed
Conclusions • Better solutions can be produced when events are ordered by several heuristic ordering simultaneously • Tuning the fuzzy model can improve the performance • No generic fuzzy model that suits all the datasets
Future Work • investigating other combinations of heuristic ordering • investigating different sets of fuzzy rules and fuzzy membership functions • exploring the use of more sophisticated optimization algorithms to search for optimal fuzzy model
Thank You UKCI2005 – London, UK Fuzzy Multiple Heuristic Ordering for Course Timetabling
Linear Weighting W(ej) = wdLDj + weLEj + wsSDj where j = 1,2, . . . N; wd= we = ws= {0.0, 0.1, …, 1.0} if N <= 400; or wd= we= ws= {0.0, 0.25, 0.5, 0.75, 1.0} if N > 400; and wd, we, ws are weighting factors for LD, LE and SD respectively.
Heuristic Ordering : single vs multiple Heuristic ordering use to measure the difficulty to schedule an event: • largest degree (LD) - number of other events in conflict • Largest enrolment (LE) - number of students enrolled • Saturation degree (SD) - number of clash free timeslots available ordered by LE ordered by LD unordered ordered by weight
Fuzzy Inference Rule 1 If LD is medium AND LE is high then weight is high medium high high w1 weight LD LE Rule 2 If LD is small AND LE is medium then weight is medium fast small medium w2 weight LD LE T-norm C’ Crisp value weight LD is 7 LD LE z is zCOA LE is 35 • Graphics representation:
Best Membership Functions CAR-F-92 CAR-S-91 HEC-S-92
Best Membership Functions (continue) STA-F-83 UTA-S-92 YOR-F-83