【定位方法】到达时间(TOA)用于三边定位,建模、解算步骤、公式推导

TOA(到达时间)定位的核心是通过测量信号从目标到多个基站的传播时间,将其转换为距离信息,并利用几何关系解算目标位置。

本文给出具体的定位模型建模、位置解算(多种方法)、CRLB计算步骤及公式推导

文章目录

通用模型建立

假设条件

  • 已知 N N N个基站坐标 ( x i , y i ) (x_i, y_i) (xi,yi)( i = 1 , 2 , . . . , N i=1,2,...,N i=1,2,...,N)。
  • 目标位置为未知参数 ( x , y ) (x, y) (x,y)。
  • 信号传播速度为光速 c c c(空中场景通常取 c = 3 × 10 8   m/s c=3 \times 10^8 \, \text{m/s} c=3×108m/s)。

距离模型

信号到达时间 t i t_i ti对应的距离为:
r i = c ⋅ t i = ( x − x i ) 2 + ( y − y i ) 2 + n i r_i = c \cdot t_i = \sqrt{(x - x_i)^2 + (y - y_i)^2} + n_i ri=c⋅ti=(x−xi)2+(y−yi)2 +ni

其中 n i n_i ni为测量噪声(通常假设为高斯白噪声),实际距离为 d i = ( x − x i ) 2 + ( y − y i ) 2 d_i = \sqrt{(x - x_i)^2 + (y - y_i)^2} di=(x−xi)2+(y−yi)2 。

非线性方程组构建

每个基站对应一个圆方程:
( x − x i ) 2 + ( y − y i ) 2 = r i 2 ( i = 1 , 2 , . . . , N ) (x - x_i)^2 + (y - y_i)^2 = r_i^2 \quad (i=1,2,...,N) (x−xi)2+(y−yi)2=ri2(i=1,2,...,N)

由于噪声存在,方程需通过优化方法求解目标位置 ( x , y ) (x, y) (x,y)。

线性化处理(最小二乘法)

将非线性方程转化为线性方程组以减少计算复杂度:

  1. 展开方程

    对第 i i i个基站:
    x 2 − 2 x i x + x i 2 + y 2 − 2 y i y + y i 2 = r i 2 x^2 - 2x_i x + x_i^2 + y^2 - 2y_i y + y_i^2 = r_i^2 x2−2xix+xi2+y2−2yiy+yi2=ri2

  2. 消去二次项

    选取第1个基站为参考,其余方程减去参考方程:
    − 2 ( x i − x 1 ) x − 2 ( y i − y 1 ) y = r i 2 − r 1 2 − ( x i 2 + y i 2 − x 1 2 − y 1 2 ) -2(x_i - x_1)x - 2(y_i - y_1)y = r_i^2 - r_1^2 - (x_i^2 + y_i^2 - x_1^2 - y_1^2) −2(xi−x1)x−2(yi−y1)y=ri2−r12−(xi2+yi2−x12−y12)

    令 K i = x i 2 + y i 2 K_i = x_i^2 + y_i^2 Ki=xi2+yi2,则方程简化为:
    − 2 ( x i − x 1 ) x − 2 ( y i − y 1 ) y = r i 2 − r 1 2 − ( K i − K 1 ) -2(x_i - x_1)x - 2(y_i - y_1)y = r_i^2 - r_1^2 - (K_i - K_1) −2(xi−x1)x−2(yi−y1)y=ri2−r12−(Ki−K1)

  3. 矩阵形式

    对(N-1)个方程,构造线性方程组:
    A X = b \mathbf{A} \mathbf{X} = \mathbf{b} AX=b

    其中:
    A = [ − 2 ( x 2 − x 1 ) − 2 ( y 2 − y 1 ) ⋮ ⋮ − 2 ( x N − x 1 ) − 2 ( y N − y 1 ) ] , X = [ x y ] , b = [ r 2 2 − r 1 2 − ( K 2 − K 1 ) ⋮ r N 2 − r 1 2 − ( K N − K 1 ) ] \mathbf{A} = \begin{bmatrix} -2(x_2 - x_1) & -2(y_2 - y_1) \\ \vdots & \vdots \\ -2(x_N - x_1) & -2(y_N - y_1) \end{bmatrix}, \quad \mathbf{X} = \begin{bmatrix} x \\ y \end{bmatrix}, \quad \mathbf{b} = \begin{bmatrix} r_2^2 - r_1^2 - (K_2 - K_1) \\ \vdots \\ r_N^2 - r_1^2 - (K_N - K_1) \end{bmatrix} A= −2(x2−x1)⋮−2(xN−x1)−2(y2−y1)⋮−2(yN−y1) ,X=[xy],b= r22−r12−(K2−K1)⋮rN2−r12−(KN−K1)

  4. 最小二乘解
    X ^ = ( A T A ) − 1 A T b \mathbf{\hat{X}} = (\mathbf{A}^T \mathbf{A})^{-1} \mathbf{A}^T \mathbf{b} X^=(ATA)−1ATb

