Middleware for Multi-robot Systems

Recent advances in robotics technology have made it viable to assign complex tasks to large numbers of inexpensive robots. The robots as an ensemble form into a multi-robot system (MRS), which can be utilized for many applications where a single robot is not efficient or feasible. MRS can be used for a wide variety of application domains such as military, agriculture, smart home, disaster relief, etc. It offers higher scalability, reliability, and efficiency as compared to single-robot system. However, it is nontrivial to develop and deploy MRS applications due to many challenging issues such as distributed computation, collaboration, coordination, and real-time integration of robotic modules and services. To make the development of multi-robot applications easier, researchers have proposed various middleware architectures to provide programming abstractions that help in managing the complexity and heterogeneity of hardware and applications. With the help of middleware, an application developer can concentrate on the high-level logic of applications instead of worrying about low-level hardware and network details. In this chapter, we survey state of the art in both distributed MRS and middleware being used for developing their applications. We provide a taxonomy that can be used to classify the MRS middleware and analyze existing middleware functionalities and features. Our work will help researchers and developers in the systematic understanding of middleware for MRS and in selecting or developing the appropriate middleware based on the application requirements.

[1]  Jameela Al-Jaroodi,et al.  Middleware for Robotics: A Survey , 2008, 2008 IEEE Conference on Robotics, Automation and Mechatronics.

[2]  Bruce A. MacDonald,et al.  Acceptance of Healthcare Robots for the Older Population: Review and Future Directions , 2009, Int. J. Soc. Robotics.

[3]  Stephan K. Chalup,et al.  Machine Learning With AIBO Robots in the Four-Legged League of RoboCup , 2007, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews).

[4]  Yu Zhou,et al.  A robot system design for low-cost multi-robot manipulation , 2014, 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[5]  Wolfram Burgard,et al.  Collaborative multi-robot exploration , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[6]  Serge Kernbach,et al.  Re-embodiment of Honeybee Aggregation Behavior in an Artificial Micro-Robotic System , 2009, Adapt. Behav..

[7]  Radhika Nagpal,et al.  Kilobot: A low cost robot with scalable operations designed for collective behaviors , 2014, Robotics Auton. Syst..

[8]  Muhammad Ali Babar,et al.  Software architectures for robotic systems: A systematic mapping study , 2016, J. Syst. Softw..

[9]  Pedro U. Lima,et al.  Multi-Robot Systems , 2005, Innovations in Robot Mobility and Control.

[10]  M. Robinson,et al.  Teaching Evolution to Non-English Proficient Students by Using Lego Robotics , 2007 .

[11]  S Magnenat,et al.  ASEBA: A Modular Architecture for Event-Based Control of Complex Robots , 2011, IEEE/ASME Transactions on Mechatronics.

[12]  Ian F. Akyildiz,et al.  Wireless sensor networks: a survey , 2002, Comput. Networks.

[13]  Gaurav S. Sukhatme,et al.  Experiments with a Large Heterogeneous Mobile Robot Team: Exploration, Mapping, Deployment and Detection , 2006, Int. J. Robotics Res..

[14]  Joseph F. Engelberger Robotics in practice :: management and applications of industrial robots , 1980 .

[15]  James McLurkin,et al.  Using Multi-Robot Systems for Engineering Education: Teaching and Outreach With Large Numbers of an Advanced, Low-Cost Robot , 2013, IEEE Transactions on Education.

[16]  Gaurav S. Sukhatme,et al.  Most valuable player: a robot device server for distributed control , 2001, Proceedings 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the the Next Millennium (Cat. No.01CH37180).

[17]  Takashi Suehiro,et al.  A Software Platform for Component Based RT-System Development: OpenRTM-Aist , 2008, SIMPAR.

[18]  Jameela Al-Jaroodi,et al.  A Review of Middleware for Networked Robots , 2009 .

[19]  Howie Choset,et al.  Continuum Robots for Medical Applications: A Survey , 2015, IEEE Transactions on Robotics.

[20]  Francesco Mondada,et al.  Aseba-Challenge: An Open-Source Multiplayer Introduction to Mobile Robots Programming , 2008, Fun and Games.

[21]  Cecilia Laschi,et al.  Soft robotics: a bioinspired evolution in robotics. , 2013, Trends in biotechnology.

[22]  Manuela M. Veloso,et al.  CMDragons: Dynamic passing and strategy on a champion robot soccer team , 2008, 2008 IEEE International Conference on Robotics and Automation.

[23]  Lynne E. Parker,et al.  Guest editorial advances in multirobot systems , 2002, IEEE Trans. Robotics Autom..

