舰船科学技术  2026, Vol. 48 Issue (6): 141-149    DOI: 10.3404/j.issn.1672-7649.2026.06.019   PDF    
基于改进人工鱼群算法的AUV路径规划
郭阳1, 石博博1,2, 衣正尧1,2,3, 朱嘉晟1,2,3, 刘志恒3, 曹雏清3, 赵立军3     
1. 大连海洋大学 航海与船舶工程学院,辽宁 大连 116023;
2. 大连海洋大学海事工程研究中心,辽宁 大连 116023;
3. 长三角哈特机器人产业技术研究院,安徽 芜湖 241000
摘要: 针对水下无人艇(Autonomous Underwater Vehicle,AUV)路径规划问题,在传统人工鱼群算法的基础上提出一种融合差分进化算法的DE-IAFSA算法。通过引入自适应因子更新鱼群的视野范围和移动步长,提高算法的前期收敛速度与后期收敛精度;利用对数函数优化个体表现,增强算法的适应性;融合差分进化算法的变异和交叉操作,以避免陷入局部最优。利用Matlab软件开展仿真实验,将改进后的DE-IAFSA算法与传统的人工鱼群算法进行对比。实验结果表明,改进后的DE-IAFSA算法比传统人工鱼群算法在三维地图(a)、地图(b)和地图(c)中收敛精度分别提高了18.2%、3.4%、2.6%,平均路径长度分别减少了12.9%、29.7%、19.8%,收敛速度分别提高了93%、82%、70%,进而验证了改进后算法的优化能力。该算法具有收敛速度快、收敛精度高、适应性强、避免陷入局部最优的特点。
关键词: 水下无人艇     路径规划     自适应因子     人工鱼群算法     差分进化算法    
AUV path planning based on improved artificial fish swarm algorithm
GUO Yang1, SHI Bobo1,2, YI Zhengyao1,2,3, ZHU Jiasheng1,2,3, LIU Zhiheng3, CAO Chuqing3, ZHAO Lijun3     
1. School of Navigation and Naval Architecture, Dalian Ocean University, Dalian 116023, China;
2. Maritime Engineering Research Center of Dalian Ocean University, Dalian 116023, China;
3. Yangtze River Delta HIT Robot Technology Research Institute, Wuhu 241000, China
Abstract: Path planning for AUV in marine environments, proposing a DE-IAFSA algorithm incorporating differential evolutionary algorithm based on the traditional artificial fish schooling algorithm. By introducing an adaptive factor to update the visual field range and moving step size of the fish swarm, the early convergence speed and later convergence accuracy of the algorithm are improved. The logarithmic function is used to optimize the individual performance and enhance the adaptability of the algorithm. The mutation and crossover operations of differential evolution algorithm are integrated to avoid falling into local optimum. Simulation experiments using Matlab software, comparing the improved DE-IAFSA algorithm with the traditional artificial fish schooling algorithm. The experimental results show that, the experimental results show that the convergence accuracy of the improved DE-IAFSA algorithm is 18.2%, 3.4% and 2.6% higher than that of the traditional artificial fish swarm algorithm in the three-dimensional map (a), map (b) and map (c), respectively. The average path length is reduced by 12.9%, 29.7% and 19.8%, and the convergence speed is increased by 93%, 82% and 70%, respectively. This improves the efficiency of the algorithm in finding the shortest path. The algorithm has the characteristics of fast convergence speed, high convergence precision, strong adaptability and avoiding falling into local optimum.
Key words: AUV     path planning     adaptive factor     artificial fish swarm algorithm     differential evolutionary algorithm    
0 引 言

水下无人艇(Autonomous Underwater Vehicle,AUV)是一种能够在水下执行特定任务的自主式航行器,它在海洋资源勘探、海底环境监测、水下作业等领域具有广泛的应用前景[1 - 3]。目前,AUV水下路径规划研究已成为研究热点。

目前,常用的传统路径规划算法主要有遗传算法[4 - 5]、Dijkstra算法[6]、人工势场法[7 - 8]、RRT算法[9]、A*算法[10 - 11]等。王雷等[4]通过自适应步长限制子节点选择范围并结合交叉和变异操作,提高传统遗传算法的寻路效率和收敛速度。巩慧等[6]利用几何拓扑学方法改进Dijkstra算法,提高机器人行驶路径的平滑度和工作效率。但该算法增加了时间复杂度,导致计算效率降低。针对这一问题,郭明皓等[7]通过引入安全椭圆理论和预测距离方法优化人工势场范围,提高了算法路径规划效率,缩短了车辆行驶路径长度。但人工势场法只能解决局部空间的路径规划问题,在解决全局路径规划问题时,因缺少全局信息,容易陷入局部最小值。张亮等[9]通过自适应目标偏向、区域采样调整、贝塞尔曲线平滑处理3种策略,解决了传统RRT算法在复杂场景下盲目搜索、收敛差、采样成功率低、生成路径不平滑的问题。由于使用的是随机采样点搜索路径,在进行路径规划作业时无法准确生成一条最优最短路径。崔志伟等[10]采用转弯惩罚函数和冗余节点去除方法改进A*算法,进一步提升路径的搜索效率和平滑度。

