Unified Planning and Execution for Autonomous Software Repair
Richard Levinson · 2005
This paper addresses the need for more flexible autonomous systems that detect and correct software failures at runtime. We present new methods for integrated planning and execution that enable runtime verification and repair for software failures, and explore the related issue of integrated procedural and declarative action representations. We present a library for embedding declarative planning methods within procedural C++ code. The library provides an interface to supervisory processes, which monitor software execution and provide last-resort error recovery after pre-programmed error handlers fail. The library provides an interface to search and temporal constraint engines maintained by the meta-processes. The planner and controller use the same procedural representation in order to share context (computational state) between planning and execution.