Skip to main content

Formal Specification of Robotic Architectures for Experimental Robotics

  • Chapter
  • First Online:

Part of the book series: Cognitive Systems Monographs ((COSMOS,volume 36))

Abstract

Robotic systems are becoming more safety critical systems as they are deployed in unstructured human-centered environments. These software intensive systems are composed of distributed, heterogeneous software components interacting in a highly dynamic, uncertain environment. However, no systematic software development process is followed in robotics research. This is a real barrier for system level performance analysis and reasoning, which are in turn required for scalable bench-marking methods and reusing existing software. This chapter provides an end-to-end overview on how robotic software systems can be formally specified from requirement modeling, through solution space exploration, and architecture modeling, and finally to generate executable code. The process is based on SafeRobots framework—a model-driven toolchain for designing software for robotics. Several domain-specific modeling languages that are developed as a part of this integrated approach are also discussed.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Scotchmer, S.: Standing on the shoulders of giants: cumulative research and the patent law. J. Econ. Perspect. 29–41 (1991)

    Google Scholar 

  2. Garlan, D.: Formal modeling and analysis of software architecture: components, connectors, and events. In: Formal Methods for Software Architectures, pp. 1–24. Springer (2003)

    Google Scholar 

  3. Agre, P.E., Chapman, D.: What are plans for? Robot. Auton. Syst. 6(1), 17–34 (1990)

    Article  Google Scholar 

  4. Brooks, R.A.: A robust layered control system for a mobile robot. IEEE J. Robot. Autom. 2(1), 14–23 (1986)

    Article  Google Scholar 

  5. Gat, E., et al.: On three-layer architectures. Artif. Intell. Mob. Robot. Case Stud. Success. Robot. Syst. 195 (1998)

    Google Scholar 

  6. Anderson, J.R., Matessa, M., Lebiere, C.: Act-r: a theory of higher level cognition and its relation to visual attention. Hum.-Comput. Interact. 12(4), 439–462 (1997)

    Article  Google Scholar 

  7. Langley, P., Choi, D.: A unified cognitive architecture for physical agents. In: Proceedings of the National Conference on Artificial Intelligence, vol. 21, no. 2, p. 1469. Menlo Park, CA; Cambridge, MA; London; AAAI Press; MIT Press, 1999 (2006)

    Google Scholar 

  8. Chong, H.Q., Tan, A.H., Ng, G.W.: Integrated cognitive architectures: a survey. Artif. Intell. Rev. 28(2), 103–130 (2007) [Online]. http://dx.doi.org/10.1007/s10462-009-9094-9

  9. Jacobson, I., Booch, G., Rumbaugh, J.E.: The Unified Software Development Process-The Complete Guide to the Unified Process from the Original Designers. Addison-Wesley (1999)

    Google Scholar 

  10. Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: the Systems Modeling Language. Elsevier (2011)

    Google Scholar 

  11. Faugere, M., Bourbeau, T., De Simone, R. and Gerard, S.: Marte: Also an uml profile for modeling aadl applications. In: 12th IEEE International Conference on Engineering Complex Computer Systems, pp. 359–364. IEEE, 2007

    Google Scholar 

  12. Alami, R., Chatila, R., Fleury, S., Ghallab, M., Ingrand, F.: An architecture for autonomy. Int. J. Robot. Res. 17(4), 315–337 (1998)

    Article  Google Scholar 

  13. Oltramari, A., Lebiere, C.: Extending cognitive architectures with semantic resources. In: Artificial General Intelligence, pp. 222–231

    Google Scholar 

  14. Ramaswamy, A., Monsuez, B., Tapus, A.: Saferobots: a model-driven approach for designing robotic software architectures. In: International Conference on Collaboration Technologies and Systems (CTS). IEEE (2014, forthcoming)

    Google Scholar 

  15. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Pearson Education (2002)

    Google Scholar 

  16. Brugali, D., Scandurra, P.: Component-based robotic engineering (part i) [tutorial]. Robot. Autom. Mag. IEEE 16(4), 84–96 (2009)

    Article  Google Scholar 

  17. France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: 2007 Future of Software Engineering. IEEE Computer Society, pp. 37–54 (2007)

    Google Scholar 

  18. Torngren, M., Chen, D., Crnkovic, I.: Component-based vs. model-based development: a comparison in the context of vehicular embedded systems. In: 31st EUROMICRO Conference on Software Engineering and Advanced Applications, 2005, pp. 432–440. IEEE (2005)

    Google Scholar 

  19. MARTE.: UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems, version 1.1 ed., Object Management Group, June 2011

    Google Scholar 

  20. Chung, L., do Prado Leite, J.C.S.: On non-functional requirements in software engineering. In: Conceptual Modeling: Foundations and Applications, pp. 363–379. Springer (2009)

    Google Scholar 

  21. Tapus, A., Mataric, M.J., Scassellati, B.: Socially assistive robotics. IEEE Robot. Autom. Mag. 14(1), 35 (2007)

    Article  Google Scholar 

  22. Ingl´es-Romero, J.F., Lotz, A., Chicote, C.V., Schlegel, C.: Dealing with RunTime variability in service robotics: towards a DSL for non-functional properties. arXiv:1303.4296 (2013)

  23. Steinfeld, A., Fong, T., Kaber, D., Lewis, M., Scholtz, J., Schultz, A., Goodrich, M.: Common metrics for human-robot interaction. In: Proceedings of the 1st ACM SIGCHI/SIGART Conference on Human-Robot Interaction, pp. 33–40. ACM (2006)

    Google Scholar 

  24. Ramaswamy, A., Monsuez, B., Tapus, A.: Modeling non-functional properties for human-machine systems. In: 2014 AAAI Spring Symposium Series, Formal Verification and Modeling in Human-Machine Systems, Palo Alto, USA, March 2014

    Google Scholar 

  25. Amyot, D., Ghanavati, S., Horkoff, J., Mussbacher, G., Peyton, L., Yu, E.: Evaluating goal models within the goal-oriented requirement language. Int. J. Intell. Syst. 25(8), 841–877 (2010)

    Article  Google Scholar 

  26. Ramaswamy, A., Monsuez, B., Tapus, A.: Formal models for cognitive systems. In: 16th International Conference on Advanced Robotics (ICAR), November 2013, Montevideo, Uruguay, pp. 1–8. IEEE (2013)

    Google Scholar 

  27. Ramaswamy, A., Monsuez, B., Tapus, A.: Architecture modeling and analysis language for designing robotic architectures. In: International Conference on Control, Automation, Robotics and Vision (ICARCV), Singapore, December 2014

    Google Scholar 

  28. Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y.: Ros: an open-source robot operating system. ICRA Workshop on Open Source Software 3(3.2), 5 (2009)

    Google Scholar 

  29. Koenig, N., Howard, A.: Design and use paradigms for gazebo, an open-source multi-robot simulator. In: Proceedings. 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2004 (IROS 2004), vol. 3, pp. 2149–2154. IEEE (2004)

    Google Scholar 

  30. Van Lamsweerde et al., A.: Requirements Engineering: From System Goals to UML Models to Software Specifications (2009)

    Google Scholar 

  31. Giese, H., Bencomo, N., Pasquale, L., Ramirez, A.J., Inverardi, P., Wätzoldt, S., Clarke, S.: Living with uncertainty in the age of runtime models. In Models@ run. time, pp. 47–100. Springer (2014)

    Google Scholar 

  32. Ramaswamy, A., Monsuez, B., Tapus, A.: Solution space modeling for robotic systems. J. Softw. Eng. Robot. (JOSER) (In Press, 2014)

    Google Scholar 

  33. Bencomo, N., France, R., Cheng, B.H.C., Amann, U.: Models@run.time, Foundations, Applications, and Roadmaps. Springer (2014)

    Google Scholar 

  34. Mohamed, N., Al-Jaroodi, J., Jawhar, I.: Middleware for robotics: a survey. In: 2008 IEEE Conference on Robotics, Automation and Mechatronics, pp. 736–742. IEEE (2008)

    Google Scholar 

  35. Biggs, G., MacDonald, B.: A survey of robot programming systems. In: Proceedings of the Australasian Conference on Robotics and Automation, pp. 1–3 (2003)

    Google Scholar 

  36. Elkady, A., Sobh, T.: Robotics middleware: a comprehensive literature survey and attribute-based bibliography. J. Robot. 2012 (2012)

    Google Scholar 

  37. Wisspeintner, T., Van Der Zant, T., Iocchi, L., Schiffer, S.: Robocup@ home: scientific competition and benchmarking for domestic service robots. Interact. Stud. 10(3), 392–426 (2009)

    Article  Google Scholar 

  38. Madhavan, R., Lakaemper, R., Kalmár-Nagy, T.: Benchmarking and standardization of intelligent robotic systems. In: ICAR 2009. International Conference on Advanced Robotics, pp. 1–7. IEEE (2009)

    Google Scholar 

  39. Shakhimardanov, A., Prassler, E.: Comparative evaluation of robotic software integration systems: a case study. In: IROS 2007. IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 3031–3037. IEEE (2007)

    Google Scholar 

  40. Gherardi, L., Brugali, D.: Modeling and reusing robotic software architectures: the HyperFlex toolchain. In: IEEE International Conference on Robotics and Automation (ICRA 2014), Hong Kong, China, May 31–June 5 2014. IEEE (2014)

    Google Scholar 

  41. Schlegel, C., Worz, R.: The software framework smartsoft for implementing sensorimotor systems. In: Proceedings of 1999 IEEE/RSJ International Conference on Intelligent Robots and Systems, 1999. IROS’99, vol. 3, pp. 1610–1616. IEEE (1999)

    Google Scholar 

  42. Bischoff, R., Guhl, T., Prassler, E., Nowak, W., Kraetzschmar, G., Bruyninckx, H., Soetens, P., Haegele, M., Pott, A., Breedveld, P., Broenink, J.: Brics-best practice in robotics. In: 2010 41st International Symposium on and 2010 6th German Conference on Robotics (ROBOTIK) on Robotics (ISR). VDE, pp. 1–8 (2010)

    Google Scholar 

  43. Vanthienen, D., Klotzbuecher, M., Bruyninckx, H.: The 5c-based architectural composition pattern: lessons learned from re-developing the ITASC framework for constraint-based robot programming. JOSER J. Softw. Eng. Robot. 5(1), 17–35 (2014)

    Google Scholar 

  44. Dhouib, S., Kchir, S., Stinckwich, S., Ziadi, T., Ziane, M.: Robotml, a domain- specific language to design, simulate and deploy robotic applications. In: Simulation, Modeling, and Programming for Autonomous Robot, pp. 149–160. Springer (2012)

    Google Scholar 

  45. Alonso, D., Vicente-Chicote, C., Ortiz, F., Pastor, J., Alvarez, B.: V3cmm: A 3-view component meta-model for model-driven robotic software development. J. Softw. Eng. Robot. 1(1), 3–17 (2010)

    Google Scholar 

  46. Lu¨tkebohle, I., Philippsen, R., Pradeep, V., Marder-Eppstein, E., Wachsmuth, S.: Generic middleware support for coordinating robot software components: the task-state-pattern. J. Softw. Eng. Robot. 2(1), 20–39 (2011)

    Google Scholar 

  47. Klotzbu¨cher, M., Bruyninckx, H.: Coordinating robotic tasks and systems with rfsm statecharts. JOSER: J. Softw. Eng. Robot. 3(1), 28–56 (2012)

    Google Scholar 

  48. Eker, J., Janneck, J.W., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity-the ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)

    Article  Google Scholar 

  49. Bhave, A., Krogh, B., Garlan, D., Schmerl, B.: Multi-domain modeling of cyber- physical systems using architectural views. AVICPS 2010, 43 (2010)

    Google Scholar 

  50. Jones, R.M., Crossman, J.A., Lebiere, C., Best, B.J.: An abstract language for cognitive modeling. Ann. Arbor 1001, 48105 (2006)

    Google Scholar 

  51. Heinath, M., Dzaack, J., Wiesner, A., Urbas, L.: Simplifying the development and the analysis of cognitive models. Proc. EuroCogSci07 (2007)

    Google Scholar 

  52. Garlan, D., Monroe, R., Wile, D.: ACME: an architecture description interchange language. In: CASCON First Decade High Impact Papers. IBM Corp., pp. 159–173 (1997)

    Google Scholar 

  53. Clements, P.C.: A survey of architecture description languages. In: Proceedings of the 8th International Workshop on Software Specification and Design. IEEE Computer Society, p. 16 (1996)

    Google Scholar 

  54. Ramaswamy, A., Monsuez, B., Tapus, A.: Model-driven software development approaches in robotics research. In: Proceedings of the International Conference on Software Engineering (ICSE), Hyderabad, India. ACM (2014)

    Google Scholar 

Download references

Acknowledgements

This research is funded by VeDeCoM Institute, a French automotive cluster on mobility research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Arunkumar Ramaswamy .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Ramaswamy, A., Monsuez, B., Tapus, A. (2020). Formal Specification of Robotic Architectures for Experimental Robotics. In: Bonsignorio, F., Messina, E., del Pobil, A., Hallam, J. (eds) Metrics of Sensory Motor Coordination and Integration in Robots and Animals. Cognitive Systems Monographs, vol 36. Springer, Cham. https://doi.org/10.1007/978-3-030-14126-4_2

Download citation

Publish with us

Policies and ethics