Set 5: Constraint Satisfaction Problems

Similar documents
Set 5: Constraint Satisfaction Problems

Set 5: Constraint Satisfaction Problems

Set 5: Constraint Satisfaction Problems Chapter 6 R&N

Constraint Satisfaction Problems

Constraint Satisfaction Problems

Example: Map coloring

Class2: Constraint Networks Rina Dechter

Satisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY

Outline. Best-first search

Outline. Best-first search

10/11/2017. Constraint Satisfaction Problems II. Review: CSP Representations. Heuristic 1: Most constrained variable

Stochastic greedy local search Chapter 7

Week 8: Constraint Satisfaction Problems

Kalev Kask and Rina Dechter

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1

GSAT and Local Consistency

Constraint Satisfaction Problems

Class2: Constraint Networks Rina Dechter

Lecture 6: Constraint Satisfaction Problems (CSPs)

Kalev Kask and Rina Dechter. Department of Information and Computer Science. University of California, Irvine, CA

Announcements. CS 188: Artificial Intelligence Fall Reminder: CSPs. Today. Example: 3-SAT. Example: Boolean Satisfiability.

CS 188: Artificial Intelligence Fall 2008

Constraint Satisfaction Problems

Constraint Satisfaction Problems. Chapter 6

Constraint Satisfaction Problems

Space of Search Strategies. CSE 573: Artificial Intelligence. Constraint Satisfaction. Recap: Search Problem. Example: Map-Coloring 11/30/2012

Constraint Satisfaction

CS 188: Artificial Intelligence. Recap: Search

CSE 473: Artificial Intelligence

Constraints. CSC 411: AI Fall NC State University 1 / 53. Constraints

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems

Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe

Constraint Satisfaction Problems

Module 4. Constraint satisfaction problems. Version 2 CSE IIT, Kharagpur

Constraint Satisfaction Problems

Constraint Satisfaction. AI Slides (5e) c Lin

space. We will apply the idea of enforcing local consistency to GSAT with the hope that its performance can

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 30 January, 2018

Constraint Satisfaction Problems Part 2

CS 188: Artificial Intelligence Fall 2008

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens

Today. CS 188: Artificial Intelligence Fall Example: Boolean Satisfiability. Reminder: CSPs. Example: 3-SAT. CSPs: Queries.

Class 2 Constraint Networks

CS 188: Artificial Intelligence Fall 2011

Constraint Satisfaction Problems. Chapter 6

Constraint Satisfaction Problems

Announcements. CS 188: Artificial Intelligence Spring Today. A* Review. Consistency. A* Graph Search Gone Wrong

Artificial Intelligence Constraint Satisfaction Problems

CS 188: Artificial Intelligence Spring Today

Chapter 27. Other Approaches to Reasoning and Representation

Comments about assign 1. Quick search recap. Constraint Satisfaction Problems (CSPs) Search uninformed BFS, DFS, IDS. Adversarial search

What is Search For? CSE 473: Artificial Intelligence. Example: N-Queens. Example: N-Queens. Example: Map-Coloring 4/7/17

Constraint Satisfaction Problems

Announcements. Homework 4. Project 3. Due tonight at 11:59pm. Due 3/8 at 4:00pm

CS W4701 Artificial Intelligence

Constraint satisfaction problems. CS171, Winter 2018 Introduction to Artificial Intelligence Prof. Richard Lathrop

Local Search for CSPs

Announcements. CS 188: Artificial Intelligence Fall 2010

CS 771 Artificial Intelligence. Constraint Satisfaction Problem

Constraint Satisfaction Problems (CSPs)

What is Search For? CS 188: Artificial Intelligence. Example: Map Coloring. Example: N-Queens. Example: N-Queens. Constraint Satisfaction Problems

CS 343: Artificial Intelligence

CS 4100/5100: Foundations of AI

Admin. Quick search recap. Constraint Satisfaction Problems (CSPs)! Intro Example: 8-Queens. Where should I put the queens in columns 3 and 4?

