A global workspace framework for combined reasoning

Artificial Intelligence research has produced many effective techniques for solving a wide range of problems. Practitioners tend to concentrate their efforts in one particular problem solving paradigm and, in the main, AI research describes new methods for solving particular types of problems or improvements in existing approaches. By contrast, much less research has considered how to fruitfully combine different problem solving techniques. Numerous studies have demonstrated how a combination of reasoning approaches can improve the effectiveness of one of those methods. Others have demonstrated how, by using several different reasoning techniques, a system or method can be developed to accomplish a novel task, that none of the individual techniques could perform. Combined reasoning systems, i.e., systems which apply disparate reasoning techniques in concert, can be more than the sum of their parts. In addition, they gain leverage from advances in the individual methods they encompass. However, the benefits of combined reasoning systems are not easily accessible, and systems have been hand-crafted to very specific tasks in certain domains. This approach means those systems often suffer from a lack of clarity of design and are inflexible to extension. In order for the field of combined reasoning to advance, we need to determine best practice and identify effective general approaches. By developing useful frameworks, we can empower researchers to explore the potential of combined reasoning, and AI in general. We present here a framework for developing combined reasoning systems, based upon Baars’ Global Workspace Theory. The architecture describes a collection of processes, embodying individual reasoning techniques, which communicate via a global workspace. We present, also, a software toolkit which allows users to implement systems according to the framework. We describe how, despite the restrictions of the framework, we have used it to create systems to perform a number of combined reasoning tasks. As well as being as effective as previous implementations, the simplicity of the underlying framework means they are structured in a straightforward and comprehensible manner. It also makes the systems easy to extend to new capabilities, which we demonstrate in a number of case studies. Furthermore, the framework and toolkit we describe allow developers to harness the parallel nature of the underlying theory by enabling them to readily convert their implementations into distributed systems. We have experimented with the framework in a number of application domains and, through these applications, we have contributed to constraint satisfaction problem solving and automated theory formation.

[1]  Michael Wooldridge,et al.  The dMARS Architecture: A Specification of the Distributed Multi-Agent Reasoning System , 2004, Autonomous Agents and Multi-Agent Systems.

[2]  John J. Cannon,et al.  The Magma Algebra System I: The User Language , 1997, J. Symb. Comput..

[3]  Volker Sorge,et al.  Ω-ANTS: a blackboard architecture for the integration of reasoning techniques into proof planning , 2001 .

[4]  Stephen Muggleton,et al.  Mathematical applications of inductive logic programming , 2006, Machine Learning.

[5]  Kendall Scott,et al.  UML distilled - a brief guide to the Standard Object Modeling Language (2. ed.) , 2000, notThenot Addison-Wesley object technology series.

[6]  Holger Busch First-Order Automation for Higher-Order-Logic Theorem Proving , 1994, TPHOLs.

[7]  François Laburhe CHOCO: implementing a CP kernel , 2007 .

[8]  Imre Lakatos,et al.  On the Uses of Rigorous Proof. (Book Reviews: Proofs and Refutations. The Logic of Mathematical Discovery) , 1977 .

[9]  Mats Carlsson,et al.  An Open-Ended Finite Domain Constraint Solver , 1997, PLILP.

[10]  Maria Paola Bonacina The Clause-Diffusion Theorem Prover Peers-mcd (System Description) , 1997, CADE.

[11]  Frank Pfenning,et al.  TPS: An Interactive and Automatic Tool for Proving Theorems of Type Theory , 1993, HUG.

[12]  Daniel Jackson,et al.  Alloy: a lightweight object modelling notation , 2002, TSEM.

[13]  Barry O'Sullivan,et al.  Query-Driven Constraint Acquisition , 2007, IJCAI.

[14]  Jorg Schwenk,et al.  A classification of abelian quasigroups , 1999 .

[15]  Jörg Denzinger,et al.  Knowledge-based Cooperation between Theorem Provers by Techs , 1999 .

[16]  B. Baars A cognitive theory of consciousness , 1988 .

[17]  William McCune Automatic Proofs and Counterexamples for Some Ortholattice Identities , 1998, Inf. Process. Lett..

[18]  Peter Baumgartner,et al.  PROTEIN: A PROver with a Theory Extension INterface , 1994, CADE.

[19]  Jörg Denzinger,et al.  DISCOUNT - A Distributed and Learning Equational Prover , 2004, Journal of Automated Reasoning.

[20]  M. Stickel,et al.  Automated reasoning and exhaustive search: Quasigroup existence problems☆ , 1995 .

