Title of article :
An application-level technique based on recursive hierarchical state machines for agent execution state capture
Author/Authors :
Giancarlo Fortino، نويسنده , , Francesco Rango، نويسنده ,
Issue Information :
ماهنامه با شماره پیاپی سال 2013
Pages :
22
From page :
725
To page :
746
Abstract :
The capture of the execution state of agents in agent-based and multi-agent systems is a system feature needed to enable agent checkpointing, persistency and strong mobility that are basic mechanisms supporting more complex, distributed policies and algorithms for fault tolerance, load balancing, and transparent migration. Unfortunately, the majority of the currently available platforms for agents, particularly those based on the standard Java Virtual Machine, do not provide this important feature at the system-level. Several system-level and application-level approaches have been to date proposed for agent state execution capture. Although system-level approaches are effective, they modify the underlying virtual machine so endangering compatibility. Conversely, application-level approaches do not modify any system layer but they provide sophisticated agent programming models and/or agent converters that only allow a coarse-grain capture of agent state execution.In this paper, we propose an application-level technique that allows for a programmable-grain capture of the execution state of agents ranging from a per-instruction to a statement-driven state capture. The technique is based on the Distilled StateCharts Star (DSC*) formalism that offers an agent-oriented type of recursive hierarchical state machines. According to the proposed technique a single-threaded agent program can be translated into a DSC* machine, containing agent data, code and execution state, by preserving the original agent program semantics. The proposed technique can notably be applied to any agent program written through an imperative-style, procedural or object-oriented programming language. Currently, it is implemented in Java and fully integrated into the JADE framework, being JADE one of the most diffused agent platforms. In particular, agents, which are specified through a generic Java-like agent language, can be automatically translated into JADE agents according to the JADE DSCStarBehaviour framework by means of a translator tool. A simple yet effective running example is used to exemplify the proposed technique from modeling to implementation.
Keywords :
Distilled StateCharts , Execution state capture , Strong mobility , Jade , Software agents
Journal title :
Science of Computer Programming
Serial Year :
2013
Journal title :
Science of Computer Programming
Record number :
1080354
Link To Document :
بازگشت