Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

Region of attraction

  • 又称: ROA, basin of attraction, domain of attraction
  • 类别: Control › Feedback control
  • 标签: stability, nonlinear-control, lyapunov-analysis, verification, control-theory

闭环系统从中出发会收敛到给定平衡点或设定点的初始状态集合;它衡量控制器在受到多大扰动后仍能恢复。

定义

对于在固定控制器作用下的动力学系统,平衡点的吸引域(Region of attraction,ROA)是所有这样的初始状态的集合:从这些状态出发的轨迹随时间收敛到该平衡点。局部稳定性结论,例如在直立姿态附近线性化并得到稳定的特征值,只能说明平衡点会吸引某个未指明邻域内的状态;而吸引域说明的是这个邻域实际上有多大。对于带执行器限制的非线性系统,它通常是有界的,形状往往不规则,并且可能比线性分析所显示的小得多。同样的概念也适用于步行步态等周期运动,此时吸引盆(basin of attraction)是收敛到极限环的状态的集合。

精确的吸引域很少能计算出来,因此工程师使用保证位于其内部的内近似。标准工具是 Lyapunov 函数 V(x):如果在下水平集 {x : V(x) ≤ ρ} 内的每一处,V 都沿轨迹递减,那么该集合就位于吸引域之内。对于多项式动力学,平方和(sums-of-squares)规划可以搜索最大的可认证 ρ,或者搜索 V 本身。仿真和采样能给出更快但未经认证的估计,而基于学习的方法则训练神经 Lyapunov 函数。对于 LQR 控制器,二次的未来代价(cost-to-go)是天然的 Lyapunov 候选函数,分析要检查的是它的水平集能延伸多远,直到非线性或力矩限制破坏递减条件。

吸引域使控制器可以组合。在顺序组合(sequential composition)中,每个控制器或运动基元只在状态位于其吸引域内时使用,并且一个控制器的目标集被放在下一个控制器的吸引域之内,这样规划器就能在有保证的前提下把它们串联起来。LQR-Trees 构建一棵由镇定轨迹组成的树,其经过验证的漏斗合在一起覆盖一定范围的初始状态。本站上的足式运动论文把同样的原理应用于运动基元图,其中每个基元的吸引域决定了哪些转移是安全的。

为何重要

只有当机器人从它能够恢复的状态出发并保持在这些状态中时,控制器才有用。吸引域量化了这种鲁棒性,指导何时切换控制器,并把局部稳定性结论变成规划器可以使用的保证。

主要应用

  • 验证欠驱动系统的镇定控制器
  • 足式机器人的抗推恢复以及在平衡策略之间切换
  • 控制器和运动基元的顺序组合
  • 使用经过验证的漏斗进行反馈运动规划
  • 学习型控制器的安全性分析

实际应用

一个为四足机器人设计站立平衡控制器的团队,想知道它能承受多大的推力。他们仿真了许多受扰动的初始状态,改变基座速度和倾斜,并记录哪些状态能回到站立姿态;收敛样本与失败样本之间的边界给出了一个经验吸引域。对于一个降阶模型,他们还根据 Lyapunov 函数计算出一个经过认证的内近似。在机器人上,一个监督器把估计的状态与该区域进行比较,并在状态离开该区域时切换到迈步控制器,而不是让站立控制器尝试从一次它无法应对的推力中恢复。

常见误解

  • 线性化稳定意味着机器人处处稳定 — 线性分析只保证在某个邻域内收敛,而一旦力矩限制和非线性起作用,这个邻域可能非常小
  • Lyapunov 下水平集就是吸引域 — 它是一个内近似;真实的吸引域通常更大
  • 吸引域只是机器人本身的属性 — 它既取决于动力学,也取决于控制器及其限制,并且在增益或饱和限制改变时会发生变化

谁需要了解

  • 设计镇定控制器的控制工程师
  • 从事平衡问题的足式机器人和人形机器人开发人员
  • 安全控制和可验证控制研究人员
  • 组合控制器或运动基元的规划工程师

相关技术

  • Lyapunov 函数(Lyapunov Functions)
  • 平方和规划(Sums-of-Squares Programming)
  • LQR-Trees
  • 神经 Lyapunov 函数(Neural Lyapunov Functions)
  • Drake

相关术语

  • Underactuated system
  • Control Barrier Function
  • Hybrid system
  • Rapidly-exploring random tree
  • Model Predictive Control
  • Motion Primitive

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。