[PDF] [BIB] [DOI] [arXiv]
Evolutionary algorithms solve problems by simulating the evolution of a population of candidate solutions. We focus on evolving permutations for ordering problems such as the traveling salesperson problem (TSP), as well as assignment problems such as the quadratic assignment problem (QAP) and largest common subgraph (LCS). We propose cycle mutation, a new mutation operator whose inspiration is the well-known cycle crossover operator, and the concept of a permutation cycle. We use fitness landscape analysis to explore the problem characteristics for which cycle mutation works best. As a prerequisite, we develop new permutation distance measures: cycle distance, k-cycle distance, and cycle edit distance. The fitness landscape analysis predicts that cycle mutation is better suited for assignment and mapping problems than it is for ordering problems. We experimentally validate these findings showing cycle mutation’s strengths on problems such as QAP and LCS, and its limitations on problems such as the TSP, while also showing that it is less prone to local optima than commonly used alternatives. We integrate cycle mutation into the open source Chips-n-Salsa library, and the new distance metrics into the open source JavaPermutationTools library.