Metaheuristic optimization frameworks: a survey and benchmarking

This paper performs an unprecedented comparative study of Metaheuristic optimization frameworks. As criteria for comparison a set of 271 features grouped in 30 characteristics and 6 areas has been selected. These features include the different metaheuristic techniques covered, mechanisms for solution encoding, constraint handling, neighborhood specification, hybridization, parallel and distributed computation, software engineering best practices, documentation and user interface, etc. A metric has been defined for each feature so that the scores obtained by a framework are averaged within each group of features, leading to a final average score for each framework. Out of 33 frameworks ten have been selected from the literature using well-defined filtering criteria, and the results of the comparison are analyzed with the aim of identifying improvement areas and gaps in specific frameworks and the whole set. Generally speaking, a significant lack of support has been found for hyper-heuristics, and parallel and distributed computing capabilities. It is also desirable to have a wider implementation of some Software Engineering best practices. Finally, a wider support for some metaheuristics and hybridization capabilities is needed.

[1]  Nicolas Monmarché,et al.  On how Pachycondyla apicalis ants suggest a new search algorithm , 2000, Future Gener. Comput. Syst..

[2]  Celso C. Ribeiro,et al.  Using UML-F to enhance framework development: a case study in the local search heuristics domain , 2001, J. Syst. Softw..

[3]  David E. Goldberg,et al.  A Note on Boltzmann Tournament Selection for Genetic Algorithms and Population-Oriented Simulated Annealing , 1990, Complex Syst..

[4]  David J. Montana,et al.  Strongly Typed Genetic Programming , 1995, Evolutionary Computation.

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

[6]  James E. Baker,et al.  Reducing Bias and Inefficienry in the Selection Algorithm , 1987, ICGA.

[7]  David H. Wolpert,et al.  No free lunch theorems for optimization , 1997, IEEE Trans. Evol. Comput..

[8]  Y. Ho,et al.  Simple Explanation of the No-Free-Lunch Theorem and Its Implications , 2002 .

[9]  A. Groenwold,et al.  Comparison of linear and classical velocity update rules in particle swarm optimization: notes on diversity , 2007 .

[10]  Günther R. Raidl,et al.  A Unified View on Hybrid Metaheuristics , 2006, Hybrid Metaheuristics.

[11]  Kenneth R. Hall,et al.  An algebraic method that includes Gibbs minimization for performing phase equilibrium calculations for any number of components or phases , 2003 .

