跳到正文
格致开物MATHWIKI

控制李雅普诺夫函数

控制李雅普诺夫函数(control Lyapunov function,CLF)把稳定化问题改写为:在每个非目标状态,是否存在一个允许输入,能使某个正定函数严格下降。普通李雅普诺夫函数用来分析已经确定的闭环;CLF还把输入作为待选择的变量。

从函数导数选择输入

考虑控制仿射系统 x˙=f(x)+g(x)u、u∈U,目标为原点。一个常用光滑定义要求 V 连续可微、V(0)=0、V(x)>0 对 x≠0 成立,并有 infu∈U{LfV(x)+LgV(x)u}<0(x≠0). 其中 LfV=∇V𝖳f、LgV=∇V𝖳g。全局设计还常要求 V 径向无界,使其有界子水平集能约束整个状态。定义在受限区域时,结论范围也应限制在该区域。[1]

仅仅逐点存在下降输入,还没有交代怎样选成一条足够规则的反馈。若选出的反馈使原点成为平衡点、局部Lipschitz且轨迹存在,并使 V˙≤−W(x),其中 W 正定,那么可用相应李雅普诺夫定理证明收敛;连续反馈在原点的性质还可能需要小控制条件。不能把这些选择和解的条件隐藏在一个“存在”符号后面。

标量稳定化与限幅区域

取 x˙=x+u,V=x2/2。其导数为 x2+xu。若 U=ℝ,选 u=−2x,便有 V˙=−x2=−2V,积分得到 V(t)=V(0)e−2t、x(t)=x0e−t,全局指数收敛。

若控制限幅改成 U=[−2,2],最小可能导数为 inf|u|≤2(x2+xu)=x2−2|x|. 它只有在 0<|x|<2 时严格为负;边界为零,外侧为正。图中的负值区间就是该函数能确认下降的区域。实际上 x>2 时任何输入都有 x˙≥x−2>0,所以这不是保守计算造成的假障碍。

限幅2时V导数最小值x平方-2绝对值x在-2与2之间为负,外侧为正
输入存在幅值限制时,下降条件只能在相应区域满足;不能把无约束的全局稳定结论原样保留。

二次规划中的线性输入约束

对积分器 x˙=u、V=x2/2,要求 V˙≤−cV,c>0,等价于 xu≤−cx2/2。固定当前 x 后,这是输入 u 的线性不等式。若希望最少改变名义输入 unom=0,求解 min⁡u2/2,就得到 u=−cx/2;x=0 时约束自动成立,最优输入为零。

变式。 取 c=2,则 u=−x、V(t)=V(0)e−2t;取 c=4,则 u=−2x,所需输入幅值加倍,状态衰减更快。加入限幅后,并非所有初态都能满足任意大的下降率。

CLF约束关注向目标收敛;控制障碍函数关注留在安全集合。目标若在安全集合外,两项要求本身就可能冲突。给性能约束加入松弛变量能够恢复某些优化问题的可行性,但放松后就不再自动拥有原来的严格下降保证。

参考资料

  1. ↑ Aaron D. Ames、Xiangru Xu、Jessy W. Grizzle、Paulo Tabuada,Control Barrier Function Based Quadratic Programs for Safety Critical Systems,§IV-A,控制李雅普诺夫函数、指数下降条件与最小范数控制;Lyapunov收敛判据另见Tedrake的Lyapunov Analysis。