[24]  Seth Copen Goldstein,et al.  Scalable shape sculpting via hole motion: motion planning in lattice-constrained modular robots , 2006, Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006. ICRA 2006..

[25]  Seung-Ik Lee,et al.  OPRoS: A New Component‐Based Robot Software Platform , 2010 .

[26]  Horst-Michael Groß,et al.  MIRA - middleware for robotic applications , 2012, 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[27]  James McLurkin,et al.  Distributed Algorithms for Dispersion in Indoor Environments Using a Swarm of Autonomous Mobile Robots , 2004, DARS.

[28]  Hans Utz,et al.  Miro - middleware for mobile robot applications , 2002, IEEE Trans. Robotics Autom..

[29]  James McLurkin,et al.  Speaking Swarmish: Human-Robot Interface Design for Large Swarms of Autonomous Mobile Robots , 2006, AAAI Spring Symposium: To Boldly Go Where No Human-Robot Team Has Gone Before.

[30]  Pramod K. Varshney,et al.  QoS Support in Wireless Sensor Networks: A Survey , 2004, International Conference on Wireless Networks.

[31]  Dimitris Alimisis,et al.  Educational robotics: Open questions and new challenges , 2013 .

[32]  Daniele Nardi,et al.  Multirobot systems: a classification focused on coordination , 2004, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics).

[33]  Tara Estlin,et al.  The CLARAty architecture for robotic autonomy , 2001, 2001 IEEE Aerospace Conference Proceedings (Cat. No.01TH8542).

[34]  Donato Di Paola,et al.  IoT-aided robotics applications: Technological implications, target domains and open issues , 2014, Comput. Commun..

[35]  Francesco Mondada,et al.  Decentralized self-selection of swarm trajectories: from dynamical systems theory to robotic implementation , 2014, Swarm Intelligence.

[36]  James McLurkin,et al.  Distributed Path Planning for Collective Transport Using Homogeneous Multi-robot Systems , 2014, DARS.

[37]  Alcherio Martinoli,et al.  The Khepera IV Mobile Robot: Performance Evaluation, Sensory Data and Software Toolbox , 2015, ROBOT.

[38]  Maja J. Mataric,et al.  Interaction and intelligent behavior , 1994 .

[39]  Ramesh Govindan,et al.  Macro-programming Wireless Sensor Networks Using Kairos , 2005, DCOSS.

[40]  Aristides A. G. Requicha,et al.  Self-assembly and self-repair of arbitrary shapes by a swarm of reactive robots: algorithms and simulations , 2010, Auton. Robots.

[41]  A. Martinoli,et al.  A Fast Onboard Relative Positioning Module for Multirobot Systems , 2009, IEEE/ASME Transactions on Mechatronics.

[42]  Francesco Mondada,et al.  ASEBA, an event-based middleware for distributed robot control , 2007 .

[43]  Tarek M. Sobh,et al.  Robotics Middleware: A Comprehensive Literature Survey and Attribute-Based Bibliography , 2012, J. Robotics.

[44]  Lynne E. Parker,et al.  Editorial: Advances in Multi-Robot Systems , 2002 .

[45]  Alcherio Martinoli,et al.  Distributed Particle Swarm Optimization for limited-time adaptation with real robots , 2014, Robotica.

[46]  Wei-Min Shen,et al.  Automatic scalable size selection for the shape of a distributed robotic collective , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[47]  Pierre Blazevic,et al.  The NAO humanoid: a combination of performance and affordability , 2008, ArXiv.

[48]  Tao Li,et al.  Distributed Intelligent MEMS , 2016, ACM Comput. Surv..

[49]  Vijay Kumar,et al.  Effects of Sensory Precision on Mobile Robot Localization and Mapping , 2010, ISER.

[50]  Songmin Jia,et al.  Intelligent Home Service Robotic System Based on Robot Technology Middleware , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[51]  Christian Schlegel,et al.  The SmartMDSD Toolchain: An Integrated MDSD Workflow and Integrated Development Environment (IDE) for Robotics Software , 2016 .

[52]  Francesco Mondada,et al.  The e-puck, a Robot Designed for Education in Engineering , 2009 .

[53]  Radhika Nagpal,et al.  Self-repair through scale independent self-reconfiguration , 2004, 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. No.04CH37566).

[54]  François Michaud,et al.  Robotic Software Integration Using MARIE , 2006 .

[55]  Matthias Scheutz,et al.  Development environments for autonomous mobile robots: A survey , 2007, Auton. Robots.

[56]  Peter Simon Sapaty,et al.  Military Robotics: Latest Trends and Spatial Grasp Solutions , 2015 .

