Improving SAT-Based Weighted MaxSAT Solvers CP 2012 (Quebec)

Anuncio
Improving SAT-Based Weighted MaxSAT Solvers
CP 2012 (Quebec)
Carlos Ansótegui1
Joel Gabàs1
María Luisa Bonet2
Jordi Levy3
Universitat de Lleida (DIEI, UdL)1 .
Universitat Politècnica de Catalunya (LSI, UPC)2 .
Artificial Intelligence Research Institute (IIIA, CSIC)3 .
October, 2012
1 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Weighted Partial MaxSAT Problem
A weighted clause is a pair (C, w), where C is a clause and w
indicates the penalty for falsifying C.
A clause is called soft if w ∈ nat
A clause is called hard if w = ∞
Weighted Partial MaxSAT (WPM) is the problem of finding an
assignment that minimizes the aggregated cost of the falsified clauses.
Partial MaxSAT is the WPM problem when soft clauses have weight 1.
2 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Example: Weighted Partial MaxSAT instance
Consider the pigeon-hole formula PHP15 with 5 pigeons and one hole.
variables: xi means that pigeon i goes to the only hole
soft clauses: wi is the cost of pigeon i out of the hole
hard clauses: no two pigeons can go to the same hole
ϕ = { (x1 , 5),
(x2 , 4),
(x3 , 3),
(x4 , 2),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j}
cost(ϕ) = 10.
3 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Weighted Partial MaxSAT solvers
Branch and bound based
- extend DPLL or CDCL SAT algorithms
- apply incomplete MaxSAT resolution rules
- use lowerbounding and upperbounding techniques
- best performance on random instances
Satisfiability testing based (SAT-based)
- solve a sequence of SAT formulas
- exploit unsatisfiable cores and satisfying assignments
- introduce pseudoBoolean linear constraints
- best performance on industrial instances
4 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Contributions of this paper
- We improve the Fu and Malik algorithm (SAT-Based) by breaking
symmetries
- We improve the Weighted version of the Fu and Malik algorithm by
applying an stratified approach
- We provide good experimental results on WPM industrial and
crafted instances.
5 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
SAT-based MaxSAT algorithms: search scheme
A MaxSAT instance ϕ can be solved through a sequence of SAT
instances ϕk .
ϕk be satisfiable ↔ cost(ϕ) ≤ k .
Let k ′ = cost(ϕ),
ϕk unsatisfiable
0
ϕk satisfiable
k ′−1 k ′
P
wi + 1
cost(ϕ) is the smallest k of satisfiable ϕk .
6 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
SAT-based MaxSAT: basic encoding of ϕk
ϕ = { (x1 , w1 ),
(x2 , w2 ),
(x3 , w3 ),
(x4 , w4 ),
(x5 , w5 ) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j}
7 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
SAT-based MaxSAT: basic encoding of ϕk
ϕk = { (x1 ∨ b1 , w1 ),
(x2 ∨ b2 , w2 ),
(x3 ∨ b3 , w3 ),
(x4 ∨ b4 , w4 ),
(x5 ∨ b5 , w5 ) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
P
CNF ( 5i=1 wi · bi ≤ k , ∞)
Note: ϕk is sent without weights to the
7 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
SAT solver
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
- Originally designed for solving Partial MaxSAT (soft with wi = 1)
- Starts from k = 0, increasing k by 1 until ϕk is satisfiable
- ϕk satisfiable ↔ cost(ϕ) = k
- Exploits the unsatisfiable core returned by the SAT solver
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ0 = { (x1 , 1),
(x2 , 1),
(x3 , 1),
(x4 , 1),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j}
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ0 = { (x1 , 1), (x2 , 1), (x3 , 1),
(x4 , 1),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} SAT(ϕ0 ) returns a core
cost(ϕ) > 0
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ1 = { (x1 ∨ b11 , 1), (x2 ∨ b21 , 1), (x3
, 1),
(x4
, 1),
(x5
, 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞) Soft clauses in core are relaxed
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ1 = { (x1 ∨ b11 , 1),
(x2 ∨ b21 , 1),
(x3
, 1), (x4
, 1), (x5
, 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞)
SAT(ϕ1 ) returns a core
cost(ϕ) > 1
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ2 = { (x1 ∨ b11
(x2 ∨
(x3 ∨
(x4 ∨
, 1),
b21
, 1),
b32
b42
(x5
, 1),
, 1),
, 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞) ∪
CNF (b32 + b42 = 1, ∞)
ϕ2 is unsat, cost(ϕ) > 2
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ3 = { (x1 ∨ b11 ∨
b13 , 1),
(x2 ∨ b21 ∨
b23 , 1),
(x3 ∨
b32 ∨ b33 , 1),
(x4 ∨
b42 ∨ b43 , 1),
, 1) } ∪
(x5
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞) ∪
CNF (b32 + b42 = 1, ∞) ∪
CNF (b13 + b23 + b33 + b43 = 1, ∞)
ϕ3 is unsat, cost(ϕ) > 3
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
ϕ4 = { (x1 ∨ b11 ∨
b13 ∨ b14 , 1),
(x2 ∨ b21 ∨
b23 ∨ b24 , 1),
(x3 ∨
b32 ∨ b33 ∨ b34 , 1),
(x4 ∨
b42 ∨ b43 ∨ b44 , 1),
b54 , 1) } ∪
(x5 ∨
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞) ∪
CNF (b32 + b42 = 1, ∞) ∪
CNF (b13 + b23 + b33 + b43 = 1, ∞) ∪
CNF (b14 + b24 + b34 + b44 + b54 = 1, ∞)
ϕ4 is sat!, cost(ϕ) = 4
8 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The Fu and Malik algorithm
if SAT({Ci | wi = ∞}) = (UNSAT, _) then return (∞, ∅);
cost := 0;
/* Optimal */
s := 0;
/* Counter of cores */
while true do
(st, ϕc ) := SAT({Ci | (Ci , 1) ∈ ϕ}) ;
/* Call without weights */
if st = SAT then return (cost, ϕ);
s := s + 1;
As := ∅ ;
/* Indexes of the core */
foreach Ci ∈ ϕc do
if wi 6= ∞ then
/* If the clause is soft */
bis := new_variable( );
ϕ := ϕ \ {(Ci , 1)} ∪ {(Ci ∨ bis , 1)} ; /* Add blocking variable */
As := As ∪ {i};
end
end
P
ϕ := ϕ ∪ {(C, ∞) | C ∈ CNF( i∈As bis = 1)} ; /* Add cardinality */
cost := cost + 1
end
9 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Breaking Symmetries in the Fu and Malik algorithm
Lets look again to ϕ3 in our working example without clause (x5 , 1)
x1 ∨
x2 ∨
b13
b11 ∨
b21 ∨
x3 ∨
x4 ∨
b23
b32 ∨ b33
b42 ∨
b43
x1 ∨
x2 ∨
b11 ∨
b21 ∨
x3 ∨
x4 ∨
b11 + b21 = 1
b11 + b21 = 1
b32 + b42 = 1
b32 + b42 = 1
b13 + b23 + b33 + b43 = 1
10 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
b13
b23
b32 ∨ b33
b42 ∨
b43
b13 + b23 + b33 + b43 = 1
Improving SAT-Based Weighted MaxSAT Solvers
Breaking Symmetries in the Fu and Malik algorithm
Lets look again to ϕ3 in our working example without clause (x5 , 1)
The formula is satisfiable, but it has 8 models instead of 4!
x1 ∨
x2 ∨
b13
b11 ∨
b21 ∨
x3 ∨
x4 ∨
b23
b32 ∨ b33
b42 ∨
b43
x1 ∨
x2 ∨
b11 ∨
b21 ∨
x3 ∨
x4 ∨
b11 + b21 = 1
b11 + b21 = 1
b32 + b42 = 1
b32 + b42 = 1
b13 + b23 + b33 + b43 = 1
10 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
b13
b23
b32 ∨ b33
b42 ∨
b43
b13 + b23 + b33 + b43 = 1
Improving SAT-Based Weighted MaxSAT Solvers
Breaking Symmetries in the Fu and Malik algorithm
The two previous models are related by the permutation
b11 ↔ b21 , b13 ↔ b23
The existence of so many partial models makes the task of showing
unsatisfiability of the formula (including x5 ) much harder.
After finding the third unsatisfiable core, we break symmetries by
adding to ϕ3 :
b13 → ¬b21
b33 → ¬b42
11 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The WPM1 algorithm
Weighted version of Fu and Malik algorithm [WPM1 and WBO, 2009]
Idea:
Compute the minimum weight, wmin , in the unsat core
Replace soft clauses in the unsat core by,
- a copy with with weight wmin plus blocking variables and cardinality
- a copy with weight wi − wmin
Increase the current cost by wmin .
12 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The WPM1 algorithm
ϕ0 = { (x1 , 5),
(x2 , 4),
(x3 , 3),
(x4 , 2),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j}
12 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The WPM1 algorithm
ϕ0 = { (x1 , 5), (x2 , 4), (x3 , 3),
(x4 , 2),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} SAT(ϕ0 ) returns a core
cost(ϕ) > 0
12 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The WPM1 algorithm
ϕ4 = { (x1 ∨ b11 , 4), ϕ0 = { (x1 , 5), (x2 , 4), (x3 , 3),
(x4 , 2),
(x5 , 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} SAT(ϕ0 ) returns a core
cost(ϕ) > 0
(x2 ∨ b21 , 4), (x1
, 1), (x3
, 3),
(x4
, 2),
(x5
, 1) } ∪
{(¬xi ∨ ¬xj , ∞) | i < j} ∪
CNF (b11 + b21 = 1, ∞) copy with wmin
copy with wi − wmin
SAT (ϕ4 ) unsat, cost(ϕ) > 4.
12 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
The WPM1 algorithm
if SAT({Ci | wi = ∞}) = (UNSAT, _) then return (∞, ∅);
cost := 0;
/* Optimal */
s := 0;
/* Counter of cores */
while true do
(st, ϕc ) := SAT({Ci | (Ci , wi ) ∈ ϕ}) ; /* Call SAT without weights */
if st = SAT then return (cost, ϕ);
s := s + 1;
As := ∅;
/* Indexes of the core */
wmin := min{wi | Ci ∈ ϕc ∧ wi 6= ∞} ;
/* Minimum weight */
foreach Ci ∈ ϕc do
if wi 6= ∞ then
bis := new_variable()
ϕ := ϕ \ {(Ci , wi )} ∪ {(Ci , wi − wmin ), (Ci ∨ bis , wmin )}
As := As ∪ {i}
end
end
P
ϕ := ϕ ∪ {(C, ∞) | C ∈ CNF ( i∈As bis = 1)} ; /* Add cardinality */
cost := cost + wmin
end
13 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Stratified approach for the WPM1 algorithm
Problem:
- the number of iterations depends on wmin .
- SAT solvers have no notion of weights
- SAT solvers can return not minimal unsat cores
Stratified approach:
- idea: force the SAT solver to focus on clauses with higher weights
- only clauses with wi > wmax are sent to the solver
- when SAT solver returns sat, wmax is decreased
- copies with wi − wmin are scheduled to their appropiated wmax
14 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Stratified approach for the WPM1 algorithm
if SAT({Ci | wi = ∞}) = (UNSAT, _) then return (∞, ∅);
cost := 0;
/* Optimal */
s := 0;
/* Counter of cores */
wmax := max{wi | (Ci , wi ) ∈ ϕ ∧ wi < ∞};
while true do
(st , ϕc ) := SAT({Ci | (Ci , wi ) ∈ ϕ ∧ wi ≥ wmax });
if st = SAT then
if wmax = 0 then return (cost , ϕ);
else wmax := max{wi | (Ci , wi ) ∈ ϕ ∧ wi < wmax } ;
end
else
s := s + 1;
As := ∅;
/* Indexes of the core */
wmin := min{wi | Ci ∈ ϕc ∧ wi 6= ∞} ;
/* Minimum weight */
foreach Ci ∈ ϕc do
if wi 6= ∞ then
bis := new_variable();
ϕ := ϕ \ {(Ci , wi )} ∪ {(Ci , wi − wmin ), (Ci ∨ bis , wmin )}
As := As ∪ {i}
end
P
ϕ := ϕ ∪ {(C, ∞) | C ∈ CNF ( i∈As bis = 1)} ; /* Cardinal. */
cost := cost + wmin
end
end
end
15 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Experimental investigation
- Experiments conducted within MaxSAT evaluation environment:
Memory extended from 0.5 to 1GB
Cutoff extended from 30’ to 2h
- Best solvers from MaxSAT evaluation 2011
- Other MaxSAT solvers reported to have good performance:
bincd: F. Heras, A. Morgado, J. Marques-Silva
maxhs: J. Davies, F. Bacchus
- WCSP solver:
toulbar2: Sanchez, Bouveret, Givry, Heras, Jgou, Larrosa, Ndiaye,
Rollon, Schiex, Terrioux, Verfaillie, Zytnicki
16 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Experimental investigation
Our solvers:
wpm1
WPM1 algorithm on picoSAT (MaxSAT Eval. 2009/10)
wpm1s
wpm1 + stratified approach (MaxSAT Eval. 2011)
wpm1b
wpm1 + breaking symmetries
wpm1bs
wpm1b + stratified approach
wpm1bsd
wpm1bs + diversity heuristic (MaxSAT Eval. 2012)
17 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Weighted Partial MaxSAT industrial instances
3 families, 226 instances
Solved instances
1.- wpm1bsd 204
2.- wpm1bs
204
3.- wpm1s
196
4.- wpm1b
188
5.- wbo1.6
176
6.- wpm1
172
7.- maxhs
138
8.- bincd
105
9.- sat4j
50
10.- binc
31
11.- toulbar2
5
18 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Mean solved family ratio
1.- wpm1bsd
76.3%
2.- wpm1bs
76.3%
3.- wpm1s
72.6%
4.- wpm1b
71.0%
5.- wpm1
63.7%
6.- wbo1.6
62.3%
7.- maxhs
49.7%
8.- bincd
40.7%
9.- sat4j
16.6%
10.- binc
14.0%
11.- toulbar2
1.7%
Improving SAT-Based Weighted MaxSAT Solvers
Weighted Partial MaxSAT crafted Instances
8 families, 372 instances
1.2.3.4.5.6.7.8.9.10.11.12.13.14.-
Solved instances
wpm1bsd
incw_maxsatz
ak_maxsat
toulbar2
wpm1bs
wmax_satz09z
maxhs
sat4j
wpm1s
bincd
binc
wpm1
wbo1.6
wpm1b
270
241
226
225
224
222
204
189
184
125
108
84
82
67
19 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Mean solved family ratio
1.- wpm1bsd
66.5%
2.- incw_maxsatz
56.6%
3.- wpm1bs
53.1%
4.- toulbar2
43.9%
5.- ak_maxsat
43.6%
6.- wmax_satz09z 41.4%
7.- wpm1s
40.5%
8.- maxhs
39.1%
9.- sat4j
38.4%
10.- bincd
35.1%
11.- wpm1
30.2%
12.- binc
28.5%
13.- wpm1b
25.5%
14.- wbo1.6
22.2%
Improving SAT-Based Weighted MaxSAT Solvers
Thanks!
20 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Experimental results
Instance set
haplotyping
timetabling
upgradeability
Total
#
wpm1bsd
wpm1bs
wpm1s
wpm1b
wbo1.6
wpm1
100
26
100
226
423(95)
685.60(9)
35.8(100)
204
425(95)
683(9)
37.2(100)
204
378(88)
585(8)
36.5(100)
196
376(79)
992(9)
36.9(100)
188
93.4(72)
776(4)
63.3(100)
176
390(65)
1002(7)
114(100)
172
maxhs
bincd
sat4j
binc
1043(34)
1238(4)
29.0(100)
138
196(21)
766(6)
637(78)
105
108(20)
0(0)
844(30)
50
408(27)
1350(4)
0(0)
31
toulbar2
383(5)
0(0)
0(0)
5
Table: Weighted Partial - Industrial.
21 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Experimental results
Instance set
Table4 [?]
Total
#
maxhs
wbo1.6
wpm1b
13
13
4.41(13)
13
5.03(13)
13
5.54(13)
13
wpm1bsd
8.84(13)
13
wpm1
wpm1bs
18.92(13)
13
534.13(13)
13
wpm1s
bincd
sat4j
binc
toulbar2
559.23(13)
13
56.69(11)
11
3485.52(6)
6
19.50(1)
1
0.00(0)
0
Table: Table 4 from [?]. Linux upgradibility family forcing diversity of weights.
22 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Experimental results
Instance set
#
wpm1bsd
auc-paths
auc-sched
planning
warehouses
miplib
random-net
spot5dir
spot5log
Total
86
84
56
18
12
74
21
21
372
274(53)
11.9(84)
27.9(52)
44(14)
1187(4)
241(39)
257(10)
532(14)
270
incw
maxsatz
7.59(86)
220(84)
92.2(38)
1184(18)
1419(5)
1177(1)
1127(5)
0.63(4)
241
ak
maxsat
4.6(86)
123(84)
354(40)
37(2)
0.47(2)
1570(2)
1106(5)
200(5)
226
toulbar2
wpm1bs
28.8(86)
133(84)
149(41)
0.03(1)
63.2(3)
0(0)
217(5)
170(5)
225
332(53)
12.2(84)
26.3(56)
571(3)
1165(4)
0(0)
383(10)
574(14)
224
wmax
satz09z
570(80)
92(84)
220(50)
0.32(1)
266(3)
0(0)
11.5(2)
15.6(2)
222
maxhs
sat4j
wpm1s
bincd
binc
wpm1
wbo1.6
wpm1b
72.2(86)
1125(69)
306(29)
0.37(1)
0.07(1)
2790(6)
199(6)
710(6)
204
994(44)
716(80)
3.27(55)
1.34(1)
693(4)
0(0)
1.95(2)
6.04(3)
189
22(33)
7.6(80)
12.5(54)
1644(3)
34(3)
0(0)
1.41(5)
44.4(6)
184
1828(2)
130(50)
59.5(47)
7.03(1)
618(3)
0(0)
66.7(11)
124(11)
125
0(0)
103(45)
51.1(46)
8.67(1)
699(3)
0(0)
51.7(6)
79.3(7)
108
0(0)
0(0)
1.46(28)
4.23(18)
0.21(1)
615(27)
1.03(4)
21.5(6)
84
0(0)
0(0)
1.33(30)
0.51(4)
0(0)
63(37)
2.60(5)
25.5(6)
82
0(0)
0(0)
3.63(29)
0.88(12)
1507(1)
439(12)
12.8(6)
131(7)
67
Table: Weighted Partial - Crafted.
23 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Stratified approach with other algorithms
Instance set
haplotyping
timetabling
upgradeability
Total
#
100
26
100
226
[Weighted Partial - Industrial]
bincd-2sd
bincd-2
255(22)
1243(2)
34.9(100)
124
223(20)
1128(1)
30.8(100)
121
wpm2sd
wpm2
515(23)
257(3)
49.0(100)
126
32.6(22)
246(4)
55.4(99)
125
[Table 4 from [?]. Linux upgradibility family forcing diversity of weights]
Instance set
#
bincd-2sd
bincd-2
wpm2sd
wpm2
Table4 [?]
Total
13
13
Instance set
#
auc-paths
auc-sched
planning
warehouses
miplib
random-net
spot5dir
spot5log
Total
86
84
56
18
12
74
21
21
372
27.1(13)
13
9.70(13)
13
[Weighted Partial - Crafted]
bincd-2sd
bincd-2
785(47)
534(81)
2.60(55)
0.18(1)
6.77(2)
2175(15)
529(11)
566(11)
223
739(42)
810(70)
3.36(56)
0.18(1)
3.61(2)
1918(18)
380(11)
1748(12)
212
13.9(13)
13
9.05(13)
13
wpm2sd
wpm2
2551(3)
76.0(46)
89.6(36)
19.2(1)
13.7(1)
0(0)
486(10)
572(10)
107
0(0)
0(0)
28.7(23)
23.9(1)
16.4(1)
0(0)
518(9)
0.71(6)
40
Table: Experimental results.
24 / 24
Carlos Ansótegui, María Luisa Bonet, Joel Gabàs, Jordi Levy
Improving SAT-Based Weighted MaxSAT Solvers
Descargar