skip to main content
research-article

Compositional Design of Multi-Robot Systems Control Software on ROS

Published:08 October 2019Publication History
Skip Abstract Section

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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarCross RefCross Ref
  3. Albert Benveniste et al. 2018. Contracts for system design. Foundations and Trends® in Electronic Design Automation 12, 2--3 (2018), 124--400.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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/.Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarCross RefCross Ref
  11. Alberto Elfes. 1989. Using occupancy grids for mobile robot perception and navigation. Computer 6 (1989), 46--57.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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/.Google ScholarGoogle Scholar
  21. Hadas Kress-Gazit. 2011. Robot challenges: Toward development of verification and synthesis techniques. IEEE Robotics 8 Automation Magazine 18, 3 (2011), 22--23.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarCross RefCross Ref
  24. Michele Lora, Sara Vinco, and Franco Fummi. 2019. Translation, abstraction and integration for effective smart system design. IEEE Trans. Comput. (2019).Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle Scholar
  26. J. W. McDonald Hayhurst and D. C. Conner. 2018. Towards capability-based synthesis of executable robot behaviors. In SoutheastCon 2018. 1--8.Google ScholarGoogle Scholar
  27. Amir Pnueli Nir Piterman and Yaniv Saar. 2006. Synthesis of reactive(1) designs. In Proceedings of VMCAI 2006.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  30. Pierluigi Nuzzo and Alberto L. Sangiovanni-Vincentelli. 2018. Hierarchical system design with vertical contracts. In Principles of Modeling. Springer, 360--382.Google ScholarGoogle Scholar
  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.Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle Scholar
  33. Open Source Robotics Foundation (OSRF). 2018. Gazebo Simulator. https://www.openrobotics.org/.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  36. Robotis. 2017. Turtlebot3. http://www.robotis.us/turtlebot-3/.Google ScholarGoogle Scholar
  37. Roni Rosner. 1991. Modular synthesis of reactive systems. PhD Thesis. The Weizmann Institute of Science (1991).Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar

Index Terms

  1. Compositional Design of Multi-Robot Systems Control Software on ROS

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • 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

          Copyright © 2019 ACM

          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

          Publication History

          • Published: 8 October 2019
          • Accepted: 1 July 2019
          • Revised: 1 June 2019
          • Received: 1 April 2019
          Published in tecs Volume 18, Issue 5s

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format