以上传统路径规划算法,在处理简单复杂度的路径规划问题时,能够表现出高效、准确的特性。然而,传统算法在面对高维度、非线性的复杂水下环境时,存在计算量大、实时性差、难以适应环境变化等缺陷。针对传统路径规划算法的局限性,众多学者提出群智能优化算法。这类算法通过模拟自然界生物的集体行为,利用个体之间的信息共享与协作,能够在复杂的环境中实现高效的路径规划。且该种算法具有自适应性强和灵活性高的特点,能实时调整路径,快速响应环境变化,从而克服传统算法的局限。Zhang等[12]提出一种多策略改进人工鱼群方法,提高了算法在路径规划时的收敛效率,避免算法陷入局部最优。Zhao等[13]通过引入定向因子、概率权重因子、自适应算子、路径平滑策略4种方法改进人工鱼群算法,提高了算法收敛速度、路径质量以及避免陷入局部最优。马小陆等[14]采用双向搜索策略改进人工鱼群算法,提高了算法的路径搜寻效率,但由于采用双向搜索策略导致鱼群个体复杂度提升,容易陷入局部最优。高金喆等[15]通过融合遗传算法改进人工鱼群算法从而减小机器人巡检过程种的转弯幅度,提高了巡检机器人的运行效率。虽然遗传算法通常具有较好的全局搜索能力,但在早期阶段可能出现收敛速度变慢的情况。

通过对上述分析,结合水下海底地形复杂多变的因素,设计一种受海流影响可随机变换地形的三维地图。基于以上激励,针对传统人工鱼群算法(Artificial Fish Swarming Algorithm,AFSA)存在前期收敛速度慢、后期需要提高算法的收敛精度、适应性不足以及容易陷入局部最优等问题。对传统人工鱼群算法做出如下改进:

1)采用自适应因子改进鱼群视野和步长的策略,使鱼群能够更好地感知环境且更快地搜索到全局最优,实现更稳定的收敛;

2)利用对数函数改进鱼群的个体位置,使鱼群个体能够更加均匀地分布在有限的区域内,加快对环境的适应性,保证种群的多样性;

3)融入差分进化算法,通过差分进化算法的变异和交叉操作来跳出局部最优。

1 传统人工鱼群算法及其缺陷 1.1 地图模型建立

结合水下海底复杂地貌情况,将海底山峰作为路径规划中的目标障碍物,并通过式(1)对海底山峰进行描述。

$ z(x,y)=\sum \limits_{i=1}^{n}{h}_{i}\exp \left[-{\left(\frac{x-{x}_{i}}{{x}_{si}}\right)}^{2}-{\left(\frac{y-{y}_{i}}{{y}_{si}}\right)}^{2}\right] 。$ (1)

式中:$ z(x,y) $为地貌的高度值,即地貌的海拔高度或垂直高度;$ n $为山峰个数;$ ({x}_{i},{y}_{i}) $为第$ i $个山峰的中心位置坐标;$ {h}_{i} $为第$ i $个山峰高度;$ {x}_{si} $$ {y}_{si} $分别为第$ i $个山峰延$ x $轴和$ y $轴方向的衰减量。

采用文献[16]基于二维Navier-Stokes方程建立海流模型,如下式:

$ \frac{\partial w}{\partial t}+(V\nabla )\Delta w=v\Delta w。$ (2)

式中:$ w $为涡度;$ V $为海流场速度;$ \nabla $为梯度算子;$ \Delta $为拉普拉斯算子;$ t $为时间,是刻画海流状态连续变化的核心自变量。

单个粘性涡流场数学模型为:

