assigning judges to competitions using tabu search approach amina lamghari jacques a. ferland
DESCRIPTION
Assigning Judges to Competitions Using Tabu Search Approach Amina Lamghari Jacques A. Ferland Computer science and OR dept. University of Montreal. Problem background. - PowerPoint PPT PresentationTRANSCRIPT
Assigning Judges to Competitions
UsingTabu Search Approach
Amina Lamghari Jacques A. Ferland Computer science and OR dept. University of Montreal
Faculty of Information Technology
University of Science
Vietnam National University of Ho Chi Minh City
March 2010
Problem background
• The John Molson Business School International Case Competition
• Takes place every year for more than 30 years at Concordia University in Montreal
• 30 teams of business school students coming from top international universities
• Partitioned in 5 groups of 6 teams
• First part of the competition is a round-robin tournament including 5 rounds where each team competes against each of the other 5 teams of its group
• The three best teams move to the finals
Judge Assignment to the competitions of a round.
•
Constraints
Objective function
Maximize the number of
competitions with 5 judges
At least one lead judge
3 or 5 judges assigned
Number of judges withexpertise k assigned to j
aij = 1 iff i admissible for j
1, 3 or 5 judges assigned
Penalty for competitions with 1 judge
Metaheuristic Solution Approach
Initial Solution
First StageStructured Neighborhood Tabu Search to reducethe number of competitions with 1 or 3 judges
Second StageTabu Search to improve the diversity of the fields of expertise of the judges assigned to a competition
Diversification strategyAdaptive memory of best solutions generated Crossover to generate a new initial solution
Initial Solution
• Two different processes
i) Random
Assign randomly 1 lead judge to each competition
Hence all competitions have 1 judge assigned
ii) HLA-HOA Constructive Heuristic
1. Assign 1 lead judge to each competition
2. Assign a first pair of additional judges to each competition
3. Assign a second pair of additional judges to as many
competitions as possible
Look ahead features making further assignments easier.
First StageStructured Neighborhood Tabu Search
• Neighborhood
Reassignment of a pair of judges (i, r) from competition j to
competition l :
in the neighborhood if the solution is feasible
),,,( ljrix ),,,( ljrix
•
Structured NeighborhoodReassignment of pair (i, r) from comp. j to comp. l
from j to lImpact on the objective function
improving
improving or deteriorating
deteriorating
•
Search Strategy
from j to lImpact on the objective function
improving
Using sequentially V1(x),V2(x), V3(x).Exhaustive search
•
Search Strategy
improving or deteriorating
deteriorating
Using sequentially V4(x),…, V8(x).
No exhaustive search.After any reassignment in V4(x), return to V2(x). After any reassignment in Vk(x), k = 5, …, 8, return to V1(x).
Search StrategySimilarity with Variable Neighborhood Search (VNS) But the search strategy strongly depend on the partition of the neighborhood, and the potential improvement associated with the different subsets
from j to lImpact on the objective function
improving
improving or deteriorating
deteriorating
• Tabu list
When becomes the current solution
(i, j) and (r, j) are included in the Tabu list
• Tabu solution
is Tabu if (i, l) and (r, l) are in the Tabu list
• Aspiration criterion
satisfies the aspiration criterion if its value is better than
the best value reached so far
),,,( ljrix
),,,( ljrix
),,,( ljrix
• Selection of the new current solution in the neighborhood
Two different strategies compared numerically
Best
Generate the entire neighborhood and
select the best solution in it
First
During the generation of the neighborhood, select
- the first non Tabu solution improving the value of the
current solution or
- the first solution satisfying the aspiration criterion
• Stopping criteria
- No improvement possible
5 judges assigned to each competition
or
3 or 5 judges assigned to each competition and only 0 or 1 judge is not assigned
- nitermax successive iterations where the objective function does not
improve
Second Stage Tabu Search
• Neighborhood
Exchange judge i of competition j and judge r of competition l
in the neighborhood if the solution is feasible
• Tabu list
When becomes the current solution
(i, j) and (r, l) are included in the Tabu list
• Tabu solution
is Tabu if (i, l) and (r, j) are in the Tabu list
),,,( lrjix
),,,( lrjix
),,,( lrjix
• Aspiration criterion (idem)
• Selection of the new current solution in the neighborhood (idem)
• Stopping criteria
- No improvement possible
in each competition, all judges have different expertise or
lower bound known a priori for the problem is reached
- nitermax successive iterations where the objective function does not
improve
Diversification Strategy
• Adaptive Memory
Γ: set of best solutions found so far
• Uniform crossover
Uniform crossover of and xbest to generate x0
% of elements from xbest decreases with the number of recent successive
major iterations where the objective does not improve
in randomly selected xbestxx
Diversification Strategy
• Adaptive Memory
Γ: set of best solutions found so far
• Uniform crossover
Uniform crossover of and xbest to generate x0
% of elements from xbest decreases with the number of recent successive
major iterations where the objective does not improve
in randomly selected xbestxx
otherwise.
if
),(
),(),( 0
xjI
MjxbestjIxjI best
xjii
xjIsolution in n competitio
individual toassigned is judge:),(
• Repair process
Eliminate duplicate judges from x0
Bias in favour of elements from xbest
Look ahead feature to have a lead judge in each competition
Assign a lead judge to those competitions missing one
For competition having 2 or 4 judges
Assign an admissible currently non assigned judge if possible
Otherwise eliminate 1 judge (making sure that the competition
has a lead judge assigned)
• New initial solution
x0 is used as a new initial solution for the next major iteration
Numerical Results
• 4 variants: H-Best, R-Best, H-First, R-First
Initial solution : Heuristic (H), Random (R)
Selection strategy: Best, First
• 3 sets of randomly generated problems P1, P2, P3
In each set: subsets (10 problems) with 15, 50, 150, and 500 competitions
P1: some comp. with 3 judges; judges with diff. expertise in all comp.
P2: all comp. with 5 judges; in some comp.,judges with same expertise
P3: some comp. with 3 judges; in some comp.,judges with same expertise
Worth using metaheuristic
CPLEX: much more CPU
Variants: very small Ave dev
Robustness
Variants: solutions of excellent quality for all problems
Ave dev < 1
At most one competition where 2 judges have the same expertise
• Constraints
Objective function
Same pair of judges cannot be assigned more than once
Same judge cannot be assigned more than once at
different competitions of any given team
Judge Asssignment for the 5 rounds
A judge cannot be assigned to a competition involving
a team that he does not wish to evaluate
If a team in a competition is presenting in French, then the
judges assigned to this competition must be fluent in French
At least one experienced judge, different from the lead judge,
must be assigned to each competition
The judges assigned to each competition should be balanced
with regard to the number of experienced and new judges
If several judges coming from firms are assigned to a
competition then they should come from different ones
Phase 1 For each round 1, ,5 considered individually, determine
an initial solution accounting for the pairs of judges already
assigned for the other rounds already completed
p
p p
xinit
5
1
5
1
: the best solution generated so far
: the best current solution
pp
pp
xbest xinit
xlast xinit
Solution procedure including two phases:
Phase 2: Iterative process to improve the current
Phase 1: Initialisation to generate an initial so
____________
lution
______
_
so
__
lution
_____
Phase 2 (Iterative process repeated until a stopping criterion is met)At each iteration of the process:
Use the earlier procedure using
tabu searches and diversification
adapted to account for the
additional constraints
*: p pxlast xlast xlast x If is better than , then :xlast xbest xbest xlast
For each round ,p P
Generate a permutation of the the rounds
where some constraints are violated
P
Fix the assignments of the judges in all the other rounds*Determine a new optimal solution for round px p
Another procedure also using
tabu search and diversification
have also been developed.
Gauss-Southwell type approach to
solve the global 5 rounds problem
allowing to modify only the assignments
for each round sequentially
Having the global problem in view,
solving the round sub-problem is
equivalent to consider neighborhood
for the global problem where only
assignments of round can be modi . fied
p
p
Interpretation underlying an iteration:
Variable neighborhood type procedure
Numerical Results
• 2 sets of randomly generated problems P1, P2
P1: some competitions with 3 judges
P2: all competitions with 5 judges
• In each set: subsets (10 problems) with 15, 30, and 90 competitions per round
Worth using metaheuristic
CPLEX: fails to find an integer feasible solution in 10 hours
Variants: solutions of good quality in less than 10 seconds
Software
• Solution approach embedded into a user friendly software
• Results on real data to the full satisfaction of organizing committee.
•
CPLEX
•
Worth using metaheuristic
CPLEX much more CPUHeuristic very small Ave dev
•
Ave dev < 1
At most one competition where 2judges have the same expertise
•
Robustness
H-Best, H-First, R-First: Optimal value or lower bound achieved forat least one solution out of 5
R-Best:Also verified except for 2 instances of P3
with 150 comp., and 1 of P3with 500 comp.
Heuristic initial solution is better
H-Best dominates R-Best
H-First dominates R-First
•
•
H-First vs H-Best
H-First: better solutions
•
H-First vs H-Best
H-First: better solutionsH-Best: smaller CPU
•
H-First vs H-Best
Problem of size 150H-First: better solutions factor 7H-Best: smaller CPU factor 2
H-First vs H-Best
Problem of size 150H-First: better solutions factor 7H-Best: smaller CPU factor 2
Problem of size 500H-First: better solutions factor 2H-Best: smaller CPU factor 4
•
H-First vs H-BestH-First: better solutionsH-Best: smaller CPU factor increasing with problem size
R-First vs R-Best
Similar results
•
Conclusion
All variants generate solutions of excellent quality
With regards to CPU:H-Best is slightly dominating