270 likes | 324 Vues
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
E N D
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
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
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
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
(15) Z Theory {Q R S T U V W X Y Z} (12) Q (13) U (1) Q RT (14) V (5) T UVW (9) W XZ (2) ST (6) T W (10) X Y (3) SR (7) U W (11) W YZ (4) SR (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) RT (22) W YZ (17) ST (18) T (23) W Z (18) T (19) UVW (24) Z (20) VW (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
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
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
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
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
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
“Vanilla” MP vs. common strategies Bill MacCartney, Stanford KSL
“Smart” MP vs. set-of-support Bill MacCartney, Stanford KSL
Partition-derived ordering (PDO) Bill MacCartney, Stanford KSL
MP and PDO vs. SoS Bill MacCartney, Stanford KSL
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
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
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
The End Bill MacCartney, Stanford KSL
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
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
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
(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
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
(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
Automatic partitioning Bill MacCartney, Stanford KSL
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