Sequential Model-based Optimization for General Algorithm Configuration

Similar documents
Automated Configuration of MIP solvers

Automatic Algorithm Configuration based on Local Search

Automatic Algorithm Configuration based on Local Search

Performance Prediction and Automated Tuning of Randomized and Parametric Algorithms

Problem Solving and Search in Artificial Intelligence

SpySMAC: Automated Configuration and Performance Analysis of SAT Solvers

Automated Configuration of Mixed Integer Programming Solvers

Automatic solver configuration using SMAC

Improving the local alignment of LocARNA through automated parameter optimization

arxiv: v1 [cs.ai] 7 Oct 2013

Identifying Key Algorithm Parameters and Instance Features using Forward Selection

Parallel Algorithm Configuration

Data Science meets Optimization. ODS 2017 EURO Plenary Patrick De Causmaecker EWG/DSO EURO Working Group CODeS KU Leuven/ KULAK

Parallel Algorithm Configuration

The Impact of Initial Designs on the Performance of MATSuMoTo on the Noiseless BBOB-2015 Testbed: A Preliminary Study

Hydra-MIP: Automated Algorithm Configuration and Selection for Mixed Integer Programming

Ordered Racing Protocols for Automatically Configuring Algorithms for Scaling Performance

An Empirical Study of Per-Instance Algorithm Scheduling

Fast Downward Cedalion

Automatic Algorithm Configuration

Boosting as a Metaphor for Algorithm Design

ReACT: Real-time Algorithm Configuration through Tournaments

ParamILS: An Automatic Algorithm Configuration Framework

MO-ParamILS: A Multi-objective Automatic Algorithm Configuration Framework

Efficient Parameter Importance Analysis via Ablation with Surrogates

Reliability of Computational Experiments on Virtualised Hardware

Programming by Optimisation:

Programming by Optimisation:

Automatic Configuration of Sequential Planning Portfolios

AI-Augmented Algorithms

2. Blackbox hyperparameter optimization and AutoML

A Portfolio Solver for Answer Set Programming: Preliminary Report

Meta-algorithmic techniques in SAT solving: Automated configuration, selection and beyond

Sequential Model-Based Parameter Optimization: an Experimental Investigation of Automated and Interactive Approaches

Automating Meta-algorithmic Analysis and Design

Automated Design of Metaheuristic Algorithms

Bayesian Optimization Nando de Freitas

AI-Augmented Algorithms

Cover Page. The handle holds various files of this Leiden University dissertation.

Learning to Choose Instance-Specific Macro Operators

Quantifying Homogeneity of Instance Sets for Algorithm Configuration

Programming by Optimisation:

AutoFolio: Algorithm Configuration for Algorithm Selection

Overview on Automatic Tuning of Hyperparameters

Continuous optimization algorithms for tuning real and integer parameters of swarm intelligence algorithms

Automatically Configuring Algorithms. Some recent work

Auto-WEKA: Combined Selection and Hyperparameter Optimization of Supervised Machine Learning Algorithms

Automatic Configuration of MIP Solver: Case Study in Vertical Flight Planning

Algorithm Configuration for Portfolio-based Parallel SAT-Solving

Advances in Parallel Branch and Bound

Simple algorithm portfolio for SAT

Mondrian Forests: Efficient Online Random Forests

Supplementary material for: BO-HB: Robust and Efficient Hyperparameter Optimization at Scale

Warmstarting of Model-Based Algorithm Configuration

arxiv: v2 [cs.ai] 11 Oct 2018

Efficient Hyper-parameter Optimization for NLP Applications

Slides for Data Mining by I. H. Witten and E. Frank

Designing a Portfolio of Parameter Configurations for Online Algorithm Selection

Mondrian Forests: Efficient Online Random Forests

Machine Learning for Medical Image Analysis. A. Criminisi

A Modular Multiphase Heuristic Solver for Post Enrolment Course Timetabling

Boosting Verification by Automatic Tuning of Decision Procedures

From CATS to SAT: Modeling Empirical Hardness to Understand and Solve Hard Computational Problems. Kevin Leyton Brown

Machine Learning Techniques for Data Mining

CS-E3200 Discrete Models and Search

An Evaluation of Sequential Model-Based Optimization for Expensive Blackbox Functions

Understanding the Empirical Hardness of NP-Complete Problems

From Stochastic Search to Programming by Optimisation:

