APP下载

基于并行蚁群算法的长基线定位方法∗

2019-11-30张海如王海斌

应用声学 2019年5期
关键词:表达式定位精度站点

张海如 汪 俊 王海斌

(中国科学院声学研究所 声场声信息国家重点实验室 北京 100190)

0 引言

目前,世界各国正积极实施“数字海洋”战略。水下导航定位技术在“数字海洋”战略中扮演着非常重要的角色。如何实现水下高精度导航定位已成为海洋开发与利用中最迫切的问题之一[1−3]。长基线(Long baseline,LBL)定位系统具有定位精度高、可靠性好、可进行大面积和深水海域的定位等优点,获得了国内外该领域多个研究机构的研究兴趣。文献[4]针对测量误差影响全向声呐浮标目标定位精度的问题,提出了采用总体最小二乘法对水下目标进行定位,仿真结果表明该方法优于求解定位方程组最小二乘解方法;文献[5]将同步模式下的水下目标定位问题简化为求解矩阵方程的问题,即采用球面交会的方法对目标进行定位,在此基础上,分析了目标测量深度误差、基元测量时间误差、基元位置测量误差、声速误差等相关参数的测量误差对定位精度的影响;文献[6]提出了一种改进的水声网络定位算法,该算法在进行定位运算前先对原始数据进行降噪处理,以提升其抗噪能力,同时降低了计算结果的冗余性。上述研究中都是将水声目标导航定位问题抽象为求解矩阵方程最小二乘解的问题。然而,由于水下环境的复杂性,水声目标定位是带约束条件的非线性优化问题,约束条件包括:声速误差、航行噪声、应答器偏移和载体摇摆等。将带约束条件的非线性优化问题退化为求解矩阵方程最小二乘解的问题,虽然降低了问题求解的复杂度,但这是以降低水下目标导航定位精度为代价的。随着海洋相关的各种应用领域中对水下目标导航定位的精度要求越来越高,高精度时延估计和带约束条件的非线性优化技术成为水声导航定位领域的研究热点。

时延估计精度是影响定位误差的关键指标之一,如何提高时延估计精度,已经成为该领域专家们的热点研究问题。文献[7]采用倒谱方法估计水声信号的时延,实验结果表明该方法适用于高信噪比条件,其时延估计精度优于广义互相关方法。文献[8]采用Chan算法获得的到达时间差(Time difference of arrival,TDOA)定位结果作为Taylor 算法的初始值,提高了基于Taylor 算法的TDOA 定位精度,并采用仿真实验验证了该方法的有效性。文献[9]采用相关峰分辨和稳定相关峰跟踪相结合的方法,以消除近程TDOA 被动定位中互相关峰模糊问题,并通过海上实验验证了该方法的有效性。文献[10]采用对数域同态滤波技术来降低多途对水声信号时延估计的影响,该方法先将接收信号进行对数变换,然后将其与本地信号进行谱减处理,再对处理后的信号进行滤波消除噪声分量和残留信号分量,最后将处理后的信号变换到时域,以获得时延值,实验结果表明该方法时延估计精度优于复倒谱估计法。但是由于该方法对信号进行处理过程中使用了谱减法,当接收信号与本地信号存在较大频移时,该方法无效。目前,绝大部分研究成果都是从提高时延估计精度的角度,提高LBL系统定位精度。但是,受水声信道的多途特性影响,目标信号的到达时刻具有测不准性,限制了LBL系统定位精度的进一步提高。

为了进一步提高LBL 导航定位系统的定位精度,本文研究了利用同步信标对目标进行导航定位的问题,将水声目标导航定位问题抽象为带约束条件的非线性优化问题,论证了最优化表达式参数求解过程与降低误差源干扰的过程具有同一性,并采用并行蚁群算法(The parallel ant colony algorithm,PACA)求其最优解,最后通过海试数据验证该方法的有效性。

1 基于最优化模型的LBL定位方法

LBL 定位系统由多个同步信标构成,信标位于不同站点处,水下目标通过接收多个信标发射的导航信号,实现对自身的定位。令目标在A点处的时刻收到站点i处在时刻发送的导航信号,A点和站点i的坐标分别为(x,y)和(xi,yi),A点与站点i之间的距离为ri,该时间段内导航信号从站点i处传播到A点的平均声速为Ci,Ci的值根据发射和接收站点的水文环境参数信息通过KrakenC 计算得到[11],目标收到导航信号的站点数为N,A点为待求解位置,满足方程组:

上述模型为二维平面导航定位模型,当导航定位距离与海深的比值大于100 时,按照二维平面和三维球面两种导航定位模型计算得到的两点间距离之差小于2 m,由此导致的定位误差与测时、声速估计等其他原因导致的定位误差相比要小1~2 个数量级,因此可以忽略不计。上述模型适用于浅海远距离导航定位求解。

