43
14. Constraint Satisfaction Problems CS227 Spring 2011

14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

14.

Constraint Satisfaction Problems

CS227Spring 2011

Page 2: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Outline

• Example of a Constraint Satisfaction Problem (CSP)• Representing a CSP• Solving a CSP

– Backtracking searchBacktracking search– Problem structure and decomposition

• Constraint logic programming• Summary• Summary

Page 3: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 4: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 5: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 6: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 7: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 8: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 9: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 10: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Outline

• Example of a Constraint Satisfaction Problem (CSP)• Representing a CSP• Solving a CSP

– Backtracking searchBacktracking search– Problem structure and decomposition

• Constraint logic programming• Summary• Summary

Page 11: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 12: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 13: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 14: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 15: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 16: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 17: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 18: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 19: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 20: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 21: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 22: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 23: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 24: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 25: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 26: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 27: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 28: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 29: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 30: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 31: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 32: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Outline

• Example of a Constraint Satisfaction Problem (CSP)• Representing a CSP• Solving a CSP

– Backtracking searchBacktracking search– Problem structure and decomposition

• Constraint logic programming• Summary• Summary

Page 33: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 34: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 35: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 36: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 37: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 38: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Outline

• Example of a Constraint Satisfaction Problem (CSP)• Representing a CSP• Solving a CSP

– Backtracking searchBacktracking search– Problem structure and decomposition

• Constraint logic programming• Summary• Summary

Page 39: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Constraint Logic Programmingg g g

• A constraint logic program is a logic program that contains constraints in the body of clauses

A(X,Y) :-X+Y>0, B(X)B(X), C(Y)

Constraints are stored in a constraint store and evaluated using a CSP technique.

Page 40: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Example Applicationp pp

• Meeting scheduling video

Page 41: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Meeting Scheduling Constraintsg g

• The meeting room needs to be able to hold at least n people• The meeting room needs to have a projector (or sound equipment or

similar)• The appointment may be recurring and need to be at the same pp y g

time/location each week• I want at least 1 hour between appointments• If we are teleconferencing with our European office meetings needIf we are teleconferencing with our European office, meetings need

to be scheduled at an appropriate time• Bob will only attend appointments if Gary is not present• I will only attend a maximum of 3 appointments in a given day• I will only attend a maximum of 3 appointments in a given day• I need to meet before a deadline• I prefer meetings near my residence/office

Page 42: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic
Page 43: 14. Constraint Satisfaction Problemsweb.stanford.edu/class/cs227/Lectures/lec14.pdf · 2011. 5. 13. · Constraint Loggg gic Programming • A constraint logic program is a logic

Readingg

• Chapter on Constraint Satisfaction Problems in Russell and Norvig – Chapter 5 in 2nd edition– Chapter 6 in 3rd edition