一种基于导航误差约束的水面无人艇局部分层路径规划方法与流程

文档序号:12672260阅读:259来源:国知局
一种基于导航误差约束的水面无人艇局部分层路径规划方法与流程

本发明涉及一种基于导航误差约束的水面无人艇局部分层路径规划方法,属于水面无人艇路径规划技术领域。



背景技术:

随着科技的飞速发展,海上智能交通作为我国科技战略的重要组成部分,主要用于实现船舶航行的自动化和海上交通管理的智能化。因此,水面无人艇作为海上交通系统的个体船舶,对其航行路径的研究是很有必要的。路径规划是水面无人艇的一个重要研究领域,是水面无人艇能够安全完成巡航任务的前提。近年来,水面无人艇路径规划已经成为海上智能化的研究热点。

路径规划的方法有很多,因自身的优缺点而适用于各种不同的情况,大致可分为传统算法、图形法、智能仿生学算法以及其他算法等。传统算法有人工势场法、模糊逻辑算法和模拟退火算法等;图形法有可视图空间法、栅格法和voronoi图法等;智能仿生学算法有蚁群算法、神经网络算法、遗传算法和粒子群算法等;其他算法有A*算法、Dijkstra算法和Floyd算法等。

目前,绝大多数路径规划只划分为全局路径规划和局部路径规划两个层面,未考虑局部路径规划的分层问题,具有一定的局限性。此外,绝大多数静态路径规划均是假设在导航信息精确的前提下,水面无人艇能够精准地跟踪规划好的路径。但实际导航系统中存在误差,将会导致水面无人艇与实际障碍物之间的安全区域减少,会造成初始点到目标点的自由路径不存在。即使自由路径仍存在,也很有可能给水面无人艇带来如碰撞等不可预知的风险。因此,在路径规划过程中,导航误差的影响是不可忽视的问题,对水面无人艇的实际工程应用具有重要意义。

目前也有部分与本发明有关的研究报告,1、复杂海况下水面无人艇分层危险规避方法研究,哈尔滨工程大学,2014,该博士论文中虽然考虑了三个分层层面,但未考虑导航误差对路径规划的影响。2、一种基于导航误差空间的无人水下航行器路径规划方法,兵工学报,2014,35(8):1243-1250,该文献中虽然考虑了导航误差,但只是针对水下航行器进行了全局路径规划研究,且并未结合遗传算法。



技术实现要素:

技术问题:本发明提供一种减少导航误差对路径选择造成的不利影响的基于导航误差约束的水面无人艇局部分层路径规划方法,该方法将局部路径规划划分为基于导航误差约束并结合遗传算法的局部静态路径规划以及融合海事规则的局部动态路径规划两个层面,综合考虑导航误差约束、水面无人艇自身动力学约束等限制条件,可以提高规划路径的安全性和可行性。

技术方案:本发明的基于导航误差约束的水面无人艇局部分层路径规划方法,包括以下步骤:

步骤1)根据作业任务、电子海图和传感器得到的静态障碍物信息,采用直角坐标系和栅格法,将环境离散化为二维的基本单元栅格,通过对这些栅格的标示进行环境建模,初始化起点位置Start和目标点位置Goal;

步骤2)按照如下方式得到M条染色体:采用随机法在栅格地图上随机选取除起点位置Start和目标点位置Goal外的a个自由栅格点,把起点和目标点分为a+1段,然后采用A*算法连接起点、目标点和a个自由栅格点,使之成为一个可行的初始解,即得到一条有效的染色体;

将所述M条染色体作为初始种群,即为第一代种群,其中M为第一代种群的规模;

步骤3)确定每条染色体的每个基因点的导航误差,具体为:利用每条染色体中第k个基因点处的期望导航位置μk与第k+1个基因点处的期望导航位置μk+1之间的航行距离D(μk,μk+1)和导航误差变化率Δε,进行乘积运算,再加上第k个基因点的导航误差εk,得到每条染色体第k+1个基因点的导航误差εk+1;然后根据北斗导航误差εBD,若第k+1个基因点的导航误差εk+1>εBD,则将εBD赋值εk+1;否则,第k+1个基因点的导航误差εk+1为原值;

