Knowledge Evolution Tools KB development requires knowledge evolution Debugging, refining, structuring, modularizing, … Power tools are needed to support KB evolution KB diagnosis Bugs, omissions, heuristic warnings, architectural advice KB merging To enable interoperation of KBs with overlapping content KB partitioning To enable effective reasoning To produce reusable KB building blocks KSL is developing knowledge evolution tools Knowledge Systems Laboratory, Stanford University
Partition-Based Logical Reasoning Eyal Amir Sheila McIlraith John McCarthy Richard Fikes Formal Reasoning Group Knowledge Systems Laboratory Stanford University In collaboration with Vinay Chaudhri, Mark Stickel, and Tomas Uribe Artificial Intelligence Center SRI International
Knowledge Systems Laboratory, Stanford University Objective The problem: How to reason effectively with common sense KBs created by multiple domain experts Properties of these KBs: Large-scale with significant internal structure Overlapping content Require multiple kinds of reasoners What we are doing Developing theory, algorithms, and implementations for Query answering More efficient propositional and first-order logical reasoning that exploit KB structure Supporting SRI in the application and evaluation of this work Richard: I would just say here. “The RKF program is tasked with supporting domain experts in rapidly constructing KBs (rephrase)…but these KBs are of limited use unless we have ways to reason effectively with them, to extract the knowledge provided by these domain experts. The work we’ve been doing addresses precisely this problem, (providing a next-step in the reformulation of knowledge in support of knowledge formation for eventual extraction.)” Knowledge Systems Laboratory, Stanford University
Knowledge Systems Laboratory, Stanford University General Approach Graph-based partitioning techniques exploiting structure: Decompose Convert to Tree Original KB Graph Tree Knowledge Systems Laboratory, Stanford University
Example Partitioned KB ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump A ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam coffee hot_drink coffee teabag steam teabag hot_drink water A2 water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam A3 steam coffee hot_drink coffee teabag steam teabag hot_drink Knowledge Systems Laboratory, Stanford University
Knowledge Systems Laboratory, Stanford University General Approach Graph-based partitioning techniques exploiting structure: Decompose Convert to Tree Original Problem Graph Tree Message-passing to realize global reasoning: Inference done locally at each node Information propagated between nodes to give global solution Inference is linear in the tree structure, worst-case exponential within the individual nodes. Knowledge Systems Laboratory, Stanford University
Example Partitioned KB ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump A ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam coffee hot_drink coffee teabag steam teabag hot_drink water A2 water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam A3 steam coffee hot_drink coffee teabag steam teabag hot_drink Knowledge Systems Laboratory, Stanford University
Message Passing Algorithm (FMP) Order partitions by distance from query Concurrently: Perform consequence finding in each partition Consequences in the communication language of the link towards the query are added to the linked partition If Q is proven, return YES 1 2 Q Knowledge Systems Laboratory, Stanford University
Prove hot_drink, Given ok_pump, ok_boiler, on_boiler FMP using Resolution (for example) (1) ok_pump on_pump water (2) man_fill water (3) man_fill on_pump (4) man_fill on_pump (12) ok_pump assert (13) on_pump water (2,4) (14) ok_pump water (13,1) (13) water (14,12) water (5) water ok_boiler on_boiler steam (6) water steam (7) on_boiler steam (8) ok_boiler steam (14) ok_boiler assert (15) on_boiler assert (16) ok_boiler on_boiler steam (13,5) (17) on_boiler steam (16,14) (18) steam (17,15) steam (9) steam coffee hot_drink (10) coffee teabag (11) steam teabag hot_drink (19) steam teabag hot_drink (9,10) (20) steam hot_drink (19,11) (21) hot_drink (20,18) Knowledge Systems Laboratory, Stanford University
Benefits of Partitioning ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam coffee hot_drink coffee teabag steam teabag hot_drink water steam A1 A2 A3 Reduces BETWEEN-partition deduction Enables parallel processing Allows for different reasoners in each partition Knowledge Systems Laboratory, Stanford University
A New Refinement: Focused FMP Order partitions by distance from query Concurrently: Perform consequence finding in the outbound communication language of each partition Consequences in the communication language of the link towards the query are added to the linked partition If Q is proven, return YES 1 2 Q Knowledge Systems Laboratory, Stanford University
Prove hot_drink, Given ok_pump, ok_boiler, on_boiler FMP using Resolution (for example) (1) ok_pump on_pump water (2) man_fill water (3) man_fill on_pump (4) man_fill on_pump (12) ok_pump assert (13) on_pump water (2,4) (14) ok_pump water (13,1) (13) water (14,12) water (5) water ok_boiler on_boiler steam (6) water steam (7) on_boiler steam (8) ok_boiler steam (14) ok_boiler assert (15) on_boiler assert (16) ok_boiler on_boiler steam (13,5) (17) on_boiler steam (16,14) (18) steam (17,15) steam (9) steam coffee hot_drink (10) coffee teabag (11) steam teabag hot_drink (19) steam teabag hot_drink (9,10) (20) steam hot_drink (19,11) (21) hot_drink (20,18) Knowledge Systems Laboratory, Stanford University
Benefits of Partitioning With Focused FMP Reduces WITHIN-partition deduction A1 ok_pump on_pump water man_fill water man_fill on_pump man_fill on_pump water ok_boiler on_boiler steam water steam on_boiler steam ok_boiler steam steam coffee hot_drink coffee teabag steam teabag hot_drink water steam Reduces BETWEEN-partition deduction A2 Enables parallel processing Allows for different reasoners in each partition A3 Knowledge Systems Laboratory, Stanford University
Accomplishments and Next Steps Accomplishments and status Theory developed Algorithms designed, implemented, and tested For both partitioning and reasoning with partitioned KBs Evaluations being conducted on RKF KBs By SRI with support from Stanford Next steps Complete evaluation of effectiveness on RKF KBs and tasks Use RKF evaluation to determine high payoff next R&D steps Incorporate into the RKF end-to-end systems Embed in Chimaera as a knowledge evolution tool Will enhance SME’s ability to produce useful KBs Knowledge Systems Laboratory, Stanford University
Knowledge Systems Laboratory, Stanford University Want to Learn More? Papers Amir, E. and McIlraith, S.; “Partition-Based Logical Reasoning for First-Order and Propositional Theories”; Submitted for Journal Publication. McIlraith, S. and Amir, E.; “Theorem Proving with Structured Theories”; 17th International Conference on Artificial Intelligence (IJCAI-01); 2001. Amir, E.; “Efficient Approximation for Triangulation of Minimum Tree Width”; 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. Software Partitioning: http://www-formal.stanford.edu/eyal/decomp/ Partition-based SAT: By request. Contact Sheila McIlraith sam@ksl.stanford.edu Partition-based Theorem Proving: Contact SRI Knowledge Systems Laboratory, Stanford University