1 / 11

Memetic Algorithm for ATSP

Memetic Algorithm for ATSP. KC Tsui Based on [1]. S/A-TSP. Let c ij be the cost to travel from city i to city j

norm
Download Presentation

Memetic Algorithm for ATSP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Memetic Algorithm for ATSP KC Tsui Based on [1]

  2. S/A-TSP • Let cij be the cost to travel from city i to city j • Given a directed graph G=(V,A), where V:={1, …, n} and A:={(i, j): i, j  V, i  j}, a feasible solution for a TSP is a Hamiltonian circuit and the objective is to minimum the total tour length • In STSP, cij = cji for all cities i, j. • In ATSP, cij  cji

  3. Memetic Algorithms • “Memetic Algorithms is a population-based approach for heuristic search in optimization problems. They have shown that they are orders of magnitude faster than traditional Genetic Algorithms for some problem domains. Basically, they combine local search heuristics with crossover operators. For this reason, some researchers have viewed them as Hybrid Genetic Algorithms. However, combinations with constructive heuristics or exact methods may also belong to this class of metaheuristics.” excerpt from Memetic Algorithms’ Home Page (http://www.ing.unlp.edu.ar/cetad/mos/memetic_home.html)

  4. Features of the new MA • Local search engine • Topological organization: a complete tenary tree of 13 agents • Selection and reproduction scheme in a hierarchy of overlapping clusters

  5. Program Structure begin initialize (13 agents) repeat for i:=1 to popSize do evaluate(Current[i]); updatePocket(i); endfor PocketPropagation(); If diversity_crisis Restart(); for i:=1 to popSize do select parents a,b Pop[i]:=SAX(a,b); endfor for i:=1 to popSize do if (rand()<=0.3) Pop[i]=Mutate(Pop[i]); endfor until termination end;

  6. The Population • A complete tenery tree of 13 agents clustered in 4 subpopulations • Each subpopulation has 4 individuals – a leader and 3 supporters • The supports are located one level below in the hierarchy

  7. Population Operations • Each agent is handling two feasible solutions, Pocket and Current, created by local search • Recombination is between Pocket and Current solutions • UpdatePocket(): switch Pocket and Current when curCost < pocCost • PocketPropagation(): exchange Pocket solutions of a leader and one of its supporters if the latter has a better Pocket solution

  8. Strategic Arc Crossover Given two parents A and B, construct a graph G consisting of the union of arcs in the two tours • Pick randomly an unused vertex v in G • While head h has at least one out-arc to an unused vertex • Randomly choose one of the unused vertices to which h has an out-arc • Make h to be tail t • While the tail t has at least one in-arc from an unused vertex • Randomly choose one of the unused vertices to which t has an in-arc • Goto 1 if there is no unused vertex

  9. Recursive Arc Insertion

  10. Restart • If the subpopulation has not changed for a certain number of generations, apply mutation to the Pockets a few time (except the root)

  11. Reference • L. Buriol, P. M. Franca and P. Moscato, A New Memetic Algorithm for the Asymmetric Traveling Salesman Problem.

More Related