The paper describes an approach to allow dynamic reconfiguration of mobile agents. Both pure software agents-as the ones usually supported by multi-agent systems frameworks-as well as pure hardware agents, running in FPGA hardware, are supported. Agents can migrate among nodes or move from software to hardware (or vice-versa) using high-level services. The proposed approach even supports that a software agent migrates to another node and becomes a hardware agent in the target node. This opens a wide spectrum of possibilities for system designers, allowing dynamic reconfiguration of distributed applications based on current system requirements. Communication among agents follows the same schema usually adopted by multi-agent frameworks and the fact that the called agent is implemented as hardware or software is totally transparent to the calling agents. This is made possible due to the development of the an agent wrapper layer, on which proxy agents, implemented in software, are responsible for handling all necessary information to their hardware counterparts. The proposed approach was implemented using the Jade framework, a Java-based multi-agent systems framework which is widely adopted in several applications. In order to assess the timing performance and memory overhead of the proposed approach, a case study including two computationally intensive agents-a Floating Point Unit (FPU) and a Kalman Filter agent-were developed and implemented both as software as well as hardware agents. Obtained results that allowed the validation of the proposed ideas are presented in the paper.
展开▼