1. 引言
水下导航是一种利用重力梯度信息来确定水下航行器位置的技术,它具有低成本、高可靠性、无需外部参考等优点。然而,由于国产仪器在精确重力梯度数据上的缺失,导致重力梯度辅助导航的精度受到限制。因此,如何利用重力异常数据来提高重力梯度辅助导航的精度,是一个亟待解决的问题。本文针对这一问题,提出了一种基于数据驱动的方法,通过使用神经网络等算法对水下导航适配区进行分类预测,从而实现对重力异常数据的有效利用。本文的主要贡献和创新点有以下几个方面:本文建立了一个基于K-Means算法的模型,该模型通过对插值后的重力异常数据进行处理,实现了对导航适应区的精细化可视化、划分和校准,为后续的导航适应性预测提供了基础。本文研究了如何利用重力异常数据来提高重力梯度辅助导航的精度,解决国产仪器在精确重力梯度数据上的缺失问题。
本文首先建立了一个基于K-Means算法的模型,对插值后的重力异常数据进行处理,实现了对导航适应区的精细化可视化、划分和校准。然后,本文利用神经网络,根据重力异常值的均值和方差等特征指标来预测不同区域的导航适应性。本文在实际应用中,对所开发的系统进行了测试和评估,结果表明,系统在分类和预测方面显示出了很高的准确性和泛化能力,证明了选定的特征指标能够有效反映重力异常值的特性,并且基于深度学习的适应性评估标准能够清晰地区分不同的适应性区域。本文也分析了系统可能存在的误差和局限性,这些主要是由于数据收集条件的差异,以及所选特征指标可能未能全面覆盖或者对某些特征高估,为后续的研究提出了改进方向和建议。
2. 导航适配区
导航适配区的基本概念是指在水下导航过程中,根据重力梯度信息的质量和可用性,将水下区域划分为不同的导航适应性等级,从而为导航系统提供合适的参考信息。导航适配区的划分主要依据以下两个因素:
1) 重力梯度信息的精度:重力梯度信息的精度是指重力梯度数据与真实重力梯度之间的偏差,它受到重力梯度仪器的测量误差、重力场模型的精确度、重力异常数据的插值方法等因素的影响。重力梯度信息的精度越高,导航系统的定位精度越高,导航适应性越好。
2) 重力梯度信息的可区分性:重力梯度信息的可区分性是指重力梯度数据的变化程度,它反映了重力场的复杂性和多样性。重力梯度信息的可区分性越高,导航系统的匹配能力越强,导航适应性越好。
导航适配区的划分和识别是重力梯度辅助导航的重要前提和基础,它可以帮助水下航行器选择最优的导航策略,提高导航的效率和安全性。本文的目的就是利用重力异常数据,通过数据驱动的方法,实现对导航适配区的自动化分类和预测,为重力梯度辅助导航提供有效的支持和指导。
3. 分类与预测基本思路
重力异常值的分布是由海底地形和地质结构决定的,且不受其他因素(如海水密度、海流、潮汐等)的影响 [1] 。定义区域适配性是一个离散的分类变量,可以用有限的几个等级来表示,如高、中高、中、中低、低等。假设场景如下:假设影响区域匹配性的特征属性指标可以从重力异常值数据中提取,如重力异常值的均值、方差等。再假设适配区分类预测模型是一个基于机器学习的分类器,可以根据特征属性指标对区域适配性进行预测,并可以通过训练数据进行优化和评估。依据此思路,利用K-Means算法对重力异常数据进行聚类分析,根据重力异常值的大小和分布特征,将导航适配区划分为不同的类别,如高适配区、中适配区、低适配区等,并对每个类别进行标记和校准,以便于后续的预测和评估,然后利用神经网络作为分类和预测的工具,根据重力异常值的均值、方差、最大值、最小值、等特征指标,构建了一个多层感知器(MLP)模型,用于对不同区域的导航适应性进行分类和预测。本文选择了这些特征指标的原因是,它们能够较好地反映重力异常值的分布特征,从而判断导航适应性的高低。在实际应用中,对所开发的系统进行了测试和评估,通过与真实的导航适配区进行对比,验证系统的准确性和泛化能力,同时也分析了系统可能存在的误差和局限性,为后续的研究提出了改进方向和建议。
4. 数据分析
本文使用A,B两组重力异常值数据,并先使用了第一组数据A尝试制作了一个重力基准图,但该基准图并不理想,较为稀疏,需要进行细化。
为了细化重力基准图,我们需要对重力异常值数据A进行插值处理,得到更高分辨率的重力异常值数据A' [2] 。我们采用双三次插值法,即在两个方向上分别进行三次插值,得到一个平滑的曲面,然后在曲面上取得插值点的值。双三次插值法的优点是能够保持一阶和二阶的连续性,避免出现振荡和假象现象。
具体地,我们首先将重力异常值数据A看作是一个二元函数
,其中
,
,然后在每个方向上进行三次插值,得到一个新的二元函数
,其中
,
。M和N分别是m和n的整数倍,表示插值后的分辨率。我们可以用以下公式表示双三次插值法:
其中,h(x)是三次插值基函数,定义为:
其中
是重力异常值数据A的元素,如果超出边界,则用最近的边界值代替。这样,我们就得到了插值后的重力异常值数据A',它是一个M × N的矩阵,分辨率为
,即每个原始数据点周围有M/m−1个和N/n−1个插值点。
为了更直观的展示数据,我们将利用Matplotlib绘制三维散点图和二维热成像图,对插值后的重力异常值数据A'进行分析,划分区域,完成适配性标定。首先,将数据通过Python绘制成三维散点图,其中横纵分别为经度和纬度,垂直轴为重力异常值,颜色越接近黄色代表重力异常值越大,越接近蓝色代表重力异常越小,如图1所示。
该图像展示了数据A'的三维形式。要标定适配性,首先需要确认重力异常值随着经度和纬度的变化显著性,因为其反映了定位精度。根据图1的可视化,我们可以看到每个点都具有重力异常值。将其每相邻的四个重力异常值计算标准差和均值,并仍按1 × 1分辨率排布,绘制三维散点图分布如图2所示。

