- PG_Q(Prevented Goals Queue): It contains
“Prevented” goals.
- I_Q (Intentions Queue) and W_Q (Waiting
intentions Queue): I_Q contains active goals that
are actually achieved via plans. W_Q contains
active goals that are waiting for an applicable, free-
conflict plan.
- SG_Q (Suspended Goals Queue): This queue
contains “Suspended” goals.
We conclude the presentation of goals set G by
defining the notion of “goals conflict” (In this paper,
we focus on the conflict between a ready
goal∈RG_Q and an active goal∈ I_Q∪W_Q).
A ready goal g is said to be in conflict with an
active goal g’∈I_Q, iff all the applicable plans of g
(i.e., the plans of g.App-Plans) are in conflict with
g’.A-Plan. If g has an applicable plan that doesn’t
conflict with g’.A-Plan then g and g’ are not in
conflict. On the other hand, a ready goal g is said to
be in conflict with an active goal g’∈W_Q iff the
goal targets of g and g’ (i.e., g.Target and g’.Target)
are inconsistent. In this paper we assume that the
targets of two alternative goals g, g’ (i.e., g.Motiv
=g’.Motiv) are inconsistent. This assumption leads
to the following property:
∀g∈R_G, ∀g’∈ I_Q∪W_Q: g.Motiv =
g’.Motiv ⇒ g is in conflict with g’
(5)
After presenting the set G, we give, in what
follows, the last data structure included in the
agent’s internal state S.
I_M_Q (Internal Messages Queue): This
queue receives all messages addressed to the
module GM (Goals state Manager) from other
agent’s modules (For more details about the
module “GM” see the subsection 3.2).
3.2 The Modules of the Architecture
The proposed architecture contains the 9 following
modules working in parallel: MU, BR, GG, FS, F,
AE, DTUM, APU, GM (These modules define the
set C). The MU module (Motivations Updater) is
responsible of updating the agent’s motives set (M).
On the basis of beliefs set (B), (M), and active goals
in I_Q queue, the GG module (Goals Generator)
generates and updates the set of new goals (the
NG_Q queue). The GM module (Goal state
Manager) on the basis of messages transmitted by
the other modules, updates the states of the goals.
The FS module (Filter Scheduler) selects one ready
goal, from the set of ready goals, i.e., the RG_Q
queue (The FS module sorts the ready goals g on the
basis of the motive priority (g.Motiv).Pr, the utility
g.U, the urgency measure g.Urg, the flags
g.Interrupted and g.Prevented). The chosen ready
goal g is transmitted to the F module (Filter), which
will decide about its activation (i.e., adding it to the
I_Q queue). If F decides to activate g, then the
active goals g’∈I_Q∪W_Q that are in conflict with
g will be moved to the “Suspended” state, i.e., added
to SG_Q queue (If g conflict only with an active
goal g’ which is an alternative to g, then g’ will be
moved to NG_Q or RG_Q queue, according to the
availability of applicable plan). In the case F decides
to not activate g, then g will be moved to the
“Prevented” state. The “prevented” and the
“suspended” goals g will be moved to the “Ready”
or “New” state (According to the availability of
applicable plans) when the goals g’ that conflict with
g (i.e., causing the suspension/prevention) terminate.
The prevented goals g are also moved to the
“Ready” or “New” state when the urgency event
appears, i.e., g.Urg= 1 (The termination of a goal
and the urgency of a prevented goal are signalled to
the “Goal state Manager”, by the DTUM module
(Goal’s Deadline, Target, and Urgency Monitor)).
The AE module (Action Execution) is
responsible
of the achievement of active goals via plans. If this
module finds that the executed plan of an active goal
g (i.e., g.A-Plan) is not applicable in the current
situation (the in-condition of g.A-Plan is not
satisfied) then g will wait in the active state (in the
W_Q queue) until the availability of an applicable
and free-conflict plan for g. The waiting time of g in
W_Q queue should not exceed the deadline g.t
deadline
.
If g has no deadline then the AE module will
associate to g a deadline t
deadline-AE
.
In the following, we give details of the different
modules:
MU (Motivations Updater): This module is
responsible of updating motives set. The details
of updating motivations process are outside the
scope of this paper.
BR (Belief Revision and update): This module
updates and revises the set B on the basis of
new perceptions. The details of this module are
outside the scope of this paper.
GG (Goals Generator): This module generates
and updates the set of new goals on the basis of
motives set M, beliefs set B, and I_Q queue.
The produced goals are initially in “New” state,
and then the “Goal state manager” updates their
states in response of incoming events (see the
paragraph about the “Goal state manager” for
details). The details of this module are outside
the scope of this paper.
ICAART 2012 - International Conference on Agents and Artificial Intelligence
140