The most obvious mapping of TTP into the SA algorithm
involves the following constructs:
- a <#420#>state<#420#> is a timetable containing the following sets:
- P: a set of professors.
- C: a set of classes.
- S: a set of students.
- R: a set of classrooms.
- I: a set of time intervals.
- a <#423#>cost<#423#> or ``energy'' E(P, C, S, R, I) such that:
- E(P): is the cost of assigning more than maximum number of
allowed classes #tex2html_wrap_inline1746# to the same professor,
plus scheduling one or more classes that cause a conflict
in the professor's schedule.
- E(C): is the cost of scheduling certain classes at/within the
same time period in violation of the exclusion constraint, for
example.
- E(S): is the cost of having two or more classes conflict in
time; plus cost of having in the schedule one or more classes that
really don't meet the student's major, class requested, or class
requirements; plus the cost of not having the classes evenly spread
out over the week, etc.
- E(R): is the cost resulting from assigning room(s) of the wrong
size and/or type to a certain class.
- E(I): is the cost of having more or less time periods than
required, plus cost of an imbalanced class assignments (a certain
period will have more classes assigned to than others, etc.).
- A <#426#>swap<#426#> (or a move) is the exchange of one or more of the
following:
class #tex2html_wrap_inline1756# with class #tex2html_wrap_inline1758# in the set C with
respect to time periods #tex2html_wrap_inline1762# and #tex2html_wrap_inline1764#, and/or with
respect to classroom #tex2html_wrap_inline1766# and #tex2html_wrap_inline1768#, respectively. Generally, this
step is referred to as class swapping.
Along with all of the necessary constraints, the simulated annealing
algorithm also takes as input data the following: the preprocessor
output in the form of lists of scheduled and non-scheduled classes and
their associated professors and room types, a list of rooms provided
by the registrar's office, a department to building distance matrix, a
list of students and their class preferences, and a list of classes
that are not allowed to be scheduled simultaneously.