$ {{\mathrm{eddy}}[{r}_{0},{k}_{c},\varphi ]\left\{\begin{aligned} & {V}_{x}(r)=-{k}_{c}\cdot \frac{y-{y}_{0}}{2\text{π} {(r-{{r}_{0}})}^{2}}\left[1-{e}^{-\frac{{(r-{{r}_{0}})}^{2}}{{\varphi }^{2}}}\right],\\ &{V}_{y}(r)={k}_{c}\cdot \frac{x-{x}_{0}}{2\text{π} {(r-{{r}_{0}})}^{2}}\left[1-{e}^{-\frac{{(r-{{r}_{0}})}^{2}}{{\varphi }^{2}}}\right],\\ &w(r)=\frac{{k}_{c}}{\text{π} {\varphi }^{2}}\cdot {e}^{-\frac{(r-{r}_{0})}{{\varphi }^{2}}}。\\ \end{aligned} \right.}$ (3)

式中:$ {V}_{x}(r) $为精度方向的速度;$ {V}_{y}(r) $为维度方向的速度;$ w(r) $为深度方向的速度;$ {r}_{0} $为涡流中心的位置向量;$ {k}_{c} $为涡流半径;$ \varphi $为涡流强度。

根据上述公式在长宽高为100 m×100 m×100 m的三维空间内,随机生成受海流影响的三维海底山峰障碍物模型,如图1所示。

图 1 三维地图模型 Fig. 1 Three-dimensional map model
1.2 传统人工鱼群算法

传统人工鱼群算法是一种群智能优化算法[17],该算法通过模拟水域内鱼群的日常活动,将其行为分为觅食行为、聚群行为、追尾行为和随机行为[18 - 20]。通过模拟这4种行为,实现算法的路径寻优。人工鱼视觉概念图如图2所示。

图 2 人工鱼视觉概念图 Fig. 2 Artificial fish visual concept map

图中,$ {X}_{1} $$ {X}_{2} $为鱼群伙伴位置,$ {X}_{i} $为人工鱼初始位置状态,$ {X}_{j} $为更新后人工鱼所处位置状态,$ {S}_{0} $为人工鱼步长,$ {V}_{0} $为人工鱼视野范围。

视野范围表达式为:

$ {V}_{0}={V}_{\max }\left(1-\frac{iter}{\max \_ iter}\right)。$ (4)

视野驱动位置更新表达式为:

$ {X}_{j}={X}_{i}+{V}_{0}\cdot {\mathrm{Rand}}() 。$ (5)

式中:$ {V}_{\max } $为人工鱼最大视野范围;$ iter $为当前迭代次数;$ \max \_ iter $为最大迭代次数;$ {\mathrm{Rand}}() $为随机变量,可以增加人工鱼寻找位置的随机性。

步长表达式为:

$ {S}_{0}=\sigma \cdot D 。$ (6)

其中,

$ D=\sqrt{\sum \limits_{i=1,j=1}^{n}{({{X}_{i}}-{{X}_{j}})}^{2}}。$ (7)

步长驱动位置更新表达式为:

$ X_{i}^{t+1}=X_{i}^{t}+\frac{{X}_{j}-X_{i}^{t}}{\left|\left|X{}_{j}-X_{i}^{t}\right|\right|}\cdot {S}_{0}\cdot {\mathrm{Rand}}(),{Y}_{j} \gt {Y}_{i}。$ (8)

式中:$ \sigma $$ [0,\;1] $之间的一个随机参数,动态调整步长大小;$ D $为当前人工鱼与目标人工鱼之间的距离;$ {S}_{0} $为当前人工鱼的步长;$ {Y}_{i} $为初始位置的食物浓度;$ {Y}_{j} $为目标位置的食物浓度;$ X_{i}^{t} $为第$ i $条人工鱼在$ t $时刻的位置;$ \left|\left|X{}_{j}-X_{i}^{t}\right|\right| $为人工鱼$ {X}_{i} $和人工鱼$ {X}_{j} $之间的欧氏距离;$ X_{i}^{t+1} $为第$ i $条人工鱼在$ t+1 $时刻的位置。

人工鱼对其视野范围内目标位置食物浓度$ {Y}_{j} $与初始位置食物浓度$ {Y}_{i} $进行比较,当$ {Y}_{j} \gt {Y}_{i} $时,根据人工鱼步长设置大小,人工鱼$ {X}_{i} $朝着$ {X}_{j} $方向进行移动。

1.3 传统人工鱼群算法的缺陷

由仿真实验发现,传统人工鱼群算法存在3个缺陷。

缺陷1 如图3所示,传统人工鱼群算法存在前期收敛速度慢、后期收敛精度不足的缺陷。当视野和步长取值较小时,虽然算法在运行后期所得精度会有所提高,但运行前期的收敛速度较慢,导致算法整体运行时间较长。当视野和步长取值较大时,算法运行初期会具有较快的收敛速度,但在寻优后期易越过极值点,影响寻优结果的精度。

图 3 AFSA适应度收敛问题 Fig. 3 AFSA fitness convergence problem

缺陷2 如图4所示,传统人工鱼群算法在面对复杂地形问题时,由于鱼群个体之间的相似性,导致算法适应性不足。在每次迭代中,人工鱼会根据其当前个体位置、其他鱼的位置和食物浓度等来更新其状态,并对地图环境进行信息采集,由于鱼群个体之间缺乏多样性,导致可能无法精确收集到地图中的有效信息,从而无法对复杂环境做出及时判断,进而造成AUV直接穿过障碍物的现象。

图 4 与障碍物产生碰撞 Fig. 4 Collision with obstacles

缺陷3 如图5所示,传统人工鱼群算法存在容易陷入局部最优的缺陷,由于算法依赖于随机性和局部搜索。当算法在某个局部最优解附近徘徊时,搜索效率明显降低。该现象在多峰函数优化中尤为明显,尤其是当解空间复杂且存在多个局部最优时。

图 5 陷入局部最优 Fig. 5 Falls into local optimum
2 改进人工鱼群算法 2.1 自适应因子改进鱼群视野和步长

针对传统人工鱼群算法前期收敛速度慢、后期收敛不足的问题,采用自适应因子改进鱼群视野和步长的策略。在觅食行为中加入自适应调整因子$ \alpha $改变视野范围大小,更新人工鱼$ {X}_{i} $在其视野范围内的选择状态$ {X}_{j} $。在随机行为中加入自适应调整因子$ \beta $,通过$ \beta $改变步长大小来更新人工鱼在随机行为中的选择状态。

改进后视野范围表达式为:

$ V=\alpha \cdot {V}_{0},$ (9)

其中,

$ \alpha ={\alpha }_{\min }+({\alpha }_{\max }-{\alpha }_{\min })\cdot \left(1-\frac{iter}{\max \_ iter}\right)。$ (10)

将改进后的视野范围表达式代入到式(5),得到改进后的视野驱动。更新表达式为:

$ {X}_{{\mathrm{new}}\_ j}={X}_{i}+V\cdot {\mathrm{rand}}()。$ (11)

式中:$ \alpha $为自适应因子;$ {\alpha }_{\min } $为自适应函数的$ \alpha $最小值;$ {\alpha }_{\max } $为自适应函数的$ \alpha $最大值;$ iter $为当前迭代次数;$ \max \_ iter $为最大迭代次数;$ {V}_{0} $为更新前视野范围表达式,见式(4);$ V $为改进后视野范围;$ {X}_{{\mathrm{new}}\_ j} $为改进后人工鱼$ j $的所处位置;$ {X}_{i} $为人工鱼i的初始位置;$ {\mathrm{rand}}() $为随机变量,可以增加人工鱼寻找位置的随机性。

改进后步长表达式为:

$ S=\beta \cdot {S}_{0} 。$ (12)

其中,

$ \beta ={\beta }_{\min }+({\beta }_{\max }-{\beta }_{\min })\cdot \left(1-\frac{iter}{\max \_ iter}\right) 。$ (13)

将式(2)代入到式(8)中,得到改进后的步长驱动位置,表达式为:

$ X_{{\mathrm{new}}\_ i}^{t+1}=X_{i}^{t}+\frac{{X}_{j}-X_{i}^{t}}{\left|\left|X{}_{j}-X_{i}^{t}\right|\right|}\cdot S\cdot {\mathrm{rand}}()。$ (14)

式中:$ \beta $为自适应因子;$ {\beta }_{\min } $为自适应函数$ \beta $的最小值;$ {\beta }_{\max } $为自适应函数$ \beta $的最大值;$ {S}_{0} $为更新前步长范围表达式,见式(6);$ S $为改进后步长;$ X_{{\mathrm{new}}\_ i}^{t+1} $为改进后人工鱼 $ i $ 的所处位置。

通过式(10)和式(13)可知,自适应因子$ \alpha $$ \beta $可以根据算法当前迭代次数进行动态调整,保持算法的灵活性。在前期迭代次数较低时,自适应因子$ \alpha $$ \beta $增大,随之鱼群视野范围和步长增大,提高算法收敛速度。在后期迭代次数逐渐增大,自适应因子$ \alpha $$ \beta $减小,鱼群视野范围和步长随之减小,提高算法后期收敛精度。从而弥补了传统人工鱼群算法前期收敛速度慢、后期收敛精度低的缺点。

2.2 对数函数改进鱼群个体

传统人工鱼群算法在面对复杂地形问题时,由于算法适应性不足,造成避障失效。在鱼群个体中添加对数函数,对数函数具有平滑、单调递增的特点,能够有效调整个体在搜索过程中的行为。采用对数函数设计鱼群个体更新式(15),能有效提高算法的适应性。

$ {X}_{i+1}=c\cdot ({X}_{j}-{X}_{i}),$ (15)

其中,

$ c={\log }_{{{N}_{i}}}p,{N}_{i} \gt 1,p \gt 1。$ (16)

式中:$ c $为对数函数;$ {N}_{i} $为算法的最大迭代次数;$ p $为算法当前迭代次数;$ {X}_{i+1} $为每迭代一次后人工鱼在下一位置的适应状态。

根据式(15)与式(16)可知,随着迭代次数的增加,对数函数$ c $呈单调递增,人工鱼在每次迭代后的适应状态也逐步提升,鱼群个体探索更多可能的环境信息,从而提高算法整体适应性,避免与障碍物产生碰撞。

2.3 融合差分进化算法

针对传统人工鱼群算法陷入局部最优问题,在传统人工鱼群算法的基础上融入差分进化算法,目的是通过DE的变异和交叉操作来增强AFSA的局部搜索能力,防止陷入局部最优。

通过差分进化算法,将传统人工鱼群算法中的鱼群位置转换成矩阵形式,表达式为:

$ {P}_{ij}=\left[\begin{matrix}{X}_{11} & {X}_{12} & \cdots & {X}_{1m}\\ {X}_{21} & {X}_{22} & \cdots & {X}_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ {X}_{n1} & {X}_{n2} & \cdots & {X}_{nm}\\ \end{matrix}\right] \text{,} {P}_{\mathrm{{best}}}={X}_{{\mathrm{best}}\_n}。$ (17)

式中:$ {P}_{ij} $为鱼群位置矩阵;$ {P}_{{\mathrm{best}}} $为鱼群位置最优矩阵;$ {X}_{{\mathrm{best}}\_ n} $为选定的最优人工鱼位置。

根据式(17)得出,将鱼群位置转换为矩阵形式表示,能更清晰地表示鱼群的状态和位置,利用矩阵运算可以同时处理多个人工鱼的位置更新,显著提高算法的运行效率。

碰撞检测调整适应度。假设当前鱼的位置为$ {X}_{i} $,环境中存在障碍物,障碍物的坐标为$ {O}_{j} $,鱼与障碍物之间的距离用$ {d}_{ij}=\left|\left|{X}_{i}-{O}_{j}\right|\right| $表示。通过碰撞检测函数根据鱼群所处位置$ {X}_{i} $与障碍物所处坐标$ {O}_{j} $之间的距离进行避障,如下式:

$ f_{i}^{\prime}=\left\{\begin{aligned} &1\; 000\cdot f_{i}^{\prime},{\mathrm{judgeObs}}({O}_{j},{X}_{i})=1,\\ &{f}_{i},{\mathrm{otherwise}}。\\ \end{aligned} \right.$ (18)

式中:$ {X}_{i} $为人工鱼所处位置;$ {O}_{j} $为障碍物所处位置;$ {f}_{i} $为适应度检测函数;$ {\mathrm{judgeObs }}$为避障函数。

计算式分别为:

$ {f}_{i}={\mathrm{calFitness}}(startPos,goalPos,{X}_{i})。$ (19)
$ {\mathrm{judgeObs}}=\sum \limits_{j=1}^{n}\frac{1}{{d}_{ij}}\cdot H\left({d}_{ij}-{d}_{0}\right) ,$ (20)

式中:$ {d}_{ij} $为人工鱼与障碍物之间的距离;$ {d}_{0} $为人工鱼与障碍物之间的安全阈值;$ H $为一个单位阶跃函数;$ startPos $为路径起点;$ goalPos $为路径终点;

根据式(20)可知,当人工鱼与障碍物的距离$ {d}_{ij} $$ {d}_{0} $时,鱼会感受到避碰的压力。避碰函数通过$ 1/{d}_{ij} $的形式来增强近距离障碍物的影响,距离越近,避碰力量越大。将所有障碍物对鱼的避碰力进行累加,形成一个总的避碰力,指引鱼调整移动方向,避开障碍物。

其中,$ {\mathrm{calFitness}} $为适应度计算函数,计算式为:

$ {\mathrm{calFitness}}({X}_{i})=\sum \limits_{k=1}^{m}{w}_{k}{f}_{k}({X}_{i}) 。$ (21)

式中:$ {w}_{k} $为每个目标鱼的权重;$ {f}_{k}({X}_{i}) $为第$ k $个目标鱼函数。

根据式(19)与式(21)得出,通过适应度计算函数${\mathrm{ calFitness}} $对从起点向终点进行寻路的每条人工鱼进行质量权重评估。适应度评估通常发生在每次鱼的位置更新后。个体会根据当前适应度值选择移动的方向,关注那些适应度较高的个体,以便于更好地探索搜索空间。

变异操作表达式为:

$ {V}_{ij}={P}_{{\mathrm{best}}}+F\cdot ({P}_{r1}-{P}_{r2})。$ (22)

交叉操作表达式为:

$ {U}_{ij}=\left\{\begin{aligned} &{V}_{ij},{\mathrm{rand}}_{i}\leqslant CR,\\ &{P}_{ij},{\mathrm{otherwise}}。\\ \end{aligned} \right.$ (23)

式中:$ {V}_{ij} $为变异后鱼群个体;$ F $为变异因子;$ r_1 $$ r_2 $为随机选取的不同索引;$ {U}_{ij} $为经过交叉操作生成的新中间个体;$ CR $为交叉概率。

根据式(22)和式(23)得出,在传统人工鱼群算法的个体更新过程中,随机选取2个鱼群个体$ {P}_{r1} $$ {P}_{r2} $,通过变异因子$ F $生成新的变异个体$ {V}_{ij} $。在生成变异个体$ {V}_{ij} $后,通过交叉操作将变异个体$ {V}_{ij} $与当前个体$ P $结合,生成新的候选解$ {P}_{ij} $。引入差分进化中的变异和交叉策略,可以提高个体的多样性,防止陷入局部最优。

2.4 DE-IAFSA算法流程

DE-IAFSA算法的实现流程如图6所示。

图 6 DE-IAFSA算法实现流程图 Fig. 6 The flow chart of DE-IAFSA algorithm implementation

步骤1 设置初始化参数。

步骤2 初始化人工鱼群中每条人工鱼的位置,设置初始迭代值i=1。

步骤3 选择适应度。计算聚群行为和追尾行为的适应度值,选取其中最小适应度值。

步骤4 更新全局最优。根据所有人工鱼在迭代中得到的最小适应度值,更新全局最优解。

步骤5 由式(17),生成鱼群位置矩阵和最优矩阵。

步骤6 变异操作。根据式(22),对鱼群个体进行变异,产生新的变异个体。

步骤7 交叉操作。根据式(23),对变异后的鱼群个体和变异前鱼群个体进行交叉,产生新的交叉个体。

步骤8 对经过变异和交叉操作后产生的新个体与原始鱼群个体进行适应度比较。选取最优鱼群个体。

步骤9 终止条件判断。判断是否到达种群数,若未到达则返回步骤3,若到达则迭代值加1,并判断是否到达最大迭代值,若到达则输出最优适应度,若未到达则返回步骤2。

3 实验与结果分析

为保证实验的公正性和有效性,传统人工鱼群算法与改进后算法的公共初始参数设置如表1所示。通过Matlab分别在山峰数量为10、20、30的地图中对改进前后的算法进行仿真对比。

表 1 初始化相关参数设置 Tab.1 Initialize the relevant parameter settings
3.1 基于自适应因子改进鱼群视野和步长仿真

为验证引入自适应因子改进鱼群视野和步长能提高传统人工鱼群算法前期收敛速度和后期收敛精度,在Matlab上开展仿真实验,结果如图7所示。可以看出,在山峰数量为10、20、30的地图中,引入自适应因子改进的算法与传统人工鱼群算法相比前期收敛速度快,后期所达到的收敛精度高。

图 7 IAFSA和AFSA对比仿真图 Fig. 7 IAFSA and AFSA comparison simulation diagram
3.2 基于对数函数改进鱼群个体仿真

为验证采用对数函数改进鱼群个体能够提高算法的适应性,避免在搜索路径过程中与障碍物发生碰撞。在Matlab上进行仿真实验,结果如图8所示。可以看出,改进后的IAFSA2算法在山峰数量为10、20、30的地图中搜索路径时,均未与障碍物发生碰撞,算法适应性得到提高。

图 8 IAFSA2和AFSA对比仿真图 Fig. 8 IAFSA2 and AFSA comparison simulation diagram
3.3 基于融合差分进化算法仿真

在上述自适应因子改进鱼群视野和步长以及对数函数改进鱼群个体的基础上再次融入差分进化算法进行改进。为验证最终融合3种改进方法改进的DE-IAFSA算法能够有效避免陷入局部最优、提高前期收敛速度与后期收敛精度以及算法适应性,在Matlab上与传统人工鱼群算法及粒子群算法(Particle Swarm Optimization,PSO)进行仿真实验,结果如图9所示。可以看出,融合差分进化算法的DE-IAFSA算法在山峰数量为10、20、30的地图中搜索路径时,均未陷入局部最优。

图 9 DE-IAFSA和AFSA对比仿真图 Fig. 9 DE-IAFSA and AFSA contrast simulation diagram

为了使上述对比更加清晰,选取路径长度、适应度最优值和达到传统人工鱼群算法最优值迭代次数如表2表4所示。

表 2 不同地图下路径长度对比 Tab.2 Comparison of path length under different maps

表 3 不同地图下最优值对比 Tab.3 Comparison of optimal values under different maps

表 4 达到最优值迭代次数 Tab.4 The number of iterations to achieve the optimal value

根据表中数据,可以得出以下结论:

1) 在路径长度方面,改进后DE-IAFSA算法有效缩短了路径长度,优化幅度最高达29.7%,即使在山峰数量为30的高复杂度地图中仍保持19.8%的高优化率,显著优于改进前AFSA算法。

2) 在收敛精度方面,DE-IAFSA在所有地图上的精度均高于AFSA,在山峰数量为10的地图中提升幅度最高为18.2%,在山峰数量为20和30的复杂地图中分别提升3.4%和2.6%,证明该算法更接近于全局最优解并能有效降低陷入局部最优的风险。

3) 在收敛速度方面,DE-IAFSA的提升最为突出,最高达93%(山峰10地图),在复杂地图(山峰20和30)也分别提高了82%和70%,较改进前AFSA算法其收敛速度显著提升。

