SlideShare a Scribd company logo
CS 3243 - Constraint Satisfaction
1
CH A PT E R 5
S E C T I O N 1 – 3
4 Feb 2004
Constraint Satisfaction
Problems
CS 3243 - Constraint Satisfaction
2
Outline
4 Feb 2004
 Constraint Satisfaction Problems (CSP)
 Backtracking search for CSPs
 Local search for CSPs
CS 3243 - Constraint Satisfaction
3
Constraint satisfaction problems (CSPs)
4 Feb 2004
 Standard search problem:
 state is a "black box“ – any data structure that supports successor
function, heuristic function, and goal test
 CSP:
 state is defined by variables Xi with values from domain Di
 goal test is a set of constraints specifying allowable combinations of
values for subsets of variables
 Simple example of a formal representation language
 Allows useful general-purpose algorithms with more power
than standard search algorithms
CS 3243 - Constraint Satisfaction
4
Example: Map-Coloring
4 Feb 2004
 Variables WA, NT, Q, NSW, V, SA, T
 Domains Di = {red,green,blue}
 Constraints: adjacent regions must have different colors
 e.g., WA ≠ NT, or (WA,NT) in {(red,green),(red,blue),(green,red), (green,blue),
(blue,red),(blue,green)}
CS 3243 - Constraint Satisfaction
5
Example: Map-Coloring
4 Feb 2004
Solutions are complete and consistent assignments,
e.g., WA = red, NT = green,Q = red,NSW = green,V =
red,SA = blue,T = green
CS 3243 - Constraint Satisfaction
6
Constraint graph
4 Feb 2004
 Binary CSP: each constraint relates two variables
 Constraint graph: nodes are variables, arcs are constraints
CS 3243 - Constraint Satisfaction
7
Varieties of CSPs
4 Feb 2004
 Discrete variables
 finite domains:
 n variables, domain size d  O(dn
) complete assignments
 e.g., Boolean CSPs, incl.~Boolean satisfiability (NP-complete)
 infinite domains:
 integers, strings, etc.
 e.g., job scheduling, variables are start/end days for each job
 need a constraint language, e.g., StartJob1 + 5 ≤ StartJob3
 Continuous variables
 e.g., start/end times for Hubble Space Telescope observations
 linear constraints solvable in polynomial time by linear
programming
CS 3243 - Constraint Satisfaction
8
Varieties of constraints
4 Feb 2004
 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
CS 3243 - Constraint Satisfaction
9
Example: Cryptarithmetic
4 Feb 2004
 Variables: F T U W R O X1 X2 X3
 Domains: {0,1,2,3,4,5,6,7,8,9}
 Constraints: Alldiff (F,T,U,W,R,O)
 O + O = R + 10 · X1
 X1 + W + W = U + 10 · X2
 X2 + T + T = O + 10 · X3
 X3 = F, T ≠ 0, F ≠ 0
CS 3243 - Constraint Satisfaction
10
Real-world CSPs
4 Feb 2004
 Assignment problems
 e.g., who teaches what class
 Timetabling problems
 e.g., which class is offered when and where?
 Transportation scheduling
 Factory scheduling
 Notice that many real-world problems involve real-
valued variables
CS 3243 - Constraint Satisfaction
11
Standard search formulation (incremental)
4 Feb 2004
Let's start with the straightforward approach, then fix it
States are defined by the values assigned so far
 Initial state: the empty assignment { }
 Successor function: assign a value to an unassigned variable that does
not conflict with current assignment
 fail if no legal assignments
 Goal test: the current assignment is complete
1. This is the same for all CSPs
2. Every solution appears at depth n with n variables
 use depth-first search
3. Path is irrelevant, so can also use complete-state formulation
4. b = (n - l )d at depth l, hence n! · dn
leaves
CS 3243 - Constraint Satisfaction
12
Backtracking search
4 Feb 2004
 Variable assignments are commutative}, i.e.,
[ WA = red then NT = green ] same as [ NT = green
then WA = red ]
 Only need to consider assignments to a single
variable at each node
 b = d and there are dn
leaves
 Depth-first search for CSPs with single-variable
assignments is called backtracking search
 Backtracking search is the basic uninformed
algorithm for CSP
 Can solve n-queens for n ≈ 25
