Control Barrier Function和控制共享属性(sharing property)

写在前面

之前的文章中,我们介绍了仿射非线性系统和反馈线性化方法。本文在输入-输出反馈线性化的基础上,关注如何利用系统的输出实现带约束的控制器,以及如何保证存在一个可行的控制器以共同实现多个约束。

首先考虑一个CrC^r(即rr阶导存在且连续)的时变约束函数h(t,x)h(t,x),若要h(t,x)0h(t,x)\geq 0成立,需要hh及其导数满足什么条件。很显然 h(0)0h(0)\geq 0h˙0\dot h\geq 0是可行条件之一,但是该条件过于严格,当多个约束存在时,很难保证控制器的可行性。因此我们需要寻找能够使约束集尽可能放松的条件。

注意:可导必连续,连续不一定可导。光滑(smooth)函数即为CC^\infty函数。连续(continuous)函数即为C0C^0函数。连续可导(continuously differentiable)函数即为C1C^1函数。

Control Barrier Function

为了获得合适的约束条件,我们先假设h(t,x)h(t,x)满足如下不等式:

h(r)+a1h(r1)++ar1h˙+arh0h^{(r)}+a_1 h^{(r-1)}+\cdots+a_{r-1}\dot h+a_r h\geq 0,

其中a1,,arRa_1,\cdots,a_r\in\mathbb R是一系列实数使得多项式

p0r=λr+a1λr1++ar1h+arp_0^r=\lambda^r+a_1 \lambda^{r-1}+\cdots+a_{r-1}h+a_r

的根为实数λ1,,λrR-\lambda_1,\cdots,-\lambda_r\in\mathbb Rλi>0\lambda_i>0i=1,,r\forall i=1,\cdots,r

我们引入Control Barrier Function的概念,后面简称为CBF。