原文地址: [1]郭伟强. 基于一致性理论的无人机编队控制器设计[D].哈尔滨工业大学,2013.

2013_基于一致性理论的无人机编队控制器设计_郭伟强

  • 3.3 一致性理论
  • 3.4 控制方案设计
    • 3.4.1 一致性协议设计
    • 3.4.2 稳定性分析
  • 3.5 仿真实验与分析
    • 3.5.1 队形保持

3.3 一致性理论

所谓一致性,从控制理论的角度来说,就是指各智能体的状态变量在一定的控制协议和控制器的作用下,最终达到一致。

3.4 控制方案设计

3.4.1 一致性协议设计

本章中我们设计具有时变通信时滞的控制协议为
ui=q˙d−k1∑pi∈Ni(pi(t−τ(t))−pj(t−τ(t))−rij)−k2∑qj∈Niaij(qi(t−τ(t))−qj(t−τ(t)))−k3hi(qi−qd)(3-3)\begin{aligned} u_i &= \dot{q}_d \\ &- k_1 \sum_{p_i\in N_i} (p_i (t-\tau(t)) - p_j (t-\tau(t)) - r_{ij}) \\ &- k_2 \sum_{q_j\in N_i} a_{ij} (q_i(t-\tau(t)) - q_j(t-\tau(t))) \\ &- k_3 h_i (q_i - q_d) \tag{3-3} \end{aligned}ui​​=q˙​d​−k1​pi​∈Ni​∑​(pi​(t−τ(t))−pj​(t−τ(t))−rij​)−k2​qj​∈Ni​∑​aij​(qi​(t−τ(t))−qj​(t−τ(t)))−k3​hi​(qi​−qd​)​(3-3)

可能是由于编写时不小心,感觉协议中应该再加上红色部分 aij\red{a_{ij}}aij​ 才正确(2021-05-28)。修改版如下:
ui=q˙d−k1∑pi∈Niaij(pi(t−τ(t))−pj(t−τ(t))−rij)−k2∑qj∈Niaij(qi(t−τ(t))−qj(t−τ(t)))−k3hi(qi−qd)(3-3)\begin{aligned} u_i &= \dot{q}_d \\ &- k_1 \sum_{p_i\in N_i} \red{a_{ij}} (p_i (t-\tau(t)) - p_j (t-\tau(t)) - r_{ij}) \\ &- k_2 \sum_{q_j\in N_i} a_{ij} (q_i(t-\tau(t)) - q_j(t-\tau(t))) \\ &- k_3 h_i (q_i - q_d) \tag{3-3} \end{aligned}ui​​=q˙​d​−k1​pi​∈Ni​∑​aij​(pi​(t−τ(t))−pj​(t−τ(t))−rij​)−k2​qj​∈Ni​∑​aij​(qi​(t−τ(t))−qj​(t−τ(t)))−k3​hi​(qi​−qd​)​(3-3)

精简一下,暂时忽略掉时滞作用,方便观察协议的关键因素:
ui=q˙d−k1∑pi∈Ni(pi−pj−rij)−k2∑qj∈Niaij(qi−qj)−k3hi(qi−qd)(3-3)\begin{aligned} u_i &= \dot{q}_d \\ &- k_1 \sum_{p_i\in N_i} (p_i - p_j - r_{ij}) \\ &- k_2 \sum_{q_j\in N_i} a_{ij} (q_i - q_j) \\ &- k_3 h_i (q_i - q_d) \tag{3-3} \end{aligned}ui​​=q˙​d​−k1​pi​∈Ni​∑​(pi​−pj​−rij​)−k2​qj​∈Ni​∑​aij​(qi​−qj​)−k3​hi​(qi​−qd​)​(3-3)


Suppose n=4n=4n=4,then
[u1u2u3u4]=[q˙dq˙dq˙dq˙d]−k1[a12(p1−p2−r12)+a13(p1−p3−r13)+a14(p1−p4−r14)a21(p2−p1−r21)+a23(p2−p3−r23)+a24(p2−p4−r24)a31(p3−p1−r31)+a32(p3−p2−r32)+a34(p3−p4−r34)a41(p4−p1−r41)+a42(p4−p2−r42)+a43(p4−p3−r43)]−k2[a12(q1−q2)+a13(q1−q3)+a14(q1−q4)a21(q2−q1)+a23(q2−q3)+a24(q2−q4)a31(q3−q1)+a32(q3−q2)+a34(q3−q4)a41(q4−q1)+a42(q4−q2)+a43(q4−q3)]−k3[h1(q1−qd)h2(q2−qd)h3(q3−qd)h4(q4−qd)]\begin{aligned} \left[\begin{matrix} u_1 \\ u_2 \\ u_3 \\ u_4 \\ \end{matrix}\right] &= \left[\begin{matrix} \dot{q}_d \\ \dot{q}_d \\ \dot{q}_d \\ \dot{q}_d \\ \end{matrix}\right] \\ &-k_1 \left[\begin{matrix} a_{12}(p_1 - p_2 - r_{12}) + a_{13}(p_1 - p_3 - r_{13}) + a_{14}(p_1 - p_4 - r_{14}) \\ a_{21}(p_2 - p_1 - r_{21}) + a_{23}(p_2 - p_3 - r_{23}) + a_{24}(p_2 - p_4 - r_{24}) \\ a_{31}(p_3 - p_1 - r_{31}) + a_{32}(p_3 - p_2 - r_{32}) + a_{34}(p_3 - p_4 - r_{34}) \\ a_{41}(p_4 - p_1 - r_{41}) + a_{42}(p_4 - p_2 - r_{42}) + a_{43}(p_4 - p_3 - r_{43}) \\ \end{matrix}\right] \\ &-k_2 \left[\begin{matrix} a_{12}(q_1 - q_2) + a_{13}(q_1 - q_3) + a_{14}(q_1 - q_4) \\ a_{21}(q_2 - q_1) + a_{23}(q_2 - q_3) + a_{24}(q_2 - q_4) \\ a_{31}(q_3 - q_1) + a_{32}(q_3 - q_2) + a_{34}(q_3 - q_4) \\ a_{41}(q_4 - q_1) + a_{42}(q_4 - q_2) + a_{43}(q_4 - q_3) \\ \end{matrix}\right] \\ &-k_3 \left[\begin{matrix} h_1(q_1 - q_d) \\ h_2(q_2 - q_d) \\ h_3(q_3 - q_d) \\ h_4(q_4 - q_d) \\ \end{matrix}\right] \\ \end{aligned}⎣⎢⎢⎡​u1​u2​u3​u4​​⎦⎥⎥⎤​​=⎣⎢⎢⎡​q˙​d​q˙​d​q˙​d​q˙​d​​⎦⎥⎥⎤​−k1​⎣⎢⎢⎡​a12​(p1​−p2​−r12​)+a13​(p1​−p3​−r13​)+a14​(p1​−p4​−r14​)a21​(p2​−p1​−r21​)+a23​(p2​−p3​−r23​)+a24​(p2​−p4​−r24​)a31​(p3​−p1​−r31​)+a32​(p3​−p2​−r32​)+a34​(p3​−p4​−r34​)a41​(p4​−p1​−r41​)+a42​(p4​−p2​−r42​)+a43​(p4​−p3​−r43​)​⎦⎥⎥⎤​−k2​⎣⎢⎢⎡​a12​(q1​−q2​)+a13​(q1​−q3​)+a14​(q1​−q4​)a21​(q2​−q1​)+a23​(q2​−q3​)+a24​(q2​−q4​)a31​(q3​−q1​)+a32​(q3​−q2​)+a34​(q3​−q4​)a41​(q4​−q1​)+a42​(q4​−q2​)+a43​(q4​−q3​)​⎦⎥⎥⎤​−k3​⎣⎢⎢⎡​h1​(q1​−qd​)h2​(q2​−qd​)h3​(q3​−qd​)h4​(q4​−qd​)​⎦⎥⎥⎤​​

