ICS-270A:Notes 6: 1 Notes 6: Constraint Satisfaction Problems ICS 270A Spring 2003.

Slides:



Advertisements
Similar presentations
Constraint Satisfaction Problems
Advertisements

Constraint Satisfaction Problems Russell and Norvig: Chapter
Constraint Satisfaction Problems
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
1 CMSC 471 Fall 2002 Class #6 – Wednesday, September 18.
ICS-271:Notes 5: 1 Lecture 5: Constraint Satisfaction Problems ICS 271 Fall 2008.
Artificial Intelligence Constraint satisfaction problems Fall 2008 professor: Luigi Ceccaroni.
Review: Constraint Satisfaction Problems How is a CSP defined? How do we solve CSPs?
4 Feb 2004CS Constraint Satisfaction1 Constraint Satisfaction Problems Chapter 5 Section 1 – 3.
Artificial Intelligence Constraint satisfaction Chapter 5, AIMA.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 1 Ryan Kinworthy CSCE Advanced Constraint Processing.
Constraint Satisfaction Problems
CS460 Fall 2013 Lecture 4 Constraint Satisfaction Problems.
Constraint Satisfaction
1 Consistency algorithms Chapter 3. Spring 2007 ICS 275A - Constraint Networks 2 Consistency methods Approximation of inference: Arc, path and i-consistecy.
Constraint Networks ( slides courtesy of Natalia Flerova, based on slides courtesy of Rina Dechter)
Constraint Satisfaction Problem Solving Chapter 5.
General search strategies: Look-ahead Chapter 5 Chapter 5.
Stochastic greedy local search Chapter 7 ICS-275 Spring 2007.
Chapter 5 Outline Formal definition of CSP CSP Examples
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 2 Ryan Kinworthy CSCE Advanced Constraint Processing.
Constraint Satisfaction Problems
Constraint Satisfaction Problems
1 Constraint Satisfaction Problems Slides by Prof WELLING.
N Model problem ä specify in terms of constraints on acceptable solutions ä define variables (denotations) and domains ä define constraints in some language.
Constraint Satisfaction Problems Chapter 6. Review Agent, Environment, State Agent as search problem Uninformed search strategies Informed (heuristic.
Constraint Satisfaction Read Chapter 5. Model Finite set of variables: X1,…Xn Variable Xi has values in domain Di. Constraints C1…Cm. A constraint specifies.
Chapter 5 Section 1 – 3 1.  Constraint Satisfaction Problems (CSP)  Backtracking search for CSPs  Local search for CSPs 2.
Constraint Networks Overview. Suggested reading Russell and Norvig. Artificial Intelligence: Modern Approach. Chapter 5.
CMSC 471 Spring 2014 Class #7 Postponed due to snow day Class #8 Tue 2/18/14 Thu 2/20/14 Constraint Satisfaction Professor Marie desJardins,
Constraint Satisfaction CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Searching by Constraint CMSC Artificial Intelligence January 24, 2008.
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
Chapter 5: Constraint Satisfaction ICS 171 Fall 2006.
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Fall 2006 Jim Martin.
1 Chapter 5 Constraint Satisfaction Problems. 2 Outlines  Constraint Satisfaction Problems  Backtracking Search for CSPs  Local Search for CSP  The.
CSC 8520 Spring Paula Matuszek CS 8520: Artificial Intelligence Search 3: Constraint Satisfaction Problems Paula Matuszek Spring, 2013.
CHAPTER 4, Part II Oliver Schulte Summer 2011 Local Search.
Chapter 5 Constraint Satisfaction Problems
Stochastic greedy local search Chapter 7 ICS-275 Spring 2009.
Constraint Satisfaction Problems (Chapter 6)
/425 Declarative Methods - J. Eisner 1 Random 3-SAT  sample uniformly from space of all possible 3- clauses  n variables, l clauses Which are.
1 Constraint Satisfaction Problems Chapter 5 Section 1 – 3 Grand Challenge:
CHAPTER 5 SECTION 1 – 3 4 Feb 2004 CS Constraint Satisfaction 1 Constraint Satisfaction Problems.
Constraint Satisfaction Problems University of Berkeley, USA
CS 175 Project in AI. 2 Lectures: ICS 180 Tuesday, Thursday Hours: am Discussion: DBH 1300 Wednesday Hours: pm Instructor: Natalia.
Constraint Propagation influenced by Dr. Rina Dechter, “Constraint Processing”
1. 2 Outline of Ch 4 Best-first search Greedy best-first search A * search Heuristics Functions Local search algorithms Hill-climbing search Simulated.
Computing & Information Sciences Kansas State University Friday, 08 Sep 2006CIS 490 / 730: Artificial Intelligence Lecture 7 of 42 Friday, 08 September.
Chapter 5 Team Teaching AI (created by Dewi Liliana) PTIIK Constraint Satisfaction Problems.
Constraint Propagation Artificial Intelligence CMSC January 22, 2002.
Lecture 5: Constraint Satisfaction Problems
1 Constraint Satisfaction Problems (CSP). Announcements Second Test Wednesday, April 27.
Cse 150, Fall 2012Gary Cottrell: Many slides borrowed from David Kriegman! Constraint Satisfaction Problems Introduction to Artificial Intelligence CSE.
CS 561, Session 8 1 This time: constraint satisfaction - Constraint Satisfaction Problems (CSP) - Backtracking search for CSPs - Local search for CSPs.
Constraint Satisfaction Problems (CSPs)
Lecture 7 Constraint Satisfaction Problems
Constraint Propagation
Notes 6: Constraint Satisfaction Problems
Constraint Satisfaction Problems
Constraints and Search
Chapter 5: General search strategies: Look-ahead
Constraint satisfaction problems
Constraint Satisfaction Problems. A Quick Overview
CS 8520: Artificial Intelligence
Constraint Satisfaction Problems
Constraint satisfaction problems
Constraint Satisfaction Problems (CSP)
Consistency algorithms
Presentation transcript:

ICS-270A:Notes 6: 1 Notes 6: Constraint Satisfaction Problems ICS 270A Spring 2003

ICS-270A:Notes 6: 2 Summary The constraint network model –Variables, domains, constraints, constraint graph, solutions Examples: –graph-coloring, 8-queen, cryptarithmetic, crossword puzzles, vision problems,scheduling, design The search space and naive backtracking, Line drawing interpretation Class scheduling The constraint graph Approximation consistency enforcing algorithms –arc-consistency, –AC-1,AC-3 Backtracking strategies –Forward-checking, dynamic variable orderings Special case: solving tree problems

ICS-270A:Notes 6: 3 AB redgreen redyellow greenred greenyellow yellowgreen yellow red Constraint Satisfaction Example: map coloring Variables - countries (A,B,C,etc.) Values - colors (e.g., red, green, yellow) Constraints: C A B D E F G

ICS-270A:Notes 6: 4 Examples Cryptarithmetic –SEND + –MORE = MONEY n - Queen Crossword puzzles Graph coloring problems Vision problems Scheduling Design

ICS-270A:Notes 6: 5 A network of binary constraints Variables – Domains – of discrete values: 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: –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.

ICS-270A:Notes 6: 6 Example 1: The 4-queen problem Q Q Q Q Q Q Q Q Place 4 Queens on a chess board of 4x4 such that no two queens reside in the same row, column or diagonal. Standard CSP formulation of the problem: Variables: each row is a variable. Q Q Q Q Domains: Constraints: There are = 6 constraints involved: 4 2 ( ) Constraint Graph :

ICS-270A:Notes 6: 7 The search tree of the 4-queen problem

ICS-270A:Notes 6: 8 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.

ICS-270A:Notes 6: 9 The search space depends on the variable orderings

ICS-270A:Notes 6: 10 Search space and the effect of ordering

ICS-270A:Notes 6: 11 Backtracking Complexity of extending a partial solution: –Complexity of consistent O(e log t), t bounds tuples, e constraints –Complexity of selectvalue O(e k log t)

ICS-270A:Notes 6: 12 A coloring problem

ICS-270A:Notes 6: 13 Backtracking search

ICS-270A:Notes 6: 14 Line drawing Interpretations

ICS-270A:Notes 6: 15 Class scheduling

ICS-270A:Notes 6: 16 The Minimal network: Example: the 4-queen problem

ICS-270A:Notes 6: 17 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-270A:Notes 6: 18 Arc-consistency 32,1, 32,1,32,1, 1  X, Y, Z, T  3 X  Y Y = Z T  Z X  T XY TZ 32,1,  =  

ICS-270A:Notes 6: 19 1  X, Y, Z, T  3 X  Y Y = Z T  Z X  T XY TZ  =   Incorporated into backtracking search Constraint programming languages powerful approach for modeling and solving combinatorial optimization problems. Arc-consistency

ICS-270A:Notes 6: 20 Arc-consistency algorithm domain of x domain of y Arc is arc-consistent if for any value of there exist a matching value of Algorithm Revise makes an arc consistent Begin 1. For each a in D i if there is no value b in D i that matches a then delete a from the D j. End. Revise is, k is the number of value in each domain.

ICS-270A:Notes 6: 21 Algorithms for arc-consistency A network is arc-consistent if all its arcs are arc-consistent AC-1 begin 1. until there is no change do 2. For every directed arc (X,Y) Revise(X,Y) end Complexity:, e is the number of arcs, n number of variables, k is the domain size. Mackworth and Freuder, 1986 showed an algorithm Mohr and Henderson, 1986:

ICS-270A:Notes 6: 22 Algorithm AC-3 Complexity Begin –1. Q <--- put all arcs in the queue in both directions –2. While Q is not empty do, –3. Select and delete an arc from the queue Q 4. Revise 5. If Revise cause 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 end Processing an arc requires O(k^2) steps The number of times each arc can be processed is 2·k Total complexity is

ICS-270A:Notes 6: 23 Example applying AC-3

ICS-270A:Notes 6: 24 Examples of AC-3

ICS-270A:Notes 6: 25 Improving backtracking Before search: (reducing the search space) –Arc-consistency, path-consistency –Variable ordering (fixed) During search : –Look-ahead schemes: value ordering, variable ordering (if not fixed) –Look-back schemes: Backjump Constraint recording Dependency-directed backtacking

ICS-270A:Notes 6: 26 Look-ahead: value orderings Intuition: –Choose value least likely to yield a dead-end –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) Full look-ahead –One pass of arc-consistency (AC-1) Partial look-ahead –directional-arc-consistency

