1.08k likes | 1.18k Vues
Learning and Intelligent OptimizatioN Conference. Autonomous Search. Frédéric Saubion LERIA. Learning and Intelligent OptimizatioN Conference. Based on joint works on this topic with : G. Di Tollo A. Fiahlo Y. Hamadi F. Lardeux J. Maturana E. Monfroy
E N D
Learning and Intelligent OptimizatioN Conference AutonomousSearch Frédéric Saubion LERIA
Learning and Intelligent OptimizatioN Conference Based on joint works on thistopicwith : G. Di Tollo A. Fiahlo Y. Hamadi F. Lardeux J. Maturana E. Monfroy M. Schoenauer M. Sebag
Outline Introduction Main Ideas Taxonomy of AS Focus on examples Conclusion and challenges
SolvingConstraintOptimization and SatifactionProblems Generic modeling tools for engineers (Decision) Variables Domains Constraints Introduction Mathematical Model Solver
SatifactionProblems • Mapcoloringproblem Introduction
SatifactionProblems • Mapcoloringproblem Introduction
SatifactionProblems • Mapcoloringproblem Introduction
OptimizationProblems Introduction Travelling SalesmanProblem : find a round trip across cities with minimal cost
OptimizationProblems Introduction Travelling SalesmanProblem : find a round trip across cities with minimal cost
OptimizationProblems Introduction Travelling SalesmanProblem : find a round trip across cities with minimal cost
Problems are more and more complex • Searchlandscapes are difficult to explore • Many variables • Complexconstraints Introduction
Problems are more and more complex • Searchlandscapes are difficult to explore • Exploration vs. Exploitation Balance Introduction
Devising more and more complex Solvingalgorithms Boolean Variable {0,1} • An illustrative example : solving SAT • SAT CNF instance Introduction Assignment (1 0 0) Litterals Clauses
Devising more and more complex Solvingalgorithms Introduction How to explore the binary search space (assignments) to find a solution ?
Devising more and more complex Solvingalgorithms Introduction Use Local Search
Devising more and more complex Solvingalgorithms Basic Local Search Introduction 0 1 0 1 1 Choose a random initial assignment
Devising more and more complex Solvingalgorithms Basic Local Search Introduction Compute the number of true and false clauses
Devising more and more complex Solvingalgorithms Basic Local Search Introduction 0 1 1 1 1 Move to a neighbor 0 1 0 1 1 Try to improve by changing a value (flip)
Devising more and more complex Solvingalgorithms Basic Local Search Introduction Until finding a solution
Devising more and more complex Solvingalgorithms Introduction Short overview of the story : a first greedy version GSAT • Bart Selman, Hector J. Levesque, David G. Mitchell: A New Method for Solving Hard SatisfiabilityProblems.AAAI 1992: 440-446 A first boat for binary seas
Devising more and more complex Solvingalgorithms Introduction 1 1 1 1 1 0 1 0 1 1 0 0 0 0 0 Problem : Many possible moves (many variables)
Devising more and more complex Solvingalgorithms Restrict neighborhood Introduction Select a false clause C
Devising more and more complex Solvingalgorithms Get stuck in local optima Introduction
Devising more and more complex Solvingalgorithms Add pertubations Introduction Select a false clause C With a random probability p Perform a random flip for C With (1-p) Select the variable with best IMP Perform best move If solution then stop Else go on Parameter !
Devising more and more complex Solvingalgorithms Use restarts Introduction Parameter ! False Clauses Iterations
Devising more and more complex Solvingalgorithms Introduction • WalkSAT : adding a noise and random restart • Henry A. Kautz, Bart Selman: Noise Strategies for Improving Local Search..AAAI 1994
Devising more and more complex Solvingalgorithms How to break ties ? Introduction +3 +3 0 1 0 1 1 0 0 +3
Devising more and more complex Solvingalgorithms Add more sophisticated heuristics Introduction Compute the age of the variable If the best variable is not the most recent then flip Else With a random probability p’ Perform a random flip the second best With (1-p’) Flip the best Parameter !
Devising more and more complex Solvingalgorithms • Novelty : using more strategies to perform improvements (age of the variable) • D.A. McAllester, B. Selman and H. Kautz. Evidence for invariant in local search.In Proceedings of AAAI-97, AAAI Press 1997, pages 321-326. Introduction
Devising more and more complex Solvingalgorithms Introduction • And improvements go on … • Novelty +,Novelty ++, …, TNM, Sattime…
Devising more and more complex Solvingalgorithms • Captain Jack : many indicators and thus selection strategies • Dave A. D. Tompkins, Adrian Balint, Holger H. Hoos: Captain Jack: New Variable Selection Heuristics in Local Search for SAT. SAT 2011: 302-316 Introduction
Devising more and more complex Solvingalgorithms • Adding more parameters and heuristics Introduction More flexible algorithms Fit to different instances Set parameters/heuristics values Understand the behavior
The AlgorithmSelectionProblem Main ideas • John Rice. The algorithm selection problem. Technical Report CSD-TR • 152, Computer science department, Purdue University, 1975.
The AlgorithmSelectionProblem Main ideas • John Rice. The algorithm selection problem. Technical Report CSD-TR • 152, Computer science department, Purdue University, 1975.
Related Questions Tuning the parameters Using several algorithms for solving a class of problems Main ideas
Related Questions Tuning the parameters Adjusting the parameters of one algorithm Main ideas
Main Objectives Tuning the parameters Need for more autonomous solving tools Main ideas Increasing number of works in this trend : LION, Special sessions in EA conferences (GECCO,…) …
Ideas for More AutonomousSolvers Tuning the parameters • How to use an algorithm that includes • Many parameters • Many possible heuristics or components Ideas
Ideas for More AutonomousSolvers Tuning the parameters • How to use an algorithm that include • Many parameters • Many possible heuristics or components • How to automate all these choices ? Ideas
Off-lineAutomatedTuning Tuning the parameters Run your solver on some problems Experiment automatically parameters values Ideas
Off-lineAutomatedTuning Tuning the parameters Run your solver on new problems with these parameters values Ideas
Off-lineAutomatedTuning Tuning the parameters Question : Generality of the parameters ? Ideas
On-line Parameter Control Tuning the parameters Try to react during the resolution by changing the parameter Ideas
On-line Parameter Control Tuning the parameters Example : try to increase some parameter when possible Ideas
On-line Parameter Control Tuning the parameters Question : How to react efficiently ? Ideas
Hyper Heuristics Tuning the parameters Combine basic solving heuristics Ideas
Hyper Heuristics Tuning the parameters Get new solvers Ideas
Hyper Heuristics Tuning the parameters Question : How to learn the suitable solver ? Ideas
Portfolios BasedSolvers Tuning the parameters Use different types of solvers Ideas
Portfolios BasedSolvers Tuning the parameters Learn how to select the right solver for a given problem Ideas