最大似然估计(ML)

假设噪声 n i n_i ni服从均值为0、方差为 σ i 2 \sigma_i^2 σi2的高斯分布,构建似然函数:
P ( r ∣ x ) = ∏ i = 1 N 1 2 π σ i e − ( r i − d i ) 2 2 σ i 2 P(\mathbf{r} | \mathbf{x}) = \prod_{i=1}^N \frac{1}{\sqrt{2\pi}\sigma_i} e^{-\frac{(r_i - d_i)^2}{2\sigma_i^2}} P(r∣x)=i=1∏N2π σi1e−2σi2(ri−di)2

取对数似然函数并忽略常数项:
L ( x ) = − ∑ i = 1 N ( r i − d i ) 2 2 σ i 2 L(\mathbf{x}) = -\sum_{i=1}^N \frac{(r_i - d_i)^2}{2\sigma_i^2} L(x)=−i=1∑N2σi2(ri−di)2

优化目标为最小化残差平方和:
x ^ = arg ⁡ min ⁡ x ∑ i = 1 N ( r i − d i ) 2 σ i 2 \hat{\mathbf{x}} = \arg \min_{\mathbf{x}} \sum_{i=1}^N \frac{(r_i - d_i)^2}{\sigma_i^2} x^=argxmini=1∑Nσi2(ri−di)2

高斯-牛顿迭代法

当测量噪声较大时,需通过迭代优化求解非线性最小二乘问题:

  1. 初始化 :假设初始估计值为 x ( 0 ) = [ x 0 , y 0 ] T \mathbf{x}^{(0)} = [x_0, y_0]^T x(0)=[x0,y0]T。
  2. 雅可比矩阵 :定义误差函数 f i ( x ) = r i − ( x − x i ) 2 + ( y − y i ) 2 f_i(\mathbf{x}) = r_i - \sqrt{(x - x_i)^2 + (y - y_i)^2} fi(x)=ri−(x−xi)2+(y−yi)2 ,雅可比矩阵为:
    J = [ ∂ f 1 ∂ x ∂ f 1 ∂ y ⋮ ⋮ ∂ f N ∂ x ∂ f N ∂ y ] , ∂ f i ∂ x = x − x i d i , ∂ f i ∂ y = y − y i d i \mathbf{J} = \begin{bmatrix} \frac{\partial f_1}{\partial x} & \frac{\partial f_1}{\partial y} \\ \vdots & \vdots \\ \frac{\partial f_N}{\partial x} & \frac{\partial f_N}{\partial y} \end{bmatrix}, \quad \frac{\partial f_i}{\partial x} = \frac{x - x_i}{d_i}, \quad \frac{\partial f_i}{\partial y} = \frac{y - y_i}{d_i} J= ∂x∂f1⋮∂x∂fN∂y∂f1⋮∂y∂fN ,∂x∂fi=dix−xi,∂y∂fi=diy−yi
  3. 迭代更新
    x ( k + 1 ) = x ( k ) − ( J T W J ) − 1 J T W f ( x ( k ) ) \mathbf{x}^{(k+1)} = \mathbf{x}^{(k)} - (\mathbf{J}^T \mathbf{W} \mathbf{J})^{-1} \mathbf{J}^T \mathbf{W} \mathbf{f}(\mathbf{x}^{(k)}) x(k+1)=x(k)−(JTWJ)−1JTWf(x(k))
    其中 W \mathbf{W} W为权重矩阵(通常取噪声方差的倒数)。

