skip to main content
research-article

Compositional Design of Multi-Robot Systems Control Software on ROS

Published: 08 October 2019 Publication History

Abstract

This paper presents a methodology that relies on Assume-Guarantee Contracts to decompose the problem of synthesizing control software for a multi-robot system. Initially, each contract describes either a component (e.g., a robot) or an aspect of the system. Then, the design problem is decomposed into different synthesis and verification sub-problems, allowing to tackle the complexity involved in the design process. The design problem is then recomposed by exploiting the rigorousness provided by contracts. This allows us to achieve system-level simulation capable to be used for validating the entire design. Once validated, the software synthesized during the process can be integrated into Robot Operating System (ROS) nodes and executed using state-of-the-practice packages and tools for modern robotic systems.
We apply the methodology to generate a control strategy for an autonomous goods transportation system. Our results show a massive reduction of the time required to obtain automatically the control software implementing a multi-robot mission.

References

[1]
Houssam Abbas, Indranil Saha, Yasser Shoukry, Rudiger Ehlers, Georgios Fainekos, Rajesh Gupta, Rupak Majumdar, and Dogan Ulus. 2018. Special session: Embedded software for robotics: Challenges and future directions. In Proceedings of the International Conference on Embedded Software, (EMSOFT) 2018.
[2]
Nikunj Bajaj, Pierluigi Nuzzo, Michael Masin, and Alberto Sangiovanni-Vincentelli. 2015. Optimized selection of reliable and cost-effective cyber-physical system architectures. In Proceedings of the 2015 Design, Automation 8 Test in Europe Conference 8 Exhibition. EDA Consortium, 561--566.
[3]
Albert Benveniste et al. 2018. Contracts for system design. Foundations and Trends® in Electronic Design Automation 12, 2--3 (2018), 124--400.
[4]
Roderick Bloem, Barbara Jobstmann, Nir Piterman, Amir Pnueli, and Yaniv Saar. 2012. Synthesis of reactive (1) designs. J. Comput. System Sci. 78, 3 (2012), 911--938.
[5]
Nicola Bombieri, Giuseppe Di Guglielmo, Michele Ferrari, Franco Fummi, Graziano Pravadelli, Francesco Stefanni, and Alessandro Venturelli. 2010. HIFSuite: Tools for HDL code conversion and manipulation. EURASIP Journal on Embedded Systems 2010, 1 (2010), 436328.
[6]
Davide Bresolin, Luigi Di Guglielmo, Luca Geretti, Riccardo Muradore, Paolo Fiorini, and Tiziano Villa. 2012. Open problems in verification and refinement of autonomous robotic systems. In Proceedings of Euromicro Digital System Design (DSD) 2012. IEEE, 469--476.
[7]
H. Bruyninckx. 2001. Open robot control software: The OROCOS project. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Vol. 3. IEEE, 2523--2528. http://ieeexplore.ieee.org/document/933002/.
[8]
Edmund Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. 2003. Counterexample-guided abstraction refinement for symbolic model checking. Journal of the ACM (JACM) 50, 5 (2003), 752--794.
[9]
Ankush Desai, Indranil Saha, Jianqiao Yang, Shaz Qadeer, and Sanjit A. Seshia. 2017. Drona: A framework for safe distributed mobile robotics. In 2017 ACM/IEEE 8th International Conference on Cyber-Physical Systems (ICCPS). IEEE, 239--248.
[10]
Rüdiger Ehlers and Vasumathi Raman. 2016. Slugs: Extensible GR(1) synthesis. In Proceedings of International Conference on Computer Aided Verification (CAV). Springer, 333--339.
[11]
Alberto Elfes. 1989. Using occupancy grids for mobile robot perception and navigation. Computer 6 (1989), 46--57.
[12]
Yishai A. Feldman and Henry Broodney. 2016. A cognitive journey for requirements engineering. In INCOSE International Symposium, Vol. 26. Wiley Online Library, 430--444.
[13]
Ioannis Filippidis, Sumanth Dathathri, Scott C. Livingston, Necmiye Ozay, and Richard M. Murray. 2016. Control design for hybrid systems with TuLiP: The temporal logic planning toolbox. In Proceedings of IEEE Conference on Control Applications (CCA) 2016. 1030--1041.
[14]
C. Finucane and H. Kress-Gazit. 2010. LTLMoP: Experimenting with language, temporal logic and robot control. In 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. 1988--1993.
[15]
Franco Fummi, Michele Lora, Francesco Stefanni, Dimitrios Trachanis, Jahn Vanhese, and Sara Vinco. 2014. Moving from co-simulation to simulation for effective smart systems design. In Proceedings of IEEE/ACM Design Automation and Test in Europe (DATE) 2014. 286.
[16]
Brian P. Gerkey and Maja J. Matarić. 2004. A formal analysis and taxonomy of task allocation in multi-robot systems. The International Journal of Robotics Research 23, 9 (2004), 939--954.
[17]
G. J. Gerard J. Holzmann. 1997. The model checker SPIN. IEEE Transactions on Software Engineering 23, 5 (1997), 279. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=588521.
[18]
Pablo Iñigo-Blasco, Fernando Diaz-del Rio, Ma Carmen Romero-Ternero, Daniel Cagigas-Muñiz, and Saturnino Vicente-Diaz. 2012. Robotics software frameworks for multi-agent robotic systems development. Robotics and Autonomous Systems 60, 6 (jun 2012), 803--821.
[19]
Kurt Keutzer, A. Richard Newton, Jan M. Rabaey, and Alberto Sangiovanni-Vincentelli. 2000. System-level design: Orthogonalization of concerns and platform-based design. IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems 19, 12 (2000), 1523--1543.
[20]
N. Koenig and A. Howard. 2004. Design and use paradigms for gazebo, an open-source multi-robot simulator. In Proceedings of IEEE/RSJ International Conference on Intelligent Robotics and Systems (IROS), Vol. 3. IEEE, 2149--2154. http://ieeexplore.ieee.org/document/1389727/.
[21]
Hadas Kress-Gazit. 2011. Robot challenges: Toward development of verification and synthesis techniques. IEEE Robotics 8 Automation Magazine 18, 3 (2011), 22--23.
[22]
Hadas Kress-Gazit, Georgios E. Fainekos, and George J. Pappas. 2009. Temporal-logic-based reactive mission and motion planning. IEEE Transactions on Robotics 25, 6 (2009), 1370--1381.
[23]
Daniel Kroening, Alex Groce, and Edmund Clarke. 2004. Counterexample guided abstraction refinement via program execution. In International Conference on Formal Engineering Methods. Springer, 224--238.
[24]
Michele Lora, Sara Vinco, and Franco Fummi. 2019. Translation, abstraction and integration for effective smart system design. IEEE Trans. Comput. (2019).
[25]
S. Maniatopoulos, P. Schillinger, V. Pong, D. C. Conner, and H. Kress-Gazit. 2016. Reactive high-level behavior synthesis for an Atlas humanoid robot. In IEEE International Conference on Robotics and Automation (ICRA). 4192--4199.
[26]
J. W. McDonald Hayhurst and D. C. Conner. 2018. Towards capability-based synthesis of executable robot behaviors. In SoutheastCon 2018. 1--8.
[27]
Amir Pnueli Nir Piterman and Yaniv Saar. 2006. Synthesis of reactive(1) designs. In Proceedings of VMCAI 2006.
[28]
P. Nuzzo, A. Iannopollo, S. Tripakis, and A. Sangiovanni-Vincentelli. 2014. Are interface theories equivalent to contract theories?. In 2014 Twelfth ACM/IEEE Conference on Formal Methods and Models for Codesign (MEMOCODE). 104--113.
[29]
Pierluigi Nuzzo, Michele Lora, Yishai A Feldman, and Alberto Sangiovanni-Vincentelli. 2018. CHASE: Contract-based requirement engineering for cyber-physical system design. In Proceedings of IEEE/ACM Design Automation and Test in Europe (DATE) 2018. 839--844.
[30]
Pierluigi Nuzzo and Alberto L. Sangiovanni-Vincentelli. 2018. Hierarchical system design with vertical contracts. In Principles of Modeling. Springer, 360--382.
[31]
Pierluigi Nuzzo, Alberto L. Sangiovanni-Vincentelli, Davide Bresolin, Luca Geretti, and Tiziano Villa. 2015. A platform-based design methodology with contracts and related tools for the design of cyber-physical systems. Proc. IEEE 103, 11 (2015), 2104--2132.
[32]
Pierluigi Nuzzo, Alberto L. Sangiovanni-Vincentelli, and Richard M. Murray. 2015. Methodology and tools for next generation cyber-physical systems: The iCyPhy approach. In INCOSE International Symposium, Vol. 25. Wiley Online Library, 235--249.
[33]
Open Source Robotics Foundation (OSRF). 2018. Gazebo Simulator. https://www.openrobotics.org/.
[34]
Roberto Passerone, Imene Ben Hafaiedh, Susanne Graf, Albert Benveniste, Daniela Cancila, Arnaud Cuccuru, Sebastien Gerard, Francois Terrier, Werner Damm, Alberto Ferrari, et al. 2009. Metamodels in Europe: Languages, tools, and applications. IEEE Design 8 Test of Computers 26, 3 (2009), 38--53.
[35]
Morgan Quigley, Ken Conley, Brian Gerkey, Josh Faust, Tully Foote, Jeremy Leibs, Rob Wheeler, and Andrew Y. Ng. 2009. ROS: An open-source robot operating system. In IEEE International Conference on Robotics and Automation (ICRA), Vol. 3. Kobe, Japan, 5.
[36]
Robotis. 2017. Turtlebot3. http://www.robotis.us/turtlebot-3/.
[37]
Roni Rosner. 1991. Modular synthesis of reactive systems. PhD Thesis. The Weizmann Institute of Science (1991).
[38]
S. Spellini, M. Lora, S. Chattopadhyay, and F. Fummi. 2018. Work-in-progress: Introducing assume-guarantee contracts for verifying robotic applications. In 2018 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). 1--2.
[39]
K. W. Wong and H. Kress-Gazit. 2017. From high-level task specification to robot operating system (ROS) implementation. In 2017 First IEEE International Conference on Robotic Computing (IRC). 188--195.