步骤4)根据所述步骤3)得到每条染色体的每个基因点的导航误差,采用高斯模型作为导航误差模型,根据该导航误差模型的导航位置分布密度函数采用蒙特卡洛采样法计算得到每条染色体的路径代价L(s0,sg),其中所有染色体路径代价中的最小值为该代种群的最优解;

步骤5)将有障碍物的危险区域作为碰撞区域A,根据导航误差模型,在碰撞区域A内对导航误差概率密度函数进行积分,求出每条染色体的每个基因点处的碰撞概率,得到每条染色体的起点到目标点,即第0个基因点到第g个基因点之间的全部基因点处的碰撞概率集合{Pc(X0),Pc(X1)...Pc(Xg)};

步骤6)根据所述步骤5)得到的每条染色体的全部基因点的碰撞概率集合,针对每条染色体,查找该染色体在碰撞概率集合{Pc(X0),Pc(X1)...Pc(Xg)}中的碰撞概率最大值,然后将其作为该染色体的碰撞概率Pc(X);

步骤7)根据所述步骤4)得到的每条染色体的路径代价和所述步骤6)得到的每条染色体的碰撞概率Pc(X),按照以下方式计算每条染色体的适应度;

判断所述步骤6)得到的每条染色体的碰撞概率Pc(X)是否小于或等于设定值,如是,则根据下式计算每条染色体的适应度E:

否则根据下式计算每条染色体的适应度E:

其中m为权重值设定值,m>>L(s0,sg);

将所有染色体的适应度相加求平均,作为该代种群的平均适应值;

步骤8)假设第n代种群代数为x(n),若种群代数x(n)<设定值nsetting,则进入步骤9);否则,按照如下方式处理:

若在第n-(nsetting-1)代种群到当前第n代种群的连续nsetting代进化中,种群的最优解均未发生变化,且相邻两代的种群平均适应值变化没有超过1%,则将当前第n代中具有最优解的染色体作为所求解的一条最优无碰路径,并根据组成该染色体的基因点的坐标值得到一系列从起点到目标点的路径节点序列,将该路径节点序列作为局部航路点序列后,进入步骤10),否则进入步骤9);

步骤9)根据交叉率pc,即设定的交叉操作的概率值,随机选择pc*M条染色体进行交叉操作,对交叉的个体两两随机地交换基因点形成新的染色体,替换适应度最大的pc*M条染色体,然后再根据变异率pm,即设定的变异操作的概率值,随机选择pm*M条染色体进行变异操作,对进行变异的个体随机选择基因点进行实值变异,替换适应度最大的pm*M条染色体;将交叉变异操作获得的种群作为新的种群,即下一代(n+1代)种群代数为x(n+1)=x(n)+1,返回步骤3);

步骤10)根据所述步骤8)得到的一系列局部航路序列点,将第一个局部航路点作为动态规划起始点,将第二个局部航路点作为动态规划目标点;

步骤11)根据传感器获得水面无人艇航行过程中的动态障碍物位置信息及速度信息,求解水面无人艇与障碍物的最近会遇距离DCPA和到达最近会遇点的时间TCPA,然后根据下式,采用DCPA与TCPA加权得到碰撞危险度ρ:

ρ=(ωDDCPA)2+(ωTTCPA)2

其中,ωD、ωT分别为加权值;

步骤12)判断所述步骤11)得到的碰撞危险度ρ是否小于或等于经验值,如是,则根据融合海事规则的避障策略及水面无人艇的动力学约束条件,调整水面无人艇的航向角或速度大小,否则,保持水面无人艇原有的航向角和速度大小不变;

步骤13)根据步骤12)得到的航向角改变量Δα、速度大小改变量ΔVUSV和设定的规划时间ΔT,计算水面无人艇规划一个ΔT时间后的当前位置(X,Y)为:

式中,X、Y分别为规划一个ΔT时间后水面无人艇在直角坐标系中的横坐标值和纵坐标值,Xprev、Yprev分别为此次规划前水面无人艇在直角坐标系中的横坐标值和纵坐标值,α、VUSV分别表示水面无人艇的航向角和速度大小。

判断水面无人艇的当前位置是否为当前动态规划目标点,如是,则进入步骤14),否则返回步骤11);