Foundations of Artificial Intelligence

A Graph-Based Method for Improving GSAT. Kalev Kask and Rina Dechter. fkkask,

Constraint Satisfaction Problems

N-Queens problem. Administrative. Local Search

Reading: Chapter 6 (3 rd ed.); Chapter 5 (2 nd ed.) For next week: Thursday: Chapter 8

Announcements. Homework 1: Search. Project 1: Search. Midterm date and time has been set:

CS 188: Artificial Intelligence Spring Announcements

General Methods and Search Algorithms

1. (15 points) Consider the crossword puzzle

Massively Parallel Seesaw Search for MAX-SAT

Administrative. Local Search!

Today. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 5. Constraint Satisfaction Problems (CSP) CSP Definition

Lecture: Iterative Search Methods

Constraint Satisfaction Problems. A Quick Overview (based on AIMA book slides)

CS 188: Artificial Intelligence Fall 2011

An Introduction to SAT Solvers

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 6 February, 2018

Constraint (Logic) Programming

CS 188: Artificial Intelligence. What is Search For? Constraint Satisfaction Problems. Constraint Satisfaction Problems

ARTIFICIAL INTELLIGENCE (CS 370D)

CS 188: Artificial Intelligence Spring Announcements

Chapter 6 Constraint Satisfaction Problems

CS 188: Artificial Intelligence

CMU-Q Lecture 7: Searching in solution space Constraint Satisfaction Problems (CSPs) Teacher: Gianni A. Di Caro

Recap: Search Problem. CSE 473: Artificial Intelligence. Space of Search Strategies. Constraint Satisfaction. Example: N-Queens 4/9/2012

Games and Adversarial Search II Alpha-Beta Pruning (AIMA 5.3)

Spezielle Themen der Künstlichen Intelligenz

6.034 Notes: Section 3.1

Constraint Satisfaction Problems. Some material from: D Lin, J You, JC Latombe

Rina Dechter. Irvine, California, USA A constraint satisfaction problem (csp) dened over a constraint network

Example: Map-Coloring. Constraint Satisfaction Problems Western Australia. Example: Map-Coloring contd. Outline. Constraint graph

CONSTRAINT SATISFACTION

CS-E3200 Discrete Models and Search

Map Colouring. Constraint Satisfaction. Map Colouring. Constraint Satisfaction

Iterative improvement algorithms. Today. Example: Travelling Salesperson Problem. Example: n-queens

Foundations of Artificial Intelligence

Transcription:

Set 5: Constraint Satisfaction Problems ICS 271 Fall 2013 Kalev Kask ICS-271:Notes 5: 1

The constraint network model Outline Variables, domains, constraints, constraint graph, solutions Examples: graph-coloring, 8-queen, cryptarithmetic, crossword puzzles, vision problems,scheduling, design The search space and naive backtracking, The constraint graph Consistency enforcing algorithms arc-consistency, AC-1,AC-3 Backtracking strategies Forward-checking, dynamic variable orderings Special case: solving tree problems Local search for CSPs ICS-271:Notes 5: 2

ICS-271:Notes 5: 3

Constraint Satisfaction Example: map coloring Variables - countries (A,B,C,etc.) Values - colors (e.g., red, green, yellow) Constraints: A B, A D, D E, e tc. A red red green green yellow yellow B green yellow red yellow green red A B C D G E F ICS-271:Notes 5: 4

ICS-271:Notes 5: 5

ICS-271:Notes 5: 6

ICS-271:Notes 5: 7

Sudoku Each row, column and major block must be all different Well posed if it has unique solution: 27 constraints ICS-271:Notes 5: 8

Sudoku Constraint propagation 3 42 6 Variables: 81 slots Domains = {1,2,3,4,5,6,7,8,9} Constraints: 27 not-equal Each row, column and major block must be all different Well posed if it has unique solution: 27 constraints ICS-271:Notes 5: 9

