Foundations of Artificial Intelligence

Similar documents
5.1 State-Space Search Problems

Midterm Examination. CSCI 561: Artificial Intelligence

Conversion Masters in IT (MIT) AI as Representation and Search. (Representation and Search Strategies) Lecture 002. Sandro Spina

Planning and Optimization

Outline for today s lecture Informed Search Optimal informed search: A* (AIMA 3.5.2) Creating good heuristic functions Hill Climbing

Foundations of Artificial Intelligence Introduction State of the Art Summary. classification: Board Games: Overview

Chapter 4 Heuristics & Local Search

MAS336 Computational Problem Solving. Problem 3: Eight Queens

COMBINATORIAL GAMES: MODULAR N-QUEEN

Section Notes 6. Game Theory. Applied Math 121. Week of March 22, understand the difference between pure and mixed strategies.

On the Combination of Constraint Programming and Stochastic Search: The Sudoku Case

37 Game Theory. Bebe b1 b2 b3. a Abe a a A Two-Person Zero-Sum Game

Tutorial: Constraint-Based Local Search

CSC 396 : Introduction to Artificial Intelligence

Instability of Scoring Heuristic In games with value exchange, the heuristics are very bumpy Make smoothing assumptions search for "quiesence"

Solving Problems by Searching

Heuristic Search with Pre-Computed Databases

Foundations of Artificial Intelligence

Overview. Algorithms: Simon Weber CSC173 Scheme Week 3-4 N-Queens Problem in Scheme

Foundations of AI. 3. Solving Problems by Searching. Problem-Solving Agents, Formulating Problems, Search Strategies

Latin Squares for Elementary and Middle Grades

Foundations of AI. 3. Solving Problems by Searching. Problem-Solving Agents, Formulating Problems, Search Strategies

Chapter 3 Learning in Two-Player Matrix Games

Game Theory and Randomized Algorithms

Complete and Incomplete Algorithms for the Queen Graph Coloring Problem

5.4 Imperfect, Real-Time Decisions

Artificial Intelligence. Minimax and alpha-beta pruning

Complex DNA and Good Genes for Snakes

10/5/2015. Constraint Satisfaction Problems. Example: Cryptarithmetic. Example: Map-coloring. Example: Map-coloring. Constraint Satisfaction Problems

CPS331 Lecture: Heuristic Search last revised 6/18/09

A GRASP HEURISTIC FOR THE COOPERATIVE COMMUNICATION PROBLEM IN AD HOC NETWORKS

A NUMBER THEORY APPROACH TO PROBLEM REPRESENTATION AND SOLUTION

A GRASP heuristic for the Cooperative Communication Problem in Ad Hoc Networks

Tiling Problems. This document supersedes the earlier notes posted about the tiling problem. 1 An Undecidable Problem about Tilings of the Plane

3.1 Agents. Foundations of Artificial Intelligence. 3.1 Agents. 3.2 Rationality. 3.3 Summary. Introduction: Overview. 3. Introduction: Rational Agents

Spring 06 Assignment 2: Constraint Satisfaction Problems

Local Search: Hill Climbing. When A* doesn t work AIMA 4.1. Review: Hill climbing on a surface of states. Review: Local search and optimization

Scheduling. Radek Mařík. April 28, 2015 FEE CTU, K Radek Mařík Scheduling April 28, / 48

Rating and Generating Sudoku Puzzles Based On Constraint Satisfaction Problems

Overview PROBLEM SOLVING AGENTS. Problem Solving Agents

Introduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, Connect Four 1

The Mathematics Behind Sudoku Laura Olliverrie Based off research by Bertram Felgenhauer, Ed Russel and Frazer Jarvis. Abstract

Local search algorithms

A Novel Approach to Solving N-Queens Problem

Dynamic Programming in Real Life: A Two-Person Dice Game

Urn Sampling Without Replacement: Enumerative Combinatorics In R

CS 188 Introduction to Fall 2014 Artificial Intelligence Midterm

Problem 2A Consider 101 natural numbers not exceeding 200. Prove that at least one of them is divisible by another one.

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Algorithmic Game Theory Date: 12/6/18

