CN115421522A - 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 - Google Patents
一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 Download PDFInfo
- Publication number
- CN115421522A CN115421522A CN202211373535.4A CN202211373535A CN115421522A CN 115421522 A CN115421522 A CN 115421522A CN 202211373535 A CN202211373535 A CN 202211373535A CN 115421522 A CN115421522 A CN 115421522A
- Authority
- CN
- China
- Prior art keywords
- path
- solution
- parameter
- vector
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000011159 matrix material Substances 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 176
- 241000257303 Hymenoptera Species 0.000 claims description 13
- 230000003044 adaptive effect Effects 0.000 claims description 12
- 238000003780 insertion Methods 0.000 claims description 7
- 230000037431 insertion Effects 0.000 claims description 7
- 239000000126 substance Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 17
- 238000000354 decomposition reaction Methods 0.000 description 16
- 238000002474 experimental method Methods 0.000 description 13
- 238000004088 simulation Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 241000283690 Bos taurus Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000009313 farming Methods 0.000 description 1
- 230000019637 foraging behavior Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009024 positive feedback mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
- G05D1/106—Change initiated in response to external conditions, e.g. avoidance of elevated terrain or of no-fly zones
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明公开了一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,包括以下步骤:步骤1:对需实施覆盖路径规划的CPP区域和该区域内需要避开的NFZ区域进行栅格处理,以此创建集合VSA、集合VSN和集合NFZS;步骤2:采用Dijkstra算法对经过NFZ区域的子路径进行计算得到避障子路径,得到子路径矩阵中;步骤3:采用多个并行线程,每个线程通过SAACO算法,得到当前线程的最优解;步骤4:从多个线程的最优解中选出算法最优解;步骤5:将算法最优解转换为最优路径,得到最优规划路径。
Description
技术领域
本发明属于无人机路径规划技术领域,具体为一种基于并行自适应蚁群算法的无人机覆盖路径规划方法。
背景技术
在过去的几十年中,无人机(UAV)被广泛应用于航拍、植保、快递运输、灾难救援、电力巡检、新闻报道等领域,其中许多无人机的应用涉及到覆盖路径规划(Coverage PathPlanning,CPP)问题。覆盖路径规划CPP一直是机器人领域的一个热点研究问题,它的任务是构建一条路径,确保无人机在给定区域中探索每个位置,同时避开障碍物。评价CPP路径的常见性能指标有:路径长度、转弯次数或转弯角度、完成路径的时间和区域覆盖率。
CPP算法根据环境是否可知,分为在线路径规划和离线路径规划两类。离线路径规划仅依赖静态环境信息,假设全部的环境信息是事先已知的。在线路径规划不需要事先获知要覆盖环境的完整信息,而是基于传感器信息来实时规划局部路径。
CPP算法按单元分解方式可分为三类:不分解、精确单元分解和近似单元分解。使用单个无人机在形状规则的简单区域执行CPP任务通常不需要进行单元分解,此时最常用的路径规划算法有来回法(Back-and-Forth)和螺旋法(Spiral)。而对于复杂的区域通常需要进行单元分解。精确单元分解将形状不规则的复杂区域划分为形状较规则的子区域后,对子区域执行路径规划。比较著名的精确单元分解法有梯形分解法(TrapezoidalDecomposition)、牛耕分解法(Boustrophedon Decomposition)。近似单元分解也叫基于栅格的分解,它将区域离散为一组规则形状(如正方形)的栅格,并让路径遍历这些栅格。基于栅格的分解方法有:生成树法(Spanning Tree Coverage,STC)、波前算法(Wavefront)、遗传算法、蚁群算法、模拟退火等。近年来,基于栅格分解的CPP算法,因其简单易行,被日益广泛地应用。
蚁群优化算法(Ant Colony Optimization,ACO)是通过模拟自然界中蚂蚁集体寻径觅食行为而提出的一种基于种群的启发式随机搜索算法。近些年来,ACO在路径规划中得到了广泛的应用。ACO采用正反馈机制,使得搜索过程不断收敛,最终逼近最优解。但ACO存在收敛速度慢、容易陷入局部最优、参数难以选择等问题。此外,如果区域内存在障碍物或禁飞区(No Flying Zone, NFZ),如何高效避障也是一个需要考虑的问题。
发明内容
发明目的:为克服传统蚁群算法的缺点,以及为解决如何高效避障的问题,本发明提出了一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,利用并行多线程技术,自适应选择参数,同时提高算法的运行速度和规划路径的性能。
技术方案:一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,包括以下步骤:
步骤1:获取需实施覆盖路径规划的CPP区域和在CPP区域内需要避开的NFZ区域,对CPP区域和NFZ区域进行栅格处理,得到由多个CPP栅格构成的CPP区域,以及得到由多个NFZ栅格构成的NFZ区域,取每个CPP栅格的中心点作为一A类点,以此创建A类点集合VSA;取每个NFZ栅格的顶点作为一N类点,以此创建N类点集合VSN;以每个NFZ栅格的对角线为元素,创建集合NFZS;每个A类点和每个N类点均有唯一的序列号;
步骤2:判断A类点集合VSA中任意两个A类点构成的子路径是否经过NFZ区域,若子路径与集合NFZS中所有的对角线都不相交,则判定该子路径不经过NFZ区域,将该子路径记录在子路径矩阵中;若子路径与集合NFZS中的任意一条对角线相交,则判定该子路径经过NFZ区域;对于经过NFZ区域的子路径,取N类点集合VSN中的所有点和构成该子路径的两个A类点,组合成一个点集合,用这个点集合构建无向图,以该子路径的起点为避障后起点,以该子路径的终点为避障后终点,采用Dijkstra算法,在无向图上求解出从避障后起点到避障后终点的最短路径,该最短路径为避障子路径,将该避障子路径记录在子路径矩阵中;
步骤3:采用多个并行线程,每个线程通过SAACO算法,得到当前线程的最优解;
步骤4:当所有并行线程结束后,在多个线程的最优解中,取适应度值最小的最优解作为算法最优解;
步骤5:将算法最优解转换为最优路径,该最优路径为无人机覆盖最优规划路径;
其中,步骤3中,所述的通过SAACO算法,得到当前线程的最优解,包括以下子步骤:
S310:通过随机产生多个参数向量来初始化参数存档,所述参数存档中存储有多个参数向量、每个参数向量的适应度值和每个参数向量的选择权重;每个参数向量拥有多个参数值;所述参数值包括解存档中解向量的数目n、每个线程的蚂蚁数目q和搜索解存档范围大小参数;随机产生的参数向量满足自适应参数最大值数组Cmax和自适应参数最小值数组Cmin约定的范围;
S320:从参数存档中选择一个参数向量,用这个参数向量中对应的参数值设置解存档中解向量的数目n;
S330:随机产生个解向量,计算每个解向量的适应度值,将解向量和它的适应度值存入解存档中;所述解存档中存储有n个解向量、每个解向量的适应度值和每个解向量的选择权重;该解向量为路径顺序经过的点的序列号组成的向量;每个解向量包含A类点集合VSA中所有的A类点,且每个A类点只出现一次;所述解向量的适应度值为:将解向量对应的路径在步骤2的子路径矩阵中查询,得到避障后路径,该避障后路径的总飞行时间为该解向量的适应度值;
S340:对解存档中的解向量按照适应度值进行排序,仅保留前n个解向量;
S360:每个蚂蚁依据自身搜索解存档范围,从解存档中选择一个解向量,通过对该解向量进行反转和插入操作,构造出新的解向量;计算新的解向量的适应度值,并将该新的解向量和它的适应度值存入解存档中;直至q个蚂蚁全部完成;
S370:对解存档中的解向量按照适应度值进行排序,仅保留前n个解向量;
S380:将蚂蚁构造的q个新解中最优解的适应度值作为当前参数向量的适应度值,将当前参数向量和它的适应度值存入参数存档中,存入后,将参数存档中的参数向量按照适应度值进行排序,仅保留前a个参数向量,其中a为参数档案中参数向量的数目;
S390:判断是否达到最大迭代次数,若没有,则转入S350:否则退出循环,得到当前线程输出的最优解。
进一步的,在所述的取每个NFZ栅格的顶点作为一N类点,以此创建N类点集合VSN之前,还包括:
对于由多个NFZ栅格构成的NFZ区域,将存在公共边的NFZ栅格进行合并,得到合并后的NFZ栅格;
将合并后的NFZ栅格的顶点作为N类点,以此创建N类点集合VSN。
进一步的,在S320中,根据参数向量的选择权重,利用赌轮法从参数存档中选择一个参数向量,用这个参数向量中对应的参数值设置解存档中解向量的数目n。
进一步的,在S330中,所述的将解向量对应的路径在步骤2的子路径矩阵中查询,得到避障后路径,具体包括:
在解向量中,按起始点到终点的顺序,依次将两个相邻的点组成子路径;
将该子路径在子路径矩阵中查询,得到避障子路径;
组合所有避障子路径,得到避障后路径。
进一步的,在S350中,所述的利用基本向量构造新的参数向量,具体包括:
根据基本向量中每个参数值的概率密度函数Pd(x),在每个参数值的邻域中提取一个新的参数值;
由新的参数值形成新的参数向量;
每个参数值的概率密度函数Pd(x),表示为:
式中
进一步的,在S360中,所述的通过对该解向量进行反转和插入操作,构造出新的解向量,具体包括:通过对该解向量以50%概率进行反转操作,以50%概率进行插入操作,构造出新的解向量。
有益效果:本发明与现有技术相比,具有以下优点:
(1)本发明采用栅格化技术,得到与CPP和NFZ对应的栅格集合,包括;A类点集合VSA、N类点集合VSN和集合NFZS,利用矩形区域代表NFZ区域,使用集合NFZS来判定是否经过NFZ区域,大大降低了NFZ区域的建模难度,简化了判定是否经过NFZ区域的步骤;
(2)本发明运用Dijkstra算法,提前计算A类点集合VSA中任意两点之间的避障后子路径,记录在子路径矩阵中;后续所有避障处理只需查询子路径矩阵即可,极大降低了算法的计算量,提高了算法的运算速度;
(3)本发明采用多个并行线程,每个进程运行一个独立的SAACO算法。并行计算的应用加快了算法的运算速度,降低了SAACO陷入局部最优的概率,提高了算法的整体性能;
(4)本发明针对蚁群算法对参数的依赖性,采用了自适应参数设置方法,能根据参数的质量自动调整参数,自适应参数设置方法减少了人工设定参数的不确定性,提高了算法的稳定性和综合性能;
(5)本发明引入旅行商算法中成熟的交换和插入算子来构建新的解向量,保证了算法的可行性,提高了算法的适用性。
附图说明
图1是本发明的流程图;
图2是实施例1中的需要实施的CPP区域图和NFZ区域图;
图3是实施例1中的栅格化后的区域图;
图4是实施例1中的标注关键点后的区域栅格图;
图5是实施例1中的合并NFZ栅格后的区域栅格图;
图6是实施例1中的未处理NFZ规避的覆盖路径规划图;
图7是实施例1中的处理NFZ规避后的覆盖路径规划图;
图8是实施例1中的参数存档的结构图;
图9是实施例1中的解存档的结构图;
图10是实施例2中平台的主界面;
图11是实施例2中平台的结果保存文件示意图;
图12是实施例2中本发明方法与现有文献公开的方法进行比较实验,得到的实验结果图;其中,图12中的(a)为采用现有文献公开的方法得到的路径示意图,图12中的(b)为采用本发明方法得到的路径示意图;
图13是实施例2中对真实场景进行了建模、运用平台算法进行了路径规划,并对规划路径进行了Gazebo仿真,得到的Gazebo仿真图;
图14是实施例2中CPP model1对应的场景图;
图15是实施例2中CPP model2对应的场景图;
图16是实施例2中CPP model3对应的场景图。
具体实施方式
现结合附图和实施例进一步阐述本发明的技术方案。
实施例1:
如图1所示,本实施例的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,主要包括以下步骤:
步骤1:导入需实施CPP区域的区域信息和全局参数信息;
本步骤提及的区域信息为CPP模型实例信息,该CPP模型实例信息由利用基于栅格的技术对区域和NFZ进行建模得到,具体为:
S120:基于栅格技术,将需要实施的CPP区域和NFZ区域,映射为栅格集合,如图3所示,得到栅格化后的区域,即得到由多个CPP栅格构成的CPP区域,以及得到由多个NFZ栅格构成的NFZ区域。每个栅格的尺寸为。
S130:对栅格化后的区域进行标记,如图4所示。标记规则为:按从上到下,从左到右的顺序,在CPP区域的栅格的中心点处标注:“A”+序号,以此创建A类点集合VSA。同样的,在NFZ栅格的顶点上标注:“N”+序号。上述提及的中心点和顶点用向量:V(te,sn,x,y)表示,其中,te表示点的类型,sn表示点的序号,x,y分别表示点的横坐标和纵坐标。如图4所示,VA10可以表示为V(“A”,10,70,50),VN7可以表示为V(“N”,7,20,60)。
S140:为了减少NFZ区域,简化避障计算,可通过合并相邻的NFZ栅格,去除多余的N类点实现。即将存在公共边的NFZ栅格合并成尽可能大的矩形。图4中,NFZ栅格NR(VN6,VN7,VN10,VN9)和NR(VN7,VN8,VN11,VN10)存在公共边LS(VN7,VN10),可以合并为NR(VN6,VN8,VN11,VN9)。合并后,VN10不参与构建NFZ矩形,为需要去除的多余点,去除多余点后的区域如图5所示,合并后的NFZ矩形,将矩形顶点标记为N类点,以此创建N类点集合VSN。
S150:为了简化避障计算,创建NFZ对角线的集合NFZS。只要路径与集合NFZS中的任意一条线段相交(不包括对角线的顶点),则需要进行避障处理。特殊的,图5中LS(VN7,VN8)是两个NFZ的公共边,它被视为NFZ的内部,无人机不能通过它,因而,该线段也被加入集合NFZS。
最终,本步骤提及的区域信息可以表示为G=G(VAS,VNS,NFZS)。
本步骤提及的全局参数信息包括:无人机平均角速度ψ、无人机平均飞行速度ν、并行线程数目TdNum、最大迭代次数Itmax、自适应参数最大值数组Cmax、自适应参数最小值数组Cmin、解存档中解向量的数目n、参数存档中参数向量的数目a、每个线程的蚂蚁数目q。
步骤2:采用Dijkstra算法进行避障处理,构建子路径矩阵PM;该子路径矩阵PM中的每个元素为:运用Dijkstra算法对A类点集合VSA中任意两个点构成的子路径进行避障计算得到的避障子路径。换言之,若A类点集合VSA中任意两个点构成的子路径没有经过NFZ区域,则将由这两个点构成的子路径记录在子路径矩阵PM中。若A类点集合VSA中任意两个点构成的子路径经过NFZ区域,则将由这两个点构成的子路径进行避障处理,得到避障子路径,再将该避障子路径记录在子路径矩阵PM中。判断两个点构成的子路径是否经过NFZ区域的方法为: 假设NFZ区域的内部不允许无人机通过,而NFZ区域的边允许通过,若该子路径与NFZS中的任意一条对角线相交,则判定该子路径经过了NFZ区域,需要启动避障处理。若该子路径与NFZS中的所有对角线都不相交,则判定该子路径不经过NFZ,不需要避障处理。
本实施例运用Dijkstra算法进行避障处理,包括:将构成子路径的两个点和N类点集合VSN中的所有点组合成一个点集合,用这个点集合构建无向图;然后以子路径的起点为起点,子路径的终点为终点,在无向图上运行Dijkstra算法,得出从起点到终点的最短路径,这个最短路径即为避障子路径。
本步骤的具体操作步骤为:
S210:按顺序从A类点集合VSA中取出两个点VAi,VAj,将这两个点组合成线段LSx =(VAi, VAj);
S220:判断LSx是否与集合NFZS中的任意一条对角线相交。若LSx与集合NFZS中的所有对角线都不相交,则将LSx添加到子路径矩阵PM中,即PM[i][j]=LSx,转到S240。若LSx与集合NFZS中的任意一条对角线相交,则转到S230,进行避障处理。
S230:运用Dijkstra算法对LSx进行避障处理。具体方法为:将LSx的顶点(VAi,VAj)和N类点集合VSN中的所有点组合成一个点集合,用这个点集合构建无向图;然后以VAi为起点,VAj为终点,在无向图上运行Dijkstra算法,得出从起点到终点的最短路径LSy,即为避障子路径,将避障子路径LSy添加到PM中,即PM[i][j]=LSy。
S240:判断A类点集合VSA中是否任意两个点组成的线段都已经进行避障处理,若没有,则转到S210,否则,输出子路径矩阵PM。
步骤3:启动多个并行线程,每个线程使用一个SAACO算法计算规划路径,具体操作步骤为:
S310:通过随机产生多个参数向量来初始化自适应参数存档。随机产生的参数向量满足自适应参数最大值数组Cmax和自适应参数最小值数组Cmin约定的范围。参数存档的结构如图8所示。图8中,cj代表第j个参数向量,a代表参数档案中参数向量的数目,代表第j个参数向量的第i个参数值,f(cj)表示第j参数向量的适应度值,表示第j个参数向量的选择权重。SAACO算法的自适应参数有3个:解存档中解向量的数目n、每个线程的蚂蚁数目q和搜索解存档范围大小参数。
S320:根据参数向量的选择权重,利用赌轮法从参数存档中选择一个参数向量,用这个参数向量设置解存档中解向量的数目n。
解存档中,解向量为路径顺序经过的点的序列号组成的向量。一个解向量包含A类点集合VSA中的所有点,且每个点只包含一次。如解向量sj如下式:
sj=(4,3,2,1,0,5,6,7,8,11,10,9,12,13,14)
解向量sj对应的路径Pj如下式,对应的图形如图6所示。
Pj=P(VA4,VA3,VA2,VA1,VA0,VA5,VA6,VA7,VA8,VA11,VA10,VA9,VA12,VA13,VA14)
解向量的适应度值计算过程为:在解向量中,按从起始点到终点的顺序,依次将两个相邻点组成为子路径,查询子路径矩阵PM,得到避障子路径,组合所有避障子路径得到避障后路径。计算避障后路径的总飞行时间,设置适应度值为总飞行时间。
如图7所示,路径Pj中经过避障处理后的路径Pi为:
Pi=P(VA4,VA3,VA2,VA1,VA0,VA5,VA6,VA7,VN0,VN1,VA8,VA11,VA10,VA9,VA12,VA13,VA14)
该路径的长度为308.28米,转角和为630度,如果无人机平均角速度为30度/秒、平均飞行速度为10米/秒,则总飞行时间为:51.828秒,即适应度值为51.828。
S340:在解存档中按解向量的适应度值进行排序,质量好的解排在质量差的解的上部,保留解存档中排在上部的n个解,去除多余的解,得到刷新后的解存档。
式中
在构造新的参数向量时,根据参数向量中每个参数值的概率密度函数Pd(x),概率性地,每个参数值都通过公式(3)在它的附近邻域中选择一个新的参数值,这些新的参数值形成一个新的参数向量。Pd(x)如下式所示:
式中:
S360:蚂蚁从解存档中选择一个解向量,进行反转和插入操作,构造出新的解向量。以50%概率选择反转操作,以50%的概率选择插入操作。
假设x、y是两个随机数,m是解向量的维数,且1≤x<y≤m,si为选择的解向量,如下式:
其中,s i x-1为s i 在x-1位置的分量,s i x 为s i 在x位置的分量,s i y-1为s i 在y-1位置的分量,为s i 在y位置的分量,s i y+1为s i 在y+1位置的分量,为s i 在m位置的分量。
反转操作将解向量si中,从x到y位置的分量进行反转,反转操作后的解向量如下式:
插入操作将解向量si中,y位置的分量插入到x位置,插入操作后的解向量如下式:
S370:计算新的解向量的适应度值,将新的解向量和它的适应度值存入解存档中。
S380:判断是否达到最大蚂蚁数目,若没有,则转到S360;若达到最大蚂蚁数目则退出循环,转到S390。
S390:刷新解存档(方法同S340)。将蚂蚁构造的q个新解中最优解的适应度值作为当前参数向量的适应度值。将当前参数向量和它的适应度值添加到参数存档中,刷新参数存档(刷新方法参照S340)。判断是否达到最大迭代次数,若没有,则转到S350,若达到最大迭代次数则退出循环,获取并输出本线程的最优解,退出线程。
步骤4:等待所有并行线程结束后,在多个线程的最优解中,取适应度值最小的最优解作为算法最优解。
步骤5:将算法最优解转换为最优路径,输出最优规划路径。
实施例2:
现本发明所提出的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法进行平台开发和仿真验证。
并行自适应蚁群算法的无人机覆盖路径规划平台利用Visual Studio为开发工具,以C#开发语言。开发的平台针对多个地图场景,采用牛耕法、波前法、螺旋法、模拟退火法、蚁群法等对场景地图实施路径规划。规划的路径能够以图形化的方式展示,也以文件形式保存结果。平台的主界面如图10所示,平台的结果保存文件如图11所示。
现利用路径规划平台进行多类验证实验,实验中使用了3个不同场景,分别命名为CPP model1、CPP model2和CPP model3,对应的场景图分别为图14、图15和图16。
(1)自适应参数验证实验。通过实验,对比了人工设定参数与自适应参数配置两种方案的算法性能。部分实验结果如表1,实验结果证明了自适应参数能够获得更优异的规划路径。
表1 人工设定参数与本发明方法的性能对比
(2)并行计算实验。通过实验,对比了采用不同的并行线程数目的算法性能。部分实验结果如表2,实验结果证明了提升线程的数目可以获得更优异的规划路径。
表2 采用不同的并行线程数目的算法性能对比
(3)与其他算法的比较实验。通过实验,对比了本发明算法与来回法、螺旋法和波前法在CPP model1和CPP model2下的性能差异。部分实验结果如表3,实验结果证明了本发明所提算法获得的规划路径比其它算法获得的路径更优异。
表3 本发明算法与来回法、螺旋法和波前法的性能对比
(4)与其他文献的比较实验。本发明算法与现有文献(J Valente, J.D.C.A.B. DSanz, Frutos, M.: Near-optimal coverage trajectories for image mosaicingusing a miniquad-rotor over irregular-shaped fields. Precision Agriculture14, 115–132 (2013))公开的基于深度有限搜索算法的规划路径方法进行比较实验,实验结果如图12所示,图12中的(a)图为采用文献提及的方法得到的路径,(b)图为采用本发明算法得到的路径,实验结果证明了本发明所提算法能提供更优异的路径。
(5)本实验对真实场景进行了建模、运用平台算法进行了路径规划,并对规划路径进行了Gazebo仿真。仿真结果表明,算法能够规划出可供无人机实际使用的、优异的覆盖飞行路径。Gazebo仿真如图13所示。
通过大量各类实验,证明本发明所提算法具有非常优异的路径规划性能,规划的路径在飞行时间、能耗等指标上具有明显的优越性。Gazebo仿真证明了算法具备实际可用性,规划的算法可以直接在无人机上使用。
Claims (6)
1.一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,其特征在于:包括以下步骤:
步骤1:获取需实施覆盖路径规划的CPP区域和在CPP区域内需要避开的NFZ区域,对CPP区域和NFZ区域进行栅格处理,得到由多个CPP栅格构成的CPP区域,以及得到由多个NFZ栅格构成的NFZ区域,取每个CPP栅格的中心点作为一A类点,以此创建A类点集合VSA;取每个NFZ栅格的顶点作为一N类点,以此创建N类点集合VSN;以每个NFZ栅格的对角线为元素,创建集合NFZS;每个A类点和每个N类点均有唯一的序列号;
步骤2:判断A类点集合VSA中任意两个A类点构成的子路径是否经过NFZ区域,若子路径与集合NFZS中所有的对角线都不相交,则判定该子路径不经过NFZ区域,将该子路径记录在子路径矩阵中;若子路径与集合NFZS中的任意一条对角线相交,则判定该子路径经过NFZ区域;对于经过NFZ区域的子路径,取N类点集合VSN中的所有点和构成该子路径的两个A类点,组合成一个点集合,用这个点集合构建无向图,以该子路径的起点为避障后起点,以该子路径的终点为避障后终点,采用Dijkstra算法,在无向图上求解出从避障后起点到避障后终点的最短路径,该最短路径为避障子路径,将该避障子路径记录在子路径矩阵中;
步骤3:采用多个并行线程,每个线程通过SAACO算法,得到当前线程的最优解;
步骤4:当所有并行线程结束后,在多个线程的最优解中,取适应度值最小的最优解作为算法最优解;
步骤5:将算法最优解转换为最优路径,该最优路径为无人机覆盖最优规划路径;
其中,步骤3中,所述的通过SAACO算法,得到当前线程的最优解,包括以下子步骤:
S310:通过随机产生多个参数向量来初始化参数存档,所述参数存档中存储有多个参数向量、每个参数向量的适应度值和每个参数向量的选择权重;每个参数向量拥有多个参数值;所述参数值包括解存档中解向量的数目n、每个线程的蚂蚁数目q和搜索解存档范围大小参数;
S320:从参数存档中选择一个参数向量,用这个参数向量中对应的参数值设置解存档中解向量的数目n;
S330:随机产生个解向量,计算每个解向量的适应度值,将解向量和它的适应度值存入解存档中;所述解存档中存储有n个解向量、每个解向量的适应度值和每个解向量的选择权重;该解向量为路径顺序经过的点的序列号组成的向量;每个解向量包含A类点集合VSA中所有的A类点,且每个A类点只出现一次;所述解向量的适应度值为:将解向量对应的路径在步骤2的子路径矩阵中查询,得到避障后路径,该避障后路径的总飞行时间为该解向量的适应度值;
S340:对解存档中的解向量按照适应度值进行排序,仅保留前n个解向量;
S360:每个蚂蚁依据自身搜索解存档范围,从解存档中选择一个解向量,通过对该解向量进行反转和插入操作,构造出新的解向量;计算新的解向量的适应度值,并将该新的解向量和它的适应度值存入解存档中;直至q个蚂蚁全部完成;
S370:对解存档中的解向量按照适应度值进行排序,仅保留前n个解向量;
S380:将蚂蚁构造的q个新解中最优解的适应度值作为当前参数向量的适应度值,将当前参数向量和它的适应度值存入参数存档中,存入后,将参数存档中的参数向量按照适应度值进行排序,仅保留前a个参数向量,其中a为参数档案中参数向量的数目;
S390:判断是否达到最大迭代次数,若没有,则转入S350:否则退出循环,得到当前线程输出的最优解。
2.根据权利要求1所述的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,其特征在于:在所述的取每个NFZ栅格的顶点作为一N类点,以此创建N类点集合VSN之前,还包括:对于由多个NFZ栅格构成的NFZ区域,将存在公共边的NFZ栅格进行合并,得到合并后的NFZ栅格;
将合并后的NFZ栅格的顶点作为N类点,以此创建N类点集合VSN。
3.根据权利要求1所述的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,其特征在于:在S320中,根据参数向量的选择权重,利用赌轮法从参数存档中选择一个参数向量,用这个参数向量中对应的参数值设置解存档中解向量的数目n。
4.根据权利要求1所述的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,其特征在于:在S330中,所述的将解向量对应的路径在步骤2的子路径矩阵中查询,得到避障后路径,具体包括:
在解向量中,按起始点到终点的顺序,依次将两个相邻的点组成子路径;
将该子路径在子路径矩阵中查询,得到避障子路径;
组合所有避障子路径,得到避障后路径。
6.根据权利要求1所述的一种基于并行自适应蚁群算法的无人机覆盖路径规划方法,其特征在于:在S360中,所述的通过对该解向量进行反转和插入操作,构造出新的解向量,具体包括:通过对该解向量以50%概率进行反转操作,以50%概率进行插入操作,构造出新的解向量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2022106975851 | 2022-06-20 | ||
CN202210697585.1A CN114911270A (zh) | 2022-06-20 | 2022-06-20 | 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115421522A true CN115421522A (zh) | 2022-12-02 |
CN115421522B CN115421522B (zh) | 2023-03-24 |
Family
ID=82771917
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210697585.1A Withdrawn CN114911270A (zh) | 2022-06-20 | 2022-06-20 | 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 |
CN202211373535.4A Active CN115421522B (zh) | 2022-06-20 | 2022-11-04 | 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210697585.1A Withdrawn CN114911270A (zh) | 2022-06-20 | 2022-06-20 | 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN114911270A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116149374A (zh) * | 2023-04-19 | 2023-05-23 | 南京信息工程大学 | 一种多无人机覆盖路径规划方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030220772A1 (en) * | 2002-05-22 | 2003-11-27 | Hsiao-Dong Chiang | Dynamical methods for solving large-scale discrete and continuous optimization problems |
CN103781146A (zh) * | 2014-01-22 | 2014-05-07 | 南昌大学 | 基于蚁群算法的无线传感器网络最优路由路径构建方法 |
CN108932876A (zh) * | 2018-08-14 | 2018-12-04 | 湖北工业大学 | 一种引入黑区的a*和蚁群混合算法的快递无人机航迹规划方法 |
CN110433467A (zh) * | 2019-08-13 | 2019-11-12 | 南京邮电大学 | 基于双目视觉和蚁群算法的捡乒乓球机器人运行方法及设备 |
CN110793522A (zh) * | 2019-07-24 | 2020-02-14 | 西安电子科技大学 | 一种基于蚁群算法的航迹规划方法 |
CN113110520A (zh) * | 2021-05-26 | 2021-07-13 | 重庆邮智机器人研究院有限公司 | 一种多智能优化并行算法的机器人路径规划方法 |
CN114323019A (zh) * | 2021-11-30 | 2022-04-12 | 潍坊中科晶上智能装备研究院有限公司 | 一种复杂环境下农用机械全覆盖路径规划方法 |
-
2022
- 2022-06-20 CN CN202210697585.1A patent/CN114911270A/zh not_active Withdrawn
- 2022-11-04 CN CN202211373535.4A patent/CN115421522B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030220772A1 (en) * | 2002-05-22 | 2003-11-27 | Hsiao-Dong Chiang | Dynamical methods for solving large-scale discrete and continuous optimization problems |
CN103781146A (zh) * | 2014-01-22 | 2014-05-07 | 南昌大学 | 基于蚁群算法的无线传感器网络最优路由路径构建方法 |
CN108932876A (zh) * | 2018-08-14 | 2018-12-04 | 湖北工业大学 | 一种引入黑区的a*和蚁群混合算法的快递无人机航迹规划方法 |
CN110793522A (zh) * | 2019-07-24 | 2020-02-14 | 西安电子科技大学 | 一种基于蚁群算法的航迹规划方法 |
CN110433467A (zh) * | 2019-08-13 | 2019-11-12 | 南京邮电大学 | 基于双目视觉和蚁群算法的捡乒乓球机器人运行方法及设备 |
CN113110520A (zh) * | 2021-05-26 | 2021-07-13 | 重庆邮智机器人研究院有限公司 | 一种多智能优化并行算法的机器人路径规划方法 |
CN114323019A (zh) * | 2021-11-30 | 2022-04-12 | 潍坊中科晶上智能装备研究院有限公司 | 一种复杂环境下农用机械全覆盖路径规划方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116149374A (zh) * | 2023-04-19 | 2023-05-23 | 南京信息工程大学 | 一种多无人机覆盖路径规划方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114911270A (zh) | 2022-08-16 |
CN115421522B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107169608B (zh) | 多无人机执行多任务的分配方法及装置 | |
Almadhoun et al. | A survey on inspecting structures using robotic systems | |
WO2021022637A1 (zh) | 一种基于改进遗传算法的无人艇路径规划方法及系统 | |
Edison et al. | Integrated task assignment and path optimization for cooperating uninhabited aerial vehicles using genetic algorithms | |
CN111664852B (zh) | 一种无人机路径规划方法及装置 | |
Xu et al. | Bits: Bi-level imitation for traffic simulation | |
CN111678524B (zh) | 一种基于飞行安全的救援航空器路径规划方法及系统 | |
CN110703752B (zh) | 免疫遗传-人工势场法的无人艇双层路径规划方法 | |
CN115421522B (zh) | 一种基于并行自适应蚁群算法的无人机覆盖路径规划方法 | |
CN109765890B (zh) | 一种基于遗传算法的多usv群体协同避碰规划方法 | |
CN116880561A (zh) | 基于改进粒子群无人机路径规划安全增强的优化方法及系统 | |
CN111897364A (zh) | 一种无人机区域轨迹规划方法、装置及可读存储介质 | |
CN111667124A (zh) | 无人机路径的规划方法及装置 | |
CN115829179B (zh) | 一种舰船路径规划方法及装置 | |
Xue et al. | Multi-agent deep reinforcement learning for UAVs navigation in unknown complex environment | |
Du et al. | An optimized path planning method for coastal ships based on improved DDPG and DP | |
Zeng et al. | Robotic global path-planning based modified genetic algorithm and A* algorithm | |
Mokhtari et al. | Safe deep q-network for autonomous vehicles at unsignalized intersection | |
Yang et al. | Learning graph-enhanced commander-executor for multi-agent navigation | |
WO2023242223A1 (en) | Motion prediction for mobile agents | |
Niu et al. | (Re) 2 H2O: Autonomous Driving Scenario Generation via Reversely Regularized Hybrid Offline-and-Online Reinforcement Learning | |
Zeng et al. | Efficient path evaluation for AUVs using adaptive B-spline approximation | |
Huang et al. | An artificial swan formation using the finsler measure in the dynamic window control | |
Ragusa et al. | Enhanced genetic path planning for autonomous flight | |
Cheng et al. | Local perception-based intelligent building outline aggregation approach with back propagation neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230531 Address after: No. 16 Qinye Road, Yongning Street, Pukou District, Nanjing City, Jiangsu Province, 211801 Patentee after: Nanjing Juxin Information Technology Co.,Ltd. Address before: 210044 No. 219 Ning six road, Jiangbei new district, Nanjing, Jiangsu Patentee before: Nanjing University of Information Science and Technology |