1. Mithra: Anomaly Detection as an Oracle for Cyberphysical Systems
- Author
-
Afsoon Afzal, Christopher Steven Timperley, and Claire Le Goues
- Subjects
Source code ,Computer science ,business.industry ,media_common.quotation_subject ,Context (language use) ,Construct (python library) ,Machine learning ,computer.software_genre ,Oracle ,Set (abstract data type) ,Software ,Anomaly detection ,Artificial intelligence ,business ,Cluster analysis ,computer ,media_common - Abstract
Testing plays an essential role in ensuring the safety and quality of cyberphysical systems (CPSs). One of the main challenges in automated and software-in-the-loop simulation testing of CPSs is defining effective oracles that can check that a given system conforms to expectations of desired behavior. Manually specifying such oracles can be tedious, complex, and error-prone, and so techniques for automatically learning oracles are attractive. Characteristics of CPSs, such as limited or no access to source code, behavior that is non-deterministic and sensitive to noise, and that the system may respond differently to input based on its context introduce considerable challenges for automated oracle learning. We present Mithra, a novel, unsupervised oracle learning technique for CPSs that operates on existing telemetry data. It uses a three-step multivariate time series clustering to discover the set of unique, correct behaviors for a CPS, which it uses to construct robust oracles. We instantiate our proposed technique for ArduPilot, a popular, open-source autopilot software. On a set of 24 bugs, we show that Mithra effectively identifies buggy executions with few false positives and outperforms AR-SI, a state-of-the-art CPS oracle learning technique. We demonstrate Mithra's wider applicability by applying it to an autonomous racer built for the Robot Operating System.
- Published
- 2022
- Full Text
- View/download PDF