The tools and the method constituting CaseLP represent an
agent-based approach to software prototyping.
The potential of such an approach has been demonstrated by the adoption of a
MAS-based prototyping technology for developing
applications in very different areas.
The choice of Logic Programming as the base for our prototyping environment
has proven successful, as discussed in [2].
The modularity and expressiveness of LP are extremely
useful to describe in a clear and concise fashion the complex behavior of
agents. It also proves useful to model the non-deterministic MAS execution,
the meta-reasoning capabilities of agents and to support the
integration of external software.
There are several environments for MAS specification and implementation that are
based on logic languages.
Logic Programming has been adopted by
Kowalsky and Sadri [10] for developing an
architecture that unifies rationality with reactivity.
All the interesting objects that form the architecture
are represented using a logical formalism and the
agent task control is performed by a meta-interpreter that executes a
perception, reaction and proof procedure cycle.
Wagner [21] takes an approach similar to the previous one. He
defines Vivid Agents and Vivid Reagents that is, respectively,
rational ad reactive agents whose behavior is represented by action
and reaction rules.
The exploitation of logic programming to realize applications based on MAS
can be found in
Schroeder et al. [20], which present a formalism for specifying
and implementing diagnostic agents based on extended logic programming.
Other not-executable logic formalisms have been used to define agent languages:
ConGolog [9] is a concurrent
multi-agent programming language based on a logical theory of
action, while AgentSpeak(L) [19]
uses a restricted first-order language with events and actions to model the
internal mental state of an agent and its behavior.
Our future work will mainly aim at improving different aspects of our
environment and in evaluating its applicability in new areas:
Distribution of the simulation. From a simulation point of view,
CaseLP is a time-driven, centralized simulator, with a global time known
from all the agents in the system.
To improve the efficiency of CaseLP it is necessary to change the
simulation from time-driven to event-driven, and to distribute it.
To cope with the distribution of simulation, CaseLP agents should be
equipped with additional data structures.
Any agent should be simulated by an active process.
A local simulation engine should be added to any agent to implement its life
cycle, which would mainly consist in the inspection of the communication channels
and the internal events list and the management, if possible, of the received
event(s).
Integration of specification languages and legacy software.
As already observed, the set of available specification languages
needs to be extended, and tools for animating the not executable ones should
be provided.
Also the set of languages and tools which can be interfaced by means of an
interface agent should be augmented.
These extensions will be faced within the ARPEGGIO project
[5].
The purpose of ARPEGGIO (Agent based Rapid Prototyping Environment Good for
Global Information Organization) is the integration
of different research experiences based on Logic Programming,
including CaseLP, into a common joint project.
It will lead to the development of a general open framework for the
specification, rapid prototyping and engineering of agent-based software.
Development of new applications in hot areas. One of the wider field of
application of MAS technology is the Web. We are extending CaseLP with
ontologies [23] in order to semantically integrate
data coming from different domains, which is a typical situation when exploring
and collecting data from the Web. However, we have not yet developed a Web model
and our research in this direction is still at the beginning.