其中,第二部分
[a12(p1−p2−r12)+a13(p1−p3−r13)+a14(p1−p4−r14)a21(p2−p1−r21)+a23(p2−p3−r23)+a24(p2−p4−r24)a31(p3−p1−r31)+a32(p3−p2−r32)+a34(p3−p4−r34)a41(p4−p1−r41)+a42(p4−p2−r42)+a43(p4−p3−r43)]=[a12(p1−p2)−a12(r12)+a13(p1−p3)−a13(r13)+a14(p1−p4)−a14(r14)a21(p2−p1)−a21(r21)+a23(p2−p3)−a23(r23)+a24(p2−p4)−a24(r24)a31(p3−p1)−a31(r31)+a32(p3−p2)−a32(r32)+a34(p3−p4)−a34(r34)a41(p4−p1)−a41(r41)+a42(p4−p2)−a42(r42)+a43(p4−p3)−a43(r43)]=[a12(p1−p2)+a13(p1−p3)+a14(p1−p4)−a12(r12)−a13(r13)−a14(r14)a21(p2−p1)+a23(p2−p3)+a24(p2−p4)−a21(r21)−a23(r23)−a24(r24)a31(p3−p1)+a32(p3−p2)+a34(p3−p4)−a31(r31)−a32(r32)−a34(r34)a41(p4−p1)+a42(p4−p2)+a43(p4−p3)−a41(r41)−a42(r42)−a43(r43)]=[a12(p1−p2)+a13(p1−p3)+a14(p1−p4)a21(p2−p1)+a23(p2−p3)+a24(p2−p4)a31(p3−p1)+a32(p3−p2)+a34(p3−p4)a41(p4−p1)+a42(p4−p2)+a43(p4−p3)]−[a12(r12)+a13(r13)+a14(r14)a21(r21)+a23(r23)+a24(r24)a31(r31)+a32(r32)+a34(r34)a41(r41)+a42(r42)+a43(r43)]=L∗p−[a12(r12)+a13(r13)+a14(r14)a21(r21)+a23(r23)+a24(r24)a31(r31)+a32(r32)+a34(r34)a41(r41)+a42(r42)+a43(r43)]\begin{aligned} & \left[\begin{matrix} a_{12}(p_1 - p_2 - r_{12}) + a_{13}(p_1 - p_3 - r_{13}) + a_{14}(p_1 - p_4 - r_{14}) \\ a_{21}(p_2 - p_1 - r_{21}) + a_{23}(p_2 - p_3 - r_{23}) + a_{24}(p_2 - p_4 - r_{24}) \\ a_{31}(p_3 - p_1 - r_{31}) + a_{32}(p_3 - p_2 - r_{32}) + a_{34}(p_3 - p_4 - r_{34}) \\ a_{41}(p_4 - p_1 - r_{41}) + a_{42}(p_4 - p_2 - r_{42}) + a_{43}(p_4 - p_3 - r_{43}) \\ \end{matrix}\right] \\ &= \left[\begin{matrix} a_{12}(p_1 - p_2) - a_{12}(r_{12}) + a_{13}(p_1 - p_3) - a_{13}(r_{13}) + a_{14}(p_1 - p_4) -a_{14}( r_{14}) \\ a_{21}(p_2 - p_1) - a_{21}(r_{21}) + a_{23}(p_2 - p_3) - a_{23}(r_{23}) + a_{24}(p_2 - p_4) - a_{24}(r_{24}) \\ a_{31}(p_3 - p_1) - a_{31}(r_{31}) + a_{32}(p_3 - p_2) - a_{32}(r_{32}) + a_{34}(p_3 - p_4) - a_{34}(r_{34}) \\ a_{41}(p_4 - p_1) - a_{41}(r_{41}) + a_{42}(p_4 - p_2) - a_{42}(r_{42}) + a_{43}(p_4 - p_3) - a_{43}(r_{43}) \\ \end{matrix}\right] \\ &= \left[\begin{matrix} a_{12}(p_1 - p_2) + a_{13}(p_1 - p_3) + a_{14}(p_1 - p_4) ~~~ - a_{12}(r_{12})- a_{13}(r_{13}) -a_{14}( r_{14}) \\ a_{21}(p_2 - p_1) + a_{23}(p_2 - p_3) + a_{24}(p_2 - p_4) ~~~ - a_{21}(r_{21})- a_{23}(r_{23}) - a_{24}(r_{24}) \\ a_{31}(p_3 - p_1) + a_{32}(p_3 - p_2) + a_{34}(p_3 - p_4) ~~~ - a_{31}(r_{31}) - a_{32}(r_{32}) - a_{34}(r_{34}) \\ a_{41}(p_4 - p_1) + a_{42}(p_4 - p_2) + a_{43}(p_4 - p_3) ~~~ - a_{41}(r_{41}) - a_{42}(r_{42}) - a_{43}(r_{43}) \\ \end{matrix}\right] \\ &= \left[\begin{matrix} a_{12}(p_1 - p_2) + a_{13}(p_1 - p_3) + a_{14}(p_1 - p_4) \\ a_{21}(p_2 - p_1) + a_{23}(p_2 - p_3) + a_{24}(p_2 - p_4) \\ a_{31}(p_3 - p_1) + a_{32}(p_3 - p_2) + a_{34}(p_3 - p_4) \\ a_{41}(p_4 - p_1) + a_{42}(p_4 - p_2) + a_{43}(p_4 - p_3) \\ \end{matrix}\right] - \left[\begin{matrix} a_{12}(r_{12}) + a_{13}(r_{13}) + a_{14}( r_{14}) \\ a_{21}(r_{21}) + a_{23}(r_{23}) + a_{24}(r_{24}) \\ a_{31}(r_{31}) + a_{32}(r_{32}) + a_{34}(r_{34}) \\ a_{41}(r_{41}) + a_{42}(r_{42}) + a_{43}(r_{43}) \\ \end{matrix}\right] \\ &= L*p- \left[\begin{matrix} a_{12}(r_{12}) + a_{13}(r_{13}) + a_{14}( r_{14}) \\ a_{21}(r_{21}) + a_{23}(r_{23}) + a_{24}(r_{24}) \\ a_{31}(r_{31}) + a_{32}(r_{32}) + a_{34}(r_{34}) \\ a_{41}(r_{41}) + a_{42}(r_{42}) + a_{43}(r_{43}) \\ \end{matrix}\right] \\ \end{aligned}​⎣⎢⎢⎡​a12​(p1​−p2​−r12​)+a13​(p1​−p3​−r13​)+a14​(p1​−p4​−r14​)a21​(p2​−p1​−r21​)+a23​(p2​−p3​−r23​)+a24​(p2​−p4​−r24​)a31​(p3​−p1​−r31​)+a32​(p3​−p2​−r32​)+a34​(p3​−p4​−r34​)a41​(p4​−p1​−r41​)+a42​(p4​−p2​−r42​)+a43​(p4​−p3​−r43​)​⎦⎥⎥⎤​=⎣⎢⎢⎡​a12​(p1​−p2​)−a12​(r12​)+a13​(p1​−p3​)−a13​(r13​)+a14​(p1​−p4​)−a14​(r14​)a21​(p2​−p1​)−a21​(r21​)+a23​(p2​−p3​)−a23​(r23​)+a24​(p2​−p4​)−a24​(r24​)a31​(p3​−p1​)−a31​(r31​)+a32​(p3​−p2​)−a32​(r32​)+a34​(p3​−p4​)−a34​(r34​)a41​(p4​−p1​)−a41​(r41​)+a42​(p4​−p2​)−a42​(r42​)+a43​(p4​−p3​)−a43​(r43​)​⎦⎥⎥⎤​=⎣⎢⎢⎡​a12​(p1​−p2​)+a13​(p1​−p3​)+a14​(p1​−p4​)   −a12​(r12​)−a13​(r13​)−a14​(r14​)a21​(p2​−p1​)+a23​(p2​−p3​)+a24​(p2​−p4​)   −a21​(r21​)−a23​(r23​)−a24​(r24​)a31​(p3​−p1​)+a32​(p3​−p2​)+a34​(p3​−p4​)   −a31​(r31​)−a32​(r32​)−a34​(r34​)a41​(p4​−p1​)+a42​(p4​−p2​)+a43​(p4​−p3​)   −a41​(r41​)−a42​(r42​)−a43​(r43​)​⎦⎥⎥⎤​=⎣⎢⎢⎡​a12​(p1​−p2​)+a13​(p1​−p3​)+a14​(p1​−p4​)a21​(p2​−p1​)+a23​(p2​−p3​)+a24​(p2​−p4​)a31​(p3​−p1​)+a32​(p3​−p2​)+a34​(p3​−p4​)a41​(p4​−p1​)+a42​(p4​−p2​)+a43​(p4​−p3​)​⎦⎥⎥⎤​−⎣⎢⎢⎡​a12​(r12​)+a13​(r13​)+a14​(r14​)a21​(r21​)+a23​(r23​)+a24​(r24​)a31​(r31​)+a32​(r32​)+a34​(r34​)a41​(r41​)+a42​(r42​)+a43​(r43​)​⎦⎥⎥⎤​=L∗p−⎣⎢⎢⎡​a12​(r12​)+a13​(r13​)+a14​(r14​)a21​(r21​)+a23​(r23​)+a24​(r24​)a31​(r31​)+a32​(r32​)+a34​(r34​)a41​(r41​)+a42​(r42​)+a43​(r43​)​⎦⎥⎥⎤​​

