本发明涉及一种基于透明度和跃层数据的水下潜器隐蔽路径规划方法,属于水下潜器路径规划领域。
背景技术:
自主式水下潜器工作的海洋环境复杂多变,水下潜器在水下航行要受海洋水文要素的影响。如海流会对水下潜器产生转向力矩,导致其航向、航迹偏离预定计划,目前已有研究将海洋要素考虑进水下潜器的路径约束中,如申请号为201110031277.7专利申请一种基于海流历史统计信息的水下潜器路径规划方法,该方法充分考虑海流影响,规划出具有安全性、经济性、光滑性相结合的航行路径。申请号为201310714121.8专利申请一种多约束条件下的auv航行环境空间构建方法,此方法将海洋要素中的透明度作为auv航行路径的约束之一。以上方法考虑的水文要素单一,没有将跃层、透明度、声道等水文要素综合考虑到海洋环境的模型中,然而这些水文要素对水下潜器的作业都有明显的影响。如李雅斯在《auv路径规划系统的环境建模方法研究》一文和王彦磊、袁博等人在《海洋环境对潜艇的活动影响》一文中都描述了海洋要素对水下潜器的航行影响。其中,温度跃层是海洋中非常重要的环境参数,它将直接影响潜器在水下的隐蔽性。海洋密度跃层的存在将隔断海水在垂直梯度上的流动,对自主式水下潜器的安全性影响非常大。海洋的透明度要素是影响水下潜器的下潜深度和水下装备布置的关键参数。海水透明度表示了光线在海水中透射的深度,它将影响自主式水下潜器的下潜深度。然而,这些研究重点说明了海洋要素对航行的影响,并没有说明如何处理海洋要素数据,如何将海洋要素对水下潜器航行的影响考虑进航行路径的评价中。现有的文献表明,目前尚无考虑跃层和透明度信息的水下潜器航路规划方法。
技术实现要素:
本发明的目的是为了为水下潜器规划出既安全又隐蔽的航行路径而提供一种基于透明度和跃层数据的水下潜器隐蔽路径规划方法。
本发明的目的是这样实现的:包括以下步骤:
步骤1、确定航行区域,提取跃层和透明度数据
航行区域是以路径起始点与终止点连线为对角线的矩形区域,从海洋环境数据库中提取在矩形区域范围内的声速跃层、温度跃层、密度跃层数据和透明度数据;
步骤2、航行区域环境评估
对航行区域内的跃层和透明度散点数据进行处理,跃层数据提取分类成禁航区、隐蔽区、危险区,透明度数据提取成暴露区,具体如下:
(2.1)水下潜器最大下潜深度为damax,用damax与跃层数据文件中温度跃层点上界深度dtemp相比较,若dtemp<damax,提取该温度跃层点数据,归入隐蔽区的温度跃层文件中;
(2.2)水下潜器最大下潜深度为damax,用damax与跃层数据文件中声速跃层点上界深度dsound相比较,若dsound<damax,提取该声速跃层点数据,归入隐蔽区的声速跃层文件中;若damax<dsound,提取该声速跃层点数据,归入危险区的声速跃层文件中;
(2.3)提取自主式水下潜器航行区域中负密度跃层点数据归入禁航区的负密度跃层文件中;
(2.4)水下潜器最大下潜深度为damax,用damax与跃层数据文件中透明度数据点上界深度dtransparency相比较,若dtransparency<damax,提取该透明度点数据,归入暴露区的透明度文件中;
步骤3、将透明度和跃层离散点数据处理成多边形区域
(3.1)将透明度或跃层点处于八个方向地理位置相邻的点聚堆,作为同一个要素块;
(3.2)提取要素块四周的边缘点;
(3.3)选取扫描基准点;
(3.4)散点扫描排序,以基准原点p0为基准,按照极角从小到大将点排序,利用数学公式向量的外积模公式:
|c|=|a|×|b|×sin<a,b>=a.x×b.y-b.x×a.y
其中,a、b为同一个数据要素块中不同的要素点,a.x,b.x为要素点a,b经度坐标,a.y,b.y为要素点a,b纬度坐标;
(3.5)按照极角顺序对边缘点进行graham扫描,每三个点为一个扫描单位,设一个扫描单位中的三个点分别为p1、p2、p3,当扫描到逆时针转p1、p2、p3时保留顶点p2,顺时针转p1、p2、p3时分以下几种情况:
设均匀间隔网格数据间距为d0,p1点与p2点之间距离为d1,p2与p3点之间的距离为d2,p1、p2、p3的夹角为α;
如果
(1)α>45°,保留p2点;
根据上述规则依次遍历所有的点,保留的点就是多边形的顶点集;
(3.6)重复步骤(3.5),直到多边形顶点集不再发生变化,输出多边形;
步骤4、构造路径评价函数;
(1)路径长度
对于有k个节点的航路,共有k-1个路径段,航路长度为路径段的长度相加,即:
其中,δli是第i段路径的直线欧式距离,xi,yi,zi分别是第i个路径点的经度、纬度、深度方向上的坐标,xi-1,yi-1,zi-1分别是第i-1个路径点的经度、纬度、深度方向上的坐标,其中i≤k;
(2)安全性
判断航线是否进入禁航区和危险区,若航线进入禁航区或危险区,设为情况1;未进入禁航区或危险区则为情况2;设进入禁航区或危险区路径惩罚值wsafty×fl,其中wsafety为路径的安全性权重系数,fl是路径实际长度,则安全性的评价函数为:
(3)隐蔽性
航路进入暴露区,为情况1,添加路径惩罚值wexposure×fl,其中wexposure为路径的暴露性权重系数,fl是路径实际长度,未进入暴露区为情况2;进入隐蔽区,航路在隐蔽区的路径长度lc,添加路径奖励值wconcealment×lc,其中wconcealment为路径的隐蔽性权重系数,则路径的隐蔽性评价函数为:
(4)上述三个路径指标中,根据航行任务指标的优先级确定相关系数大小,安全性优先级最高,其次是隐蔽性,因此,安全性权重系数wsafty大于暴露性权重系数wexposure和隐蔽性权重系数wconcealment;根据优先级设置,路径优劣的评价标准函数设计为:
f(p)=fl+fs+fc
其中,fl是路径的实际长度,fs是路径的安全性评价值,fc是路径的隐蔽性评价值,f(p)越小,表示路径越优;
步骤5、利用粒子群算法进行路径规划
(5.1)初始化粒子群算法参数;
(5.2)随机产生一组初始解;
(5.3)计算各个粒子的适应度值,更新粒子的个体最优值和种群最优值;
(5.4)根据粒子更新公式更新粒子;
(5.5)重复步骤(5.3)~(步骤5.4)达到最大迭代次数;
(5.6)输出具有安全性、隐蔽性的路径,路径规划结束。
本发明还包括这样一些结构特征:
1.所述步骤4中,wsafty=0.5。
2.所述步骤4中,wexposure=0.3,wconcealment=0.2。
3.步骤(3.4)中的散点扫描排序规则为:
|c|>0:要素点a在要素b的顺时针方向;
|c|<0:要素点a在要素b的逆时针方向;
|c|=0:共线时,按照与原点p0距离由小到大顺序,删掉距离原点距离小的点,相同位置的点只保留一个。
与现有技术相比,本发明的有益效果是:本发明提出了一种基于透明度和跃层数据的水下潜器隐蔽航路规划方法,通过对航行区域的环境评估,提取透明度和跃层数据形成禁航区、危险区、隐蔽区以及暴露区。充分考虑了航行区域中跃层和透明度对于水下潜器航行的影响,规划出的路径更具有安全性、隐蔽性。
附图说明
图1为本发明提出的基于透明度和跃层数据的水下潜器隐蔽路径规划方法的流程图;
图2为本发明将透明度和跃层离散点数据处理成多边形区域的示意图;
图3为本发明透明度和跃层数据离散点处理成多边形的流程图;
图4为本发明粒子群算法路径规划的流程图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述。
结合图1至图4,本发明是一种基于透明度和跃层数据的水下潜器隐蔽路径规划方法,包括航行区域的确定,航行区域的环境评估,航行区域透明度和跃层数据提取处理,路径评价函数设计,利用粒子群算法对路径进行规划等内容。具体流程如图1,具体步骤如下:
步骤1.确定航行区域,提取跃层和透明度数据
航行区域是以路径起始点与终止点连线为对角线的矩形区域,从海洋环境数据库中提取在矩形区域范围内的声速跃层、温度跃层、密度跃层数据和透明度数据。以海洋环境数据库中声速跃层、温度跃层、密度跃层和透明度历史统计数据为基础数据,跃层数据与透明度数据为多年对海洋跃层与透明度观测得到的历史统计数据,为均匀散点数据,包含跃层类型、跃层点经度、纬度坐标、跃层类型码、跃层强度、厚度、跃层的上界深度等信息。提取在矩形区域范围内的跃层和透明度数据。
步骤2.航行区域环境评估
对航行区域内的跃层和透明度散点数据进行处理,跃层数据提取分类成禁航区、隐蔽区、危险区,透明度数据提取成暴露区。包括以下几个部分:
(1)自主式水下潜器除了可以借助复杂的海洋地形来隐藏自己外,还有一个重要的因素可以实现在水下的隐身,就是借助温度跃层。根据温度跃层与水下潜器隐蔽性的关系,选取温度跃层数据归入隐蔽区。
水下潜器最大下潜深度为damax。用damax与跃层数据文件中温度跃层点上界深度dtemp相比较,若dtemp<damax,提取该温度跃层点数据,归入隐蔽区的温度跃层文件中。
(2)根据声速跃层与水下潜器隐蔽性和安全性的关系,选取声速跃层数据归入隐蔽区或危险区。
在声速跃层区域里,声速梯度的传播方向在深声道的上下层中是相反的,在声速跃层的强度最大的区域声波将向深声道的方向弯曲,这样将使得声波信号无法穿越声速跃层区域,但是声波信号在其深声道区域的声强较大,且可以传播到很远的距离。所以,利用声速跃层中声波传播距离远这一特点,来更好地实现水下潜器的通信。还可以利用声速跃层对声波信号的隔离,来实现水下潜器的隐蔽。
水下潜器最大下潜深度为damax。跃层数据文件中声速跃层点上界深度为dsound,若dsound<damax,提取该声速跃层点数据,归入隐蔽区的声速跃层文件中。
若damax<dsound,一定要尽量避开此区域航行,此时水下潜器自身携带的声纳传感器将无法探测到声道跃层中间或声道跃层下面的实际情况,声纳传感器探测出现了盲区,无法得知周围环境是否存在危险,这将严重影响水下潜器的航行安全。因此提取该声速跃层点数据,归入危险区的声速跃层文件中。
(3)根据负密度跃层与水下潜器的隐蔽性关系,将区域中的负密度跃层数据归入禁航区。
当自主式水下潜器遇到负密度跃层时,必须避开这块区域航行,如果不慎进入将严重影响水下潜器的安全。提取自主式水下潜器航行区域中负密度跃层数据归入禁航区的负密度跃层文件中。
(4)海水透明度表示了光线在海水中透射的深度,它将影响自主式水下潜器的下潜深度,如果下潜深度太浅会暴露自身的目标。因此,为了保证水下潜器的隐蔽性就必须使水下潜器在透明度深度以下航行。水下潜器最大下潜深度为damax,用damax与数据文件中透明度数据点上界深度dtransparency相比较,若dtransparency<damax,提取该透明度点数据,归入暴露区的透明度文件中。
步骤3.将透明度和跃层离散点数据处理成多边形区域
传统的离散点连续化成区域的方法中,常用的是最小凸包算法。然而,最小凸包算法只允许凸多边形的形成,在许多需要凹角来描述细节的区域并不适用,因此,本发明为了精确海区透明度和跃层覆盖区域的表示,设计了一种允许凹角的离散点形成多边形区域的方法。如图2为其示意图。
流程图如图3,离散数据点处理形成多边形区域具体包括以下几个步骤:
步骤3.1.将透明度或跃层点处于八个方向(东,西,南,北,东南,东北,西南,西北)地理位置相邻的点聚堆,作为同一个要素块。
步骤3.2.根据数据点的均匀间隔的特点,分别提取出要素块中每个经度中纬度最大和最小的两个点,以及每个纬度中经度最大和最小的两个点。即提取出要素块的四周的边缘点。
步骤3.3.选取扫描基准点,选取纬度坐标最小的点,如果存在多个纬度坐标最小的点,选择其中经度坐标最小的点作为基准原点,基准原点记作p0。
步骤3.4.散点扫描排序,以基准原点p0为基准,按照极角从小到大将点排序。利用数学公式向量的外积模公式:
|c|=|a|×|b|×sin<a,b>=a.x×b.y-b.x×a.y(1)
其中,a、b为同一个数据要素块中不同的要素点,a.x,b.x为要素点a,b经度坐标,a.y,b.y为要素点a,b纬度坐标。排序遵循以下规则:
|c|>0:要素点a在要素点b的顺时针方向。
|c|<0:要素点a在要素点b的逆时针方向。
|c|=0:共线时,按照与原点p0距离由小到大顺序。删掉距离基准原点距离小的点。相同位置的点只保留一个。
步骤3.5.按照极角顺序对边缘点进行graham扫描。每三个点为一个扫描单位,设一个扫描单位中的三个点分别为p1、p2、p3,当扫描到逆时针转(p1,p2,p3)时保留顶点p2,顺时针转(p1,p2,p3)时,分以下几种情况讨论:
设均匀间隔网格数据间距为d0,p1点与p2点之间距离为d1,p2与p3点之间的距离为d2,(p1,p2,p3)的夹角为α。
(1)如果
(2)α>45°,保留p2点。
根据上述规则依次遍历所有的点,保留的点就是多边形的顶点集。
步骤3.6.重复步骤3.5,直到多边形顶点集不再发生变化。输出多边形,格式如下:
{
n,lon1,lat1,lon2,lat2,...,loni,lati,...lonn,latn
}
其中,n为多边形顶点数目,loni,lati分别是第i个顶点的经度坐标和纬度坐标。
步骤4.构造路径评价函数
透明度和跃层对水下自主航行器执行任务的影响主要体现在安全性和隐蔽性方面。水下航行器执行任务过程中,首要考虑的因素是安全,若执行军事任务,对路线的隐蔽性也有要求。根据上述方法对跃层分为禁航区、危险区、隐蔽区、暴露区。根据这四个区,从水下潜器的安全性和隐蔽性出发构造路径评价函数,具体包括以下几个部分:
(1)路径长度
对于有k个节点的航路,共有k-1个路径段,航路长度为路径段的长度相加,即:
其中,δli是第i段路径的直线欧式距离。xi,yi,zi是第i个路径点的经度、纬度、深度方向上的坐标,xi-1,yi-1,zi-1是第i-1个路径点的经度、纬度、深度方向上的坐标。其中i≤k。
(2)安全性
判断航线是否进入禁航区和危险区,若航线进入禁航区或危险区,设为情况1,未进入则为情况2。设进入禁航区或危险区路径惩罚值wsafty×fl,其中wsafety为路径的安全性权重系数,fl是路径实际长度,则安全性的评价函数为:
(3)隐蔽性
若航路进入暴露区,为情况1,添加路径惩罚值wexposure×fl,其中wexposure为路径的暴露性权重系数,fl是路径实际长度,未进入暴露区为情况2。进入隐蔽区,航路在隐蔽区的路径长度lc,添加路径奖励值wconcealment×lc,其中wconcealment为路径的隐蔽性权重系数,则路径的隐蔽性评价函数为:
(4)上述三个路径指标中,根据航行任务指标的优先级确定相关系数大小,安全性优先级最高,其次是隐蔽性,因此,安全性权重系数wsafty大于暴露性权重系数wexposure和隐蔽性权重系数wconcealment。本发明中,wsafty=0.5,wexposure=0.3,wconcealment=0.2,因此,路径优劣的评价标准函数设计为:
f(p)=fl+fs+fc(5)
其中,fl是路径的实际长度,fs是路径的安全性评价值,fc是路径的隐蔽性评价值。f(p)越小,表示路径越优。
步骤5.利用粒子群算法进行路径规划
粒子群算法(pso)是一种智能优化算法。种群初始化一组随机解,通过迭代搜寻最优值。粒子群算法概念简单、容易实现、需要调节的参数少。本发明根据路径寻优要求,采用粒子群算法最小化路径评价函数f(p)。
粒子群算法路径规划流程如图4所示,具体包括以下几个步骤:
步骤5.1.初始化粒子群种群的参数,包括粒子数目、迭代数目、粒子维数、更新速度等参数。
步骤5.2.随机产生一组初始解。
步骤5.3.根据步骤4确定的路径评价函数计算各个粒子的适应度值。更新粒子的个体最优值和种群最优值。
若当前迭代的粒子个体适应度优于历史记录的个体最优值,则以当前粒子的适应度作为该粒子的个体最优值。若种群中出现某个体的最优值优于种群最优值,则以此个体的最优值作为种群最优值。
步骤5.4.根据粒子更新公式更新粒子。
设粒子群的种群粒子数目为n,k维空间中搜索最优解,第i个粒子位置记为xi=(xi1,xi2,...,xik),i=1,2,...,n,粒子速度记为vi=(vi1,vi2,...,vik),(i=1,2,...,n)。第i个粒子至今搜索到的个体最优解记为xibest,群体至今搜索到的最优解记为xgbest。第i个粒子的位置和速度根据以下公式进行更新:
vi’=ωvi+c1rand()(xibest-xi)+c2rand()(xgbest-xi)(6)
x′i=xi+vi'(7)
式中,vi',xi'分别是第i个粒子更新后的粒子速度和粒子位置,ω是惯性权重系数,c1,c2是调节参数,调节的是粒子学习种群最优解和个体最优解的程度,本发明中w取值范围为0.9~1.2,c1=2,c2=2。rand()为在0到1之间取的随机数。
步骤5.5.重复步骤5.3~步骤5.4直到达到最大迭代次数ni。
步骤5.6.输出具有安全性、隐蔽性的路径,路径规划结束。
步骤4(3)中,wsafty=0.5。步骤4(4)中,wexposure=0.3,wconcealment=0.2。
综上,本发明公开了一种基于透明度和跃层数据的水下潜器隐蔽路径规划方法,包括航行区域的确定和透明度、跃层数据的提取,基于透明度和跃层数据对航行区域进行评估,将离散透明度和跃层数据点处理成多边形区域,在航行区域中利用粒子群算法搜索最优路径等几个重点步骤。本发明根据海水透明度和跃层对水下潜器的影响将航行区域划分为禁航区、危险区、隐蔽区、暴露区,基于水下潜器安全性和隐蔽性设计路径评价函数,并利用粒子群算法对水下潜器航行路径进行规划,能够得到满足水下潜器安全、隐蔽航行的路径。