ICS-270A:Notes 6: 27 Backtracking Complexity of extending a partial solution: –Complexity of consistent O(e log t), t bounds tuples, e constraints –Complexity of selectvalue O(e k log t)

ICS-270A:Notes 6: 28 Forward-checking Complexity of selectValue-forward-checking at each node:

ICS-270A:Notes 6: 29 A coloring problem

ICS-270A:Notes 6: 30 Forward-checking on graph coloring

ICS-270A:Notes 6: 31 Example 5-queen

ICS-270A:Notes 6: 32 Dynamic value ordering (LVO) Use constraint propagation to rank order the promise in non-rejected values. Example: look-ahead value ordering (LVO) is based of forward-checking propagation LVO uses a heuristic measure to transform this information to ranking of the values Empirical work shows the approach is cost-effective only for large and hard problems.

ICS-270A:Notes 6: 33 Look-ahead: variable ordering Dynamic search rearangement (Bitner and Reingold, 1975)(Purdon,1983): –Choose the most constrained variable –Intuition: early discovery of dead-ends

ICS-270A:Notes 6: 34 DVO

ICS-270A:Notes 6: 35 Example: DVO with forward checking (DVFC)

ICS-270A:Notes 6: 36 Algorithm DVO (DVFC)

ICS-270A:Notes 6: 37 Implementing look-aheads Cost of node generation should be reduced Solution: keep a table of viable domains for each variable and each level in the tree. Space complexity Node generation = table updating