ICS-271:Notes 5: 10

Varieties of constraints Unary constraints involve a single variable, e.g., SA green Binary constraints involve pairs of variables, e.g., SA WA Higher-order constraints involve 3 or more variables, e.g., cryptarithmetic column constraints ICS-271:Notes 5: 11

ICS-271:Notes 5: 12

ICS-271:Notes 5: 14

Variables X 1,...,X n Domains of discrete values: Binary constraints: R ij A network of binary constraints which represent the list of allowed pairs of values, Rij is a subset of the Cartesian product:. Constraint graph: A node for each variable and an arc for each constraint Solution: D 1,...,D n D i xd j An assignment of a value from its domain to each variable such that no constraint is violated. A network of constraints represents the relation of all solutions. X 5 X 4 X 1 X 3 X 2 sol {( x 1,...,x n ) ( x i, x j ) R ij, x i D i, x j D j } ICS-271:Notes 5: 15

Q Q Q Q Example 1: The 4-queen problem Place 4 Queens on a chess board of 4x4 such that no two queens reside in the same row, column or diagonal. Q Q Domains: {1,2,3,4 }. D i Q Q Standard CSP formulation of the problem: Variables: each row is a variable. X 1 X 2 X 3 X 4 1 2 3 4 Q Q Q Q 4 Constraints: There are ( 2 ) R 12 {(1,3)(1,4)(2,4)(3,1)(4,1)(4,2)} R 13 {(1,2)(1,4)(2,1)(2,3)(3,2)(3,4)(4,1)(4,3)} R 14 {(1,2)(1,3)(2,1)(2,3)(2,4)(3,1)(3,2)(3,4)(4,2)(4,3)} R 23 {(1,3)(1,4)(2,4)(3,1)(4,1)(4,2)} R 24 {(1,2)(1,4)(2,1)(2,3)(3,2)(3,4)(4,1)(4,3)} R 34 {(1,3)(1,4)(2,4)(3,1)(4,1)(4,2)} = 6 constraints involved: Constraint Graph : X 1 X 3 X 2 X 4 ICS-271:Notes 5: 16

ICS-271:Notes 5: 17

ICS-271:Notes 5: 18

The search space Definition: given an ordering of the variables a state: is an assignment to a subset of variables that is consistent. Operators: add an assignment to the next variable that does not violate any constraint. Goal state: a consistent assignment to all the variables. X 1,...,X n ICS-271:Notes 5: 19

ICS-271:Notes 5: 20

ICS-271:Notes 5: 21

ICS-271:Notes 5: 22

ICS-271:Notes 5: 23

The effect of variable ordering z divides x, y and t ICS-271:Notes 5: 25

Backtracking Complexity of extending a partial solution: Complexity of consistent: O(e log t), t bounds #tuples, e bounds #constraints Complexity of selectvalue: O(e k log t), k bounds domain size ICS-271:Notes 5: 26

A coloring problem ICS-271:Notes 5: 27

Backtracking Search for a Solution ICS-271:Notes 5: 28

Backtracking Search for a Solution ICS-271:Notes 5: 29

Backtracking Search for All Solutions ICS-271:Notes 5: 30

Class scheduling/timetabling ICS-271:Notes 5: 32

The Minimal network: Example: the 4-queen problem ICS-271:Notes 5: 33

Approximation algorithms Arc-consistency (Waltz, 1972) Path-consistency (Montanari 1974, Mackworth 1977) I-consistency (Freuder 1982) Transform the network into smaller and smaller networks. ICS-271:Notes 5: 34

Arc-consistency 1 X, Y, Z, T 3 X Y Y = Z T Z X T X 1,2, 3 Y 1,2, 3 1, 2, 3 1,2, 3 T = Z ICS-271:Notes 5: 35

