Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3365438.3410952acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article
Public Access

AC-ROS: assurance case driven adaptation for the robot operating system

Published: 16 October 2020 Publication History

Abstract

Cyber-physical systems that implement self-adaptive behavior, such as autonomous robots, need to ensure that requirements remain satisfied across run-time adaptations. The Robot Operating System (ROS), a middleware infrastructure for robotic systems, is widely used in both research and industrial applications. However, ROS itself does not assure self-adaptive behavior. This paper introduces AC-ROS, which fills this gap by using assurance case models at run time to manage the self-adaptive operation of ROS-based systems. Assurance cases provide structured arguments that a system satisfies requirements and can be specified graphically with Goal Structuring Notation (GSN) models. AC-ROS uses GSN models to instantiate a ROS-based MAPE-K framework, which in turn uses these models at run time to assure system behavior adheres to requirements across adaptations. For this study, AC-ROS is implemented and tested on EvoRally, a 1:5-scale autonomous vehicle.

References

[1]
Jonathan M. Aitken, Sandor M. Veres, and Mark Judge. 2014. Adaptation of System Configuration under the Robot Operating System. IFAC Proceedings Volumes 47, 3 (2014), 4484--4492. 19th IFAC World Congress.
[2]
Gianluca Bardaro, Andrea Semprebon, and Matteo Matteucci. 2018. A Use Case in Model-Based Robot Development Using AADL and ROS. In Proceedings of the 1st International Workshop on Robotics Software Engineering (RoSE '18). ACM, New York, NY, USA, 9--16.
[3]
Luciano Baresi, Liliana Pasquale, and Paola Spoletini. 2010. Fuzzy Goals for Requirements-Driven Adaptation. In Proceedings of the 18th IEEE International Requirements Engineering Conference. IEEE Computer Society, Washington, DC, USA, 125--134.
[4]
Nelly Bencomo, Sebastian Götz, and Hui Song. 2019. [email protected]: A Guided Tour of the State of the Art and Research Challenges. Software and Systems Modeling 18, 5 (01 2019), 3049--3082.
[5]
Gordon Blair, Nelly Bencomo, and Robert B. France. 2009. Models@ RunTime. Computer 42, 10 (Oct 2009), 22--27.
[6]
Aaron Blasdel and et al. 2020. ROS Robots. Showcase of robots using ROS, available at http://robots.ros.org.
[7]
Etienne Borde, Grégory Haïk, and Laurent Pautet. 2009. Mode-Based Reconfiguration of Critical Software Component Architectures. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE '09). European Design and Automation Association, Leuven, BEL, 1160--1165.
[8]
Radu Calinescu, Carlo Ghezzi, Marta Z. Kwiatkowska, and Raffaela Mirandola. 2012. Self-Adaptive Software Needs Quantitative Verification at Runtime. Commun. ACM 55, 9 (2012), 69--77.
[9]
Radu Calinescu, Danny Weyns, Simos Gerasimou, Muhammad Usman Iftikhar, Ibrahim Habli, and Tim Kelly. 2018. Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases. IEEE Transactions on Software Engineering 44, 11 (2018), 1039--1069.
[10]
Javier Cámara, Rogério de Lemos, Carlo Ghezzi, and Antónia Lopes (Eds.). 2013. Assurances for Self-Adaptive Systems - Principles, Models, and Techniques. Vol. 7740. Springer, Cham, DEU.
[11]
Michael Cashmore, Maria Fox, Derek Long, Daniele Magazzeni, Bram Ridder, Arnau Carreraa, Narcis Palomeras, Natàlia Hurtós, and Marc Carrerasa. 2015. ROSPlan: Planning in the Robot Operating System. In Proceedings of the Twenty-Fifth International Conference on International Conference on Automated Planning and Scheduling (ICAPS '15). AAAI Press, Palo Alto, CA, USA, 333--341.
[12]
Betty H.C. Cheng, Kerstin I. Eder, Martin Gogolla, Lars Grunske, Marin Litoiu, Hausi A. Müller, Patrizio Pelliccione, Anna Perini, Nauman A. Qureshi, Bernhard Rumpe, Daniel Schneider, Frank Trollmann, and Norha M. Villegas. 2011. Using Models at Runtime to Address Assurance for Self-Adaptive Systems. In [email protected] - Foundations, Applications, and Roadmaps [Dagstuhl Seminar 11481, November 27 - December 2, 2011], Vol. 8378. Springer, Cham, DEU, 101--136.
[13]
Betty H. C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, Jeff Magee, Jesper Andersson, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Giovanna Di Marzo Serugendo, Schahram Dustdar, Anthony Finkelstein, Cristina Gacek, Kurt Geihs, Vincenzo Grassi, Gabor Karsai, Holger M. Kienle, Jeff Kramer, Marin Litoiu, Sam Malek, Raffaela Mirandola, Hausi A. Müller, Sooyong Park, Mary Shaw, Matthias Tichy, Massimo Tivoli, Danny Weyns, and Jon Whittle. 2009. Software Engineering for Self-Adaptive Systems: A Research Roadmap. In Software Engineering for Self-Adaptive Systems [Outcome of a Dagstuhl Seminar], Vol. 5525. Springer, Cham, DEU, 1--26.
[14]
Shang-Wen Cheng, David Garlan, and Bradley Schmerl. 2006. Architecture-Based Self-Adaptation in the Presence of Multiple Objectives. In Proceedings of the International Workshop on Self-Adaptation and Self-Managing Systems (SEAMS '06). ACM, New York, NY, USA, 2--8.
[15]
Ewen Denney, Ganesh Pai, and Josef Pohl. 2012. AdvoCATE: An Assurance Case Automation Toolset. In Computer Safety, Reliability, and Security (SAFECOMP '12), Vol. 7613. Springer, Berlin, DEU, 8--21.
[16]
Ewen Denney, Ganesh Pai, and Iain Whiteside. 2017. Model-Driven Development of Safety Architectures. In Proceedings of the ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS '17). IEEE, Piscataway, NJ, USA, 156--166.
[17]
Antonio Filieri, Carlo Ghezzi, and Giordano Tamburrelli. 2012. A Formal Approach to Adaptive Software: Continuous Assurance of Non-Functional Requirements. Formal Asp. Comput. 24, 2 (2012), 163--186.
[18]
Dieter Fox. 2001. KLD-Sampling: Adaptive Particle Filters. In Proceedings of the 14th International Conference on Neural Information Processing Systems: Natural and Synthetic. MIT Press, Cambridge, MA, USA, 713--720.
[19]
Brian Goldfain, Paul Drews, Changxi You, Matthew Barulic, Orlin Velev, Panagiotis Tsiotras, and James M. Rehg. 2019. AutoRally: An Open Platform for Aggressive Autonomous Driving. IEEE Control Systems Magazine 39, 1 (2019), 26--55.
[20]
John Goodenough, Charles Weinstock, and Ari Klein. 2012. Toward a Theory of Assurance Case Confidence. Technical Report CMU/SEI-2012-TR-002. Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, USA. http://resources.sei.cmu.edu/library/asset-view.cfm?AssetID=28067
[21]
Michael Grieves and John Vickers. 2017. Digital Twin: Mitigating Unpredictable, Undesirable Emergent Behavior in Complex Systems. In Transdisciplinary Perspectives on Complex Systems: New Findings and Approaches. Springer, Cham, DEU, 85--113.
[22]
Nico Hochgeschwender, Luca Gherardi, Azamat Shakhirmardanov, Gerhard K. Kraetzschmar, Davide Brugali, and Herman Bruyninckx. 2013. A Model-Based Approach to Software Deployment in Robotics. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS '04). IEEE, Piscataway, NJ, USA, 3907--3914.
[23]
M. Usman Iftikhar and Danny Weyns. 2014. ActivFORMS: Active Formal Models For Self-Adaptation. In Proceedings of the 9th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS '09). ACM, New York, NY, USA, 125--134.
[24]
Daniel Jackson, Martyn Thomas, and Lynette I. Millett (Eds.). 2007. Software for Dependable Systems: Sufficient Evidence? National Academy Press, Washington, DC, USA.
[25]
Sharmin Jahan, Allen Marshall, and Rose F. Gamble. 2019. Evaluating Security Assurance Case Adaptation. In Proceedings of the 52nd Hawaii International Conference on System Sciences (HICSS '19). ScholarSpace, Manoa, HI, USA, 1--10.
[26]
Tim Kelly and Rob Weaver. 2004. The Goal Structuring Notation-A Safety Argument Notation. In Proceedings of the Dependable Systems and Networks 2004 Workshop on Assurance Cases. CiteseerX, [online], 6.
[27]
Jeffrey O. Kephart and David M. Chess. 2003. The Vision Of Autonomic Computing. Computer 36 (2003), 41--50.
[28]
Jeffrey O. Kephart and Rajarshi Das. 2007. Achieving Self-Management via Utility Functions. IEEE Internet Computing 11, 1 (Jan 2007), 40--48.
[29]
Nathan Koenig and Andrew Howard. 2004. Design and Use Paradigms for Gazebo, an Open-Source Multi-Robot Simulator. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS '04). IEEE, Piscataway, NJ, USA, 2149--2154.
[30]
Christos Koulamas and Athanasios Kalogeras. 2018. Cyber-Physical Systems and Digital Twins in the Industrial Internet of Things [Cyber-Physical Systems]. Computer 51, 11 (Nov 2018), 95--98.
[31]
Jeff Kramer and Jeff Magee. 1990. The Evolving Philosophers Problem: Dynamic Change Management. IEEE Trans. Softw. Eng. 16, 11 (Nov 1990), 1293--1306.
[32]
Zarrin Langari and Tom Maibaum. 2013. Safety Cases: A Review of Challenges. In Proceedings of the 1st International Workshop on Assurance Cases for Software Intensive Systems (ASSURE '13). IEEE, Piscataway, NJ, USA, 1--6.
[33]
Chung-Ling Lin, Wuwei Shen, Steven Drager, and Betty Cheng. 2018. Measure Confidence of Assurance Cases in Safety-Critical Domains. In Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results. ACM, New York, NY, USA, 13--16.
[34]
Mike Maksimov, Nick L. S. Fung, Sahar Kokaly, and Marsha Chechik. 2018. Two Decades of Assurance Case Tools: A Survey. In Computer Safety, Reliability, and Security (SAFECOMP '18). Springer, Cham, DEU, 49--59.
[35]
Aaron Martinez and Enrique Fernandez. 2013. Learning ROS for Robotics Programming. Packt Publishing, Birmingham, UK, Chapter 8. Navigation Stack-Beyond Setups, 266--267.
[36]
K. Masaba and A. Q. Li. 2019. ROS-CBT: Communication Benchmarking Tool for the Robot Operating System: Extended Abstract. In 2019 IEEE International Symposium on Multi-Robot and Multi-Agent Systems (MRS). IEEE, RUTGERS UNIVERSITY, NEW BRUNSWICK, NJ, USA, 1--3.
[37]
Gabriel A. Moreno, Javier Cámara, David Garlan, and Bradley R. Schmerl. 2015. Proactive Self-Adaptation Under Uncertainty: A Probabilistic Model Checking Approach. In Proceedings of the 10th Joint Meeting on Foundations of Software Engineering. ACM, New York, NY, USA, 1--12.
[38]
Brice Morin, Olivier Barais, Jean-Marc Jezequel, Franck Fleurey, and Arnor Solberg. 2009. Models@ RunTime to Support Dynamic Adaptation. Computer 42, 10 (Oct 2009), 44--51.
[39]
Jason M. O'Kane. 2013. A Gentle Introduction to ROS. CreateSpace Independent Publishing Platform, Columbia, South Carolina. http://www.cse.sc.edu/~jokane/agitr/
[40]
Morgan Quigley, Ken Conley, Brian Gerkey, Josh Faust, Tully Foote, Jeremy Leibs, Rob Wheeler, and Andrew Ng. 2009. ROS: An Open-Source Robot Operating System. In International Conference on Robotics and Automation Workshop on Open Source Software. IEEE, Piscataway, NJ, USA, 6.
[41]
Andres J. Ramirez and Betty H.C. Cheng. 2011. Automatic Derivation of Utility Functions for Monitoring Software Requirements. In Proceedings of the 14th International Conference on Model Driven Engineering Languages and Systems (MODELS '11). Springer-Verlag, Berlin, DEU, 501--516.
[42]
Leonardo Ramos, Gabriel Divino, Guilherme Lopes, Breno de França, Leonardo Montecchi, and Esther Colombini. 2019. The RoCS Framework to Support the Development of Autonomous Robots. Journal of Software Engineering Research and Development 7 (2019), 10:1--10:14.
[43]
John Rushby. 2015. The Interpretation and Evaluation of Assurance Cases. Technical Report SRI-CSL-15-01. Computer Science Laboratory, SRI International, Menlo Park, CA. Available at http://www.csl.sri.com/users/rushby/papers/sri-csl-15-1-assurance-cases.pdf.
[44]
The Assurance Case Working Group. 2018. Goal Structuring Notation Community Standard (Version 2). Technical Report. SCSC. https://scsc.uk/r141B:1
[45]
J. Towler and M. Bries. 2018. ROS-Military: Progress and Promise. In Ground Vehicle Systems Engineering and Technology Symposium (GVSETS). National Defense Industrial Association (NDIA), Novi, Michigan, 10.
[46]
William E. Walsh, Gerald Tesauro, Jeffrey O. Kephart, and Rajarshi Das. 2004. Utility Functions in Autonomic Systems. In Proceedings of the International Conference on Autonomic Computing (ICAC '04). IEEE, Piscataway, NJ, USA, 70--77.
[47]
Danny Weyns, M. Usman Iftikhar, Didac Gil de la Iglesia, and Tanvir Ahmad. 2012. A Survey of Formal Methods in Self-Adaptive Systems. In Proceedings of the 5th International C* Conference of Computer Science & Software Engineering (C3S2E '12). ACM, New York, NY, USA, 67--79.
[48]
Danny Weyns, Sam Malek, and Jesper Andersson. 2012. Unifying Reference Model for Formal Specification of Distributed Self-Adaptive Systems. ACM Trans. Auton. Adapt. Syst. 7, 1 (2012), 8:1--8:61.
[49]
Jon Whittle, Peter Sawyer, Nelly Bencomo, Betty H. C. Cheng, and Jean-Michel Bruel. 2009. RELAX: Incorporating Uncertainty into the Specification of Self-Adaptive Systems. In Proceedings of the 17th IEEE International Requirements Engineering Conference. IEEE Computer Society, Washington, DC, USA, 79--88.
[50]
Ji Zhang and Betty H. C. Cheng. 2006. Model-based development of dynamically adaptive software. In Proceedings of the 28th International Conference on Software Engineering (ICSE '06). ACM, New York, NY, USA, 371--380.
[51]
Ji Zhang, Heather Goldsby, and Betty H. C. Cheng. 2009. Modular Verification of Dynamically Adaptive Systems. In Proceedings of the 8th International Conference on Aspect-Oriented Software Development. ACM, New York, NY, USA, 161--172.

Cited By

View all
  • (2024)SafeDriveRL: Combining Non-cooperative Game Theory with Reinforcement Learning to Explore and Mitigate Human-based Uncertainty for Autonomous VehiclesProceedings of the 19th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3643915.3644089(214-220)Online publication date: 15-Apr-2024
  • (2023)MROS: A Framework for Robot Self-AdaptationProceedings of the 45th International Conference on Software Engineering: Companion Proceedings10.1109/ICSE-Companion58688.2023.00044(151-155)Online publication date: 14-May-2023
  • (2023)A model-based mode-switching framework based on security vulnerability scoresJournal of Systems and Software10.1016/j.jss.2023.111633200:COnline publication date: 1-Jun-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MODELS '20: Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems
October 2020
406 pages
ISBN:9781450370196
DOI:10.1145/3365438
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]

Sponsors

In-Cooperation

  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 October 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. assurance case
  2. cyber-physical systems
  3. digital twin
  4. goal structuring notation
  5. robot operating system
  6. self-adaptive systems

Qualifiers

  • Research-article

Funding Sources

Conference

MODELS '20
Sponsor:

Acceptance Rates

MODELS '20 Paper Acceptance Rate 35 of 127 submissions, 28%;
Overall Acceptance Rate 144 of 506 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)281
  • Downloads (Last 6 weeks)32
Reflects downloads up to 18 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)SafeDriveRL: Combining Non-cooperative Game Theory with Reinforcement Learning to Explore and Mitigate Human-based Uncertainty for Autonomous VehiclesProceedings of the 19th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3643915.3644089(214-220)Online publication date: 15-Apr-2024
  • (2023)MROS: A Framework for Robot Self-AdaptationProceedings of the 45th International Conference on Software Engineering: Companion Proceedings10.1109/ICSE-Companion58688.2023.00044(151-155)Online publication date: 14-May-2023
  • (2023)A model-based mode-switching framework based on security vulnerability scoresJournal of Systems and Software10.1016/j.jss.2023.111633200:COnline publication date: 1-Jun-2023
  • (2022)Safe adaptation of cobotic cells based on petri netsProceedings of the 17th Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3524844.3528075(43-47)Online publication date: 18-May-2022

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media