粒子滤波器(顺序蒙特卡洛)和卡尔曼滤波器有什么区别?
来自 Dan Simon 的“最优状态估计”:
在具有高斯噪声的线性系统中,卡尔曼滤波器是最优的。在非线性系统中,卡尔曼滤波器可用于状态估计,但粒子滤波器可能会以额外的计算工作量为代价提供更好的结果。在具有非高斯噪声的系统中,卡尔曼滤波器是最优的线性滤波器,但同样粒子滤波器的性能可能更好。无迹卡尔曼滤波器(UKF) 在卡尔曼滤波器的低计算量和粒子滤波器的高性能之间提供了平衡。
粒子滤波器与 UKF 有一些相似之处,它通过已知的非线性方程对一组点进行变换,并结合结果来估计状态的均值和协方差。然而,在粒子滤波器中,点是随机选择的,而在 UKF 中,点是根据特定算法选择的*。因此,粒子滤波器中使用的点数通常需要远大于 UKF 中的点数。两个滤波器之间的另一个区别是,UKF 中的估计误差在任何意义上都不会收敛到零,但粒子滤波器中的估计误差确实会随着粒子数(以及因此计算工作量)接近无穷大而收敛到零。
*无迹变换是一种计算随机变量的统计量的方法,该随机变量经过非线性变换并使用直觉(也适用于粒子滤波器),即近似概率分布比近似任意非线性更容易功能或转换。另请参阅此示例,了解如何在 UKF 中选择这些点。”
自 1993 年推出以来,粒子滤波器已成为一类非常流行的数值方法,用于解决非线性非高斯场景中的最优估计问题。与标准近似方法(例如流行的扩展卡尔曼滤波器)相比,粒子方法的主要优点是它们不依赖于任何局部线性化技术或任何粗略的函数近似。这种灵活性必须付出的代价是计算:这些方法的计算成本很高。然而,由于计算能力不断提高,这些方法已经在实时应用中得到应用,这些应用出现在化学工程、计算机视觉、金融计量经济学、目标跟踪和机器人技术等多个领域。而且,
简而言之,粒子滤波器更具弹性,因为它不假设数据中噪声的线性和高斯性质,但计算成本更高。它通过创建(或绘制)和加权随机样本而不是高斯分布中的均值和协方差矩阵来表示分布。