A∗R=[0a12a13a14a210a23a24a31a320a34a41a42a430][0r12r13r14r210r23r24r31r320r34r41r42r430]=[a12r21+a13r31+a14r41a13r32+a14r42a12r23+a14r43a12r24+a13r34a23r31+a24r41a21r12+a23r32+a24r42a21r23+a24r43a21r14+a23r34⋯⋯]\begin{aligned} A*R &= \left[\begin{matrix} 0 & a_{12} & a_{13} & a_{14} \\ a_{21} & 0 & a_{23} & a_{24} \\ a_{31} & a_{32} & 0 & a_{34} \\ a_{41} & a_{42} & a_{43} & 0 \\ \end{matrix}\right] \left[\begin{matrix} 0 & r_{12} & r_{13} & r_{14} \\ r_{21} & 0 & r_{23} & r_{24} \\ r_{31} & r_{32} & 0 & r_{34} \\ r_{41} & r_{42} & r_{43} & 0 \\ \end{matrix}\right] \\ &= \left[\begin{matrix} a_{12}r_{21} + a_{13}r_{31} + a_{14}r_{41} & a_{13}r_{32} + a_{14}r_{42} & a_{12}r_{23} + a_{14}r_{43} & a_{12}r_{24} + a_{13}r_{34} \\ a_{23}r_{31} + a_{24}r_{41} & a_{21}r_{12} + a_{23}r_{32} + a_{24}r_{42} & a_{21}r_{23} + a_{24}r_{43} & a_{21}r_{14} + a_{23}r_{34} \\ \cdots \\ \cdots \\ \end{matrix}\right] \\ \end{aligned}A∗R​=⎣⎢⎢⎡​0a21​a31​a41​​a12​0a32​a42​​a13​a23​0a43​​a14​a24​a34​0​⎦⎥⎥⎤​⎣⎢⎢⎡​0r21​r31​r41​​r12​0r32​r42​​r13​r23​0r43​​r14​r24​r34​0​⎦⎥⎥⎤​=⎣⎢⎢⎡​a12​r21​+a13​r31​+a14​r41​a23​r31​+a24​r41​⋯⋯​a13​r32​+a14​r42​a21​r12​+a23​r32​+a24​r42​a12​r23​+a14​r43​a21​r23​+a24​r43​a12​r24​+a13​r34​a21​r14​+a23​r34​⎦⎥⎥⎤​​