Figure 2. Visual diagram of the rate of change of gravity anomalies
图2. 重力异常值变化率直观图
图2较好的表明了重力异常值随着经度和纬度的变化显著性三维散点图,图中的浅色区域位于陡峭的山坡,变化率较强,深色区域位于山顶和山底,变化率较弱。由于我们仅需要经纬度上的变化分布情况,我们可以将图2的三维图像抽象成二维热力图,舍去垂直轴,得到图3的分布情况。

Figure 3. Change rate of gravity anomaly value
图3. 重力异常值变化率
通过此图像,可以反映出在经度和纬度的定位下,不同区域的适配性。其中,颜色靠近蓝色的位置适配性较弱,而颜色靠近黄色的位置适配性较强,较好的完成了区域适配性的标定。因此,我们可以根据适配性标定图,选择适合水下导航的区域,提高导航精度。
5. 适配标签的实现
为了建立适配区分类预测模型,我们需要从重力异常值数据A'中提取出特征属性指标,然后利用机器学习的方法,建立一个分类器 [3] ,过程如下。
首先,我们将重力异常值数据A'划分为若干个子区域,每个子区域的大小为S × S,其中S是一个正整数,表示子区域的分辨率。我们假设M和N都能被S整除,否则可以对边界进行适当的裁剪或填充。我们用
表示第p行第q列的子区域,其中
,
,
是一个S × S的矩阵,包含了该子区域内的重力异常值。
然后,我们对每个子区域
,计算以下几个特征属性指标,作为输入向量X的元素:
重力异常值的均值:
重力异常值的方差:
我们可以在这两个指标的基础上,使用K-Means计算出具体分布 [4] 。K-Means聚类将区域分为了五个指标区域,如图4所示。
图像展示了五个指标区域,每个颜色都代表不同的准确度。颜色越接近金黄色,特征性越强,颜色越接近深蓝色,特征性越弱。
K-Means聚类的结果如图5所示,每个颜色对应每个区域适配性标记的值,展示了重力异常值和重力异常值变化率对适配性区域的影响,即为所求模型。
6. 适配性预测的实现
做成的模型仍需要检验才能保证质量。因此接下来,我们依靠前文的全部结论,运用深度学习的方法,创建一个进行分类的数学模型,模型的数学表现形式可以表示为Y = F(X),X是特征属性指标,作为输入端,Y为适配性,作为输出端。深度学习是一种常见的数据分类方案,能较准确的将不同类别的数据进行分离,稳定性较强,能良好的完成适应性和迁移性测试。为了对前文建立的系统进行迁移性预测,我们需要对重力异常值数据B进行同样的插值和特征提取处理,然后将其输入到前文建立的系统中,得到适配性的预测结果,然后与实际情况进行比较,分析系统的准确性和泛化能力,以及可能存在的误差和影响因素 [5] 。
首先我们对重力异常值数据B进行双三次插值处理,得到更高分辨率的重力异常值数据B',它是一个M × N的矩阵,与重力异常值数据A'具有相同的结构和含义。我们用前文中提到的插值公式进行插值,得到结果可以看出,重力异常值数据B'的分布与重力异常值数据A'的分布有一定的相似性,但也有一些差异,这可能是由于数据B和数据A的采集时间、地点、条件等因素的不同造成的。然后我们对重力异常值数据B'进行子区域划分和特征属性指标提取,得到输入向量X,它是一个p维的向量,与重力异常值数据A'的特征属性指标具有相同的结构和含义。我们用前文中提到的公式进行特征提取,进行特征选择和降维操作。通过选择与目标任务相关的特征,或者将高维特征转换为低维表示可以进一步降低数据的复杂性和提高模型的泛化能力。接着我们将重力异常值数据A'的特征属性指标输入到前文建立的系统中,得到适配性的预测结果,即输出变量Y,它是一个离散的变量,一共有五个,分别表示适配性为高、中高、中、中低、低。
7. 模型的泛化能力
泛化能力是本模型功能的重要组成部分,我们用前文建立的模型进行预测,得到以下的结果,重力异常值数据B'的适配性预测结果与重力异常值数据A'的适配性标定图有极大的一致性,但也有一些偏差,这可能是由于数据B和数据A的适配性的差异造成的。
最后,我们根据重力异常值数据B'的实际适配性,与预测结果进行比较,分析系统的准确性和泛化能力,以及可能存在的误差和影响因素。
我们对以上的结果进行综合分析,得到以下的结论:
1) 我们建立的适配区分类预测系统的过程包括以下几个步骤:
数据处理:我们对重力异常值数据进行双三次插值,得到更高分辨率的重力异常值数据,然后对重力异常值数据进行子区域划分,得到若干个子区域。
特征提取:我们对每个子区域,计算重力异常值和梯度的一些统计特征,作为特征属性指标,构成输入向量。
适配性标定:我们根据重力异常值和梯度的大小,将重力异常值数据划分为四个等级的适配区,分别用不同的颜色表示,作为适配性的标签,构成输出变量。
分类预测:我们利用支持神经网络作为分类器,利用重力异常值数据的一部分作为训练集,另一部分作为测试集,进行分类预测,得到适配性的预测结果,与实际情况进行比较,评价系统的准确性和泛化能力。
稳定性分析、误差分析、灵敏度分析:我们对系统的输入、输出、参数和评价标准进行一些随机的扰动和系统的变化,观察系统的预测结果的变化和差异,分析系统的抗干扰能力和鲁棒性,以及系统的误差来源和影响因素。
2) 我们建立的适配区分类预测系统具有较高的准确性和泛化能力,能够对不同的数据集进行有效的分类预测,说明我们选取的特征属性指标能够反映出重力异常值的特征,我们采用的深度学习的适配性评价标准能够区分出不同的适配区。
3) 我们建立的适配区分类预测系统也存在一定的误差和局限性,主要表现在以下几个方面 [6] :
数据B和数据A的采集时间、地点、条件等因素的不同,可能导致重力异常值的分布和变化的不同,从而影响适配性的判断。例如,数据B可能包含了一些数据A没有的海底地形和地质特征,或者数据B可能受到了一些数据A没有的外部干扰和噪声的影响,这些因素都可能导致数据B的适配性与数据A的适配性有所差异,从而影响系统的预测结果。
我们选取的特征属性指标可能不够全面和综合,可能忽略了一些重要的特征,或者赋予了一些不重要的特征过高的权重,从而影响系统的预测效果。例如,我们只选取了重力异常值和梯度的一些统计特征,可能没有考虑到重力异常值的频率、周期、相位等特征,或者我们没有对特征进行归一化、标准化、降维等处理,可能导致特征之间的相关性和冗余性,可能导致系统的预测能力下降。例如,我们选取的特征可能存在一些线性或非线性的关系,或者一些特征可能包含了另一些特征的信息,这些情况都可能导致系统的预测效果受到干扰或降低。
基金项目
2024年辽宁科技学院大创项目(“雏鹰计划”)立项项目:基于深度神经网络的水下导航系统的研究,项目编号:D202311141645094594。