水下清淤机器人路径规划方法、装置、机器人和存储介质转让专利

申请号 : CN201911051780.1

文献号 : CN110764518B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 梁艳阳陈家聪翟懿奎余翠琳张俊亮黄灏文柯琪锐王宏民

申请人 : 五邑大学

摘要 :

本发明公开了一种水下清淤机器人路径规划方法、装置、机器人和存储介质,采用混合布谷鸟搜索和蝙蝠算法的方法,使清淤机器人在避障的同时能够以最短路径到达清淤目标点。清淤机器人到达目标点后,采用“S”字型对清淤区域进行全面清扫,并且利用几何算法完成避障。通过此水下清淤机器人的路径规划方法,从而完成自动化程度高,人力成本低,环保高效的水下清淤工作。

权利要求 :

1.一种水下清淤机器人路径规划方法,其特征在于,包括:根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;

判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;

清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;

清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖掘区域按照S形航线完成清淤,且在清淤过程中利用几何算法进行避障。

2.根据权利要求1所述的一种水下清淤机器人路径规划方法,其特征在于,所述蝙蝠种群的参数包括蝙蝠种群的大小、频率fi、脉冲发射率ri、响度Ai,其中频率fi、脉冲发射率ri以及响度Ai的计算公式为:

fi=fmin+(fmax‑fmin)β其中,fmin和fmax为蝙蝠发出的最小频率和最大频率,取值范围为[0,1];α和γ是常数,α和γ的取值范围分别为[0,1]、[0,+∞]。

3.根据权利要求1所述的一种水下清淤机器人路径规划方法,其特征在于,所述通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径,包括:根据水下环境产生蝙蝠以及蝙蝠巢穴的数量,运用布谷鸟搜索得出当前随机蝙蝠巢穴位置的局部路径最优解并保留,将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位置并优化,输出全局最优路径。

4.根据权利要求3所述的一种水下清淤机器人路径规划方法,其特征在于,所述运用布谷鸟搜索得出当前随机蝙蝠巢穴位置的局部路径最优解并保留,包括:运用莱维飞行对蝙蝠巢穴位置进行更新,得到一组新的蝙蝠巢穴位置,对这组蝙蝠巢穴位置与上一代的蝙蝠巢穴位置进行对比,用好的蝙蝠巢穴位置替换差的蝙蝠巢穴位置,得到优化的蝙蝠巢穴位置,其中,蝙蝠巢穴位置更新的公式为:其中,α>0是步长缩放因子, 为蝙蝠巢穴原位置, 为更新之后的蝙蝠巢穴位置,L(s,λ)是莱维随机路径;s是步长,s0是最小步长,λ>0为莱维指数;Γ为标准的Gamma函数,其对于给定的λ是一个常数。

5.根据权利要求3所述的一种水下清淤机器人路径规划方法,其特征在于,所述将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位置并优化,其中更新蝙蝠位置采用以下公式:其中, 为蝙蝠当前位置,c*是由谷布鸟搜索产生的当前最佳位置, 为蝙蝠当前速度,为更新后的蝙蝠速度, 为更新后的蝙蝠最佳位置。

6.根据权利要求3所述的一种水下清淤机器人路径规划方法,其特征在于,所述将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位置并优化,其中优化蝙蝠位置采用以下公式:t

xnew=xold+εA

t

其中,ε为介于[‑1,1]的均匀分布随机数,A是第t代所有蝙蝠响度的平均值,xold为当前最优个体,xnew是优化后产生的新个体。

7.根据权利要求1所述的一种水下清淤机器人路径规划方法,其特征在于,所述清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障,包括:

判断动态障碍物与清淤机器人与之间的阻塞情况,由以下公式产生:angledirection=a tan 2((Yobs‑Yrobot),(Xobs‑Xrobot))angleVrbbot=a tan 2(Vj,Vi)|angledirection‑angleVrobot|<anglethreshangleVdiff=|angleVrobot‑angleVobs|其中,angledirection为移动障碍物的方向向量,(Xobs,Yobs)为当前障碍物的坐标,(Xrobot,Yrobot)为清淤机器人的坐标;anglevrobot为清淤机器人的速度矢量,Vj,Vi分别是清淤机器人Y轴、X轴的速度矢量;anglethresh为一判断阈值,用来判断动态障碍物是否阻塞清淤机器人前进的路径;angleVdiff为清淤机器人的速度矢量与移动障碍物的速度矢量的绝对值之差。

