ADDBB
σ ∈ (ctx ≺ c(t))
hEQ,BB,AS,(ix : +c(t);h,ctx)i → hEQ ∪ {h+c(t)σ,ix,ctx
i
},BB ∪ {c(t)σ}, AS, (ix : h,ctx u {σ})i
DELBB
σ ∈ (ctx ≺ c(t))
hEQ,BB,AS,(ix : −c(t);h,ctx)i → hEQ ∪ {h−c(t)σ,ix,ctx
i
},BB \ {c(t)σ}, AS,(ix : h,ctx u {σ})i
EXTACT
σ ∈ (ctx ≺ c(t))
hEQ,BB,AS,(ix : c(t);h,ctx)i → hEQ, BB, AS ∪ {c(t)σ},(ix : h, ctx u {σ})i
The previous rules changed the context using re-
strictions and other functions and operations intro-
duced in section 3. External actions, as well as both
types of internal actions, must be precisely specified.
In other words, the agent must know exactly what to
do. For this reason, the action atom must be ground
and the agent must decide which concrete substitution
or substitutions to use from the context of the plan.
This does not mean that only one set of substitutions
can remain in the context. Note that there can be more
than one set of substitutions that map free variables of
action atoms to the same terms. Again, the shorting
function is used use here, which takes a context with
an action atom and maps them to one particular set
of substitutions of that atom. If we use these substi-
tutions to restrict the context of the original plan, we
get a new context that suits the executed action.
The following three rules ADDBB, DELBB and
EXTACT respond to the execution of an action during
the execution of a plan. It may be the addition or re-
moval of a belief from the belief base. Rules ADDBB
and DELBB are used in these situations.
Similarly, we can define the DELBB rule. In both
rules, the most suitable substitution is selected first
and the action is removed from the body of the cur-
rently executing plan. A new WEI is then put into the
agent’s event queue EQ. The result of the restriction
of the context of the plan and {σ} is used as the new
context for the top-level plan. The substitution σ is
applied to the belief c(t) and the result is inserted or
removed from the belief base BB.
The last rule is used when an external action is
performed.
Also in this rule, the substitution σ is chosen and
is used to compute the new context. The chosen sub-
stitution is also applied to the external event c(t) and
the result is inserted into the set of action AS.
6 CONCLUSIONS
We consider the transition system introduced in this
paper to be a basic formal specification of the inter-
pretation of AgentSpeak(L) language using late bind-
ings. Such an interpretation introduces more flexibil-
ity into agent decision-making by preserving options
until a specific decision needs to be made to perform
an action, compared to the original approaches. This
agent does not give up options for its future actions
prematurely and can correct its behaviour during the
execution of each plan according to the current situa-
tion or its current beliefs about the state of the system.
Currently, such an interpretation is implemented in
the system we program in the PROLOG language. In
this system, it can also be practically verified that for
some agent programs in that language, the agent can
deal with situations that fail in systems with classi-
cal interpretation. However, there are still a few open
areas, for example, the intention selection function is
not defined. Its implementation can be done in sev-
eral ways, so it will be necessary to design several
solutions and compare them with each other on a pre-
prepared set of examples using well-defined metrics.
This will be the direction of our future work.
ACKNOWLEDGEMENTS
This work has been supported by the internal BUT
project FIT-S-20-6427.
REFERENCES
Bordini, R. H., H
¨
ubner, J. F., and Wooldridge, M. (2007).
Programming multi-agent systems in AgentSpeak us-
ing Jason, volume 8. John Wiley & Sons.
Caillou, P., Gaudou, B., Grignard, A., Truong, C. Q., and
Taillandier, P. (2017). A simple-to-use bdi architecture
for agent-based modeling and simulation. In Advances
in Social Simulation 2015, pages 15–28. Springer.
Operational Semantic of an AgentSpeak(L) Interpreter Using Late Bindings
179