arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2201.12464cs.SE
收藏

使用动态二进制插装检测机器人软件中的故障

Using Dynamic Binary Instrumentation to Detect Failures in Robotics Software

Deborah S. Katz, Christopher S. Timperley, Claire Le Goues

摘要:

自动化和机器人系统(ARS)广泛、复杂,并且越来越多地与公众接触。这些系统中的许多都是安全关键型的,检测软件错误以防止损害至关重要。我们提出了一个家庭的新技术来检测不寻常的程序执行和不正确的程序行为。我们通过在运行时间收集低级信号并使用这些信号构建机器学习模型来对执行行为进行建模。这些模型可以识别以前看不见的执行,这些执行更有可能出现错误。我们描述了一个易于处理的方法收集动态二进制运行时信号的ARS,允许系统吸收大部分的开销从动态仪器。ARS的体系结构特别适合于隐藏插装的开销。我们在ARDUPILOT(一种流行的开源自动驾驶软件系统)和HUSKY(一种无人驾驶地面车辆)的仿真中展示了这些方法的效率。我们对执行进行检测,以收集数据,并从中构建执行的监督机器学习模型,并评估这些模型的准确性。我们还分析了开发具有不同准确度的模型所需的训练数据量,测量使用分析工具的执行所增加的开销,并分析哪些运行时信号对于检测被测程序上的异常行为最有用。此外,我们还分析了时间延迟对ARS功能行为的影响。

英文摘要:

Autonomous and Robotics Systems (ARSs) are widespread, complex, and increasingly coming into contact with the public. Many of these systems are safety-critical, and it is vital to detect software errors to protect against harm. We propose a family of novel techniques to detect unusual program executions and incorrect program behavior. We model execution behavior by collecting low-level signals at run time and using those signals to build machine learning models. These models can identify previously-unseen executions that are more likely to exhibit errors. We describe a tractable approach for collecting dynamic binary runtime signals on ARSs, allowing the systems to absorb most of the overhead from dynamic instrumentation. The architecture of ARSs is particularly well-adapted to hiding the overhead from instrumentation. We demonstrate the efficiency of these approaches on ARDUPILOT -- a popular open-source autopilot software system -- and HUSKY -- an unmanned ground vehicle -- in simulation. We instrument executions to gather data from which we build supervised machine learning models of executions and evaluate the accuracy of these models. We also analyze the amount of training data needed to develop models with various degrees of accuracy, measure the overhead added to executions that use the analysis tool, and analyze which runtime signals are most useful for detecting unusual behavior on the program under test. In addition, we analyze the effects of timing delays on the functional behavior of ARSs.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