Title: Exact Reasoning: conditioning search and hybrids
1Exact Reasoningconditioning search and hybrids
2Probabilistic Inference Tasks
- Belief updating
- Finding most probable explanation (MPE)
- Finding maximum a-posteriory hypothesis
- Finding maximum-expected-utility (MEU) decision
3 Belief Updating
Smoking
lung Cancer
Bronchitis
X-ray
Dyspnoea
P (lung canceryes smokingno, dyspnoeayes )
?
4Conditioning generates the probability tree
Complexity of conditioning exponential time,
linear space
5ConditioningElimination
6Loop-cutset decomposition
- You condition until you get a polytree
A0
A1
A1
A1
A1
C
B
B
F
P(BF0) P(B, A0F0)P(B,A1F0)
Loop-cutset method is time exp in loop-cutset
size And linear space
7Super-bucket elimination(Dechter and El Fattah,
1996)
- Eliminating several variables at once
- Conditioning is done only in super-buckets
8The idea of super-buckets
Larger super-buckets (cliques) gtmore time but
less space
- Complexity
- Time exponential in clique (super-bucket) size
- Space exponential in separator size
9OR search space
A
F
B
C
Ordering A B E C D F
D
E
10AND/OR search space
A
F
B
C
D
E
Primal graph
DFS tree
11AND/OR vs. OR
AND
0
1
AND/OR
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
12OR vs AND/OR
OR
A
AND
0
1
AND/OR
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
OR
1
1
1
0
1
13AND/OR vs. OR
AND
0
1
AND/OR
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
AND/OR size exp(4), OR size exp(6)
OR
14AND/OR vs. OR
No-goods (A1,B1) (B0,C0)
AND
0
1
AND/OR
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
15AND/OR vs. OR
(A1,B1) (B0,C0)
OR
A
AND
0
1
AND/OR
OR
B
B
AND
0
1
0
OR
E
C
E
C
E
C
AND
1
0
1
0
1
0
1
1
0
1
OR
D
F
D
F
D
F
D
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A
A
A
0
1
0
1
0
1
OR
B
B
B
0
1
0
0
1
0
0
1
0
E
E
E
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
C
C
C
1
1
0
1
0
1
1
1
1
1
0
1
0
1
1
1
1
1
0
1
0
1
1
1
D
D
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
F
F
F
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
16OR space vs. AND/OR space
17AND/OR search tree for graphical models
- The AND/OR search tree of R relative to a
spanning-tree, T, has - Alternating levels of OR nodes (variables) and
AND nodes (values) - Successor function
- The successors of OR nodes X are all its
consistent values along its path - The successors of AND ltX,vgt are all X child
variables in T - A solution is a consistent subtree
- Task compute the value of the root node
18From DFS trees to pseudo-trees (Freuder 85,
Bayardo 95)
1
4
6
1
2
3
2
7
5
3
(a) Graph
4
7
1
1
2
7
5
3
5
3
5
2
7
4
6
6
4
6
(b) DFS tree depth3
(c) pseudo- tree depth2
(d) Chain depth6
19From DFS trees to Pseudo-trees
OR
1
AND
a
b
c
OR
2
7
AND
a
b
c
a
b
c
OR
DFS tree depth 3
3
3
3
5
5
5
AND
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
OR
4
4
4
4
4
4
4
4
4
6
6
6
6
6
6
6
6
6
AND
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
b
a
c
pseudo- tree depth 2
20Finding min-depth backbone trees
- Finding min depth DFS, or pseudo tree is
NP-complete, but - Given a tree-decomposition whose tree-width is
w, there exists a pseudo tree T of G whose
depth, satisfies (Bayardo and Mirankar, 1996,
bodlaender and Gilbert, 91) - m lt w log n,
21Generating pseudo-trees from Bucket trees
A
A
(A)
B
B
(AB)
C
C
(AC) (BC)
E
E
(AE)
(AE) (BE)
D
D
(BD) (DE)
F
F
(AF) (EF)
Bucket-tree based on d
d A B C E D F
Induced graph
Bucket-tree
Bucket-tree used as pseudo-tree
AND/OR search tree
22Pseudo Trees vs. DFS Trees
N number of nodes, P number of parents.
MIN-FILL ordering. 100 instances.
23AND/OR Search-tree properties (k domain size,
m pseudo-tree depth. n number of variables)
- Theorem Any AND/OR search tree based on a
pseudo-tree is sound and complete (expresses all
and only solutions) - Theorem Size of AND/OR search tree is O(n km)
- Size of OR search tree is O(kn)
- Theorem Size of AND/OR search tree can be
bounded by O(exp(w log n)) - Related to (Freuder 85 Dechter 90, Bayardo et.
al. 96, Darwiche 1999, Bacchus 2003) - When the pseudo-tree is a chain we get an OR
space
24Tasks and value of nodes
- V( n) is the value of the tree T(n) for the task
- Counting v(n) is number of solutions in T(n)
- Consistency v(n) is 0 if T(n) inconsistent, 1
othewise. - Optimization v(n) is the optimal solution in
T(n) - Belief updating v(n), probability of evidence in
T(n). - Partition function v(n) is the total
probability in T(n). - Goal compute the value of the root node
recursively using dfs search of the AND/OR tree. - Theorem Complexity of AO dfs search is
- Space O(n)
- Time O(n km)
- Time O(exp(w log n))
25DFS algorithm (CSP example)
A
0
B
4
0
OR node Marginalization operator (summation)
E
C
2
2
AND node Combination operator (product)
0
0
1
0
1
2
1
1
D
F
D
F
2
1
2
0
0
1
0
1
0
1
0
1
1
1
1
0
1
1
0
0
Value of node number of solutions below it
26Belief-updating on example
27A
PA(0)
PA(1)
0
1
B
B
PBA(00)
PBA(10)
PBA(01)
PBA(11)
0
1
0
1
E
D
E
D
E
D
E
D
PEAB(10,0)
PEAB(00,1)
PEAB(01,0)
PEAB(11,0)
PEAB(01,1)
PEAB(11,1)
PEAB(00,0)
PEAB(10,1)
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
C
C
C
C
C
C
C
C
PDBC(00,0) PCA(00)
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
28(No Transcript)
29(No Transcript)
30AND/OR Tree DFS Algorithm (Belief Updating)
Result P(D1,E0)
Evidence E0
OR
.24408
A
.6
.4
AND
.3028
.1559
0
1
.3028
OR
.1559
B
B
.1
.9
.4
.6
AND
.352
.27
.623
.104
0
1
0
1
OR
.4
.5
.7
.2
.88
.54
.89
.52
E
C
E
C
E
C
E
C
.4
.5
.7
.2
.2
.8
.2
.8
.1
.9
.1
.9
AND
.8
.9
.7
.5
.8
.9
.7
.5
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
.8
.9
.7
.5
.8
.9
.7
.5
D
D
D
D
D
D
D
D
.7
.8
.9
.5
.7
.8
.9
.5
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR node Marginalization operator (summation)
AND node Combination operator (product)
Value of node updated belief for sub-problem
below
Evidence D1
31Complexity of AND/OR Tree Search
k domain size m depth of pseudo-tree n
number of variables w treewidth
32From Search Trees to Search Graphs
- Any two nodes that root identical subtrees
(subgraphs) can be merged
33From Search Trees to Search Graphs
- Any two nodes that root identical subtrees
(subgraphs) can be merged
34From Search Trees to Search Graphs
- Any two nodes that root identical
subtrees/subgraphs can be merged - Minimal AND/OR search graph closure under merge
of the AND/OR search tree - Inconsistent subtrees can be pruned too.
- Some portions can be collapsed or reduced.
35AND/OR Tree
A
J
A
F
B
B
C
K
C
E
D
E
D
F
G
J
G
H
OR
A
H
K
AND
0
1
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
OR
AND
OR
AND
36An AND/ORgraph
A
J
A
F
B
B
C
K
C
E
D
E
D
F
G
J
G
H
OR
A
H
K
AND
0
1
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
OR
G
G
J
J
AND
0
1
0
1
0
1
0
1
OR
H
H
H
H
K
K
K
K
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
37Merging Based on Context
- One way of recognizing nodes that can be merged
- context (X) ancestors of X in pseudo tree that
are connected to X, or to descendants of X
A
AB
AB
AE
BC
38AND/OR Search Graph
Constraint Satisfaction Counting Solutions
Context
A
AB
AB
AE
BC
pseudo tree
OR
A
AND
0
1
OR
B
B
AND
1
1
0
0
C
C
OR
C
C
E
E
E
E
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
D
D
D
F
F
F
F
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
context minimal graph
39AND/OR Tree DFS Algorithm (Belief Updating)
Result P(D1,E0)
Evidence E0
.24408
A
.6
.4
.3028
.1559
0
1
.3028
.1559
B
B
.1
.9
.4
.6
.352
.27
.623
.104
0
1
0
1
.4
.5
.7
.2
.88
.54
.89
.52
E
C
E
C
E
C
E
C
.4
.5
.7
.2
.2
.8
.2
.8
.1
.9
.1
.9
.8
.9
.7
.5
.8
.9
.7
.5
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
.8
.9
.7
.7
.8
.9
.5
.5
D
D
D
D
D
D
D
D
.7
.8
.9
.5
.7
.8
.9
.5
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR node Marginalization operator (summation)
AND node Combination operator (product)
Value of node updated belief for sub-problem
below
Evidence D1
40AND/OR Graph DFS Algorithm (Belief Updating)
Result P(D1,E0)
Evidence E0
.24408
A
.6
.4
.3028
.1559
0
1
.3028
.1559
B
B
.1
.9
.4
.6
.352
.27
.623
.104
0
1
0
1
.4
.5
.7
.2
.88
.54
.89
.52
E
C
E
C
E
C
E
C
.4
.5
.7
.2
.2
.8
.2
.8
.1
.9
.1
.9
.8
.9
.7
.5
.8
.9
.7
.5
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
.7
.8
.9
.5
D
D
D
D
.8
.9
.5
.7
0
1
0
1
0
1
0
1
Evidence D1
41AND/OR context minimal graph
C
0
1
H
H
K
K
0
1
0
1
0
1
0
1
A
A
A
A
L
L
L
L
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
B
B
B
B
B
B
B
B
N
N
N
N
N
N
N
N
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
F
F
F
F
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
0
1
0
1
0
1
0
1
0
1
0
1
P
P
P
P
0
1
0
1
0
1
0
1
P
P
P
P
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
G
G
G
G
J
J
J
J
J
J
J
J
J
J
J
J
J
J
J
J
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
D
D
D
D
D
D
D
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
M
M
M
M
0
1
0
1
0
1
0
1
42How Big Is the Context?
- Theorem The maximum context size for a pseudo
tree is equal to the treewidth of the graph along
the pseudo tree.
43Treewidth vs. Pathwidth
TREE
ABC
BDFG
G
BDEF
D
A
B
treewidth 3 (max cluster size) - 1
F
EFH
C
E
M
K
H
FHK
L
HJ
KLM
J
CHAIN
ABC
pathwidth 4 (max cluster size) - 1
44Complexity of AND/OR Graph Search
k domain size n number of variables w
treewidth pw pathwidth
w pw w log n
45AND/OR search algorithms
- AO(i)
- i the max size of a cache table (i.e. number of
variables in a context)
i 0
i w treewidth
Space Time
O(n exp w ) O(n exp w )
O( n ) O( exp (w log n) )
46Searching AND/OR Graphs
- AO(i) searches depth-first, cache i-context
- i the max size of a cache table (i.e. number of
variables in a context)
i0
iw
i
Space O(exp w) Time O(exp w)
Space O(n) Time O(exp(w log n))
Space O(exp(i) ) Time O(exp(m_ii )
47Caching
A
J
A
F
B
B
C
K
C
E
D
E
D
F
G
J
G
H
OR
A
H
K
context(D)D context(F)F
AND
0
1
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
OR
AND
OR
AND
48Caching
A
J
A
F
B
B
C
K
C
E
D
E
D
F
context(D)D context(F)F
G
J
G
H
OR
A
H
K
AND
0
1
OR
B
B
AND
0
1
0
1
OR
E
C
E
C
E
C
E
C
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
OR
D
F
D
F
D
F
D
F
D
F
D
F
D
F
D
F
AND
0
1
0
1
OR
G
G
J
J
AND
0
1
0
1
0
1
0
1
OR
H
H
H
H
K
K
K
K
AND
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
49Size of minimal AND/OR context graphs
- Theorem
- Minimal AND/OR context graph is bounded
exponentially by its pseudo-tree induced-width. - The tree-width of a pseudo-chain is path-width
(pw) - ? Minimal OR search graph is O(exp(pw)).
- ? Minimal AND/OR graph is O(exp(w))
- Always, w pw, but pwlt w log n
50OR tree vs. OR graph
OR tree
OR graph
51AND/OR tree vs. AND/OR graph
AND/OR tree
AND/OR graph
52All four search spaces
Full OR search tree
Context minimal OR search graph
Full AND/OR search tree
Context minimal AND/OR search graph
53All four search spaces
Full OR search tree
Context minimal OR search graph
Time-space
Full AND/OR search tree
Context minimal AND/OR search graph
54Available code
- http//graphmod.ics.uci.edu/group/Software
55AND/OR w-cutset
56AND/OR w-cutset
pseudo tree
1-cutset tree
grahpical model
57Searching AND/OR Graphs
- AO(i) searches depth-first, cache i-context
- i the max size of a cache table (i.e. number of
variables in a context)
i0
iw
i
Space O(exp w) Time O(exp w)
Space O(n) Time O(exp(w log n))
Space O(exp(i) ) Time O(exp(m_ii )
58w-cutset Trees Over AND/OR space
- Definition
- T_w is a w-cutset tree relative to backbone tree
T, iff T_w is roots T and when removed, yields
tree-width w. - Theorem
- AO(i) time complexity for backbone T is time
O(exp(im_i)) and space O(i), m_i is the depth
of the T_i tree. - Better than w-cutset O(exp(ic_i)) when c_i is
the number of nodes in T_i