9 - Constraint Satisfaction Flashcards

1
Q

What does a constraint satisfaction problem (CSP) consist of?

A

X a set of variables
D a set of domains, each is discrete and finite (allowable x values)
C a set of constraints that specify allowable combinations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does each constraint consist of?

A

a pair (scope,rel) where

  • scope is a tuple of variables
  • rel is a relation they can take

Each constraint restricts values

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what are the 3 types of assignment?

A

Consistent = does not violate any constraints

Complete = every variable assigned a value

Partial = some variables assigned a value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How many possible assignments for d values and n variables?

A

d^n

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

what are the constraint types

A

Unary - one var
Binary - two var
Global/Higher-order - n-ary constraints with more than 2 but not necessarily all
- Alldiff = all variables take different values

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

When is a constraint hypergraph used?

A

For representing higher order constraints

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is constraint propagation?

A

The process of using constraints to reduce the number of legal values for a variable then to reduce the values for another and so on

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is node consistency?

A

A variable is node-consistent if all the values in the variable’s domain satisfy the variable’s unary constraints

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is arc consistency?

A

A variable Xi is arc-consistent with Xj if, for every value in the domain Di, there is some variable in Dj that satisfies the constrain on the arc (Xi,Xj)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

When is a graph arc consistent?

A

A constraint graph is arc-consistent if every variable is arc-consistent with every other variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

When is a graph node-consistent?

A

A constraint graph is node-consistent if every variable in the graph is nodeconsistent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the generate and test method?

A

Exhaustive search of assignment space (set of all assignments of values to its variables)

Each total assignment is generated and checked in turn and those assignments that satisfy are returned

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is back tracking search?

A

A depth first search that chooses one variable at a time and backtracks when a variable has no legal values left to assign

  • Build by searching partial assignments
  • Order does not matter
  • If during the process a constraint is violated, reject the current partial assignment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Minimum-remaining-values heuristic

A

Choose the var with the fewest possible legal values.

Most constrained variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Degree Heuristic

A

Reduce branching factor by choosing var involved in the largest number of constraints on other unassigned variables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Least Constraining Value Heuristic

A

Prefer the value that rules out the fewest choices for the neighbouring variables in the constraint graph

17
Q

Forward Checking

A

Var x is assigned
Look at unassigned Y conencted to X by constraint
Delete from Y’s domain any value that is inconsistent with the chosen X value