partition-based logical reasoning
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Partition-BasedLogical Reasoning
Bill MacCartney (KSL), Sheila A. McIlraith (KSL),Eyal Amir (FRG/Berkeley), Tomas Uribe (SRI)
Richard Fikes and John McCarthyKnowledge Systems Lab | Formal Reasoning Group
Stanford University
with thanks to Mark Stickel and Vinay Chaudhri of SRI
11/14/02Bill MacCartney, Stanford KSL
Motivation
• With large KBs, general-purpose reasonerssuffer from combinatorial explosion. Can we focus reasoning by decomposing the KB into a
network 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?
11/14/02Bill 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
11/14/02Bill MacCartney, Stanford KSL
Automatic partitioning
• Begin with a KB in PL or FOL
Efficient reasoning depends on keeping
partition sizes and link sizes small
• 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
11/14/02Bill MacCartney, Stanford KSL
Reasoning with partitions: an example
A simple propositional theory
Theory {Q R S T U V W X Y Z}Partition 1 {Q R S T} Partition 2 {T U V W} Partition 3 {W X Y Z}{T} {W}
Partition 1 {Q R S T} Partition 2 {T U V W} Partition 3 {W X Y Z}{T} {W}
(1) Q R T(2) S T(3) S R
(4) S R
(5) T U V W(6) T W
(7) U W
(8) V W
(9) W X Z(10) X Y(11) W Y Z(15) Z
(12) Q (13) U
(14) V(16) R T(17) S T(18) T
(18) T
(19) U V W(20) V W(21) W
(21) W
(22) W Y Z(23) W Z(24) Z
(25)
Using partitioning, this query took just 10 resolution steps.
Using set-of-support, the same query can take 28 steps.
Query: Q U V Z ?
11/14/02Bill MacCartney, Stanford KSL
• Start with a tree-structured partition graph
Reasoning with partitions using MP
MP Algorithm[Amir & McIlraith 2000]
Pass messages in Li toward goal
• Identify goal partition
• Direct edges toward goal(fixing outbound link language Li for each partition)
• Concurrently, in each partition: Generate consequences in Li
11/14/02Bill MacCartney, Stanford KSL
• 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
Characteristics of MP
Minimizesbetween-partition
deduction
Supports parallel processing
Different reasonersin different partitions
Focuseswithin-partition
deduction
11/14/02Bill 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
11/14/02Bill 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
Alg 5 Alg 6
Number of partitions 124 40
Max symbols/partition 16 19
Max symbols/link 14 17
Max axioms/partition 80 95
Max partitions/axiom 25 28
Axioms in multiple partitions 152 152
11/14/02Bill 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-support
to 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?
11/14/02Bill MacCartney, Stanford KSL
“Vanilla” MP vs. common strategies
Performance of MP and other common strategies(relative to no strategy)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
None Ordering Set-of-support MP (alg 5) MP (alg 6)
# o
f re
so
luti
on
ste
ps
, re
lati
ve
to
no
str
ate
gy
q1
q2
q3
q4
q5
q6
q7
11/14/02Bill MacCartney, Stanford KSL
“Smart” MP vs. set-of-support
Performance of MP and MP + SoS(relative to no strategy)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
SoS MP5 MP6 MP5 + SoS MP6 + SoS
# o
f re
so
luti
on
ste
ps
, re
lati
ve
to
no
str
ate
gy
q1
q2
q3
q4
q5
q6
q7
11/14/02Bill MacCartney, Stanford KSL
Partition-derived ordering (PDO)
Performance of partition-derived ordering(relative to no strategy)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
SoS PDO5 PDO6 PDO5 + SoS PDO6 + SoS
# o
f re
so
luti
on
ste
ps
, re
lati
ve
to
no
str
ate
gy
q1
q2
q3
q4
q5
q6
q7
11/14/02Bill MacCartney, Stanford KSL
MP and PDO vs. SoS
Performance of MP + SoS and PDO + SoS(relative to SoS)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
SoS MP5 + SoS MP6 + SoS PDO5 + SoS PDO6 + SoS
# o
f re
so
luti
on
ste
ps
, re
lati
ve
to
se
t-o
f-s
up
po
rt
q1
q2
q3
q4
q5
q6
q7
11/14/02Bill 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
11/14/02Bill 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
11/14/02Bill MacCartney, Stanford KSL
Webwww.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.
References
11/14/02Bill MacCartney, Stanford KSL
Example
(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
The espresso machine theory
11/14/02Bill MacCartney, Stanford KSL
(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
Example: partitioning
hot-drink tea
coffeesteam
on-boiler
ok-boiler
water
on-pump
ok-pumpman-fill
Step 1: construct symbol graph
11/14/02Bill MacCartney, Stanford KSL
Example: partitioning
hot-drink tea
coffee
steam
on-boiler
ok-boiler
water
on-pump
ok-pumpman-fill
steam
water
hot-drink tea
coffee
steam on-boiler
ok-boiler
water on-pump
ok-pumpman-fill
water
steam
Step 2: graph decomposition
steam
water
11/14/02Bill MacCartney, Stanford KSL
Example: partitioning
steam
water
hot-drink tea
coffee
steam on-boiler
ok-boiler
water on-pump
ok-pumpman-fill
water
steam
(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
steam
water
Step 3: generate partition graph
11/14/02Bill MacCartney, Stanford KSL
Example: add query to partition 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
steam
water
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
(13) ok-boiler(14) on-boiler
(15) hot-drink
11/14/02Bill MacCartney, Stanford KSL
(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
steam
water
(12) ok-pump
(13) ok-boiler(14) on-boiler
(15) hot-drink
Example of MP
(16) on-pump water(17) man-fill water(18) water
water
steam
(19) ok-boiler on-boiler steam(20) steam
(21) steam tea hot-drink(22) steam hot-drink(23) hot-drink
Using set-of-support, SNARK took 28 steps to prove this.Using partitioning, SNARK took just 11 steps.
(24)
11/14/02Bill 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?