Recently, together with other researchers across the world (US, Brasil, Netherlands), I am working on a very exciting research area called energy-efficient robotics software.Basically, here the whole point is that today robotic systems are more and more heavy on the software aspects (for example see the strong emphasis and prominence of the Robot Operating System).

Also, robotics software can consume substantial amounts of energy. Here I will reuse an example which I already presented in one of our papers, but it really gives a good idea about how much ENERGY a robotic system can consume. The automotive industry alone in the U.S. spends 2.4 billion USD on electric energy annually [source] and industrial robots in the automotive industry consume on average 8% of the total electrical energy of assembly lines [source].


Image source

In this context, even a slight energy improvement can lead to great benefits in terms of environmental impact, mission completion time (e.g., fewer pauses for recharging batteries), and safety (e.g., a flying drone crashing due to poorly-managed energy consumption).
Said that, the main goal of this research line is to find new techniques/methods for helping roboticists in developing their software in a more energy-efficient manner.

As a first step, we are trying to understand how to achieve energy-efficient (or more in general, better) robots by looking at the body of knowledge that has already been developed around the ROS ecosystem. We are mining the ROS ecosystem since:

  1. it can be considered the de-facto standard for developing and prototyping robotics software
  2. it has an extremely active community around it, with several discussions on Stack Overflow, ROS Answers, and ROS Discourse, and thousands of open-source packages available on the official ROS website

Below I will go through some publications we have been working on this year, where we mine the ROS ecosystem, primarily for energy-efficiency. When available, I will include the video or the slides of the publication.

  • Ivano Malavolta, Grace A. Lewis, Bradley Schmerl, Patricia Lago, David Garlan (2021). Mining guidelines for architecting robotics software. Journal of Systems and Software, 178, pp. 110969. [PDF]
  • Ivano Malavolta, Katerina Chinnappan, Stan Swanborn, Grace Lewis, Patricia Lago (2021). Mining the ROS ecosystem for Green Architectural Tactics in Robotics and an Empirical Evaluation. In Proceedings of the 18th International Conference on Mining Software Repositories, MSR, New York, NY. [PDF]

  • Michel Albonico, Ivano Malavolta, Gustavo Pinto, Emitzá Guzmán, Katerina Chinnappan, Patricia Lago (2021). Mining Energy-Related Practices in Robotics Software. In Proceedings of the 18th International Conference on Mining Software Repositories, MSR , New York, NY. [PDF]



    Stan Swanborn, Ivano Malavolta (2021). Robot Runner: A Tool for Automatically Executing Experiments on Robotics Software. In Proceedings of the ACM/IEEE 43rd International Conference on Software Engineering, pp. to appear. [PDF]

  • Ivano Malavolta, Grace Lewis, Bradley Schmerl, Patricia Lago, David Garlan (2020). How do you Architect your Robots? State of the Practice and Guidelines for ROS-based Systems. In Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering in Practice, pp. 31–40. [PDF]
  • Stan Swanborn, Ivano Malavolta (2020). Energy Efficiency in Robotics Software: A Systematic Literature Review. In 35th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW ’20), pp. 137–144. [PDF]