误差分析(克拉美罗界,CRLB)

定位误差的理论下限可通过Fisher信息矩阵(FIM)计算:
F I M = ∑ i = 1 N 1 σ i 2 [ ( x − x i ) 2 d i 2 ( x − x i ) ( y − y i ) d i 2 ( x − x i ) ( y − y i ) d i 2 ( y − y i ) 2 d i 2 ] \mathbf{FIM} = \sum_{i=1}^N \frac{1}{\sigma_i^2} \begin{bmatrix} \frac{(x - x_i)^2}{d_i^2} & \frac{(x - x_i)(y - y_i)}{d_i^2} \\ \frac{(x - x_i)(y - y_i)}{d_i^2} & \frac{(y - y_i)^2}{d_i^2} \end{bmatrix} FIM=i=1∑Nσi21 di2(x−xi)2di2(x−xi)(y−yi)di2(x−xi)(y−yi)di2(y−yi)2

CRLB为:
Var ( x ^ ) ≥ [ F I M − 1 ] 11 , Var ( y ^ ) ≥ [ F I M − 1 ] 22 \text{Var}(\hat{x}) \geq [\mathbf{FIM}^{-1}]{11}, \quad \text{Var}(\hat{y}) \geq [\mathbf{FIM}^{-1}]{22} Var(x^)≥[FIM−1]11,Var(y^)≥[FIM−1]22

关键公式总结

  1. 距离模型 : r i = ( x − x i ) 2 + ( y − y i ) 2 + n i r_i = \sqrt{(x - x_i)^2 + (y - y_i)^2} + n_i ri=(x−xi)2+(y−yi)2 +ni 。
  2. 最小二乘解 : X ^ = ( A T A ) − 1 A T b \mathbf{\hat{X}} = (\mathbf{A}^T \mathbf{A})^{-1} \mathbf{A}^T \mathbf{b} X^=(ATA)−1ATb 。
  3. 高斯-牛顿迭代:通过雅可比矩阵更新估计值。
  4. CRLB:定位误差的理论下限推导。

应用扩展

如需帮助,或有导航、定位滤波相关的代码定制需求,请点击下方卡片联系作者

相关推荐
历程里程碑12 小时前
矩阵----=矩阵置零
大数据·线性代数·算法·elasticsearch·搜索引擎·矩阵·散列表
程序员酥皮蛋21 小时前
hot 100 第二十一题 21.搜索二维矩阵||
线性代数·算法·leetcode·矩阵
AI科技星1 天前
从复平面旋转到三维螺旋:欧拉公式在张祥前统一场论中的几何角色与运动合成
线性代数·算法·机器学习·平面·矩阵·概率论
摘星编程2 天前
拆开揉碎CANN ops-math的矩阵运算:矩阵乘法的分块与并行策略
线性代数·矩阵
AI科技星2 天前
统一场论四种基本力的大小计算与比例关系分析:全维度验证报告
人工智能·线性代数·算法·矩阵·数据挖掘
中科GIS地理信息培训3 天前
ArcGIS Pro 3.6新增【空间权重矩阵SWM】工具更新:高阶邻接邻域、共享边界长度对邻居加权、距离衰减模型
线性代数·arcgis·矩阵
Zfox_3 天前
极致矩阵算力释放:Catlass 算子模板库的深度架构与优化实践
线性代数·矩阵·架构
葵花楹3 天前
【算法题】【线性代数3】【线性基】【 2.8 牛客寒假3】
线性代数·算法
sonadorje3 天前
矩阵乘法的几何视角
线性代数·矩阵