Constraint satisfaction problems Flashcards
1
Q
What is a constraint satisfaction problem (CSP)?
A
- A set of n variables V1, V2, . . . , Vn.
- For each V a domain D specifying the values that V can take.
- A set of m constraints C1, C2, …, Cm. Each C specify an allowable collection of values for a particular set of variables.
We seek for a consistent and complete assignment. That is, an assignment that violates no constraint and assigns values to every variable.
2
Q
- In a CSP, what variables should we assign first?
- If there is tie in assignment, what strategy can we use to break the tie?
- In what order shall values be assigned?
A
- We assign the most constrained variable (aka minimum remaining value heuristic)
- The degree heuristic chooses the variable involved in the most constraints on as yet unassigned variables.
- Least constraining value: Pick the value that leaves maximum possible freedom to neigbours.
3
Q
Explain arc consistency, and describe how to make use of it in constraint propagation.
A
4
Q
Describe Gaschnig’s algorithm.
A
5
Q
What is graph-based backjumping.
A
When we initially detect a conflict, jump back to the parent node. If there is no conflict, we try to find the bottleneck with these dirty tricks.