1 / 26

Partition-Based Logical Reasoning

Partition-Based Logical Reasoning. Bill MacCartney (KSL) , Sheila A. McIlraith (KSL) , Eyal Amir (FRG/Berkeley) , Tomas Uribe (SRI) Richard Fikes and John McCarthy Knowledge Systems Lab | Formal Reasoning Group Stanford University with thanks to

ray-ramsey
Download Presentation

Partition-Based Logical Reasoning

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Partition-BasedLogical Reasoning Bill MacCartney (KSL), Sheila A. McIlraith (KSL), Eyal Amir (FRG/Berkeley), Tomas Uribe (SRI) Richard Fikes and John McCarthy Knowledge Systems Lab | Formal Reasoning Group Stanford University with thanks to Mark Stickel and Vinay Chaudhri of SRI

  2. Motivation • With large KBs, general-purpose reasonerssuffer from combinatorial explosion. • Can we focus reasoning by decomposing the KB into anetwork of minimally-connected partitions? • Special-purpose reasoners can be highly efficient in specific domains, but how to integrate them? • Given a network of (possibly heterogeneous) knowledge systems, how can we achieve efficient global reasoning? • Can we exploit implicit structure of knowledge to make reasoning more focused & efficient? Bill MacCartney, Stanford KSL

  3. Overview • Algorithms and theoretical results • Automatic partitioning of large KBs • Reasoning with partitions using message passing (MP) • Experimental testing • Empirical validation of the effectiveness of partitioning • Even better when combined with good local strategies • Surprising, productive results • Partitioning can induce near-optimal symbol orderings • MP can integrate special-purpose reasoners • Many new research questions Bill MacCartney, Stanford KSL

  4. Automatic partitioning • Begin with a KB in PL or FOL • Construct symbol graph • Edges join symbols which appear together in an axiom • Apply tree decomposition algorithm • “Alg 5”: a variant of min-fill • “Alg 6”: a divide-and-conquer tree-width algorithm • Partition axioms correspondingly • Each partition has its own vocabulary • “Link languages” are defined by shared vocabulary Efficient reasoning depends on keepingpartition sizes and link sizes small Bill MacCartney, Stanford KSL

  5. (15) Z Theory {Q R S T U V W X Y Z} (12) Q (13) U (1) Q RT (14) V (5) T UVW (9) W XZ (2) ST (6) T W (10) X Y (3) SR (7) U W (11) W YZ (4) SR (8) V W {W} {T} Partition 1 {Q R S T} Partition 2 {T U V W} Partition 3 {W X Y Z} {W} {T} Partition 1 {Q R S T} Partition 2 {T U V W} Partition 3 {W X Y Z} Reasoning with partitions: an example Query: Q U  V  Z ? A simple propositional theory (21) W (16) RT (22) W YZ (17) ST (18) T (23) W Z (18) T (19) UVW (24) Z (20) VW (25)  (21) W Using partitioning, this query took just 10 resolution steps. Using set-of-support, the same query can take 28 steps. Bill MacCartney, Stanford KSL

  6. Reasoning with partitions using MP MP Algorithm [Amir & McIlraith 2000] • Start with a tree-structured partition graph • Identify goal partition • Direct edges toward goal • (fixing outbound link language Li for each partition) • Concurrently, in each partition: • Generate consequences in Li • Pass messages in Li toward goal Bill MacCartney, Stanford KSL

  7. Characteristics of MP • Reasoning is performed locally in each partition • Relevant results propagate toward goal partition • Globally sound & complete… provided each local reasoner is sound & complete for Li-consequence finding • Performance is worst-caseexponential within partitions, but linear in tree structure Minimizesbetween-partitiondeduction Focuseswithin-partitiondeduction Supports parallel processing Different reasoners in different partitions Bill MacCartney, Stanford KSL

  8. Experimental Testing • Do “real world” KBs exhibit inherent structure? • Can we generate partitionings in which both partition sizes and link language sizes are small? • Can partition-based reasoning outperform other strategies? • Experimental testbed • Theorem prover: SNARK • Thanks to Mark Stickel and SRI • KB: Cyc • A subset on spatial relationships, ~750 axioms, ~150 symbols • We’re working on adding SUMO, Geo-Logica, RCC-8 • Queries • Cyc queries provided by Vinay Chaudhri Bill MacCartney, Stanford KSL

  9. Results: automatic partitioning • Partition graph is largely independent of query • But edges may need to be redirected • We’re experimenting with multiple algorithms Bill MacCartney, Stanford KSL

  10. Testing MP • “Vanilla” MP vs. common restriction strategies • Use MP with no local strategy • Compare to no strategy, ordered resolution, set-of-support • “Smart” MP vs. set-of-support • In SNARK testbed, we use MP + set-of-supportto approximate MP with smart local strategy • Within-partition restriction strategies should do better • Partition-derived symbol ordering • Use partitioning to induce symbol ordering • Compare partition-derived ordering with set-of-support • What if we combine them? Bill MacCartney, Stanford KSL

  11. “Vanilla” MP vs. common strategies Bill MacCartney, Stanford KSL

  12. “Smart” MP vs. set-of-support Bill MacCartney, Stanford KSL

  13. Partition-derived ordering (PDO) Bill MacCartney, Stanford KSL

  14. MP and PDO vs. SoS Bill MacCartney, Stanford KSL

  15. Ongoing research • Testing on more KBs • Partition-derived symbol orderings • Can we beat hand-crafted symbol orderings? • Within-partition restriction strategies • Focus reasoning on Li-consequence finding • Completeness results • When is partitioning + set-of-support complete? • Distributed implementations • Demonstrate integration of heterogeneous reasoners Bill MacCartney, Stanford KSL

  16. Conclusions • Partitioning can speed up reasoning • Makes large KBs tractable by exploiting implicit structure • Reasoning becomes significantly more focused and efficient • Smarter local strategies should do even better • Partition-derived ordering is surprisingly effective • Especially when combined with set-of-support • Automatic alternative to hand-crafted orderings • Partitioning supports heterogeneouslocal reasoners • Efficient special-purpose reasoners can be cleanly integrated • MP ensures global soundness & completeness Bill MacCartney, Stanford KSL

  17. References Web www.ksl.stanford.edu/projects/RKF/Partitioning/ Papers • Amir, E. and McIlraith, S., “Partition-Based Logical Reasoning for First-Order and Propositional Theories,” Artificial Intelligence journal, accepted for publication. • McIlraith, S. and Amir, E., “Theorem Proving with Structured Theories,” 17th International Joint Conference on Artificial Intelligence (IJCAI-01), 2001. • Amir, E., “Efficient Approximation for Triangulation of Minimum Treewidth,” 17th Conference on Uncertainty in Artificial Intelligence (UAI ’01), 2001. • Amir, E. and McIlraith, S., “Solving Satisfiability using Decomposition and the Most Constrained Subproblem.” Proceedings of SAT 2001, 2001. • Amir, E. and McIlraith, S., “Partition-Based Logical Reasoning,” 7th International Conference on Principles of Knowledge Representation and Reasoning (KR ’2000), 2000. Bill MacCartney, Stanford KSL

  18. The End Bill MacCartney, Stanford KSL

  19. Example The espresso machine theory (1) ok-pump  on-pump  water (2) man-fill  water (3) man-fill  on-pump (4) man-fill  on-pump (5) water  ok-boiler  on-boiler  steam (6) water  steam (7) on-boiler  steam (8) ok-boiler  steam (9) steam  coffee  hot-drink (10) steam  tea  hot-drink (11) coffee  tea Bill MacCartney, Stanford KSL

  20. man-fill ok-pump on-pump water ok-boiler on-boiler steam coffee hot-drink tea Example: partitioning Step 1: construct symbol graph (1) ok-pump  on-pump  water (2) man-fill  water (3) man-fill  on-pump (4) man-fill  on-pump (5) water ok-boiler  on-boiler  steam (6) water  steam (7) on-boiler  steam (8) ok-boiler  steam (9) steam  coffee  hot-drink (10) steam  tea  hot-drink (11) coffee  tea Bill MacCartney, Stanford KSL

  21. man-fill ok-pump man-fill ok-pump water on-pump on-pump water water water ok-boiler water ok-boiler steam on-boiler on-boiler steam steam steam coffee steam coffee hot-drink tea hot-drink tea Example: partitioning Step 2: graph decomposition Bill MacCartney, Stanford KSL

  22. (1) ok-pump  on-pump  water (2) man-fill  water (3) man-fill  on-pump (4) man-fill  on-pump man-fill ok-pump water on-pump water water (5) water ok-boiler  on-boiler  steam (6) water  steam (7) on-boiler  steam (8) ok-boiler  steam water ok-boiler steam on-boiler steam steam (9) steam  coffee  hot-drink (10) steam  tea  hot-drink (11) coffee  tea steam coffee hot-drink tea Example: partitioning Step 3: generate partition graph Bill MacCartney, Stanford KSL

  23. Example: add query to partition graph Query: If the pump is OK and the boiler is OK and the boiler is on, do we get a hot drink? (12) ok-pump (1) ok-pump  on-pump  water (2) man-fill  water (3) man-fill  on-pump (4) man-fill  on-pump water (13) ok-boiler (5) water ok-boiler  on-boiler  steam (6) water  steam (7) on-boiler  steam (8) ok-boiler  steam (14) on-boiler steam (9) steam  coffee  hot-drink (10) steam  tea  hot-drink (11) coffee  tea (15) hot-drink Bill MacCartney, Stanford KSL

  24. (12) ok-pump (1) ok-pump  on-pump  water (2) man-fill  water (3) man-fill  on-pump (4) man-fill  on-pump water water (13) ok-boiler (5) water ok-boiler  on-boiler  steam (6) water  steam (7) on-boiler  steam (8) ok-boiler  steam (14) on-boiler steam steam (15) hot-drink (9) steam  coffee  hot-drink (10) steam  tea  hot-drink (11) coffee  tea Example of MP Using set-of-support, SNARK took 28 steps to prove this. Using partitioning, SNARK took just 11 steps. (16) on-pump  water (17) man-fill  water (18) water (19) ok-boiler  on-boiler  steam (20) steam (21) steam  tea  hot-drink (22) steam  hot-drink (23) hot-drink (24)  Bill MacCartney, Stanford KSL

  25. Automatic partitioning Bill MacCartney, Stanford KSL

  26. Queries hd-q1 If the pump is OK and the boiler is OK and the boiler is on, do we get a hot drink? cyc-p5 If A and B are inside C, can C be inside A? cyc-p7 If A and B are part of C and C is at D, where is A? cyc-p1 Suppose that A is touching B and B is inside C and C is at D. Is A at D? cyc-v5 A has parts B, C, and D. B has parts E, and F. Is F near A? cyc-p3 If C is between A and B, and both A and B are inside D, and D is at E, is C at E? cyc-p4 If C is between A and B, and both A and B are at D, is C also at D? Bill MacCartney, Stanford KSL

More Related