on minimal constraint networks
play

On Minimal Constraint Networks Georg Gottlob Minimal Constraint - PowerPoint PPT Presentation

On Minimal Constraint Networks Georg Gottlob Minimal Constraint Networks Montanari 1974: To each binary constraint network N, there exists a unique equivalent complete network M(N) such that each pair of values of a constraint in M(N)


  1. On Minimal Constraint Networks Georg Gottlob

  2. Minimal Constraint Networks Montanari 1974: To each binary constraint network N, there exists a unique equivalent complete network M(N) such that each pair of values of a constraint in M(N) belongs to some solution. This minimal network M(N) can be computed by projecting sol(N) to all pairs of distinct variables. Example

  3. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1

  4. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 sol(N) a1 b2 c2 d1 a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  5. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 Definition generalizes to sol(N) a1 b2 c2 d1 k-ary constraint networks… a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  6. Facts about minimal networks • By definition, sol(M(N)) = sol(N) • M(N) is empty iff N has no solution. • Computing M(N) from N is NP-hard [Montanari; Mackworth] • Recognizing minimality of a network NP-hard [Gaur-95]

  7. More Facts about minimal networks • Idempotency of M-operator: M(M(N)) = M(N) • M(N) is the intersection of all networks equivalent to M(N) (defined over the same complete schema as M(N) ) • M(N) is the intersection of all networks weaker than M(N) (defined over the same complete schema as M(N) )

  8. Usefulness of minimal networks: Knowledge Compilation • k-variable queries can be answered in PTIME based on the k-ary minimal network:  x  y (partof(y,x)   samecolor(x,y)) • Relevant to product configuration problems (e.g. k=3) cartype= suv , engine= gas , make=( volvo or vw ) Polynomial space!

  9. Usefulness of minimal networks: Knowledge Compilation • k-variable queries can be answered in PTIME based on the k-ary minimal network:  x  y (partof(y,x)   samecolor(x,y)) • Relevant to product configuration problems (e.g. k=3) cartype= suv , engine= gas , make=( volvo or vw ) You have three wishes!

  10. Usefulness of minimal networks: Knowledge Compilation • k-variable queries can be answered in PTIME based on the k-ary minimal network:  x  y (partof(y,x)   samecolor(x,y)) • Relevant to product configuration problems cartype= suv , engine= gas , make=( volvo or vw ) Express three wishes, and I will check them in polynomial time!

  11. Main Problem Studied Given a nonempty minimal constraint network N, compute one solution to N. How complex is this problem? 70es-90es: Many believed it to be tractable. Some even believed all solutions to N can be generated by simple backtrack-free search. But this is not the case.

  12. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 sol(N) a1 b2 c2 d1 a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B9 B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  13. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 sol(N) a1 b2 c2 d1 a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  14. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 sol(N) a1 b2 c2 d1 a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  15. A B B C A C C D Binary constraint network N a1 b1 b1 c1 a1 c2 c1 d2 a1 b2 b1 c2 a2 c1 c2 d1 A B a1 b3 b2 c2 a3 c1 C a2 b1 b3 c1 a3 c2 D a3 b4 b4 c1 A B C D a1 b1 c2 d1 sol(N) a1 b2 c2 d1 a2 b1 c1 d2 a3 b4 c1 d2 Minimal network M(N) C D A C A D B D A B B C c1 d2 a1 c2 a1 d1 b1 d1 a1 b1 b1 c1 c2 d1 a2 c1 a2 d2 b1 d2 A B a1 b2 b1 c2 a3 c1 a3 d2 a2 b1 b2 c2 b2 d1 D C b4 d2 a3 b4 b4 c1

  16. Computing a solution Are there more sophisticated efficient algorithms ? Conjecture [Gaur 95]: Tractable Conjecture [Dechter 03]: Intractable The problem has remained open until recently. Progress made by Bessiere (CP Handbk) using [Cros03 ]: Theorem [Bessiere 06]: If solutions to minimal networks can be computed via polytime backtrack-free fair strategies, then the Polynomial Hierarchy collapses.

  17. Main Result Theorem : Computing a solution to a non-empty minimal network is NP-hard. Caveat: Promise-problem. Still, NP-hardness is well-defined. NP-hardness: If there exists a PTIME algorithm findsol , that solves the problem, then NP=P.

  18. Proof Sketch • Show that each SAT instance C can be transformed in polynomial time into an “equivalent” constraint network S(C), such that S(C) is minimal in case C is satisfiable. • Assume there exists an algorithm findsol that finds solution to minimal networks in polynomial time. Apply it to S(C) to obtain a PTIME SAT-solver.

  19. Proof Sketch SAT-instance C={K 1 ,..,K r } S: polytime transformation candidate MinCN S(C) C satisfiable  S(C) minimal & sol(S(C)) = satisfying truth value assignments of C C unsatisfiable  S(C) arbitrary

  20. SAT-instance C={K 1 ,..,K r } S: polytime transformation findsol candidate MinCN S(C) findsol C satisfiable  S(C) minimal computes solution (t.v.a)  C unsatisfiable  S(C) arbitrary if S(c) is minimal and nonempty

  21. SAT-instance C={K 1 ,..,K r } S: polytime transformation findsol candidate polynomial time? MinCN S(C) findsol C satisfiable  S(C) minimal computes solution (t.v.a)  C unsatisfiable  S(C) arbitrary if S(c) is minimal and nonempty

  22. SAT-instance C={K 1 ,..,K r } If findsol was polynomial, we could build a PTIME SAT-solver! S: polytime transformation C unsatisf. yes no no  S(C) findsol candidate empty has satisfies yes no ? output? MinCN S(C) C ? yes findsol C C satisfiable  S(C) minimal computes solution (t.v.a)  satisfiable C unsatisfiable  S(C) arbitrary if S(c) is minimal and nonempty

  23. SAT-instance C={K 1 ,..,K r } findsol cannot be polynomial unless NP=P ! S: polytime transformation C unsatisf. yes no no  S(C) findsol Candidate empty has satisfies yes no ? output? MinCN S(C) C ? yes findsol C C satisfiable  S(C) minimal computes solution (t.v.a)  satisfiable C unsatisfiable  S(C) arbitrary If S(c) is minimal and nonempty

  24. Translating C to S(C) SAT-instance C={K 1 ,..,K r } S: polytime transformation Candidate MinCN S(C) C satisfiable  S(C) minimal & sol(S(C)) = satisfying truth value assignments of C C unsatisfiable  S(C) arbitrary

  25. Translation: First Attempt K 1 = p   q  r K 2 =  p   q SAT-instance C={K 1 ,..,K r } K 3 = q Each clause K i becomes a variable Dom(K 1 )= {p,  q, r} S: polytime Dom(K 2 )= {p,  q} transformation Dom(K 3 )= {q} K 1 K 2 K 1 K 3 K 2 K 3 -------- -------- -------- p  q  p q p q Candidate  q  p r q MinCN S(C)  q  q r  p C satisfiable  S(C) minimal r  q C unsatisfiable  S(C) arbitrary

  26. Translation: First Attempt K 1 = p   q  r K 2 =  p   q SAT-instance C={K 1 ,..,K r } K 3 = q S: polytime transformation K 1 K 2 K 1 K 3 K 2 K 3 -------- -------- -------- p  q  p q p q Candidate  q  p r q MinCN S(C)  q  q r  p minimal? C satisfiable  S(C) minimal r  q C unsatisfiable  S(C) arbitrary

Recommend


More recommend