[21]  Ingo Dahn,et al.  Integration of Automated and Interactive Theorem Proving in ILP , 1997, CADE.

[22]  Toby Walsh,et al.  CGRASS: A System for Transforming Constraint Satisfaction Problems , 2002, International Workshop on Constraint Solving and Constraint Logic Programming.

[23]  Christoph Benzmüller,et al.  An Agent-Based Architecture for Dialogue Systems , 2006, Ershov Memorial Conference.

[24]  Volker Sorge,et al.  Agent-Oriented Integration of Distributed Mathematical Services , 1999, J. Univers. Comput. Sci..

[25]  Simon Colton,et al.  Automated conjecture making in number theory using HR, Otter and Maple , 2005, J. Symb. Comput..

[26]  Stan Franklin,et al.  Realizing consciousness in software agents , 1999 .

[27]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[28]  Piergiorgio Bertoli,et al.  Specification and Integration of Theorem Provers and Computer Algebra Systems , 1998, AISC.

[29]  Ian P. Gent,et al.  Minion: A Fast Scalable Constraint Solver , 2006, ECAI.

[30]  Jacques D. Fleuriot,et al.  IsaPlanner: A Prototype Proof Planner in Isabelle , 2003, CADE.

[31]  Volker Sorge,et al.  Experiments with an Agent-Oriented Reasoning System , 2001, KI/ÖGAI.

[32]  Volker Sorge,et al.  Combined reasoning by automated cooperation , 2008, J. Appl. Log..

[33]  Tom M. Mitchell,et al.  Generalization as Search , 2002 .

[34]  Christian B. Suttner SPTHEO - A Parallel Theorem Prover , 2004, Journal of Automated Reasoning.

[35]  Christophe Lecoutre,et al.  AbsCon: A Prototype to Solve CSPs with Abstraction , 2001, CP.

[36]  Matthias Fuchs,et al.  High Performance ATP Systems by Combining Several AI Methods , 1997, IJCAI.

[37]  William McCune,et al.  ROO: A Parallel Theorem Prover , 1992, CADE.

[38]  Barry O'Sullivan,et al.  A SAT-Based Version Space Algorithm for Acquiring Constraint Satisfaction Problems , 2005, ECML.

[39]  Volker Sorge,et al.  Proof Development with OMEGA , 2002, CADE.

[40]  Nicholas Carriero,et al.  Coordination languages and their significance , 1992, CACM.

[41]  Boris Konev,et al.  TRP++2.0: A Temporal Resolution Prover , 2003, CADE.

[42]  Jörg H. Siekmann,et al.  ΩMEGA: Resource-Adaptive Processes in an Automated Reasoning System , 2011, Resource-Adaptive Cognitive Processes.

[43]  B. Baars The conscious access hypothesis: origins and recent evidence , 2002, Trends in Cognitive Sciences.

[44]  Lawrence C. Paulson,et al.  Experiments on Supporting Interactive Proof Using Resolution , 2004, IJCAR.

[45]  Warwick Harvey,et al.  Essence: A constraint language for specifying combinatorial problems , 2007, Constraints.

[46]  M. Shanahan,et al.  Applying global workspace theory to the frame problem , 2005, Cognition.

[47]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[48]  Hantao Zhang,et al.  SEM: a System for Enumerating Models , 1995, IJCAI.

[49]  Geoff Sutcliffe,et al.  The development of CASC , 2002, AI Commun..

[50]  Anand S. Rao,et al.  AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language , 1996, MAAMAW.

[51]  Christoph Weidenbach,et al.  System Description: SpassVersion 3.0 , 2007, CADE.

[52]  Stephan Schulz,et al.  E - a brainiac theorem prover , 2002, AI Commun..

[53]  J. Ross Quinlan,et al.  Learning logical definitions from relations , 1990, Machine Learning.

[54]  Lawrence Charles Paulson,et al.  Isabelle: A Generic Theorem Prover , 1994 .

[55]  Geoff Sutcliffe,et al.  Evaluating general purpose automated theorem proving systems , 2001, Artif. Intell..

[56]  M. Shanahan A cognitive architecture that combines internal simulation with a global workspace , 2006, Consciousness and Cognition.

[57]  Sergey Berezin,et al.  CVC Lite: A New Implementation of the Cooperating Validity Checker Category B , 2004, CAV.

[58]  Simon Colton,et al.  Refactorable Numbers - A Machine Invention , 1999 .

[59]  Geoff Sutcliffe,et al.  THF0 - The Core of the TPTP Language for Higher-Order Logic , 2008, IJCAR.