CS 3243 - Constraint Satisfaction
13
Backtracking search
4 Feb 2004
CS 3243 - Constraint Satisfaction
14
Backtracking example
4 Feb 2004
CS 3243 - Constraint Satisfaction
15
Backtracking example
4 Feb 2004
CS 3243 - Constraint Satisfaction
16
Backtracking example
4 Feb 2004
CS 3243 - Constraint Satisfaction
17
Backtracking example
4 Feb 2004
CS 3243 - Constraint Satisfaction
18
Improving backtracking efficiency
4 Feb 2004
 General-purpose methods can give huge gains in
speed:
 Which variable should be assigned next?
 In what order should its values be tried?
 Can we detect inevitable failure early?
CS 3243 - Constraint Satisfaction
19
Most constrained variable
4 Feb 2004
 Most constrained variable:
 choose the variable with the fewest legal values
 a.k.a. minimum remaining values (MRV) heuristic
CS 3243 - Constraint Satisfaction
20
Most constraining variable
4 Feb 2004
 Tie-breaker among most constrained variables
 Most constraining variable:
 choose the variable with the most constraints on remaining
variables
CS 3243 - Constraint Satisfaction
21
Least constraining value
4 Feb 2004
 Given a variable, choose the least constraining value:
 the one that rules out the fewest values in the remaining
variables
 Combining these heuristics makes 1000 queens
feasible
CS 3243 - Constraint Satisfaction
22
Forward checking
4 Feb 2004
 Idea:
 Keep track of remaining legal values for unassigned variables
 Terminate search when any variable has no legal values
CS 3243 - Constraint Satisfaction
23
Forward checking
4 Feb 2004
 Idea:
 Keep track of remaining legal values for unassigned variables
 Terminate search when any variable has no legal values
CS 3243 - Constraint Satisfaction
24
Forward checking
4 Feb 2004
 Idea:
 Keep track of remaining legal values for unassigned variables
 Terminate search when any variable has no legal values

CS 3243 - Constraint Satisfaction
25
Forward checking
4 Feb 2004
 Idea:
 Keep track of remaining legal values for unassigned variables
 Terminate search when any variable has no legal values

CS 3243 - Constraint Satisfaction
26
Constraint propagation
4 Feb 2004
 Forward checking propagates information from assigned to
unassigned variables, but doesn't provide early detection for all
failures:
 NT and SA cannot both be blue!
 Constraint propagation repeatedly enforces constraints locally
CS 3243 - Constraint Satisfaction
27
Arc consistency
4 Feb 2004
 Simplest form of propagation makes each arc consistent
 X Y is consistent iff
 for every value x of X there is some allowed y
CS 3243 - Constraint Satisfaction
28
Arc consistency
4 Feb 2004
 Simplest form of propagation makes each arc consistent
 X Y is consistent iff
 for every value x of X there is some allowed y
CS 3243 - Constraint Satisfaction
29
Arc consistency
4 Feb 2004
 Simplest form of propagation makes each arc consistent
 X Y is consistent iff
 for every value x of X there is some allowed y
 If X loses a value, neighbors of X need to be rechecked
CS 3243 - Constraint Satisfaction
30
Arc consistency
4 Feb 2004
 Simplest form of propagation makes each arc consistent
 X Y is consistent iff
 for every value x of X there is some allowed y
 If X loses a value, neighbors of X need to be rechecked
 Arc consistency detects failure earlier than forward checking
 Can be run as a preprocessor or after each assignment
CS 3243 - Constraint Satisfaction
31
Arc consistency algorithm AC-3
4 Feb 2004
 Time complexity: O(n2
d3
)
CS 3243 - Constraint Satisfaction
32
Local search for CSPs
4 Feb 2004
 Hill-climbing, simulated annealing typically work with
"complete" states, i.e., all variables assigned
 To apply to CSPs:
 allow states with unsatisfied constraints
 operators reassign variable values
 Variable selection: randomly select any conflicted variable
 Value selection by min-conflicts heuristic:
 choose value that violates the fewest constraints
 i.e., hill-climb with h(n) = total number of violated constraints
CS 3243 - Constraint Satisfaction
33
Example: 4-Queens
4 Feb 2004
 States: 4 queens in 4 columns (44
= 256 states)
 Actions: move queen in column
 Goal test: no attacks
 Evaluation: h(n) = number of attacks
 Given random initial state, can solve n-queens in almost
constant time for arbitrary n with high probability (e.g., n =
10,000,000)
CS 3243 - Constraint Satisfaction
34
Summary
4 Feb 2004
 CSPs are a special kind of problem:
 states defined by values of a fixed set of variables
 goal test defined by constraints on variable values
 Backtracking = depth-first search with one variable
assigned per node
 Variable ordering and value selection heuristics help
significantly
 Forward checking prevents assignments that guarantee
