Académique Documents
Professionnel Documents
Culture Documents
OPIM 950
Gary Chen
9/29/03
Basic Tabu Search Overview
Pick an arbitrary point and evaluate an initial solution
Compute next set of solutions within neighborhood of
current solution
Pick best solution from the set.
If solution is on Tabu (or forbidden) list, pick next
best solution. Repeat until you come across solution
not on Tabu list.
After solution is chosen, repeat from step 2 until
optima is reached.
Parameters for tuning: Number of iterations, penalty
points, size of Taboo list
Applications
Bioengineering
Finance
Manufacturing
Scheduling
Political Districting
1 2 3 5
6
6
1
4
1
1
Maximum Cardinality
Independent Sets
Objective: Find sets that contain one
section of each course.
Algorithm
Find all cliques in the graphs.
Pick one node or no nodes from each
clique. Check if it’s a valid schedule. If it is
retain as a possible solution set.
repeat
Implementation - Part 2
Balance out section enrollment
Each student has a set of possible time
schedules.
“Optimal” time schedule for a student
adheres to following criteria:
Balance number of classes per day
Minimize gaps between classes
Respect language preferences
Tabu Search
Objective: Find satisfactory course
schedule.
“Satisfactory” being a solution no more
than a threshold cost distance from the
“optimal” course scheduling.
Tabu list contains previously tried student
course schedules.
Tabu search combined with strategic
oscillation used.
Strategic Oscillation
Perform moves until hitting a boundary.
Modify objective constraints or extend
neighborhood function to allow crossing
over to infeasible region.
Proceed beyond boundary for a set
depth
Turn around to enforce feasibility
Strategic Oscillation (Cont)