Agents Wooldridge

Page 318

Formal Methods in Agent-Oriented Sofrware Engineering

2 99

a problem even in the propositional case. For 'vanilla' propositional logic, the decision problem for satisfiability is NP-complete (Fagin et al., 1995, p. 72); richer logics, or course, have more complex decision problems. Despite these problems, the undoubted attractions of direct execution have led to a number of attempts to devise executable logic-based agent languages. Rao proposed an executable subset of BDI logic in his AgentSpeak(L) language (Rao, 1996a).Building on this work, Hindriks and colleagues developed the 3APL agent programming language (Hindriks et al., 1998; Hindriks et al., 1999). Lesperance, Reiter, Levesque, and colleagues developed the Golog language throughout the latter half of the 1990s as an executable subset of the situation calculus (Lesperance et al., 1996; Levesque et al., 1996).Fagin and colleagues have proposed knowledgebased programs as a paradigm for executing logical formulae which contain epistemic modalities (Fagin et al., 1995, 1997). Although considerable work has been carried out on the properties of knowledge-based programs, comparatively little research to date has addressed the problem of how such programs might be actually executed. Turning to automatic synthesis, the techniques described above have been developed primarily for propositional specification languages. If we attempt to extend these techniques to more expressive, first-order specification languages, then we again find ourselves coming up against the undecidability of quantified logic. Even in the propositional case, the theoretical complexity of theoremproving for modal and temporal logics is likely to limit the effectiveness of compilation techniques: given an agent specification of size 1000, a synthesis algorithm that runs in exponential time when used offline is no more useful than an execution algorithm that runs in exponential time on-line. Kupferman and Vardi (1997) is a recent article on automatic synthesis from temporal logic specifications. Another problem with respect to synthesis techniques is that they typically result in finite-state, automata-like machnes, which are less powerful than Turing machines. In particular, the systems generated by the processes outlined above cannot modify their behaviour at run-time. In short, they cannot learn. Whle for many applications this is acceptable - even desirable - for equally many others, it is not. In expert assistant agents, of the type described in Maes (1994a),learning is pretty much the raison dJe^tre.Attempts to address this issue are described in Kaelbling (1993). Turning to verification, axiomatic approaches suffer from two main problems. First, the temporal verification of reactive systems relies upon a simple model of concurrency, where the actions that programs perform are assumed to be atomic. We cannot make this assumption when we move from programs to agents. The actions we t h n k of agents as performing will generally be much more coarsegrained. As a result, we need a more realistic model of concurrency. One possibility, investigated in Wooldridge (1995),is to model agent execution cycles as intervals over the real numbers, in the style of the temporal logic of reals (Barringer et al., 1986). The second problem is the difficulty of the proof problem for agent


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.