AutoFolio: Algorithm Configuration for Algorithm Selection

Algorithm selection (AS) techniques — which involve choosing from a set of algorithms the one expected to solve a given problem instance most efficiently — have substantially improved the state-of-the-art in solving many prominent AI problems, such as SAT, CSP, ASP, MAXSAT, and QBF.Although several AS procedures have been introduced,not too surprisingly, none of them dominates all others across all AS scenarios.Furthermore, these procedures have parameters whose optimal values vary across AS scenarios.This holds specifically for the machine learning techniques that form the core of current AS proceduresand for their hyperparameters. Therefore, to successfully apply AS to new problems, algorithms and benchmark sets, two questions need to be answered:(i) how to select an AS approach and (ii) how to set its parameters effectively.We address both of these problems simultaneously by using automated algorithm configuration.Specifically, we demonstrate that we can use algorithm configurators to automatically configure clasp folio 2,which implements a large variety of different AS approaches and their respective parameters in a single highly parameterized algorithm framework.We demonstrate that this approach, dubbed auto folio, can significantly improve the performance of clasp folio 2 on 11 out of the 12 scenarios from the Algorithm Selection Library and leads to new state-of-the-art algorithm selectors for 8 of these scenarios.

[1]  Marius Thomas Lindauer,et al.  A Portfolio Solver for Answer Set Programming: Preliminary Report , 2011, LPNMR.

[2]  Tad Hogg,et al.  An Economics Approach to Hard Computational Problems , 1997, Science.

[3]  Marius Thomas Lindauer,et al.  claspfolio 2: Advances in Algorithm Selection for Answer Set Programming , 2014, Theory and Practice of Logic Programming.

[4]  Yuri Malitsky,et al.  Algorithm Portfolios Based on Cost-Sensitive Hierarchical Clustering , 2013, IJCAI.

[5]  Kevin Leyton-Brown,et al.  Sequential Model-Based Optimization for General Algorithm Configuration , 2011, LION.

[6]  Barry O'Sullivan,et al.  SNNAP: Solver-Based Nearest Neighbor for Algorithm Portfolios , 2013, ECML/PKDD.

[7]  Mauro Birattari,et al.  The irace Package: Iterated Race for Automatic Algorithm , 2011 .

[8]  Lars Kotthoff,et al.  LLAMA: Leveraging Learning to Automatically Manage Algorithms , 2013, ArXiv.

[9]  Yuri Malitsky,et al.  Algorithm Selection and Scheduling , 2011, CP.

[10]  Carlos Ansótegui,et al.  A Gender-Based Genetic Algorithm for the Automatic Configuration of Algorithms , 2009, CP.

[11]  Kevin Leyton-Brown,et al.  Auto-WEKA: combined selection and hyperparameter optimization of classification algorithms , 2012, KDD.

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

[13]  Gaël Varoquaux,et al.  Scikit-learn: Machine Learning in Python , 2011, J. Mach. Learn. Res..

[14]  Kevin Leyton-Brown,et al.  Hydra: Automatically Configuring Algorithms for Portfolio-Based Selection , 2010, AAAI.

[15]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

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

[17]  Marius Thomas Lindauer,et al.  aspeed: Solver scheduling via answer set programming 1 , 2014, Theory and Practice of Logic Programming.

[18]  Thomas Stützle,et al.  AClib: A Benchmark Library for Algorithm Configuration , 2014, LION.

[19]  Luca Pulina,et al.  A multi-engine approach to answer-set programming* , 2013, Theory and Practice of Logic Programming.

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

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

[22]  Yuri Malitsky,et al.  ISAC - Instance-Specific Algorithm Configuration , 2010, ECAI.

[23]  Kevin Leyton-Brown,et al.  Evaluating Component Solver Contributions to Portfolio-Based Algorithm Selectors , 2012, SAT.

[24]  F. Hutter,et al.  Hydra-MIP : Automated Algorithm Configuration and Selection for Mixed Integer Programming , 2011 .