Predictive Analysis: Evaluation and Experimentation. Heejun Kim

CS 229 Midterm Review

Performance Prediction and Automated Tuning of Randomized and Parametric Algorithms

An Efficient Approach for Assessing Hyperparameter Importance

Computer-Aided Design of High-Performance Algorithms

CS264: Beyond Worst-Case Analysis Lecture #20: Application-Specific Algorithm Selection

Continuous optimization algorithms for tuning real and integer parameters of swarm intelligence algorithms

Parameter Adjustment Based on Performance Prediction: Towards an Instance-Aware Problem Solver

Computer Vision Group Prof. Daniel Cremers. 8. Boosting and Bagging

Predicting the runtime of combinatorial problems CS6780: Machine Learning Project Final Report

CS6716 Pattern Recognition

Modeling and Monitoring Crop Disease in Developing Countries

Disguised Face Identification (DFI) with Facial KeyPoints using Spatial Fusion Convolutional Network. Nathan Sun CIS601

An Empirical Study of Hyperparameter Importance Across Datasets

Tuning Differential Evolution for Cheap, Medium, and Expensive Computational Budgets

The Curse of Dimensionality

C N O S N T S RA R INT N - T BA B SE S D E L O L C O A C L S E S A E RC R H

Representation, Reasoning, and Learning for a Relational Influence Diagram Applied to a Real-Time Geological Domain

FMA901F: Machine Learning Lecture 3: Linear Models for Regression. Cristian Sminchisescu

Allstate Insurance Claims Severity: A Machine Learning Approach

Trade-offs in Explanatory

Monte Carlo Tree Search PAH 2015

Supervised Learning Classification Algorithms Comparison

Benders in a nutshell Matteo Fischetti, University of Padova

Feature Selection. CE-725: Statistical Pattern Recognition Sharif University of Technology Spring Soleymani

Privacy Breaches in Privacy-Preserving Data Mining

arxiv: v1 [cs.lg] 29 May 2014

Globally Induced Forest: A Prepruning Compression Scheme

Multivariate Analysis Multivariate Calibration part 2

The digital copy of this thesis is protected by the Copyright Act 1994 (New Zealand).

Practical Machine Learning in R

arxiv: v1 [cs.lg] 23 Oct 2018

Transcription:

Sequential Model-based Optimization for General Algorithm Configuration Frank Hutter, Holger Hoos, Kevin Leyton-Brown University of British Columbia LION 5, Rome January 18, 2011

Motivation Most optimization algorithms have parameters E.g. IBM ILOG CPLEX: Preprocessing, balance of branching vs. cutting, type of cuts, etc. 76 parameters, mostly categorical Use machine learning to predict algorithm runtime, given parameter configuration used characteristics of the instance being solved Use these predictions for general algorithm configuration E.g. optimize CPLEX parameters for given benchmark set Two new methods for general algorithm configuration Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 2

