论文部分内容阅读
数据同化是指在考虑数据时空分布以及观测场和背景场误差的基础上,在数值模型的动态运行过程中融合新的观测数据的方法。它可以有效解决随机动力系统的状态及参数估计问题,应用领域包括大气科学、海洋科学、水文、自然灾害、全球定位系统、机器人和计算机视觉等。机器学习尤其是深度学习可以从数据中学习复杂的模式和非线性关系,根据已知数据给出预测或估计。目前已经在模式识别与图像处理、控制及优化、通信、自动驾驶和机器人仿真等领域中获得广泛应用。本文尝试将数据同化与机器学习结合起来解决非线性系统的参数、状态估计及状态预测问题。本文采用的数据同化方法主要是集合卡尔曼滤波和粒子滤波方法及基于这两种方法的混合滤波方法。集合卡尔曼滤波是Evensen在1994年提出的,该方法可以有效解决实际应用中的非线性系统状态估计问题。但从最大后验概率估计角度,误差分布为高斯分布时,该方法是最优的。粒子滤波理论上可以解决任意非线性、非高斯问题,但在粒子数目有限的情况下,会出现粒子退化问题。即随着同化时间步数增加,粒子权重逐渐集中到几个粒子上面,而其它所有粒子的权重都接近于零,从而导致了该方法失去同化效果。目前,解决粒子退化问题的方法大致分为种,一种是选择合适的建议密度函数,另一种是重采样。建议密度函数越接近于系统状态的后验分布,系统状态估计值的准确性越高。对于非线性系统,大部分情况下确切的后验分布很难得到,因此在实际应用中选择合适的建议密度函数难度较大。重采样的基本思想是根据粒子的权重重新选择粒子,权重大的粒子被多次选取,权重小的粒子被丢弃。重采样虽然在一定程度上改善了粒子滤波的估计结果,但是重采样会造成粒子匮乏。在极端情况下,重采样后只存在为数不多的几个不相同的粒子,粒子的多样性丧失。针对集合卡尔曼滤波和粒子滤波在解决非线性系统状态及参数估计中存在的问题,本文从不同角度分析并提出了相应的改进方法。对于非线性系统状态预测问题,本文提出使用机器学习方法学习同化过程得到代理模型,并尝试将代理模型与动力模型相结合得到更优的状态预测值。本文的主要工作如下:(1)针对非线性系统状态估计问题,提出了不等权重集合卡尔曼滤波与样本再生粒子滤波相结合的方法。首先,为了选取更合适的建议密度函数,提出了不等权重集合卡尔曼滤波。其次,为了保持粒子的多样性,样本再生粒子滤波算法从与后验分布有相同期望和方差的其它分布中重新生成新粒子。实验结果表明,观测数据稠密时,该方法比集合卡尔曼滤波的状态估计值误差更小;而且,当噪声为非高斯分布时,该方法具有更强的鲁棒性。上述方法创新点如下:1)从选择合适的建议密度函数和保持粒子多样性两个角度出发,提出了不等权重集合卡尔曼滤波算法和样本再生粒子滤波算法,并将两种方法结合解决非线性系统状态估计问题。(2)针对高维非线性系统状态估计问题,为了减少粒子数量,提出了最优组合自举粒子滤波。首先,从先验分布中生成N个粒子,对于状态变量中的每个元素,它都有N个不同的值。其次,根据每个元素似然函数值的大小对变量元素进行排序,并按照排序结果将变量元素的值重新组合得到新的粒子。最后,更新粒子权重并进行重采样。实验结果表明,随着状态变量维度的增加,与集合卡尔曼滤波和局地化集合卡尔曼滤波相比,该方法的计算时间最少且状态估计值更准确。上述方法的创新点在于:该方法从状态变量的不同元素(维度)出发,考虑每个元素的后验概率值,并按照概率值大小对元素的取值进行排序,然后将不同元素后验概率值较高的取值放入一个粒子中。当非线性系统维度不断增加,在粒子数量很少的情况下,该方法可以给出较好的状态估计结果。(3)针对观测误差较大甚至稀疏的非线性系统参数及状态联合估计问题,提出了条件迭代加权集合变换卡尔曼滤波算法。该方法首先使用集合变换卡尔曼滤波定义建议密度函数并得到集合分析成员,然后判断背景场与分析场之间的误差是否大于某个阈值,若符合判断条件,则用集合变换卡尔曼滤波再次进行同化,以获得更接近后验分布的粒子。数据同化可以给出模型的最优状态估计,但对于系统的预测问题,并没有办法考虑观测数据对模型的修正作用。为了进一步提高非线性系统状态预测效果,本文采用残差网络方法学习条件迭代加权集合变换卡尔曼滤波的代理模型,最后使用代理模型去更新非线性系统的状态预测值。上述方法创新点如下:1)观测数据误差较大甚至稀疏时,误差通过模型随时间传播并不断累积且无法纠正,模型误差较大,从而背景场误差较大。条件迭代加权集合变换卡尔曼滤波通过条件迭代选取更接近后验分布的粒子,进而提高系统状态和参数估计值的准确性;2)采用机器学习方法从数据中学习系统背景场和分析场之间的关系,并尝试用代理模型得到更准确的预测值。