Project Concept
ASTIR investigates practical methods and tools for the software engineering of intelligent robotic systems. The software engineering of robotic systems faces ongoing issues such as complex operational states, environmental unpredictabilities, and critical safety needs. These are amplified by the diversity of robots, use cases, AI technologies, and development settings, calling for a significant evolution in robotics software engineering. The rise of intelligent robots, with their ability to learn, adapt, and make independent decisions, highlights the need for improved software engineering tools and methods.
The vision of ASTIR is to address these challenges by developing an AI-augmented engineering workbench for intelligent robotics software, supporting all lifecycle phases from requirements engineering to system maintenance. This workbench, leveraging trustworthy generative AI, aims to integrate with current engineering practices, enhancing collaboration and productivity.
ASTIR will validate the AI-augmented engineering workbench in three use cases targeting diverse robotics markets, namely service robotics, manufacturing robotics, and drones.
Project Objectives, Motivations and Challenges
Enhance trustworthiness of GenAI to support responsible software engineering practices.
Motivation: Enhancing the trustworthiness of GenAI is crucial for its integration in software engineering tools used to develop intelligent robotics systems. When leveraging GenAI to craft the intricate software that powers these advanced robots, it is imperative that we establish a foundation of trust in the outputs these tools produce. High-criticality intelligent robots, designed for complex and often safety-sensitive tasks, require software that meets stringent standards of performance and dependability. Trustworthy AI principles are key in ensuring that the GenAI-augmented software engineering tools can be trusted to produce readable, bias-free, and verifiable code. By committing to the development of trustworthy GenAI, we lay a solid foundation for responsible software engineering practices, enabling the creation of robotic systems that are not only intelligent but also reliable and safe for critical applications. This approach not only bolsters confidence in the use of GenAI among developers but also fosters innovation in the creation of sophisticated intelligent robotic systems.
Challenge: Achieving trustworthy GenAI for software engineering presents several challenges, such as ensuring accuracy, eliminating biases, and guaranteeing confidence in the AI-generated outputs. As these AI systems are tasked with generating complex software engineering artefacts for intelligent robotics, any inaccuracies or biases could lead to significant operational failures, compromising safety and efficiency. Additionally, the dynamic nature of software engineering demands that tools supported by GenAI adapt to evolving coding practices and technologies without losing their effectiveness. Ensuring the transparency and interpretability of AI-generated decisions is also crucial, as developers need to understand how the AI arrived at certain outputs to trust and effectively integrate them into their work.
Reduce time and effort for the development and maintenance of software for intelligent robotics.
Motivation: The development and maintenance of software for intelligent robotics are complex and resource-intensive tasks that demand significant time and effort from skilled engineers. By harnessing GenAI, we stand on the brink of a transformative shift that can drastically reduce the time and effort required for these processes. GenAI has the potential to automate vast portions of the different development phases, enabling rapid prototyping and iterative development that would otherwise take much longer. This not only accelerates the pace of innovation in robotics but also allows engineers to focus on more creative and complex problem-solving aspects, pushing the boundaries of what these intelligent systems can achieve. Furthermore, generative AI can significantly streamline the maintenance of robotic software, automatically updating and refining software engineering artefact to adapt to new requirements or operational environments.
Challenge: Reducing development and maintenance time for intelligent robotics software with generative AI presents key challenges in trusting AI outputs and achieving a synergistic developer-AI relationship. Ensuring AI-generated software artefacts correctness is critical, necessitating transparent AI processes and rigorous validation. Additionally, a seamless collaboration between developers and AI requires a focus on current practices and workflows, and integrating AI agents that complement and augment human capabilities. Addressing these challenges is vital for harnessing generative AI’s potential in creating reliable and innovative robotics software.
Improve the quality of software for intelligent robotic systems.
Motivation: The adoption of trustworthy GenAI within software engineering holds the promise of profoundly enhancing the quality of the software of intelligent robotic systems. This innovative technology can streamline the development lifecycle by automating critical tasks such as code generation, testing, and maintenance, thereby ensuring higher efficiency and reducing the margin for error. The capacity of GenAI to learn from extensive datasets and past experiences allows for the early identification and mitigation of potential issues early in the design phase. Furthermore, by facilitating rapid prototyping and iterative design, GenAI accelerates the refinement process, leading to robotic systems that are not only more sophisticated but also more reliable and efficient. Furthermore, it facilitates a range of testing methodologies, including functional and security testing, to bolster the robustness and security of the final product.
Challenge: Guaranteeing the correctness of AI-generated artefacts is difficult due to the propensity of existing GenAI technologies to produce hallucinated outputs. Additionally, maintaining interpretability and explainability of AI-generated outputs is crucial for building trust among developers, yet this can be difficult to achieve with sophisticated AI models such as LLMs and VLMs. There’s also the challenge of integrating generative AI seamlessly with existing development workflows and ensuring it complements rather than complicates the software engineering process. Moreover, keeping generative AI models up to date with the latest advancements in robotics and software engineering requires continuous learning and adaptation.
Boost developer adoption of GenAI-enhanced tools for intelligent robotics software engineering.
Motivation: Boosting developer adoption of GenAI-enhanced tools in the field of intelligent robotics software engineering is driven by the promise of dramatically improving efficiency, innovation, and quality in the development process. These advanced tools offer the potential to automate complex coding tasks, generate innovative solutions to challenging problems, and significantly reduce the time and effort required to bring sophisticated robotic systems to market. Encouraging developers to embrace these technologies is crucial for advancing the capabilities of intelligent robotics, ensuring that these systems can meet the growing demands of modern applications with enhanced dependability and creativity.
Challenge: Boosting developer adoption of GenAI-enhanced tools for intelligent robotics software engineering is fraught with challenges, including resistance to change, which is a common obstacle in the integration of new technologies. Developers accustomed to traditional methods may be hesitant to trust or rely on AI for critical tasks. The difference in abstraction levels presents another challenge; while developers often engage with broad goals and complex workflows, GenAI tools may focus on optimizing micro-tasks, potentially misaligning with the developers’ strategic objectives. Additionally, introducing AI tools risks disrupting the developers’ flow—a state of deep focus and efficiency—thereby potentially reducing productivity instead of enhancing it. Other challenges include the learning curve associated with mastering these new tools and concerns about the interpretability of AI-generated solutions, which are crucial for trust.
Project Technology Pillars
Pillar I: Trustworthy GenAI for Software Engineering
Integration of Symbolic Knowledge and GenAI
ASTIR is dedicated to minimizing hallucinations in LLM outputs and bolstering their trustworthiness for intelligent robotics software engineering. The strategy involves employing Knowledge Graphs as a domain-specific, structured repository, providing LLMs with a semantic framework that anchors outputs to verifiable data. This facilitates LLMs in generating contextually accurate and substantiated text by mapping entities and their relationships, thus mirroring real-world information.
Testing LLMs for Trustworthiness
ASTIR is set to rigorously evaluate the capacity of LLMs to produce outputs that are not only coherent but also factually accurate and meaningful. A critical aspect of this evaluation is the specification and automated generation of metamorphic relations, which are transformations applied to inputs that should result in predictable changes—or invariances—in outputs. Metamorphic testing, a technique that has gained traction in software testing, will be adapted to test the robustness and reliability of LLMs by verifying that semantically equivalent prompts, even when varied by form, context, or modality, yield consistent and logically equivalent responses.
Pillar II – Generative AI-Augmented Software Engineering for Intelligent Robotics: From Concept to Code
AI-Augmented Requirements Engineering
ASTIR will advance the state of the art in LLM-supported requirements engineering by proposing a novel AI-powered tool that automates the generation of coherent and executable non-functional and functional requirements for intelligent robotic systems. This tool will capitalize on cutting-edge AI methodologies for the specification and analysis of requirements. It will harness natural language processing to parse and assimilate diverse data sources, such as technical documentation, user inputs, and historical records.
AI-Augmented System Design & Architecture
ASTIR entails the use of GenAI to generate design models that accurately reflect the specified system requirements and objectives. We will investigate the generation of models in the UML and SysML notations, process algebras, and Behavior Trees to represent both the structure and behaviour of the robotic system under development. A key aspect of the project involves fine-tuning a LLM through an iterative process where inputs, such as formalized requirements and system descriptions in natural language, lead to the production of models.
Code Generation via GenAI & Model-Driven Engineering
ASTIR will combine LLMS with Model-Driven Engineering (MDE) presenting a transformative approach to accelerating the development of intelligent robotic software. This fusion will leverage MDE as the structural framework, offering high-level abstractions of the robotic system through models, while LLMs will be tasked with generating the intricate implementation details from these models. Design models generated by other ASTIR AI agents will encapsulate the robot’s intended functionalities, behaviors, and interactions.
Pillar III – Generative AI-Augmented Software Engineering for Intelligent Robotics: Dependability Assurance
LLM-Informed Testing
ASTIR aims to develop an advanced tool-supported methodology for auto-generating increasingly complex test cases for intelligent robotics software. Leveraging our SafeFuzz approach with added semantic parsing for robotic applications, such as analyzing URDF files, this method will enable the extraction of specific data to create test cases with both temporal and contextual triggers.
LLM-Based Software Security
ASTIR will leverage LLMs to forge tools aimed at identifying, analyzing, and repairing software vulnerabilities. Our strategy will harness LLMs to discern secure from insecure code patterns and will enhance detection across an expanded array of potential vulnerabilities through synthetic data generation.
Adaptive Monitoring Using GenAI
ASTIR aims to use LLMs for generating runtime monitors from existing development materials (requirements, designs, code) and improving system understanding through iterative refinement. This approach not only aids in identifying and resolving issues but also in evolving the system’s design and operation, promising a more integrated and thorough QA process for AI-enhanced systems.