[60]  Anderson Faustino da Silva,et al.  Design, Implementation, and Evaluation of a Dynamic Compilation Framework for the YAP System , 2007, ICLP.

[61]  M. Shanahan A spiking neuron model of cortical broadcast and competition , 2008, Consciousness and Cognition.

[62]  Dieter Hutter,et al.  Towards an evolutionary formal software development , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[63]  J. Calmet,et al.  Distributed Mathematical Problem Solving , 1995 .

[64]  Panagiotis Manolios,et al.  Computer-Aided Reasoning: An Approach , 2011 .

[65]  Maria Paola Bonacina,et al.  PSATO: a Distributed Propositional Prover and its Application to Quasigroup Problems , 1996, J. Symb. Comput..

[66]  Maria Paola Bonacina,et al.  Distributed Deduction by Clause-Diffusion: The Aquarius Prover , 1993, DISCO.

[67]  Adnan Darwiche,et al.  RSat 2.0: SAT Solver Description , 2006 .

[68]  Simon Colton,et al.  Automatic Construction and Verification of Isotopy Invariants , 2007, Journal of Automated Reasoning.

[69]  Erica Melis,et al.  Knowledge-Based Proof Planning , 1999, Artif. Intell..

[70]  William S. Havens,et al.  On Selection Strategies for the DPLL Algorithm , 2004, Canadian Conference on AI.

[71]  Michael Wooldridge,et al.  Introduction to multiagent systems , 2001 .

[72]  André Platzer,et al.  KeYmaera: A Hybrid Theorem Prover for Hybrid Systems (System Description) , 2008, IJCAR.

[73]  Erica Melis,et al.  Constraint Solving for Proof Planning , 2004, Journal of Automated Reasoning.

[74]  Till Mossakowski,et al.  The Heterogeneous Tool Set (Hets) , 2007, VERIFY.

[75]  Simon Colton,et al.  The TM System for Repairing Non-Theorems , 2005, D/PDPAR@IJCAR.

[76]  William McCune,et al.  Automated discovery of new axiomatizations of the left group and right group calculi , 1992, Journal of Automated Reasoning.

[77]  Nachum Dershowitz,et al.  Completion Without Failure11This research was supported in part by the National Science Foundation under grants DCR 85–13417 and DCR 85–16243. , 1989 .

[78]  Cesare Tinelli,et al.  DPLL( T): Fast Decision Procedures , 2004, CAV.

[79]  Simon Colton,et al.  Automatic Generation of Implied Constraints , 2006, ECAI.

[80]  Leonard Pitt,et al.  Version spaces and the consistency problem , 2004, Artif. Intell..

[81]  Koen Claessen,et al.  New techniques that improve mace-style model nding , 2003 .

[82]  Stephen M. Watt,et al.  An OpenMath 1.0 implementation , 1997, ISSAC.

[83]  Dominique Méry,et al.  STRIP: Structural Sharing for Efficient Proof-Search , 2001, IJCAR.

[84]  Frank van Harmelen,et al.  The Oyster-Clam System , 1990, CADE.

[85]  Michael Wooldridge,et al.  Programming Multi-Agent Systems in AgentSpeak using Jason (Wiley Series in Agent Technology) , 2007 .

[86]  Michael Wooldridge,et al.  Handbook of Knowledge Representation Edited Situation Calculus , 2022 .

[87]  Toby Walsh,et al.  On the notion of interestingness in automated mathematical discovery , 2000, Int. J. Hum. Comput. Stud..

[88]  Wolfgang Bibel,et al.  SETHEO: A high-performance theorem prover , 1992, Journal of Automated Reasoning.

[89]  Alison Pease,et al.  A computational model of Lakatos-style reasoning , 2007 .

[90]  M.P. Georgeff,et al.  Procedural knowledge , 1986, Proceedings of the IEEE.

[91]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[92]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[93]  Alessandro Armando,et al.  Towards Interoperable Mechanized Reasoning Systems: the Logic Broker Architecture , 2000, WOA.

[94]  A. Armando,et al.  Interfacing Computer Algebra and Deduction Systems via the Logic Broker Architecture , 2001 .

[95]  Simon Colton,et al.  Managing Automatically Formed Mathematical Theories , 2006, MKM.

[96]  Simon Colton,et al.  Automated Theory Formation in Pure Mathematics , 2002, Distinguished dissertations.

[97]  John K. Slaney,et al.  FINDER: Finite Domain Enumerator - System Description , 1994, CADE.