Arc-consistency 1 X, Y, Z, T 3 X Y Y = Z T Z X T X T Y 1 3 2 3 Incorporated into backtracking search Constraint programming languages powerful approach for modeling and solving combinatorial optimization problems. Z = ICS-271:Notes 5: 36

Arc-consistency algorithm domain of x domain of y Arc ( X i,x j ) is arc-consistent if for any value of X there exist a matching value of i Algorithm Revise Begin makes an arc consistent 1. For each a in D i if there is no value b in D j that is consistent with a then delete a from the D i. ( X i,x j ) End. Revise is O(k 2 ), k is the number of values in each domain. Xi ICS-271:Notes 5: 37

Algorithm AC-3 Begin End 1. Q <--- put all arcs in the queue in both directions 2. While Q is not empty do, 3. Select and delete an arc ( X i,x j ) from the queue Q 4. Revise ( X i,x j ) 5. If Revise causes a change then add to the queue all arcs that touch X i (namely (X i,x m ) and (X l,x i )). 6. end-while Complexity: Processing an arc requires O(k^2) steps The number of times each arc can be processed is 2 k Total complexity is O(ek 3 ) ICS-271:Notes 5: 38

Sudoku Constraint propagation 3 42 6 Variables: 81 slots Domains = {1,2,3,4,5,6,7,8,9} Constraints: 27 not-equal Each row, column and major block must be all different Well posed if it has unique solution: 27 constraints ICS-271:Notes 5: 39

Sudoku Path-consistency or 3-consistency 4-consistency and i-consistency in geeral Each row, column and major block must be all different Well posed if it has unique solution ICS-271:Notes 5: 40

The Effect of Consistency Level After arc-consistency z=5 and l=5 are removed After path-consistency R _zx R _zy R _zl R _xy R _xl R _yl Tighter networks yield smaller search spaces ICS-271:Notes 5: 41

Improving Backtracking O(exp(n)) Before search: (reducing the search space) Arc-consistency, path-consistency, i-consistency Variable ordering (fixed) During search: Look-ahead schemes: Value ordering/pruning (choose a least restricting value), Variable ordering (Choose the most constraining variable) Look-back schemes: Backjumping Constraint recording Dependency-directed backtracking ICS-271:Notes 5: 42

ICS-271:Notes 5: 43

Look-ahead: Variable and value orderings Intuition: Choose value least likely to yield a dead-end Choose a variable that will detect failures early Approach: apply propagation at each node in the search tree Forward-checking check each unassigned variable separately Maintaining arc-consistency (MAC) apply full arc-consistency ICS-271:Notes 5: 44

ICS-271:Notes 5: 45

ICS-271:Notes 5: 46

ICS-271:Notes 5: 47

ICS-271:Notes 5: 48

ICS-271:Notes 5: 49

ICS-271:Notes 5: 50

ICS-271:Notes 5: 51

ICS-271:Notes 5: 52

ICS-271:Notes 5: 53

ICS-271:Notes 5: 54

ICS-271:Notes 5: 55

ICS-271:Notes 5: 56

Forward-checking on Graph-coloring O( ek 2 ) FW overhead: MAC overhead: O( ek O( ek 2 3 ) ) ICS-271:Notes 5: 58

Algorithm DVO (DVFC) ICS-271:Notes 5: 59

Propositional Satisfiability Example: party problem If Alex goes, then Becky goes: If Chris goes, then Alex goes: Query: A B (or, A B) C A (or, C A) Is it possible that Chris goes to the party but Becky does not? Is propositional theory A B, C A, B, C satisfiable? ICS-271:Notes 5: 60

Unit Propagation Arc-consistency for cnfs. Involve a single clause and a single literal Example: (A,C) ICS-271:Notes 5: 61

Look-ahead for SAT (Davis-Putnam, Logeman and Laveland, 1962) ICS-271:Notes 5: 62

Look-ahead for SAT: DPLL example: (~AVB)(~CVA)(AVBVD)(C) (Davis-Putnam, Logeman and Laveland, 1962) Backtracking look-ahead with Unit propagation= Generalized arc-consistency Only enclosed area will be explored with unit-propagation ICS-271:Notes 5: 63

Summary so far Constraint Satisfaction Problems : X, D, C CSPs as search : start with {}, instantiate X i =x i until all C satisfied Backtracking search (DFS) Ordering of variables can have big effect Preprocessing by local consistency : arc(2)-consistency, k-consistency Derive implying information; make the problem tighter -> smaller search space Minimal networks During search Look ahead schemes: Variable ordering choose most constrained variable Value ordering choose a least restricting value Interleaving search and inference Forward checking MAC (Maintaining Arc Consistency) Tradeoff btwn complexity (overhead) and benefit of inference Propositional Satisfiability Unit propagation as arc-consistency for CNFs ICS-271:Notes 5: 64

The Effect of Consistency Level After arc(2)-consistency z=5 and l=5 are removed After path(3)-consistency R _zx R _zy R _zl R _xy R _xl R _yl ICS-271:Notes 5: 65

ICS-271:Notes 5: 66

ICS-271:Notes 5: 67

Backjumping: Look-back: Backjumping / Learning In deadends, go back to the most recent culprit. Learning: constraint-recording, no-good recording. good-recording ICS-271:Notes 5: 68

Backjumping (X1=r,x2=b,x3=b,x4=b,x5=g,x6=r,x7={r,b}) (r,b,b,b,g,r) conflict set of x7 (r,-,b,b,g,-) c.s. of x7 (r,-,b,-,-,-,-) minimal conflict-set Leaf deadend: (r,b,b,b,g,r) Every conflict-set is a no-good? ICS-271:Notes 5: 69

Example of Gaschnig s backjump ICS-271:Notes 5: 71

ICS-271:Notes 5: 72

ICS-271:Notes 5: 73

ICS-271:Notes 5: 74

4. Arc-consistency in tree-structured CSPs makes search backtrack-free ICS-271:Notes 5: 75

ICS-271:Notes 5: 76

The cycle-cutset method An instantiation can be viewed as blocking cycles in the graph Given an instantiation to a set of variables that cut all cycles (a cycle-cutset) the rest of the problem can be solved in linear time by a tree algorithm. Complexity (n number of variables, k the domain size and C the cycle-cutset size): O( nk C k 2 ) ICS-271:Notes 5: 77

Tree Decomposition NT NT Q WA SA SA Q SA NSW Complexity is O(n exp(w)) Where w bounds the number of Variables in a cluster. Known as the treewidth SA NSW T V ICS-271:Notes 5: 78

ICS-271:Notes 5: 79

ICS-271:Notes 5: 80

Problem Hardness ICS-271:Notes 5: 81

GSAT local search for SAT (Selman, Levesque and Mitchell, 1992) 1. For i=1 to MaxTries 2. Select a random assignment A 3. For j=1 to MaxFlips 4. if A satisfies all constraint, return A 5. else flip a variable to maximize the score 6. (number of satisfied constraints; if no variable 7. assignment increases the score, flip at random) 8. end 9. end Greatly improves hill-climbing by adding restarts and sideway moves ICS-271:Notes 5: 82

WalkSAT (Selman, Kautz and Cohen, 1994) Adds random walk to GSAT: With probability p random walk flip a variable in some unsatisfied constraint With probability 1-p perform a hill-climbing step Randomized hill-climbing often solves large and hard satisfiable problems ICS-271:Notes 5: 83

Simulated annealing: More Stochastic Search: Simulated Annealing, reweighting A method for overcoming local minimas Allows bad moves with some probability: With some probability related to a temperature parameter T the next move is picked randomly. Theoretically, with a slow enough cooling schedule, this algorithm will find the optimal solution. But so will searching randomly. Breakout method (Morris, 1990): adjust the weights of the violated constraints ICS-271:Notes 5: 84

ICS-271:Notes 5: 85