步骤14)根据所述步骤1)得到的目标点位置Goal,判断水面无人艇的当前位置是否为目标点位置Goal,如是,则结束本方法流程,否则将当前动态规划目标点作为下一个动态规划起始点,将下一个局部航路点作为下一个动态规划目标点,返回步骤11)。

进一步的,本发明方法中,所述步骤4)中结合导航误差模型求解每条染色体的路径代价的具体求解过程包括:

导航误差模型为:

Xk~N(μk,Σk)

式中,为水面无人艇的期望导航位置,Xk=(xk,yk)为第k个基因点处水面无人艇的导航位置,∑k为第k个基因点的协方差矩阵。

则该导航误差模型的导航位置分布密度函数为:

所述协方差矩阵∑k根据下式确定:

其中,εk=3σk

式中,εk为第k个基因点的导航误差;σk为第k个基因点的标准差;

所述每条染色体的路径代价L(s0,sg)的具体计算过程包括:

根据概率模型中的3σ准则,在第k个基因点处的状态sk的导航不确定区域内,即以第k个基因点处的期望导航位置μk为圆心的3σ置信区域内,采用蒙特卡洛法采样N个样本点,获得第k个基因点处的状态sk的导航不确定区域内的采样集合Θk

在第k+1个基因点处的状态sk+1的导航不确定区域内采样N个样本点,得到第k+1个基因点处的状态sk+1的导航不确定区域内的采样集合Θk+1

根据第k个基因点的采样集合Θk与第k+1个基因点的采样集合Θk+1,计算第k个基因点到第k+1个基因点的N对采样点之间的欧式距离,然后将N对采样点之间的欧式距离求和取平均,得到第k个基因点到第k+1个基因点的转移代价L(sk,sk+1):

根据下式计算起始基因点处的状态s0到目标基因点处的状态sg的每条染色体的路径代价L(s0,sg):

进一步的,本发明方法中,所述步骤12)中的融合海事规则的避障策略为:

式中:ei+fi=1,其中ei和fi为二进制变量,取0或1,ξ为正实数且无穷大,当水面无人艇和障碍物右侧交叉相遇局面或正面相遇局面时,靠右侧避障,此时ei=1,fi=0,当水面无人艇和障碍物左侧交叉相遇局面或追越局面时,靠左侧避障,此时ei=0,fi=1;ΔV为水面无人艇相对障碍物的速度矢量VUO大小;ΔγUOL为水面无人艇向左转时,水面无人艇能够逃离碰撞区域前提下,相对速度ΔV的方向改变量的最小值;ΔγUOR为水面无人艇向右转时,水面无人艇能够逃离碰撞区域前提下,相对速度ΔV的方向改变量的最大值;为水面无人艇相对障碍物的速度矢量VUO到水面无人艇速度矢量VUSV的角度;ΔVUSV为水面无人艇速度大小的改变量;Δα为水面无人艇航向角的改变量;

所述步骤12)中,根据上述避碰策略及水面无人艇的动力学约束,采用混合整数线性规划法,得到水面无人艇的航向角和速度大小的调整量。

进一步的,本发明方法中,所述步骤11)中,对于右舷目标ωD=5、ωT=0.5,对于左舷目标ωD=5、ωT=1。

进一步的,本发明方法中,所述步骤12)中,水面无人艇的动力学约束条件包括最大速度、最大加速度、最小转弯半径。本发明方法中,路径规划主要为了实现避障,障碍物可划分动态和静态两种形式,前者(...局部静态路径规划)主要避开静态障碍物,后者(...局部动态路径规划)主要避开动态障碍物。但两者并不相互独立,前者静态规划后得到一系列局部航路点,可以作为后者动态规划的起点和目标点。假设静态规划获得一系列包含起始点Start的位置点S0和目标点Goal的位置点Sn的局部航路点序列S0、S1、S2...Sn,则进行动态规划时,首先以S0作为动态规划起点,S1作为动态规划目标点,进行动态路径规划到达动态规划目标点后,然后将S1作为动态规划起点,S2作为动态规划目标点,进行动态规划,不断重复,直到到达目标点Sn停止。

有益效果:本发明与现有技术相比,具有以下优点:

1)与现有技术相比,本发明采用了局部分层思想,将局部路径规划划分为静态路径规划和动态路径规划两个层面,静态局部路径规划以路径最短为优化目标,可获得最短的无碰路径,动态局部路径规划以尽快逃离障碍物的运动区域为优化目标,使得水面无人艇远离运动障碍物以确保实时航行的安全性。此外,在算法实现上,将电子海图及传感器获得的静态障碍物信息传递到局部静态路径规划中,在动态局部规划中不需要实时对静态障碍物进行重复规划,减少了路径规划时间以及内存占用。

2)与现有技术相比,本发明采用了基于导航误差约束的改进遗传路径规划方法,将非精确的导航信息转化为环境模型中的未知环境信息,融合到路径规划中,不再以精确导航信息为假设前提,在环境模型中充分考虑导航误差的影响,减少了导航误差对路径选择造成的不利影响,提高了规划路径的安全性。与枚举、启发式等传统搜索方法相比较,改进遗传算法具有良好的全局搜索能力,可以从路径规划空间中快速搜索出全体满足约束条件的无碰路径,而不会陷入局部最优解;搜索从所有可行路径构成的种群出发,具有潜在的并行性,可以方便地进行分布式计算,加快求解速度;对于输入规模很大时,不同于传统方法的无解情况,仍可以有效地求解出最优或近似最优解。

本发明在VC仿真条件下,对该方法考虑导航误差影响基于遗传算法的局部静态路径规划进行仿真实验:

遗传算法参数设置:种群大小M=50,交叉率pc=0.8,变异率pm=0.1;

导航误差初始值:ε0=0.1m;

导航误差变化率:Δε=0.05;

利用发明所述方法得到的,分别如图3所示。结果表明在考虑导航误差影响下,采用本发明方法可以在路径规划过程中不再选择狭小区域而选择绕行到自由区域,以牺牲路径长度的代价来保证水面无人艇航行安全性和可行性。

附图说明

图1为本发明的流程框图;

图2为本发明中海事规则冲突情景定义以及不同会遇情景下所需采取的避让措施示意图;

图3为本发明基于导航误差的水面无人艇路径规划示意图;

图4为本发明有无考虑导航误差影响的水面无人艇局部静态路径规划对比曲线图。

图5为本发明的结构框图。

具体实施方式

下面结合实施例和说明书附图对本发明作进一步的说明。

本发明的基于导航误差约束的水面无人艇局部分层路径规划方法包括以下步骤:

步骤1)根据作业任务、电子海图和传感器得到的静态障碍物信息,采用直角坐标系和栅格法,将环境离散化为二维的基本单元栅格,通过对这些栅格的标示进行环境建模,初始化起点位置Start和目标点位置Goal;其中有障碍物的区域标记为1,即表示障碍栅格,无障碍物的区域标记为0,即表示自由栅格;直角坐标系以起始点为原点,x、y、z分别指向起始点的东、北、天;

步骤2)按照如下方式得到M条染色体:采用随机法在栅格地图上随机选取除起点位置Start和目标点位置Goal外的a个自由栅格点,把起点和目标点分为a+1段,然后采用A*算法连接起点、目标点和a个自由栅格点,使之成为一个可行的初始解,即得到一条有效的染色体;

将所述M条染色体作为初始种群,即为第一代种群,其中M为第一代种群的规模;

步骤3)确定每条染色体的每个基因点的导航误差,具体为:利用每条染色体中第k个基因点处的期望导航位置μk与第k+1个基因点处的期望导航位置μk+1之间的航行距离D(μk,μk+1)和导航误差变化率Δε,进行乘积运算,再加上第k个基因点的导航误差εk,得到每条染色体第k+1个基因点的导航误差εk+1

fε:εk+1=εkεD(μk,μk+1)

然后根据北斗导航误差εBD,若第k+1个基因点的导航误差εk+1>εBD,则将εBD赋值εk+1;否则,第k+1个基因点的导航误差εk+1为原值;

步骤4)根据所述步骤3)得到每条染色体的每个基因点的导航误差,采用高斯模型作为导航误差模型,根据该导航误差模型的导航位置分布密度函数采用蒙特卡洛采样法计算得到每条染色体的路径代价L(s0,sg),其中所有染色体路径代价中的最小值为该代种群的最优解;

