From Requirements to Autonomous Flight: An Overview of the Monitoring ICAROUS Project
This project addresses the problem of ensuring reliable autonomous flight operations for unmanned aircraft by formally verifying system behavior against requirements at runtime.
This paper introduces Monitoring ICAROUS, a project that provides a formal approach to generating runtime monitors for autonomous systems. It translates requirements written in structured natural language into temporal logic formulae, which are then used to generate executable runtime monitors for integration into the ICAROUS software architecture during flight.
The Independent Configurable Architecture for Reliable Operations of Unmanned Systems (ICAROUS) is a software architecture incorporating a set of algorithms to enable autonomous operations of unmanned aircraft applications. This paper provides an overview of Monitoring ICAROUS, a project whose objective is to provide a formal approach to generating runtime monitors for autonomous systems from requirements written in a structured natural language. This approach integrates FRET, a formal requirement elicitation and authoring tool, and Copilot, a runtime verification framework. FRET is used to specify formal requirements in structured natural language. These requirements are translated into temporal logic formulae. Copilot is then used to generate executable runtime monitors from these temporal logic specifications. The generated monitors are directly integrated into ICAROUS to perform runtime verification during flight.