Autonomous robotic systems are complex, hybrid, and often safety-critical; this makes their formal specification and verification uniquely challenging. Though commonly used, testing and simulation alone are insufficient to ensure the correctness of, or provide sufficient evidence for the certification of, autonomous robotics. Formal methods for autonomous robotics has received some attention in the literature, but no resource provides a current overview. This paper systematically surveys the state-of-the-art in formal specification and verification for autonomous robotics. Specially, it identifies and categorises the challenges posed by, the formalisms aimed at, and the formal approaches for the specification and verification of autonomous robotics.
Introduction, Methodology and Related WorkAn autonomous system is an artificially intelligent entity that makes decisions in response to input, independent of human interaction. Robotic systems are physical entities that interact with the physical world. Thus, we consider an autonomous robotic system as a machine that uses Artificial Intelligence (AI), has a physical presence in and interacts with the real world. They are complex, inherently hybrid, systems, combining both hardware and software; they often require close safety, legal, and ethical consideration. Autonomous robotics are increasingly being used in commonplace-scenarios, such as driverless cars [68], pilotless aircraft [176], and domestic assistants [174,60].While for many engineered systems, testing, either through real deployment or via simulation, is deemed sufficient; the unique challenges of autonomous robotics, their dependence on sophisticated software control and decision-making, and their increasing deployment in safety-critical scenarios, require a stronger form of verification. This leads us towards using formal methods, which are mathematically-based techniques for the specification and verification of software systems, to ensure the correctness of, and provide sufficient evidence for the certification of, robotic systems.We contribute an overview and analysis of the state-of-the-art in formal specification and verification of autonomous robotics. §1.1 outlines the scope, research questions and search criteria for our survey. §1.2 describes related work concerning formal methods for robotics and differentiates them from our work. We recognise the important role that middleware architectures and, non-and semi-formal techniques have in the development of reliable robotics and we briefly summarise some of these techniques in §2. The specification and verification challenges raised by autonomous robotic systems are discussed next: §3 describes the challenges of their context (the external challenges) and §4 describes the challenges of their organisation (the internal challenges). §5 discusses the formalisms used in the literature for specification and verification of autonomous robotics. §6 characterises the approaches to formal specification and verification of autonomous robotics found in the li...