Advertisement

Design Automation for Embedded Systems

, Volume 18, Issue 1–2, pp 39–60 | Cite as

Dynamically reconfigurable hardware/software mobile agents

  • David Cemin
  • Marcelo Götz
  • Carlos Eduardo Pereira
Article

Abstract

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.

Keywords

Multi-agent systems Hardware agent Mobile agent Reconfigurable computing 

References

  1. 1.
    Anjum M, Park J, Hwang W, il Kwon H, Kim HJ, Lee C, Kim SK, il Danr CD (2010) Sensor data fusion using unscented Kalman filter for accurate localization of mobile robots. In: International conference on control automation and systems (ICCAS), pp 947–952 Google Scholar
  2. 2.
    Bauer L, Shafique M, Kramer S, Henkel J (2007) RISP: rotating instruction set processing platform. In: 44th ACM/IEEE design automation conference, DAC ’07, pp 791–796 CrossRefGoogle Scholar
  3. 3.
    Benso A, Cilardo A, Mazzocca N, Miclea L, Prinetto P, Szilard E (2005) Reconfigurable systems self-healing using mobile hardware agents. In: Proceedings of IEEE international test conference, ITC 2005, pp 9–476 Google Scholar
  4. 4.
    Bussmann S, Jennings NR, Wooldridge MJ (2004) Multiagent systems for manufacturing control: a design methodology. Springer series on agent technology. Springer, Berlin, New York, Paris CrossRefGoogle Scholar
  5. 5.
    Cervera E (2008) Practical multi-robot applications with player and JADE. In: ICARCV 10th international conference on control, automation, robotics and vision, pp 2004–2009 Google Scholar
  6. 6.
    Cilardo A, Coppolino L, Mazzocca N (2007) A framework for the design of distributed reconfigurable embedded systems. In: 20th international conference on architecture of computing systems (ARCS), pp 1–8 Google Scholar
  7. 7.
    de Freitas EP (2011) Cooperative context-aware setup and performance of surveillance missions using static and mobile wireless sensor networks. PhD thesis (doctor of philosophy), Halmstad University, Halmstad, Sweden Google Scholar
  8. 8.
    de Freitas EP, Heimfarth T, Pereira CE, Ferreira AM, Wagner FR, Larsson T (2011) Multi-agent support in a middleware for mission-driven heterogeneous sensor networks. Comput J 54(3):406–420 CrossRefGoogle Scholar
  9. 9.
    Di Domenico D, Fiengo G, Stefanopoulou A (2008) Lithium-ion battery state of charge estimation with a Kalman filter based on a electrochemical model. In: IEEE international conference on control applications, CCA, pp 702–707 Google Scholar
  10. 10.
    Fok CL, Roman GC, Lu C (2005) Rapid development and flexible deployment of adaptive wireless sensor network applications. In: Proceedings of the 25th IEEE international conference on distributed computing systems, ICDCS ’05. IEEE Computer Society, Washington, pp 653–662 Google Scholar
  11. 11.
    Fok CL, Roman GC, Lu C (2009) Agilla: a mobile agent middleware for self-adaptive wireless sensor networks. ACM Trans Auton Adapt Syst 4:16:1–16:26 CrossRefGoogle Scholar
  12. 12.
    Garcia P, Compton K, Schulte M, Blem E, Fu W (2006) An overview of reconfigurable hardware in embedded systems. EURASIP J Embed Syst 2006:1–19 CrossRefGoogle Scholar
  13. 13.
    Gomez-Gualdron J, Velez-Reyes M, Collazo L (2007) Self-reconfigurable electric power distribution system using multi-agent systems. In: Electric ship technologies symposium—ESTS. IEEE Press, New York, pp 180–187 Google Scholar
  14. 14.
    Götz M, Rettberg A, Pereira CE (2006) Run-time reconfigurable real-time operating system for hybrid execution platforms. In: Proceedings of the 12th IFAC symposium on information control problems in manufacturing (INCOM), Saint-Etienne, France, vol I—Inform. Elsevier, Oxford, pp 81–86 Google Scholar
  15. 15.
    Götz M, Dittmann F, Xie T (2009) Dynamic relocation of hybrid tasks: strategies and methodologies. Microprocess Microsyst 33(1):81–90 CrossRefGoogle Scholar
  16. 16.
    Herbert J, O’Donoghue J, Ling G, Fei K, Fok CL (2006) Mobile agent architecture integration for a wireless sensor medical application. In: IEEE/WIC/ACM international conference on web intelligence and intelligent agent technology workshops, WI-IAT workshops, pp 235–238 Google Scholar
  17. 17.
    Hsieh CM, Wang Z, Henkel J (2013) DANCE: distributed application-aware node configuration engine in shared reconfigurable sensor networks. In: Design, automation test in Europe conference exhibition (DATE), pp 839–842 Google Scholar
  18. 18.
    IEEE: IEEE 754 standard (2012). http://grouper.ieee.org/groups/754/. Access in March 2012
  19. 19.
    Kalman RE (1960) A new approach to linear filtering and prediction problems. J Basic Eng 82(Series D):35–45 CrossRefGoogle Scholar
  20. 20.
    Kearney DA, Jasiunas M (2007) Using simulated partial dynamic run-time reconfiguration to share embedded FPGA compute and power resources across a swarm of unpiloted airborne vehicles. EURASIP J Embed Syst 2007 Google Scholar
  21. 21.
    Laboratory (2012) U.D.I.E.: mobilec project website. http://www.mobilec.org/. Access in March 2012
  22. 22.
    Levis P, Madden S, Polastre J, Szewczyk R, Whitehouse K, Woo A, Gay D, Hill J, Welsh M, Brewer E, Culler D (2005) TinyOS: an operating system for sensor networks ambient intelligence. In: Weber W, Rabaey JM, Aarts E (eds) Ambient intelligence. Springer, Berlin/Heidelberg, pp 115–148. Chap 7 CrossRefGoogle Scholar
  23. 23.
    Luck M, McBurney P, Preist C (2003) Agent technology: enabling next generation computing (a roadmap for agent based computing). Agentlink. ISBN 0854 327886 Google Scholar
  24. 24.
    Lundgren D (2012) Opencores project web site. http://opencores.org/project,fpu_double. Access in March 2012
  25. 25.
    Lysecky R, Vahid F (2009) Design and implementation of a microblaze-based warp processor. ACM Trans Embed Comput Syst 8(3):22:1–22:22 CrossRefGoogle Scholar
  26. 26.
    Lysecky R, Stitt G, Vahid F (2006) Warp processors. ACM Trans Des Autom Electron Syst 11:659–681 CrossRefGoogle Scholar
  27. 27.
    Marík V, Lazansky J (2007) Industrial applications of agent technologies. Control Eng Pract 15(11):1364–1380 CrossRefGoogle Scholar
  28. 28.
    Marik V, McFarlane D (2005) Industrial adoption of agent-based technologies. IEEE Intell Syst 20(1):27–35 CrossRefGoogle Scholar
  29. 29.
    Meng Y (2005) An agent-based reconfigurable system-on-chip architecture for real-time systems. In: Second international conference on embedded software and systems (ICESS’05). IEEE Press, New York, pp 166–173 CrossRefGoogle Scholar
  30. 30.
    Meng Y (2006) An agent-based mobile robot system using configurable SOC technique. In: Proceedings 2006 IEEE international conference on robotics and automation, ICRA, pp 3368–3373 Google Scholar
  31. 31.
    Mois G, Stefan I, Enyedi S, Miclea L (2010) Reconfiguration and hardware agents in testing and repair of distributed systems. In: Design test symposium (EWDTS), pp 195–198 Google Scholar
  32. 32.
    Naji H, Wells B (2002) On incorporating multi-agents in combined hardware/software based reconfigurable systems—a general architectural framework. In: Proceedings of the thirty-fourth southeastern symposium on system theory (Cat. no. 02EX540). IEEE Press, New York, pp 344–348 CrossRefGoogle Scholar
  33. 33.
    Naji HR, Wells B, Etzkorn L (2004) Creating an adaptive embedded system by applying multi-agent techniques to reconfigurable hardware. Future Gener Comput Syst 20(6):1055–1081 CrossRefGoogle Scholar
  34. 34.
    Onori M, Lohse N, Barata J, Hanisch C (2012) The IDEAS project: plug & produce at shop-floor level. In: Assembly automation, vol 32. Emerald, Bingley, pp 124–134 Google Scholar
  35. 35.
    Quaritsch M, Kruggl K, Wischounig-Strucl D, Bhattacharya S, Shah M, Rinner B (2010) Networked UAVs as aerial sensor network for disaster management applications. E&I, Elektrotech Inftech 127(3):56–63 CrossRefGoogle Scholar
  36. 36.
    Shafique M, Bauer L, Henkel J (2009) REMiS: run-time energy minimization scheme in a reconfigurable processor with dynamic power-gated instruction set. In: IEEE/ACM international conference on computer-aided design—digest of technical papers, ICCAD 2009, pp 55–62 CrossRefGoogle Scholar
  37. 37.
    Shafique M, Bauer L, Henkel J (2010) Selective instruction set muting for energy-aware adaptive processors. In: IEEE/ACM international conference on computer-aided design (ICCAD), pp 353–360 Google Scholar
  38. 38.
    Shen W, Norrie D (1999) Agent-based systems for intelligent manufacturing: a state-of-the-art survey. Knowl Inf Syst 1(2):129–156 CrossRefGoogle Scholar
  39. 39.
    Simon D (2001) Kalman filtering. In: Embedded systems programming, pp 72–79 Google Scholar
  40. 40.
    Srivastava S, Nandi G (2010) Localization of mobile robots in a network using mobile agents. In: International conference on computer and communication technology (ICCCT), pp 415–420 Google Scholar
  41. 41.
    Tapia DI, Alonso RS, Rodríguez S, Paz JFD, González A, Juan M (2010) Embedding reactive hardware agents into heterogeneous sensor networks. In: 2010 13th conference on information fusion (FUSION), Edinburgh. IEEE Press, New York, pp 1–8 Google Scholar
  42. 42.
    Tapia D, Alonso R, García O, Corchado J (2011) Highlights in practical applications of agents and multiagent systems. In: Pérez JB, Corchado JM, Moreno MN, Julián V, Mathieu P, Canada-Bago J, Ortega A, Caballero AF (eds) Highlights in practical applications of agents and multiagent systems—advances in intelligent and soft computing. Advances in intelligent and soft computing, vol 89. Springer, Berlin, pp 249–256. Chap HERA: Hard CrossRefGoogle Scholar
  43. 43.
    TILAB: Jade website (2012). http://jade.tilab.com. Accessed in March 2012
  44. 44.
    Van Dyke Parunak H (1999) In: Weiss G (ed) Multiagent systems, chap. industrial and practical applications of DAI. MIT Press, Cambridge, pp 377–421 Google Scholar
  45. 45.
    Walder H, Platzner M (2004) A runtime environment for reconfigurable hardware operating systems. In: Proceedings of the 14th international conference on field-programmable logic and applications (FPL), pp 831–835 Google Scholar
  46. 46.
    Wigley G, Kearney D (2001) The development of an operating system for reconfigurable computing. In: Proceedings of the 9th IEEE symposium on field-programmable custom computing machines (FCCM), pp 249–250 Google Scholar
  47. 47.
    Xilinx: Partial reconfiguration user guide (2011) Google Scholar
  48. 48.
    Xilinx: Partial reconfiguration user guide. Chapter 4—PlanAhead support (2011) Google Scholar
  49. 49.
    Yoneki E, Bacon J (2005) A survey of wireless sensor network technologies: research trends and middleware’s role. Tech. rep, University of Cambridge, Computer Laboratory Google Scholar
  50. 50.
    Zhou QL, Zhang Y, Qu YH, Rabbath CA (2010) Dead reckoning and Kalman filter design for trajectory tracking of a quadrotor UAV. In: IEEE/ASME international conference on mechatronics and embedded systems and applications (MESA), pp 119–124 Google Scholar

Copyright information

© Springer Science+Business Media New York 2013

Authors and Affiliations

  • David Cemin
    • 1
  • Marcelo Götz
    • 1
  • Carlos Eduardo Pereira
    • 1
  1. 1.Electrical Engineering DepartmentFederal University of Rio Grande do SulPorto AlegreBrazil

Personalised recommendations