Iterative Cartesian Genetic Programming: Creating General Algorithms for Solving Travelling Salesman Problems

Evolutionary algorithms have been widely used to optimise or design search algorithms, however, very few have considered evolving iterative algorithms. In this paper, we introduce a novel extension to Cartesian Genetic Programming that allows it to encode iterative algorithms. We apply this technique to the Traveling Salesman Problem to produce human-readable solvers which can be then be independently implemented. Our experimental results demonstrate that the evolved solvers scale well to much larger TSP instances than those used for training.

[1]  Holger H. Hoos,et al.  Programming by optimization , 2012, Commun. ACM.

[2]  Eugene L. Lawler,et al.  Traveling Salesman Problem , 2016 .

[3]  Mengjie Zhang,et al.  Using unrestricted loops in genetic programming for image classification , 2010, IEEE Congress on Evolutionary Computation.

[4]  Elaine Kant,et al.  Understanding and Automating Algorithm Design , 1985, IEEE Transactions on Software Engineering.

[5]  Michel Gendreau,et al.  Hyper-heuristics: a survey of the state of the art , 2013, J. Oper. Res. Soc..

[6]  Jonathan Timmis,et al.  Automatic Machine Code Generation for a Transport Triggered Architecture using Cartesian Genetic Programming , 2012, Int. J. Adapt. Resilient Auton. Syst..

[7]  Julian Francis Miller,et al.  Generating Human-readable Algorithms for the Travelling Salesman Problem using Hyper-Heuristics , 2015, GECCO.

[8]  Julian Francis Miller,et al.  Cartesian genetic programming , 2000, GECCO '10.

[9]  Keld Helsgaun,et al.  An effective implementation of the Lin-Kernighan traveling salesman heuristic , 2000, Eur. J. Oper. Res..

[10]  Julian F. Miller,et al.  What bloat? Cartesian Genetic Programming on Boolean problems , 2003 .

[11]  J. Miller,et al.  A Review of Hyper-Heuristic Frameworks , 2014 .

[12]  Gregory Gutin,et al.  A memetic algorithm for the generalized traveling salesman problem , 2008, Natural Computing.

[13]  Yuichi Nagata,et al.  A new genetic algorithm for the asymmetric traveling salesman problem , 2012, Expert Syst. Appl..

[14]  John R. Woodward,et al.  Hyper-Heuristics , 2015, GECCO.

[15]  Jorge Tavares,et al.  Automatic Design of Ant Algorithms with Grammatical Evolution , 2012, EuroGP.

[16]  Scott Brave,et al.  Evolving recursive programs for tree search , 1996 .

[17]  Peter Ross,et al.  Hyper-heuristics: Learning To Combine Simple Heuristics In Bin-packing Problems , 2002, GECCO.

[18]  D. Fogel An evolutionary approach to the traveling salesman problem , 1988, Biological Cybernetics.

[19]  David E. Goldberg,et al.  Alleles, loci and the traveling salesman problem , 1985 .

[20]  Nelishia Pillay,et al.  A review of hyper-heuristics for educational timetabling , 2016, Ann. Oper. Res..

[21]  Ender Özcan,et al.  Hyperion2: a toolkit for {meta-, hyper-} heuristic research , 2014, GECCO.

[22]  W. Banzhaf,et al.  The “molecular” traveling salesman , 1990, Biological Cybernetics.

[23]  K. Katayama,et al.  The efficiency of hybrid mutation genetic algorithm for the travelling salesman problem , 2000 .

[24]  Victor Ciesielski,et al.  Evolving programs with parameters and loops , 2010, IEEE Congress on Evolutionary Computation.

[25]  Ender Ozcan,et al.  A Brief Review of Memetic Algorithms for Solving Euclidean 2 D Traveling Salesrep Problem , 2004 .

[26]  Julian Francis Miller,et al.  Neutral genetic drift: an investigation using Cartesian Genetic Programming , 2015, Genetic Programming and Evolvable Machines.

[27]  John R. Koza,et al.  Evolution of Iteration in Genetic Programming , 1996, Evolutionary Programming.

[28]  Tomoharu Nagao,et al.  Graph structured program evolution with automatically defined nodes , 2009, GECCO.

[29]  Brian W. Kernighan,et al.  An Effective Heuristic Algorithm for the Traveling-Salesman Problem , 1973, Oper. Res..

[30]  Leslie Pérez Cáceres,et al.  The irace package: Iterated racing for automatic algorithm configuration , 2016 .

[31]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[32]  W. B. Langdon,et al.  Genetic Programming and Data Structures , 1998, The Springer International Series in Engineering and Computer Science.

[33]  C. Clack,et al.  Recursion , Lambda Abstractions and Genetic Programming , 2022 .

[34]  Thomas Stützle,et al.  Grammar-based generation of stochastic local search heuristics through automatic algorithm configuration tools , 2014, Comput. Oper. Res..

[35]  Brad Alexander,et al.  Boosting Search for Recursive Functions Using Partial Call-Trees , 2014, PPSN.

[36]  Adel M. Alimi,et al.  Fuzzy Ant Supervised by PSO and simplified ant supervised PSO applied to TSP , 2013, 13th International Conference on Hybrid Intelligent Systems (HIS 2013).

[37]  Jerry Swan,et al.  Templar - A Framework for Template-Method Hyper-Heuristics , 2015, EuroGP.

[38]  Graham Kendall,et al.  Hyperion - A Recursive Hyper-Heuristic Framework , 2011, LION.

[39]  Graham Kendall,et al.  Searching the Hyper-heuristic Design Space , 2014, Cognitive Computation.