Related work General algorithm configuration Racing algorithms, F-Race [Birattari et al., GECCO 02-present] Iterated Local Search, ParamILS [Hutter et al., AAAI 07 & JAIR 09] Genetic algorithms, GGA [Ansotegui et al, CP 09] Model-based optimization of algorithm parameters Sequential Parameter Optimization [Bartz-Beielstein et al., '05-present] SPO toolbox: interactive tools for parameter optimization Our own previous work SPO + : fully automated & more robust [Hutter et al., GECCO 09] TB-SPO: reduced computational overheads [Hutter et al., LION 2010] Here: extend to general algorithm configuration Sets of problem instances Many, categorical parameters Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 3

Outline 1. ROAR 2. SMAC 3. Experimental Evaluation Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 4

A key component of ROAR and SMAC Compare a configuration θ vs. the current incumbent, θ*: Racing approach: Few runs for poor θ Many runs for good θ once confident enough: update θ* θ Agressively rejects poor configurations θ Very often after a single run Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 5

ROAR: a simple method for algorithm configuration Main ROAR loop: Select a configuration θ uniformly at random Compare θ to current θ* (online, one θ at a time) Using aggressive racing from previous slide Random Online Aggressive Racing Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 6

Outline 1. ROAR 2. SMAC Sequential Model-based Algorithm Configuration 3. Experimental Evaluation Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 7

SMAC in a Nutshell Construct a model to predict algorithm performance Supervised machine learning Gaussian processes (aka kriging) Random forest model f : Θ R Use that model to select promising configurations Compare each selected configuration to incumbent Using same aggressive racing as ROAR Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 8

Fitting a Regression Tree to Data: Example param 3 {red} param 3 {blue, green} Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Fitting a Regression Tree to Data: Example In each internal node: only store split criterion used param 3 {red} param 3 {blue, green} param 2 3.5 param 2 > 3.5 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Fitting a Regression Tree to Data: Example In each internal node: only store split criterion used param 3 {red} param 3 {blue, green} param 2 3.5 param 2 > 3.5 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Fitting a Regression Tree to Data: Example In each internal node: only store split criterion used In each leaf: store mean of runtimes param 3 {red} param 3 {blue, green} param 2 3.5 param 2 > 3.5 3.7 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Fitting a Regression Tree to Data: Example In each internal node: only store split criterion used In each leaf: store mean of runtimes param 3 {red} param 3 {blue, green} param 2 3.5 3.7 param 2 > 3.5 1.65 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Fitting a Regression Tree to Data: Example In each internal node: only store split criterion used In each leaf: store mean of runtimes param 3 {red} param 3 {blue, green} param 2 3.5 3.7 param 2 > 3.5 1.65 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 9

Predictions for a new parameter configuration E.g. θ n+1 = (true, 4.7, red) Walk down tree, return mean runtime stored in leaf 1.65 param 3 {red} param 3 {blue, green} param 2 3.5 param 2 > 3.5 3.7 1.65 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 10

Random Forests: sets of regression trees Training Subsample the data T times (with repetitions) For each subsample, fit a regression tree Prediction Predict with each of the T trees Return empirical mean and variance across these T predictions Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 11

Predictions For Different Instances Runtime data now also includes instance features: Configuration θ i, runtime r i, and instance features x i = (x i,1,, x i,m ) Fit a model g: Θ R m R Predict runtime for previously unseen combinations (θ n+1,x n+1 ) feat 2 3.5 feat 2 > 3.5 param 3 {blue, green} param 3 {red} 3.7 feat 7 17 feat 7 > 17 2 1 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 12

Visualization of Runtime Across Instances and Parameter Configurations True log 10 runtime Predicted log 10 runtime Darker is faster Performance of configuration θ across instances: Average of θ s predicted row Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 13

Summary of SMAC Approach Construct model to predict algorithm performance Random forest model g : Θ R m R Marginal predictions f : Θ R Use that model to select promising configurations Standard expected improvement (EI) criterion combines predicted mean and uncertainty Find configuration with highest EI: optimization by local search Compare each selected configuration to incumbent θ* Using same aggressive racing as ROAR Save all run data use to construct models in next iteration Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 14

Outline 1. ROAR 2. SMAC 3. Experimental Evaluation Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 15

Experimental Evaluation: Setup Compared SMAC, ROAR, FocusedILS, and GGA On 17 small configuration scenarios: Local search and tree search SAT solvers SAPS and SPEAR Leading commercial MIP solver CPLEX For each configurator and each scenario 25 configuration runs with 5-hour time budget each Evaluate final configuration of each run on independent test set Over a year of CPU time Will be available as a reproducable experiment package in HAL HAL: see Chris Nell s talk tomorrow @ 17:20 Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 16

Experimental Evaluation: Results y-axis: test performance (runtime, smaller is better) S=SMAC, R=ROAR, F=FocusedILS, G=GGA Improvement (means over 25 runs) 0.93 2.25 (vs FocusedILS), 1.01 2.76 (vs GGA) Significant (never significantly worse) 11/17 (vs FocusedILS), 13/17 (vs GGA) But: SMAC s performance depends on instance features Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 17

Conclusion Generalized model-based parameter optimization: Sets of benchmark instances Many, categorical parameters Two new procedures for general algorithm configuration Random Online Aggressive Racing (ROAR) Simple yet surprisingly effective Sequential Model-based Algorithm Configuration (SMAC) State-of-the-art configuration procedure Improvements over FocusedILS and GGA Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 18

Future Work Improve algorithm configuration further Cut off poor runs early (like adaptive capping in ParamILS) Handle censored data in the models Combine model-free and model-based methods Use SMAC s models to gain scientific insights Importance of each parameter Interaction of parameters and instance features Use SMAC s models for per-instance algorithm configuration Compute instance features Pick configuration predicted to be best Hutter et al: Sequential Model-Based Optimization for General Algorithm Configuration 19