[57]  C. Schlegel,et al.  Interfacing different layers of a multilayer architecture for sensorimotor systems using the object-oriented framework SMARTSOFT , 1999, 1999 Third European Workshop on Advanced Mobile Robots (Eurobot'99). Proceedings (Cat. No.99EX355).

[58]  Radhika Nagpal,et al.  Programmable self-assembly in a thousand-robot swarm , 2014, Science.

[59]  Daniele Nardi,et al.  OpenRDK: A modular framework for robotic software development , 2008, 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[60]  Raffaello D'Andrea,et al.  Coordinating Hundreds of Cooperative, Autonomous Vehicles in Warehouses , 2007, AI Mag..

[61]  Rajkumar Buyya,et al.  CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms , 2011, Softw. Pract. Exp..

[62]  Nicola Santoro Distributed Algorithms for Autonomous Mobile Robots , 2006, IFIP TCS.

[63]  António Manuel Santos Pascoal,et al.  A Graph-Based Formation Algorithm for Odor Plume Tracing , 2014, DARS.

[64]  Francesco Mondada,et al.  Scripting the swarm: event-based control of microcontroller-based robots. , 2008 .

[65]  Ryan A. Beasley Medical Robots: Current Systems and Research Directions , 2012, J. Robotics.

[66]  Vijay Kumar,et al.  Experimental Testbed for Large Multirobot Teams , 2008, IEEE Robotics Autom. Mag..

[67]  Richard T. Vaughan,et al.  The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems , 2003 .

[68]  Songmin Jia,et al.  Network Distributed Monitoring System Based on Robot Technology Middleware , 2007 .

[69]  Yan Liu,et al.  Programming Large-Scale Multi-Robot System with Timing Constraints , 2016, 2016 25th International Conference on Computer Communication and Networks (ICCCN).

[70]  Samuel Tardieu,et al.  The Urbi Universal Platform for Robotics , 2008 .

[71]  Jiannong Cao,et al.  An ensemble-level programming model with real-time support for multi-robot systems , 2016, 2016 IEEE International Conference on Pervasive Computing and Communication Workshops (PerCom Workshops).

[72]  Herman Bruyninckx,et al.  Open robot control software: the OROCOS project , 2001, Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164).

[73]  Scott Rixner,et al.  A Low-Cost Multi-robot System for Research, Teaching, and Outreach , 2010, DARS.

[74]  Fabiane Barreto Vavassori Benitti,et al.  Exploring the educational potential of robotics in schools: A systematic review , 2012, Comput. Educ..

[75]  Guoqiang Hu,et al.  Cloud robotics: architecture, challenges and applications , 2012, IEEE Network.

[76]  Lynne E. Parker,et al.  Current State of the Art in Distributed Autonomous Mobile Robotics , 2000 .

[77]  Nicolas Jouandeau,et al.  A Survey and Analysis of Multi-Robot Coordination , 2013 .

[78]  Olivier Simonin,et al.  Are Middlewares Ready for Multi-robots Systems? , 2014, SIMPAR.

[79]  Morgan Quigley,et al.  ROS: an open-source Robot Operating System , 2009, ICRA 2009.

[80]  Radhika Nagpal,et al.  Collective transport of complex objects by simple robots: theory and experiments , 2013, AAMAS.

[81]  Jared Jackson Microsoft robotics studio: A technical introduction , 2007, IEEE Robotics & Automation Magazine.

[82]  Michael Trentini,et al.  Multiple‐Robot Simultaneous Localization and Mapping: A Review , 2016, J. Field Robotics.

[83]  Alcherio Martinoli,et al.  Communication in a Swarm of Miniature Robots: The e-Puck as an Educational Tool for Swarm Robotics , 2006, Swarm Robotics.

[84]  S. Baron-Cohen,et al.  LEGO® Therapy and the Social Use of Language Programme: An Evaluation of Two Social Skills Interventions for Children with High Functioning Autism and Asperger Syndrome , 2008, Journal of autism and developmental disorders.

[85]  Takashi Suehiro,et al.  RT-middleware: distributed component middleware for RT (robot technology) , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[86]  Radhika Nagpal,et al.  Kilobot: A low cost scalable robot system for collective behaviors , 2012, 2012 IEEE International Conference on Robotics and Automation.

[87]  Tony J. Dodd,et al.  Application of Supervisory Control Theory to Swarms of e-puck and Kilobot Robots , 2014, ANTS Conference.

[88]  Luis J. Manso,et al.  RoboComp: A Tool-Based Robotics Framework , 2010, SIMPAR.

[89]  Jiannong Cao,et al.  Middleware for Wireless Sensor Networks: A Survey , 2008, Journal of Computer Science and Technology.

[90]  Luca Mottola,et al.  Programming wireless sensor networks , 2011, ACM Comput. Surv..