27
1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan 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

1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

Embed Size (px)

Citation preview

Page 1: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 2: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

2

OutlineOutline

• Introduction to Timetabling Problem

• Graph Based Heuristic Ordering

• Sequential Construction Algorithm

• Fuzzy Modeling

• Experimental Results• Problem Definitions

• Results

• Conclusions and Future Work

Page 3: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 4: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 5: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 6: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 7: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 8: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 9: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 10: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 11: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 12: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 13: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 14: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 15: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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 :

Page 16: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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 :

Page 17: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 18: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 19: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 20: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 21: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 22: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

22

Thank YouThank You

UKCI2005 – London, UK

Fuzzy Multiple Heuristic Ordering

for Course Timetabling

Fuzzy Multiple Heuristic Ordering

for Course Timetabling

Page 23: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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.

Page 24: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 25: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 26: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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

Page 27: 1 Fuzzy Multiple Heuristic Ordering for Course Timetabling Hishammuddin Asmuni Edmund K. Burke Jonathan M. Garibaldi UKCI2005 – London, UK Automated Scheduling,

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