在矩阵方程组(1)中,由于GPS 接收模块存在定位误差,会导致站点i的坐标(xi,yi)存在误差;由于信道起伏、多途以及噪声干扰等原因,会导致导航信号最佳到达时刻存在估计误差;由于收发系统的同步误差,会导致导航信号发送时刻和到达时刻存在测量误差;由于水声信道的非均匀性,采用发射和接收站点的水文环境参数信息,估计收发站点之间的平均声速Ci存在较大误差,并且声速估计误差引起的测距误差会随着距离的增大而增大。由于上述各种误差源的存在,直接采用矩阵方程组(1)的最小二乘解作为目标位置信息存在较大的定位误差。

为了进一步提高导航定位系统的定位精度,本节将矩阵方程组(1)转化为带约束条件的非线性优化问题:

其中,∆x、∆y和∆ri是目标函数中参数x、y和ri的调整量;Xmax、Ymax和Rmax是目标函数中参数x、y和ri的最大调整量。求解式(2)过程中,三个参数、和Ci的各自误差都作用在参数ri上,构成综合误差∆ri,通过对参数ri的调整可以同时降低收发系统同步误差、测时误差以及声速估计误差对定位精度的影响,而且需要调整的参数个数得到有效的降低,有利于提高目标函数求解效率。求解式(2)所示的最优化问题,即可得到目标位置的最优估计值。

2 PACA求解目标位置信息

由于求解目标位置信息的目标函数表达式(2)是比较复杂的多极值问题,不能用解析法对其进行求解,本文采用迭代搜索的方法求其最优解或者近似最优解,这类逼近真实解的近似解在工程项目中仍具有现实意义[12]。蚁群算法[13]是一种启发式算法,该算法本身具有随机性,当前,其收敛性还没有严格的数学证明,但是大量实践表明其在求解最优化问题中性能优异,已成为一种高效的最优化问题求解工具。为了求解表达式(2)中的目标位置信息的最优解或者近似最优解,设计了并行蚁群算法(PACA),避免单次求解获得较差的局部最优解;同时,PACA在蚁群算法的基础上进行改进,采用变步长搜索,以兼顾蚁群算法的求解效率和求解精度,即先采用较大步长搜索粗略解,随着迭代次数的增加逐步缩小步长,以搜索精细解。PACA 系统框图如图1所示,即:同时且独立启动Q个子系统对表达式(2)进行求解,将各个子系统求解结果代入表达式(2),从中选取最优解,该最优解作为目标位置的最优估计值。

图1 PACA 用于LBL 定位的系统框图Fig.1 PACA system block diagram for LBL positioning

PACA 的各个子系统求解表达式(2)中的目标位置信息的最优解或者近似最优解,其实现步骤如下:

步骤1 算法初始化。求解方程组(1)获得参数x、y的初值;最大迭代次数为Nmax;初始迭代次数为Num = 0;每一代蚁群的个体数为P;目标函数求解精度阈值为θ。模型求解的收敛速度与适应度函数所对应的组合优化参数的个数有关,组合优化参数个数越少,收敛速度越快,模型求解所需迭代次数越少。本文适应度函数中组合优化参数个数为3,组合优化参数规模较小,通常迭代求解30 次后,适应度函数能收敛到稳定残差。

步骤2 计算下一代搜索路径。下一代搜索路径更新公式为

其中,wh为移动权重,h为迭代次数标记,∆xh、∆yh和∆ri,h为移动方向向量,xh、yh和ri,h为当前一代参数值,xh+1、yh+1和ri,h+1为下一代参数值。为了加快收敛速度,同时保证计算精度,采用变步长搜索wx,h= (1−Num/Nmax)Xmax、wy,h=

移动方向矩阵为

其中,∆xh、∆yh和∆ri,h中各个元素均为±1 之间的随机数。

步骤3 计算适应度函数,更新最优解。将步骤2 中当前一代中每一个体代入表达式(2),计算当前一代最优解。

步骤4 判断迭代是否停止。如果迭代次数达到Nmax,或者当前最优适应度函数值小于θ,则停止迭代,目标定位结果为当前最优解;否则,返回执行步骤2。

上述算法时间复杂度分析:PACA 的单个子系统求解表达式(2)中的目标位置信息的最优解或者近似最优解的时间复杂度为O(Nmax·P ·n2)[14],其中n为适应度函数所对应的组合优化参数的个数,本应用中n= 3。在本应用中,由于组合优化参数规模较小,其计算效率较高。

3 海试数据验证及结果分析

