1 / 9

Tree Decomposition Exploitation in Weighted CSP Solver

Toulbar2 maximizes cost functions in Weighted CSP using Tree Decomposition exploitation; DFBB algorithm, variable elimination, cluster search, and open-source in C++. Implementation examples in satellite management, genomics, and more.

vessels
Download Presentation

Tree Decomposition Exploitation in Weighted CSP Solver

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Max-CSP solver competition 2008toulbar2 Marti Sanchez1, Sylvain Bouveret2, Simon de Givry1, Federico Heras3, Philippe Jegou4, Javier Larrosa3, Samba Ndiaye4, Emma Rollon3, Thomas Schiex1, Cyril Terrioux4, Gerard Verfaillie2, Matthias Zytnicki1 INRA, Toulouse, France ONERA, Toulouse, France UPC, Barcelona, Spain LSIS, Marseilles, France

  2. Framework: Weighted CSP • (X,D,W,m) • X={X1,..., Xn} nvariables • D={D1,..., Dn} nfinite domains of maximum size d • W, a set of ecost functions • WS, Wi, W∅ with scopesS, {Xi}, ∅ • WSassociates a cost in[0,m]to any assignment of S • m [1,+] is associated to completely forbidden assignments • Find a complete assignment A minimizing ∑SWWS ( A[S] ) • NP-hard problem

  3. Depth-First Branch and Bound (DFBB) • Binary branching scheme instead of value enumeration • Dynamic variable and value ordering heuristics • No initial upper bound Each node is a soft constraint subproblem Variables (LB) Lower Bound = W under estimation of the best solution in the sub-tree Obtained by enforcing soft local consistency W m If  UB then prune LB = m (UB) Upper Bound = best solution so far Time complexity: O(dn) Space complexity: O(n)

  4. Cost projection from a unary cost function to W 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 W=0 W=0 W=0 X1 X2 X1 X2 X1 X2 1 2 0 0 1 0 0 W=1 X1 X2 Enforcing local consistency byEquivalencePreservingTransformations

  5. Hierarchy Special case: CSP (m=1) NC NC*O(nd) DAC AC*O(n 2d 3) DAC*O(ed 2) Solve tree-like constraint graphs FDAC*O(end 3) AC Ternary EDAC O(ed3 max{nd,m}) EDAC*O(ed 2max{nd,m}) VAC O(ed 2 m/)  [0,1] GAC Solve submodular cost functions OSAC O(poly(ed+n)) Non-binary constraints

  6. Last-conflict variable heuristic (Lecoutre et al, 2006) Basic form of Conflict Back-Jumping

  7. Boosting search with variable elimination(Larrosa and Dechter, 2003) • At each search node • Eliminate all unassigned variables with degree ≤ p • Select an unassigned variable x • Branch on the values of x • Properties • BB-VE(-1) is Depth-First Branch and Bound • BB-VE(w) is Variable Elimination • BB-VE(1) is similar to Cycle-Cutset • BB-VE(2) is well suited with soft local consistencies(add binary constraints only, independent of the elimination order)

  8. t = largest cluster size, s = largest separator size Depth-First Branch and Bound exploiting a Tree Decomposition(Terrioux et al, ECAI 2004) (Givry et al, AAAI 2006) • Tree search with • Restricted variable ordering • Graph-based backjumping • Graph-based learning • Time: O(dt) • Space: O(ds) Toulbar2/BTD • MCS tree decomposition heuristic (Marseilles’ toolkit) in preprocessing • Root selection maximizing cluster size • Same search as DFBB inside clusters (DVO, CBJ, VE(2)) • Limited caching (keep only small separators, s=4) • Russian Doll Search pruning scheme (Soft-08 workshop)

  9. toulbar2 • Open source WCSP solver in C++ (release 0.7) http://mulcyber.toulouse.inra.fr/gf/project/toulbar2 • Large set of benchmarks http://carlit.toulouse.inra.fr/cgi-bin/awki.cgi/SoftCSP • Frequency assignment (Cabon et al., 1999) n≤458, d=44, e(2)≤5000 • Satellite management (Bensana et al., 1999) n≤364, d=4, e(2-3)≤10108 • Mendelian error detection (Sanchez et al, 2008) n≤20000, d≤66, e(3)≤30000 • RNA gene finding (Zytnicki et al, 2008) n≈20, d>100 million!, e(4)≈10 • Tag SNP selection (Sanchez et al, 2008) n≤251, d≤175, e(2)≤13649 • … • Link to ILOG Solver Encapsulates a WCSP as a global constraint

More Related