Toulbar2 & toulbar2/BTD solvers

Download Report

Transcript Toulbar2 & toulbar2/BTD solvers

Max-CSP solver competition 2008
toulbar2
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
2. ONERA, Toulouse, France
3. UPC, Barcelona, Spain
4. LSIS, Marseilles, France
1.
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT
Framework: Weighted CSP

(X,D,W,m)



X={X1,..., Xn} n variables
D={D1,..., Dn} n finite domains of maximum size d
W, a set of e cost functions




WS, Wi, W∅ with scopes S, {Xi}, ∅
WS associates 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W

WS ( A[S] )
NP-hard problem
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT
Depth-First Branch and Bound (DFBB)
Binary
branching scheme instead of value enumeration
Dynamic variable and value ordering heuristics
No initial upper bound
Variables
Each node is a soft constraint subproblem
(LB) Lower Bound = W
under estimation of the best
Obtained
by enforcing soft local consistency
solution in the sub-tree
m then prune
If W
LB  UB
=m
ALIMENTATION n
Time complexity:
O(d )
AGRICULTURE
Space complexity:
O(n)
ENVIRONNEMENT
(UB) Upper Bound = best solution so far
Enforcing local
consistency by
Equivalence
Preserving
Transformations
2
1
0
0
0
Cost projection from
a unary cost function
to W
X1
W=1
X2
Cost extension from
a unary to a binary
cost function
Cost projection from
a binary to a unary
cost function
2
2
1
1
0
1
0
1
0
0
1
0
1
0
X1
1
W=0
0
X2
0
X1
1
W=0
X2
X1
W=0
X2
Hierarchy
NC
NC* O(nd)
AC* O(n 2d 3)
Special case: CSP (m=1)
DAC* O(ed 2)
FDAC* O(end 3)
AC
DAC
Solve tree-like
constraint graphs
Ternary EDAC
*
2
O(ed 3 max{nd,m})EDAC O(ed max{nd,m})
GAC
VAC O(ed
2
m/)
 [0,1]
Solve submodular
cost functions
OSAC O(poly(ed+n))
Non-binary constraints
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT
Last-conflict variable heuristic (Lecoutre et al, 2006)
Basic form of Conflict Back-Jumping
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT
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)
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT
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)
ALIMENTATION
AGRICULTURE
Russian Doll Search pruning
scheme (Soft-08 workshop)
ENVIRONNEMENT
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
ALIMENTATION
AGRICULTURE
ENVIRONNEMENT