System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于水下覆盖路径规划领域,特别涉及一种水下多机器人三维覆盖路径规划方法。
技术介绍
1、水下覆盖路径规划(cpp)是指机器人在目标区域内以最优的路径完成覆盖任务,从而获取更全面的目标信息。大多数工作中假设路径为z字形,其主要目标是当工作空间和障碍物的形状不规则时,找到有效的连续覆盖路径。现有技术中大多数研究都集中2d地图覆盖上,可以解决不规则二维地图的覆盖问题。但是,2d覆盖路径规划并不适用于水下复杂环境的情况,存在着任务耗费时间长、重复路径过多、总覆盖路径过长等问题,且现有水下三维覆盖研究集中在单机器人领域,水下覆盖的效率大大降低。由此观之,水下复杂环境下的多机器人三维覆盖路径规划还没有完全解决。
2、有鉴于此,提出一种水下多机器人三维覆盖路径规划方法,能够实现水下多机器人的三维覆盖路径规划。
技术实现思路
1、本申请的目的是提供了一种水下多机器人三维覆盖路径规划方法,以解决现有技术中难以实现水下多机器人的三维覆盖路径规划的问题。
2、本申请的技术方案是:一种水下多机器人三维覆盖路径规划方法,包括:
3、根据已知水下三维点云地图以及多个水下机器人的探测范围对三维工作区域进行分层,每个层级均形成一个二维工作区域,对每个二维工作区域进行栅格化,每个层级的栅格均有障碍物栅格和可通行栅格组成,形成二维栅格地图,所有二维栅格地图形成水下多层空间地图;其中障碍物栅格为栅格块中不可通行的栅格面积大于可通行的栅格面积;可通行栅格为栅格块中可通行的栅格面积
4、根据水下多层空间地图确定每个层级横纵路径的起点,而后以起点为初始点对该层级空间地图的横纵路径的通行方向进行自主生长,直至覆盖该层级的全部可通行栅格,在每个层级的栅格均自主生长完成后,形成多层空间横纵路径自主生成图,而后对自主生长的每个横纵路径进行编号,形成横纵路径任务集wi;
5、获取水下多层栅格的所有横纵路径编号与端点坐标,对所有横纵路径总长度以及各机器人分配路径长度的均衡性进行优化,直至各个机器人分配路径中最长路径长度与最短路径长度的差值处于设定范围内,获得每个机器人的横纵路径的分配并确定路径端点的最优连接,形成横纵路径规划系统,得到水下三维空间多机器人的覆盖路径。
6、优选地,对二维工作区域进行栅格化的具体方法为:
7、在工作区域内构建x-y-z空间,根据机器人的探测范围固定多层空间的层间距为h;
8、设定栅格横纵尺寸,确定每一层水下点云地图的形状,在x-y平面上栅格化已知的水下点云地图,以一侧边缘开始将每一层地图划分为多个栅格块,得到栅格地图,其中栅格块的个数为m×n个,m,n大于1;
9、采集并分析每个栅格块内的可通行的栅格面积和不可通行的栅格面积,并进行可通行的栅格面积和不可通行的栅格面积的比较,将可通行的栅格面积大于不可通行的栅格面积的栅格块划分成可通行栅格,将可通行的栅格面积小于不可通行的栅格面积的栅格块划分成不可通行栅格,得到水下多层空间地图。
10、优选地,所述水下多层空间地图内各层级进行自主生长的方法为:
11、在含障碍物的二维栅格地图中选择一可通行栅格作为路径生成起点,直至完成对每个层级内路径生成起点的选择,每条横纵路径p(i)(i=1,2,3,...,n)的生长方向通过比较pwidth与plength二者大小确定,其中pwidth表示当前位置栅格沿着x轴可通行区域栅格的生长路径长度,plength表示当前位置栅格沿着y轴可通行区域栅格的生长路径长度;
12、判断当前生成路径是否覆盖完成路径生成起点所在栅格列,若否,则沿着y轴方向选取该列第一个未覆盖栅格作为新的起点,并重复选择生长方向进行生长,其中列表示沿着y轴方向的一排栅格,直至完成水下多层空间地图的全部横纵路径的生长。
13、优选地,当起点所在的pwidth≥plength时,路径沿着x轴方向生长覆盖,当起点所在的pwidth<plength时,路径沿着y轴方向生长覆盖。
14、优选地,采用染色体算法进行均衡性优化,具体为:
15、对机器人进行编号,将每个横纵路径编号与机器人进行拼接,构成双染色体结构,一个种群由多条染色体构成,多个种群构成总种群;
16、利用先验知识构造出当前最优秀的染色体,作为多种群协同进化的标准,剩余的染色体采用随机初始化的方式生成;
17、设置以多机器人系统完成覆盖任务所需的整体效能公式作为适应度函数,定义多机器人横纵路径规划后的整体效能;
18、利用多种群遗传算法求解整体效能中的最小系统效能,获得各机器人的横纵路径的分配并确定路径端点的最优连接,完成最小系统效能优化。
19、优选地,所述适应度函数的具体设计方法为:
20、定义任务代价函数ec:
21、
22、其中,mr为机器人的数量,wi为已规划好的横纵路径,cost(wi)为分配给机器人i的完成横纵路径工作的代价;
23、多机器人完成横纵路径任务后,整体代价ec为最小;
24、定义任务完成时间t:
25、t=max{time(w1),time(w2),...,time(wm)}
26、其中,time(wi)为机器人i完成横纵路径任务集wi所花费的时间;
27、定义任务负载lo均衡函数:
28、
29、当任务负载lo趋向于0时,各机器人的任务分配趋向均衡;
30、结合任务代价函数、任务完成时间和任务负载均衡函数,定义横纵路径规划系统的整体效能为:
31、u=w1*ec+w2*t+w3*lo
32、式中,wi为第i项优化目标的权重,i=1,2,3,4。
33、优选地,所述多种群遗传算法中移民操作从横纵路径总长最长的生物种群中选择一条路径迁移至横纵路径总长最短的种群中。
34、优选地,所述最小旅行成本的设计方法为:
35、将单条路径的两个端点定义为x为路径x索引,路径x的两个端点分别表示为和构建旅行成本方程:
36、
37、
38、j=min(v[1,x],v[2,x])
39、其中,v[1,x]为连接路径x的端点与路径x-1的旅行成本,v[2,x]为连接路径x的端点与路径x-1的旅行成本,dis(·,·)为路径x的两个端点之间的距离,x为路径x的索引,x≥2,j为旅行成本方程;
40、求解旅行成本方程(min(j)),得到具有最小旅行成本的端点连接序列,即路径端点的最优连接。
41、本申请的水下多机器人三维覆盖路径规划方法,将水下三维点云地图划分成多个层级的二维工作区域,而后通过对每一二维工作区域进行栅格化以对路径规划进行简化;而后通过自主生长设计方案得到覆盖全部可通行栅格的多层空间横纵路径自主生成图,本文档来自技高网...
【技术保护点】
1.一种水下多机器人三维覆盖路径规划方法,其特征在于,包括:
2.如权利要求1所述的水下多机器人三维覆盖路径规划方法,其特征在于,对二维工作区域进行栅格化的具体方法为:
3.如权利要求1所述的水下多机器人三维覆盖路径规划方法,其特征在于,所述水下多层空间地图内各层级进行自主生长的方法为:
4.如权利要求3所述的水下多机器人三维覆盖路径规划方法,其特征在于:当起点所在的PWidth≥PLength时,路径沿着x轴方向生长覆盖,当起点所在的PWidth<PLength时,路径沿着y轴方向生长覆盖。
5.如权利要求1所述的水下多机器人三维覆盖路径规划方法,其特征在于,采用染色体算法进行均衡性优化,具体为:
6.如权利要求5所述的水下多机器人三维覆盖路径规划方法,其特征在于,所述适应度函数的具体设计方法为:
7.如权利要求6所述的水下多机器人三维覆盖路径规划方法,其特征在于,所述多种群遗传算法中移民操作从横纵路径总长最长的生物种群中选择一条路径迁移至横纵路径总长最短的种群中。
8.如权利要求6所述的水下多
...【技术特征摘要】
1.一种水下多机器人三维覆盖路径规划方法,其特征在于,包括:
2.如权利要求1所述的水下多机器人三维覆盖路径规划方法,其特征在于,对二维工作区域进行栅格化的具体方法为:
3.如权利要求1所述的水下多机器人三维覆盖路径规划方法,其特征在于,所述水下多层空间地图内各层级进行自主生长的方法为:
4.如权利要求3所述的水下多机器人三维覆盖路径规划方法,其特征在于:当起点所在的pwidth≥plength时,路径沿着x轴方向生长覆盖,当起点所在的pwidth<plength时,路径沿着y轴方向生长覆盖...
【专利技术属性】
技术研发人员:解杨敏,惠文博,柴润天,周钸凡,吴俊烨,
申请(专利权)人:上海大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。