4) 横向对比PSO算法可知,其路径长度和收敛精度表现适中。虽在所有场景中能快速达到适应度最优值,但DE-IAFSA达到适应度最优值所需迭代次数更少,综合收敛效率更高。

综上所述,改进后DE-IAFSA算法对比改进前AFSA算法,其收敛速度、收敛精度以及路径长度在不同复杂度地图上均得到提升,展现出了改进后算法的适用性、鲁棒性及泛化能力。

4 结 语

本文针对传统人工鱼群算法在AUV路径规划寻优中存在的不足进行改进。通过引入自适应因子来改进鱼群的视野范围和移动步长,加快人工鱼群算法前期收敛速度和后期收敛精度;利用对数函数更新鱼群个体,提高人工鱼群算法的适应性;融合差分进化算法,利用变异、交叉操作,解决了传统人工鱼群算法容易陷入局部最优的问题。利用Matlab将改进后的DE-IAFSA算法与传统人工鱼群算法进行路径规划对比实验。结果表明,改进后的DE-IAFSA算法具有前期收敛速度快、后期收敛精度高、适应性强、避免陷入局部最优的特点。

参考文献
[1]
石博博, 朱嘉晟, 杨天慈, 等. 改进粒子群权重的水下机器人路径规划[J]. 舰船科学技术, 2025, 47(5): 159-165.
SHI B B, ZHU J S, YANG T C, et al. Path planning of underwater vehicle based on improved particle swarm weight[J]. Ship Science and Technology, 2025, 47(5): 159-165. DOI:10.3404/j.issn.1672-7649.2025.05.024
[2]
YANG Y, WANG Z, HU F, et al. Multi-objective optimization design for the maneuverability of underwater vehicles based on fully coupled hull-propeller-rudder interaction [J]. Ocean Engineering, 2025, (7): 333.
[3]
YAO Z F, LIU Q Z, JU Y Z. Improved artificial fish swarm based optimize rapidly-exploring random trees multi-robot exploration algorithm[J]. Journal of Computational Methods in Sciences and Engineering, 2023, 23(5): 2779-2794. DOI:10.3233/JCM-226866
[4]
王雷, 王艺璇, 李东东, 等. 基于改进遗传算法的移动机器人路径规划研究[J]. 华中科技大学学报(自然科学版), 2024, 52(5): 158-164.
WANG L, WANG Y X, LI D D, et al. Research on mobile robot path planning based on improved genetic algorithm[J]. Journal of Huazhong University of Science and Technology(Natural Science Edition), 2024, 52(5): 158-164.
[5]
CHENG Y M, ZHANG J Q, MAHMOUD A S, et al. An improved multiple adaptive neuro fuzzy inference system based on genetic algorithm for energy management system of island microgrid[J]. Scientific Reports, 2025, 15(1): 17988-17988. DOI:10.1038/s41598-025-98665-x
[6]
巩慧, 倪翠, 王朋, 等. 基于Dijkstra算法的平滑路径规划方法[J]. 北京航空航天大学学报, 2024, 50(2): 535-541.
GONG H, NI C, WANG P, et al. Smooth path planning method based on Dijkstra's algorithm[J]. Journal of Beijing University of Aeronautics and Astronautics, 2024, 50(2): 535-541. DOI:10.13700/j.bh.1001-5965.2022.0377
[7]
郭明皓, 姬鹏, 黄海威. 基于改进人工势场法的无人车路径规划与跟踪控制[J/OL]. 系统仿真学报, 1−10[2024−06−21].
GUO M H, JI P, HUANG H W. Unmanned vehicle path planning and tracking control based on improved artificial potential field method [J/OL]. Journal of System Simulation, 1−10 [2024−06−21].
[8]
YU J Y, SHI Q Y, LIN W, et al. Path planning for emergency response and rescue vessels in inland rivers by improved artificial potential field algorithms[J]. Journal of Marine Science and Application, 2025(prepublish): 1-13.
[9]
张亮, 王鑫, 张建锋. 多障碍场景下改进RRT算法路径规划[J]. 计算机工程与设计, 2023, 44(6): 1706-1713.
ZHANG L, WANG X, ZHANG J F. Improved RRT algorithm path planning in multi-obstacle scenarios[J]. Computer Engineering and Design, 2023, 44(6): 1706-1713. DOI:10.16208/j.issn1000-7024.2023.06.016
[10]
崔志伟, 张宇琳, 张飞舟, 等. 基于改进A~*算法的船舶路径优化[J]. 船舶工程, 2023, 45(11): 98-103.
CUI Z W, ZHANG Y L, ZHANG F Z, et al. Ship path optimization based on improved A~* algorithm[J]. Ship Engineering, 2023, 45(11): 98-103. DOI:10.13788/j.cnki.cbgc.2023.11.15
[11]
YANG T Y, ZOU L, WU Z X, et al. An improved A-star algorithm coupled with graph division and AIS data for ship path planning [J]. Ocean Engineering, 2025, 30121234 −121234.
[12]
ZHANG T , YU L , LI S , et al. Unmanned aerial vehicle 3d path planning based on an improved artificial fish swarm algorithm[J]. Drones, 2023, 7(10): 636.
[13]
ZHAO L, WANG F, BAI Y. Route planning for autonomous vessels based on improved artificial fish swarm algorithm[J]. Ships and Offshore Structures, 2023, 18(6): 897-906. DOI:10.1080/17445302.2022.2081423
[14]
马小陆, 李成成, 谭毅波, 等. 人工鱼群优化算法的移动机器人路径规划研究[J]. 机械科学与技术, 2024, 43(10): 1786-1796.
MA X L, LI C C, TAN Y B, et al. Research on mobile robot path planning based on artificial fish swarm optimization algorithm[J]. Mechanical Science and Technology, 2024, 43(10): 1786-1796. DOI:10.13433/j.cnki.1003-8728.20230103
[15]
高金喆, 寇志伟, 许寒琪, 等. 基于改进鱼群算法的牧场巡检机器人路径规划研究[J]. 中国农机化学报, 2024, 45(11): 202-208.
GAO J Z, KOU Z W, XU H Q, et al. Research on path planning of pasture inspection robot based on improved fish swarm algorithm[J]. Journal of Chinese Agricultural Mechanization, 2024, 45(11): 202-208. DOI:10.13733/j.jcam.issn.2095-5553.2024.11.031
[16]
杨惠珍, 王子江, 周卓彧, 等. 基于改进PSO-Lévy算法的海流环境下AUV节能路径规划[J]. 水下无人系统学报, 2024, 32(2): 337-344.
YANG H Z, WANG Z J, ZHOU Z Y, et al. AUV energy-saving path planning in ocean current environment based on improved PSO-Lévy algorithm[J]. Journal of Underwater Unmanned Systems, 2024, 32(2): 337-344. DOI:10.11993/j.issn.2096-3920.2023-0062
[17]
LI F F, YUN D, JIN J K. Path planning and smoothing of mobile robot based on improved artificial fish swarm algorithm[J]. Scientific Reports, 2022, 12(1): 659-659. DOI:10.1038/s41598-021-04506-y
[18]
CHEN Y X, LI Q N. Vehicle behavior discovery and three-dimensional object detection and tracking based on spatio-temporal dependency knowledge and artificial fish swarm algorithm[J]. Biomimetics, 2024, 9(7): 412. DOI:10.3390/biomimetics9070412
[19]
郭长珍, 李整. 自适应差分变异的人工鱼群算法[J]. 计算机系统应用, 2024, 33(8): 214-221.
GUO C Z, LI Z. Adaptive differential variation algorithm for artificial fish swarming[J]. Computer Systems & Applications, 2024, 33(8): 214-221. DOI:10.15888/j.cnki.csa.009572
[20]
GUO W, QIN G X, WANG L, et al. Robot path planning based on improved artificial fish swarm algorithm and MAKLINK graph [J]. Control and Decision Making, 2020, 35(9): 2145−2152.