130 likes | 249 Views
Hong Zhou Computer Systems Lab 2009-2010 Quarter 3 Period 2. Ant Colony Optimization with Multiple Objectives. Ant Colony Optimization. Based on how real ants cooperate to find food Useful method to find near optimal paths.
E N D
Hong Zhou Computer Systems Lab 2009-2010 Quarter 3Period 2 Ant Colony Optimization with Multiple Objectives
Ant Colony Optimization • Based on how real ants cooperate to find food • Useful method to find near optimal paths. • Ants choose their individual paths based on pheromones left by other ants. • They end up all going on the near optimal path
Multiple Objectives • Many variables effect how good a path is in real life • Could be weighted differently (currently 50% each in mine) • Results in different solutions (often less optimal in one variable but better overall) • Focus of the research: weight that would give a better path overall + improving system as a whole.
Possible Application • Military path finding: Speed versus Safety • Airplane routing Left is the faster route, right the safer. Lighter means higher elevation, darker lower
Development • Java • ACO, single objective • Improve/modify Elitist ant variation (affects the pheromone update) • Multiple objective, two variables • Output file
Display Is there a way to show two weights distinctly? How to calculate an overall ‘score’ or ‘length’ Is there a need to? To Be Implemented • Two objectives • Two pheromones • Two ‘distances’ • Weighting objectives • Check against single objective
Current Code • ACO Network Nodes, Edges, Ants • Node: has an ID and a weight, has ants ‘on’ it • Edge: has a ‘length’, where pheromone is stored • Ant: chooses next node, keeps track of path
Ant deposit: edg.deposit(ws * QCONST/getTourLength()); Updated in Edge: tau = RHO * getTau() + deltaTau; deltaTau = 0.0; Important Bits of Code • Ant: picking next node double rn = rnd.nextDouble();sumPij = 0.0;for (i=0; i < nan; i++) { sumPij += pij[i]; if (rn <= sumPij) break;}
Results • Current set up: • Network: • Node weights reflected by color • Edges with length • Starts out with no ants • Output: • Displays #steps, best tour length • Prints out each ant’s result as it finishes
Results, Conclusions • Best ever tour length versus path the ants congregate to: • 1182.5 versus approximately 1300 • Average tour length to be implemented • Outputting to a file • Determining actual best possible tour • Multiple Objective: • 1252.5 and about 1550, as expected slower
Works Cited • [1] Blum, C. Ant colony optimization: Introduction and recent trends. • Barcelona, Spain 2005 • [2] Mora, A.M. Balancing Safety and Speed in the Military Path Finding • Problem: Analysis of Different ACO Algorithms. Granada, Spain 2007 • [3] Mora, A.M. CHAC. A MOACO Algorithm for Computation of Bi- • Criteria Military Unit Path in the Battlefield. Granada, Spain 2006