diag(A∗R)=[a12r21+a13r31+a14r41⋯⋯⋯⋯a21r12+a23r32+a24r42⋯⋯⋯⋯]\begin{aligned} &\text{diag}{(A*R)} \\ &= \left[\begin{matrix} a_{12}r_{21} + a_{13}r_{31} + a_{14}r_{41} & \cdots & \cdots & \cdots \\ \cdots & a_{21}r_{12} + a_{23}r_{32} + a_{24}r_{42} & \cdots & \cdots \\ \cdots \\ \cdots \\ \end{matrix}\right] \\ \end{aligned}​diag(A∗R)=⎣⎢⎢⎡​a12​r21​+a13​r31​+a14​r41​⋯⋯⋯​⋯a21​r12​+a23​r32​+a24​r42​⋯⋯⋯⋯⎦⎥⎥⎤​​

这里,diag(⋅)\text{diag}(\cdot)diag(⋅) 表示取对角元素的意思。并且,若想使得 diag(AR)\text{diag}(AR)diag(AR) 部分成立,还默认假定了 RRR 中元素 r12r_{12}r12​ 与 r21r_{21}r21​ 相等,即 rij=rjir_{ij} = r_{ji}rij​=rji​。

第四部分
[h1(q1−qd)h2(q2−qd)h3(q3−qd)h4(q4−qd)]=[h1h2h3h4][q1−qdq2−qdq3−qdq4−qd]=[h1h2h3h4]([q1q2q3q4]−qd⊗[1111])=H∗(q−qd⊗1n)\begin{aligned} &\left[\begin{matrix} h_1(q_1 - q_d) \\ h_2(q_2 - q_d) \\ h_3(q_3 - q_d) \\ h_4(q_4 - q_d) \\ \end{matrix}\right] \\ &= \left[\begin{matrix} h_1 & & & \\ & h_2 & & \\ & & h_3 & \\ & & & h_4 \\ \end{matrix}\right] \left[\begin{matrix} q_1 - q_d \\ q_2 - q_d \\ q_3 - q_d \\ q_4 - q_d \\ \end{matrix}\right] \\ &= \left[\begin{matrix} h_1 & & & \\ & h_2 & & \\ & & h_3 & \\ & & & h_4 \\ \end{matrix}\right] (\left[\begin{matrix} q_1 \\ q_2 \\ q_3 \\ q_4 \\ \end{matrix}\right]- q_d \otimes \left[\begin{matrix} 1 \\ 1 \\ 1 \\ 1 \\ \end{matrix}\right]) \\ &= H * (q - q_d \otimes 1_n) \end{aligned}​⎣⎢⎢⎡​h1​(q1​−qd​)h2​(q2​−qd​)h3​(q3​−qd​)h4​(q4​−qd​)​⎦⎥⎥⎤​=⎣⎢⎢⎡​h1​​h2​​h3​​h4​​⎦⎥⎥⎤​⎣⎢⎢⎡​q1​−qd​q2​−qd​q3​−qd​q4​−qd​​⎦⎥⎥⎤​=⎣⎢⎢⎡​h1​​h2​​h3​​h4​​⎦⎥⎥⎤​(⎣⎢⎢⎡​q1​q2​q3​q4​​⎦⎥⎥⎤​−qd​⊗⎣⎢⎢⎡​1111​⎦⎥⎥⎤​)=H∗(q−qd​⊗1n​)​


改写成向量和矩阵的形式:
u=q˙d⊗1n−k1(Lp−diag(AR))−k2Lq−k3H(qi−qd⊗1n)(3-4)\begin{aligned} u &= \dot{q}_d \otimes 1_n \\ &-k_1 (Lp - \text{diag}(AR)) \\ &-k_2 Lq \\ &-k_3 H (q_i - q_d \otimes 1_n) \end{aligned} \tag{3-4}u​=q˙​d​⊗1n​−k1​(Lp−diag(AR))−k2​Lq−k3​H(qi​−qd​⊗1n​)​(3-4)