later failure
 Constraint propagation (e.g., arc consistency) does
additional work to constrain values and detect
inconsistencies
 Iterative min-conflicts is usually effective in practice

More Related Content

PPT
constrain satisfaction problem in artificial intelligence
PPT
Constraint Satisfaction in Artifical intelligennce.ppt
PPT
A PPT on Constraint Satisfaction problems
PDF
Artificial Intelligence JNTUH Syllabusss
PPTX
Artificial Intellligence Constraint Satisfaction Problem.pptx
PPT
Lect6 csp
PPTX
CS415 - Lecture 11 - CSPs I.pptx
PPT
Constraint_Satisfaction problem based_slides.ppt
constrain satisfaction problem in artificial intelligence
Constraint Satisfaction in Artifical intelligennce.ppt
A PPT on Constraint Satisfaction problems
Artificial Intelligence JNTUH Syllabusss
Artificial Intellligence Constraint Satisfaction Problem.pptx
Lect6 csp
CS415 - Lecture 11 - CSPs I.pptx
Constraint_Satisfaction problem based_slides.ppt

Similar to Constraint Satisfaction problem00456.ppt (20)

PPT
CSP this is csp csp csp cspc p csp cp.ppt
PPT
Constraint Satisfaction problem in AI.ppt
PPT
constraintSat.ppt
PPT
presentation related to artificial intelligence.ppt
PPT
presentation on artificial intelligence autosaved
PPTX
lecture9 constraint problem and path finding
PPTX
CH6,7.pptx
PPT
05-constraint-satisfaction-problems-(us).ppt
PPT
ConstraintSatisfaction.ppt
PPT
csps.ppt
PDF
Ch5_Constraint Satisfaction Problems_Lecture 1.pdf
PPTX
Constraint Satisfaction Problems_ AI2025
PPT
5 csp
PPTX
AI3391 Artificial Intelligence Session 21 CSP.pptx
PPT
Cs ps, sat, fol resolution strategies
PPT
CSP UNIT 2 AIML.ppt
PPTX
Constraint satisfaction problems (csp)
PDF
nlp2.pdf
PPT
modeling.ppt
PPTX
22PCOAM11 Unit 2: Session 10 CSP map coloring.pptx
CSP this is csp csp csp cspc p csp cp.ppt
Constraint Satisfaction problem in AI.ppt
constraintSat.ppt
presentation related to artificial intelligence.ppt
presentation on artificial intelligence autosaved
lecture9 constraint problem and path finding
CH6,7.pptx
05-constraint-satisfaction-problems-(us).ppt
ConstraintSatisfaction.ppt
csps.ppt
Ch5_Constraint Satisfaction Problems_Lecture 1.pdf
Constraint Satisfaction Problems_ AI2025
5 csp
AI3391 Artificial Intelligence Session 21 CSP.pptx
Cs ps, sat, fol resolution strategies
CSP UNIT 2 AIML.ppt
Constraint satisfaction problems (csp)
nlp2.pdf
modeling.ppt
22PCOAM11 Unit 2: Session 10 CSP map coloring.pptx
Ad

Recently uploaded (20)

PDF
Well-logging-methods_new................
PDF
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PPT
Project quality management in manufacturing
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PPT
Mechanical Engineering MATERIALS Selection
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Construction Project Organization Group 2.pptx
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Artificial Intelligence
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPTX
Foundation to blockchain - A guide to Blockchain Tech
Well-logging-methods_new................
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
Automation-in-Manufacturing-Chapter-Introduction.pdf
Embodied AI: Ushering in the Next Era of Intelligent Systems
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
Project quality management in manufacturing
III.4.1.2_The_Space_Environment.p pdffdf
Mechanical Engineering MATERIALS Selection
bas. eng. economics group 4 presentation 1.pptx
Construction Project Organization Group 2.pptx
CYBER-CRIMES AND SECURITY A guide to understanding
Model Code of Practice - Construction Work - 21102022 .pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Operating System & Kernel Study Guide-1 - converted.pdf
Internet of Things (IOT) - A guide to understanding
OOP with Java - Java Introduction (Basics)
Safety Seminar civil to be ensured for safe working.
Artificial Intelligence
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
Foundation to blockchain - A guide to Blockchain Tech
Ad

