Presentation is loading. Please wait.

Presentation is loading. Please wait.

AND/OR Search for Mixed Networks #CSP Robert Mateescu ICS280 Spring 2004 - Current Topics in Graphical Models Professor Rina Dechter.

Similar presentations


Presentation on theme: "AND/OR Search for Mixed Networks #CSP Robert Mateescu ICS280 Spring 2004 - Current Topics in Graphical Models Professor Rina Dechter."— Presentation transcript:

1 AND/OR Search for Mixed Networks #CSP Robert Mateescu ICS280 Spring 2004 - Current Topics in Graphical Models Professor Rina Dechter

2 Mixed Networks Belief Networks A D BC E F A D BC E F Constraint Networks

3 Mixed Networks A D BC E F A D BC E F A D BC E F

4 Tasks for Mixed Networks Tasks for Belief Networks: –Belief updating: evaluating the posterior probability of each singleton proposition given some evidence; –Most probable explanation (MPE): finding a complete assignment to all variables having maximum probability given the evidence; –Maximum a posteriori hypothesis (MAP): finding the most likely assignment to a subset of hypothesis variables given the evidence; Tasks for Constraint Networks: –Consistent: Decide if network is consistent –Find solutions: Find one, some or all solutions Tasks for Mixed Networks: –Belief updating, MPE, MAP –Constraint Probability Evaluation (CPE): Find the probability of the constraint query

5 Auxiliary Network A D BC E F A D BC E F A D BC E F X Y Z Q

6 Mixed Graph The mixed graph is the union of the belief network graph and the constraint network graph The moral mixed graph is the union of the moral graph of the belief network and the graph of the constraint network Given a mixed graph G M = (G B,G R ) of a mixed network M (B,R) where G B is the directed graph of B, and G R is the undirected constraint graph of R, the ancestral graph of Y \in X in G M is the union of G R and the ancestral graph of Y in G B

7 dm-separation Definition: Given a mixed graph, G M and given three subsets of variables W, Y and Z which are disjoint, we say that W and Y are dm-separated given Z in the mixed graph G M, denoted dm, iff in the ancestral mixed graph of W U Y U Z, all the paths between W and Y are intercepted by variables in Z. Theorem: Given a mixed network M = M (B,R) and its mixed graph G M, then G M is a minimal I-map relative to dm-separation

8 AND/OR Search for Mixed Networks A D BC E F A D B CE F Mixed networkDFS (legal) tree

9 AND/OR Search Space 0 A B 0 E OR AND OR AND OR AND C 0 OR AND D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 1 B 0 EC 0 D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 A D B CE F

10 Forward: Expanding an AND node 0 A B 0 E OR AND OR AND OR AND C 0 OR AND D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 1 B 0 EC 0 D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 A D B CE F g-value(ANDnode) = ∏ P i (or 1, if product is empty) e.g. g-value( ) = P(B=1|A=0)

11 Forward: Expanding an OR node 0 A B 0 E OR AND OR AND OR AND C 0 OR AND D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 1 B 0 EC 0 D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 A D B CE F g-value(ORnode) = 0

12 Backward: Propagating g-values 0 A B 0 E OR AND OR AND OR AND C 0 OR AND D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 1 B 0 EC 0 D 01 F 01 1 D 01 F 01 01 1 EC 0 D 01 F 01 1 D 01 F 01 01 A D B CE F OR nodes perform summation AND nodes perform product

13 The main idea Search algorithms can exploit a wide range of constraint propagation techniques When generating AND nodes, consistency is checked according to the desired level of constraint propagation

14 AND/OR Search (1) A OR AND OR AND OR AND OR AND A D BC E F g(A)=0 A D B CE F

15 AND/OR Search (2) 0 A OR AND OR AND OR AND OR AND 1 A D BC E F g(A)=0 g( )=P(A=1) g( )=P(A=0) A D B CE F

16 AND/OR Search (3) 0 A B OR AND OR AND OR AND OR AND 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 A D B CE F

17 AND/OR Search (4) 0 A B 0 OR AND OR AND OR AND OR AND 1 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 g( )=P(B=0|A=0)g( )=P(B=1|A=0) A D B CE F

18 AND/OR Search (5) 0 A B 0 E OR AND OR AND OR AND C OR AND 1 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 g(E)=0g(C)=0 g( )=P(B=0|A=0)g( )=P(B=1|A=0) A D B CE F

19 AND/OR Search (6) 0 A B 0 E OR AND OR AND OR AND C OR AND 0 1 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 g(E)=0g(C)=0 g( )=P(E=0|A=0,B=0) g( )=P(B=0|A=0)g( )=P(B=1|A=0) A D B CE F

20 AND/OR Search (6) 0 A B 0 E OR AND OR AND OR AND C OR AND 0 1 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 g(C)=0 g(E)=P(E=0|A=0,B=0) g( )=P(B=0|A=0)g( )=P(B=1|A=0) A D B CE F

21 AND/OR Search (8) 0 A B 0 E OR AND OR AND OR AND C OR AND 0 1 1 A D BC E F g(A)=0 g( )=P(A=0) g( )=P(A=1) g(B)=0 g(C)=0 g( )= P(B=0|A=0) * P(E=0|A=0,B=0) g( )=P(B=1|A=0) A D B CE F

22 Constraint propagation A D BC EF GHIK A D BC EF GHIK > > > > > > > > > All domains are {1,2,3,4}

23 Constraint checking only 12 A C 34 BCB 234 ED 3434 HG 44 GI 4 I D 4 G ED 234 FF 4 K F 4 K 3 K 4 3434 4 G DD 4 K FF B 4 D B OR AND OR AND OR AND OR A D BC EF GHIK > > > > > > > > >

24 Forward checking 12 A C 34 BCB 234 ED 3434 HG 44 GI 4 I D 4 G ED 234 FF 4 K F 4 K 3 K 4 3434 4 G DD 4 K FF B 4 D B OR AND OR AND OR AND OR A D BC EF GHIK > > > > > > > > >

25 Maintaining arc-consistency 12 A C 34 BCB 234 ED 3434 HG 44 GI 4 I D 4 G ED 234 FF 4 K F 4 K 3 K 4 3434 4 G DD 4 K FF B 4 D B OR AND OR AND OR AND OR A D BC EF GHIK > > > > > > > > >

26 AND/OR vs. OR Space

27 Linear space algorithms

28

29 AND/OR search vs. Bucket Elimination

30 #CSP #CSP – Counting the solutions of a CSP problem is very similar to the CPE task in mixed networks If the belief part in a mixed network is empty, we can translate the AND/OR search for mixed networks to an AND/OR search for CSPs. OR nodes are initialized with g-value 0 AND nodes are initialized with g-value 1

31 Parent set and parent separator set A D B CE F Parent setParent separator set A BAAB C ABC DBCD EABE FACF

32 Caching in AND/OR search If space is available, parts of the search tree can be cached, transforming the search space into a search graph In principle, we can cache at OR level and/or at AND level Caching at AND level => use parent separator set Caching at OR level => use parent set size(parent separator set) ≤ size(parent set) + 1

33 ORcache, N20, K3, Nc20,Pc4, inst20 Time

34 ORcache, N20, K3, Nc20,Pc4, inst20 # of nodes


Download ppt "AND/OR Search for Mixed Networks #CSP Robert Mateescu ICS280 Spring 2004 - Current Topics in Graphical Models Professor Rina Dechter."

Similar presentations


Ads by Google