Skip to main content
QUICK REVIEW

[论文解读] Using Ellipsoidal Domains to Analyze Control Systems Software

Fernando Alegre, Éric Féron|ArXiv.org|Sep 10, 2009
Formal Methods in Verification参考文献 21被引用 13
一句话总结

本文提出了一种基于椭球域的抽象解释框架,用于验证软件实现的控制系统的稳定性特性,特别是线性控制器及部分非线性控制器。通过使用椭球约束建模状态变量,并求解离散李雅普诺夫方程以找到不动点,该方法实现了无需依赖高层模型或特定自动生成器(autocoder)语义的自动化稳定性验证。

ABSTRACT

We propose a methodology for the automatic verification of safety properties of controllers based on dynamical systems, such as those typically used in avionics. In particular, our focus is on proving stability properties of software implementing linear and some non-linear controllers. We develop an abstract interpretation framework that follows closely the Lyapunov methods used in proofs at the model level and describe the corresponding abstract domains, which for linear systems consist of ellipsoidal constraints. These ellipsoidal domains provide abstractions for the values of state variables and must be combined with other domains that model the remaining variables in a program. Thus, the problem of automatically assigning the right type of abstract domain to each variable arises. We provide an algorithm that solves this classification problem in many practical cases and suggest how it could be generalized to more complicated cases. We then find a fixpoint by solving a matrix equation, which in the linear case is just the discrete Lyapunov equation. Contrary to most cases in software analysis, this fixpoint cannot be reached by the usual iterative method of propagating constraints until saturation and so numerical methods become essential. Finally, we illustrate our methodology with several examples.

研究动机与目标

  • 开发一种自动验证控制软件实现中稳定性特性的方法论,尤其适用于航电系统中的控制实现。
  • 解决在实现级别验证控制器正确性的挑战,因为代码复杂性与浮点数行为使得基于模型的验证方法不足。
  • 构建一种与特定自动生成器或高层建模工具无关的验证框架,以确保更广泛的应用性。
  • 将椭球域与其他抽象域结合,以建模控制软件中的混合变量类型。
  • 通过数值求解矩阵方程实现不动点计算,克服标准抽象解释中迭代约束传播的局限性。

提出的方法

  • 通过在软件层面构建状态变量上的椭球约束,使用李雅普诺夫方法形式化稳定性验证。
  • 引入一种基于椭球的参数化抽象域,以表示状态变量的边界,从而实现对可达状态的过度近似。
  • 将椭球域与其他抽象域(如矩形域或多面体域)结合,以建模程序中的非状态变量。
  • 开发一种算法,根据变量在控制器逻辑中的角色与行为,将其分类至合适的抽象域。
  • 将离散李雅普诺夫方程作为不动点计算步骤,替代标准的迭代约束传播。
  • 将分析(约束生成)与合成(证明验证)分离,从而在分析与验证阶段灵活使用不同域。

实验结果

研究问题

  • RQ1如何将控制理论中的基于李雅普诺夫的稳定性证明适配于编译后控制软件的静态分析?
  • RQ2何种抽象域表示能最好地捕捉线性与非线性控制器在静态分析中状态变量的动力学特性?
  • RQ3当标准迭代传播失效时,如何有效求解抽象解释中的不动点计算?
  • RQ4能否设计一种模块化方法论,将抽象域选择与证明合成解耦?
  • RQ5如何在不损害稳定性验证正确性的前提下处理浮点数不精确性?

主要发现

  • 所提出的椭球抽象域能够有效过度近似控制软件中状态变量的行为,捕捉稳定性区域的几何结构。
  • 该方法通过求解离散李雅普诺夫方程成功验证了线性控制器的稳定性,该方程在分析中作为不动点条件。
  • 对于非线性控制器,该方法可扩展至李雅普诺夫函数可使用椭球约束近似的场景。
  • 分析(约束生成)与合成(证明验证)的分离,使得可灵活使用不同域——例如,使用椭球域提升效率,使用多面体域提升精度。
  • 该框架避免了对专有自动生成器或高层模型的依赖,使其可适用于不同代码生成工具与平台。
  • 该方法论表明,在此情境下数值方法对不动点计算至关重要,因为标准迭代传播无法收敛。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。