无源定位入门(四):常用求解方法及其优缺点

       无论是利用两步法还是直接法定位,一般的定位求解方法分为网格搜索法、迭代类算法(梯度下降法、高斯牛顿法、牛顿法)和部分仿生算法(如粒子群、GA等等)。

1 网格搜索法

就是在目标可能存在的区域内按一定搜索步长进行搜索,每个搜索点都可能是真实目标点。该类是最常见的,在测量和带求量之间存在高度非线性时仍可以得到全局最优解,但是计算量和搜索区域以及搜索步长成正比关系,精度和搜索步长成反比,一般是粗搜和细搜相结合。

2 迭代类算法

迭代类算法有很多种,但是,此处仅分析这三种常用的算法。迭代类算法需要分析收敛性和全局收敛问题(注意:这两个不是一个东西,一个是是否收敛;一个是是否收敛到全局最优,因为迭代类算法很容易收敛到局部最优点)。

2.1 梯度下降法

给定一个初始点即目标函数对待估参数求一阶导数(即梯度g),按一定步长b沿着负梯度方向进行迭代直到达到停止条件。注意,梯度下降算法存在锯齿现象,收敛速度慢。因此,一般用计算目标位置的前期迭代或者间插过程。而且迭代类算法需要一个比较靠近最优点的初始值来保证全局收敛和收敛性。

注意:梯度下降是对非线性的问题一阶线性化。

具体可参考最优化理论与算法这本书。

2.2 高斯牛顿法

高斯牛顿法一般是避免牛顿法中对待估目标位置求二阶导数(海森矩阵)一种折中方法。仅用目标函数对待估参数求一阶导数(即梯度g),

p^{k+1}=p^{k}-(g^{H}g)^{-1}g^{H}(f-f_{1})

ff_{1}为测量量和迭代点求得对应的测量,而且迭代类算法需要一个比较靠近最优点的初始值来保证全局收敛和收敛性。

2.3 牛顿法

牛顿法需要对待估目标位置求二阶导数(海森矩阵h)。

p^{k+1}=p^{k}-(h)^{-1}g

迭代类算法需要一个比较靠近最优点的初始值来保证全局收敛和收敛性。特别是牛顿法当初始点远离真实点时很可能不收敛,因为牛顿方向不一定是下降方向,即可能上升。但该方法具有二次终止性。

3 仿生算法

仿生算法种类很多,我主要用过粒子群法。

具体即一把粒子(N个)随机洒在目标可能存在的区域,每个粒子具有速度,每个粒子计算代价函数值,粒子群的最优代价函数值和每个粒子的最优代价函数值比较,最终粒子会收敛到最优点。

具体见该博客PSO学习笔记。

你可能感兴趣的:(无源定位)