论文中所给出的协议为 (3-4),但个人认为可不必使用克罗内克积的形式。因为常量 q˙d\dot{q}_dq˙​d​ 与列向量 1n1_n1n​ 的克罗内克积并没有特殊变化。

并且,协议 (3-4) 并不严谨,第四项中的 qiq_iqi​ 应为 qqq。修改版如下:
u=q˙d⊗1n−k1(Lp−diag(AR))−k2Lq−k3H(q−qd⊗1n)(3-4)\begin{aligned} u &= \dot{q}_d \otimes 1_n \\ &-k_1 (Lp - \text{diag}(AR)) \\ &-k_2 Lq \\ &-k_3 H (\red{q} - q_d \otimes 1_n) \end{aligned} \tag{3-4}u​=q˙​d​⊗1n​−k1​(Lp−diag(AR))−k2​Lq−k3​H(q−qd​⊗1n​)​(3-4)

当然,如果智能体并非在一维直线上运动,而是在二维平面或三维空间中,涉及到各个坐标轴的位置耦合成最终的速度时,这时候需要用到克罗内克积。


定义偏差向量:
p~=Lp−diag(AR)(3-6)\tilde{p} = L p -\text{diag} (AR) \tag{3-6}p~​=Lp−diag(AR)(3-6)

展开如下:
[p~1p~2p~3p~4]=Lp−diag(A∗R)=Lp−[a12r21+a13r31+a14r41⋯⋯⋯⋯a21r12+a23r32+a24r42⋯⋯⋯⋯]\begin{aligned} \left[\begin{matrix} \tilde{p}_1 \\ \tilde{p}_2 \\ \tilde{p}_3 \\ \tilde{p}_4 \\ \end{matrix}\right]&= Lp - \text{diag}{(A*R)} \\ &= Lp - \left[\begin{matrix} a_{12}r_{21} + a_{13}r_{31} + a_{14}r_{41} & \cdots & \cdots & \cdots \\ \cdots & a_{21}r_{12} + a_{23}r_{32} + a_{24}r_{42} & \cdots & \cdots \\ \cdots \\ \cdots \\ \end{matrix}\right] \\ \end{aligned}⎣⎢⎢⎡​p~​1​p~​2​p~​3​p~​4​​⎦⎥⎥⎤​​=Lp−diag(A∗R)=Lp−⎣⎢⎢⎡​a12​r21​+a13​r31​+a14​r41​⋯⋯⋯​⋯a21​r12​+a23​r32​+a24​r42​⋯⋯⋯⋯⎦⎥⎥⎤​​

q~=qi−qd⊗1n(3-7)\tilde{q} = q_i - q_d \otimes 1_n \tag{3-7}q~​=qi​−qd​⊗1n​(3-7)

展开:
[q~1q~2q~3q~4]=[q1q2q3q4]−qd⊗1n=[q1q2q3q4]−[qdqdqdqd]\begin{aligned} \left[\begin{matrix} \tilde{q}_1 \\ \tilde{q}_2 \\ \tilde{q}_3 \\ \tilde{q}_4 \\ \end{matrix}\right]&= \left[\begin{matrix} {q}_1 \\ {q}_2 \\ {q}_3 \\ {q}_4 \\ \end{matrix}\right]-q_d \otimes 1_n \\ &= \left[\begin{matrix} {q}_1 \\ {q}_2 \\ {q}_3 \\ {q}_4 \\ \end{matrix}\right]- \left[\begin{matrix} {q}_d \\ {q}_d \\ {q}_d \\ {q}_d \\ \end{matrix}\right] \\ \end{aligned}⎣⎢⎢⎡​q~​1​q~​2​q~​3​q~​4​​⎦⎥⎥⎤​​=⎣⎢⎢⎡​q1​q2​q3​q4​​⎦⎥⎥⎤​−qd​⊗1n​=⎣⎢⎢⎡​q1​q2​q3​q4​​⎦⎥⎥⎤​−⎣⎢⎢⎡​qd​qd​qd​qd​​⎦⎥⎥⎤​​

根据定义的偏差向量,结合单个智能体的运动方程,并利用拉普拉斯矩阵的性质得
p~˙=Lq~(3-8)\dot{\tilde{p}} = L \tilde{q} \tag{3-8}p~​˙​=Lq~​(3-8)

q~˙=−k1(p~(t−τ(t)))−k2Lq(t−τ(t))−k3H(qi−qd⊗1n)(3-9)\begin{aligned} \dot{\tilde{q}} = &-k_1 (\tilde{p}(t-\tau(t))) \\ &- k_2 L q(t-\tau(t)) \\ &-k_3 H (q_i - q_d \otimes 1_n) \end{aligned}\tag{3-9}q~​˙​=​−k1​(p~​(t−τ(t)))−k2​Lq(t−τ(t))−k3​H(qi​−qd​⊗1n​)​(3-9)

写成矩阵的形式:
[p~˙q~˙]=[0nL0n−k3H][p~q~]+[0nL−k1⊗1n−k2L][p~(t−τ(t))q~(t−τ(t))](3-10)\begin{aligned} \left[\begin{matrix} \dot{\tilde{p}} \\ \dot{\tilde{q}} \\ \end{matrix}\right]&= \left[\begin{matrix} 0_n & L \\ 0_n & -k_3 H \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right]+ \left[\begin{matrix} 0_n & L \\ -k_1 \otimes 1_n & -k_2 L \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}}(t-\tau(t)) \\ {\tilde{q}}(t-\tau(t)) \\ \end{matrix}\right] \end{aligned} \tag{3-10}[p~​˙​q~​˙​​]​=[0n​0n​​L−k3​H​][p~​q~​​]+[0n​−k1​⊗1n​​L−k2​L​][p~​(t−τ(t))q~​(t−τ(t))​]​(3-10)

