x
˙
0
(
t
)
=
u
0
(
t
)
(1)
\begin{aligned} \dot{x}_0 (t) &= u_0 (t) \end{aligned} \tag{1}
x˙0(t)=u0(t)(1)
跟随者
i
i
i 的动态方程描述为:
x
˙
i
(
t
)
=
u
i
(
t
)
(2)
\begin{aligned} \dot{x}_i (t) &= u_i (t) \end{aligned} \tag{2}
x˙i(t)=ui(t)(2)
3 主要结果
针对领导跟随多智能体系统(1)~(2),给出如下控制协议
u
i
(
t
)
=
u
0
(
t
)
−
γ
(
∑
j
∈
N
i
a
i
j
(
x
i
(
t
)
−
x
j
(
t
)
)
+
a
b
i
(
x
i
(
t
)
−
x
0
(
t
)
)
)
(3)
\begin{aligned} u_i (t) &= u_0 (t) - \gamma \left( \sum_{j \in N_i} a_{ij} (x_i(t) - x_j(t)) + a b_i (x_i(t) - x_0(t)) \right) \end{aligned} \tag{3}
ui(t)=u0(t)−γj∈Ni∑aij(xi(t)−xj(t))+abi(xi(t)−x0(t))(3)
3.1 集中式事件触发机制下的一致性
原文中没有说清楚这一步怎么来的,所以我做了两种方式
第一种是将
e
=
[
e
1
,
e
2
,
e
3
,
e
4
,
e
5
,
e
6
]
′
e = [e_1, e_2, e_3, e_4, e_5, e_6]'
e=[e1,e2,e3,e4,e5,e6]′ 然后带入到式 (8)
对应程序 main_centralization.m ,效果如下
Times of agent 1 trigger: 144
Times of agent 2 trigger: 144
Times of agent 3 trigger: 144
Times of agent 4 trigger: 144
Times of agent 5 trigger: 144
Times of agent 6 trigger: 144
第二种是依次将
e
1
,
e
2
,
e
3
,
e
4
,
e
5
,
e
6
e_1, e_2, e_3, e_4, e_5, e_6
e1,e2,e3,e4,e5,e6 然后带入到式 (8),做或运算判断,即任何一个条件达到都触发
对应程序 main_centralization2.m ,效果如下
Times of agent 1 trigger: 152
Times of agent 2 trigger: 152
Times of agent 3 trigger: 152
Times of agent 4 trigger: 152
Times of agent 5 trigger: 152
Times of agent 6 trigger: 152
3.2 分散式事件触发机制下的一致性
main_distributed.m 程序效果如下
Times of agent 1 trigger: 300
Times of agent 2 trigger: 299
Times of agent 3 trigger: 300
Times of agent 4 trigger: 299
Times of agent 5 trigger: 299
Times of agent 6 trigger: 300
main_distributed2.m 程序效果如下
Times of agent 1 trigger: 111
Times of agent 2 trigger: 154
Times of agent 3 trigger: 163
Times of agent 4 trigger: 292
Times of agent 5 trigger: 293
Times of agent 6 trigger: 224