4.1)导航误差模型为:

Xk~N(μk,∑k)

式中,为水面无人艇的期望导航位置,Xk=(xk,yk)为第k个基因点处水面无人艇的导航位置,∑k为第k个基因点的协方差矩阵。

则该导航误差模型的导航位置分布密度函数为:

所述协方差矩阵∑k根据下式确定:

其中,εk=3σk

式中,εk为第k个基因点的导航误差;σk为第k个基因点的标准差;

4.2)每条染色体的路径代价L(s0,sg)的具体计算过程包括:

根据概率模型中的3σ准则,在第k个基因点处的状态sk的导航不确定区域内,即以第k个基因点处的期望导航位置μk为圆心的3σ置信区域内,采用蒙特卡洛法采样N个样本点,获得第k个基因点处的状态sk的导航不确定区域内的采样集合Θk

在第k+1个基因点处的状态sk+1的导航不确定区域内采样N个样本点,得到第k+1个基因点处的状态sk+1的导航不确定区域内的采样集合Θk+1

根据第k个基因点的采样集合Θk与第k+1个基因点的采样集合Θk+1,计算第k个基因点到第k+1个基因点的N对采样点之间的欧式距离,然后将N对采样点之间的欧式距离求和取平均,得到第k个基因点到第k+1个基因点的转移代价L(sk,sk+1):

根据下式计算起始基因点处的状态s0到目标基因点处的状态sg的每条染色体的路径代价L(s0,sg):

步骤5)将有障碍物的危险区域作为碰撞区域A,根据导航误差模型,在碰撞区域A内对导航误差概率密度函数进行积分,求出每条染色体的每个基因点处的碰撞概率:

式中,Pc(Xk)为每条染色体第k个基因点处的碰撞概率;

根据上式得到每条染色体的第0个基因点(即起点)到第g个基因点(即目标点)之间的全部基因点处的碰撞概率集合{Pc(X0),Pc(X1)...Pc(Xg)};

步骤6)根据所述步骤5)得到的每条染色体的全部基因点的碰撞概率集合,针对每条染色体,查找该染色体在碰撞概率集合{Pc(X0),Pc(X1)...Pc(Xg)}中的碰撞概率最大值,然后将其作为该染色体的碰撞概率Pc(X):

Pc(X)=max{Pc(X0),Pc(X1)...Pc(Xg)}

步骤7)根据所述步骤4)得到的每条染色体的路径代价和所述步骤6)得到的每条染色体的碰撞概率Pc(X),按照以下方式计算每条染色体的适应度;

判断所述步骤6)得到的每条染色体的碰撞概率Pc(X)是否小于或等于设定值,如是,则根据下式计算每条染色体的适应度E:

否则根据下式计算每条染色体的适应度E:

其中m为权重值设定值,m>>L(s0,sg);

将所有染色体的适应度相加求平均,作为该代种群的平均适应值;

步骤8)假设第n代种群代数为x(n),若种群代数x(n)<设定值nsetting,则进入步骤9);否则,按照如下方式处理:

若在第n-(nsetting-1)代种群到当前第n代种群的连续nsetting代进化中,种群的最优解均未发生变化,且相邻两代的种群平均适应值变化没有超过1%,则将当前第n代中具有最优解的染色体作为所求解的一条最优无碰路径,并根据组成该染色体的基因点的坐标值得到一系列从起点到目标点的路径节点序列,将该路径节点序列作为局部航路点序列后,进入步骤10),否则进入步骤9);

步骤9)根据交叉率pc,即设定的交叉操作的概率值,随机选择pc*M条染色体进行交叉操作,对交叉的个体两两随机地交换基因点形成新的染色体,替换适应度最大的pc*M条染色体,然后再根据变异率pm,即设定的变异操作的概率值,随机选择pm*M条染色体进行变异操作,对进行变异的个体随机选择基因点进行实值变异,替换适应度最大的pm*M条染色体;将交叉变异操作获得的种群作为新的种群,即下一代(n+1代)种群代数为x(n+1)=x(n)+1,返回步骤3);

步骤10)根据所述步骤8)得到的一系列局部航路序列点,将第一个局部航路点作为动态规划起始点,将第二个局部航路点作为动态规划目标点;

