constraint satisfaction n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Constraint Satisfaction PowerPoint Presentation
Download Presentation
Constraint Satisfaction

Loading in 2 Seconds...

play fullscreen
1 / 33

Constraint Satisfaction - PowerPoint PPT Presentation


  • 89 Views
  • Uploaded on

Constraint Satisfaction. The problem is defined through a set of variables and a set of domains variables can have possible values specified by the problem constraints describe allowable combinations of values for a subset of the variables State in a CSP

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

Constraint Satisfaction


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
constraint satisfaction
Constraint Satisfaction
  • The problem is defined through a set of variables and a set of domains
    • variables can have possible values specified by the problem
    • constraints describe allowable combinations of values for a subset of the variables
  • State in a CSP
    • defined by an assignment of values to some or all variables
  • Solution to a CSP
    • must assign values to all variables
    • must satisfy all constraints
csp approach
CSP Approach
  • The goal test is decomposed into a set of constraints on variables
    • checks for violation of constraints before new nodes are generated
      • must backtrack if constraints are violated
    • forward-checking looks ahead to detect unsolvability
      • based on the current values of constraint variables
csp example map coloring
CSP Example: Map Coloring
  • Color a map with three colors so that adjacent countries have different colors

variables:

A, B, C, D, E, F, G

A

C

G

values:

{red, green, blue}

?

B

?

D

constraints:

“no neighboring regions

have the same color”

F

?

E

?

?

constraint graph
Constraint Graph
  • Visual representation of a CSP
    • variables are nodes
    • arcs are constraints

A

C

G

the map coloring example

represented as constraint graph

B

D

E

F

send more money model
SEND MORE MONEY - Model
  • Variables
    • S, E, N, D, M, O, R, Y
  • Domain
    • {0, …, 9}
  • Constraints
    • Distinct variables, S ≠ E, M ≠ S, …
    • S*1000 + E*100 + N*10 + D

+

M*1000 + O*100 + R*10 + E

=

M*10000 + O*1000 + N*100 + E*10 + Y

  • The solution to this puzzle is O = 0, M = 1, Y = 2, E = 5, N = 6, D = 7, R = 8, and S = 9.

S E N D

+ M O R E

= M O N E Y

csp as incremental search problem
CSP as Incremental Search Problem
  • Initial state
    • all (or at least some) variables unassigned
  • Successor function
    • assign a value to an unassigned variable
    • must not conflict with previously assigned variables
  • Goal test
    • all variables have values assigned
    • no conflicts possible
      • not allowed in the successor function
  • Path cost
    • e.g. a constant for each step
    • may be problem-specific
backtracking search for csps
Backtracking Search for CSPs
  • A variation of depth-first search that is often used for CSPs
    • values are chosen for one variable at a time
    • if no legal values are left, the algorithm backs up and changes a previous assignment
    • very easy to implement
      • initial state, successor function, goal test are standardized
    • not very efficient
      • can be improved by trying to select more suitable unassigned variables first
heuristics for csp
Heuristics for CSP
  • Most-constrained variable (minimum remaining values, “fail-first”)
    • variable with the fewest possible values is selected
    • tends to minimize the branching factor
  • Most-constraining variable
    • variable with the largest number of constraints on other unassigned variables
  • Least-constraining value
    • for a selected variable, choose the value that leaves more freedom for future choices
csp example map coloring cont
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

csp example map coloring cont1
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

csp example map coloring cont2
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

csp example map coloring cont3
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

csp example map coloring cont4
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

csp example map coloring cont5
CSP Example: Map Coloring (cont.)
  • Most-constrained-variable heuristic

A

C

G

B

D

F

E

analyzing constraints
Analyzing Constraints
  • Forward checking
    • when a value X is assigned to a variable, inconsistent values are eliminated for all variables connected to X
      • identifies “dead” branches of the tree before they are visited
4 queens problem

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem1

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem2

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem3

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem4

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem5

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem

Backtracking

4 queens problem6

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem7

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem8

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem9

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-QueensProblem
4 queens problem10

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem11

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
4 queens problem12

X1

{1,2,3,4}

X2

{1,2,3,4}

1

2

3

4

1

2

3

4

X3

{1,2,3,4}

X4

{1,2,3,4}

4-Queens Problem
local search and csp
Local Search and CSP
  • Local search (iterative improvement) is frequently used for constraint satisfaction problems
    • values are assigned to all variables
    • modification operators move the configuration towards a solution
  • Often called heuristic repair methods
    • repair inconsistencies in the current configuration
  • Simple strategy: min-conflicts
    • minimizes the number of conflicts with other variables
    • solves many problems very quickly
8 queens with min conflicts
8-Queens with Min-Conflicts
  • One queen in each column
    • usually several conflicts
  • Calculate the number of conflicts for each possible position of a selected queen
  • Move the queen to the position with the least conflicts
8 queens example
8-Queens Example

1

2

2

2

2

2

1

1

3

3

2

2

2

3

1

1

8 queens example1
8-Queens Example

1

1

3

2

2

3

3

3

1

0

2

2

1

1

2

1

8 queens example2
8-Queens Example
  • Solution found in 4 steps
  • Min-conflicts heuristic
  • Uses additional heuristics to select the “best” queen to move
    • try to move out of the corners
      • similar to least-constraining value heuristics