写在前面
之前的文章中,我们介绍了仿射非线性系统和反馈线性化方法。本文在输入-输出反馈线性化的基础上,关注如何利用系统的输出实现带约束的控制器,以及如何保证存在一个可行的控制器以共同实现多个约束。
首先考虑一个Cr(即r阶导存在且连续)的时变约束函数h(t,x),若要h(t,x)≥0成立,需要h及其导数满足什么条件。很显然 h(0)≥0且h˙≥0是可行条件之一,但是该条件过于严格,当多个约束存在时,很难保证控制器的可行性。因此我们需要寻找能够使约束集尽可能放松的条件。
注意:可导必连续,连续不一定可导。光滑(smooth)函数即为C∞函数。连续(continuous)函数即为C0函数。连续可导(continuously differentiable)函数即为C1函数。
Control Barrier Function
为了获得合适的约束条件,我们先假设h(t,x)满足如下不等式:
h(r)+a1h(r−1)+⋯+ar−1h˙+arh≥0,
其中a1,⋯,ar∈R是一系列实数使得多项式
p0r=λr+a1λr−1+⋯+ar−1h+ar
的根为实数−λ1,⋯,−λr∈R,λi>0,∀i=1,⋯,r。
我们引入Control Barrier Function的概念,后面简称为CBF。