[98]  Christian Bessiere,et al.  Acquiring Parameters of Implied Global Constraints , 2005, CP.

[99]  Geoff Sutcliffe,et al.  The TPTP Problem Library , 1994, Journal of Automated Reasoning.

[100]  Simon Colton,et al.  Making Conjectures about Maple Functions , 2002, AISC.

[101]  Ian P. Gent,et al.  Tailoring Solver-Independent Constraint Models: A Case Study with Essence' and Minion , 2007, SARA.

[102]  Peter Zoeteweij Coordination-based distributed constraint solving in DICE , 2003, SAC '03.

[103]  Lucas Dixon,et al.  A proof planning framework for Isabelle , 2006 .

[104]  P. D. O'Brien,et al.  FIPA — Towards a Standard for Software Agents , 1998 .

[105]  Soumitra Bose,et al.  PARTHENON: a parallel theorem prover for nonHorn clauses , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[106]  Stan Franklin,et al.  IDA, a Conscious Artifact? , 2006 .

[107]  Mark Wallace,et al.  Practical applications of constraint programming , 2004, Constraints.

[108]  B. Baars In the theater of consciousness : the workspace of the mind , 1997 .

[109]  Reinhold Letz,et al.  DCTP - A Disconnection Calculus Theorem Prover - System Abstract , 2001, IJCAR.

[110]  Norbert Eisinger,et al.  The theorem prover SATCHMO : strategies, heuristics and applications , 1995, JFPLC.

[111]  Alessandro Armando,et al.  From Integrated Reasoning Specialists to "Plug-and-Play" Reasoning Components , 1998, AISC.

[112]  J. A. Robinson,et al.  A Machine-Oriented Logic Based on the Resolution Principle , 1965, JACM.

[113]  Alonzo Church,et al.  A formulation of the simple theory of types , 1940, Journal of Symbolic Logic.

[114]  Hantao Zhang,et al.  SATO: An Efficient Propositional Prover , 1997, CADE.

[115]  Andrei Voronkov,et al.  The design and implementation of VAMPIRE , 2002, AI Commun..

[116]  Peter Gorm Larsen,et al.  Modelling Systems: Practical Tools and Techniques in Software Development , 1998 .

[117]  Simon Colton,et al.  Constraint Generation via Automated Theory Formation , 2001, CP.

[118]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[119]  Fausto Giunchiglia,et al.  Reasoning Theories: Towards an Architecture for Open Mechanized Reasoning Systems , 1994, FroCoS.

[120]  Michael Wooldridge,et al.  Distributed Problem-Solving as Concurrent Theorem Proving , 1997, MAAMAW.

[121]  Bernhard Bauer,et al.  Agent UML : A formalism for specifying multiagent interaction , 2001 .

[122]  Thomas Hillenbrand,et al.  WALDMEISTER - High-Performance Equational Deduction , 1997, Journal of Automated Reasoning.

[123]  Radu Mateescu,et al.  CADP 2006: A Toolbox for the Construction and Analysis of Distributed Processes , 2007, CAV.

[124]  Robert A. Meyer,et al.  DARES: A Distributed Automated REasoning System , 1990, AAAI.

[125]  Jörg Denzinger,et al.  Planning for Distributed Theorem Proving: The Teamwork Approach , 1996, KI.

[126]  Armin Biere,et al.  Boolector: An Efficient SMT Solver for Bit-Vectors and Arrays , 2009, TACAS.

[127]  Eugene C. Freuder,et al.  Using Case-Based Reasoning to Write Constraint Programs , 2003, CP.

[128]  Richard J. Boulton,et al.  The PROSPER Toolkit , 2000, TACAS.

[129]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[130]  Alan Bundy A Critique of Proof Planning , 2002, Computational Logic: Logic Programming and Beyond.

[131]  Michael Kohlhase,et al.  System Description: MBASE, an Open Mathematical Knowledge Base , 2000, CADE.

[132]  Kevin Leyton-Brown,et al.  SATzilla: Portfolio-based Algorithm Selection for SAT , 2008, J. Artif. Intell. Res..

[133]  Jörg P. Müller,et al.  Modelling Interacting Agents in Dynamic Environments , 1994, ECAI.

[134]  Simon Colton,et al.  A Global Workspace Framework for Combining Reasoning Systems , 2008, AISC/MKM/Calculemus.

[135]  Yoav Shoham Agent-Oriented Programming , 1993, Artif. Intell..

[136]  Simon Colton,et al.  Applications of a Global Workspace Framework to Mathematical Discovery , 2008 .