400 likes | 618 Views
GECCO 2005. Topological Crossover for the Permutation Representation. Alberto Moraglio & Riccardo Poli {amoragn,rpoli}@essex.ac.uk. Sorry… Name Change!. Topological Crossover Abstract Geometric Crossover. Contents. Abstract Geometric Operators Geometric Crossover for Permutations
E N D
GECCO 2005 Topological Crossover for the Permutation Representation Alberto Moraglio & Riccardo Poli {amoragn,rpoli}@essex.ac.uk
Sorry… Name Change! Topological Crossover Abstract Geometric Crossover
Contents • Abstract Geometric Operators • Geometric Crossover for Permutations • Geometric Crossover for TSP • Conclusions
100000011101000 100110011101000 100001100011100 100111100011100 Is there any Crossover common aspect ? Is it possible to give a representation- independent definition of crossover and mutation? What is crossover? Binary Strings Permutations Real Vectors Syntactic Trees
D0 : P1 D1 D2 : P2 011001 010001 011101 011011 010101 011111 010011 010111 Shortest Path Crossover Hamming Neighbourhood Structure Parent1: 011101 Parent2: 010111 Children: 01*1*1 Crossover in the Neighbourhood: offspring between parents Mask-based crossover: children are on shortest paths
From graphs to geometry • Neighbourhood Structure=Metric Space • The distance in the neighbourhood is the length of the shortest path connecting two solutions • Mutation Direct neighbourhood Ball • Crossover All shortest paths Line Segment
Balls & Segments In a metric space (S, d) the closed ball is the set of the form where x belongs to S and r is a positive real number called the radius of the ball. In a metric space (S, d) the line segmentor closed interval is the set of the form where x and y belong to S and are called extremes of the segment and identify the segment.
Line segments Balls 100 100 101 101 000 000 001 001 2 2 111 111 110 110 3 1 3 1 010 011 011 010 1 3 1 3 3 3 [(1, 1); (3, 2)] 1 geodesic Euclidean space B((3, 3); 1) Euclidean space [(1, 1); (3, 2)] = [(1, 2); (3, 1)] infinitely many geodesics Manhattan space B((3, 3); 1) Manhattan space [000; 011] = [001; 010] 2 geodesics Hamming space B(000; 1) Hamming space Squared balls & Chunky segments
Uniform Mutation & Uniform Crossover Uniform topological crossover: Uniform topological ε-mutation: Genetic operators have a geometric nature
Representation-independentand rigorous definition ofcrossover and mutation in the neighbourhood seen as a geometric space
So what? Claims at Gecco 2004 • EAs Unification: most pre-existing genetic operators for main representations are geometric • Simplification & Clarification: crossover as function of classical neighbourhood structure simplifies the established notion of crossover landscape (hyper-neighbourhood) as function of crossover • General theory: formal representation-independent definitions allow for a general theory • Crossover principled design: specifying the formal definition of crossover for a specific representation and distance one gets automatically a specific crossover
Many Distances Dilemma WHAT IS A GOOD DISTANCE? WHAT IS THE RIGTH CROSSOVER?
What is a good distance? • IN PRINCIPLE: abstract genetic operators are well-defined for any distance. However: • IMPLEMENTATION: a distance not rooted in the solution syntax does not tell how to implement crossover • PROBLEM KNOWLEDGE:a problem-independent distance does not put any problem knowledge in the search • A GOOD DISTANCE: • (i) suggests how to implement crossover • (ii) embeds problem knowledge in the algorithm
Mutations/Edit moves for Permutations • Reversal: (A B C D E F) (A E D C B F) • Insert: (A B C D E F) (A C D E B F) • Swap: (A B C D E F) (A D C B E F) • Adj.Swap: (A BC D E F) (A C B D E F) Edit Distance = minimum number of edit moves to transform one permutation into the other
abc abc abc abc abc abc bac bac bac bac acb acb acb acb bac bac cba cba acb acb cab cab cab cab bca bca bca bca cab cab bca bca cba cba cba cba B(abc; 1) Swap space & Reversal space B(abc; 1) Adjacent swap space B(abc; 1) Insertion space [abc; bca] 3 geodesics Swap space & Reversal space [abc; bca] 1 geodesic Adjacent swap space [abc; bca] 1 geodesic Insertion space Permutation+Edit Move = Neighbourhood Structure Shortest path distance = edit distance Line segment in the neighbourhood structure = all shortest paths connecting two nodes
Neighbourhood/syntax duality • NEIGHBOURHOOD: Picking offspring on shortest path connecting two nodes • SYNTAX: picking offspring onminimal sorting trajectory between parent permutations using the edit move as sort move (minimal sorting by x)
Geometric Crossovers = Sorting Crossovers! • Sorting Crossover by X: • sorting one parent permutation toward the other using X sort move • stop the sorting at random and return the partially sorted permutation as offspring • Bubble Sort Crossover = Geometric Crossover under adj. swap edit distance
Edit Distances & Problem Knowledge How can we pick an edit distance that embeds problem knowledge? • Minimal fitness change: pick the edit distance whose edit move corresponds to a minimal fitness change • Good mutation, Good crossover: pick the edit distance whose edit move corresponds to a good mutation for the problem at hand • Good neighbourhood, Good crossover: pick the edit distance whose edit move induces a neighbourhood structure that is known to be good for the problem
Crossover Rank vs. Mutation Rank Good mutation, good crossover heuristic holds! Uniform crossovers are better than 1-point crossovers
Geometric Crossover for TSP • A good neighbourhood structure for TSP is 2opt structure = space of circular permutations endowed with reversal edit distance • Geometric crossover for TSP =picking offspring on the minimal sorting trajectories by sorting one parent circular permutation toward the other parent by reversals (sorting circular permutations by reversals)
Approximated Geometric Crossover • BAD NEWS: sorting circular permutations by reversals is NP-Hard! • GOOD NEWS: there are approximation algorithms that sort within a bounded error to optimality (used in genetics) • A 2-approximation algorithm sorts by reversals using sorting trajectories that are at most twice the length of the minimal sorting trajectories • Approximation algorithms can be used to build approximated geometric crossovers for TSP
Experiments - Parameters Test-bed • TSPLIB: eil51, gr96, eil101, lin105, d198, kroA200, lin318, pcb442 Crossovers • PMX: partially matched crossover • ERX: edge recombination • SBRX: sorting by reversal crossover (limitations: no circular permutation, uniform on one fixed geodesic, 2-approxiamtion) Parameter Setting • BIG POPULATION: Population Size = Instance Size * 20 • Until Population Convergence • No Mutation • Runs=30 (average of bests in population) • No Fine Tuning. The settings have been chosen to allow the best crossover to reach a near optimal solution before convergence.
Good results & lot of room for improvement • SBRX better than ERX for bigger instances • good empirical results based only on theoretical considerations • Possible improvements: • Fine parameter tuning • Better approximation algorithm • Non-deterministic approx algorithm (uniform crossover) • Circular Permutations instead of Linear Permutations
Conclusions Permutations & Many Distances • Many types of geometric crossovers! • What is a good distance? Implementation & Edit Distance: • Edit Distances are good • For permutations: geometric crossovers = sorting algorithms! Problem Knowledge and Edit Move: • Good mutation, good crossover heuristics • For permutations: good mutation, good crossover holds for the N-queen problem using sorting crossovers Geometric Crossover for TSP • Sorting circular permutation by reversals (NP-Hard) • 2-approximation algorithm for approximated geometric crossover • Good empirical results based only on theory!