为了验证PACA用于LBL定位的性能,本文将该方法定位结果与求解方程组(1)获得的定位结果进行对比分析。实验海区距离岸边约60 海里,水深30~50 m,泥沙底质。整个实验为一个航次,采用双船作业,其中科学三号为接收船,金星二号为发射船。在本次实验中,由于只有一艘发射船发射导航信号,发射船需要机动才能在不同位置发射导航信号,因此接收船需要等待一定的时间才能收到发射船在多个不同位置发射的导航信号。在此期间,接收船采用船首抛锚方法,并通过GPS接收模块来获知本船的位置漂移。在本次实验中,接收船和发射船的位置分布如图2所示,在图2中接收船在坐标原点(站点M)处抛锚,站点M用“O”表示;发射船分别位于站点1、站点2、站点3 和站点4,其中,在站点1、站点2 和站点3 采用定点吊放声源发射导航信号,发射船在站点4 从L1 运动到L2 采用拖曳声源连续发射导航信号,以便于验证不同距离定位精度,站点4包含436个测点。在本次实验中,由于海深只有30~50 m,而导航距离在30 km 以上,因此将测量得到的声传播距离直接作为其在平面坐标系上的投影距离,由此导致的定位误差与测时、声速估计等其他原因导致的定位误差相比要小两个数量级以上,因此可以忽略不计。

图2 接收船和发射船的位置分布Fig.2 Position distribution of receiving and launching vessels

本实验选取图2所示的站点1、站点2、站点3和站点4 作为发射位置,对接收船进行定位,由于站点4 包含436 个测点,实验获得436 个定位结果。PACA 求解最优化表达式(2)的相关参数值初始化如下:参数x、y和ri的最大调整量Xmax= 50、Ymax= 50 和Rmax= 40;求解表达式(2)的子系统数Q=10;各子系统的最大迭代次数为Nmax=50,每一代蚁群的子个体数为P= 40,θ= 500。对站点4 的第1 个发射点,PACA 的第一个子系统求解表达式(2)对应的目标函数收敛曲线如图3所示。由声学方法得到的接收船位置与由接收船GPS 接收模块得到的真实位置之间的误差如图4所示,其中,虚线为求解方程组(1)获得的定位结果对应的定位误差曲线,实线为PACA 方法求解最优化表达式(2)的定位结果对应的定位误差曲线。

图3表明PACA 方法求解表达式(2)所示的最优化问题具有较好的收敛性。在图4所示的定位误差曲线对比图中,采用计算矩阵方程的最小二乘解的定位方法,其定位误差的最大值为147.13 m、最小值为47.60 m、平均值为81.37 m;采用PACA 求解最优化表达式(2)的定位方法,其定位误差的最大值为104.35 m、最小值为7.09 m、平均值为50.46 m。上述实验结果表明,采用PACA 求解最优化表达式(2)的定位方法,通过在目标位置的最小二乘解和收发点的距离估计值附近启发式搜索,能降低收发系统同步误差、测时误差、声速估计误差等对适应度函数的干扰,能对适应度函数起到优化作用,进而提高目标定位精度;蚁群算法求解最优化表达式(2)可能获得局部最优解,采用PACA 方法获得的目标位置估计值更接近适应度函数的全局最优解。由于单个子系统求解表达式(2)的收敛速度较快,迭代20 次左右即可获得平稳残差。当并行子系统数Q较小时,可以采用Q次单个子系统串行求解的方法来等效并行求解;当并行子系统数Q较大时,为了提高目标定位的实时性,可以采用GPU 系统进行并行运算。

图3 收敛曲线Fig.3 Convergence curve

图4 定位结果误差曲线的对比Fig.4 Comparison of the error curve of the location result

4 结论

本文将LBL 水声导航定位问题抽象为带约束条件的非线性优化问题,并采用PACA求其最优解。采用定位方程组的最小二乘解作为系统的初始值,降低了最优解的搜索区间,能提高系统求解效率;与采用单独的蚁群算法求解相比,采用PACA 进行求解,能降低算法本身可能陷入局部最优解的影响,有利于提高解的精度和稳定性;采用PACA 进行目标函数求解的过程中,令其搜索步长随着迭代次数的增加逐渐减小,既能提高算法迭代收敛速度,又能保证解的精确度。海试数据处理结果表明,与传统的求解定位方程组的最小二乘解相比,本文方法平均定位误差降低了30 m,能有效降低各个误差源对水声目标导航定位精度的影响。

猜你喜欢

表达式定位精度站点
一个混合核Hilbert型积分不等式及其算子范数表达式
表达式转换及求值探析
基于Web站点的SQL注入分析与防范
GPS定位精度研究
GPS定位精度研究
浅析C语言运算符及表达式的教学误区
立式车床数控回转工作台定位精度研究
积极开展远程教育示范站点评比活动
高分三号SAR卫星系统级几何定位精度初探
首届欧洲自行车共享站点协商会召开