240 likes | 391 Views
Russian Doll Search with Tree Decomposition. Martí Sànchez, David Allouche, Simon de Givry , and Thomas Schiex INRA Toulouse, FRANCE. Real applications with a structure. Radio Link Frequency Assignment. Earth Observation Satellite Management. CELAR SCEN-07r ( Constraints 4(1), 1999).
E N D
Russian Doll Searchwith Tree Decomposition Martí Sànchez, David Allouche, Simon de Givry, and Thomas Schiex INRA Toulouse, FRANCE IJCAI 2009
Real applications with a structure RadioLinkFrequencyAssignment EarthObservationSatelliteManagement CELAR SCEN-07r(Constraints 4(1), 1999) SPOT5 #509 (Constraints 4(3), 1999) MendelianErrorDetection TagSNPSelection langladeM7 sheep pedigree (Constraints 13(1), 2008) HapMap chr01 r2≥0.8 #14481 IJCAI 2009
Framework: Weighted CSP • (X,D,F,k) • X={X1,..., Xn}n variables • D={D1,..., Dn}n finitedomains of maximum size d • F={f1,…,fm}, a set ofmcost functions • fS with scope S, assigns a positive costto any assignment of S • f∅problem lower bound (obtained by enforcing local consistency by Equivalence Preserving Transformations) • k, maximum cost and global upper bound • Find an assignmentAof all the variables which minimizes ∑fSFfS ( A[S] ) NP-hard problem • Improve bounds computation compared to BTD (Jégou&Terrioux, ECAI 2004; de Givry et al., AAAI 2006) IJCAI 2009
Soft 2-Coloring example A B C D E H I F J K G IJCAI 2009
Soft 2-Coloring example A B C Optimal solution of cost 5 D E H I F J K G IJCAI 2009
C1 C1 {D} {D} C2 C4 {E,F} {D,I,J} C3 C5 C2 C4 C3 C5 Tree Decomposition A B C D E H The set of clusters covers the set of variables and the set of cost functions I F J K G Separator = intersection between two connected clusters IJCAI 2009
{D} {D} C1 C1 C2 C4 {E,F} {D,I,J} C3 C5 C2 C4 C3 C5 Search with Tree Decomposition A B C D E H I F J The assignment of a separator disconnects the problem into two independent subproblems G K IJCAI 2009
{D} {D} C1 C2 C2 C4 {E,F} {D,I,J} C3 C5 H C4 I C3 J K C5 Search with Tree Decomposition A B C D H I E J F K G D 0 1 P2 / {(D=green)} P4 / {(D=green)} P4 / {(D=red)} P2 / {(D=red)} E 0 1 1 0 0 1 0 1 F 0 1 0 1 0 1 0 1 0 1 0 1 G 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 IJCAI 2009
C2 C4 C3 C5 Search with Tree Decomposition A B C D H I E J F K G D 0 P2 / {(D=red)} E 0 1 F 0 1 0 1 G 0 1 0 1 0 1 0 1 IJCAI 2009
C2 C4 C3 C5 Search with Tree Decomposition A Record the optimum of P2 / {(D=red)} LBP2 / {(D=red)} = 1 OPTP2 / {(D=red)} = true B C D H I E J F K G Assume a global upper bound k = 5. It may be useless to compute the optimum of P2 / {(D=red)},only a lower bound is needed! D 0 P2 / {(D=red)} E 0 1 F 0 1 0 1 G 0 1 0 1 0 1 0 1 IJCAI 2009
C1 C2 C2 C4 C3 C5 C4 C3 C5 UBP2 / {(D=red)} = k – 3 – max ( fC4 + fC5, LBP4 / {(D=red)} ) Maintaining local consistency Recorded during search Backtrack bounded by Tree Decomposition BTD A (Jégou & Terrioux, ECAI 2004) (de Givry et al., AAAI 2006) B C D H I E J F K G Assume a global upper bound k = 5. It may be useless to compute the optimum of P2,only a lower bound is needed! D 0 P2 / {(D=red)} E 0 1 F 0 1 0 1 Add a local upper bound: UBP2 / {(D=red)} = k – 3 – LBP4 / {(D=red)} G 0 1 0 1 0 1 0 1 IJCAI 2009
C1 C2 C4 C3 C5 Russian Doll Search with Tree Decomposition UBP2 / {(D=red)} = k – 3 – max ( fC4 + fC5, LBP4 / {(D=red)}, LBP4RDS ) RDS-BTD lower bound is a maximum between • Local Consistency • Recorded lower bounds • RDS lower bounds • PiRDS is a relaxation of Pi / A byremoving separator variablesand cost functions on them • For all i, solves PiRDSin a bottom-up orderusing BTD exploiting RDS lb Found during search Obtained in preprocessing The optimum of PiRDS is a lower bound of Pi / A for any separator assignment A IJCAI 2009
RDS RDS RDS RDS RDS P1=P1 P2 P4 P3 P5 A A A B C B C B C LBP3 / {(E=red),(F=green)}=1, … D D D E E E H I H H I I F F F J J J K G K K G G A A B C B C D E D H I E H I F J F K G J K G Russian Doll Search with Tree Decomposition LBP5RDS=0 LBP3RDS=0 LBP2RDS=1 LBP1RDS=5 LBP4RDS=1 Same complexities as BTD: Time: O(exp(w+1)) Space: O(exp(s)) w = tree-width = largest cluster size –1, s = largest separator size IJCAI 2009
Related Work C1 A C2 C1 C3 C2 C3 B C C4 C4 C5 D C5 C8 E K H C6 C6 F C7 C7 C9 J I G C10 C8 C11 C9 RDS (Verfaillie et al, AAAI 1996) C10 C11 IJCAI 2009
Related Work C1 A C1 C2 C2 C3 B C C3 C4 C4 D C5 C5 C8 C8 E K H C6 C9 C6 F C9 J C7 C10 C11 I G C10 C7 C11 Pseudo-Tree RDS (Larrosa et al, ECAI 2002) AND/OR graph search (Marinescu & Dechter, AAAI 2006) IJCAI 2009
C1 C1 {D} {D} C2 C4 {E,F} {D,I,J} C3 C5 C2 C1 C4 {D} {D} C3 C2 C4 U C5 C5 {E,F} C4 U C5 C3 Exploiting small separators only (Jégou et al., CP 2007) A B C D p = 2 E H I Merge clusters i and father(i) if |sepi,father(i)| > p F J K G Gives more freedom for the dynamic variable ordering heuristic IJCAI 2009
Exploiting small separators only A B C C1 D E K H p = 0 F J I G DFBB IJCAI 2009
Tag SNP Selection Set covering problem with additional coverage quadratic criteria IJCAI 2009
BTD RDS-BTD 4 DFBB Tag SNP Selection 25 largest instances from HapMap human chr01 (r2 ≥ 0.5) 171 ≤ n/2 ≤ 777 30 ≤ d ≤ 266 6% ≤ m ≤ 37% 14% ≤ w ≤ 23% Solved by toulbar2 v.0.8 with initialupper bound found by FESTA and with MCStree decomposition Time limit: 2 hours ∞ p IJCAI 2009
Radio Link Frequency Assignment CELAR SCEN-07r (Constraints 4(1), 1999) IJCAI 2009
Radio Link Frequency Assignment • Maximum Cardinality Search tree decomposition heuristic • Root selection: largest (SCEN-06) / most costly (SCEN-07r) cluster • Last-conflict variable ordering (Lecoutre et al., 20006) and dichotomic binary branching • Closing 1 open problem by exploiting tree decompostion RECORDS : SCEN-07r p = 3 BTD 90528 recorded LB (20 %) RDS-BTD 29453 recorded LB (6.4 %) RECORDS : SCEN-06 p = ∞ BTD 5633 recorded LB RDS-BTD 7145 recorded LB IJCAI 2009
Conclusion and perspectives • RDS-BTD generalizes DFBB, RDS, PT-RDS, BTD,…exploiting better bounds • Needs only linear extra space • But there are not obtained in polynomial time • Restriction to small separators gives more robustness • Give more freedom to dynamic variable ordering inside clusters • Perspectives • Produce any-time lower bounds (Iterative Deepening) • Dedicated heuristics to find small separators, p auto-tuning toulbar2 C++ solver version 0.8 ( http://mulcyber.toulouse.inra.fr/projects/toulbar2 ) IJCAI 2009
Cost projection from a unary cost function to f 2 2 1 1 1 0 1 0 1 1 0 0 0 0 1 0 Cost extension from a unary to a binary cost function Cost projection from a binary to a unary cost function f=0 f=0 f=0 A B A B A B 1 2 0 0 1 0 0 f=1 A B Enforcing local consistency byEquivalencePreservingTransformations IJCAI 2009
C A E B D a b b a c d Weighted CSP model 1.0 0.8 0.9 1.0 0.8 A1 T|F B1 T|F a A2 a B2 IJCAI 2009