??共识算法的基本思想是对每辆车的信息状态施加类似的动力学。如果车辆之间的通信网络允许连续通信,或者如果通信带宽足够大,则使用微分方程更新每辆车的信息状态。另一方面,如果通信数据以离散数据包的形式到达,则使用差异方程来建模信息状态更新。本节总结了一些基本的共识算法,每辆车使用一阶微分方程和一阶差分方程来更新标量信息状态。 ??假设团队中有 n n n 车辆,团队通信拓扑从有向图表示 G n ? ( V n , E n ) \mathcal{G}_{n} \triangleq\left(\mathcal{V}_{n}, \mathcal{E}_{n}\right) Gn?(Vn,En
)
,其中 V = { 1 , 2 , . . . , n } \mathcal{V}=\{1,2,...,n\} V={
1,2,...,n} 是节点集合, E n ⊆ V n × V n \mathcal{E}_{n} \subseteq \mathcal{V}_{n} \times \mathcal{V}_{n} En⊆Vn×Vn 表示边的集合。。 最常见的连续时间共识算法如下: x ˙ i ( t ) = − ∑ j = 1 n a i j ( t ) [ x i ( t ) − x j ( t ) ] , i = 1 , … , n 为 什 么 是 这 个 形 式 , 文 献 69 , 97 (1.1) \dot{x}_{i}(t)=-\sum_{j=1}^{n} a_{i j}(t)\left[x_{i}(t)-x_{j}(t)\right], \quad i=1, \ldots, n \tag{1.1} \color{red}{为什么是这个形式,文献 {69,97}} x˙i(t)=−j=1∑naij(t)[xi(t)−xj(t)],i=1,…,n为什么是这个形式,文献69,97(1.1) 其中 a i j ( t ) a_{i j}(t) aij(t) 是在时刻 t t t 与 G n \mathcal{G}_n Gn 相关联邻接矩阵 A n ∈ R n × n \mathcal{A}_n \in \mathbb{R}^{n \times n} An∈Rn×n 的第 ( i , j ) (i,j) (i,j) 个输入并且 x i t x_i{t} xit 是第 i i i 辆车的信息状态。 设定 a i j = 0 a_{i j}=0 aij=0 表示车辆 i i i 不能接收到第 j j j 个车辆传输到的信息。(1)的一个结果是车辆 i i i 的信息状态 x i ( t ) x_i(t) xi(t) 被驱动靠近其邻居的信息状态。关键的收敛问题是什么时候所有车辆的信息状态都收敛到一个共同的值?(1) 式并不指定所期望的特点信息状态,如果通讯拓扑是固定的,且 a i j ( t ) a_{i j}(t) aij(t) 是时不变的,那么公共渐近值是所有初始信息状态的线性组合。一般来说,只能保证公共值是初始信息状态的凸组合。 共识算法(1)可写成如下的矩阵形式: x ˙ ( t ) = − L n ( t ) x ( t ) \dot{x}(t)=-\mathcal{L}_n(t)x(t) x˙(t)=−Ln(t)x(t) 其中 x = [ x 1 , x 2 , . . . , x n ] T x=[x_1,x_2,...,x_n]^T x=[x1,x2,...,xn]T 是信息状态且 L n ( t ) = [ l i j ( t ) ] ∈ R n × n \mathcal{L}_n(t)=[\mathcal{l}_{i j}(t)] \in \mathbb{R}^{n \times n} Ln(t)=[lij(t)]∈Rn×n 是与 G n \mathcal{G}_n Gn 相关的非对称拉普拉斯矩阵。多车辆完成或者达到共识状态是如果对于所有的 x i ( 0 ) x_i(0) xi(0) 和所有的 i , j = 1 , 2 , . . . , n i,j=1,2,...,n i,j=1,2,...,n,当 t → ∞ t \rightarrow \infty t→∞时, ∣ x i ( t ) − x j ( t ) ∣ → 0 |x_i(t)-x_j(t)| \rightarrow 0 ∣xi(t)−xj(t)∣→0。 当车辆间的通信发生在离散时刻时,将使用差分方程来更新信息状态,最常见的离散时间共识算法的形式是这样: x i [ k + 1 ] = ∑ j = 1 n d i j [ k ] x j [ k ] , i = 1 , … , n 为 什 么 是 这 个 形 式 文 献 97 , 145 (1.2) x_{i}[k+1]=\sum_{j=1}^{n} d_{i j}[k] x_{j}[k], \quad i=1, \ldots, n \tag{1.2} \color{red}{为什么是这个形式 文献{97,145}} xi[k+1]=j=1∑ndij[k]xj[k],i=1,…,n为什么是这个形式文献97,145(1.2) 其中 k k k 定义通信事件; d i j [ k ] d_{i j}[k] dij[k] 是在离散时刻指示 k k k 下的约随机矩阵 D = [ d i j ] ∈ R n × n \mathcal{D}=[d_{i j}] \in \mathbb{R}^{n \times n} D=[dij]∈Rn×n 且对于所有的 i = 1 , 2 , . . . , n i=1,2,...,n i=1,2,...,n 而言,假定 d i i [ k ] > 0 d_{i i}[k]>0 dii[k]>0 并且 d i j [ k ] > 0 d_{i j}[k]>0 dij[k]>0 如果信息流从车辆 j j j 到达车辆 i i i 并且否则 d i j [ k ] = 0 d_{i j}[k]=0 dij[k]=0。 直观地说,每辆车的信息状态被更新为其当前状态和相邻车辆当前状态的加权平均值。请注意,如果车辆在那一刻不与其他车辆交换信息,则它会保持其当前的信息状态。离散时间一致算法以矩阵形式写为: x [ k + 1 ] = D [ k ] x [ k ] x[k+1]=\mathcal{D}[k] x[k] x[k+1]=D[k]x[k] 与连续时间情况类似,如果对于所有 x i [ 0 ] x_i[0] xi[0] 和所有 i , j = 1 , . . . , n i,j=1,...,n i,j=1,...,n,当 k → ∞ k→∞ k→∞时, ∣ x i [ k ] − x j [ k ] ∣ → 0 |x_i[k]−x_j[k]|→0 ∣x