针对无时滞的情况,写成矩阵的形式为:
[p~˙q~˙]=[0nL−k1⊗1n−k2L−k3H][p~q~]\begin{aligned} \left[\begin{matrix} \dot{\tilde{p}} \\ \dot{\tilde{q}} \\ \end{matrix}\right]= \left[\begin{matrix} 0_n & L \\ -k_1 \otimes 1_n & -k_2 L-k_3 H \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right] \end{aligned}[p~​˙​q~​˙​​]=[0n​−k1​⊗1n​​L−k2​L−k3​H​][p~​q~​​]​

这里引申出来一个状态变量用来同时表示位置误差和速度误差
δ=[p~q~](3-11)\delta = \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right] \tag{3-11}δ=[p~​q~​​](3-11)

那么有
δ˙(t)=[p~˙q~˙]=[0nL0n−k3H][p~q~]+[0nL−k1⊗1n−k2L][p~(t−τ(t))q~(t−τ(t))]=M[p~q~]+N[p~(t−τ(t))q~(t−τ(t))]=Mδ(t)+Nδ(t−τ(t))(3-12)\begin{aligned} \dot{\delta}(t) = \left[\begin{matrix} \dot{\tilde{p}} \\ \dot{\tilde{q}} \\ \end{matrix}\right]&= \left[\begin{matrix} 0_n & L \\ 0_n & -k_3 H \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right]+ \left[\begin{matrix} 0_n & L \\ -k_1 \otimes 1_n & -k_2 L \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}}(t-\tau(t)) \\ {\tilde{q}}(t-\tau(t)) \\ \end{matrix}\right] \\ &=M \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right]+ N \left[\begin{matrix} {\tilde{p}}(t-\tau(t)) \\ {\tilde{q}}(t-\tau(t)) \\ \end{matrix}\right] \\ &=M \delta(t) + N \delta(t-\tau(t)) \end{aligned} \tag{3-12}δ˙(t)=[p~​˙​q~​˙​​]​=[0n​0n​​L−k3​H​][p~​q~​​]+[0n​−k1​⊗1n​​L−k2​L​][p~​(t−τ(t))q~​(t−τ(t))​]=M[p~​q~​​]+N[p~​(t−τ(t))q~​(t−τ(t))​]=Mδ(t)+Nδ(t−τ(t))​(3-12)

若是无时滞,那么为
δ˙(t)=[p~˙q~˙]=[0nL−k1⊗1n−k2L−k3H][p~q~]=MNδ(t)\begin{aligned} \dot{\delta}(t) &= \left[\begin{matrix} \dot{\tilde{p}} \\ \dot{\tilde{q}} \\ \end{matrix}\right]= \left[\begin{matrix} 0_n & L \\ -k_1 \otimes 1_n & -k_2 L-k_3 H \\ \end{matrix}\right] \left[\begin{matrix} {\tilde{p}} \\ {\tilde{q}} \\ \end{matrix}\right] \\ &=\red{M_N} \delta(t) \end{aligned} δ˙(t)​=[p~​˙​q~​˙​​]=[0n​−k1​⊗1n​​L−k2​L−k3​H​][p~​q~​​]=MN​δ(t)​


3.4.2 稳定性分析

选取 Lyapunov-Krasosvskii 函数
V(t)=V1+V2+V3=δT(t)Pδ(t)+∫t−τtδT(s)Qδ(s)ds+∫−m0∫t+θtδ˙T(s)Zδ˙(s)dsdθ(3-15)\begin{aligned} V(t) &= V_1+V_2+V_3\\ &= \delta^T(t) P \delta(t) \\ &+\int_{t-\tau}^{t} \delta^T(s) Q \delta(s) ~ds \\ &+\int_{-m}^{0} \int_{t+\theta}^{t} \dot{\delta}^T(s) Z \dot{\delta}(s)~ ds ~d\theta \end{aligned}\tag{3-15}V(t)​=V1​+V2​+V3​=δT(t)Pδ(t)+∫t−τt​δT(s)Qδ(s) ds+∫−m0​∫t+θt​δ˙T(s)Zδ˙(s) ds dθ​(3-15)

线形二次型求导https://blog.csdn.net/u012604810/article/details/84259965

V(x)=xTPxV(x) = x^T P xV(x)=xTPx

V˙(x)=xT(ATP+PA)x\dot{V}(x) = x^T (A^T P + P A) xV˙(x)=xT(ATP+PA)x

V˙1=2δT(t)Pδ˙(t)=2δT(t)P(Mδ(t)+Nδ(t−τ(t)))=δT(t)PMδ(t)+δT(t)MTPδ(t)+δT(t)PNδ(t−τ)+δT(t−τ)NTPδ(t)\begin{aligned} \dot{V}_1 &= 2~~ \delta^T(t) P \dot{\delta}(t) \\ &= 2 ~~\delta^T(t) P (M \delta(t) + N \delta(t-\tau(t))) \\ %&=2 ~~\delta^T(t) PM \delta(t) ~~+~~ \delta^T(t) PN \delta(t-\tau(t)) \\ %&= 2P \delta(t) \cdot M \delta(t) + 2P \delta(t) \cdot N \delta(t-\tau(t)) \\ &= \delta^T(t) PM \delta(t) + \delta^T(t) M^TP \delta(t) + \delta^T(t) PN \delta(t-\tau)+ \delta^T(t-\tau) N^TP \delta(t) \end{aligned}V˙1​​=2  δT(t)Pδ˙(t)=2  δT(t)P(Mδ(t)+Nδ(t−τ(t)))=δT(t)PMδ(t)+δT(t)MTPδ(t)+δT(t)PNδ(t−τ)+δT(t−τ)NTPδ(t)​

定积分求导https://zhidao.baidu.com/question/940652843635700092.html

