计算机科学
甲骨文公司
异常检测
集合(抽象数据类型)
背景(考古学)
可执行文件
假阳性悖论
源代码
数据挖掘
软件
聚类分析
机器学习
人工智能
软件工程
程序设计语言
古生物学
生物
作者
Afsoon Afzal,Claire Le Goues,Christopher S. Timperley
标识
DOI:10.1109/tse.2021.3120680
摘要
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.
科研通智能强力驱动
Strongly Powered by AbleSci AI