ICS-270A:Notes 6: 38 Look-back: backjumping Backjumping: Go back to the most recently culprit. Learning: constraint-recording, no-good recording.

ICS-270A:Notes 6: 39 A coloring problem

ICS-270A:Notes 6: 40 Example of Gaschnig’s backjump

ICS-270A:Notes 6: 41 Solving trees

ICS-270A:Notes 6: 42 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):

ICS-270A:Notes 6: 43 Propositional Satisfiability If Alex goes, then Becky goes: If Chris goes, then Alex goes: Query: Is it possible that Chris goes to the party but Becky does not? Example: party problem

ICS-270A:Notes 6: 44 Look-ahead for SAT (Davis-Putnam, Logeman and Laveland, 1962)

ICS-270A:Notes 6: 45 Example of DPLL

ICS-270A:Notes 6: 46 Approximating Conditioning: Local Search Problem: complete (systematic, exhaustive) search can be intractable (O(exp(n)) worst-case) Approximation idea: explore only parts of search space Advantages: anytime answer; may “run into” a solution quicker than systematic approaches Disadvantages: may not find an exact solution even if there is one; cannot detect that a problem is unsatisfiable

ICS-270A:Notes 6: 47 Simple “greedy” search 1. Generate a random assignment to all variables 2. Repeat until no improvement made or solution found: // hill-climbing step 3. flip a variable (change its value) that increases the number of satisfied constraints Easily gets stuck at local maxima