Cited By

View all
  • (2023)The Energy Efficiency Multi-Robot System and Disinfection Service Robot Development in Large-Scale Complex EnvironmentSensors10.3390/s2312572423:12(5724)Online publication date: 19-Jun-2023
  • (2022)Localization Design and Implementation Using Combined Rotary Encoder, IMU, and ROS on Delivery Service Robots in Building Area2022 8th International Conference on Science and Technology (ICST)10.1109/ICST56971.2022.10136264(1-6)Online publication date: 7-Sep-2022
  • (2022)Design of multi-robot collaborative navigation and control system based on ROS and laser SLAMJournal of Physics: Conference Series10.1088/1742-6596/2284/1/0120082284:1(012008)Online publication date: 1-Jun-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 18, Issue 5s
Special Issue ESWEEK 2019, CASES 2019, CODES+ISSS 2019 and EMSOFT 2019
October 2019
1423 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/3365919
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 08 October 2019
Accepted: 01 July 2019
Revised: 01 June 2019
Received: 01 April 2019
Published in TECS Volume 18, Issue 5s

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Contract-based design
  2. robotic operating system

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)24
  • Downloads (Last 6 weeks)3
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)The Energy Efficiency Multi-Robot System and Disinfection Service Robot Development in Large-Scale Complex EnvironmentSensors10.3390/s2312572423:12(5724)Online publication date: 19-Jun-2023
  • (2022)Localization Design and Implementation Using Combined Rotary Encoder, IMU, and ROS on Delivery Service Robots in Building Area2022 8th International Conference on Science and Technology (ICST)10.1109/ICST56971.2022.10136264(1-6)Online publication date: 7-Sep-2022
  • (2022)Design of multi-robot collaborative navigation and control system based on ROS and laser SLAMJournal of Physics: Conference Series10.1088/1742-6596/2284/1/0120082284:1(012008)Online publication date: 1-Jun-2022
  • (2021)Virtual Prototyping a Production Line Using Assume–Guarantee ContractsIEEE Transactions on Industrial Informatics10.1109/TII.2020.303867917:9(6294-6302)Online publication date: Sep-2021
  • (2020)Production recipe validation through formalization and digital twin generationProceedings of the 23rd Conference on Design, Automation and Test in Europe10.5555/3408352.3408739(1698-1703)Online publication date: 9-Mar-2020
  • (2020)Towards Compositional Verification for Modular Robotic SystemsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.329.2329(15-22)Online publication date: 3-Dec-2020
  • (2020)Production Recipe Validation through Formalization and Digital Twin Generation2020 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE48585.2020.9116343(1698-1703)Online publication date: Mar-2020

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media