03.01.2015 Views

a multi-objective bisexual reproduction genetic algorithm for ...

a multi-objective bisexual reproduction genetic algorithm for ...

a multi-objective bisexual reproduction genetic algorithm for ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

10<br />

studies many different courses, these courses also have to be scheduled to different<br />

times. The other constraints are also satisfied.<br />

TABLE 2-3 Sample timetable<br />

Course Section Time Day Classroom Lecturer<br />

CSC211 1 13:00-16:00 W B304A01 00020<br />

CSC211 2 8:00-11:00 W B304A01 00020<br />

CSC221 1 10:00-12:00 T B304A05 00012<br />

CSC210 1 13:00-16:00 M B304A02 00012<br />

CSC110 1 9:00-12:00 F B304A02 00015<br />

CSC113 1 13:00-16:00 T B304A05 00023<br />

2.2 The Related Works on Course Scheduling Problems<br />

Course scheduling is a <strong>multi</strong>-dimensional NP-Complete problem that has<br />

generated hundreds of papers and thousands of researchers who have attempted to<br />

solve this problem. In this section, we discuss some of the primary approaches that<br />

have been applied to general course scheduling problems, scheduling <strong>for</strong> courses and<br />

exams. In practice, the main idea used <strong>for</strong> the course scheduling can be applied to<br />

exam scheduling and vice versa. The approaches can be divided into four groups:<br />

sequential methods, cluster methods, constraint based methods, and meta-heuristic<br />

methods [9].<br />

2.2.1 Sequential Methods<br />

Sequential methods order the events <strong>for</strong> scheduling using heuristics (often graph<br />

coloring heuristics). They assign the ordered events to valid time periods so that no<br />

events in the period are in conflict with each other, i.e. two events which require the<br />

same resource are not scheduled in the same time period [10].<br />

The graph coloring approach usually presents events as different vertices with<br />

an edge between the two vertices where two respective events conflict in some way.<br />

The graph coloring is the process of allocating different colors to each vertex so that<br />

no two adjacent (conflicting) vertices have the same color.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!