V˙2=t′⋅δT(t)Qδ(t)−(t−τ)′⋅δT(t−τ)Qδ(t−τ)=1⋅δT(t)Qδ(t)−(1−τ′)⋅δT(t−τ)Qδ(t−τ)=δT(t)Qδ(t)−(1−τ′)⋅δT(t−τ)Qδ(t−τ)≤δT(t)Qδ(t)−(1−μ)⋅δT(t−τ)Qδ(t−τ)\begin{aligned} \dot{V}_2 &= {t'} \cdot \delta^T(t) Q \delta(t) - {(t-\tau)'} \cdot \delta^T(t-\tau) Q \delta(t-\tau) \\ &= {1} \cdot \delta^T(t) Q \delta(t) - {(1-\tau')} \cdot \delta^T(t-\tau) Q \delta(t-\tau) \\ &= \delta^T(t) Q \delta(t) - {(1-\tau')} \cdot \delta^T(t-\tau) Q \delta(t-\tau) \\ &\le \delta^T(t) Q \delta(t) - {(1-\mu)} \cdot \delta^T(t-\tau) Q \delta(t-\tau) \end{aligned}V˙2​​=t′⋅δT(t)Qδ(t)−(t−τ)′⋅δT(t−τ)Qδ(t−τ)=1⋅δT(t)Qδ(t)−(1−τ′)⋅δT(t−τ)Qδ(t−τ)=δT(t)Qδ(t)−(1−τ′)⋅δT(t−τ)Qδ(t−τ)≤δT(t)Qδ(t)−(1−μ)⋅δT(t−τ)Qδ(t−τ)​

二重积分求导https://zhidao.baidu.com/question/2142476896569356108.html

