Upload
larya
View
43
Download
0
Embed Size (px)
DESCRIPTION
Backtracking Procedures for Hypertree, HyperSpread and Connected Hypertree Decomposition of CSPs. Sathiamoorthy Subbarayan and Henrik Reif Andersen IT University of Copenhagen Denmark. Twentieth International Joint Conference on Artificial Intelligence 06 – 12 Jan 2007, Hyderabad, India. - PowerPoint PPT Presentation
Citation preview
Backtracking Procedures for Hypertree, HyperSpread and Connected Hypertree
Decomposition of CSPs
Sathiamoorthy Subbarayan and Henrik Reif Andersen
IT University of CopenhagenDenmark
Twentieth International Joint Conference on Artificial Intelligence 06 – 12 Jan 2007, Hyderabad, India
2www.itu.dk
Motivation
• Many CSPs have tree-like structure– Configuration, fault trees, digital circuits, protein
side-chain packing, Bayesian networks etc.,
• Hypertree decomposition: the most general in theory, lacks practical tools
• Very weak existing tools
3www.itu.dk
This Work
• Backtracking for hypertree decomp. (HTD)– No-goods and Isomorphism
• New Tractable Variants– HyperSpread (HSD), Connected Hypertree (CHTD)
• HSD is better than HTD – solves a recent problem
• CHTD: htw = chtw?• Experiments
4www.itu.dk
Constraint Hypergraph
a c
::
::
a b g
::
::
::
c d e
::
::
::
b d h
::
::
::
d e f g
::
::
::
::
a b
c
d e
f
g
h
Constraints Hypergraph
5www.itu.dk
Hypertree Decomposition (HTD)
abdhi
acd afgi
gijced
a b d h i
ac d a f g i
gij
a
bc
de
f
gh
i
j
Hypergraph
A Tree Decomposition
A Hypertree Decomposition
Width = 2
c e d
6www.itu.dk
Hypertree Width (htw)
• Complexity exponential in htw
• Advantage: more general than treewidth (tw)– For any class H: htw is bounded by tw– For some class H: unbounded tw, constant htw
7www.itu.dk
Observation
a b d h i
ac d a f g i
gij
a
bc
de
f
gh
i
j
Vars of each rooted subtree form a
connected subgraph
Eg: Root node subtree induces the whole hypergraph
Another example
c e d
8www.itu.dk
The New Backtracking Procedure
• Each search-tree node – contains: a subgraph– objective: decompose the subgraph– branching choices: subset of edges
9www.itu.dk
A sample run
a b d h i
Branching Choice:
a
b
d
h
i
a
bc
de
f
gh
i
j a
bc
de
f
gh
i
j
a
c
de
af
g
i
j
10www.itu.dk
A sample run
Branching Choice:
af
g
i
j
a
bc
d
h
i
a
c
de
a b d h i
ac d
c
de
11www.itu.dk
ac d
A sample run
af
g
i
j
a b d h i
Branching Choice: c
dec
de
c e d
12www.itu.dk
a f g iac d
A sample run
i
a b d h i
gijc e d
13www.itu.dk
No-Good Learning
• The next choice needs two edges
• If we need width <2 then we can learn the subgraph as No-Good
a b d h i
a
c
de
14www.itu.dk
Isomorphic subgraphsa
bc
de
f
gh
i
j
a
b
d
f
gh
i
a
b
d
gh
i
j
Choice 2
Choice 1
a
c
de
g
i
j
a
c
de
af
g
15www.itu.dk
HyperSpread Decomposition
a
b
d
f
gh
i
a
b
d
gh
i
af
g
Allow partial branching choices!!
•Each HTD is also HSD
•HSD is tractable
•For some instances hsw<htw
•Solves a recently stated problem
16www.itu.dk
Connected Hypertree Decomposition
a b d h i
af
g
i
j
Common variables: a,i
Restrict choices to edges with: a,i
Practically useful variant
chtw = htw?
a
bc
de
f
gh
i
j
17www.itu.dk
Experiments
• Intel Xeon 3.2 GHz, 4GB RAM
• Twelve instances: configuration, fault trees, SMT
• Tools and instances online:
http://www.itu.dk/people/sathi/connected-hypertree/
18www.itu.dk
Methodology
• Limit: 1800 seconds• Test methods: {HTD, CHTD}• ±Isomorphism
|E|k*k*-1 d4 d3 d2 d1
k* optimal width
width ≤|E|? width ≤ d2? width ≤ d4? width ≤ k*-1?
19www.itu.dk
Results overview
Method Previous tools
CHTD CHTD-NoIso
HTD HTD-NoIso
# optimal at most 1 8 6 5 3
• We don’t observe htw<chtw
NoIso : No Isomorphism
20www.itu.dk
CHTD: Time vs Width
Complexity peaks at k*-1
k*:optimal
21www.itu.dk
{CHTD, HTD} ± Isomorphism
CHTD much faster than HTD
Due to branching restrictions
Isomorphism very useful
22www.itu.dk
Conclusion
• Backtracking useful– Isomorphism and No-good
• HSD better than HTD• CHTD promising for practice
• Future work– htw = chtw ?– implement HSD– compare tree decomposition heuristics
23www.itu.dk
Thanks !