步骤11)根据传感器获得水面无人艇航行过程中的动态障碍物位置信息及速度信息,求解水面无人艇与障碍物的最近会遇距离DCPA和到达最近会遇点的时间TCPA,然后根据下式,采用DCPA与TCPA加权得到碰撞危险度ρ:

ρ=(ωDDCPA)2+(ωTTCPA)2

其中,ωD、ωT分别为加权值;一般情况下,对于右舷目标ωD=5、ωT=0.5,对于左舷目标ωD=5、ωT=1;

步骤12)判断所述步骤11)得到的碰撞危险度ρ是否小于或等于经验值,如是,则根据融合海事规则的避障策略及水面无人艇的动力学约束条件,调整水面无人艇的航向角或速度大小,否则,保持水面无人艇原有的航向角和速度大小不变;

其中,根据融合海事规则的避障策略,调整水面无人艇的航向角或速度大小的具体过程包括:步骤12.1)以水面无人艇的航行方向为基准,求出水面无人艇和障碍物之间的航向差Δθ,再根据国际海事规则的冲突情景定义判断相遇局面类型:

如果Δθ∈[0°,45°]∪[315°,360°),则为追越局面;

如果Δθ∈[165°,195°],则为正面相遇局面;

如果Δθ∈(45°,165°),则为右侧交叉相遇局面;

如果Δθ∈(195°,315°),则为左侧交叉相遇局面;

步骤12.2)根据当前水面无人艇的位置矢量XUsV和速度矢量VUSV、障碍物的位置矢量XObs和速度矢量VObs,结合极坐标系,以北向为极轴方向,逆时针为正,通过速度避障法求得水面无人艇的避碰模型为:

式中,ΔV为水面无人艇相对障碍物的速度矢量VUO大小;ΔγUOL为水面无人艇向左转时,水面无人艇能够逃离碰撞区域前提下,相对速度ΔV的方向改变量的最小值;ΔγUOR为水面无人艇向右转时,水面无人艇能够逃离碰撞区域前提下,相对速度ΔV的方向改变量的最大值;为水面无人艇相对障碍物的速度矢量VUO到水面无人艇速度矢量VUSV的角度;ΔVUSV为水面无人艇速度大小的改变量;Δα为水面无人艇航向角的改变量;

步骤12.3)根据所述步骤12.1)得到的相遇局面类型和所述步骤12.3)得到的避障模型,得到避碰策略为:

式中:ei+fi=1,其中ei和fi为二进制变量,取0或1,ξ为正实数且无穷大,当水面无人艇和障碍物右侧交叉相遇局面或正面相遇局面时,靠右侧避障,此时ei=1,fi=0,当水面无人艇和障碍物左侧交叉相遇局面或追越局面时,靠左侧避障,此时ei=0,fi=1;

步骤12.4)根据所述步骤12.3)得到的避碰策略及水面无人艇的最大速度、最大加速度、最小转弯半径等动力学约束,采用混合整数线性规划法,得到水面无人艇的航向角和速度大小的调整量。

步骤13)根据水面无人艇的性能和实际需求自行设置规划时间ΔT,根据步骤12)得到的航向角改变量Δα、速度大小改变量ΔVUSV和设定的规划时间ΔT,计算水面无人艇规划一个ΔT时间后的当前位置(X,Y)为:

式中,X、Y分别为规划一个ΔT时间后水面无人艇在直角坐标系中的横坐标值和纵坐标值,Xprev、Yprev分别为此次规划前水面无人艇在直角坐标系中的横坐标值和纵坐标值,α、VUSV分别表示水面无人艇的航向角和速度大小。

判断水面无人艇的当前位置是否为当前动态规划目标点,如是,则进入步骤14),否则返回步骤11);

步骤14)根据所述步骤1)得到的目标点位置Goal,判断水面无人艇的当前位置是否为目标点位置Goal,如是,则结束本方法流程,否则将当前动态规划目标点作为下一个动态规划起始点,将下一个局部航路点作为下一个动态规划目标点,返回步骤11)。

上述实施例仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和等同替换,这些对本发明权利要求进行改进和等同替换后的技术方案,均落入本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1