A General Framework Based on Machine Learning for Algorithm Selection in Constraint Satisfaction Problems

Many of the works conducted on algorithm selection strategies—methods that choose a suitable solving method for a particular problem—start from scratch since only a few investigations on reusable components of such methods are found in the literature. Additionally, researchers might unintentionally omit some implementation details when documenting the algorithm selection strategy. This makes it difficult for others to reproduce the behavior obtained by such an approach. To address these problems, we propose to rely on existing techniques from the Machine Learning realm to speed-up the generation of algorithm selection strategies while improving the modularity and reproducibility of the research. The proposed solution model is implemented on a domain-independent Machine Learning module that executes the core mechanism of the algorithm selection task. The algorithm selection strategies produced in this work are implemented and tested rapidly compared against the time it would take to build a similar approach from scratch. We produce four novel algorithm selectors based on Machine Learning for constraint satisfaction problems to verify our approach. Our data suggest that these algorithms outperform the best performing algorithm on a set of test instances. For example, the algorithm selectors Multiclass Neural Network (MNN) and Multiclass Logistic Regression (MLR), powered by a neural network and linear regression, respectively, reduced the search cost (in terms of consistency checks) of the best performing heuristic (KAPPA), on average, by 49% for the instances considered for this work.

[1]  Hugo Terashima-Marín,et al.  Selecting meta-heuristics for solving vehicle routing problems with time windows via meta-learning , 2019, Expert Syst. Appl..

[2]  Carlos A. Coello Coello,et al.  Improving hyper-heuristic performance through feature transformation , 2017, 2017 IEEE Congress on Evolutionary Computation (CEC).

[3]  Kevin Leyton-Brown,et al.  SATzilla: Portfolio-based Algorithm Selection for SAT , 2008, J. Artif. Intell. Res..

[4]  Feras Al-Obeidat,et al.  Combining Machine Learning and Metaheuristics Algorithms for Classification Method PROAFTN , 2019, Enhanced Living Environments.

[5]  Narendra Jussien,et al.  Local search with constraint propagation and conflict-based heuristics , 2000, Artif. Intell..

[6]  Alvin C. M. Kwan,et al.  An Attempt to Map the Performance of a Range of Algorithm and Heuristic Combinations , 2007 .

[7]  Susan L. Epstein,et al.  Random Subsets Support Learning a Mixture of Heuristics , 2008, Int. J. Artif. Intell. Tools.

[8]  Kate Smith-Miles,et al.  Cross-disciplinary perspectives on meta-learning for algorithm selection , 2009, CSUR.

[9]  Carlos A. Coello Coello,et al.  Enhancing Selection Hyper-Heuristics via Feature Transformations , 2018, IEEE Computational Intelligence Magazine.

[10]  Marius Thomas Lindauer,et al.  AutoFolio: An Automatically Configured Algorithm Selector , 2015, J. Artif. Intell. Res..

[11]  A. Sima Etaner-Uyar,et al.  An Ant-Based Selection Hyper-heuristic for Dynamic Environments , 2013, EvoApplications.

[12]  Hugo Terashima-Marín,et al.  Hyper-heuristics Reversed: Learning to Combine Solvers by Evolving Instances , 2019, 2019 IEEE Congress on Evolutionary Computation (CEC).

[13]  Bernd Bischl,et al.  Algorithm selection based on exploratory landscape analysis and cost-sensitive learning , 2012, GECCO '12.

[14]  Hugo Terashima-Marín,et al.  A Simulated Annealing Hyper-heuristic for Job Shop Scheduling Problems , 2019, 2019 IEEE Congress on Evolutionary Computation (CEC).

[15]  Broderick Crawford,et al.  Using Autonomous Search for Generating Good Enumeration Strategy Blends in Constraint Programming , 2012, ICCSA.

[16]  Mark S. Fox,et al.  Learning and using hyper-heuristics for variable and value ordering in constraint satisfaction problems , 2009, GECCO '09.

[17]  Barry O'Sullivan,et al.  Evolving Instance Specific Algorithm Configuration , 2021, SOCS.

[18]  A. B. Petrochenkov,et al.  Structural synthesis of complex electrotechnical equipment on the basis of the constraint satisfaction method , 2015 .

[19]  Lars Kotthoff,et al.  The algorithm selection competitions 2015 and 2017 , 2018, Artif. Intell..

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

[21]  Edmund K. Burke,et al.  Recent advances in selection hyper-heuristics , 2020, Eur. J. Oper. Res..

[22]  Andries Petrus Engelbrecht,et al.  Analysis of selection hyper-heuristics for population-based meta-heuristics in real-valued dynamic optimization , 2018, Swarm Evol. Comput..

[23]  G. Ochoa,et al.  Understanding the structure of bin packing problems through principal component analysis , 2013 .

[24]  Nasser R. Sabar,et al.  A math-hyper-heuristic approach for large-scale vehicle routing problems with time windows , 2015, 2015 IEEE Congress on Evolutionary Computation (CEC).

[25]  Hugo Terashima-Marín,et al.  Learning vector quantization for variable ordering in constraint satisfaction problems , 2013, Pattern Recognit. Lett..

[26]  John R. Rice,et al.  The Algorithm Selection Problem , 1976, Adv. Comput..

[27]  Bernd Scholz-Reiter,et al.  Hyper-heuristic Evolution of Dispatching Rules: A Comparison of Rule Representations , 2015, Evolutionary Computation.

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

[29]  Philippe Refalo,et al.  Impact-Based Search Strategies for Constraint Programming , 2004, CP.

[30]  Zalilah Abd Aziz Ant Colony Hyper-heuristics for Travelling Salesman Problem☆ , 2015 .

[31]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[32]  Graham Kendall,et al.  Competitive travelling salesmen problem: A hyper-heuristic approach , 2013, J. Oper. Res. Soc..

[33]  Sanja Petrovic,et al.  HyFlex: A Benchmark Framework for Cross-Domain Heuristic Search , 2011, EvoCOP.

[34]  Steven Minton,et al.  Minimizing Conflicts: A Heuristic Repair Method for Constraint Satisfaction and Scheduling Problems , 1992, Artif. Intell..

[35]  Pascal Van Hentenryck,et al.  Activity-Based Search for Black-Box Constraint Programming Solvers , 2011, CPAIOR.

[36]  Hugo Terashima-Marín,et al.  Experimental Matching of Instances to Heuristics for Constraint Satisfaction Problems , 2016, Comput. Intell. Neurosci..

[37]  Hugo Terashima-Marín,et al.  Combine and conquer: an evolutionary hyper-heuristic approach for solving constraint satisfaction problems , 2016, Artificial Intelligence Review.

[38]  Yuri Malitsky,et al.  Non-Model-Based Algorithm Portfolios for SAT , 2011, SAT.

[39]  Nelishia Pillay,et al.  Hyper-Heuristics: Theory and Applications , 2018, Natural Computing Series.

[40]  Bernd Bischl,et al.  ASlib: A benchmark library for algorithm selection , 2015, Artif. Intell..

[41]  Kate Smith-Miles,et al.  Measuring instance difficulty for combinatorial optimization problems , 2012, Comput. Oper. Res..

[42]  Lars Kotthoff,et al.  Algorithm Selection for Combinatorial Search Problems: A Survey , 2012, AI Mag..

[43]  David E. Goldberg,et al.  Genetic algorithms and Machine Learning , 1988, Machine Learning.

[44]  Kristin L. Sainani,et al.  Logistic Regression , 2014, PM & R : the journal of injury, function, and rehabilitation.