The SAC project has completed. For up-to-date information see
the SAC2 project
Simple Agent Concepts
We begin with the concepts of an intelligent software agent (abbreviated to "agent")
as being an autonomous entity able to rationally balance pro-active (i.e. goal-driven)
and reactive behaviour.
We then reason as follows:
- Agents are situated in an environment. The concepts of action and percept are
significant since they form the interface between the agent and its environment.
- Agents are pro-active, thus the concept of goals is crucial.
- Agents are reactive. In order to be reactive an agent must recognise significant things when they
happen in order to respond to them. These "significant occurrences" are termed events.
- Agents are typically situated in rapidly changing environments where the agents have a limited
view of the environment. Thus the concepts of plans (as a library of partial recipes for achieving
particular goals, or reacting to particular events) and of beliefs are useful.
These six concepts (action, percept, goal, event, plan, belief) are linked by the following execution model (see figure on right):
- Percepts are interpreted to give events
- Beliefs are updated from percepts
- Events yield reflexive actions+new goals
- Goals are updated (including current, new and completed goals)
- Plan is chosen, if needed
- Chosen plan is expanded to yield an action
- Action(s) are scheduled and performed
Compared with the BDI (Belief-Desire-Intention) concepts there are a number of differences:
- We use goals rather than desires
- No intentions
- Action and percept are explicit (situated)
- Events are distinguished from percepts (reactive)
- Goals are distinguished from events (pro-active)
- Separate reactive and pro-active execution cycles
- Events can trigger reflexive actions
For more details on these concepts see the AI'01 paper (below).
In addition to an informal execution model relating the concepts identified, we have also developed
a precise (formal) execution model which has goals (in the sense above), and has explicit handling of
alternatives and of failure.
Our survey of students with no previous agent exposure found that the following concepts
were perceived as important to building agent systems
(The students were given an example of an agent application and a
long list of concepts with brief definitions. They were asked to discuss which concepts were important and to write
and submit a brief summary. These figures are collated from the summaries submitted).
- Plan (9 mentions)
- Goal (8 mentions)
- Event & Environment (6 mentions each)
- Knowledge base (5 mentions)
- Protocol, Percept and Action (4 mentions each)
- Capability & Belief (3 mentions each)
- Desire & Coordination (2 mentions each)
- Other: team, task, sub-*, role, permission, negotiation, message, intention,
conflict, communication, choice, behaviour (1 mention each)
This survey supports the hypothesis that the concepts developed are more natural than the BDI concepts.
We also conducted a survey of agent tools.
Relevant Publications and Resources