本文最后更新于 2026-11-03T12:36:43+08:00
三维定位中的最小二乘类算法:LS、WLS、NLS与WNLS
1. 概述
在三维定位中,常见任务是利用多个已知位置的锚点(基站、UWB
基站、卫星等)与目标之间的测距值,反推目标的三维坐标。设第
个锚点坐标为:
目标坐标为:
第
个测距值为
。理想情况下满足球面方程:
或写成距离形式:
其中
为测距误差。
LS、WLS、NLS、WNLS
都是围绕上述观测模型进行参数估计的方法,区别主要在于:
- 是否对原始非线性模型进行线性化;
- 是否对不同测量赋予不同权重;
- 是否需要迭代求解。
2. Least Squares(LS,最小二乘)
2.1 基本思想
原始球面方程对未知坐标
是非线性的。经典 LS
方法通常通过方程相减消去二次项,将非线性方程转化为线性方程:
然后最小化残差平方和:
其闭式解为:
在三维定位中,理论上至少需要 4
个锚点,才能使线性化后的方程组完全确定。当锚点数量多于 4
个且存在测距误差时,LS 给出使残差平方和最小的坐标估计。
2.2
线性化推导:方程相减消去二次项
2.2.1 从原始球面方程出发
第
个锚点坐标为
,目标坐标为
,测距为
,满足:
展开:
把与锚点有关的常数项移到右边,并把
单独拿出来:
令
则每个锚点给出一个方程:
此时未知量是
,方程本身是线性的,但
与
不独立,直接解会多一个未知量。
2.2.2 选参考锚点做方程相减
选第 1 个锚点作为参考锚点。对
,用第
个方程减去第 1 个方程:
左边
,二次项被消掉:
两边乘
并整理,得到标准的线性方程:
这就是第
个线性方程,未知量只有
。
2.2.3 写成矩阵形式
对
各写一行,得到:
于是线性模型为:
其中
。
2.2.4 求解
- (4
个锚点):
是
方阵,若锚点不共面(
满秩),可直接求:
- (锚点多于
4
个,存在测距误差):
是
的超定矩阵,用最小二乘:
闭式解为:
这就是 LS 在三维定位中的标准线性化解。
2.2.5 一个 4 锚点示例
设 4 个锚点:
目标在
,无噪声测距:
以锚点 1 为参考:
解得:
与真实坐标一致。这个例子说明:无噪声、锚点几何良好时,线性化 LS
能精确恢复目标位置;有噪声时,它给出的是使线性化残差平方和最小的估计。
2.3 线性化过程中的注意点
参考锚点的选择会影响结果。
因为相减会把参考锚点的测距误差带入所有方程。工程上可以选测距质量较好的锚点作为参考,或者对多个参考锚点的结果做平均/择优。
的秩条件对应几何构型。
三维定位中 4 个锚点不能共面,否则
不满秩,线性方程组无法唯一确定
。
线性化不是无损的。
相减消去的是
这个二次项,但测距误差
在相减后会被组合放大,且原始噪声的统计特性在平方后不再保持高斯性。因此线性
LS 的解通常不如 NLS/WNLS 精确,但胜在无需初值、计算快。
另一种线性化思路(保留
):
不对第 1 个方程做相减,而是把
当作第 4 个未知量,直接解
得到
的线性最小二乘解后,再施加约束
进行修正(例如把解投影回二次曲面,或用约束最小二乘再优化一次)。这种做法避免了“选参考锚点”带来的偏差传播,但多了一个需要事后修正的约束。
2.4 优点
- 不需要初值;
- 计算简单,有闭式解;
- 实现方便,适合作为基础定位解或初值估计。
2.5 缺点
- 线性化过程会引入额外误差;
- 对所有测量一视同仁,不区分测量质量;
- 若用于方程相减的参考锚点误差较大,误差可能传播到整个解中。
3. Weighted Least
Squares(WLS,加权最小二乘)
3.1 基本思想
WLS 在 LS 的线性模型基础上引入权重矩阵
,目标函数变为:
其闭式解为:
权重矩阵的核心含义是:测量越可靠,权重越大;测量越不可靠,权重越小。常见取法为:
其中
为第
个测距值的误差方差。若各测量相互独立,则
可取对角矩阵:
在
NLOS(非视距)场景中,受遮挡锚点的测距偏差通常较大,可以通过降低其权重来抑制其对最终定位结果的拉偏作用。
3.2 优点
- 保持线性闭式解结构,计算效率较高;
- 能体现不同测量的质量差异;
- 对异常测量或 NLOS 测量有一定抑制能力。
3.3 缺点
- 需要事先知道或估计测量方差/协方差;
- 权重设置不合理时可能引入新的偏差;
- 仍然基于线性化模型,存在线性化误差。
4. Nonlinear Least
Squares(NLS,非线性最小二乘)
4.1 基本思想
NLS
不先将模型线性化,而是直接最小化原始非线性距离模型的残差平方和:
由于距离函数对坐标是非线性的,NLS 通常采用泰勒展开与 Gauss–Newton
迭代求解。设当前估计为
,定义残差向量:
对距离函数在当前点做一阶泰勒近似,可得增量方程:
其中
为距离函数对
的雅可比矩阵。更新:
重复迭代,直到增量足够小或达到最大迭代次数。
4.2 优点
- 直接处理真实非线性模型,避免线性化带来的系统误差;
- 在初值合理时,精度通常优于线性 LS;
- 不要求已知测量误差的完整统计特性。
4.3 缺点
- 需要初值;
- 距离模型通常是非凸的,初值较差时可能收敛到局部极小;
- 计算量高于闭式 LS/WLS。
5.
Weighted Nonlinear Least Squares(WNLS,加权非线性最小二乘)
5.1 基本思想
WNLS 是 NLS 的加权版本,目标函数为:
矩阵形式可写为:
其中:
-
为测距向量;
-
为根据目标坐标计算出的距离向量;
-
为测量误差协方差矩阵。
若各测量相互独立,则:
对应权重:
WNLS 仍采用迭代求解。其 Gauss–Newton 增量方程为:
其中:
更新方式与 NLS 相同:
5.2 统计意义
当各测量误差相互独立且服从高斯分布时,WNLS
解与最大似然估计(ML)一致。在误差模型正确的前提下,WNLS 能逼近
Cramér–Rao 下界,是这几类方法中理论上精度最高的选择之一。
5.3 优点
- 同时利用非线性模型和测量质量信息;
- 高斯噪声假设下具有较好的统计最优性;
- 适合对精度要求较高的三维定位场景。
5.4 缺点
- 需要初值;
- 需要估计测量方差/协方差;
- 计算量较大,且对初值和权重模型较敏感。
6. 四种方法对比
| 方法 |
是否线性化 |
是否使用权重 |
是否迭代 |
核心优势 |
主要限制 |
| LS |
是 |
否 |
否 |
闭式解、无需初值、计算简单 |
线性化误差;不区分测量质量 |
| WLS |
是 |
是 |
否 |
仍为闭式解,可抑制差测量 |
需要方差/协方差信息 |
| NLS |
否 |
否 |
是 |
直接处理非线性模型,精度优于线性 LS |
需要初值;可能局部收敛 |
| WNLS |
否 |
是 |
是 |
高斯噪声下逼近 ML/CRLB,精度较高 |
需要初值及协方差信息,计算量较大 |
7. 工程选用建议
实际三维定位项目中,可以根据计算资源、先验信息和精度要求选择方法:
快速获得粗估计
若需要快速得到定位结果,且没有可靠的误差统计信息,可优先使用
LS。
存在明显坏测量或 NLOS
若能估计不同锚点的测距质量,可使用
WLS,通过权重抑制异常测量影响。
精度要求较高且可提供初值
可使用 NLS,直接对非线性距离模型进行迭代优化。
可估计测量方差/协方差
使用 WNLS,可在高斯误差假设下获得更接近最大似然估计的结果。
常见工程组合
可先用 WLS 获得闭式初值,再将该初值送入 WNLS 进行迭代精化。这样既能缓解
WNLS 对初值的依赖,又能利用其对测量质量的建模能力。
8. 总结
从 LS 到 WLS、NLS、WNLS,本质上是在逐步引入更强的模型假设:
- LS:假设模型可线性化,所有测量同等重要;
- WLS:在线性模型上引入权重,区分测量可信度;
- NLS:放弃线性近似,直接优化原始非线性模型;
- WNLS:同时利用非线性模型与测量权重,在统计意义上更接近最优估计。
在实际三维定位中,方法选择取决于三个关键因素:能否提供可靠初值、能否估计测量误差统计特性,以及计算资源是否允许迭代求解。