[12]  T. Stützle,et al.  MAX-MIN Ant System and local search for the traveling salesman problem , 1997, Proceedings of 1997 IEEE International Conference on Evolutionary Computation (ICEC '97).

[13]  Alan W. Brown,et al.  A Framework for Evaluating Software Technology , 1996, IEEE Softw..

[14]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[15]  Alden H. Wright,et al.  Genetic Algorithms for Real Parameter Optimization , 1990, FOGA.

[16]  Stuart German,et al.  Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images , 1988 .

[17]  Enrique Alba,et al.  Using metaheuristic algorithms remotely via ROS , 2007, GECCO '07.

[18]  R. Storn,et al.  Differential Evolution: A Practical Approach to Global Optimization (Natural Computing Series) , 2005 .

[19]  F. Glover HEURISTICS FOR INTEGER PROGRAMMING USING SURROGATE CONSTRAINTS , 1977 .

[20]  Christian Blum,et al.  Hybrid Metaheuristics , 2010, Artificial Intelligence: Foundations, Theory, and Algorithms.

[21]  Lawrence J. Fogel,et al.  Artificial Intelligence through Simulated Evolution , 1966 .

[22]  R. Suresh,et al.  Pareto archived simulated annealing for permutation flow shop scheduling with multiple objectives , 2004, IEEE Conference on Cybernetics and Intelligent Systems, 2004..

[23]  Nulton,et al.  Statistical mechanics of combinatorial optimization. , 1988, Physical review. A, General physics.

[24]  Yves Crama,et al.  Local Search in Combinatorial Optimization , 2018, Artificial Neural Networks.

[25]  Dr. Zbigniew Michalewicz,et al.  How to Solve It: Modern Heuristics , 2004 .

[26]  K. Dejong,et al.  An analysis of the behavior of a class of genetic adaptive systems , 1975 .

[27]  Peter I. Cowling,et al.  Hyperheuristics: Recent Developments , 2008, Adaptive and Multilevel Metaheuristics.

[28]  Jean-Michel Renders,et al.  Hybridizing genetic algorithms with hill-climbing methods for global optimization: two possible ways , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[29]  Zbigniew Michalewicz,et al.  Genetic Algorithms Plus Data Structures Equals Evolution Programs , 1994 .

[30]  Nichael Lynn Cramer,et al.  A Representation for the Adaptive Generation of Simple Sequential Programs , 1985, ICGA.

[31]  E. Thorndike On the Organization of Intellect. , 1921 .

[32]  F. Glover,et al.  Handbook of Metaheuristics , 2019, International Series in Operations Research & Management Science.

[33]  Pedro Martins,et al.  Skewed VNS enclosing second order algorithm for the degree constrained minimum spanning tree problem , 2008, Eur. J. Oper. Res..

[34]  Imran Rahman,et al.  Evaluation of repulsive particle swarm method for phase equilibrium and phase stability problems , 2009 .

[35]  Luca Di Gaspero,et al.  EASYLOCAL++: an object‐oriented framework for the flexible design of local‐search algorithms , 2003, Softw. Pract. Exp..

[36]  Peter J. Fleming,et al.  Genetic Algorithms for Multiobjective Optimization: FormulationDiscussion and Generalization , 1993, ICGA.

[37]  David W. Corne,et al.  Approximating the Nondominated Front Using the Pareto Archived Evolution Strategy , 2000, Evolutionary Computation.

[38]  E. L. Ulungu,et al.  MOSA method: a tool for solving multiobjective combinatorial optimization problems , 1999 .

[39]  Constantino Tsallis,et al.  Optimization by Simulated Annealing: Recent Progress , 1995 .

[40]  Jason Brownlee OAT : the Optimization Algorithm Toolkit , 2007 .

[41]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[42]  Zbigniew Michalewicz,et al.  Handbook of Evolutionary Computation , 1997 .

[43]  James Kennedy,et al.  Particle swarm optimization , 2002, Proceedings of ICNN'95 - International Conference on Neural Networks.

[44]  Johann Dréo,et al.  Metaheuristics for Hard Optimization: Methods and Case Studies , 2005 .

[45]  David E. Goldberg,et al.  Nonstationary Function Optimization Using Genetic Algorithms with Dominance and Diploidy , 1987, ICGA.

[46]  Junyan Wang,et al.  Nonlinear Inertia Weight Variation for Dynamic Adaptation in Particle Swarm Optimization , 2011, ICSI.

[47]  Andreas Zell,et al.  The EvA2 Optimization Framework , 2010, LION.

[48]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[49]  Anne Brindle,et al.  Genetic algorithms for function optimization , 1980 .

[50]  Larry J. Eshelman,et al.  The CHC Adaptive Search Algorithm: How to Have Safe Search When Engaging in Nontraditional Genetic Recombination , 1990, FOGA.

[51]  Franz Rothlauf,et al.  Representations for genetic and evolutionary algorithms , 2002, Studies in Fuzziness and Soft Computing.

[52]  J. David Schaffer,et al.  An Adaptive Crossover Distribution Mechanism for Genetic Algorithms , 1987, ICGA.

[53]  Xin Yao,et al.  Fast Evolutionary Programming , 1996, Evolutionary Programming.

[54]  Stefan Voß,et al.  Meta-heuristics: The State of the Art , 2000, Local Search for Planning and Scheduling.

[55]  J. David Schaffer,et al.  Proceedings of the third international conference on Genetic algorithms , 1989 .

[56]  Fred Glover,et al.  Tabu Search - Part II , 1989, INFORMS J. Comput..

[57]  El-Ghazali Talbi,et al.  A Taxonomy of Hybrid Metaheuristics , 2002, J. Heuristics.

[58]  J. Kennedy,et al.  Population structure and particle swarm performance , 2002, Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600).

[59]  M. Clerc,et al.  Particle Swarm Optimization , 2006 .

[60]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[61]  Heinz Mühlenbein,et al.  Evolution in Time and Space - The Parallel Genetic Algorithm , 1990, FOGA.

[62]  Terence C. Fogarty,et al.  Varying the Probability of Mutation in the Genetic Algorithm , 1989, ICGA.

[63]  Donald Geman,et al.  Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images , 1984 .

[64]  D. Ackley A connectionist machine for genetic hillclimbing , 1987 .

[65]  David L. Woodruff,et al.  Optimization software class libraries , 2002 .

[66]  David B. Fogel,et al.  Meta-evolutionary programming , 1991, [1991] Conference Record of the Twenty-Fifth Asilomar Conference on Signals, Systems & Computers.

[67]  Kenneth Alan De Jong,et al.  An analysis of the behavior of a class of genetic adaptive systems. , 1975 .

[68]  Andrew R. McIntyre,et al.  Resource Review: Three Open Source Systems for Evolving Programs–Lilgp, ECJ and Grammatical Evolution , 2004, Genetic Programming and Evolvable Machines.

[69]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[70]  Christian Blum,et al.  Hybrid Metaheuristics: An Introduction , 2008, Hybrid Metaheuristics.

[71]  Marco Laumanns,et al.  SPEA2: Improving the strength pareto evolutionary algorithm , 2001 .

[72]  Michael N. Vrahatis,et al.  Recent approaches to global optimization problems through Particle Swarm Optimization , 2002, Natural Computing.

[73]  M. Resende,et al.  A probabilistic heuristic for a computationally difficult set covering problem , 1989 .

[74]  El-Ghazali Talbi,et al.  ParadisEO: A Framework for the Reusable Design of Parallel and Distributed Metaheuristics , 2004, J. Heuristics.

