a multi-objective bisexual reproduction genetic algorithm for ...
a multi-objective bisexual reproduction genetic algorithm for ...
a multi-objective bisexual reproduction genetic algorithm for ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
17<br />
The outline of the basic <strong>genetic</strong> <strong>algorithm</strong> is presented in section 1.1.2.<br />
At present, a large number of researches have used the GAs <strong>for</strong> course<br />
scheduling. The difference of the proposed GAs depends on representing<br />
chromosomes and populations, setting up GAs parameters (population size, crossover<br />
rate, and mutation rate), designing strategies in selection, crossover, and mutation, and<br />
evaluating the fitness function.<br />
The chromosome represents a timetable that is a solution. It can be represented<br />
directly or indirectly. In the <strong>for</strong>mer, the timetable is usually a long bit string of<br />
encoding, that stands <strong>for</strong> when and where each course takes place [33]. Thus, pairs of<br />
selected timetables may be “crossed over” by cutting and splicing the bit strings to<br />
create a new timetable. On the other hand, in the later, the timetable can be<br />
represented by using a data structure such as a <strong>multi</strong>-dimension array or a linked list.<br />
The indirect representation brings the advantage of processing time and simple GA<br />
operations. However, it needs complex processing to exchange and maintain<br />
constraints between the bit string and real timetable. In contrast, the direct<br />
representation needs more processing time <strong>for</strong> GA operations, but it is easy to<br />
maintain a large number of constraints <strong>for</strong> a real timetable. More details of the GAs<br />
will be presented in section 2.3.<br />
2.2.4.4 Hybrid Approaches<br />
The above approaches have been proved that they can create good solutions <strong>for</strong><br />
course scheduling problems. However, as above mentioned, they usually need a long<br />
computational time. In order to overcome this problem, many researchers have used<br />
hybrid approaches.<br />
Tuan et al. have successfully combined constraint programming and simulated<br />
annealing <strong>for</strong> the problem of exam scheduling with real data sets [34]. The proposed<br />
<strong>algorithm</strong> consists of two phases. A constraint programming phase is to provide an<br />
initial solution. This solution is improved by the simulated annealing phase. Tuan et<br />
al. have applied Kempe chain as neighborhood structure, a special technique <strong>for</strong><br />
determining starting temperature T 0 and a mechanism that allows the user to define a<br />
certain period of time in which the <strong>algorithm</strong> should run. The mentioned mechanism<br />
not only helps to increase the efficiency of the SA <strong>algorithm</strong> but also makes simulated<br />
annealing experiments easier.