Local Search. Hill Climbing. Hill Climbing Diagram. Simulated Annealing. Simulated Annealing. Introduction to Artificial Intelligence

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Algorithms and Game Theory Date: 12/4/14

Two Parity Puzzles Related to Generalized Space-Filling Peano Curve Constructions and Some Beautiful Silk Scarves

An Artificially Intelligent Ludo Player

Recent Progress in the Design and Analysis of Admissible Heuristic Functions

Solving Sudoku Using Artificial Intelligence

SUDOKU Colorings of the Hexagonal Bipyramid Fractal

CS188: Section Handout 1, Uninformed Search SOLUTIONS

Adversarial Search. Human-aware Robotics. 2018/01/25 Chapter 5 in R&N 3rd Ø Announcement: Slides for this lecture are here:

Heuristics & Pattern Databases for Search Dan Weld

Algorithms for Data Structures: Search for Games. Phillip Smith 27/11/13

CPS331 Lecture: Search in Games last revised 2/16/10

Sokoban: Reversed Solving

A Quoridor-playing Agent

CS510 \ Lecture Ariel Stolerman

Spring 06 Assignment 2: Constraint Satisfaction Problems

Greedy Flipping of Pancakes and Burnt Pancakes

LANDSCAPE SMOOTHING OF NUMERICAL PERMUTATION SPACES IN GENETIC ALGORITHMS

Tetris: A Heuristic Study

Contents. MA 327/ECO 327 Introduction to Game Theory Fall 2017 Notes. 1 Wednesday, August Friday, August Monday, August 28 6

CS188: Artificial Intelligence, Fall 2011 Written 2: Games and MDP s

Simultaneous optimization of channel and power allocation for wireless cities

Problem. Operator or successor function - for any state x returns s(x), the set of states reachable from x with one action

COMP9414: Artificial Intelligence Problem Solving and Search

Announcements. CS 188: Artificial Intelligence Fall Local Search. Hill Climbing. Simulated Annealing. Hill Climbing Diagram

Constructing Simple Nonograms of Varying Difficulty

CS 4700: Artificial Intelligence

Homework Assignment #1

Artificial Intelligence Adversarial Search

Gateways Placement in Backbone Wireless Mesh Networks

Math 152: Applicable Mathematics and Computing

SF2972: Game theory. Plan. The top trading cycle (TTC) algorithm: reference

arxiv: v1 [math.co] 24 Oct 2018

CS 188: Artificial Intelligence Spring 2007

Summary Overview of Topics in Econ 30200b: Decision theory: strong and weak domination by randomized strategies, domination theorem, expected utility

Optimization Techniques for Alphabet-Constrained Signal Design

Evacuation and a Geometric Construction for Fibonacci Tableaux

Basic Solution Concepts and Computational Issues

Prof Michael Thielscher Adjunct at School of Computing & Mathematics University of Western Sydney

16.410/413 Principles of Autonomy and Decision Making

28,800 Extremely Magic 5 5 Squares Arthur Holshouser. Harold Reiter.

Game Tree Search. CSC384: Introduction to Artificial Intelligence. Generalizing Search Problem. General Games. What makes something a game?

Towards Strategic Kriegspiel Play with Opponent Modeling

Monte Carlo Tree Search and AlphaGo. Suraj Nair, Peter Kundzicz, Kevin An, Vansh Kumar

On Range of Skill. Thomas Dueholm Hansen and Peter Bro Miltersen and Troels Bjerre Sørensen Department of Computer Science University of Aarhus

Partial Information Endgame Databases

22c:145 Artificial Intelligence

An Optimal Algorithm for a Strategy Game

Adversary Search. Ref: Chapter 5

Synthesizing Interpretable Strategies for Solving Puzzle Games

Kenken For Teachers. Tom Davis January 8, Abstract

Transcription:

Foundations of Artificial Intelligence 20. Combinatorial Optimization: Introduction and Hill-Climbing Malte Helmert Universität Basel April 8, 2016

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 ) 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

Combinatorial Optimization: Overview Chapter overview: combinatorial optimization 20. Introduction and Hill-Climbing 21. Advanced Techniques

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 an objective sense opt {min, max} an objective function v : S R German: kombinatorisches Optimierungsproblem, Kandidaten, Lösungen, 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

