efficiently enumerating minimal triangulations
play

Efficiently Enumerating Minimal Triangulations Nofar Carmeli Batya - PowerPoint PPT Presentation

Efficiently Enumerating Minimal Triangulations Nofar Carmeli Batya Kenig Benny Kimelfeld Recent Trends in Knowledge Compilation 09/2017 1 Outline Short background TDs in probabilistic inference and knowledge compilation The


  1. Efficiently Enumerating Minimal Triangulations Nofar Carmeli Batya Kenig Benny Kimelfeld Recent Trends in Knowledge Compilation 09/2017 1

  2. Outline • Short background • TDs in probabilistic inference and knowledge compilation • The enumeration algorithm • Case study • An open problem 2

  3. Tree Decompositions Tree decomposition Tree Graph Every edge is contained in some bag Every node occurs in a connected subtree 3

  4. Generate a tree decomposition �(�, �) � 1. Triangulate the graph � � Every cycle of length > 3 has a chord � � Now �(� + �) is chordal , and � is called a triangulation of � A triangulation � is minimal if no edge can be removed while maintaining chordality 4

  5. Generate a tree decomposition �(�, �) 2. Extract the maximal cliques � = � � , … , � � in �(�, � + �) � • A chordal graph has at most |�| maximal cliques [Fulkerson+1965] • Can be easily and efficiently found � � �(�, ℰ′ ) is a �� = 2 �(�, ℰ) �, �, � �, �, � TD of �(�, �) � � � = 1 �� = 2 �, �, � 3. Connect the maximal cliques into a graph �(�, ℰ) where � � , � � ∈ ℰ iff � � ∩ � � ≠ ∅ • The weight of each edge � � , � ∈ ℰ is �� = |� � ∩ � � | � 4. Let �(�, ℰ′ ) be a maximum weight spanning tree of �(�, ℰ) 5

  6. Outline • Short background • TDs in probabilistic inference and knowledge compilation • The enumeration algorithm • Case study • An open problem 6

  7. Tree Decompositions in KC and Probabilistic Inference • Find a set of variables ! that decompose the problem into one or more independent subproblems Guided by a TD • For every possible assignment to the variables in ! • Independently solve smaller subproblems • Merge results (product) We want ! to be small • Aggregate results corresponding to different assignments (sum, max) 7

  8. Concrete Examples • C2D compiler [Darwiche’01, Darwiche ‘04, Chavira+Darwiche ’08,…] • Guided by a d-tree • Min-fill heuristic • Repeatedly apply hypergraph partitioning ( hmetis ) • Choose one with smallest width A form of • MiniC2D compiler [Oztok+Darwiche ‘15] tree-decomposition • Guided by a Decision-Vtree • Min-fill heuristic • Repeatedly apply of Hypergraph partitioning ( hmetis ) • Choose one with smallest width • AND/OR search [Dechter ‘13, Marinescu+ ‘14, Otten+ ’14, Lam+ ’16,…] • Guided by a Pseudo-Tree • Various heuristics: MCS, Min-Degree, Min-Fill,3 8

  9. Which TD to use ?? Choosing the right TD can have a profound impact on running time. time What makes these so much better for the problem? width BN: 100 vars 9

  10. Which TD to use ?? • Improving the Efficiency of Dynamic Programing on Tree Decompositions via Machine Learning [Abseher+ IJCAI ‘15] • Even TDs of the same width may yield extremely diverging runtimes • Other parameters influence the runtime at least to the same extent as width • Main idea: generate a pool of TDs and then choose the one with the “greatest promise” • Authors generate 10 TDs for every problem instance using min-fill • Apply ML algorithms for ranking the TDs according to their expected performance Required: Large amounts of diverse TDs in order to extract important features 10

  11. Which TDs not to use? Better tree decomposition Tree decomposition Better tree decomposition Graph Avoid: 1. Redundant bags 2. Redundant edges Minimal ( bag equivalent) Proper triangulations tree decompositions 11

  12. Outline • Short background • TDs in probabilistic inference and knowledge compilation • The enumeration algorithm • Case study • An open problem 12

  13. Goal Problem: Enumerating all minimal triangulations of a graph 1. Complexity guarantees 2. Effective practical solution Exponentially many minimal triangulations, what is an “efficient” algorithm? 13

  14. Efficiency of enumeration algorithms [Johnson,Papadimitriou,Yannakakis 88] polynomial delay start time Delay between successive answers is poly(input) incremental polynomial time start time Delay before answer i is polynomial in input + i 14

  15. The main theoretical result Main Theorem: Given a graph, it is possible to enumerate in incremental polynomial time: - The minimal triangulations - The proper TDs 15

  16. Goal: Enumerate Minimal Triangulations • A bijection [Parra&Scheffler97]: minimal triangulations ↔ maximal sets of saturated non-crossing minimal vertex separators 16

  17. Goal: Enumerate Maximal Independent Sets Enumerating max independent sets can be done in polynomial delay [Johnson+88] Problem: The graph may be of exponential size! … Challenge: Solve without generating the graph … 17

  18. The Enumeration Algorithm • Separator graph � !, ℇ of �(�, �) may be of exponential size but3 • We can efficiently enumerate the minimal separator set ! • Polynomial-delay iterator [Berry+99] • We can efficiently test whether a pair #, $ ∈ ℇ • Size of each maximal independent set % ⊆ ! of � is less than |�| • A triangulation of � has at most � − 1 minimal vertex separators [Fulkerson+1965] • We can efficiently (P-time) extend any independent set to one that is maximal • Extension Triangulation • We can apply any known triangulation algorithm for extension • MCS-M [Berry+02] • LB_TRIANG [Berry+06] 18

  19. Shifting a Min-Triangulation with a Min-Separator Node Maximal Independent set of non-crossing minimal separators s- shifting T : 1. Add s to T 2. Extract max. subset of non-crossing min-separators containing s 3. Extend to a minimal triangulation s -shift of T Min-Fill MCS … s T s 19 s

  20. Validate that the s -extension The Enumeration Algorithm is not already in Q or P ( 1. Generate a minimal triangulation T 0 Algorithm 2. Insert T 0 into Q Repeat until Q is empty : Min-Sep Iterator 1. Move some T from Q to P 2. Print T next () P 3. Insert into Q an s -shift of T for all Q minimal separators s in ( 4. Repeat until Q is non-empty or ! Iterator . hasNext() 1. + ← Iterator . -./0() 2. Insert into Q an s -shift of T for all minimal triangulations T in P + -extension Output: 20

  21. Experiments Is the algorithm effective? Does it help improve standard measures? 21

  22. Experiments • C++ implementation • Triangulation algorithms: MCS-M [Berry+02] LB-Triang [Berry+06] with min fill heuristics • Datasets: • Database queries, TPC-H (LogicBlox translation) 2-19 nodes, 1-46 edges • Probabilistic graphical models, UAI inference challenge 60-1039 nodes, 135-1696 edges • Random 30-200 nodes, 131-13955 edges 22

  23. Experiments • A single run (UAI, 414 nodes, 801 edges, MCS-M, 30 minutes) 50 7000 4500 46 all results 45 6232 4000 6000 39 number of results 40 ≤ � results 3500 5000 35 3000 3934 30 width 4000 2500 fill 25 2000 3000 Min width results 20 1500 15 2000 1000 10 1000 500 5 0 0 0 0 5 10 15 20 25 30 0 5 10 15 20 25 30 time (minutes) time (minutes) 23

  24. Outline • Short background • TDs in probabilistic inference and knowledge compilation • The enumeration algorithm • Case study • An open problem 24

  25. Case Study On the Impact of Pseudo-Trees on the Performance of Optimization Algorithms over AND/OR Search Spaces Héctor Otero Mediero Rina Dechter 25

  26. AND/OR Search Tree [Dechter and Mateescu 2007, Dechter 20133] A F B ℎ ≤ ∗ ⋅ log8 G A B E C F Solution tree : corresponds to a D C D E G OR A complete configuration of all primal graph pseudo tree AND variables [Freuder and Quinn 1985] 1 0 OR B B AND 1 0 1 0 OR C C F F F F C C AND 0 1 0 0 0 0 1 0 1 1 1 1 0 1 0 1 OR E D G G G G G G G G E D E D E D E D E D E D E D 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 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 26

  27. Experiments • Use enumeration algorithm to generate pseudo trees of varying width and height ℎ 9 • Test the influence of , ℎ , and their ratio 1 ≤ : ≤ 8 on execution times. 27

  28. Experiments time time width width BN: 100 vars, domain size: 2 Pedigree: 385 vars 28

  29. Experiments time time time width width Promedas: 1005 vars WCSP: 143 vars, 29

  30. Outline • Short background • TDs in probabilistic inference and knowledge compilation • The enumeration algorithm • Case study • An open problem 30

  31. Polynomial Delay ?? • We could enumerate minimal triangulations in p-delay if we could answer the following decision problem efficiently Given �(�, �) and two sets ;, < of vertex pairs X, Y ⊆ � × � Is there a minimal triangulation ℎ(�, � + �) such that: 1. ; ⊆ � 2. < ∩ � = ∅ 31

  32. The Decision Problem Does there exist a minimal triangulation ℎ(�, � + �) of �(�, �) such that: 1. ; ⊆ � 2. < ∩ � = ∅ Does there exist a chordal supergraph of � , ℎ(�, ℇ) such that: � ∪ ; ⊆ ℇ ⊆ (� × �) ∖ < The chordal graph sandwich problem is NP-complete [Golumbick+1994] 32

  33. Future Work • Theoretical • Polynomial delay • Practical • Optimizing / parallelizing the algorithm • Heuristically ranked enumeration 33

  34. Thank you 34

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend