1. 问题重述
1.1. 问题背景
绝大多数现代火箭采用多级设计,其中下级火箭或助推器在完成既定任务后,会通过级间分离装置与火箭的上级分离,并进入自由下落状态。在坠落的过程中,残骸由于高速下落会经历跨音速飞行,即飞行速度超过音速,产生音爆。音爆是由于火箭残骸快速穿越空气并打破音速壁垒所产生的冲击波,这种跨音速音爆不仅会对周围环境产生较大影响,也成为一种有效的定位信号。
为了确保火箭残骸能够快速而安全地回收,通常会在火箭残骸的理论落区布设多个震动波监测设备。这些监测设备能够在火箭残骸产生跨音速音爆时,接收到由音爆引发的震动波信号。这些信号从不同地点传来,通过分析各个设备接收到的信号的时间差,结合波速的已知特性,便可推算出音爆的发生位置。更进一步,通过精确的时间差计算和弹道外推技术,可以实现残骸落地点的快速精准定位。
然而,火箭发射后残骸的定位问题并非易事。首先,火箭残骸的落区通常广阔,可能跨越数十甚至数百公里,残骸在空中发生音爆后可能还会有一定的漂移,增加了定位的难度。其次,音爆的传播速度接近声速,而残骸可能会发生多次分离或翻滚,这使得音爆的信号接收与定位变得更加复杂。再者,残骸的形态、降落过程中的空气动力学特性,以及在不同大气层条件下的飞行表现等,都可能影响音爆信号的特征。
为了克服这些困难,采用多台震动波监测设备,并利用不同地点的设备接收到的音爆信号时间差,是目前定位火箭残骸的常见方法。通过这些信号,可以在短时间内确定残骸在空中产生音爆的具体位置,进而预测其精准的落地点。此外,结合高精度的弹道外推技术,可以进一步提高定位精度。此方法的核心优势在于快速响应,使得回收团队能够在火箭残骸坠落后迅速进行回收,并为残骸的后续分析和研究提供关键数据。
总的来说,火箭残骸定位系统不仅需要多台监测设备的协同工作,还需要高效的信号处理和数据分析技术。随着火箭技术的发展和监测设备精度的提高,这一方法正在不断完善,成为火箭回收和研究领域的重要手段。在未来,随着技术的进一步进步,预计火箭残骸的定位和回收将变得更加迅速、精准,并能显著提高火箭发射的安全性与可持续性。
1.2. 问题提出
考虑到大多数火箭为多级火箭,每级分离后可能会产生音爆,因此可能存在多个残骸。我们希望通过多个监测设备接收到的音爆信号,准确地定位空中单个或多个火箭残骸的位置和时间。
问题一,建立数学模型,分析如果要精准确定空中单个残骸发生音爆时的位置坐标(经度、纬度、高程)和时间,至少需要布置几台监测设备?
问题二,火箭残骸除了一级残骸,还有两个或者四个助推器。在多个残骸发生音爆时,监测设备在监测范围内可能会采集到几组音爆数据。假设空中有4个残骸,每个设备按照时间先后顺序收到4组震动波。建立数学模型,分析如何确定监测设备接收到的震动波是来自哪一个残骸?如果要确定4个残骸在空中发生音爆时的位置和时间,至少需要布置多少台监测设备?
问题三,假设各台监测设备布置的坐标和4个音爆抵达时间已知。利用问题2所建立的数学模型,确定4个残骸在空中发生音爆时的位置和时间。
问题四,假设设备记录时间存在0.5秒的随机误差,请修正问题2所建立的模型以较精确地确定4个残骸在空中发生音爆时的位置和时间。通过对问题3中的数据叠加随机误差,给出修正模型的算例,并分析结果误差。如果时间误差无法降低,提供一种解决方案实现残骸空中的精准定位(误差不超过一定范围),并自行根据问题3所计算得到的定位结果模拟所需的监测设备位置和音爆抵达时间数据,验证相关模型。
2. 模型假设与符号说明
2.1. 模型假设
1) 假设火箭产生音爆时不违背牛顿定律;
2) 每个残骸的音爆时刻在不同程度上是独立的;
3) 监测设备可以准确地记录音爆抵达时间,即设备的时间测量误差可以忽略不计;
4) 每个残骸的音爆时刻与其空中位置无关,即残骸在空中发生音爆的位置对于音爆时刻没有影响;
5) 残骸在空中发生音爆的声波传播速度是匀速的,即不受空气密度等因素的影响;
6) 各台监测设备之间的距离远小于残骸与监测设备之间的距离,因此可以忽略监测设备之间的空间影响;
7) 残骸在空中发生音爆的位置与其空中飞行轨迹近似处于直线上,因此可以使用直线传播模型进行定位。
2.2. 符号说明
符号说明见表1。
Table 1. Description of symbols
表1. 符号说明
符号 |
符号描述 |
单位 |
|
监测设备 |
1 |
|
残骸 |
1 |
|
残骸
到设备
的理论传播时间 |
|
|
速度 |
|
3. 问题一的建模与求解
3.1. 单个残骸发生音爆时的位置和时间的确定
使用三维空间中的声波传播速度,根据各监测设备接收到音爆的时间和已知坐标,可以建立一个到达时间差定位(Time Difference of Arrival, TDOA)的数学模型。理论上,确定空间中一点至少需要四个监测点(三个用于定位,一个用于校正时间差)。
计算方法:通过构建方程组,其中包含各监测设备到音爆发生点的距离与声波传播时间的关系,可以解算出音爆发生的位置和时间。
3.2. 基于时间差定位(TDOA)的单个残骸音爆定位模型
3.2.1. 模型建立
对于问题一,我们需要建立一个基于时间差定位(TDOA)的数学模型来确定火箭残骸发生音爆时的空中位置。这里使用的方法是多边测量,基于监测设备接收到音爆声音的时间差。
步骤1:定义问题和模型
需要至少四个监测设备的数据来定位三维空间中的一点,因为三个设备确定位置,第四个用于校准时间差。震动波的传播速度设为
。
步骤2:建立方程组
假设音爆发生的位置为
,时间为
。
设备
的坐标为
,接收到音爆的时间为
。
对于任意两个设备
和
,音爆到达这两个设备的时间差
与距离差
。
相关联,可以建立方程:
(1)
步骤3:求解方程组
使用非线性最小二乘方法求解这些方程。
1) 方程建立
首先,我们假设音爆发生的位置为
且时间为
。
已知设备
的位置为
,接收到音爆的时间为
。
由于声波传播速度
,每个设备
到音爆源的距离与接收时间的关系为:
(2)
2) 非线性方程组
对于四个以上的监测设备,我们得到一个非线性方程组,其中每个方程代表一个设备的距离和时间关系。
方程的数量通常多于要解决的变量
,因此这是一个过定系统,最佳的求解方法是采用最小二乘法。
3) 最小二乘法求解
通过构建一个最小化目标函数来求解这个过定非线性方程组[1]。目标函数可以定义为所有设备计算距离与实际测量距离差的平方和:
(3)
4) 使用MATLAB实现求解
使用MATLAB的lsqnonlin函数,这个函数适合求解非线性最小二乘问题。
定义初始估计值对求解的影响很大,通常可以选取所有设备的坐标和时间的平均值作为初始估计。
步骤4:运行代码和解释结果
这个过程依赖于高精度的时间记录和设备的精确地理位置。
完成上述四个步骤之后,就能确定安排几台监控设备,进行精准确定空中单个残骸发生音爆时的位置坐标(经度、纬度、高程)和时间。进而,利用和选取已知给定的各台设备三维坐标(经度、纬度、高程)、音爆抵达时间(相对于观测系统时钟0时)进行计算。
3.2.2. 结果分析
通过MATLAB运行得到结果,分析整合后得到如下数据:1.071149855684057e+07。
4. 问题二的建模与求解
4.1. 问题分析与思路
对于四个残骸,每个监测设备会接收到四组震动波,需要解决的主要问题是信号的分离与匹配。这可以通过建立多源定位模型,并结合信号处理技术(如波达方向估计,DOA)来实现。
设备需求:为了可靠地分辨并准确定位四个残骸,理论上需要至少十个监测设备,以提供足够的数据覆盖和交叉验证。
4.2. 模型建立
多残骸音爆定位模型
多个残骸发生音爆时的监测
为了解决问题二,即确定监测设备接收到的震动波是来自哪一个残骸,并找出这些残骸在空中发生音爆时的位置和时间,我们可以使用多源定位技术。这通常涉及建立一个多目标优化问题[2],我们需要同时解决多源信号的匹配和定位问题。
详细的模型建立过程:
1) 问题开始
设有
个监测设备和
个残骸(本例中
)。
每个设备接收到来自每个残骸的音爆的时间。
目标是使用这些时间数据确定每个残骸的空间位置和音爆发生的时间。
2) 建立模型
设残骸
在空中的位置为
和音爆时间
。
设备
的位置已知,记为
。
设备
接收到来自残骸
的音爆的时间
。
使用声速
,我们有:
(4)
对于每个设备和每个残骸的组合,可以建立一个等式,表示声波传播时间与测量时间之间的关系。
我们将采用非线性最小二乘方法进行求解。
3) 数学表达
① 建立方程:
每个残骸
在空中的位置为
,并且在时间
发生音爆。
已知设备
的位置
。声速
,从残骸
到设备
的理论传播时间计算如下:
(5)
每个设备
接收到来自每个残骸
的音爆的实际时间
。
② 目标函数:
(6)
4.3. 模型求解
1) 初始估计
通过计算设备位置和时间的平均值,对非线性优化问题的解进行初步估计,以此作为每个残骸的初始位置和时间的预测。我们利用MATLAB的lsqnonlin函数来解决非线性最小二乘优化问题,有效处理了问题中的非线性和多参数特性。首先,需要定义目标函数,该函数会计算所有设备和残骸之间预测时间与实际时间的误差平方和。之后,可以设置算法选项,包括迭代显示、容差和最大迭代次数等,以优化过程[3]。
2) 收敛和优化
lsqnonlin通过一系列迭代逐步优化目标函数。在每次迭代中,它会不断调整残骸的位置和音爆时间的估计,直到达到设定的收敛标准或达到最大迭代次数。算法完成后,最终会得到每个残骸位置和音爆时间的最佳估计值,最大程度减少预测结果和实际观测数据之间的误差。这种精确的数学模型和求解过程让我们能够高效处理多源的复杂定位问题,准确估计火箭残骸的位置和音爆时间,为多信号源的追踪与回收提供可靠的数据支持。
3) 通过MATLAB运行得到结果,分析整合后得到如下数据:1.168820124367732e+02。
实际结果:116.8820124367732。
5. 问题三的建模与求解
5.1. 问题分析与思路
问题三要求确定多个火箭残骸发生音爆时的位置和时间。首先,我们利用震动波的传播速度和各监测设备接收到的音爆抵达时间,计算确定残骸发生音爆的位置。然后,根据问题二中建立的数学模型,对于多个残骸的情况,需要确定各监测设备接收到的震动波来自哪一个残骸,进而确定各残骸的位置和时间。
5.2. 多组音爆数据综合模型
问题三涉及在给定每个监测设备接收到四个不同时间的音爆数据的情况下,确定四个残骸在空中发生音爆时的位置和时间。这要求我们建立一个复杂的多源定位模型,并处理同时来自多个音源的信号。
详细的模型建立过程:
1) 定义问题
我们有若干个监测设备,每个设备记录了来自四个不同残骸的音爆到达时间。
每个残骸的位置
和发生音爆的时间
需要确定。
2) 建立模型
使用声速
,音爆从残骸
到设备
的传播时间
可以表示为:
(7)
这里
是已知的,我们需要确定
、
、
和
。
3) 形式化为优化问题
目标是最小化每个设备对于每个残骸测量的时间与理论时间的差的平方和。
详细的模型求解过程:
对于问题三,我们面临的挑战是在给定每个监测设备接收到四个不同时间的音爆数据的情况下,确定四个残骸在空中发生音爆时的位置和时间。这要求我们建立一个适当的数学模型并应用有效的求解方法。这里,我们将采用非线性最小二乘法进行求解。
4) 数学表达
① 建立方程:
设四个残骸分别在位置
且在时间
发生音爆。
已知设备
的位置为
。
声速
,从残骸
到设备
的理论传播时间由下式给出:
(8)
每个设备
接收到来自每个残骸
的音爆的实际时间
。
② 目标函数:
目标是最小化所有设备对于所有残骸预测时间与实际时间之间的平方差:
(9)
5.3. 模型求解
1) 初始估计
在解决非线性优化问题时,初始估计是关键的一步。一般来说,可以通过获取所有设备位置的均值以及接收时间的均值,来提供关于残骸位置和时间的初步估计。这样的方法有助于为优化过程提供可靠的起点,使后续的计算更高效。
2) 非线性最小二乘法
为了求解这个非线性最小二乘问题,可以利用MATLAB提供的lsqnonlin函数,它是专门为解决复杂的多变量非线性问题而设计的。该工具可以有效地处理非线性问题中的多参数特征[4]。
3) 优化配置
在MATLAB中设定lsqnonlin的算法选项,比如选择迭代显示、算法类型和容差等,以确保求解过程的监控和性能的优化。通过优化配置,可以提高结果的准确性和效率,并为最终的残骸位置和音爆时间提供更精确的估计。
4) 结果处理
算法终止后,输出每个残骸的位置和音爆时间的最优估计值。
6. 问题四的建模与求解
6.1. 问题分析与思路
考虑时间误差的模型修正,误差模型:在每个测量数据中引入0.5秒的随机误差,需要重新调整定位算法,可能采用鲁棒估计方法。解决方案:如果时间误差无法降低,可以考虑增加更多的监测设备,或使用更高级的算法(如卡尔曼滤波器)来优化位置的估算。模拟验证:通过模拟数据(添加随机误差后),验证修正后的模型是否能有效减少定位误差,并满足实际需求。
6.2. 基于多元定位的随机误差修正模型
问题四要求我们处理可能存在的测量误差,并修正模型以更精确地确定四个残骸在空中发生音爆时的位置和时间。我们还需要模拟包含随机误差的数据,并验证修正后的模型。
模型建立过程:
1) 初始问题
每个监测设备记录的时间可能存在最多0.5秒的随机误差。
目标是在考虑这种随机误差的情况下,确定每个残骸的位置和音爆时间。
2) 扩展模型以包括误差
随机误差的模拟可以通过向每个时间测量值添加一个随机值来实现。这个随机值应该符合均匀分布,范围从−0.5秒到+0.5秒。
修正的模型需要包含这个误差,通过改进算法的鲁棒性来处理误差。
3) 数学表达
① 建立方程:
每个残骸
在空中的位置为
,音爆发生的时间为
。
设备
的已知位置为
。声速
,从残骸
到设备
的理论传播时间为:
(10)
每个设备接收到的时间
包含了随机误差。
误差模型:
设备接收时间
通过加入随机噪声来模拟误差,假设噪声遵循均匀分布,范围在
秒。
② 目标函数:
我们的目标是最小化所有设备对于所有残骸的预测时间与含噪声测量时间之间的平方残差和:
(11)
6.3. 模型求解
求解过程
1) 初始估计
在非线性最小二乘法开始迭代之前,需要为残骸的位置和音爆时间进行初始估计。通常,位置初始值可通过计算所有设备位置的平均值得出,而时间的初始值则来自接收时间的平均值。
2) 优化算法
在MATLAB中,我们利用lsqnonlin函数来实现最小化目标。此函数专为非线性最小二乘问题设计,可有效应对此类问题的复杂性和非线性特征。通过调整算法选项(如迭代显示、算法类型等),可以监控和优化性能。
3) 收敛与输出
lsqnonlin持续迭代目标函数,直至满足收敛标准或达到设定的迭代次数。最终结果将显示每个残骸的最佳位置和音爆时间,以使预测与测量时间之间的残差最小化。
4) 通过MATLAB运行得到结果,分析整合后得到如下数据:
7. 模型的分析与检验
7.1. 灵敏度分析
我们通过以下步骤来进行火箭残骸定位问题的灵敏度分析:
1) 监测设备数量和布局的影响。数量影响:增加监测设备数量通常会提高定位的精度和可靠性,因为这样可以获取更多的数据点,减少误差的累积。灵敏度分析可以通过模拟不同数量的监测设备配置,来观察残骸位置和时间估计的变化。布局影响:设备的空间分布也非常关键。设备如果集中在某一区域或者排列不当,可能会导致定位精度下降。通过改变设备的空间布局(如分散或特定方向布局),可以分析其对定位结果的影响。
2) 数据误差的影响。时间记录误差:设备记录时间的随机误差对定位精度有显著影响。可以通过在模拟数据中加入不同水平的随机误差,分析这些误差对最终定位结果的影响。音爆速度假设误差:震动波的传播速度若有误差(例如由于大气条件变化),也会影响音爆时间的计算。可以通过调整音爆速度的假定值,来分析其对定位精度的影响。
3) 算法和模型选择的影响。算法稳定性:使用不同的算法(如最小二乘法、最大似然估计等)进行定位,可能会在处理同样的数据时得到不同的结果。分析不同算法对结果的影响,可以帮助选择更加稳定和准确的方法。模型复杂性:模型的复杂度(如考虑更多变量和相互作用)可能会增加计算负担,但可能提高结果的精确度。可以通过比较简单和复杂模型的输出,来评估复杂度增加是否值得。实施方法为了进行灵敏度分析,我们可以采用蒙特卡洛模拟方法,通过生成大量的模拟数据集(在输入参数上引入预定的变化),并应用定位算法来评估结果的变化。
使用Python进行灵敏度分析,我们结合上述三个关键分析方向(监测设备数量和布局的影响、数据误差的影响、算法和模型选择的影响)来设计和执行具体的Python模拟框架进行模拟和计算。
实施灵敏度分析:
1) 变化设备数量和布局:通过改变devices数组中的设备数量和位置,可以模拟不同的监测配置。
2) 引入不同的误差水平:通过调整simulate_times函数中的error_std参数,可以模拟不同的时间记录误差。
3) 使用不同的算法:可以通过替换locate_source函数中的优化方法,来测试不同算法的影响。
同时我们对这个模拟框架进行优化,引入更精细的地理距离计算、改进随机误差模型,并增强算法的健壮性。这里提供具体的改进方法和优化策略:
1) 更精确的地理距离计算
我们可以使用Haversine公式来更精确地计算地球表面上两点之间的距离。这对于确保时间延迟计算的准确性非常重要。
2) 改进随机误差模型
随机误差模型根据实际测量条件调整,如考虑设备特性和环境因素。例如,可以为不同设备指定不同的误差标准差,或引入基于环境变量的误差模型。
3) 增强算法的健壮性
在定位算法中,加入更多的约束条件来处理实际可能遇到的问题,如解决非唯一解的问题或优化算法的收敛性。
4) 可视化和进一步的分析工具
增加可视化输出,帮助直观理解定位误差和算法表现。
通过以上灵敏度分析更准确地分析了结果以及所使用方法的准确性[5]。
7.2. 误差分析
问题1:单个残骸音爆定位
所需监测设备的数量:
为准确定位音爆源的经纬度、高程和发生时间,至少需要四台监测设备,构成三维空间中的测量系统。
误差来源:
仪器误差:设备的定位精度(GPS或其他测量系统)将影响最终位置的准确性。
时钟误差:各台设备的时钟不同步会导致音爆信号到达时间的测量偏差。
传播速度误差:音爆传播速度假设不准确时,音爆信号传递时间的测算也会受到影响。
问题2:多残骸音爆定位
监测设备数量:
为定位4个残骸的音爆位置和时间,需要至少7台监测设备。每个设备会收到不同的音爆信号,根据到达时间进行多次识别。
误差来源:
信号混淆误差:多个残骸产生的音爆信号在时间上间隔较近时,可能导致信号混淆。
传播速度变化:音爆在不同条件下的传播速度可能不一致,影响计算精度。
设备布局:监测设备的布局若集中在一个区域,可能产生较大的定位误差。
问题3:确定4个残骸的音爆位置与时间
误差分析:
设备位置误差:监测设备的位置测量不准确会影响音爆信号传播时间的测量。
时钟误差:各设备时间记录存在偏差,可能导致音爆源的时空定位错误。
解决方案:
统计分析:利用最大似然估计或卡尔曼滤波等统计方法修正音爆源位置和时间的测算。
冗余数据:结合冗余设备数据,进行多次定位并平均,降低单次误差的影响。
问题4:引入0.5秒随机误差
误差分析:
0.5秒的随机误差可能会严重影响音爆时间的计算,导致定位误差累积。
修正模型:
滤波校正:使用卡尔曼滤波或粒子滤波进行数据修正,消除随机误差对音爆定位的影响。
最小二乘法:通过最小化时间误差平方和,优化音爆定位模型的计算结果。
替代方案:
多重传感器融合:利用不同传感器(如雷达、摄像头)的数据与音爆信号融合,进行更准确的定位。
广域布置:扩展监测设备的布置范围,提高定位精度并减少随机误差的累积。
通过以上方法,可更精确地确定多个火箭残骸的音爆位置和时间。
8. 模型的评价与改进
8.1. 模型的优缺点
问题一:单个残骸音爆定位模型
优点:
1) 精确性:借助至少四台监测设备,并结合震动波传播时间与几何关系,可以准确找到单个残骸音爆的三维坐标(经度、纬度和高程)及时间。
2) 逻辑清晰:模型基于传播速度与时间差的概念,逻辑结构简单明了。
缺点:
1) 误差敏感性:监测设备的时间记录与坐标误差可能直接影响音爆源定位的精度。
2) 传播速度假设:模型假设震动波传播速度恒定,但环境条件可能影响传播速度。
问题二:多残骸音爆定位模型
优点:
1) 多目标区分:该模型利用到达时间差和不同监测设备的位置,能区分不同音爆信号的来源。
2) 数据冗余:通过多组监测数据可以提高残骸的定位精度。
缺点:
1) 复杂度高:处理多残骸音爆信号需要更复杂的算法来正确识别和分离信号,以保证定位的准确性。
2) 信号干扰:多组音爆信号的相互干扰可能引起信号识别错误或混淆。
问题三:多组音爆数据整合模型
优点:
1) 数据丰富:将不同设备的多组音爆数据进行整合,有助于提高音爆源定位的准确性。
2) 增强鲁棒性:通过整合来自多台设备的数据,可以增强系统的鲁棒性,降低单一设备误差的影响。
缺点:
1) 高计算需求:处理多组音爆数据需要强大的计算能力才能得出精确的结果。
2) 设备位置误差:监测设备的位置误差可能会导致音爆源定位误差的累积。
问题四:随机误差修正模型
优点:
1) 误差修正:通过统计校正随机误差,使模型能够更准确地确定多个残骸音爆源的时间和位置。
2) 数学优化:使用卡尔曼滤波或粒子滤波等优化算法,可以降低时间记录误差对定位的影响。
缺点:
1) 随机误差累积:尽管经过校正,随机误差在多次数据采集时仍可能累积,从而影响准确性。
2) 对外部辅助的依赖:需要结合其他辅助定位方法,如摄像头或雷达。
8.2. 模型的改进
为使上述模型在火箭残骸音爆定位中更加准确和稳定,现从以下几个方面着手:
1) 数据处理与误差校正
多源监测器数据融合:通过整合来自不同监测设备的数据,采用卡尔曼滤波或粒子滤波等融合算法,有效降低误差的影响,显著提升音爆定位的精度和可靠性。
时间漂移校正:借助外部时间信号(例如GPS),确保所有监测设备的时间戳一致性,减轻系统性误差带来的影响。
环境噪声消除:在数据预处理阶段,利用低通滤波或小波变换等技术消除环境噪声,以精准识别音爆信号。
2) 监测设备布局优化
位置优化:通过模拟分析不同的设备布置方案,选择最佳配置,从而提升音爆定位的覆盖范围和精度,尤其在高空定位残骸时成效显著。
密度提高:增加监测设备的数量,缩短设备间隔,确保多台设备同时记录音爆信号,从而提高定位精度。
3) 改进数学模型
联合估计模型:综合各监测设备的音爆数据,利用联合估计法推测每个残骸的音爆位置和时间,并通过非线性最小二乘法等技术增强定位精度。
机器学习模型:通过随机森林或神经网络等机器学习算法,基于历史与模拟数据训练模型,确保对音爆信号的准确分类与定位。
贝叶斯推断模型:引入先验信息,利用贝叶斯推断方法对音爆位置和时间的估计值进行迭代校正。
4) 考虑环境因素
声速变化:依据当地气象条件(如温度、湿度和气压)校正模型中的震波传播速度,以提升计算的准确性。
地形影响:综合监测设备所在的地形特征,对音爆传播路径进行修正,确保信号传播时间计算准确。
通过这些优化策略,模型可以更精确地定位音爆信号的来源,明确火箭残骸的位置与音爆发生的时间。