Constraint Satisfaction problem00456.ppt

  • 1. CS 3243 - Constraint Satisfaction 1 CH A PT E R 5 S E C T I O N 1 – 3 4 Feb 2004 Constraint Satisfaction Problems
  • 2. CS 3243 - Constraint Satisfaction 2 Outline 4 Feb 2004  Constraint Satisfaction Problems (CSP)  Backtracking search for CSPs  Local search for CSPs
  • 3. CS 3243 - Constraint Satisfaction 3 Constraint satisfaction problems (CSPs) 4 Feb 2004  Standard search problem:  state is a "black box“ – any data structure that supports successor function, heuristic function, and goal test  CSP:  state is defined by variables Xi with values from domain Di  goal test is a set of constraints specifying allowable combinations of values for subsets of variables  Simple example of a formal representation language  Allows useful general-purpose algorithms with more power than standard search algorithms
  • 4. CS 3243 - Constraint Satisfaction 4 Example: Map-Coloring 4 Feb 2004  Variables WA, NT, Q, NSW, V, SA, T  Domains Di = {red,green,blue}  Constraints: adjacent regions must have different colors  e.g., WA ≠ NT, or (WA,NT) in {(red,green),(red,blue),(green,red), (green,blue), (blue,red),(blue,green)}
  • 5. CS 3243 - Constraint Satisfaction 5 Example: Map-Coloring 4 Feb 2004 Solutions are complete and consistent assignments, e.g., WA = red, NT = green,Q = red,NSW = green,V = red,SA = blue,T = green
  • 6. CS 3243 - Constraint Satisfaction 6 Constraint graph 4 Feb 2004  Binary CSP: each constraint relates two variables  Constraint graph: nodes are variables, arcs are constraints
  • 7. CS 3243 - Constraint Satisfaction 7 Varieties of CSPs 4 Feb 2004  Discrete variables  finite domains:  n variables, domain size d  O(dn ) complete assignments  e.g., Boolean CSPs, incl.~Boolean satisfiability (NP-complete)  infinite domains:  integers, strings, etc.  e.g., job scheduling, variables are start/end days for each job  need a constraint language, e.g., StartJob1 + 5 ≤ StartJob3  Continuous variables  e.g., start/end times for Hubble Space Telescope observations  linear constraints solvable in polynomial time by linear programming
  • 8. CS 3243 - Constraint Satisfaction 8 Varieties of constraints 4 Feb 2004  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
  • 9. CS 3243 - Constraint Satisfaction 9 Example: Cryptarithmetic 4 Feb 2004  Variables: F T U W R O X1 X2 X3  Domains: {0,1,2,3,4,5,6,7,8,9}  Constraints: Alldiff (F,T,U,W,R,O)  O + O = R + 10 · X1  X1 + W + W = U + 10 · X2  X2 + T + T = O + 10 · X3  X3 = F, T ≠ 0, F ≠ 0
  • 10. CS 3243 - Constraint Satisfaction 10 Real-world CSPs 4 Feb 2004  Assignment problems  e.g., who teaches what class  Timetabling problems  e.g., which class is offered when and where?  Transportation scheduling  Factory scheduling  Notice that many real-world problems involve real- valued variables
  • 11. CS 3243 - Constraint Satisfaction 11 Standard search formulation (incremental) 4 Feb 2004 Let's start with the straightforward approach, then fix it States are defined by the values assigned so far  Initial state: the empty assignment { }  Successor function: assign a value to an unassigned variable that does not conflict with current assignment  fail if no legal assignments  Goal test: the current assignment is complete 1. This is the same for all CSPs 2. Every solution appears at depth n with n variables  use depth-first search 3. Path is irrelevant, so can also use complete-state formulation 4. b = (n - l )d at depth l, hence n! · dn leaves
  • 12. CS 3243 - Constraint Satisfaction 12 Backtracking search 4 Feb 2004  Variable assignments are commutative}, i.e., [ WA = red then NT = green ] same as [ NT = green then WA = red ]  Only need to consider assignments to a single variable at each node  b = d and there are dn leaves  Depth-first search for CSPs with single-variable assignments is called backtracking search  Backtracking search is the basic uninformed algorithm for CSP  Can solve n-queens for n ≈ 25
  • 13. CS 3243 - Constraint Satisfaction 13 Backtracking search 4 Feb 2004
  • 14. CS 3243 - Constraint Satisfaction 14 Backtracking example 4 Feb 2004
  • 15. CS 3243 - Constraint Satisfaction 15 Backtracking example 4 Feb 2004
  • 16. CS 3243 - Constraint Satisfaction 16 Backtracking example 4 Feb 2004
  • 17. CS 3243 - Constraint Satisfaction 17 Backtracking example 4 Feb 2004
  • 18. CS 3243 - Constraint Satisfaction 18 Improving backtracking efficiency 4 Feb 2004  General-purpose methods can give huge gains in speed:  Which variable should be assigned next?  In what order should its values be tried?  Can we detect inevitable failure early?
  • 19. CS 3243 - Constraint Satisfaction 19 Most constrained variable 4 Feb 2004  Most constrained variable:  choose the variable with the fewest legal values  a.k.a. minimum remaining values (MRV) heuristic
  • 20. CS 3243 - Constraint Satisfaction 20 Most constraining variable 4 Feb 2004  Tie-breaker among most constrained variables  Most constraining variable:  choose the variable with the most constraints on remaining variables
  • 21. CS 3243 - Constraint Satisfaction 21 Least constraining value 4 Feb 2004  Given a variable, choose the least constraining value:  the one that rules out the fewest values in the remaining variables  Combining these heuristics makes 1000 queens feasible
  • 22. CS 3243 - Constraint Satisfaction 22 Forward checking 4 Feb 2004  Idea:  Keep track of remaining legal values for unassigned variables  Terminate search when any variable has no legal values
  • 23. CS 3243 - Constraint Satisfaction 23 Forward checking 4 Feb 2004  Idea:  Keep track of remaining legal values for unassigned variables  Terminate search when any variable has no legal values
  • 24. CS 3243 - Constraint Satisfaction 24 Forward checking 4 Feb 2004  Idea:  Keep track of remaining legal values for unassigned variables  Terminate search when any variable has no legal values 
  • 25. CS 3243 - Constraint Satisfaction 25 Forward checking 4 Feb 2004  Idea:  Keep track of remaining legal values for unassigned variables  Terminate search when any variable has no legal values 
  • 26. CS 3243 - Constraint Satisfaction 26 Constraint propagation 4 Feb 2004  Forward checking propagates information from assigned to unassigned variables, but doesn't provide early detection for all failures:  NT and SA cannot both be blue!  Constraint propagation repeatedly enforces constraints locally
  • 27. CS 3243 - Constraint Satisfaction 27 Arc consistency 4 Feb 2004  Simplest form of propagation makes each arc consistent  X Y is consistent iff  for every value x of X there is some allowed y
  • 28. CS 3243 - Constraint Satisfaction 28 Arc consistency 4 Feb 2004  Simplest form of propagation makes each arc consistent  X Y is consistent iff  for every value x of X there is some allowed y
  • 29. CS 3243 - Constraint Satisfaction 29 Arc consistency 4 Feb 2004  Simplest form of propagation makes each arc consistent  X Y is consistent iff  for every value x of X there is some allowed y  If X loses a value, neighbors of X need to be rechecked
  • 30. CS 3243 - Constraint Satisfaction 30 Arc consistency 4 Feb 2004  Simplest form of propagation makes each arc consistent  X Y is consistent iff  for every value x of X there is some allowed y  If X loses a value, neighbors of X need to be rechecked  Arc consistency detects failure earlier than forward checking  Can be run as a preprocessor or after each assignment
  • 31. CS 3243 - Constraint Satisfaction 31 Arc consistency algorithm AC-3 4 Feb 2004  Time complexity: O(n2 d3 )
  • 32. CS 3243 - Constraint Satisfaction 32 Local search for CSPs 4 Feb 2004  Hill-climbing, simulated annealing typically work with "complete" states, i.e., all variables assigned  To apply to CSPs:  allow states with unsatisfied constraints  operators reassign variable values  Variable selection: randomly select any conflicted variable  Value selection by min-conflicts heuristic:  choose value that violates the fewest constraints  i.e., hill-climb with h(n) = total number of violated constraints
  • 33. CS 3243 - Constraint Satisfaction 33 Example: 4-Queens 4 Feb 2004  States: 4 queens in 4 columns (44 = 256 states)  Actions: move queen in column  Goal test: no attacks  Evaluation: h(n) = number of attacks  Given random initial state, can solve n-queens in almost constant time for arbitrary n with high probability (e.g., n = 10,000,000)
  • 34. CS 3243 - Constraint Satisfaction 34 Summary 4 Feb 2004  CSPs are a special kind of problem:  states defined by values of a fixed set of variables  goal test defined by constraints on variable values  Backtracking = depth-first search with one variable assigned per node  Variable ordering and value selection heuristics help significantly  Forward checking prevents assignments that guarantee later failure  Constraint propagation (e.g., arc consistency) does additional work to constrain values and detect inconsistencies  Iterative min-conflicts is usually effective in practice