Verification and Validation of Autonomous Systems: Verifiable Requirements for Complex Systems
Abstract:
As the foundations of the 6th generation aircraft are being established, they are being designed to provide more capabilities under architectural constraints that may lead to system limitations. As the complexity grows, the traditional systems engineering methods of verification and validation (V&V) have shown deficiencies that result in cost overruns for aircraft development. In order to mitigate these V&V challenges, the Air Force Research Laboratory Verification and Validation of Complex and Autonomous Systems (VVCAS) Team has leveraged its domain expertise and input from industry, academia, and other government agencies to generate a process to more effectively design, develop, and certify complex systems. It has been observed that exhaustive test of complex and autonomous software systems is intractable and cost prohibitive; however, incorporating formal methods analysis throughout the system design process could provide a means to identify faults as they are introduced and drastically reduce the overall system development cost. In this research, formal methods, such as model checking and limited theorem proving, are applied to the requirements, architecture, and model development phases of the design process of a coupled tanks control system.
Bio:
Jon Hoffman is the Portfolio Lead for the Verification and Validation of Complex and Autonomous Systems (VVCAS) group in the Aerospace Systems Directorate at AFRL. His area of research is in formal analysis of safety critical systems as well as architectures for run-time assurance. He started as a coop student with the team in 2005 and has a BS in Computer Engineering from the University of Cincinnati. His current research interests include early analysis of system requirements, architectures, and models as well as run-time assurance of highly complex and autonomous systems. Early analysis leads to more correct, complete, and clear requirements and prevents errors from leaking to further systems engineering process steps where errors become more costly and time consuming to correct. Run-time Assurance acts as a software fault tolerance system by monitoring for bad or unwanted behavior in highly complex, adaptive, or autonomous systems and provides a simple and safe backup system to revert to when a problem has been found.