Upload
emma-jordan
View
213
Download
0
Tags:
Embed Size (px)
Citation preview
1
Fuzzy Multiple Heuristic Ordering for Course Timetabling
Fuzzy Multiple Heuristic Ordering for Course Timetabling
Hishammuddin Asmuni
Edmund K. BurkeJonathan M. Garibaldi
UKCI2005 – London, UK
Automated Scheduling, optimisAtion and Planning (ASAP) Group, School of Computer Science and IT
University of Nottingham Jubilee Campus, Wollaton Road
Nottingham, NG8 1BB, UK
2
OutlineOutline
• Introduction to Timetabling Problem
• Graph Based Heuristic Ordering
• Sequential Construction Algorithm
• Fuzzy Modeling
• Experimental Results• Problem Definitions
• Results
• Conclusions and Future Work
3
Course Timetabling ProblemCourse Timetabling Problem
Monday Tuesday Wednesday Thursday Friday
S1 C1
S2 C2
S3 C3
S4 C4
S5 C5
. .
. .
. .
.CN
ST
Time slot 1
Time slot 2
C1 C2 C3 C4
C1 S1 S1S3 S3
C2 S1 S1S4 S4
C3 S1S3 S1S4 S3S4
C4 S3 S4 S3S4
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
4
Graph Based Heuristic OrderingGraph Based Heuristic Ordering
C1 C2 C3 C4
C1 9 5
C2 7
C3 9 3
C4 5 7 3 C4
C1
C3
C2
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
Heuristic use to measure event difficulties to be scheduled:
C4
C1
C3
C2
5
Graph Based Heuristic OrderingGraph Based Heuristic Ordering
C1 C2 C3 C4
C1 9 5
C2 7
C3 9 3
C4 5 7 3 C4
C1
C3
C2
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.
C4
C1
C3
C2
6
Graph Based Heuristic OrderingGraph Based Heuristic Ordering
C1 C2 C3 C4
C1 9 5
C2 7
C3 9 3
C4 5 7 3 C4
C1
C3
C2
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.
C4
C1
C3
C2
7
Graph Based Heuristic OrderingGraph Based Heuristic Ordering
C1 C2 C3 C4
C1 9 5
C2 7
C3 9 3
C4 5 7 3 C4
C1
C3
C2
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).
C4
C1
C3
C2
8
Graph Based Heuristic OrderingGraph Based Heuristic Ordering
C1 C2 C3 C4
C1 9 5
C2 7
C3 9 3
C4 5 7 3 C4
C1
C3
C2
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.
C4
C1
C3
C2
9
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
Sequential Constructive Algorithm
Calculate events difficulty to be scheduled
Problem Definitions
Constructive Initial Solution
Iterative improvement
‘Optimal’ Solution
Assign event to timeslot
Anymore events?
Reorder events
Ordered events with decreasingly difficulty
Yes No
General Framework
Non-fuzzy single heuristic ordering
10
Rescheduling scheduled eventsRescheduling scheduled events
1 2 3 4 . . . P
Unscheduled events
Insert event ex
List of events that conflict with exBump back event
move event to other timeslot
11
Sequential Constructive Algorithm 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
Calculate events difficulty to be scheduled
Problem Definitions
Constructive Initial Solution
Iterative improvement
‘Optimal’ Solution
Assign event to timeslot
Anymore events?
Reorder events
Ordered events with decreasingly difficulty
Yes No
Fuzzy Multiple Heuristic Ordering
Non-fuzzy Single Heuristic Ordering
12
Fuzzy Model – Fixed Fuzzy RulesFuzzy Model – Fixed Fuzzy Rules
LE LD
S M H
SD SD SD
S M H S M H S M H
S S VS VS S S VS M S S
M S S VS H M M H M M
H H S S H M M VH H M
S - SmallM - MediumH – HighVS – Very SmallVH – Very High
If LD is High and SD is Small and LE is High then examweight is Very High
13
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high
cp
Fuzzy Model - Membership Function
Fuzzy Model - Membership Function
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium high
cp
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium
cp
0
0.5
1
0 1
small medium high
cp
TUNING !
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high
cp
14
Problem Definition (1) : Data setProblem Definition (1) : Data set
DatasetNo of
courses
No of Students
No of rooms
Small1 100 80 5
Small2 100 80 5
Small3 100 80 5
Small4 100 80 5
Small5 100 80 5
Medium1 400 200 10
Medium2 400 200 10
Medium3 400 200 10
Medium4 400 200 10
Medium5 400 200 10
Large 400 400 10
15
Problem Definition (2)Problem Definition (2)
1. No student is required to attend more than one course at the same time
2. A course can only be scheduled to a room which satisfies the features required by the course
3. A course can only be scheduled to a room which has enough room to accommodate all students registered for it
4. Only one course can be scheduled in one room at any time slot
Task -
Assign courses to time slots that must satisfy the following hard constraints :
16
Problem Definition (3)Problem Definition (3)
1. No student should be scheduled to attend only one course on a day
2. No course should be scheduled at the last time slot of the day for any student
3. No student should be scheduled to attend more than two courses consecutively in any one day
Objective -
Minimise violation of the following soft constraints :
17 Experimental Results : Comparison of solution quality
Experimental Results : Comparison of solution quality
Single Heuristic Ordering
Dataset Best Fuzzy LD SD LCD LE WLD
Small1 10 78 31 48 79 80
Small2 9 45 44 55 34 52
Small3 7 28 30 42 41 27
Small4 17 42 50 48 51 48
Small5 7 41 29 74 43 47
Medium1 243 423 345 433 465 445
Medium2 325 - 398 - - -
Medium3 249 - 298 - - -
Medium4 285 - 403 - - -
Medium5 132 296 252 307 399 445
Large 1138 - - - - -
- : infeasible solution
18
Experimental Results : Comparison of number of “rescheduling procedures”Experimental Results : Comparison of number of “rescheduling procedures”
Single Heuristic Ordering
Dataset Best Fuzzy LD SD LCD LE WLD
Small1 0 0 0 0 0 0
Small2 0 0 0 0 0 0
Small3 0 0 0 0 0 0
Small4 0 0 0 0 0 0
Small5 0 0 0 0 0 0
Medium1 0 40 0 122 60 59
Medium2 0 200* 0 200* 200* 200*
Medium3 0 200* 0 200* 200* 200*
Medium4 1 200* 0 200* 200* 200*
Medium5 0 2 0 51 41 40
Large 307 500* 500* 500* 500* 500*
* : maximum number of “rescheduling procedures” allowed
19 Experimental Results : Comparison with other methods
Experimental Results : Comparison with other methods
DatasetOur Best Results
Graph Based Hyper
Heuristic
VNS with Randomized Improvement
Tabu Search Hyper
Heuristic
Local Search
Ant Algorithm
Small1 10 6 0 1 8 1
Small2 9 7 0 2 11 3
Small3 7 3 0 0 8 1
Small4 17 3 0 1 7 1
Small5 7 4 0 0 5 0
Medium1 243 372 242 146 199 195
Medium2 325 419 161 173 202.5 184
Medium3 249 359 265 267 - 248
Medium4 285 348 181 169 177.5 164.5
Medium5 132 171 151 303 - 219.5
Large 1138 1068 - 1166 - 851.5
20
ConclusionsConclusions
•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
21
Future WorkFuture 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
22
Thank YouThank You
UKCI2005 – London, UK
Fuzzy Multiple Heuristic Ordering
for Course Timetabling
Fuzzy Multiple Heuristic Ordering
for Course Timetabling
23
Linear WeightingLinear 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.
24
Heuristic Ordering : single vs multipleHeuristic Ordering : single vs multiple
LD LE
e1 30 40
e2 10 30
e3 50 20
e4 20 35
e5 39 10
e6 10 43
e7 10 20
e8 19 25
e9 27 15
e10 45 30
LD LE
e3 50 20
e10 45 30
e5 39 10
e1 30 40
e9 27 15
e4 20 35
e8 19 25
e2 10 30
e6 10 43
e7 10 20
LD LE
e6 10 43
e1 30 40
e4 20 35
e2 10 30
e10 45 30
e8 19 25
e7 10 20
e3 50 20
e9 27 15
e5 39 10
LD LE weight
e10 45 30 0.7
e3 50 20 0.6
e1 30 40 0.55
e5 39 10 0.52
e4 20 35 0.5
e6 10 43 0.5
e9 27 15 0.47
e8 19 25 0.47
e2 10 30 0.4
e7 10 20 0.35
unordered orderedby LD
orderedby LE
orderedby
weight
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
25
Fuzzy Inference Fuzzy Inference
Graphics representation:
w2
T-norm
w1
C’weight
z is zCOA
LD LELD is 7 LE is 35Crisp value
high
weight
medium high
LD LE
Rule 1 If LD is medium AND LE is high then weight is high
fast
weight
small medium
LD LE
Rule 2 If LD is small AND LE is medium then weight is medium
26
Best Membership FunctionsBest Membership Functions
CAR-F-92
CAR-S-91
HEC-S-92
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
mediumsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high
largest degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium high
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high
largest degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
highmediumsmall
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high
27
Best Membership Functions (continue)Best Membership Functions (continue)
STA-F-83
UTA-S-92
YOR-F-83
largest degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small highmedium
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium high
largest degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small highmedium
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium high
largest degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
saturation degree
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
largest enrollment
0
0.5
1
0 0.2 0.4 0.6 0.8 1
medium highsmall
examw eight
0
0.5
1
0 0.2 0.4 0.6 0.8 1
small medium high