Foundations of Artificial Intelligence April 1, 2019 — 20. Combinatorial Optimization: Introduction and Hill-Climbing Foundations of Artificial Intelligence 20.1 Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing 20.2 Example Malte Helmert 20.3 Local Search: Hill Climbing University of Basel April 1, 2019 20.4 Summary M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 1 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 2 / 25 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization Introduction previous chapters: classical state-space search ◮ find action sequence (path) from initial to goal state ◮ difficulty: large number of states (“state explosion”) 20.1 Combinatorial Optimization next chapters: combinatorial optimization � similar scenario, but: ◮ no actions or transitions ◮ don’t search for path, but for configuration (“state”) with low cost/high quality German: Zustandsraumexplosion, kombinatorische Optimierung, Konfiguration M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 3 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 4 / 25
20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization Combinatorial Optimization: Overview Combinatorial Optimization Problems Definition (combinatorial optimization problem) A combinatorial optimization problem (COP) is given by a tuple � C , S , opt , v � consisting of: ◮ a set of (solution) candidates C ◮ a set of solutions S ⊆ C Chapter overview: combinatorial optimization ◮ an objective sense opt ∈ { min , max } ◮ 20. Introduction and Hill-Climbing ◮ an objective function v : S → R ◮ 21. Advanced Techniques German: kombinatorisches Optimierungsproblem, Kandidaten, L¨ osungen, Optimierungsrichtung, Zielfunktion Remarks: ◮ “problem” here in another sense (= “instance”) than commonly used in computer science ◮ practically interesting COPs usually have too many candidates to enumerate explicitly M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 5 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 6 / 25 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization Optimal Solutions Combinatorial Optimization Definition (optimal) Let O = � C , S , opt , v � be a COP. The basic algorithmic problem we want to solve: The optimal solution quality v ∗ of O is defined as Combinatorial Optimization Find a solution of good (ideally, optimal) quality � min c ∈ S v ( c ) if opt = min v ∗ = for a combinatorial optimization problem O max c ∈ S v ( c ) if opt = max or prove that no solution exists. Good here means close to v ∗ (the closer, the better). ( v ∗ is undefined if S = ∅ .) A solution s of O is called optimal if v ( s ) = v ∗ . German: optimale L¨ osungsqualit¨ at, optimal M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 7 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 8 / 25
20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization Relevance and Hardness Search vs. Optimization ◮ There is a huge number of practically important combinatorial optimization problems. Combinatorial optimization problems have ◮ Solving these is a central focus of operations research. ◮ a search aspect (among all candidates C , ◮ Many important combinatorial optimization problems find a solution from the set S ) and are NP-complete. ◮ an optimization aspect (among all solutions in S , ◮ Most “classical” NP-complete problems can be formulated find one of high quality). as combinatorial optimization problems. � Examples: TSP , VertexCover , Clique , BinPacking , Partition German: Unternehmensforschung, NP-vollst¨ andig M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 9 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 10 / 25 20. Combinatorial Optimization: Introduction and Hill-Climbing Combinatorial Optimization 20. Combinatorial Optimization: Introduction and Hill-Climbing Example Pure Search/Optimization Problems Important special cases arise when one of the two aspects is trivial: ◮ pure search problems: 20.2 Example ◮ all solutions are of equal quality ◮ difficulty is in finding a solution at all ◮ formally: v is a constant function (e.g., constant 0); opt can be chosen arbitrarily (does not matter) ◮ pure optimization problems: ◮ all candidates are solutions ◮ difficulty is in finding solutions of high quality ◮ formally: S = C M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 11 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 12 / 25
20. Combinatorial Optimization: Introduction and Hill-Climbing Example 20. Combinatorial Optimization: Introduction and Hill-Climbing Example Example: 8 Queens Problem Example: 8 Queens Problem Problem: Place 8 queens on a chess board 8 Queens Problem such that no two queens threaten each other. How can we ◮ place 8 queens on a chess board ◮ such that no two queens threaten each other? German: 8-Damen-Problem ◮ originally proposed in 1848 ◮ variants: board size; other pieces; higher dimension There are 92 solutions, or 12 solutions if we do not count symmetric solutions (under rotation or reflection) as distinct. Is this candidate a solution? M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 13 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 14 / 25 20. Combinatorial Optimization: Introduction and Hill-Climbing Example 20. Combinatorial Optimization: Introduction and Hill-Climbing Local Search: Hill Climbing Formally: 8 Queens Problem How can we formalize the problem? idea: ◮ obviously there must be exactly one queen in each file 20.3 Local Search: Hill Climbing (“column”) ◮ describe candidates as 8-tuples, where the i -th entry denotes the rank (“row”) of the queen in the i -th file formally: O = � C , S , opt , v � with ◮ C = { 1 , . . . , 8 } 8 ◮ S = {� r 1 , . . . , r 8 � | ∀ 1 ≤ i < j ≤ 8 : r i � = r j ∧ | r i − r j | � = | i − j |} ◮ v constant, opt irrelevant (pure search problem) M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 15 / 25 M. Helmert (University of Basel) Foundations of Artificial Intelligence April 1, 2019 16 / 25
Recommend
More recommend