文章目录
- 研究背景
- 主要贡献
- 障碍函数(Barrier Function)
- (一)倒数障碍函数(Reciprocal Barrier Function, RBF)
- (二)归零障碍函数(Zeroing Barrier Function, ZBF)
- (三)RBF与ZBF的关系
- 控制障碍函数(Control Barrier Function, CBF)
- (一)倒数控制障碍函数(Reciprocal Control Barrier Function, RCBF)
- (二)归零控制障碍函数(Zeroing Control Barrier Function, ZCBF)
- 二次规划(Quadratic Programming, QP)设计
- (一)指数稳定控制李雅普诺夫函数(ES - CLF)
- (二)CLF - CBF QP
- 1. 基于 RCBF 的 QP
- 2. 基于 ZCBF 的 QP
- 参考文献
在控制系统的研究中,如何确保系统安全运行并实现特定控制目标一直是关键问题。Ames等人2017年发表的论文“Control Barrier Function Based Quadratic Programs for Safety Critical Systems”,深入探讨基于控制障碍函数的二次规划控制方法。
研究背景
在安全关键系统中,控制目标与安全约束紧密交织。例如在自动驾驶场景下,车辆既要精准追踪目标速度,又要时刻保证与周围车辆、行人保持安全距离,避免碰撞事故。传统控制方法在处理这类复杂的多目标约束问题时,往往存在局限性。而控制障碍函数(Control Barrier Function, CBF)和控制李雅普诺夫函数(Control Lyapunov Function, CLF)的出现,为解决此类问题提供了新的思路。CBF用于描述系统状态的安全约束,CLF则聚焦于系统的稳定性和控制目标的实现,将二者结合并通过二次规划(QP)进行求解,能够有效平衡安全与性能,为复杂控制系统设计提供有力工具。
主要贡献
障碍函数(Barrier Function)
针对自治系统
x
˙
=
f
(
x
)
\dot{x}=f(x)
x˙=f(x)
其中,
x
∈
R
n
x\in \mathbb{R}^n
x∈Rn,
f
f
f是locally Lipschitz。对于任意一个初始状态
x
0
:
=
x
(
t
0
)
∈
R
n
x_0:=x(t_0)\in\mathbb{R}^n
x0:=x(t0)∈Rn,存在最大时间区间
T
(
x
0
)
=
[
t
0
,
∞
)
T(x_0)=[t_0, \infty)
T(x0)=[t0,∞)使得系统存在唯一解
x
(
t
)
,
∀
t
∈
I
(
x
0
)
x(t), \forall t\in I_(x_0)
x(t),∀t∈I(x0)
前向不变性(Forward Invariance)
对于一个集合 S ∈ R n S\in \mathbb{R}^n S∈Rn,如果任意的初始状态 x 0 ∈ S x_0 \in S x0∈S,都有区间 I ( x 0 ) I(x_0) I(x0)上唯一解始终属于 S S S集合,即 x ( t ) ∈ S , ∀ t ∈ I ( x 0 ) x(t)\in S, \forall t\in I_(x_0) x(t)∈S,∀t∈I(x0),则我们称集合 S S S是前向不变的。
给出常见集合定义,分别表示有界闭集
C
\mathcal{C}
C、边界集合
∂
C
\partial \mathcal{C}
∂C和内点开集
I
n
t
(
C
)
Int(\mathcal{C})
Int(C)
C
=
{
x
∈
R
n
∣
h
(
x
)
≥
0
}
∂
C
=
{
x
∈
R
n
∣
h
(
x
)
=
0
}
I
n
t
(
C
)
=
{
x
∈
R
n
∣
h
(
x
)
>
0
}
\begin{equation} \begin{aligned} \mathcal{C} = \{x \in \mathbb{R}^n | h(x) \geq 0 \} \nonumber \\ \partial \mathcal{C} = \{x \in \mathbb{R}^n | h(x) = 0 \} \nonumber \\ Int(\mathcal{C}) = \{x \in \mathbb{R}^n | h(x) > 0 \} \nonumber \\ \end{aligned} \end{equation}
C={x∈Rn∣h(x)≥0}∂C={x∈Rn∣h(x)=0}Int(C)={x∈Rn∣h(x)>0}
其中,函数
h
:
R
n
→
R
h:\mathbb{R}^n \rightarrow \mathbb{R}
h:Rn→R是一个连续可导函数。同时,我们要求集合
C
\mathcal{C}
C非空且无 孤立点 (isolated point),即
I
n
t
(
R
)
≠
∅
且
I
n
t
(
C
)
‾
=
R
Int(\mathcal{R}) \neq \empty \thinspace \text{且} \thinspace \overline{Int(\mathcal{C}) }= \mathcal{R}
Int(R)=∅且Int(C)=R
这里的
I
n
t
(
C
)
‾
\overline{Int(\mathcal{C})}
Int(C) 表示集合
I
n
t
(
C
)
Int(\mathcal{C})
Int(C) 的 闭包。
在正式介绍障碍函数之前,给出 K \mathcal{K} K类函数的定义如下
K \mathcal{K} K类函数:对于 a > 0 a>0 a>0,一个连续函数 α : ( 0 , a ) → ( 0 , ∞ ) \alpha:(0,a)\to(0,\infty) α:(0,a)→(0,∞),如果它是严格单调递增且 α ( 0 ) = 0 \alpha(0)=0 α(0)=0,则称其属于 K \mathcal{K} K类函数。
障碍函数最核心的目标——保证集合的前向不变性。文章中给出了两种障碍函数——倒数障碍函数和归零障碍函数,并分析了其与集合
C
\mathcal{C}
C 的关系,如下图
(一)倒数障碍函数(Reciprocal Barrier Function, RBF)
选取候选倒数障碍函数为
B
(
x
)
=
−
log
(
h
(
x
)
1
+
h
(
x
)
)
B(x)=-\log(\frac{h(x)}{1 + h(x)})
B(x)=−log(1+h(x)h(x))
满足
inf
x
∈
int
(
C
)
B
(
x
)
≥
0
,
lim
x
→
∂
C
B
(
x
)
=
∞
\inf_{x\in\operatorname{int}(\mathcal{C})}B(x)\geq0, \quad\lim_{x\rightarrow\partial\mathcal{C}}B(x)=\infty
x∈int(C)infB(x)≥0,x→∂ClimB(x)=∞
因此,函数
B
B
B只定义在内点集合
I
n
t
(
C
)
Int(\mathcal{C})
Int(C)上,而不能定义在边界集合
∂
C
\partial \mathcal{C}
∂C。
在初始状态
x
0
x_0
x0满足
B
(
x
0
)
≥
0
B(x_0) \geq 0
B(x0)≥0的情况下,为保证
I
n
t
(
C
)
Int(\mathcal{C})
Int(C)的前向不变性不变,最一般的条件是要求函数的导数始终小于零,即
B
˙
<
0
\dot{B} < 0
B˙<0
但是该条件太过严苛,所以引入松弛项,重新设计条件
B
˙
≤
γ
B
(
γ
>
0
)
\dot{B}\leq\frac{\gamma}{B} \qquad (\gamma>0)
B˙≤Bγ(γ>0)
之后,对
B
(
x
)
B(x)
B(x)求导,
B
˙
=
−
h
˙
h
+
h
2
\dot{B}=-\frac{\dot{h}}{h + h^2}
B˙=−h+h2h˙ 代入条件可得
h
˙
≥
γ
(
h
+
h
2
)
log
(
h
1
+
h
)
\dot{h}\geq\frac{\gamma(h + h^2)}{\log(\frac{h}{1 + h})}
h˙≥log(1+hh)γ(h+h2)
由比较引理,若 x 0 ∈ I n t ( C ) x_0\in Int(\mathcal{C}) x0∈Int(C),则 h ( x ( t , x 0 ) ) ≥ 1 exp ( 2 γ t + log 2 ( h ( x 0 ) + 1 h ( x 0 ) ) ) − 1 > 0 h(x(t,x_0))\geq\frac{1}{\exp(\sqrt{2\gamma t+\log^2(\frac{h(x_0)+1}{h(x_0)})}) - 1}>0 h(x(t,x0))≥exp(2γt+log2(h(x0)h(x0)+1))−11>0 即 x ( t , x 0 ) ∈ int ( C ) , ∀ t ≥ 0 x(t,x_0)\in\operatorname{int}(\mathcal{C}),\space\forall t\geq0 x(t,x0)∈int(C), ∀t≥0成立。
此外,还有一种候选逆形式障碍函数。 B ( x ) = 1 h ( x ) B(x)=\frac{1}{h(x)} B(x)=h(x)1 在 B ˙ ≤ γ B \dot{B}\leq\frac{\gamma}{B} B˙≤Bγ条件下,根据比较引理可得 h ( x ( t , x 0 ) ) ≥ 1 2 γ t + 1 h 2 ( x 0 ) > 0 h(x(t,x_0))\geq\frac{1}{\sqrt{2\gamma t+\frac{1}{h^2(x_0)}}}>0 h(x(t,x0))≥2γt+h2(x0)11>0 同样能保证 x ( t , x 0 ) ∈ I n t ( C ) x(t,x_0)\in Int(\mathcal{C}) x(t,x0)∈Int(C)
给出如下定理
对于动态系统,如果存在类 K \mathcal{K} K 函数 α 1 ( ⋅ ) , α 2 ( ⋅ ) , α 3 ( ⋅ ) \alpha_1(\cdot), \alpha_2(\cdot), \alpha_3(\cdot) α1(⋅),α2(⋅),α3(⋅) 使得对于所有 x ∈ I n t ( C ) x \in Int(\mathcal{C}) x∈Int(C),都有
1 α 1 ( h ( x ) ) ≤ B ( x ) ≤ 1 α 2 ( h ( x ) ) , \frac{1}{\alpha_1(h(x))} \leq B(x) \leq \frac{1}{\alpha_2(h(x))}, α1(h(x))1≤B(x)≤α2(h(x))1,
L f B ( x ) ≤ α 3 ( h ( x ) ) . L_f B(x) \leq \alpha_3(h(x)). LfB(x)≤α3(h(x)).
则连续可微函数 B : Int ( C ) → R B: \text{Int}(\mathcal{C}) \rightarrow \mathbb{R} B:Int(C)→R 是集合 C \mathcal{C} C 的一个倒数障碍函数(RBF)。
(二)归零障碍函数(Zeroing Barrier Function, ZBF)
倒数障碍函数在接近集合边界时函数值趋于无穷大,这在实际的实时或嵌入式系统实现中可能会带来问题,例如数值计算困难或对硬件要求过高。因此引入归零障碍函数。
首先定义扩展 K \mathcal{K} K类函数
扩展 K \mathcal{K} K类函数:对于 a , b > 0 a,b>0 a,b>0,一个连续函数 α : ( − b , a ) → ( − ∞ , ∞ ) \alpha:(-b,a)\to(-\infty,\infty) α:(−b,a)→(−∞,∞),如果它是严格单调递增且 α ( 0 ) = 0 \alpha(0)=0 α(0)=0,则称其属于扩展类 K \mathcal{K} K函数。
对于动态系统
x
˙
=
f
(
x
)
\dot{x}=f(x)
x˙=f(x),若存在扩展
K
\mathcal{K}
K 类函数
α
\alpha
α 和集合
D
\mathcal{D}
D(满足
C
⊆
D
⊂
R
n
\mathcal{C}\subseteq\mathcal{D}\subset\mathbb{R}^n
C⊆D⊂Rn),使得对于所有
x
∈
D
x\in\mathcal{D}
x∈D,有
L
f
h
(
x
)
≥
−
α
(
h
(
x
)
)
L_f h(x)\geq -\alpha(h(x))
Lfh(x)≥−α(h(x))
则连续可微函数
h
:
R
n
→
R
h:\mathbb{R}^n\to\mathbb{R}
h:Rn→R 是集合
C
\mathcal{C}
C的归零障碍函数(ZBF) 。
将 h h h定义在集合 D \mathcal{D} D( D \mathcal{D} D大于 C \mathcal{C} C)上,这样可以考虑模型扰动的影响。当 x ∈ ∂ C x\in\partial\mathcal{C} x∈∂C时, h ( x ) = 0 h(x)=0 h(x)=0,此时 L f h ( x ) ≥ − α ( h ( x ) ) = 0 L_f h(x)\geq -\alpha(h(x)) = 0 Lfh(x)≥−α(h(x))=0 根据 Nagumo定理,满足该条件时集合 C \mathcal{C} C是前向不变的。
如果
h
h
h是定义在开集
D
\mathcal{D}
D上的ZBF,那么
h
h
h可以诱导出一个李雅普诺夫函数
V
C
:
D
→
R
0
+
V_{\mathcal{C}}:\mathcal{D}\to\mathbb{R}_0^+
VC:D→R0+,定义为
V
C
(
x
)
=
{
0
,
如果
x
∈
C
−
h
(
x
)
,
如果
x
∈
D
\
C
V_{\mathcal{C}}(x)=\begin{cases}0, & \text{如果 } x\in\mathcal{C} \\ -h(x), & \text{如果 } x\in\mathcal{D}\backslash\mathcal{C}\end{cases}
VC(x)={0,−h(x),如果 x∈C如果 x∈D\C
容易验证:
- 当 x ∈ C x\in\mathcal{C} x∈C时, V C ( x ) = 0 V_{\mathcal{C}}(x)=0 VC(x)=0;
- 当 x ∈ D \ C x\in\mathcal{D}\backslash\mathcal{C} x∈D\C时, V C ( x ) > 0 V_{\mathcal{C}}(x)>0 VC(x)>0;
- 对于 x ∈ D \ C x\in\mathcal{D}\backslash\mathcal{C} x∈D\C, L f V C ( x ) = − L f h ( x ) ≤ α ∘ h ( x ) = α ( − V C ( x ) ) < 0 L_f V_{\mathcal{C}}(x)=-L_f h(x)\leq\alpha\circ h(x)=\alpha(-V_{\mathcal{C}}(x))<0 LfVC(x)=−Lfh(x)≤α∘h(x)=α(−VC(x))<0。
由上述三个性质,以及 V C V_{\mathcal{C}} VC在其定义域上连续且在 D \ C \mathcal{D}\backslash\mathcal{C} D\C上连续可微,根据相关定理,当系统 x ˙ = f ( x ) \dot{x}=f(x) x˙=f(x) 是前向完备的,或者集合 C \mathcal{C} C是紧致的时,集合 C \mathcal{C} C是渐近稳定的。这表明归零障碍函数不仅能保证集合的前向不变性,在一定条件下还能保证集合的渐近稳定性。
(三)RBF与ZBF的关系
前面介绍了RBF和ZBF与集合前向不变性的充分条件,即存在RBF(或ZBF)能保证
I
n
t
(
C
)
Int(\mathcal{C})
Int(C)(或
C
\mathcal{C}
C)的前向不变性。接下来探讨其必要性及二者之间的其他关系。
命题:考虑动态系统
x
˙
=
f
(
x
)
\dot{x}=f(x)
x˙=f(x)和由连续可微函数
h
:
R
n
→
R
h:\mathbb{R}^n\to\mathbb{R}
h:Rn→R定义的非空、紧致集合
C
\mathcal{C}
C(满足前面给出的集合定义形式)。如果
C
\mathcal{C}
C是前向不变的,那么
h
∣
C
h|_{\mathcal{C}}
h∣C是定义在
C
\mathcal{C}
C上的ZBF。
证明:在ZBF的定义中取
D
=
C
\mathcal{D}=\mathcal{C}
D=C。对于任意
r
≥
0
r\geq0
r≥0,集合
{
x
∣
0
≤
h
(
x
)
≤
r
}
\{x|0\leq h(x)\leq r\}
{x∣0≤h(x)≤r}是
C
\mathcal{C}
C的一个紧致子集。定义函数
α
:
[
0
,
∞
)
→
R
\alpha:[0,\infty)\to\mathbb{R}
α:[0,∞)→R为
α
(
r
)
=
−
inf
{
x
∣
0
≤
h
(
x
)
≤
r
}
L
f
h
(
x
)
\alpha(r)=-\inf_{\{x|0\leq h(x)\leq r\}}L_f h(x)
α(r)=−{x∣0≤h(x)≤r}infLfh(x)
利用上述紧致性性质和
L
f
h
L_f h
Lfh的连续性,可知
α
\alpha
α是在
R
0
+
\mathbb{R}_0^+
R0+上定义良好的非递减函数,且满足
L
f
h
(
x
)
≥
−
α
∘
h
(
x
)
,
∀
x
∈
C
L_f h(x)\geq -\alpha\circ h(x),\quad\forall x\in\mathcal{C}
Lfh(x)≥−α∘h(x),∀x∈C
根据Nagumo定理,
C
\mathcal{C}
C的不变性等价于
h
(
x
)
=
0
⇒
L
f
h
(
x
)
≥
0
h(x)=0\Rightarrow L_f h(x)\geq0
h(x)=0⇒Lfh(x)≥0,这意味着
α
(
0
)
≤
0
\alpha(0)\leq0
α(0)≤0。总能找到一个定义在
[
0
,
∞
)
[0,\infty)
[0,∞)上的类
K
\mathcal{K}
K函数
α
^
\hat{\alpha}
α^,使得
α
\alpha
α在其上方有界,即
h
˙
(
x
)
≥
−
α
^
(
h
(
x
)
)
\dot{h}(x)\geq -\hat{\alpha}(h(x))
h˙(x)≥−α^(h(x))对于所有
x
∈
C
x\in\mathcal{C}
x∈C成立,从而完成证明。
引理:考虑动态系统
x
˙
=
f
(
x
)
\dot{x}=f(x)
x˙=f(x)和由连续可微函数
h
:
R
n
→
R
h:\mathbb{R}^n\to\mathbb{R}
h:Rn→R定义的非空、紧致集合
C
\mathcal{C}
C。如果对于所有
x
∈
∂
C
x\in\partial\mathcal{C}
x∈∂C,都有
h
˙
(
x
)
>
0
\dot{h}(x)>0
h˙(x)>0,那么对于每个整数
k
≥
1
k\geq1
k≥1,存在常数
γ
>
0
\gamma>0
γ>0,使得
h
˙
(
x
)
≥
−
γ
h
k
(
x
)
,
∀
x
∈
I
n
t
(
C
)
\dot{h}(x)\geq -\gamma h^k(x),\quad\forall x\in Int(\mathcal{C})
h˙(x)≥−γhk(x),∀x∈Int(C)
这里的证明省略,自行观看原文
控制障碍函数(Control Barrier Function, CBF)
考虑仿射控制系统,其状态方程为
x
˙
=
f
(
x
)
+
g
(
x
)
u
\dot{x}=f(x)+g(x)u
x˙=f(x)+g(x)u
其中,
x
∈
R
n
x\in\mathbb{R}^n
x∈Rn 表示系统的状态向量,
u
∈
U
⊂
R
m
u\in U\subset\mathbb{R}^m
u∈U⊂Rm 是控制输入向量,函数
f
f
f 和
g
g
g 满足局部 Lipschitz 条件。
文中特别关注
U
U
U 可以表示为凸多面体的情况
U
=
{
u
∈
R
m
∣
A
0
u
≤
b
0
}
U = \{u \in \mathbb{R}^m | A_0 u \leq b_0\}
U={u∈Rm∣A0u≤b0}
其中,
A
0
A_0
A0 是一个
p
×
m
p \times m
p×m 矩阵,
b
0
b_0
b0 是一个
p
×
1
p \times 1
p×1 列向量,
p
p
p 是某个正整数。
(一)倒数控制障碍函数(Reciprocal Control Barrier Function, RCBF)
若存在 K \mathcal{K} K 类函数 α 1 \alpha_1 α1、 α 2 \alpha_2 α2、 α 3 \alpha_3 α3,使得对于所有 x ∈ I n t ( C ) x\in Int(\mathcal{C}) x∈Int(C),以下两个条件同时成立:
- 函数值范围条件
1 α 1 ( h ( x ) ) ≤ B ( x ) ≤ 1 α 2 ( h ( x ) ) \frac{1}{\alpha_1(h(x))}\leq B(x)\leq\frac{1}{\alpha_2(h(x))} α1(h(x))1≤B(x)≤α2(h(x))1 - 导数相关条件
inf u ∈ U [ L f B ( x ) + L g B ( x ) u − α 3 ( h ( x ) ) ] ≤ 0 \inf_{u\in U}[L_fB(x)+L_gB(x)u - \alpha_3(h(x))]\leq0 u∈Uinf[LfB(x)+LgB(x)u−α3(h(x))]≤0
则连续可微函数 B : int ( C ) → R B:\operatorname{int}(\mathcal{C})\to\mathbb{R} B:int(C)→R 被称为集合 C \mathcal{C} C 的倒数控制障碍函数(RCBF)。
这里, L f B ( x ) L_fB(x) LfB(x) 表示函数 B B B 关于向量场 f f f 的 李导数,即 L f B ( x ) = ∂ B ∂ x f ( x ) L_fB(x)=\frac{\partial B}{\partial x}f(x) LfB(x)=∂x∂Bf(x); L g B ( x ) L_gB(x) LgB(x) 表示函数 B B B 关于向量场 g g g 的 李导数,即 L g B ( x ) = ∂ B ∂ x g ( x ) L_gB(x)=\frac{\partial B}{\partial x}g(x) LgB(x)=∂x∂Bg(x)。
进一步,定义集合
K
rcbf
(
x
)
=
{
u
∈
U
∣
L
f
B
(
x
)
+
L
g
B
(
x
)
u
−
α
3
(
h
(
x
)
)
≤
0
}
K_{\operatorname{rcbf}}(x)=\{u\in U|L_fB(x)+L_gB(x)u - \alpha_3(h(x))\leq0\}
Krcbf(x)={u∈U∣LfB(x)+LgB(x)u−α3(h(x))≤0}
对于任意局部 Lipschitz 连续的控制器 u : I n t ( C ) → U u:Int(\mathcal{C})\to U u:Int(C)→U,只要 u ( x ) ∈ K rcbf ( x ) u(x)\in K_{\operatorname{rcbf}}(x) u(x)∈Krcbf(x),就能够保证集合 I n t ( C ) Int(\mathcal{C}) Int(C) 的前向不变性。这意味着对于任意初始状态 x 0 ∈ I n t ( C ) x_0\in Int(\mathcal{C}) x0∈Int(C),系统的状态 x ( t ) x(t) x(t) 在后续的时间里始终保持在集合 I n t ( C ) Int(\mathcal{C}) Int(C) 内。
(二)归零控制障碍函数(Zeroing Control Barrier Function, ZCBF)
同样针对仿射控制系统 x ˙ = f ( x ) + g ( x ) u \dot{x}=f(x)+g(x)u x˙=f(x)+g(x)u。
若存在扩展
K
\mathcal{K}
K 类函数
α
\alpha
α,使得对于所有
x
∈
D
x\in\mathcal{D}
x∈D(其中
C
⊆
D
⊂
R
n
\mathcal{C}\subseteq\mathcal{D}\subset\mathbb{R}^n
C⊆D⊂Rn),满足
sup
u
∈
U
[
L
f
h
(
x
)
+
L
g
h
(
x
)
u
+
α
(
h
(
x
)
)
]
≥
0
\sup_{u\in U}[L_fh(x)+L_gh(x)u+\alpha(h(x))]\geq0
u∈Usup[Lfh(x)+Lgh(x)u+α(h(x))]≥0
则函数
h
h
h 被定义为集合
D
\mathcal{D}
D 上的归零控制障碍函数(ZCBF)。
这里, L f h ( x ) = ∂ h ∂ x f ( x ) L_fh(x)=\frac{\partial h}{\partial x}f(x) Lfh(x)=∂x∂hf(x), L g h ( x ) = ∂ h ∂ x g ( x ) L_gh(x)=\frac{\partial h}{\partial x}g(x) Lgh(x)=∂x∂hg(x)。
定义集合
K
zcbf
(
x
)
=
{
u
∈
U
∣
L
f
h
(
x
)
+
L
g
h
(
x
)
u
+
α
(
h
(
x
)
)
≥
0
}
K_{\operatorname{zcbf}}(x)=\{u\in U|L_fh(x)+L_gh(x)u+\alpha(h(x))\geq0\}
Kzcbf(x)={u∈U∣Lfh(x)+Lgh(x)u+α(h(x))≥0}
对于任意局部 Lipschitz 连续的控制器 u : D → U u:\mathcal{D}\to U u:D→U,当 u ( x ) ∈ K zcbf ( x ) u(x)\in K_{\operatorname{zcbf}}(x) u(x)∈Kzcbf(x) 时,能够保证集合 C \mathcal{C} C 的前向不变性。也就是说,从集合 C \mathcal{C} C 内的任意初始状态出发,系统的状态在后续时间里都不会离开集合 C \mathcal{C} C。
二次规划(Quadratic Programming, QP)设计
(一)指数稳定控制李雅普诺夫函数(ES - CLF)
设有连续可微函数 V : X × Z → R V:X\times Z\to\mathbb{R} V:X×Z→R,若存在正常数 c 1 c_1 c1、 c 2 c_2 c2、 c 3 c_3 c3,使得对于所有 x = ( x 1 , x 2 ) ∈ X × Z x=(x_1,x_2)\in X\times Z x=(x1,x2)∈X×Z,满足以下两个条件:
- 函数值上下界条件
c 1 ∥ x 1 ∥ 2 ≤ V ( x ) ≤ c 2 ∥ x 1 ∥ 2 c_1\|x_1\|^2\leq V(x)\leq c_2\|x_1\|^2 c1∥x1∥2≤V(x)≤c2∥x1∥2 - 导数相关条件
inf u ∈ U [ L f V ( x ) + L g V ( x ) u + c 3 V ( x ) ] ≤ 0 \inf_{u\in U}[L_fV(x)+L_gV(x)u + c_3V(x)]\leq0 u∈Uinf[LfV(x)+LgV(x)u+c3V(x)]≤0
则函数 V V V 被称为指数稳定控制李雅普诺夫函数(ES - CLF)。
这里, L f V ( x ) = ∂ V ∂ x f ( x ) L_fV(x)=\frac{\partial V}{\partial x}f(x) LfV(x)=∂x∂Vf(x), L g V ( x ) = ∂ V ∂ x g ( x ) L_gV(x)=\frac{\partial V}{\partial x}g(x) LgV(x)=∂x∂Vg(x)。
定义集合
K
clf
(
x
)
=
{
u
∈
U
∣
L
f
V
(
x
)
+
L
g
V
(
x
)
u
+
c
3
V
(
x
)
≤
0
}
K_{\operatorname{clf}}(x)=\{u\in U|L_fV(x)+L_gV(x)u + c_3V(x)\leq0\}
Kclf(x)={u∈U∣LfV(x)+LgV(x)u+c3V(x)≤0}
对于局部 Lipschitz 控制器
u
:
X
×
Z
→
U
u:X\times Z\to U
u:X×Z→U,若
u
(
x
)
∈
K
clf
(
x
)
u(x)\in K_{\operatorname{clf}}(x)
u(x)∈Kclf(x),则系统的状态分量
x
1
x_1
x1 满足以下指数衰减关系:
∥
x
1
(
t
)
∥
≤
c
2
c
1
e
−
c
3
2
t
∥
x
1
(
0
)
∥
\|x_1(t)\|\leq\sqrt{\frac{c_2}{c_1}}e^{-\frac{c_3}{2}t}\|x_1(0)\|
∥x1(t)∥≤c1c2e−2c3t∥x1(0)∥
这表明系统的状态
x
1
x_1
x1 能够以指数速度收敛到零,体现了系统的指数稳定性。
(二)CLF - CBF QP
1. 基于 RCBF 的 QP
考虑如下形式的二次规划(QP)问题:
u
∗
(
x
)
=
arg
min
u
=
(
u
,
δ
)
∈
R
m
×
R
1
2
u
T
H
(
x
)
u
+
F
(
x
)
T
u
u^*(x)=\underset{u=(u,\delta)\in\mathbb{R}^m\times\mathbb{R}}{\arg\min}\frac{1}{2}u^TH(x)u + F(x)^Tu
u∗(x)=u=(u,δ)∈Rm×Rargmin21uTH(x)u+F(x)Tu
约束条件为
{
L
f
V
(
x
)
+
L
g
V
(
x
)
u
+
c
3
V
(
x
)
−
δ
≤
0
L
f
B
(
x
)
+
L
g
B
(
x
)
u
−
α
(
h
(
x
)
)
≤
0
\begin{cases} L_fV(x)+L_gV(x)u + c_3V(x)-\delta\leq0 \\ L_fB(x)+L_gB(x)u-\alpha(h(x))\leq0 \end{cases}
{LfV(x)+LgV(x)u+c3V(x)−δ≤0LfB(x)+LgB(x)u−α(h(x))≤0
其中:
- c 3 > 0 c_3 > 0 c3>0 是一个正常数;
- α \alpha α 是 K \mathcal{K} K 类函数;
- H ( x ) ∈ R ( m + 1 ) × ( m + 1 ) H(x)\in\mathbb{R}^{(m + 1)\times(m + 1)} H(x)∈R(m+1)×(m+1) 是正定矩阵,它决定了目标函数中二次项的权重;
- F ( x ) ∈ R m + 1 F(x)\in\mathbb{R}^{m + 1} F(x)∈Rm+1 是向量,用于调整目标函数的线性项。
在一定条件下,例如 f f f、 g g g、 B B B、 V V V、 H H H、 F F F 都满足局部 Lipschitz 连续,并且对于所有 x ∈ int ( C ) x\in\operatorname{int}(\mathcal{C}) x∈int(C),有 L g B ( x ) ≠ 0 L_gB(x)\neq0 LgB(x)=0,该 QP 问题的解 u ∗ ( x ) u^*(x) u∗(x) 在 int ( C ) \operatorname{int}(\mathcal{C}) int(C) 上是局部 Lipschitz 连续的,并且可以写成闭环解析式。这意味着可以根据系统当前的状态 x x x 实时计算出最优的控制输入 u ∗ ( x ) u^*(x) u∗(x)。
2. 基于 ZCBF 的 QP
考虑如下的 QP 问题:
u
∗
(
x
)
=
arg
min
u
=
(
u
,
δ
)
∈
R
m
×
R
1
2
u
T
H
(
x
)
u
+
F
T
(
x
)
u
u^*(x)=\underset{u=(u,\delta)\in\mathbb{R}^m\times\mathbb{R}}{\arg\min}\frac{1}{2}u^TH(x)u + F^T(x)u
u∗(x)=u=(u,δ)∈Rm×Rargmin21uTH(x)u+FT(x)u
约束条件为
{
L
f
V
(
x
)
+
L
g
V
(
x
)
u
+
c
3
V
(
x
)
−
δ
≤
0
−
L
f
h
(
x
)
−
L
g
h
(
x
)
u
−
α
(
h
(
x
)
)
≤
0
\begin{cases} L_fV(x)+L_gV(x)u + c_3V(x)-\delta\leq0 \\ -L_fh(x)-L_gh(x)u-\alpha (h(x))\leq0 \end{cases}
{LfV(x)+LgV(x)u+c3V(x)−δ≤0−Lfh(x)−Lgh(x)u−α(h(x))≤0
在类似的条件下,即
f
f
f、
g
g
g、
h
h
h、
V
V
V、
H
H
H、
F
F
F 都局部 Lipschitz 连续,并且对于所有
x
∈
D
x\in\mathcal{D}
x∈D,有
L
g
h
(
x
)
≠
0
L_gh(x)\neq0
Lgh(x)=0,该 QP 问题的解
u
∗
(
x
)
u^*(x)
u∗(x) 在
D
\mathcal{D}
D 上是局部 Lipschitz 连续的,同样可以写成闭环解析式。
通过上述基于 CLF - CBF 的 QP 设计,能够在满足安全约束(由 CBF 保证)的同时,实现系统的控制目标(由 CLF 引导)。在实际应用中,可以根据具体系统的特点和需求,灵活选择和调整相关参数,如 c 1 c_1 c1、 c 2 c_2 c2、 c 3 c_3 c3、 α \alpha α、 H ( x ) H(x) H(x) 和 F ( x ) F(x) F(x) 等,以达到最佳的控制效果。
通过上述基于CLF - CBF的QP设计,能够在满足安全约束(由CBF保证)的同时,实现系统的控制目标(由CLF引导),为安全关键系统的控制提供了一种有效的方法。在实际应用中,可根据具体系统的特点和需求,灵活选择和调整相关参数,以达到最佳的控制效果。
参考文献
[1] Ames A D , Xu X , Grizzle J W ,et al.Control Barrier Function Based Quadratic Programs with Application to Automotive Safety Systems[J]. 2016.DOI:10.48550/arXiv.1609.06408.