Optimal Solutions Definition (optimal) Let O = C, S, opt, v be a COP. The optimal solution quality v of O is defined as { v min c S v(c) if opt = min = max c S v(c) if opt = max (v is undefined if S =.) A solution s of O is called optimal if v(s) = v. German: optimale Lösungsqualität, optimal

Combinatorial Optimization The basic algorithmic problem we want to solve: Combinatorial Optimization Find a solution of good (ideally, optimal) quality for a combinatorial optimization problem O or prove that no solution exists. Good here means close to v (the closer, the better).

Relevance and Hardness There is a huge number of practically important combinatorial optimization problems. Solving these is a central focus of operations research. Many important combinatorial optimization problems are NP-complete. Most classical NP-complete problems can be formulated as combinatorial optimization problems. Examples: TSP, VertexCover, Clique, BinPacking, Partition German: Unternehmensforschung, NP-vollständig

Search vs. Optimization Combinatorial optimization problems have a search aspect (among all candidates C, find a solution from the set S) and an optimization aspect (among all solutions in S, find one of high quality).

Pure Search/Optimization Problems Important special cases arise when one of the two aspects is trivial: pure search problems: 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

Example

Example: 8 Queens Problem 8 Queens Problem 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.

Example: 8 Queens Problem Problem: Place 8 queens on a chess board such that no two queens threaten each other. Is this candidate a solution?

Formally: 8 Queens Problem How can we formalize the problem? idea: obviously there must be exactly one queen in each file ( 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)

Local Search: Hill Climbing

Algorithms for Combinatorial Optimization Problems How can we algorithmically solve COPs? formulation as classical state-space search formulation as constraint network formulation as logical satisfiability problem formulation as mathematical optimization problem (LP/IP) local search

Algorithms for Combinatorial Optimization Problems How can we algorithmically solve COPs? formulation as classical state-space search previous chapters formulation as constraint network next week formulation as logical satisfiability problem later formulation as mathematical optimization problem (LP/IP) not in this course local search this chapter and next chapter

Search Methods for Combinatorial Optimization main ideas of heuristic search applicable for COPs states candidates main difference: no actions in problem definition instead, we (as algorithm designers) can choose which candidates to consider neighbors definition of neighborhood critical aspect of designing good algorithms for a given COP path to goal irrelevant to the user no path costs, parents or generating actions no search nodes needed

Local Search: Idea main ideas of local search algorithms for COPs: heuristic h estimates quality of candidates for pure optimization: often objective function v itself for pure search: often distance estimate to closest solution (as in state-space search) do not remember paths, only candidates often only one current candidate very memory-efficient (however, not complete or optimal) often initialization with random candidate iterative improvement by hill climbing

Hill Climbing Hill Climbing (for Maximization Problems) current := a random candidate repeat: next := a neighbor of current with maximum h value if h(next) h(current): return current current := next Remarks: search as walk uphill in a landscape defined by the neighborhood relation heuristic values define height of terrain analogous algorithm for minimization problems also traditionally called hill climbing even though the metaphor does not fully fit

Properties of Hill Climbing always terminates if candidate set is finite (Why?) no guarantee that result is a solution if result is a solution, it is locally optimal w.r.t. h, but no global quality guarantees

Example: 8 Queens Problem Problem: Place 8 queens on a chess board such that no two queens threaten each other. possible heuristic: no. of pairs of queens threatening each other (formalization as minimization problem) possible neighborhood: move one queen within its file 18 12 13 13 12 16 13 15 12 12 16 12 18 13 15 12 15 13 16 13 16 17 15 16 16 17 16 18 15 15 18 15 15 16 13 17 12 12 18

Performance of Hill Climbing for 8 Queens Problem problem has 8 8 17 million candidates (reminder: 92 solutions among these) after random initialization, hill climbing finds a solution in around % of the cases only around 4 steps on average!

Summary

Summary combinatorial optimization problems: find solution of good quality (objective value) among many candidates special cases: pure search problems pure optimization problems differences to state-space search: no actions, paths etc.; only state matters often solved via local search: consider one candidate (or a few) at a time; try to improve it iteratively