200 likes | 637 Views
Ant Colony Optimization (ACO): Applications to Scheduling. Franco Villongco IEOR 4405 4/28/09. Definition. Metaheuristic: similar to genetic algorithms, simulated annealing etc. Flexible enough to be applied to combinatorial optimization problems. Inspiration.
E N D
Ant Colony Optimization (ACO):Applications to Scheduling Franco Villongco IEOR 4405 4/28/09
Definition • Metaheuristic: similar to genetic algorithms, simulated annealing etc. • Flexible enough to be applied to combinatorial optimization problems.
Inspiration • Foraging behavior of real ants • Blind ants communicate through stigmergy • Leave pheromone trails to make a certain path more likely to be traversed by other ants
Two-bridge Experiment FOOD NEST
Two-bridge Experiment FOOD NEST
Problem Representation • (S, f, Ω) • S: set of candidate solution • f: objective function of s є S • Ω: set of constraints • Set C ={ c1, c2… cN} where N is the number of components • Problem states are defined as x = ( ci, cj… ch) • We call χ the set of all states
Problem Representation • Nonempty set S* of optimal solutions • GC = (C,L) whose nodes are the components. • Artificial ants then build solutions by performing walks on the complete graph • Like in the two-bridge experiment, arcs (trails) that have more pheromone will have a higher probability of being chosen.
Scheduling Applications • Jm||Cmax • We use Ant System algorithm • GC = (C,L) consists of all the operations and two additional nodes for a source and sink node. • Our constraints Ω are simply the precedence constraints.
Scheduling Applications • Pheromone trail τijon the arc (i,j) indicates the desirability of choosing operation j directly after operation i. • heuristic information associated with that operation ηj
Scheduling Applications • At each iteration of the construction procedure, m ants concurrently build solutions • After each iteration, pheromone evaporation will be applied on all arcs: Where the parameter ρ є (0,1)
Scheduling Applications • The better Cmax is for the solution constructed by a particular ant k, the more pheromone there will be to the arcs corresponding to that solution:
Scheduling Applications • Any ant at node i will choose node j with probability • Where Nk is the set of feasible operations • nj is the heuristic value proportional to the amount of work remaining corresponding to the job of the operation considered
Scheduling Applications • 1||ΣTjwj • We use the Ant Colony System algorithm • Same as AS but with differences in pheromone updates and ant decision rule • For our construction graph, we have for our node the n positions and n jobs • Pheromone trail τijindicate the desirability of scheduling job j to position i • heuristic information ηj inversely proportional to job j’s deadline
Scheduling Applications • Main differences • Pheromone update (global): Only the best-so-far solution increases in pheromone For all (i,j) in sbs (best-so-far solution) and where
Scheduling Applications • Pheromone update (local): applied during the iteration to the arcs (i,j) that were traversed
Scheduling Applications Now, in choosing the next job j to schedule the probability of choosing job j is Where J is the random variable that will equal j with probability