8.一种水下清淤机器人路径规划装置,其特征在于,包括:初始化模块,用于根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;

静态避障模块,用于判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;

动态避障模块,用于清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;清淤航线模块,用于对清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖掘区域按照S形航线完成清淤,且在清淤过程中利用几何算法进行避障。

9.一种机器人,其特征在于,包括:至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1‑7任一项所述的方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1‑7任一项所述的方法。

说明书 :

水下清淤机器人路径规划方法、装置、机器人和存储介质

技术领域

[0001] 本发明涉及路径规划技术领域,尤其是一种水下清淤机器人路径规划方法、装置、机器人和存储介质。

背景技术

[0002] 近年来随着智能化技术的迅速发展和产业智慧级的不断推进,智能移动机器人在越来越多的领域里得到了广泛应用,如货物搬运、智慧生产、智能生活、异常环境探测、水下
作业等等。
[0003] 目前,在海洋或河道活动中,由于人自身的局限性,利用自主移动机器人来完成水下作业已经成为必然的趋势了,由于水下清淤机器人携带资源有限,且水下的工作环境复
杂,不可预测。为使得水下清淤机器人能够有效的避开障碍物并且高效的完成清淤任务,其
水下路径规划技术研究显得十分关键了。
[0004] 水下路径规划方法有人工势场法、A*搜寻算法、可视图法等。虽然它们在水下路径规划中都取得了不错的成效,但大多数都是应用在无障碍或者静态障碍物的环境下,对
于水下存在的动态障碍物未能有效解决,并且单独使用一种算法会避免不了该算法中存在
的某种缺陷,寻找到的路径可能不是全局最优。

发明内容

