Skip to main content
Log in

QoS metrics-in-the-loop for endowing runtime self-adaptation to robotic software architectures

  • 1188: Artificial Intelligence for Physical Agents
  • Published:
Multimedia Tools and Applications Aims and scope Submit manuscript

Abstract

The design of robots capable of operating autonomously in changing and unstructured environments, requires using complex software architectures in which, typically, robot engineers manually hard-code adaptation mechanisms allowing the robot to deal with certain situations. As adaptation is closely related with context monitoring, deliberation and actuation, its implementation typically spreads across several architecture components. Therefore, fine-tuning or extending the adaptation logic (e.g., to cope with new contingencies not foreseen at design-time) results in a very expensive and cumbersome process. This paper proposes a novel approach to deal with self-adaptation based on modeling behavior variability at design-time so that the robot can configure it at runtime, according to the contextual information only then available. This approach is supported by a model-based framework allowing robotic engineers to specify (1) the robot behavior variation points (open decision space); (2) the internal and external contextual information available; and (3) the non-functional properties (e.g. safety, performance, or energy consumption) in terms of which the robot Quality-of-Service (QoS) will be measured. Then, from these models, the framework will automatically generate the runtime infrastructure allowing the robot to self-adapt its behavior to achieve the best QoS possible according to its current context. The framework has been validated in two scenarios using two different well-known robotic software architectures.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. https://github.com/BehaviorTree/BehaviorTree.CPP

  2. In this paper, a task describes how a robot does something in an abstract and independent manner, and a skill provides access to functionalities realized by components for the usage within tasks.

  3. See https://www.behaviortree.dev/tutorial_02_basic_ports/ for details about the blackboard

  4. https://robmosys.eu/wiki/baseline:environment_tools:smartsoft:start

  5. http://www.mira-project.org/joomla-mira/

  6. http://www.esmera-project.eu/sa3ir/

  7. http://www.esmera-project.eu/welcome/

  8. https://robmosys.eu/wiki/baseline:environment_tools:roqme-plugins

  9. https://wiki.servicerobotik-ulm.de/about-smartsoft:robotic-behavior:smarttcl

  10. https://robocomp.github.io/web/

  11. https://github.com/AprilRobotics/apriltag