ICS-270A:Notes 6: 48 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-270A:Notes 6: 49 WalkSAT (Selman, Kautz and Cohen, 1994) With probability p random walk – flip a variable in some unsatisfied constraint With probability 1-p perform a hill-climbing step Adds random walk to GSAT: Randomized hill-climbing often solves large and hard satisfiable problems

ICS-270A:Notes 6: 50 Other approaches Different flavors of GSAT with randomization (GenSAT by Gent and Walsh, 1993; Novelty by McAllester, Kautz and Selman, 1997) Simulated annealing Tabu search Genetic algorithms Hybrid approximations: elimination+conditioning

ICS-270A:Notes 6: 51 Iterative Improvement search A greedy algorithm for finding a solution A different search space: –States: value assignment to all the variables (e.g., an assignment of a queen in every raw) –Operators: change the assignment of one variable –An evaluation function: determines the value of a state: Number of violated constraints. Algorithm: – move from current state to the state that maximize the improvement in the evaluation function (also called metric and heuristic function). To overcome local minima, plateau, etc. do random restarts. Examples: –Traveling Salesperson –N-queen –Class scheduling –Boolean satisfiability.

ICS-270A:Notes 6: 52 Stochastic Search: Simulated annealing, Walksat, rewighting Simulated annealing: –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. Walksat (Kautz and Selman, 1992), just take random walks from time to time Breakout method (Morris, 1990): adjust the weights of the violated constraints

ICS-270A:Notes 6: 53 Summary The constraint network model –Variables, domains, constraints, constraint graph, solutions Examples: –graph-coloring, 8-queen, cryptarithmetic, crossword puzzles, vision problems,scheduling, design The search space and naive backtracking, Line drawing interpretation Class scheduling The constraint graph Approximation consistency enforcing algorithms –arc-consistency, –AC-1,AC-3 Backtracking strategies –Forward-checking, dynamic variable orderings Special case: solving tree problems Iterative improvement methods. Reading: Russel and Norvig chapter 5, Nillson ch. 11, and class notes.