[0005] 为解决上述问题,本发明的目的在于提供一种水下清淤机器人路径规划方法、装置、机器人和存储介质,采用混合布谷鸟搜索和蝙蝠算法的方法,使清淤机器人在避障的同
时能够以最短路径到达清淤目标点。清淤机器人到达目标点后采用S形对清淤区域进行全
面清扫,并且利用几何算法完成避障。通过此水下清淤机器人的路径规划方法,从而完成自
动化程度高,人力成本低,环保高效的水下清淤工作。
[0006] 本发明解决其问题所采用的技术方案是:
[0007] 第一方面,本发明实施例提出了一种水下清淤机器人路径规划方法,包括:
[0008] 根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;
[0009] 判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;
[0010] 清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;
[0011] 清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖掘区域按照S形航线完成
清淤,且在清淤过程中利用几何算法进行避障。
[0012] 进一步,所述蝙蝠种群的参数包括蝙蝠种群的大小、频率fi、脉冲发射率ri、响度Ai,其中频率fi、脉冲发射率ri以及响度Ai的计算公式为:
[0013] fi=fmin+(fmax‑fmin)β
[0014]
[0015]
[0016] 其中,fmin和fmax为蝙蝠发出的最小频率和最大频率,取值范围为[0,1];α和γ是常数,α和γ的取值范围分别为[0,1]、[0,+∞],通常各取0.9。
[0017] 进一步,所述通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径,包括:
[0018] 根据水下环境产生蝙蝠以及蝙蝠巢穴的数量,运用布谷鸟搜索得出当前随机蝙蝠巢穴位置的局部路径最优解并保留,将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位
置并优化,输出全局最优路径。
[0019] 进一步,所述运用布谷鸟搜索得出当前随机蝙蝠巢穴位置的局部路径最优解并保留,包括:
[0020] 运用莱维飞行对蝙蝠巢穴位置进行更新,得到一组新的蝙蝠巢穴位置,对这组蝙蝠巢穴位置与上一代的蝙蝠巢穴位置进行对比,用好的蝙蝠巢穴位置替换差的蝙蝠巢穴位
置,得到优化的蝙蝠巢穴位置,其中,蝙蝠巢穴位置更新的公式为:
[0021]
[0022]
[0023] 其中,α>0是步长缩放因子, 为蝙蝠巢穴原位置, 为更新之后的蝙蝠巢穴位置,L(s,λ)是莱维随机路径;s是步长,s0是最小步长,λ>0为莱维指数;Γ为标准的Gamma函
数,其对于给定的λ是一个常数。
[0024] 进一步,所述将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位置并优化,其中更新蝙蝠位置采用以下公式:
[0025]
[0026]
[0027] 其中, 为蝙蝠当前位置,c*是由谷布鸟搜索产生的当前最佳位置, 为蝙蝠当前速度, 为更新后的蝙蝠速度, 为更新后的蝙蝠最佳位置。
[0028] 进一步,所述将局部路径最优解作为蝙蝠算法的输入,更新蝙蝠位置并优化,其中优化蝙蝠位置采用以下公式:
[0029] xnew=xold+εAt
[0030] 其中,ε为介于[‑1,1]的均匀分布随机数,At是第t代所有蝙蝠响度的平均值,xold为当前最优个体,xnew是优化后产生的新个体。
[0031] 进一步,所述清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障,包括:
[0032] 判断动态障碍物与清淤机器人与之间的阻塞情况,由以下公式产生:
[0033] angledirection=atan 2((Yobs‑Yrobot),(Xobs‑Xrobot))
[0034] angleVrbbot=atan2(Vj,Vi)
[0035] |angledirection‑angleVrobot|<anglethresh
[0036] angleVdiff=|angleVrobot‑angleVobs|
[0037] 其中,angledirection为移动障碍物的方向向量,(Xobs,Yobs)为当前障碍物的坐标,Xrobot,Yrobot)为清淤机器人的坐标;anglevrobot为清淤机器人的速度矢量,Vj,Vi分别是清淤
机器人Y轴、X轴的速度矢量;anglethresh为一判断阈值,用来判断动态障碍物是否阻塞清淤
机器人前进的路径,若移动障碍物方向向量与清淤机器人速度矢量之差的绝对值小于该阈
值,则该动态障碍物阻塞了清淤机器人的前进路径,否则没有造成阻塞;在进行绝对值计算
之前,应将anglevrobot和angledirection进行处理,使其在(‑π,π)范围之内;angleVdiff为清淤机
器人的速度矢量与移动障碍物的速度矢量的绝对值之差。
[0038] 第二方面,本发明实施例还提出了一种水下清淤机器人路径规划装置,包括:
[0039] 初始化模块,用于根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;
[0040] 静态避障模块,用于判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;
[0041] 动态避障模块,用于清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;
[0042] 清淤航线模块,用于对清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖掘
区域按照S形航线完成清淤,且在清淤过程中利用几何算法进行避障。
[0043] 第三方面,本发明实施例还提出了一种机器人,包括:
[0044] 至少一个处理器;以及,
[0045] 与所述至少一个处理器通信连接的存储器;其中,
[0046] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明第一方面所述的方法。
[0047] 第四方面,本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行本发明第一方
面所述的方法。
[0048] 本发明实施例中提供的一个或多个技术方案,至少具有如下有益效果:本发明提供的一种水下清淤机器人路径规划方法、装置、机器人和存储介质,针对水下清淤路径规
划,利用布谷鸟搜索迅速得出局部最优路径,以此局部最优路径为引导使蝙蝠有目的进行
搜索,得出全局最佳路径,实现最短路径及进行动态避障。清淤机器人到达清淤区域后,对
清淤路线进行规划,清淤过程采用S形清淤路线,并用几何算法进行避障。采用S形清淤路线
可以使得淤泥清理更全面,且使用几何算法进行规避障碍物,使得清淤过程更安全。

附图说明

[0049] 下面结合附图和实例对本发明作进一步说明。
[0050] 图1是本发明第一实施例中水下清淤机器人路径规划方法的流程简图;
[0051] 图2是本发明第一实施例中水下清淤机器人路径规划方法的具体流程图;
[0052] 图3是本发明第一实施例中水下清淤机器人路径规划方法中几何算法原理图;
[0053] 图4是本发明第一实施例中水下清淤机器人路径规划方法中基于几何算法的路径规划流程图;
[0054] 图5是本发明第二实施例中水下清淤机器人路径规划装置的结构简图。

具体实施方式