[75]  Lawrence Davis,et al.  Applying Adaptive Algorithms to Epistatic Domains , 1985, IJCAI.

[76]  Larry J. Eshelman,et al.  Biases in the Crossover Landscape , 1989, ICGA.

[77]  Zbigniew Michalewicz,et al.  GAVaPS-a genetic algorithm with varying population size , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[78]  Daniel Merkle,et al.  Bi-Criterion Optimization with Multi Colony Ant Algorithms , 2001, EMO.

[79]  Roger L. Wainwright,et al.  Multiple Vehicle Routing with Time and Capacity Constraints Using Genetic Algorithms , 1993, ICGA.

[80]  Mauricio G. C. Resende,et al.  Greedy Randomized Adaptive Search Procedures , 1995, J. Glob. Optim..

[81]  A. Groenwold,et al.  Comparison of linear and classical velocity update rules in particle swarm optimization: notes on scale and frame invariance , 2007 .

[82]  Nicholas J. Radcliffe,et al.  Forma Analysis and Random Respectful Recombination , 1991, ICGA.

[83]  Martin Birgmeier,et al.  Evolutionary Programming for the Optimization of Trellis-Coded Modulation Schemes , 1996, Evolutionary Programming.

[84]  Fred W. Glover,et al.  Tabu Search - Part I , 1989, INFORMS J. Comput..

[85]  César Hervás-Martínez,et al.  JCLEC: a Java framework for evolutionary computation , 2007, Soft Comput..

[86]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[87]  David B. Fogel,et al.  A Comparison of Self-Adaptation Methods for Finite State Machines in Dynamic Environments , 1996, Evolutionary Programming.

[88]  Andresen,et al.  Constant thermodynamic speed for minimizing entropy production in thermodynamic processes and simulated annealing. , 1994, Physical review. E, Statistical physics, plasmas, fluids, and related interdisciplinary topics.

[89]  David E. Goldberg,et al.  A niched Pareto genetic algorithm for multiobjective optimization , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[90]  Pedro Alexandre Fonseca Brás,et al.  A Variable Neighborhood Search Algorithm for the Leather Nesting Problem , 2012 .

[91]  Lawrence Davis,et al.  Training Feedforward Neural Networks Using Genetic Algorithms , 1989, IJCAI.

[92]  Lawrence Davis,et al.  Adapting Operator Probabilities in Genetic Algorithms , 1989, ICGA.

[93]  Fernando José Von Zuben,et al.  Learning and optimization using the clonal selection principle , 2002, IEEE Trans. Evol. Comput..

[94]  Graham Kendall,et al.  Hyperheuristics: A Tool for Rapid Prototyping in Scheduling and Optimisation , 2002, EvoWorkshops.

[95]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[96]  Hans-Paul Schwefel,et al.  Numerical Optimization of Computer Models , 1982 .

[97]  Martin J. Oates,et al.  The Pareto Envelope-Based Selection Algorithm for Multi-objective Optimisation , 2000, PPSN.

[98]  Fernando Guerrero,et al.  FOM: A Framework for Metaheuristic Optimization , 2003, International Conference on Computational Science.

[99]  L. Darrell Whitley,et al.  The GENITOR Algorithm and Selection Pressure: Why Rank-Based Allocation of Reproductive Trials is Best , 1989, ICGA.

[100]  Gilbert Syswerda,et al.  A Study of Reproduction in Generational and Steady State Genetic Algorithms , 1990, FOGA.

[101]  A. E. Eiben,et al.  Genetic algorithms with multi-parent recombination , 1994, PPSN.

[102]  Sergio Segura,et al.  Automated analysis of feature models 20 years later: A literature review , 2010, Inf. Syst..

[103]  Yu-Chi Ho,et al.  Simple Explanation of the No Free Lunch Theorem of Optimization , 2001, Proceedings of the 40th IEEE Conference on Decision and Control (Cat. No.01CH37228).

[104]  Marc Parizeau,et al.  Genericity in Evolutionary Computation Software Tools: Principles and Case-study , 2006, Int. J. Artif. Intell. Tools.

[105]  Schloss Birlinghoven Evolution in Time and Space -the Parallel Genetic Algorithm , 1991 .

[106]  Enrique Alba,et al.  MALLBA: a software library to design efficient optimisation algorithms , 2007 .

[107]  M. N. Vrahatis,et al.  Particle swarm optimization method in multiobjective problems , 2002, SAC '02.

[108]  D. J. Smith,et al.  A Study of Permutation Crossover Operators on the Traveling Salesman Problem , 1987, ICGA.

[109]  Maria Zrikem,et al.  Variable neighborhood decomposition search for the optimization of power plant cable layout , 2002, J. Intell. Manuf..

[110]  P. Suganthan Particle swarm optimiser with neighbourhood operator , 1999, Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406).

[111]  Gary B. Lamont,et al.  Multiobjective optimization with messy genetic algorithms , 2000, SAC '00.