使用污点分析和强化学习(TARL)修复自主机器人软件
Using Taint Analysis and Reinforcement Learning (TARL) to Repair Autonomous Robot Software
摘要:
能够为自治系统建立正式的性能界限是很重要的。然而,形式化验证技术需要一个系统运行环境的模型;这对自治系统来说是一个挑战,特别是那些预期在较长时间尺度上运行的系统。本文介绍了正在进行的工作,以自动化的监控和修复基于ROS的自主机器人软件编写的先验部分已知的,可能是不正确的环境模型。利用污点分析方法自动提取从输入主题到发布主题的数据流序列,并对代码进行检测。一个独特的强化学习近似MDP效用计算,经验和非侵入性的表征的固有目标的软件设计师。通过比较离线(先验)实用程序与在线(部署的系统)实用程序,我们表明,使用一个小的,但真正的ROS的例子,它可以监控性能标准和违反该标准的部分软件。然后使用自动软件修复技术修补软件,并根据原始离线实用程序进行评估。
英文摘要:
It is important to be able to establish formal performance bounds for autonomous systems. However, formal verification techniques require a model of the environment in which the system operates; a challenge for autonomous systems, especially those expected to operate over longer timescales. This paper describes work in progress to automate the monitor and repair of ROS-based autonomous robot software written for an a-priori partially known and possibly incorrect environment model. A taint analysis method is used to automatically extract the data-flow sequence from input topic to publish topic, and instrument that code. A unique reinforcement learning approximation of MDP utility is calculated, an empirical and non-invasive characterization of the inherent objectives of the software designers. By comparing off-line (a-priori) utility with on-line (deployed system) utility, we show, using a small but real ROS example, that it's possible to monitor a performance criterion and relate violations of the criterion to parts of the software. The software is then patched using automated software repair techniques and evaluated against the original off-line utility.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。