Prof. Davide Brugali graduated in Electronic Engineering at the Politecnico di Milano in 1994; he received the PhD in Computer Science from the Politecnico di Torino in 1998. From 2001 until 2011 he was Assistant Professor at the University of Bergamo. Since 2011 he has been Associate Professor at the Department of Engineering of the University of Bergamo.
He was visiting researcher at the CMU Robotics Institute for one year between 1997 and 1998 and visiting professor at NASA Jet Propulsion Laboratory in 2006. He served as Co-Chair of the IEEE RAS Technical Committee on "Software Engineering for Robotics and Automation" from 2000 to 2019, as Associate Editor of the IEEE Robotics and Automation Magazine from 2009 to 2011 and Editor-in-Chief of the Journal of Software Engineering for Robotics from 2009 to 2018. He is main author of the book "Software Development - Case Studies in Java" published by Addison-Wesley in 2005.
He is the coordinator of the Robotics Laboratory of the University of Bergamo. His research activity focuses mainly on software engineering methodologies and techniques for the development of robot control systems and applications.
Talk 1: Software Variability in Service Robots Architectures
Robots of the 21st century are versatile machines with the potential to enhance transportation safety, reduce agricultural pesticide use, and improve public safety and crime-fighting efficacy, among other things. Of course, cost is a significant barrier to advancing robotics and related product development, and it’s directly tied to the necessary complexity of software control systems. Such systems require enormous flexibility to easily accommodate volatile requirements or changing needs. To this end, the software control systems need to be customizable for different tasks, hardware, and operating environments. In the talk, I will report on a recent investigation on drivers, practices, methods, and challenges of software variability both from the state of the art in robotics research and from industrial companies building service robots. I will report observations emerged from this investigation, formulate hypotheses trying to explain these observations, and provide actionable recommendations for researchers, tool providers, and practitioners.
Talk 2 : Runtime reconfiguration of robot control systems
Autonomous robots operating in everyday environments, such as hospitals, private houses, and public roads, are context-aware self-adaptive systems. They exploit knowledge about the environment to trigger runtime adaptation so that they exhibit a behavior adequate to the current context: they adapt themselves to changes in their execution environment and internal dynamics, such as response to failure, variability in available resources, or changing tasks. Context-aware self-adaptation consists in being able to dynamically reconfigure the software architecture (i.e. activating/deactivating components, changing their connections, etc.) and adapting the system behavior (i.e. updating a sensor scanning rate, replacing the localization algorithm) in order to exploit at best the robot hardware and software resources in every operational conditions. In the talk, I will illustrate software design guidelines for the development of self-reconfigurable