涛声依旧在 发表于 2025-4-1 06:46:16

【算法应用】基于粒子群算法PSO求解无人机集群路径规划题目

1.无人机路径规划模子

路径最优性
为了实现UAV的高效运行,计划的路径需要在某一特定标准上达到最优。UAV飞行路径Xi表示为UAV需要飞过的一系列n个航路点,每个航路点对应搜索舆图中的一个路径节点,其坐标为Pij = (xij, yij, zij)。通过计算两个节点之间的欧几里得距离,计算出路径长度相关的资本F1:
                                                    F                               1                                                 (                                           X                                  i                                          )                                    =                                       ∑                                           j                                  =                                  1                                                      n                                  −                                  1                                                            ∥                                                                      P                                                       i                                           j                                                                              P                                                       i                                           ,                                           j                                           +                                           1                                                                         →                                          ∥                                          F_1\left(X_i\right)=\sum_{j=1}^{n-1}\left\|\overrightarrow{P_{ij}P_{i,j+1}}\right\|                     F1​(Xi​)=j=1∑n−1​               ​Pij​Pi,j+1​            ​               ​
安全性和可行性约束
https://i-blog.csdnimg.cn/img_convert/7aafbdd4e1591396515929c254edbe8f.png
除了最优性外,计划的路径还需要通过引导UAV避开操作空间中出现的障碍来确保UAV的安全运行。设K为所有威胁的聚集,每个威胁假设为一个圆柱体,其投影中心坐标为Ck,半径为Rk。对于给定的路径段                                 ∥                                                          P                                             i                                     j                                                                  P                                             i                                     ,                                     j                                     +                                     1                                                             →                                  ∥                              \left\|\overrightarrow{P_{ij}P_{i,j+1}}\right\|                              ​Pij​Pi,j+1​             ​            ​,与威胁相关的资本与其到Ck的距离dk成正比。考虑UAV的直径D和碰撞区的危险距离S,可以计算威胁资本F2:
                                                    F                               2                                    (                                       X                               i                                    )                            =                                       ∑                                           j                                  =                                  1                                                      n                                  −                                  1                                                            ∑                                           k                                  =                                  1                                          K                                                 T                               k                                    (                                                                P                                                   i                                        j                                                                        P                                                   i                                        ,                                        j                                        +                                        1                                                                   →                                    )                                  F_2(X_i)=\sum_{j=1}^{n-1}\sum_{k=1}^KT_k(\overrightarrow{P_{ij}P_{i,j+1}})                     F2​(Xi​)=j=1∑n−1​k=1∑K​Tk​(Pij​Pi,j+1​             ​)
                                                    T                               k                                    (                                       P                                           i                                  j                                                 ,                                       P                                           i                                  j                                  +                                  1                                                 )                            =                                       {                                                                                                   0                                              ,                                                                                                                            if                                                                d                                                 k                                                            >                                              S                                              +                                              D                                              +                                                               R                                                 k                                                            ,                                                                                                                                                (                                              S                                              +                                              D                                              +                                                               R                                                 k                                                            )                                              −                                                               d                                                 k                                                            ,                                                                                                                            if                                               D                                              +                                                               R                                                 k                                                            <                                                               d                                                 k                                                            ≤                                              S                                              +                                              D                                              +                                                               R                                                 k                                                            ,                                                                                                                                                ∞                                              ,                                                                                                                            if                                                                d                                                 k                                                            ≤                                              D                                              +                                                               R                                                 k                                                            .                                                                                                             T_k(P_{ij}, P_{ij+1}) = \begin{cases} 0, & \text{if } d_k > S + D + R_k, \\ (S + D + R_k) - d_k, & \text{if } D + R_k < d_k \leq S + D + R_k, \\ \infty, & \text{if } d_k \leq D + R_k. \end{cases}                     Tk​(Pij​,Pij+1​)=⎩               ⎨               ⎧​0,(S+D+Rk​)−dk​,∞,​if dk​>S+D+Rk​,if D+Rk​<dk​≤S+D+Rk​,if dk​≤D+Rk​.​
飞行高度约束
https://i-blog.csdnimg.cn/img_convert/21acdd6943386ba5bac276c28d374f07.png
UAV飞行高度通常受到两个极限的约束,即最小和最大高度。设最小和最大高度分别为hmin和hmax。与航点Pij相关的高度资本计算:
                                                                                                   H                                                       i                                           j                                                                =                                                   {                                                                                                                           ∣                                                                           h                                                                               i                                                             j                                                                                              −                                                                                                (                                                                                 h                                                                max                                                                ⁡                                                                                  +                                                                                 h                                                                min                                                                ⁡                                                                                  )                                                                              2                                                                        ∣                                                       ,                                                                                                                                                       if                                                                           h                                                          min                                                          ⁡                                                                        ≤                                                                           h                                                                               i                                                             j                                                                                              ≤                                                                           h                                                          max                                                          ⁡                                                                                                                                                                                                      ∞                                                       ,                                                                                                                                                       otherwise                                                       ,                                                                                                                                                                         (3)                                                       H_{ij}=\begin{cases}|h_{ij}-\frac{(h_{\max}+h_{\min})}{2}|,&\text{if}h_{\min}\leq h_{ij}\leq h_{\max}\\\infty,&\text{otherwise},\end{cases}\tag{3}                     Hij​={∣hij​−2(hmax​+hmin​)​∣,∞,​ifhmin​≤hij​≤hmax​otherwise,​(3)
其中,hij表示相对于地面的飞行高度。将所有航路点的Hij求和,得到飞行高度资本F3:
                                                                                                   F                                        3                                                (                                                   X                                        i                                                )                                     =                                                   ∑                                                       j                                           =                                           1                                                      n                                                                H                                                       i                                           j                                                                                                       (4)                                                       F_3(X_i)=\sum_{j=1}^nH_{ij}\tag{4}                     F3​(Xi​)=j=1∑n​Hij​(4)
平滑度约束
https://i-blog.csdnimg.cn/img_convert/fdd63b153e92ca9f40ced651b8c91f71.png
UAV平滑度是对UAV方位角和俯仰角约束,这些是天生可行路径的关键。
UAV转弯角度:
                                                                                                   ϕ                                                       i                                           j                                                                =                                     arctan                                     ⁡                                                   (                                                                     ∥                                                                                                    P                                                                           i                                                          j                                                                        ′                                                                                       P                                                                           i                                                          ,                                                          j                                                          +                                                          1                                                                        ′                                                                                    →                                                            ×                                                                                                    P                                                                           i                                                          ,                                                          j                                                          +                                                          1                                                                        ′                                                                                       P                                                                           i                                                          ,                                                          j                                                          +                                                          2                                                                        ′                                                                                    →                                                            ∥                                                                                                                              P                                                                           i                                                          j                                                                        ′                                                                                       P                                                                           i                                                          ,                                                          j                                                          +                                                          1                                                                        ′                                                                                    →                                                            .                                                                                                    P                                                                           i                                                          ,                                                          j                                                          +                                                          1                                                                        ′                                                                                       P                                                                           i                                                          ,                                                          j                                                          +                                                          2                                                                        ′                                                                                    →                                                                                     )                                                                                       (5)                                                       \phi_{ij}=\arctan\left(\frac{\left\|\overrightarrow{P_{ij}^{\prime}P_{i,j+1}^{\prime}}\times\overrightarrow{P_{i,j+1}^{\prime}P_{i,j+2}^{\prime}}\right\|}{\overrightarrow{P_{ij}^{\prime}P_{i,j+1}^{\prime}}.\overrightarrow{P_{i,j+1}^{\prime}P_{i,j+2}^{\prime}}}\right)\tag{5}                     ϕij​=arctan               ​Pij′​Pi,j+1′​                     ​.Pi,j+1′​Pi,j+2′​                     ​                     ​Pij′​Pi,j+1′​                      ​×Pi,j+1′​Pi,j+2′​                      ​                     ​​               ​(5)
UAV俯仰角度:
                                                                                                   ψ                                                       i                                           j                                                                =                                     arctan                                     ⁡                                                   (                                                                                        z                                                                   i                                                    ,                                                    j                                                    +                                                    1                                                                               −                                                               z                                                                   i                                                    j                                                                                                         ∥                                                                                                    P                                                                           i                                                          j                                                                        ′                                                                                       P                                                                           i                                                          ,                                                          j                                                          +                                                          1                                                                        ′                                                                                    →                                                            ∥                                                                     )                                                                                       (6)                                                       \psi_{ij}=\arctan\left(\frac{z_{i,j+1}-z_{ij}}{\left\|\overrightarrow{P_{ij}^{\prime}P_{i,j+1}^{\prime}}\right\|}\right)\tag{6}                     ψij​=arctan               ​                     ​Pij′​Pi,j+1′​                      ​                     ​zi,j+1​−zij​​               ​(6)
计算平滑资本F4为:
                                                                                                   F                                        4                                                (                                                   X                                        i                                                )                                     =                                                   a                                        1                                                                ∑                                                       j                                           =                                           1                                                                     n                                           −                                           2                                                                              ϕ                                                       i                                           j                                                                +                                                   a                                        2                                                                ∑                                                       j                                           =                                           1                                                                     n                                           −                                           1                                                                ∣                                                   ψ                                                       i                                           j                                                                −                                                   ψ                                                       i                                           ,                                           j                                           −                                           1                                                                ∣                                                                            (7)                                                       F_4(X_i)=a_1\sum_{j=1}^{n-2}\phi_{ij}+a_2\sum_{j=1}^{n-1}\mid\psi_{ij}-\psi_{i,j-1}\mid\tag{7}                     F4​(Xi​)=a1​j=1∑n−2​ϕij​+a2​j=1∑n−1​∣ψij​−ψi,j−1​∣(7)
考虑路径Xi的最优性、安全性和可行性约束,总体资本函数可以界说为:
                                                                                       F                                     (                                                   X                                        i                                                )                                     =                                                   ∑                                                       k                                           =                                           1                                                      4                                                                b                                        k                                                                F                                        k                                                (                                                   X                                        i                                                )                                                                            (8)                                                       F(X_i)=\sum_{k=1}^4b_kF_k(X_i)\tag{8}                     F(Xi​)=k=1∑4​bk​Fk​(Xi​)(8)
三维坐标                                             P                                       i                               j                                          =                         (                                 x                                       i                               j                                          ,                                 y                                       i                               j                                          ,                                 z                                       i                               j                                          )                         ∈                                 X                            i                                       P_{ij}=(x_{ij},y_{ij},z_{ij})\in X_{i}                  Pij​=(xij​,yij​,zij​)∈Xi​到球形坐标                                             u                                       i                               j                                          =                         (                                 ρ                                       i                               j                                          ,                                 ψ                                       i                               j                                          ,                                 ϕ                                       i                               j                                          )                         ∈                                 Ω                            i                                       u_{ij}=(\rho_{ij}, \psi_{ij}, \phi_{ij}) \in \Omega_{i}                  uij​=(ρij​,ψij​,ϕij​)∈Ωi​转换:
                                                                                                                                                   x                                                                   i                                                    j                                                                                                                                                                      =                                                                   x                                                                     i                                                       ,                                                       j                                                       −                                                       1                                                                                    +                                                                   ρ                                                                     i                                                       j                                                                                    s                                                 i                                                 n                                                                   ψ                                                                     i                                                       j                                                                                    c                                                 o                                                 s                                                                   ϕ                                                                     i                                                       j                                                                                    ,                                                                                                                                                             y                                                                   i                                                    j                                                                                                                                                                      =                                                                   y                                                                     i                                                       ,                                                       j                                                       −                                                       1                                                                                    +                                                                   ρ                                                                     i                                                       j                                                                                    s                                                 i                                                 n                                                                   ψ                                                                     i                                                       j                                                                                    s                                                 i                                                 n                                                                   ϕ                                                                     i                                                       j                                                                                    ,                                                                                                                                                             z                                                                   i                                                    j                                                                                                                                                                      =                                                                   z                                                                     i                                                       ,                                                       j                                                       −                                                       1                                                                                    +                                                                   ρ                                                                     i                                                       j                                                                                    c                                                 o                                                 s                                                                   ψ                                                                     i                                                       j                                                                                    .                                                                                                                                    (9)                                                       \begin{aligned}x_{ij}&=x_{i,j-1}+\rho_{ij}sin\psi_{ij}cos\phi_{ij},\\y_{ij}&=y_{i,j-1}+\rho_{ij}sin\psi_{ij}sin\phi_{ij},\\z_{ij}&=z_{i,j-1}+\rho_{ij}cos\psi_{ij}.\end{aligned}\tag{9}                     xij​yij​zij​​=xi,j−1​+ρij​sinψij​cosϕij​,=yi,j−1​+ρij​sinψij​sinϕij​,=zi,j−1​+ρij​cosψij​.​(9)
2.粒子群算法PSO原理

【智能算法】粒子群算法(PSO)原理及实现
3.结果展示

https://i-blog.csdnimg.cn/img_convert/f3999f49ad1d69c9c812eecf4dd6b2d6.png
https://i-blog.csdnimg.cn/img_convert/eebeea86a80d28896565c183ac0960d8.png
https://i-blog.csdnimg.cn/img_convert/c3f759553f1a97244efe2ce87f25ed73.png
https://i-blog.csdnimg.cn/img_convert/a2f1a399f5c83a4d4e05ea49056967de.png
https://i-blog.csdnimg.cn/img_convert/9a29beb29091875b160271aca26a6a1d.png
https://i-blog.csdnimg.cn/img_convert/03d6332bd2591d37d7dcb9be37d74c44.png
https://i-blog.csdnimg.cn/img_convert/6dc9812242e46ea0bdc811d8e0842ccb.png
4.参考文献

Phung M D, Ha Q P. Safety-enhanced UAV path planning with spherical vector-based particle swarm optimization. Applied Soft Computing, 2021, 107: 107376.
5.代码获取


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【算法应用】基于粒子群算法PSO求解无人机集群路径规划题目