V˙3=∫−m0[∫t+θtδ˙T(s)Zδ˙(s)ds]′dθ=∫−m0[(t)′⋅δ˙T(t)Zδ˙(t)−(t+θ)′⋅δ˙T(t+θ)Zδ˙(t+θ)]dθ=∫−m0[δ˙T(t)Zδ˙(t)−(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)]dθ=∫−m0[δ˙T(t)Zδ˙(t)]dθ−∫−m0[(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)]dθ=V˙31−V˙32\begin{aligned} \dot{V}_3 &= \int_{-m}^{0} [\int_{t+\theta}^{t} \dot{\delta}^T(s) Z \dot{\delta}(s)~ ds]' ~d\theta \\ &=\int_{-m}^{0} [(t)' \cdot \dot{\delta}^T(t) Z \dot{\delta}(t) - (t+\theta)' \cdot \dot{\delta}^T(t+\theta) Z \dot{\delta}(t+\theta)] ~d\theta \\ &=\int_{-m}^{0} [\dot{\delta}^T(t) Z \dot{\delta}(t) - (1+\theta') \cdot \dot{\delta}^T(t+\theta) Z \dot{\delta}(t+\theta)] ~d\theta \\ &=\int_{-m}^{0} [\dot{\delta}^T(t) Z \dot{\delta}(t)]d\theta -\int_{-m}^{0} [(1+\theta') \cdot \dot{\delta}^T(t+\theta) Z \dot{\delta}(t+\theta)] ~d\theta \\ &= \dot{V}_{31} - \dot{V}_{32} \end{aligned}V˙3​​=∫−m0​[∫t+θt​δ˙T(s)Zδ˙(s) ds]′ dθ=∫−m0​[(t)′⋅δ˙T(t)Zδ˙(t)−(t+θ)′⋅δ˙T(t+θ)Zδ˙(t+θ)] dθ=∫−m0​[δ˙T(t)Zδ˙(t)−(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)] dθ=∫−m0​[δ˙T(t)Zδ˙(t)]dθ−∫−m0​[(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)] dθ=V˙31​−V˙32​​

V˙31=∫−m0[δ˙T(t)Zδ˙(t)]dθ=δ˙T(t)Zδ(t)⋅(0−(−m))=mδT(t)Zδ˙(t)\begin{aligned} \dot{V}_{31} &=\int_{-m}^{0} [\dot{\delta}^T(t) Z \dot{\delta}(t)]d\theta \\ &=\dot{\delta}^T(t) Z {\delta}(t) \cdot (0-(-m)) \\ &=m {\delta}^T(t) Z \dot{\delta}(t) \end{aligned}V˙31​​=∫−m0​[δ˙T(t)Zδ˙(t)]dθ=δ˙T(t)Zδ(t)⋅(0−(−m))=mδT(t)Zδ˙(t)​

V˙32=∫−m0[(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)]dθ=∫t−τtδ˙T(s)Zδ˙(s)ds\begin{aligned} \dot{V}_{32} &=\int_{-m}^{0} [(1+\theta') \cdot \dot{\delta}^T(t+\theta) Z \dot{\delta}(t+\theta)] ~d\theta \\ &= \int_{t-\tau}^{t} \dot{\delta}^T(s) Z \dot{\delta}(s) ds \\ %&= \end{aligned}V˙32​​=∫−m0​[(1+θ′)⋅δ˙T(t+θ)Zδ˙(t+θ)] dθ=∫t−τt​δ˙T(s)Zδ˙(s)ds​

根据引理1和引理2
V˙(t)≤V˙1(t)+V˙2(t)+V˙3(t)+mξ1T(t)Xξ(t)−∫t−τtξ1T(t)Xξ1(t)ds⏟≥0+2[δT(t)Y1+δT(t−τ)Y2][δ(t)−δ(t−τ)−∫t−τtδ˙(s)ds]⏟=0=ξ1T(t)Θξ1(t)⏟<0−∫t−τtξ2T(t)Ψξ2(t)ds⏟>0\begin{aligned} \dot{V}(t) &\le \dot{V}_1(t) + \dot{V}_2(t) + \dot{V}_3(t) \\ &+ \underbrace{m \xi_1^T(t)X \xi(t) - \int_{t-\tau}^{t} \xi_1^T(t) X \xi_1(t) ds}_{\ge0} \\ &+ \underbrace{2[\delta^T(t) Y_1 + \delta^T(t-\tau)Y_2][\delta(t)-\delta(t-\tau)-\int_{t-\tau}^{t} \dot{\delta}(s) ds]}_{=0} \\ &=\underbrace{\xi_1^T(t) \Theta \xi_1(t)}_{<0} - \underbrace{\int_{t-\tau}^{t} \xi_2^T(t) \Psi \xi_2(t) ds}_{>0} \end{aligned}V˙(t)​≤V˙1​(t)+V˙2​(t)+V˙3​(t)+≥0mξ1T​(t)Xξ(t)−∫t−τt​ξ1T​(t)Xξ1​(t)ds​​+=02[δT(t)Y1​+δT(t−τ)Y2​][δ(t)−δ(t−τ)−∫t−τt​δ˙(s)ds]​​=<0ξ1T​(t)Θξ1​(t)​​−>0∫t−τt​ξ2T​(t)Ψξ2​(t)ds​​​

如果上述两个矩阵分别小于大于0,那么等式的右边部分整体小于0,最终 V˙(t)<0\dot{V}(t)<0V˙(t)<0 恒成立。即满足李雅普诺夫稳定性。


3.5 仿真实验与分析

3.5.1 队形保持


【Paper】2013_基于一致性理论的无人机编队控制器设计_郭伟强相关推荐

  1. pid控制器matlab仿真研究,基于MATLAB仿真的PID控制器设计毕业设计

    基于MATLAB仿真的PID控制器设计毕业设计 基于 MATLAB 仿真的 PID 控制器设计 摘 要 本论文以温度控制系统为研究对象设计一个 PID 控制器.PID 控制是迄今为止最通用的控制方法, ...

  2. matlab数字pid控制仿真程序,基于MATLAB的数字PID控制器设计及仿真分析

    基于MATLAB的数字PID控制器设计及仿真分析 基于基于MATLABMATLAB的数字的数字PIDPID控制器设计及仿真分析控制器设计及仿真分析 摘摘 要要 PID控制作为历史最为悠久,生命力最强的 ...

  3. 基于FPGA的SPI FLASH控制器设计

    1.SPI FLASH的基本特征 本文实现用FPGA来设计SPI FLASH,FLASH型号为W25Q128BV.支持3种通信方式,SPI.Dual SPI和Quad SPI.FLASH的存储单元无法 ...

  4. 有温度传感器的风机控制系统C语言,毕业论文--基于单片机的工业风机控制器设计与实现.doc...

    大连东软信息学院 本科毕业设计(论文) 论文题目 论文题目:基于单片机的工业风机控制器设计与实现 系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: ...

  5. 基于 AHB 总线的 SRAM 控制器设计

    基于 AHB 总线的 SRAM 控制器设计 一.基于 AHB 的 sram 设计 1.总体设计框架 2.AHB总线传输协议 ①没有等待状态的单个读写操作 ②有等待状态的单个读写操作 ③连续读写操作 二 ...

  6. Python 还原控制SCI论文算法系列1: 基于策略迭代的自适应最优控制器设计

    Python 还原控制SCI论文算法系列1: 基于策略迭代的自适应最优控制器设计 文章目录 Python 还原控制SCI论文算法系列1: 基于策略迭代的自适应最优控制器设计 0.前言 1.研究问题的描 ...

  7. 汽车主动悬挂系matlab,基于Matlab的汽车主动悬架控制器设计与仿真.doc

    基于Matlab的汽车主动悬架控制器设计与仿真 <现代控制理论及其应用>课程小论文 基于Matlab的汽车主动悬架控制器设计与仿真 学院:机 械 工 程 学 院 班级() 姓名: 2015 ...

  8. 基于FPGA的USB接口控制器设计(VHDL)(中)

    今天给大侠带来基于 FPGA 的 USB 接口控制器设计(VHDL),由于篇幅较长,分三篇.今天带来第二篇,中篇,USB通信原理.USB 系统开发以及设计实例.话不多说,上货. 之前有关于 Veril ...

  9. 基于FPGA的XPT2046触摸控制器设计

    基于FPGA的XPT2046触摸控制器设计 小梅哥编写,未经许可,文章内容和所涉及代码不得用于其他商业销售的板卡 本实例所涉及代码均可通过向 xiaomeige_fpga@foxmail.com  发 ...

最新文章

  1. Nature子刊:提高作物产量?农作物微生物组是关键
  2. selenium多个窗口
  3. 图像投影特征图的波峰波谷查找的相关原理及利用差分遍历法查找波峰的OpenCV代码
  4. PyTorch教程(十):单层感知机以及梯度更新
  5. Visual Studio Code里一个查看括号匹配的神器 - Bracket Pair Colorizer
  6. Android IOS WebRTC 音视频开发总结(八十七)-- WebRTC中丢包重传NACK实现分析
  7. mysql架构 视频_企业常见MySQL架构应用实战(高可用集群系统+调优经验)视频课程...
  8. 4-1 线程安全性-原子性-atomic-1
  9. Win10用户获取最高权限的方法?
  10. java 实例域_Java实例域初始化
  11. 数据结构笔记(二十)--二叉树的存储
  12. 如何在苹果Mac更改通知显示的时长?
  13. WebView启动支付宝客户端支付失败的解决办法
  14. 一文总结买卖股票的最佳时机的所有情况(附Python代码)
  15. C++设计模式23——访问者模式
  16. 拖拉机(寒假每日一题 4)
  17. ElastiSearch与Solr和Lucene
  18. 蓝牙耳机牌子排行榜2020:性能最强的蓝牙耳机排名前十
  19. 网络设备配置与管理(华为)基础系列 20190307
  20. python编程基础知识入门

热门文章

  1. Deming管理系列(2)——怎样开发度量能力
  2. Apahce的虚拟用户认证及server-status页
  3. iOS之UIview动画
  4. 前端工程师的修真秘籍(css、javascript和其它)
  5. 详解python实现FP-TREE进行关联规则挖掘(带有FP树显示功能)附源代码下载(3)
  6. mapreduce 算法
  7. JavaScript存在的原因
  8. 甲骨文全球大会——看SOA
  9. JavaScript字符串的单引号和双引号问题
  10. 横线-文字-横线的html-css布局