概述
[分布式控制] (3)简单分布式事件触发控制
- [分布式控制] (3)简单分布式事件触发控制
- 1 前言
- 2 分布式事件触发控制
- 3 稳定性分析
[分布式控制] (3)简单分布式事件触发控制
事件触发控制(Event-triggered Control,ETC)是与传统的连续的周期控制不同的一类控制方法,事件触发控制不是在每个周期时都去计算和改变控制输入,而是在一些特定的、由系统稳定关系决定的一些特定时刻,去计算或改变控制输入。最早是K.Z Arzen教授和K.Astrom教授在首次提出的。
事件触发控制一般由两部分组成,第一是反馈控制器,第二是触发条件,也就是什么时候区更新控制输入。
本文根据笔者的经验和浅薄的知识,通俗易懂的介绍一个笔者认为较为经典的、容易理解的和一个分布式事件触发控制。
建议首先学习图论的预备知识以及简单的一致性理论:
[分布式控制] (1) 图论基础
[分布式控制] (2) 经典一阶系统的一致性问题
1 前言
经过多年的发展,分布式事件触发控制已经衍生出了很多,根据笔者的经验,大致有以下五种主要类别:
基于事件的控制(Event-Based Control,ETC)
基于模型的事件触发控制(Model-Based Event-Triggered Control)
基于采样数据的事件触发控制(Sampled-Data-Based Event-Triggered Control)
自触发控制(Self-Triggered Control)
动态事件触发控制(Dynamic Event-Triggered Control)
如果您想深入了解他们差异细节和讨论的不同问题,您可以参考下篇这篇综述:
Ding L, Han Q, Ge X, et al. An Overview of Recent Advances in Event-Triggered Consensus of Multiagent Systems[J]. IEEE Transactions on Cybernetics, 2018,48(4):1110-1123.
不过本文仅仅介绍其中一个笔者认为较为经典的、容易理解的和一个分布式事件触发控制,是基于Dimos V. Dimarogonas教授2012年的一篇TAC:
Dimarogonas D V, Frazzoli E, Johansson K H. Distributed Event-Triggered Control for Multi-Agent Systems[J]. IEEE Transactions on Automatic Control, 2012,57(5):1291-1297.
2 分布式事件触发控制
考虑无向图。
系统方程:
x
˙
i
=
u
i
{{dot{x}}_{i}}={{u}_{i}}
x˙i=ui事件触发控制器:
u
i
(
t
)
=
q
i
(
t
)
=
−
k
∑
j
∈
N
i
(
x
i
(
t
k
i
)
−
x
j
(
t
k
′
(
t
)
j
)
)
t
∈
[
t
k
i
,
t
k
+
1
i
)
begin{matrix} {{u}_{i}}left( t right)={{q}_{i}}left( t right)=-ksumlimits_{jin {{N}_{i}}}^{{}}{left( {{x}_{i}}left( t_{k}^{i} right)-{{x}_{j}}left( t_{{k}'left( t right)}^{j} right) right)} & tin left[ t_{k}^{i},t_{k+1}^{i} right) \ end{matrix}
ui(t)=qi(t)=−kj∈Ni∑(xi(tki)−xj(tk′(t)j))t∈[tki,tk+1i)
切换条件:
e
i
2
(
t
)
≤
σ
2
k
l
i
j
q
^
i
(
t
)
e_{i}^{2}left( t right)le frac{sigma }{2k{{l}_{ij}}}{{hat{q}}_{i}}left( t right)
ei2(t)≤2klijσq^i(t)
其中:
0
<
σ
<
1
0<sigma <1
0<σ<1
e
i
(
t
)
=
x
i
(
t
k
i
)
−
x
i
(
t
)
t
∈
[
t
k
i
,
t
k
+
1
i
)
begin{matrix} {{e}_{i}}left( t right)={{x}_{i}}left( t_{k}^{i} right)-{{x}_{i}}left( t right) & tin left[ t_{k}^{i},t_{k+1}^{i} right) \ end{matrix}
ei(t)=xi(tki)−xi(t)t∈[tki,tk+1i)
对于
t
∈
[
t
k
i
,
t
k
+
1
i
)
tin left[ t_{k}^{i},t_{k+1}^{i} right)
t∈[tki,tk+1i),
t
k
′
(
t
)
j
t_{{k}'left( t right)}^{j}
tk′(t)j为智能体
j
j
j上次事件触发更新事件。因此,控制
u
i
(
t
)
{{u}_{i}}left( t right)
ui(t)会在自身时刻事件触发
t
0
i
,
t
1
i
,
…
t_{0}^{i},t_{1}^{i},ldots
t0i,t1i,…,以及其邻居事件触发更新时刻
t
0
j
,
t
1
j
,
…
t_{0}^{j},t_{1}^{j},ldots
t0j,t1j,… ,进行更新。值得注意的是,智能体
i
i
i和
j
j
j一般不会在同一时刻发生事件触发,因此
t
k
i
t_{k}^{i}
tki和
t
k
j
t_{k}^{j}
tkj表示的是不同时刻。
好了,这就是Dimos V. Dimarogonas教授提出的控制律,可以发现,输入
u
i
(
t
)
{{u}_{i}}left( t right)
ui(t)是非连续的,因为
x
i
(
t
k
i
)
{{x}_{i}}left( t_{k}^{i} right)
xi(tki)和
x
j
(
t
k
j
)
{{x}_{j}}left( t_{k}^{j} right)
xj(tkj)是非连续的。
下面进行理论层面的分析。
3 稳定性分析
考虑Lyapunov函数:
V
=
1
2
x
T
(
I
n
−
1
n
1
T
1
)
x
=
1
2
∑
i
=
1
n
(
x
i
(
t
)
−
x
ˉ
(
0
)
)
2
begin{aligned} & V=frac{1}{2}{{mathbf{x}}^{T}}left( {{I}_{n}}-frac{1}{n}{{mathbf{1}}^{T}}mathbf{1} right)mathbf{x} \ & =frac{1}{2}sumlimits_{i=1}^{n}{{{left( {{x}_{i}}left( t right)-bar{x}left( 0 right) right)}^{2}}} end{aligned}
V=21xT(In−n11T1)x=21i=1∑n(xi(t)−xˉ(0))2其中
x
ˉ
(
0
)
=
1
n
∑
i
=
1
n
x
i
(
0
)
bar{x}left( 0 right)=frac{1}{n}sumlimits_{i=1}^{n}{{{x}_{i}}left( 0 right)}
xˉ(0)=n1i=1∑nxi(0)
求导:
V
˙
=
∑
i
=
1
n
(
x
i
(
t
)
−
x
ˉ
(
0
)
)
x
˙
i
(
t
)
=
∑
i
=
1
n
x
i
(
t
)
∑
j
=
1
n
−
k
l
i
j
x
^
j
(
t
)
=
−
∑
i
=
1
n
(
x
^
i
(
t
)
−
e
i
(
t
)
)
∑
j
=
1
n
k
l
i
j
x
^
j
(
t
)
=
−
∑
i
=
1
n
q
^
i
(
t
)
−
∑
i
=
1
n
∑
j
=
1
n
e
i
(
t
)
k
l
i
j
x
^
j
(
t
)
=
−
∑
i
=
1
n
q
^
i
(
t
)
−
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
e
i
(
t
)
k
l
i
j
(
x
^
j
(
t
)
−
x
^
i
(
t
)
)
≤
−
∑
i
=
1
n
q
^
i
(
t
)
+
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
k
l
i
j
e
i
2
(
t
)
+
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
1
4
k
l
i
j
(
x
^
j
(
t
)
−
x
^
i
(
t
)
)
2
=
−
∑
i
=
1
n
1
2
q
^
i
(
t
)
+
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
k
l
i
j
e
i
2
(
t
)
begin{aligned} & dot{V}=sumlimits_{i=1}^{n}{left( {{x}_{i}}left( t right)-bar{x}left( 0 right) right){{{dot{x}}}_{i}}left( t right)} \ & =sumlimits_{i=1}^{n}{{{x}_{i}}left( t right)sumlimits_{j=1}^{n}{-k{{l}_{ij}}{{{hat{x}}}_{j}}left( t right)}} \ & =-sumlimits_{i=1}^{n}{left( {{{hat{x}}}_{i}}left( t right)-{{e}_{i}}left( t right) right)sumlimits_{j=1}^{n}{k{{l}_{ij}}{{{hat{x}}}_{j}}left( t right)}} \ & =-sumlimits_{i=1}^{n}{{{{hat{q}}}_{i}}left( t right)}-sumlimits_{i=1}^{n}{sumlimits_{j=1}^{n}{{{e}_{i}}left( t right)k{{l}_{ij}}{{{hat{x}}}_{j}}left( t right)}} \ & =-sumlimits_{i=1}^{n}{{{{hat{q}}}_{i}}left( t right)}-sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{{{e}_{i}}left( t right)k{{l}_{ij}}left( {{{hat{x}}}_{j}}left( t right)-{{{hat{x}}}_{i}}left( t right) right)}} \ & le -sumlimits_{i=1}^{n}{{{{hat{q}}}_{i}}left( t right)}+sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{k{{l}_{ij}}e_{i}^{2}left( t right)}}+sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{frac{1}{4}k{{l}_{ij}}{{left( {{{hat{x}}}_{j}}left( t right)-{{{hat{x}}}_{i}}left( t right) right)}^{2}}}} \ & =-sumlimits_{i=1}^{n}{frac{1}{2}{{{hat{q}}}_{i}}left( t right)}+sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{k{{l}_{ij}}e_{i}^{2}left( t right)}} end{aligned}
V˙=i=1∑n(xi(t)−xˉ(0))x˙i(t)=i=1∑nxi(t)j=1∑n−klijx^j(t)=−i=1∑n(x^i(t)−ei(t))j=1∑nklijx^j(t)=−i=1∑nq^i(t)−i=1∑nj=1∑nei(t)klijx^j(t)=−i=1∑nq^i(t)−i=1∑nj=1,i=j∑nei(t)klij(x^j(t)−x^i(t))≤−i=1∑nq^i(t)+i=1∑nj=1,i=j∑nklijei2(t)+i=1∑nj=1,i=j∑n41klij(x^j(t)−x^i(t))2=−i=1∑n21q^i(t)+i=1∑nj=1,i=j∑nklijei2(t)
其中:
∑
i
=
1
n
q
^
i
(
t
)
=
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
1
2
k
l
i
j
(
x
^
j
(
t
)
−
x
^
i
(
t
)
)
2
=
k
x
^
T
(
t
)
L
x
^
(
t
)
sumlimits_{i=1}^{n}{{{{hat{q}}}_{i}}left( t right)}=sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{frac{1}{2}k{{l}_{ij}}{{left( {{{hat{x}}}_{j}}left( t right)-{{{hat{x}}}_{i}}left( t right) right)}^{2}}}}=k{{mathbf{hat{x}}}^{T}}left( t right)Lmathbf{hat{x}}left( t right)
i=1∑nq^i(t)=i=1∑nj=1,i=j∑n21klij(x^j(t)−x^i(t))2=kx^T(t)Lx^(t)
e
i
(
t
)
(
x
^
j
(
t
)
−
x
^
i
(
t
)
)
≤
e
i
2
(
t
)
+
(
x
^
j
(
t
)
−
x
^
i
(
t
)
)
2
{{e}_{i}}left( t right)left( {{{hat{x}}}_{j}}left( t right)-{{{hat{x}}}_{i}}left( t right) right)le e_{i}^{2}left( t right)+{{left( {{{hat{x}}}_{j}}left( t right)-{{{hat{x}}}_{i}}left( t right) right)}^{2}}
ei(t)(x^j(t)−x^i(t))≤ei2(t)+(x^j(t)−x^i(t))2
容易知道,该系统在控制时必然满足切换条件
e
i
2
(
t
)
≤
σ
2
k
l
i
j
q
^
i
(
t
)
e_{i}^{2}left( t right)le frac{sigma }{2k{{l}_{ij}}}{{hat{q}}_{i}}left( t right)
ei2(t)≤2klijσq^i(t),那么代入切换条件,即有:
V
˙
≤
−
∑
i
=
1
n
1
2
q
^
i
(
t
)
+
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
k
l
i
j
e
i
2
(
t
)
≤
−
1
2
(
1
−
σ
)
x
^
T
(
t
)
L
x
^
(
t
)
≤
0
begin{aligned} & dot{V}le -sumlimits_{i=1}^{n}{frac{1}{2}{{{hat{q}}}_{i}}left( t right)}+sumlimits_{i=1}^{n}{sumlimits_{j=1,ine j}^{n}{k{{l}_{ij}}e_{i}^{2}left( t right)}} \ & le -frac{1}{2}left( 1-sigma right){{{mathbf{hat{x}}}}^{T}}left( t right)Lmathbf{hat{x}}left( t right)le text{0} end{aligned}
V˙≤−i=1∑n21q^i(t)+i=1∑nj=1,i=j∑nklijei2(t)≤−21(1−σ)x^T(t)Lx^(t)≤0
显然,是渐近稳定的。
最后
以上就是甜蜜冬日为你收集整理的[分布式控制浅述] (3)简单分布式事件触发控制[分布式控制浅述] (3)简单分布式事件触发控制的全部内容,希望文章能够帮你解决[分布式控制浅述] (3)简单分布式事件触发控制[分布式控制浅述] (3)简单分布式事件触发控制所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复