References

  1. Bischoff R, Guhl T, Prassler E, Nowak W, Kraetzschmar G, Bruyninckx H, Soetens P, Hägele M, Pott A, Breedveld P, Broenink JF, Brugali D, Tomatis N (2010) BRICS - Best practice in robotics In: ISR/ROBOTIK 2010

  2. Brugali D, Gherardi L (2016) HyperFlex: a model driven toolchain for designing and configuring software control systems for autonomous robots. In: Koubaa A. (eds) Robot Operating System (ROS). Studies in computational intelligence, vol 625. Springer, Cham. https://doi.org/10.1007/978-3-319-26054-9_20

  3. BustosP MansoL, Bandera A, Bandera JP, García-Varea I, Martínez-Gómez J (2019) The CORTEX cognitive robotics architecture: Use cases. Cogn Sys Res 55:107–123

    Article  Google Scholar 

  4. Clements P, Northrop L (2002) Software product lines. Addison-Wesley Boston

  5. Colledanchise M, Ögren P (2017) Behavior Trees in robotics and AI: An introduction, arXiv:1709.00084

  6. Cyberbotics Ltd. Webots: open source robot simulator, https://www.cyberbotics.com/

  7. Ding W, Shen S (2019) Online vehicle trajectory prediction using policy anticipation network and optimization-based context reasoning. In: 2019 International Conference on Robotics and Automation (ICRA). IEEE, p 9610–9616

  8. Dromey RG (2003) From requirements to design: formalizing the key steps. SEFM. https://doi.org/10.1109/SEFM.2003.1236202

  9. Faconti D., Groot, an integrated development environment for the design and execution of behaviour trees, https://github.com/BehaviorTree/Groot

  10. Flexible Navigation Stack [RobMoSys Wiki], https://robmosys.eu/wiki/domain_models:navigation-stack:start

  11. Hendrich N, Bistry H, Zhang J (2015) Architecture and software design for a service robot in an elderly-care scenario. Engineering 1(1):27–35

    Article  Google Scholar 

  12. Hernández C, Bermejo-Alonso J, Sanz R (2018) A self-adaptation framework based on functional knowledge for augmented autonomy in robots. Integr Comput Aided Eng 25:157–172

    Article  Google Scholar 

  13. Hernández-Corbato C, Bozhinoski D, Garzon Oviedo M, van der Hoorn G, Hammoudeh Garcia N, Deshpande H, Tjerngren J, Wasowski A (2020) MROS: Runtime Adaptation For Robot Control Architectures, arXiv

  14. Hernández-Corbato C, Fernández JL (2017) Model-based systems engineering to design collaborative robotics applications. IEEE international systems engineering symposium (ISSE):1-6

  15. Jumel F et al (2018) Context aware robot architecture, application to the RoboCup@ Home challenge. Robot World Cup. Springer, Cham, pp 205–216

    Google Scholar 

  16. Lotz A, Inglés-Romero JF, Vicente-Chicote C, Schlegel C (2013) Managing Run-Time Variability in Robotics Software by Modeling Functional and Non-functional Behavior. BMMDS/EMMSAD 2013:441–455

    Google Scholar 

  17. Lotz A, Inglés-Romero JF, Stampfer D, Lutz M, Vicente-Chicote C, Schlegel C (2014) Towards a Stepwise Variability Management Process for Complex Systems: A Robotics Perspective. Int J Inf Syst Model Des 5(3):55–74

    Article  Google Scholar 

  18. Lutz M, Inglés-Romero JF, Stampfer D, Lotz A, Vicente-Chicote C, Schlegel C (2019) Managing variability as a means to promote composability: a robotics perspective. In: Rosado da Cruz AM, Ferreira da Cruz ME (eds). New Perspectives on Information Systems Modeling and Design: 274–295

  19. Marfil R, Romero-Garces A, Bandera JP, Manso L, Calderita L, Bustos P, Bandera A, Garcia-Polo J, Fernandez F, Voilmy D (2020) Perceptions or actions? Grounding how agents interact within a software architecture for cognitive robotics. Cognitive computation

  20. Martinet P, Patin B (2008) PROTEUS: A platform to organise transfer inside French robotic community. 3rd National Conf on Control Architectures of Robots (CAR2008)

  21. Mou WH, Chang MF, Liao, CK, Hsu YH, Tseng SH, Fu LC (2012) Context-aware assisted interactive robotic walker for Parkinson’s disease patients. In: 2012 IEEE/RSJ International conference on intelligent robots and systems. IEEE. p 329–334

  22. Ögren P, Colledanchise M (2018) Behavior Trees in robotics and AI: An Introduction. CRC Press

  23. Pereira RP, Engel, PM (2015) A framework for constrained and adaptive behavior-based agents. arXiv preprint arXiv:1506.02312

  24. Romero-Garcés A, Martínez-Cruz J, Inglés-Romero J, Vicente-Chicote C, Marfil R, Bandera A (2020) Measuring quality of service in a robotized comprehensive geriatric assessment scenario. Appl Sci 10(18):6618. https://doi.org/10.3390/app10186618

    Article  Google Scholar 

  25. Salles R, Romero-Garcés A, Marfil R, Vicente-Chicote C, Martínez-Cruz J, Inglés-Romero J, Bandera A (2021) QoS metrics-in-the-loop for better robot navigation. Adv Intell Sys Comput 1285:94–108

    Google Scholar 

  26. Schmidt DC (2006) Guest Editor’s introduction: model-driven engineering. IEEE Computer 39(2):25–31

    Article  Google Scholar 

  27. Subagyo WP, Nugroho SMS, Sumpeno S (2016) Simulation multi behavior NPCs in fire evacuation using emotional behavior tree. In: 2016 International Seminar on Application for Technology of Information and Communication (ISemantic). IEEE, p. 184-190

  28. Vicente-Chicote C, García-Pérez D, García-Ojeda P, Inglés-Romero J.F, Romero-Garcés A, Martínez J (2019) Modeling and estimation of non-functional properties: Leveraging the Power of QoS Metrics. In: Ferrández Vicente J, Álvarez-Sánchez J., de la Paz López F., Toledo Moreo J., Adeli H. (eds) IWINAC 2019. LNCS, vol 11487, pp. 380–388. Springer, Cham. https://doi.org/10.1007/978-3-030-19651-6_37

  29. Vicente-Chicote C, Inglés-Romero JF, Martínez J, Stampfer D, Lotz A, Lutz M, Schlegel C (2018) A component-based and model-driven approach to deal with non-functional properties through global QoS metrics. MODELS workshops

Download references

Acknowledgements

This work has been partially funded by MIRoN (an Integrated Technical Project funded by EU H2020 RobMoSys Project under Grant Agreement 732410), SA3IR (an experiment funded by EU H2020 ESMERA Project under Grant Agreement 780265), and the project RTI2018-099522-B-C4X, funded by the Gobierno de España and FEDER funds.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to A. Bandera.

Additional information

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Romero-Garcés, A., Salles De Freitas, R., Marfil, R. et al. QoS metrics-in-the-loop for endowing runtime self-adaptation to robotic software architectures. Multimed Tools Appl 81, 3603–3628 (2022). https://doi.org/10.1007/s11042-021-11603-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11042-021-11603-7

Keywords

Navigation