1st NSF Sponsored Workshop on Software Engineering for Robotics

Robots are experiencing a revolution as they permeate many aspects of our daily lives, from performing house maintenance to infrastructure inspection, from efficiently warehousing goods to autonomous vehicles, and more. This technical progress and its impact are astounding. This revolution, however, is out-stripping the capabilities of existing software development processes, techniques, and tools, which largely have remained unchanged for decades. These capabilities are ill-suited to handling the challenges unique to robotics software such as dealing with a wide diversity of domains, heterogeneous hardware, programmed and learned components, complex physical environments captured and modeled with uncertainty, emergent behaviors that include human interactions, and scalability demands that span across multiple dimensions.

Looking ahead to the need to develop software for robots that are ever more ubiquitous, autonomous, and reliant on complex adaptive components, hardware, and data, motivated an NSF-sponsored community workshop on the subject of Software Engineering for Robotics, held in Detroit, Michigan in October 2023. The goal of the workshop was to bring together thought leaders across robotics and software engineering to coalesce a community, and identify key problems in the area of SE for robotics that that community should aim to solve over the next 5 years. This report serves to summarize the motivation, activities, and findings of that workshop, in particular by articulating the challenges unique to robot software, and identifying a vision for fruitful near-term research directions to tackle them:

  • Massive Simulation Eco-systems to collaboratively and systematically challenge robots from multiple simulators across complex simulated environments.
  • Curricula to Prepare Future SE-Robotics developers in the foundational skills at the intersection of robotics and software engineering.
  • Multi-view and full stack architectural design languages for robotics that span multiple layers and views to overcome the gaps between areas of expertise that characterize development teams, and provide automated support to reduce integration faults and development costs.
  • Processes, Models, Estimators and Analyses for Humans and Robot Interactions to guide both developers of robotics systems, and those systems themselves, in service of safe, complex deployments.
  • Evidence-based processes and assurances for robotics development to systematize knowledge and provide a solid basis for assurance across industry and practice.
  • Modern abstractions for resources into middlewares and libraries that can handle the increased complexity of designing, configuring, and deploying state-of-the-art robotics systems.
  • Multidimensional Quality Assurance that caters to the needs of the robotics domain, handling component heterogeneity and interaction, accounting for the complexity of the configuration spaces and adversarial threats, and the richness and uncertainties of the environments

The full draft of the report emerging from the workshop can be found here: SE4R Report Jan 2024

Sebastian Elbaum
Professor of Computer Science.