Skip to main content

A Formal Approach for Incremental Construction with an Application to Autonomous Robotic Systems

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6708))

Abstract

In this paper, we propose a new workflow for the design of composite systems. Contrary to existing approaches, which build on traditional techniques for single-component systems, our methodology is incremental in terms of both the design and the verification process. The approach exploits the hierarchy between components and can detect errors at an early stage of the design. As a second contribution of the paper, we apply our methodology to automatically generate C code to coordinate the various modules of an autonomous robot. To the best of our knowledge, this is the first time that such a coordination code is generated automatically.

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   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Altisen, K., Clodic, A., Maraninchi, F., Rutten, É.: Using controller-synthesis techniques to build property-enforcing layers. In: Degano, P. (ed.) ESOP 2003. LNCS, vol. 2618, pp. 174–188. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  2. Amnell, T., Fersman, E., Pettersson, P., Yi, W., Sun, H.: Code synthesis for timed automata. Nordic J. of Computing 9, 269–300 (2002)

    MathSciNet  MATH  Google Scholar 

  3. Ball, T., Cook, B., Levin, V., Rajamani, S.K.: SLAM and static driver verifier: Technology transfer of formal methods inside microsoft. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 1–20. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: ICSEFM, pp. 3–12 (2006)

    Google Scholar 

  5. Bensalem, S., Bozga, M., Legay, A., Nguyen, T.-H., Sifakis, J., Yan, R.: Incremental component-based construction and verification using invariants. In: FMCAD, pp. 257–265 (2010)

    Google Scholar 

  6. Bensalem, S., Bozga, M., Nguyen, T.-H., Sifakis, J.: D-finder: A tool for compositional deadlock detection and verification. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 614–619. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  7. Bensalem, S., Bozga, M., Sifakis, J., Nguyen, T.-H.: Compositional verification for component-based systems and application. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 64–79. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  8. Bensalem, S., de Silva, L., Gallien, M., Ingrand, F., Yan, R.: “Rock solid” software: A verifiable and correct by construction controller for rover and spacecraft functional layers. In: ISAIRAS, pp. 859–866 (2010)

    Google Scholar 

  9. Bensalem, S., Gallien, M.: Toward a more dependable software architecture for autonomous robots. Special issue on Software Engineering for Robotics of the IEEE RAM 16(1), 1–11 (2009)

    Google Scholar 

  10. Bensalem, S., Griesmayer, A., Legay, A., Nguyen, T.-H., Sifakis, J., Yan, R.: D-Finder 2: Towards Efficient Correctness of Incremental Design. In: Bobaru, M., Havelund, K., Holzmann, G.J., Joshi, R. (eds.) NFM 2011. LNCS, vol. 6617, pp. 453–458. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  11. Bensalem, S., Legay, A., Nguyen, T.-H., Sifakis, J., Yan, R.: Incremental invariant generation for compositional design. In: TASE, pp. 157–167 (2010)

    Google Scholar 

  12. Beyer, D., Henzinger, T.A., Jhala, R., Majumdar, R.: The software model checker BLAST: Applications to software engineering. STTT 9(5-6), 505–525 (2007)

    Article  Google Scholar 

  13. BIP Framework, http://www-verimag.imag.fr/Rigorous-Design-of-Component-Based.html

  14. Bonakdarpour, B., Bozga, M., Jaber, M., Quilbeuf, J., Sifakis, J.: From high-level component-based models to distributed implementations. In: EMSOFT, pp. 209–218 (2010)

    Google Scholar 

  15. Boussinot, F., de Simone, R.: The ESTEREL Language. Proceeding of the IEEE, 1293–1304 (1991)

    Google Scholar 

  16. Bozga, M., Jaber, M., Sifakis, J.: Source-to-source architecture transformation for performance optimization in bip. In: SIES, pp. 152–160 (2009)

    Google Scholar 

  17. Bruyninckx, H.: Open robot control software: the orocos project. In: ICRA, Seoul, Korea, pp. 2523–2528 (2001)

    Google Scholar 

  18. Espiau, B., Kapellos, K., Jourdan, M.: Formal verification in robotics: Why and how. In: IFRR, The Seventh International Symposium of Robotics Research, Munich, pp. 201–213. Cambridge Press (1995)

    Google Scholar 

  19. Fleury, S., Herrb, M., Chatila, R.: Gen o M: A tool for the specification and the implementation of operating modules in a distributed robot architecture. In: IROS, pp. 842–848 (1997)

    Google Scholar 

  20. Gen o M, http://www.openrobots.org/wiki/genom

  21. Goldman, R.P., Musliner, D.J., Pelican, M.J.: Using model checking to plan hard real-time controllers. In: Proc. of AIPS Workshop on Model-Theoretic Approaches to Planning (2000)

    Google Scholar 

  22. Henzinger, T.A., Jhala, R., Majumdar, R., Sutre, G.: Lazy abstraction. In: POPL, pp. 58–70. ACM, New York (2002)

    Google Scholar 

  23. Ingrand, F., Lacroix, S., Lemai, S., Py, F.: Decisional autonomy of planetary rovers. Journal of Field Robotics 24(7), 559–580 (2007)

    Article  Google Scholar 

  24. Jackson, J.: Microsoft robotics studio: A technical introduction. IEEE RAM 14(4), 82–87 (2007)

    Google Scholar 

  25. Montemerlo, M., Roy, N., Thrun, S.: Perspectives on standardization in mobile robot programming: The carnegie mellon navigation (carmen) toolkit. In: Proc. IEEE/RSJ Int. Conf. Intelligent Robots and Systems, Las Vegas, NV, pp. 2436–2441 (2003)

    Google Scholar 

  26. Nesnas, I.A., Wright, A., Bajracharya, M., Simmons, R., Estlin, T.: Claraty and challenges of developing interoperable robotic software. In: IROS, Las Vegas, NV (October 2003) invited paper

    Google Scholar 

  27. Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.: Ros: an open-source robot operating system. In: International Conference on Robotics and Automation, Kobe, Japan (2009)

    Google Scholar 

  28. Thiele, L., Bacivarov, I., Haid, W., Huang, K.: Mapping applications to tiled multiprocessor embedded systems. In: ACSD, pp. 29–40. IEEE, Los Alamitos (2007)

    Google Scholar 

  29. Vaughan, R., Gerkey, B.: Reusable robot software and the player/stage project. In: Software Engineering for Experimental Robotics, pp. 267–289 (2007)

    Google Scholar 

  30. Williams, B.C., Ingham, M.D., Chung, S., Elliott, P., Hofbaur, M., Sullivan, G.T.: Model-Based Programming of Fault-Aware Systems. In: AI, pp. 61–75 winter (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bensalem, S., de Silva, L., Griesmayer, A., Ingrand, F., Legay, A., Yan, R. (2011). A Formal Approach for Incremental Construction with an Application to Autonomous Robotic Systems. In: Apel, S., Jackson, E. (eds) Software Composition. SC 2011. Lecture Notes in Computer Science, vol 6708. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22045-6_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22045-6_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22044-9

  • Online ISBN: 978-3-642-22045-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics