:. Agents components
A PRACTIONIST agent is a software component with the following elements (see figure):
  • a set of perceptors that listen to some relevant external stimuli (perceptions);
  • a set of effectors that can actually execute the actions;
  • a set of beliefs which represents the information the agent has got about both its internal state and the external world;
  • a set of goals the agent wishes or wants to pursue. They represent some states of affairs to bring about or activities to perform;
  • a set of plans that are the means to achieve its intentions;
  • a set of actions the agent performs to act over its environment.
PRACTIONIST Agent Architecture
(click on the picture to enlarge)

:. Perceptors

PRACTIONIST agents interact with the environment through some perceptors and effectors, which provide developers with useful abstractions and tools to model and actually implement how the agents perceive and act upon external resources and agents.

 

PRACTIONIST agents are given the opportunity to define and use several perceptors that “sense” external stimuli and map them into internal events, which the agents are able to handle. They are given the corresponding ability to select the proper perceptor as soon as a perception is perceived. Some built-in perceptors are provided within the framework (e.g. ACL message receiver).

:. Effectors

The PRACTIONIST Runtime & Framework provides developers with the opportunity to define and use several effectors, which encompass the way agents actually perform external actions. They are given the corresponding ability to select the appropriate effector that is able to execute an action.

 

This capability adds some flexibility in the agents’ behaviour, as the actual decision about how to execute some external tasks is made dynamically.


:. Beliefs

In PRACTIONIST agents, beliefs can be about either propositions or other beliefs, that is an agent may believe or not something described as a proposition (e.g. "it is raining in Rome"). It may also believe that some agent (it could be itself) believes something (e.g. "the agent Jim believes that it is raining in Rome") i.e. nested beliefs.

 

The fact believed by an agent is in turn expressed by elements of the modal logic. We also assume the usual Hintikka-style schemata for beliefs, that is the KD45 axioms corresponding to a ”Weak S5 modal logic”.


:. Goals

In the PRACTIONIST Runtime & Framework, a goal is an objective to pursue and it is an abstraction to make the distinction between the state of affairs to be achieved and the way to achieve it. Besides, goals are a means to transform desires into intentions through the satisfaction of some properties.

In other words, PRACTIONIST agents are mainly programmed in terms of goals, which then will be related to either desires or intentions according to whether some specific conditions are satisfied or not.

Thus, in PRACTIONIST two families of goals are defined, as follows:

  • state goals, which refer to some states of affairs the agent desires/intends to bring about, or cease, or preserve, or avoid;
  • perform goals, which are not related to some world states but to some activities the agent desires/intends to perform.

We have provided PRACTIONIST agents with the capability of managing and reasoning about the following state goals:

  • achieve, which represents what kind of world state to bring about;
  • cease (as opposed to achieve), which represents a world state an agent wants to stop;
  • maintain which has the purpose to observe some world state and continuously re-establish this state when it does not hold;
  • avoid (as opposed to maintain), which has the purpose to observe some world state and continuously prevent it.

Every type of goal is represented by a specific success condition. Besides in PRACTIONIST, goals have other properties, such as inconsistency and entailment depending of the success condition. Thus, the behaviour of these properties depends on the type of goal considered.


:. Plans
In PRACTIONIST Runtime & Framework plans represent an important container in which developers define the actual behaviors of agents. Each agent may own a declared set of plans (the plan library), each specifying the course of acts the agent will undertake in order to pursue its intentions, or to handle incoming perceptions, or to react to changes of its beliefs.

:. Actions

In PRACTIONIST, actions are described by tuples of five elements: (1) the name of the action; (2) the arguments, which are the objects each action acts over; (3) results, which are some kind of direct responses received from the environment; (4) preconditions, which should be satisfied before executing the action; and (5) effects(for both successfully and failing action execution), which are the state of affairs that will be true or false after executing the action (as long as preconditions were satisfied).

:. Recent Papers
  • A BDI Agent System for Credit Risk Assessment based on Fuzzy Logic
  • Developing Intentional Systems with the PRACTIONIST Framework
  • Dynamic conversations between agents with the PRACTIONIST Framework
  • Goal-Oriented Agent Patterns with the PRACTIONIST Framework

  Go to the Papers section

Valid XHTML 1.0 Strict Valid CSS!