[SBD 99] V.S. Subrahmanian, Piero Bonatti, Jürgen Dix, Thomas Eiter, Sarit Kraus, ... [SOMB99] Frieder Stolzenburg, Oliver Obst, Jan Murray, and Björn Bremer.
Automating Defeasible Reasoning with Logic Programming (DeReLoP) J¨urgen Dix (project leader), Frieder Stolzenburg dix,stolzen @informatik.uni-koblenz.de Universit¨at Koblenz, Rheinau 1, D–56075 Koblenz GERMANY Guillermo R. Simari (project leader), Pablo R. Fillottrani grs,ccfillo @criba.edu.ar Universidad Nacional del Sur, Av. Alem 1253, (8000) Bahia Blanca ARGENTINA
1
Objectives
This is a description of the DeReLoP project between the Artificial Intelligence groups at the University of Koblenz, Germany and the Universidad Nacional del Sur, Bahia Blanca, Argentina. The overall idea is to try to combine the theoretical and practical work done in Bahia Blanca and Koblenz and make it confluent. Both groups are working in the broad area of knowledge representation and on applications to the development of knowledge-based systems. While the Bahia Blanca group defined some theoretical frameworks for Circumscription, Belief Revision and Plausible Reasoning, the Koblenz group developed and implemented various automated systems based on logic programming technology: the DisLoP-system based on the general purpose theorem prover Protein and various variants thereof. It seems very promising trying to use the systems available in Koblenz for efficient implementations of the frameworks mentioned above. While Koblenz developed and implemented systems for disjunctive logic programs (DisLoP, see [ADN97] and ) and for classical first order logic (Protein, see [BFS97] and ), Bahia Blanca mainly considered theoretical extensions and variants of Circumscription and Belief Revision.
2
Project Description
The DeReLoP-project has three main branches where we expect mutual benefits from each group: Circumscription, Belief Revision and Agents. Obviously, Circumscription is closely related to disjunctive logic programs [DFN99] and thus variants of the former may be implemented with slight modifications of the latter. Similarly, systems doing belief revision need to do consistency checks and therefore need classical deductive reasoning: provided by a theorem prover like Protein [BF94]. Current work focuses on the application of extended logic programming to Agent Programming. The scenario we mainly consider in this context is the RoboCup – a simulation of a soccer game [ACD 98]. Bahia Blanca developed and implemented an abstract machine for han-
dling defeasible reasoning that can be used for agent programming. The Koblenz group is currently doing a particular application of a framework of multiple agents in the RoboLog project , funded by the Ministry for education, science and further education of Rheinland-Pfalz, namely designing a program for playing soccer: multiple, fast moving robot agents in a dynamic, nondeterministic environment (RoboCup – [Nod95]). Koblenz is also involved in a project on Heterogenous Active Agents, where logic programming technology is heavily used for modelling the behaviour of software agents (see and [SBD 99]).
3
Distribution of Tasks
3.1 Circumscription An Argentinian doctoral student is working in a Circumscriptive Semantics for logic programs [Fil95, FS97]. Negation in logic programming is generally formalized under two kinds of semantics: negation-as-failure and strong negation. These two semantics are syntactically represented by two negation operators. Thus, the programmer must acknowledge the difference between using negative information under negation-as-failure and using negative information under strong negation. Nonmonotonic formalisms like circumscription and default logic do not make this distinction. A circumscriptive logic program is a new type of logic program with only one negative operator, preserving both kinds of semantics. The difference is established in the definition of the predicate, and not in its usage. The semantics of this kind of program is formalized using pointwise circumscription, where minimization is done for literals and not for predicates. As already mentioned, Koblenz has developed within the DisLoP project high performance systems for positive disjunctive logic programs and also for semantics with negation (stable semantics, D-WFS). It would be helpful for both sides to investigate how the newly introduced circumscriptive logic programs can be extended to disjunctive programs, implemented with efficient methods based on minimal models (which are available in the German group), and related to standard approaches.
3.2 Belief Revision Belief Revision is a form of updating an agent view of the world. Classical Belief Revision always takes in the new information. This policy does not reflect very well the way intelligent agents go about that activity. We considered belief revision within an argumentative framework. We are considering a way of revising a database using arguments developing a semi-revision operator where the decision of accepting new information is based on a dialectic (argumentative) process. Within such an approach, derivation- and consistency-tasks occur again and again and such tasks can be given to a theorem-prover which will return the answer and thus influence the overall derivation process. In fact, there is also work on view deletion (database updates) in Koblenz [AB97] which is closely related to belief revision.
3.3 Agents An Abstract Machine that extends the WAM to handle defeasible reasoning is available in the Argentinian group: the Justification Abstract Machine. The language for these programs contains defeasible rules to capture tentative knowledge and reasoning. It allows the representation of incomplete and potentially inconsistent information, and uses the defeasible argumentation formalism to decide between contradictory goals. Query answers involve the analysis of arguments and counterarguments, 2
in order to obtain a justification. Defeasible argumentation is a formalism where the argument concept plays a central role. If the agent acquires new information later, the conclusion and the argument that supports it can be avoided. Research on a formal semantics for Argumentative Systems is being carried on. The JAM has been implemented in JAVA [Gar97]. Koblenz is doing research on agents in two different lines: Heterogenous Active Agents and Agents for the Robocup Simulation League. The first line is closely related to an international project (including universities in Israel, Italy, Austria, Germany) undertaken at the university of Maryland and headed by Prof. V. S. Subrahmanian. The aim is to develop and implement an architecture for supporting the dynamic interaction of multiple software agents. It considers how to turn an arbitrary software program into an agent, how to determine the infrastructural capabilities for meaningful interaction and how to design the communication between agents. The main feature is the notion of an agent program describing the behaviour of an agent and of various semantics for such programs. These semantics are strongly related to classical logic programming semantics such as the wellfounded or the stable semantics. The second line is reported in more detail in the next section.
4
Current Work
Since the cooperation currently concentrates work on applying extended logic programming to agent programming, we will describe our first results on this topic in more detail. The overall idea here is to enable defeasible reasoning in multi-agent systems. So, we first describe our framework for defeasible reasoning and then discuss the multi-agent RoboCup scenario.
4.1 Defeasible Reasoning In a defeasible argumentation formalism [SL92, Dun95, Pra98], an argument is used as a defeasible reason for supporting conclusions. A conclusion q will be considered valid only when the argument that supports it becomes a justification. Building a justification [GSC98], involves the construction of a non-defeated argument for q. In order to establish that is a non-defeated argument, the system looks for counter-arguments that could be defeaters for . Since defeaters are arguments, there may exist defeaters for the defeaters, and so on, thus requiring a complete dialectical analysis. In [Gar97, GS98], an extension of logic programming called Defeasible Logic Programming (DLP) was defined. DLP uses defeasible argumentation for capturing common sense reasoning features that are difficult to express in conventional logic programming. DLP can manage defeasible reasoning, allowing the representation of defeasible and non-defeasible knowledge. A defeasible logic program is defined in terms of two disjoint sets of rules: a set of strong rules for representing strict (sound) knowledge, and a set of defeasible rules for representing tentative information. In DLP, a query q will succeed when there is an argument for q that is a justification for q. Building a justification involves looking for counterarguments that could be defeaters for . Since defeaters are arguments, there may exist defeaters for the defeaters, and so on, thus requiring a dialectical analysis. DLP considers two different negations: strong negation, which is represented by the symbol “ ” which is used for representing contradictory knowledge; and, default negation, represented by the symbol “not” used for representing incomplete information. In this work, we will show why two types of negations are needed, the differences between them, some properties, and how they could be combined to take advantage of the full expressiveness of the language. In our language, a literal “L” is an atom “A” or a negated atom “ A” [Llo87]. Literals will be allowed in the head and the body of a rule, and default negation just in the body, therefore we will follow the notions of basic rule and extended rule introduced by Lifschitz in [Lif96]. 3
Definition 1 (Strong Rule) A Strong Rule is an ordered pair, denoted Head Body, whose first component Head is a literal, and whose second component Body is a finite set of literals possibly preceded by the symbol of default negation “not”. A strong rule with the head L0 and body L1 Ln can also be written as: L0 L1 Ln . As usual, if the body is empty, then a strong rule becomes “ L true” ( or simply “L”) and it is called a fact. Strong rules correspond to rules used in Extended Logic Programming [GL90]. Defeasible rules, to be defined below, will add a new representational capability for expressing a weaker link between the head and the body in a rule. A defeasible rule “Head — Body” is understood as expressing that “reasons to believe in the antecedent Body provide reasons to believe in the consequent Head” [SL92]. Defeasible rules are also extended here, allowing the use of default negation in the body of the rule with the obvious meaning. Definition 2 (Defeasible Rule) A Defeasible Rule is an ordered pair denoted Head — Body, whose first component Head is a literal, and whose second component Body is a finite set of literals possibly preceded by the symbol of default negation “not”. A defeasible rule with head L0 and body L1 Ln can also be written as: L0 — L1 Ln . If the body is empty, we write “ L — true” and we call it a presumption. Informally, a query q will succeed if the supporting argument for it is not defeated; that argument then becomes a justification. In order to establish if is a non-defeated argument, counter-arguments that could be defeaters for are considered, i e , counter-arguments that for some criterion, are preferred to . As discussed ealier, a defeasible derivation for a negated literal “ p” is carried out just as if the “ ” symbol were a syntactical part of the predicate name, thereby treating “ p” as an atomic predicate name. Although there can be defeasible derivations for a pair of complementary literals, the inference procedure of DLP justifies only one of them. Thus, a query “ q” succeeds when there exists a justification for “ q.”, and fails when there is no justification for it. The traditional approach considers that a goal “not p” succeeds when the derivation of “p” fails; and fails when the derivation of “p” succeeds. However, as shown above, in DLP the inference procedure is justification. Therefore, default negation in DLP will be defined in terms of justification rather than defeasible derivation. Thus, the semantics for default negation will be the following: “not q” will succeed when there is no justification for “q”, and “not q” will fail when there is a justification for “q”. Thus, the main differences of DLP with other extensions of logic programming are: our approach provides a way of choosing between contradictory literals, and “not p” succeeds when the justification of “p” fails and not just when a derivation of “p” fails.
4.2 The RoboLog Project We think that logic and deduction (and its extensions) are appropriate means for programming multiagent systems, including spatial agents in the RoboCup scenario. There, a single player is part of a team and has to act accordingly: given his current perceptions and the overall plan of the coach, he has to derive the most successful action to be taken. Since the information is often incomplete, contradicting or more than one action seems to be appropriate in a certain situation, it is a good idea to equip agent (programs) with defeasible reasoning. The clients we have designed so far are implemented using a hybrid approach: we have C++Modules as well as Prolog-Modules. The Prolog-Machine handles the players reasoning and planning, while the C++-programs handle the calculations to be done in order to enable a player to handle tasks like dribbling or passing the ball. Our main idea is to combine both the advantages of procedural 4
and logic programming: this results in the Robolog Prolog extension [Obs98]. This extension is an enhanced RoboCup SoccerServer interface for ECLiPSe-Prolog. Time critical and computational expensive tasks are handled within the Robolog module, as well as the exchange of data. The major goals of the RoboLog project [SOMB99], undertaken at the University of Koblenz, Germany, are the following:
A flexible, modular system architecture should be established, meeting the various requirements for RoboCup agents. For example, on the one hand, agents have to be able to react in realtime. But on the other hand, it is also desirable that more complex behavior of agents can be programmed easily in a declarative manner. An important piece of information for an agent is to know its own position. Therefore, the RoboLog system provides an extensive library that makes precise object localization possible. The whole procedure implemented in the RoboLog kernel is able to work even when only little or inconsistent information is given. In particular, we employ the method for mobile robot localization using landmarks stated in [BG97].
It should be possible to handle different representation formats of knowledge about the environment. Information may be quantitative or qualitative, pictorial or propositional in nature. Therefore, we propose a deductive framework, that is expressible in plain first-order logic (possibly plus constraint technology components), that integrates axiomatic approaches in geometry, spatial constraint theories and numerical sensor data. In the literature, many approaches for qualitative spatial reasoning are proposed. Most of them rely on the Region Connection Calculus (RCC), see e.g. [RCC92, RN98]. In principle, the integration of different sources of information into our system is easily possible in the framework of constraint logic programming [JM94, Sto98]. Agents not only should be able to act autonomously on their own, but also to cooperate with other agents. For this, we develop a multi-agent script language for the specification of collective actions or intended plans that are applicable in a certain situation. These scripts can be translated into logic programs in a straightforward manner. In contrast to other approaches that provide an architecture for (multi-)agent systems (see e.g. [Rao96, Jun99]), we use different logical and deductive formalisms not only as a specification but also as an implementation language.
The RoboLog system is available via . It hosts general logic programming for programming multi-agent scripts. Defeasible reasoning is not yet integrated; this will be future work. An example how defeasible reasoning can be integrated in a very useful manner is the following. Consider the rules below in which a description of what a direct pass between two soccer players is depicted. It provides some defeasible rules. The system will choose between two possible rules using the more specific ones. Some of the predicates (close, close enough, offside, etc.), are regarded as primitives here. They can be understood as the qualitative abstractions of quantitative predicates. direct pass P1 P2 — able to receive P2 close enough P1 P2 direct pass P1 P2 — able to receive P2 close enough P1 P2 good position P2 good position P — close P goal not o f f side P good position P — close P goal o f f side P good position P — close X goal not checked P able to receive P — not checked P able to receive P — checked P able to receive P — distracted P checked P1 — opponent P2 close P1 P2 5
5
Expected Results (Summary)
The most advanced work in both groups is that on Circumscription. We expect to find out how the systems in Koblenz can be adjusted and used for the computation of the newly proposed circumscriptive logic programs. We also expect to determine how the new class of programs relate to standard approaches and to disjunctive logic programs. In addition, we expect to find out how classical theorem provers can be used as sub-modules in a belief revision process. The underlying PTTP technology of Protein should make it suitable for such tasks. Finally we expect techniques of defeasible reasoning to be applicable in the domain of autonomous agents acting ander uncertainty. To react in such an environment, complete knowledge can not be assumed and therefore we need methods to jump to conclusions even when little or no information is at hand. In the IMPACT project on software agents, we developed techniques to cope with beliefs (see [DSP00]), time [SBD 99, Chapter 8] and uncertainty [SBD 99, Chapter 9]. How those techniques are related to the theoretical frameworks developed in Bahia Blanca and how they can be applied in the RoboLog case study, is subject to future work.
References [AB97]
Chandrabose Aravindan and Peter Baumgartner. A Rational and Efficient Algorithm for View Deletion in Databases. In Jan Maluszynski, editor, Logic Programming: Proceedings of the 1997 International Symposium, pages 165–180. MIT Press, 1997.
[ACD 98] David Andre, Emiel Corten, Klaus Dorer, Pascal Gugenberger, Marius Joldos, Johan Kummeneje, Paul Arthur Navratil, Itsuki Noda, Patrick Riley, Peter Stone, Tomoichi Takahashi, and Tralvex Yeap. Soccerserver Manual, ver.4 rev.0 edition, November 1998. for Soccerserver Ver.4.21 and later. [ADN97]
Chandrabose Aravindan, J¨urgen Dix, and Ilkka Niemel¨a. Dislop: A research project on disjunctive logic programming. AI Communications, 10(3/4):151–165, 1997.
[BF94]
Peter Baumgartner and Ulrich Furbach. PROTEIN: A PROver with a Theory Extension INterface. In Alan Bundy, editor, Proceedings of the 12th International Conference on Automated Deduction, LNAI 814, pages 769–773, Nancy, 1994. Springer, Berlin, Heidelberg, New York.
[BFS97]
Peter Baumgartner, Ulrich Furbach, and Frieder Stolzenburg. Computing answers with model elimination. Artificial Intelligence, 90(1-2):135–176, 1997.
[BG97]
Margrit Betke and Leonid Gurvits. Mobile robot localization using landmarks. IEEE Transactions on Robotics and Automation, 13(2):251–263, April 1997.
[Dun95]
Phan M. Dung. On the acceptability of arguments and its fundamental role in nonmonotonic reasoning and logic programming and n-person games. Artificial Intelligence, 77:321–357, 1995.
[Fil95]
Pablo R. Fillottrani. Sistemas de razonamiento no mon´otono y su relaci´on con la sem´antica de las bases de datos diva. Master’s Thesis, Computer Science Department, Universidad Nacional del Sur, Bah´ıa Blanca, Argentina., 1995.
[Gar97]
Alejandro J. Garc´ıa. Defeasible Logic Programming: Definition and Implementation (MSc Thesis). Departamento de Cs. de la Computaci´on, Universidad Nacional del Sur, Bah´ıa Blanca, Argentina, July 1997.
[GL90]
M. Gelfond and V. Lifschitz. Logic programs with classical negation. In D. Warren and P. Szeredi, editors, Proc. ICLP, pages 579–597. MIT Press, 1990.
6
[JM94]
Joxan Jaffar and Michael J. Maher. Constraint logic programming: a survey. Journal of Logic Programming, 19/20:503–581, 1994.
[Jun99]
Christoph G. Jung. Layered and resource-adapting agents in the RoboCup simulation. In M. Asada, editor, RoboCup–98: Robot Soccer WorldCup II, LNAI. Springer, Berlin, Heidelberg, New York, 1999. To appear.
[Lif96]
V. Lifschitz. Foundations of declarative logic programming. In G. Brewka, editor, Principles of Knowledge Representation, chapter 3, pages 69–128. CSLI, 1996.
[Llo87]
John W. Lloyd. Foundations of Logic Programmming. Springer-Verlag, 1987.
[Nod95]
Itsuki Noda. Soccer server: a simulator for RoboCup. In JSAI AI-Symposium, 1995.
[Obs98]
Oliver Obst. RoboLog – An ECLiPSe-Prolog SoccerServer interface: Users manual, March 1998.
[Pra98]
Henry Prakken. Dialectical proof theory for defeasible argumentation with defeasible priorities (preliminary report). In Proceedings of the 4th Modelage Workshop on Formal Models of Agents. Springer Lecture Notes on AI. Springer Verlag, Berlin, 1998.
[Rao96]
Anand S. Rao. AgentsSpeak(L): BDI agents speak out in a logical computable language. In Walter van de Velde and John W. Perrame, editors, Agents Breaking Away – 7th European Workshop on Modelling Autonomous Agents in a Multi-Agent World, LNAI 1038, pages 42–55, Berlin, Heidelberg, New York, 1996. Springer.
[RCC92]
D.A. Randel, Z. Cui, and A.G. Cohn. A spatial logic based on regions and connections. In Proceedings of the third Int. Conf. on Knowledge Representation and Reasoning, pages 165–176, San Mateo, 1992. Morgan Kaufmann.
[RN98]
Jochen Renz and Bernhard Nebel. Efficient methods for qualitative spatial reasoning. In Henri Prade, editor, Proceedings of the 13th European Conference on Artificial Intelligence. John Wiley & Sons, 1998.
[SBD 99]
V. S. Subrahmanian, Piero Bonatti, J¨urgen Dix, Thomas Eiter, Sarit Kraus, Fatma Ozcan, and Robert Ross. Heterogenous Active Agents. MIT-Press, March 1999.
[SOMB99] Frieder Stolzenburg, Oliver Obst, Jan Murray, and Bj¨orn Bremer. Spatial agents implemented in a logical expressible language. Submitted, 1999. [Sto98]
Frieder Stolzenburg. Disjunctive Logic Programming with Constraints and its Applications. Koblenzer Schriften zur Informatik 7. F¨olbach, Koblenz, 1998. Dissertation. Reviewers: Ulrich Furbach and Joxan Jaffar. ISBN 3-923532-56-3.
7
Short Biographies of Project Leaders ¨ Jurgen Dix is an Assistant Professor in the Department of Computer Science at University of Koblenz-Landau in Koblenz. He got his PhD in 1992 at Karlsruhe University and his habilitation at TU Vienna in 1996 (Deductive Databases). He is co-editor of 6 proceedings in the Springer Lecture Notes of Artificial Intelligence series and of two special issues in Annals of Math and AI, co-author of two monographs (on Nonmonotonic Reasoning and Multi-Agents), and author of more than 30 articles in Handbooks and Journals. He has organized various international workshops and conferences in Artificial Intelligence. He is currently (1999) a Visiting Assistant Professor at the Department of Computer Science in College Park, Maryland.
Guillermo Simari is a Full Professor in the Department of Computer Science at Universidad Nacional del Sur in Bahia Blanca. He got his PhD in 1989 at Washington University (R. Loui). He is heading a group of 10 students working on their Master and PhD Theses. His research interests are in Knowledge Representation and Reasoning and Logic Programming, especially in the connection between the two areas.
References [FS97]
Pablo R. Fillottrani and Guillermo R. Simari. Weak properties of circumscriptive logic programming. In Proceedings CACIC’97, 3er. Congreso Argentinio de Ciencias de la Computaci´on., La Plata, Argentina, 1997.
[GS98]
Alejandro J. Garc´ıa and Guillermo R. Simari. Defeasible logic programming. Technical report, Computer Science Department, Universidad Nacional del Sur, October 1998. Technical Report GIIA1998-20.
References [BD98]
Stefan Brass and J¨urgen Dix. Characterizations of the Disjunctive Well-founded Semantics: Confluent Calculi and Iterated GCWA. Journal of Automated Reasoning, 20(1):143–165, 1998.
[BDK97] Gerd Brewka, J¨urgen Dix, and Kurt Konolige. Nonmonotonic Reasoning: An Overview. CSLI Lecture Notes 73. CSLI Publications, Stanford, CA, 1997. [DFN99]
[DS98]
[DSP00]
[GSC98] Alejandro J. Garc´ıa, Guillermo R. Simari, and Carlos I. Ches˜nevar. An argumentative framework for reasoning with inconsistent and incomplete information. In Workshop on Practical Reasoning and Rationality. 13th biennial European Conference on Artificial Intelligence (ECAI-98), August 1998.
J¨urgen Dix, Ulrich Furbach, and Ilkka Niemel¨a. Nonmonotonic Reasoning: Towards Efficient Calculi and Implementations. In Andrei Voronkov and Alan Robinson, editors, Handbook of Automated Reasoning. Elsevier-Science-Press, to appear 1999.
[SCG94] G.R. Simari, Ches˜nevar C.I., and A.J. Garc´ıa. The role of dialectics in defeasible argumentation. In XIV Conferencia Internacional de la Sociedad Chilena para Ciencias de la Computaci´on, Universidad de Concepci´on, Concepci´on, Chile, 1994.
J¨urgen Dix and Frieder Stolzenburg. A framework to incorporate non-monotonic reasoning into constraint logic programming. Journal of Logic Programming, 37(1-3):47–76, 1998. Special Issue on Constraint Logic Programming. Guest editors: Kim Marriott and Peter J. Stuckey.
[SL92]
J¨urgen Dix, V. S. Subrahmanian, and George Pick. Meta Agent Programs. Journal of Logic Programming, to appear, 2000.
8
G.R Simari and Ronald P. Loui. A Mathematical Treatment of Defeasible Reasoning and its Implementation. Artificial Intelligence, 53:125–157, 1992.