[0055] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不
用于限定本发明。
[0056] 需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻
辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示
出或描述的步骤。
[0057] 下面结合附图,对本发明实施例作进一步阐述。
[0058] 如图1所示,本发明的第一实施例提供了一种水下清淤机器人路径规划方法,包括但不限于以下步骤:
[0059] S100:根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;
[0060] S200:判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;
[0061] S300:清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;
[0062] S400:清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖掘区域按照S形航线
完成清淤,且在清淤过程中利用几何算法进行避障。
[0063] 优选地,本发明具体实施步骤可以进一步细分如下,如图2所示:
[0064] 步骤1:采用声纳装置获取水下环境信息。
[0065] 步骤2:初始化随机种群的大小(蝙蝠/巢的数量),频率fi,脉冲发射率ri,响度Ai。
[0066] 其中蝙蝠/巢的数量是根据水下的实际情况来确定的不同的水下环境大小,所需数量是不同的。频率fi、脉冲发射率ri,响度Ai的计算公式为:
[0067] fi=fmin+(fmax‑fmin)β   1‑1
[0068]
[0069]
[0070] 其中,其中fmin和fmax为蝙蝠发出的最小频率和最大频率,取值范围为[0,1],是服从均匀分布的随机向量;其中α和γ是常数,α和γ的取值范围分别为[0,1]、[0,+∞],通常
各取0.9。
[0071] 步骤3:初始化清淤机器人起始点和目标点的位置。
[0072] 步骤4:清淤机器人判断起始点和清淤目标点之间的最短连线是否有静态障碍物。
[0073] 若无,则清淤机器人按照起始点和清淤目标点之间的最短连线进行移动。移动期间是否检测到动态障碍物,若存在则跳到步骤13;若无,则朝着清淤目标点前进。当清淤机
器人完成移动后,判断其是否已经到达了目标点,若到达了,则开始清淤,若无,则返回步骤
3。
[0074] 若存在障碍,则启用混合布谷鸟搜索和蝙蝠算法。
[0075] 步骤5:清淤机器人根据水下实际情况产生蝙蝠以及蝙蝠巢穴的数量。
[0076] 步骤6:运用布谷鸟搜索得出当前随机蝙蝠巢穴位置最优解,保留当前最优解。
[0077] 步骤7:运用莱维飞行对蝙蝠巢穴位置进行更新,得到一组新的蝙蝠巢穴位置,对这组蝙蝠巢穴位置与上一代蝙蝠巢穴位置进行对比,用好的蝙蝠巢穴位置替换差的蝙蝠巢
穴位置,得到较优的蝙蝠巢穴位置。蝙蝠巢穴位置更新的公式为:
[0078]
[0079]
[0080] 其中,α>0是步长缩放因子, 为巢穴原位置, 为更新之后的巢穴位置,L(s,λ)是莱维随机路径;s是步长,s0是最小步长,λ>0为莱维指数;Γ为标准的Gamma函数,其对
于给定的λ是一个常数。
[0081] 步骤8:运用算法去模拟巢穴的外来鸟蛋被鸟窝主人发现,被发现外来鸟蛋的巢穴进行随机位置更新,保留未被发现外来鸟蛋巢穴的位置,得到一组新的巢穴的位置。再将这
组巢穴位置进行测试,与之前的巢穴位置的测试值进行对比,用测试值较好的巢穴的位置
替换测试值较差的巢穴的位置。
[0082] 进行模拟外来鸟蛋被发现,并进行位置更新的公式为:
[0083]
[0084] 其中, 为原被发现外来鸟蛋巢穴的位置, 为更新后巢穴的位置,α>0是步长缩放因子,s>0是步长,H函数是一个单位阶跃函数, 和 是通过随机置换选择的两个不
同的解。
[0085] 步骤9:找出上述步骤8中最后得出的最优巢穴的位置。若到达迭代停止条件,则将局部路径最优解输入到蝙蝠算法中。若没有达到,则返回步骤7。
[0086] 步骤10:蝙蝠算法通过布谷鸟搜索给出的局部路径最优解作为输入,更新自身的位置。
[0087]
[0088]
[0089] 其中 为蝙蝠当前位置,c*是由谷布鸟搜索产生的当前最佳位置, 为蝙蝠当前速度, 为更新后的蝙蝠速度, 为更新后的蝙蝠最佳位置。
[0090] 步骤11:由生成的均匀分布随机数P与脉冲发射率进行比较ri,若生成的随机数大于脉冲发射率ri,对最佳解的位置进行优化。否则,进入下一步。
[0091] 对最佳解进行优化的公式为:
[0092] xnew=xold+εAt        1‑9
[0093] 其中ε为[‑1,1]上的均匀分布随机数,At是第t代所有蝙蝠响度的平均值,xold为当前最优个体,xnew是优化后产生的新个体。
[0094] P为[0,1]上的均匀分布随机数。脉冲发射率ri∈(0,1]。
[0095] 步骤12:对蝙蝠的飞行后的新旧位置进行比较,用较好的值去替换较差的值。然后找出最优解,判断是否达到最大迭代次数,若没有达到,则返回步骤10,若达到则输出全局
最优路径。
[0096] 步骤13:清淤机器人根据规划好的路径朝着清淤目标点进行移动。清淤机器人在行走过程中,有一探测仪在一定范围内探测周围是否存在动态障碍物。
[0097] 若存在动态障碍物,则判断该动态障碍物是否阻塞清淤机器人要前进的路径,若造成了阻塞,则清淤机器人将进入下一步判断:情况1、清淤机器人与动态障碍物大致同向
运动;情况2、清淤机器人与动态障碍物大致面对面进行移动;情况3、清淤机器人与动态障
碍物朝着不同的方向运动。对于情况1,清淤机器人只需跟随障碍物,直至障碍物改变方向,
或者规划好的路径使机器人远离障碍物。对于情况2,则需要重新规划路径,使清淤机器人
绕开移动障碍物并且回到原路径上。对于情况3,清淤机器人只需按照原规划路径进行移动
即可。若没有造成阻塞,清淤机器人按照原规划路径进行移动。
[0098] 若没有动态障碍物,清淤机器人按照原规划路径进行移动。
[0099] 判断动态障碍物是否造成阻塞及造成阻塞后清淤机器人与动态障碍物的三种情况,由如下计算公式产生:
[0100] angledirection=a tan 2((Yobs‑Yrobot),(Xobs‑Xrobot))   1‑10
[0101] 其中angledirection为移动障碍物的方向向量,(Xobs,Yobs)为当前障碍物的坐标,(Xrobot,Yrobot)为清淤机器人的坐标。
[0102] angleVrbbot=atan2(Vj,Vi)      1‑11
[0103] 其中anglevrobot为清淤机器人的速度矢量,Vj,Vi分别是清淤机器人Y轴、X轴的速度矢量。
[0104] |angledirection‑angleVrobot|<anglethresh       1‑12
[0105] 其中anglethresh为一判断阈值,用来判断动态障碍物是否阻塞清淤机器人前进的路径。若移动障碍物方向向量与清淤机器人速度矢量之差的绝对值小于该阈值,则该动态
障碍物阻塞了清淤机器人的前进路径,否则没有造成阻塞。在进行绝对值计算之前,应将
anglevrobot和angledirection进行处理,使其在(‑π,π)范围之内。
[0106] angleVdiff=|angleVrobot‑angleVobs|    1‑13
[0107] 其中angleVdiff为清淤机器人的速度矢量与移动障碍物的速度矢量的绝对值之差。angleVobs可利用计算公式1‑11得出。
[0108] 若利用计算公式1‑12进行判断得出动态障碍物阻塞清淤机器人前进的路径后,利用计算公式1‑13得出的angleVdiff进行上述三种情况判断:若abgleVdiff<abglethresh
[0109] 则对应于上述情况1;若angleVdiff<π‑anglethresh则对应于上述情况2;若angleVdiff不在上述范围内,则对应于上述情况3。
[0110] 针对上述情况2所要进行的路径重新规划给出了如下方法:清淤机器人通过移动障碍物的方向向量和速度矢量,对移动障碍物的运动进行预测。将移动障碍物所要经过的
位置坐标进行无效化。然后以清淤机器人当前位置为起点位置,以距离移动障碍物最近,且
清淤机器人不与移动障碍物发生碰撞的原路径上的坐标为目标位置,利用混合布谷鸟搜索
和蝙蝠算法进行路径规划,使得清淤机器人绕开移动障碍物,并回到原路径规划上,按原路
径规划向清淤目标点继续前进。
[0111] 步骤14清淤机器人按照原规划路径走完后判断是否到达了目标点,若无,则返回步骤3,若到达目标点则开始进行清淤。
[0112] 清淤机器人在清淤区域行走过程采用S形清淤路线,若遇到障碍物则根据几何算法来规避,具体原理如下:
[0113] 如图3所示,Pi是现在点,S是淤泥挖掘目标点,连接PiS。若没有障碍物则航行器沿着PiS到达目标点,由于航线进入了圆形障碍区域Oj的范围,则必须绕过障碍区。图3中,圆Oj
是与线段PiS相交且圆心距最短的圆。过Pi作圆Oj的切线,得PiQj和PiQ′j,由于∠QjPjS<∠
Q′jPjS,取线段PiQj作为航经路段,过S作圆Oj的切线,取切点距Oj近的切点Hj。若线段PiQj没
有与圆相交,则以Hj为现在点继续判断Pi+1=Hj,路径为PiQj和劣弧QjHj。若线段PiQj与圆相
交,且距圆最近的圆为Ok,则Pi+1=Hk。
[0114] 路径为PiQk和劣弧QkHk,路径规划算法的整体流程如图4所示。若∠QjPiS=∠Q′jPiS,则保留路径,直至两条路径重合到一点,保留长度短的路径,再按图4所示方法执行。
[0115] 步骤15:清淤机器人达到清淤区域后,确定自身的坐标和清淤挖掘点的坐标。
[0116] 步骤16:清淤机器人根据欧式公式计算得出其距离最近的第一淤泥挖掘区域。
[0117] 步骤17:剩下的区域按照S形航线完成该区域的清淤任务,清淤过程中遇到障碍物,机器人将根据几何算法规避。
[0118] 步骤18:清淤机器人完成第一区域任务后,返回执行步骤3到步骤17,完成第二区域的清理,往后,以此类推。
[0119] 综上所述,针对清淤机器人对水下清淤路径的规划,该路径规划先采用混合布谷鸟搜索和蝙蝠算法的方法到达清淤目标点。布谷鸟搜索可以迅速找到到达目标点的路径,
但找到的路径可能只是局部最佳路径。蝙蝠算法可以找到全局最佳路径,但由于其是随机
迭代的方式,可能算法难以收敛,搜索时间久。而混合布谷鸟搜索和蝙蝠算法可以拟补缺
点,发挥出各自算法的优势,利用布谷鸟搜索迅速得出局部最优路径,以此局部最优路径为
引导使蝙蝠有目的进行搜索,得出全局最佳路径,实现最短路径及进行动态避障。清淤机器
人到达清淤区域后,对清淤路线进行规划,清淤过程采用S形清淤路线,并用几何算法进行
避障。采用S形清淤路线可以使得淤泥清理更全面,且使用几何算法进行规避障碍物,使得
清淤过程更安全。
[0120] 另外,如图5所示,本发明的第二实施例提供了一种水下清淤机器人路径规划装置,包括:
[0121] 初始化模块110,用于根据水下环境初始化蝙蝠种群的参数,并初始化清淤机器人起始点和清淤目标点的位置;
[0122] 静态避障模块120,用于判断起始点和清淤目标点之间的最短连线是否有静态障碍物,并通过采用混合后的布谷鸟搜索和蝙蝠算法来得出全局最优路径;
[0123] 动态避障模块130,用于清淤机器人沿着全局最优路径向清淤目标点移动,并在其移动过程中判断是否存在动态障碍物以实现避障;
[0124] 清淤航线模块140,用于对清淤机器人到达清淤目标点后,确定其自身的坐标和清淤挖掘点的坐标,并根据欧式公式计算出距离其自身最近的淤泥挖掘区域,其余的淤泥挖
掘区域按照S形航线完成清淤,且在清淤过程中利用几何算法进行避障。
[0125] 本实施例中的水下清淤机器人路径规划装置与第一实施例中的水下清淤机器人路径规划方法基于相同的发明构思,因此,本实施例中的水下清淤机器人路径规划系统具
有相同的有益效果:利用布谷鸟搜索迅速得出局部最优路径,以此局部最优路径为引导使
蝙蝠有目的进行搜索,得出全局最佳路径,实现最短路径及进行动态避障。清淤机器人到达
清淤区域后,对清淤路线进行规划,清淤过程采用S形清淤路线,并用几何算法进行避障。采
用S形清淤路线可以使得淤泥清理更全面,且使用几何算法进行规避障碍物,使得清淤过程
更安全。
[0126] 本发明的第三实施例还提供了一种机器人,包括:
[0127] 至少一个处理器;
[0128] 以及与所述至少一个处理器通信连接的存储器;
[0129] 其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述第一实施例中任意一种水
下清淤机器人路径规划方法。
[0130] 存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态性计算机可执行程序以及模块,如本发明实施例中的虚拟影像控制方法对应的程序指
令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行立
体成像处理装置的各种功能应用以及数据处理,即实现上述任一方法实施例的水下清淤机
器人路径规划方法。
[0131] 存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据立体成像处理装置的使用所创建的
数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少
一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选
包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该立体投影装
置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0132] 所述一个或者多个模块存储在所述存储器中,当被所述一个或者多个处理器执行时,执行上述任意方法实施例中的水下清淤机器人路径规划方法,例如第一实施例中的方
法步骤S100至S400。
[0133] 本发明的第四实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,可使得
上述一个或多个处理器执行上述方法实施例中的一种水下清淤机器人路径规划方法,例如
第一实施例中的方法步骤S100至S400。
[0134] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单
元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0135] 通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可
以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬
件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上
述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read‑
Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0136] 以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替
换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。