structure at the meta level
play

Structure at the meta-level: Observations on the structure of design - PowerPoint PPT Presentation

Structure at the meta-level: Observations on the structure of design spaces of high-performance solvers for hard combinatorial problems Holger H. Hoos BETA Lab Department of Computer Science University of British Columbia Canada based on


  1. Structure at the meta-level: Observations on the structure of design spaces of high-performance solvers for hard combinatorial problems Holger H. Hoos BETA Lab Department of Computer Science University of British Columbia Canada based on joint work with Chris Fawcett, Frank Hutter, Kevin Leyton-Brown, Thomas St¨ utzle

  2. Acknowledgements Collaborators: I Domagoj Babi´ c I Thomas Bartz-Beielstein I Sam Bayless (FH K¨ oln, Germany) I Chris Fawcett I Marco Chiarandini I Quinn Hsu (Syddansk Universitet, Denmark) I Frank Hutter I Alfonso Gerevini I Erez Karpas (Universit` a degli Studi di Brescia, Italy) I Chris Nell I Malte Helmert I Eugene Nudelman (Universit¨ at Basel, Switzerland) I Steve Ramage I Alan Hu I Gabriele R¨ oger I Kevin Leyton-Brown I Marius Schneider I Kevin Murphy I James Styles I Alessandro Saetti I Dave Tompkins (Universit` a degli Studi di Brescia, Italy) I Mauro Vallati I Thomas St¨ utzle I Lin Xu (Universit´ e Libre de Bruxelles, Belgium) Research funding: Computing resources: I NSERC, Mprime, GRAND, CFI I Arrow, BETA, ICICS clusters I IBM, Actenum Corp. I Compute Canada / WestGrid

  3. Take-home message: I exploiting structure in problem instances permits practical solution of hard problems instance-level structure I structure in space of algorithms (+ human creativity) facilitates e ff ective construction of good solvers for hard problems meta-level structure I meta-level structure may di ff er substantially from instance-level structure I PbO (rich algorithm design space + automated configuration) permits (partial) automation of building e ff ective solvers; e ffi cacy depends on exploitation of meta-level structure Holger Hoos: Structure at the Meta-Level 38

  4. application context Holger Hoos: Structure at the Meta-Level 1

  5. solver application context Holger Hoos: Structure at the Meta-Level 1

  6. application context 1 application context 2 application context 3 Holger Hoos: Structure at the Meta-Level 2

  7. solver solver solver application context 1 application context 2 application context 3 Holger Hoos: Structure at the Meta-Level 2

  8. solver[ · ] application context 1 application context 2 application context 3 Holger Hoos: Structure at the Meta-Level 2

  9. solver[ · ] solver[ p1 ] solver[ p2 ] solver solver solver solver solver[ p3 ] application context 1 application context 2 application context 3 Holger Hoos: Structure at the Meta-Level 2

  10. solver design space of solvers optimised solver application context Holger Hoos: Structure at the Meta-Level 3

  11. solver parallel planner planner portfolio instance- design space based of solvers selector optimised solver application context Holger Hoos: Structure at the Meta-Level 3

  12. parallel planner planner portfolio instance- design space based of solvers selector optimised solver application context Holger Hoos: Structure at the Meta-Level 3

  13. Programming by Optimisation (PbO) I program (large) space of programs I encourage software developers to I avoid premature commitment to design choices I seek & maintain design alternatives I automatically find performance-optimising designs for given use context(s) Holger Hoos: Structure at the Meta-Level 4

  14. Communications of the ACM, 55(2), pp. 70–80, February 2012 www.prog-by-opt.net

  15. Levels of PbO: Level 4: Make no design choice prematurely that cannot be justified compellingly. Level 3: Strive to provide design choices and alternatives. Level 2: Keep and expose design choices considered during software development. Level 1: Expose design choices hardwired into existing code (magic constants, hidden parameters, abandoned design alternatives). Level 0: Optimise settings of parameters exposed by existing software. Holger Hoos: Structure at the Meta-Level 6

  16. Success in optimising speed: Application, Design choices Speedup PbO level SAT-based software verification ( Spear ), 41 4.5–500 × 2–3 Hutter, Babi´ c, HH, Hu (2007) AI Planning (LPG), 62 3–118 × 1 Vallati, Fawcett, Gerevini, HH, Saetti (2011) Mixed integer programming (CPLEX), 76 2–52 × 0 Hutter, HH, Leyton-Brown (2010) ... and solution quality: University timetabling, 18 design choices, PbO level 2–3 new state of the art; UBC exam scheduling Fawcett, Chiarandini, HH (2009) Machine learning / Classification, 803 design choices, PbO level 0–1 outperforms specialised model selection & hyper-parameter optimisation methods from machine learning Thornton, Hutter, HH, Leyton-Brown (2012) Holger Hoos: Structure at the Meta-Level 7

  17. Outline 1. Introduction 2. Design spaces & design optimisation 3. Which choices matter? Global perspectives 4. Which choices matter? A local perspective 5. Speculation and open questions Holger Hoos: Structure at the Meta-Level 8

  18. Design optimisation Simplest case: Configuration / tuning I Standard optimisation techniques ( e.g. , CMA-ES – Hansen & Ostermeier 01; MADS – Audet & Orban 06) I Advanced sampling methods ( e.g. , REVAC, REVAC++ – Nannen & Eiben 06–09) I Racing ( e.g. , F-Race – Birattari, St¨ utzle, Paquete, Varrentrapp 02; Iterative F-Race – Balaprakash, Birattari, St¨ utzle 07) I Model-free search ( e.g. , ParamILS – Hutter, HH, St¨ utzle 07; Hutter, HH, Leyton-Brown, St¨ utzle 09) I Sequential model-based optimisation ( e.g. , SPO – Bartz-Beielstein 06; SMAC – Hutter, HH, Leyton-Brown 11–12) Holger Hoos: Structure at the Meta-Level 9

  19. Iterated Local Search (Local Search) Holger Hoos: Structure at the Meta-Level 10

  20. Iterated Local Search (Perturbation) Holger Hoos: Structure at the Meta-Level 10

  21. Iterated Local Search (Local Search) Holger Hoos: Structure at the Meta-Level 10

  22. Iterated Local Search (Local Search) Holger Hoos: Structure at the Meta-Level 10

  23. Iterated Local Search ? Selection (using Acceptance Criterion) Holger Hoos: Structure at the Meta-Level 10

  24. Iterated Local Search (Perturbation) Holger Hoos: Structure at the Meta-Level 10

  25. ParamILS I iterated local search in configuration space I initialisation: pick best of default + R random configurations I subsidiary local search: iterative first improvement, change one parameter in each step I perturbation: change s randomly chosen parameters I acceptance criterion: always select better configuration I number of runs per configuration increases over time; ensure that incumbent always has same number of runs as challengers Holger Hoos: Structure at the Meta-Level 11

  26. Sequential Model-based Optimisation e.g., Jones (1998), Bartz-Beielstein (2006) I Key idea: use predictive performance model (response surface model) to find good configurations I perform runs for selected configurations (initial design) and fit model ( e.g. , noise-free Gaussian process model) I iteratively select promising configuration, perform run and update model Holger Hoos: Structure at the Meta-Level 12

  27. Sequential Model-based Optimisation parameter response measured (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  28. Sequential Model-based Optimisation parameter response measured model (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  29. Sequential Model-based Optimisation parameter response measured model predicted best (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  30. Sequential Model-based Optimisation parameter response measured model (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  31. Sequential Model-based Optimisation parameter response measured model predicted best (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  32. Sequential Model-based Optimisation parameter response measured model (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  33. Sequential Model-based Optimisation parameter response measured model predicted best (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  34. Sequential Model-based Optimisation parameter response measured model (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  35. Sequential Model-based Optimisation parameter response measured model predicted best new incumbent found! (Initialisation) Holger Hoos: Structure at the Meta-Level 13

  36. Sequential Model-based Algorithm Configuration (SMAC) Hutter, HH, Leyton-Brown (2011) I uses random forest model to predict performance of parameter configurations I predictions based on algorithm parameters and instance features, aggregated across instances I finds promising configurations based on expected improvement criterion , using multi-start local search and random sampling I initialisation with single configuration (algorithm default or randomly chosen) Holger Hoos: Structure at the Meta-Level 14

  37. Which choices matter? Global perspectives Observation: Some design choices matter more than others depending on . . . I algorithm under consideration I given use context Knowledge which choices / parameters matter may . . . I guide algorithm development I facilitate configuration Holger Hoos: Structure at the Meta-Level 15

Recommend


More recommend