FFRT:固定失败率比率检验、宽巷模糊度固定及 Ratio Test

本文主线:浮点模糊度 → ILS/LAMBDA 搜索 → Ratio Test → 固定失败率 → FFRT → 宽巷固定 → 风险预算与工程实现


1. 核心结论

FFRT 的全称是:

text 复制代码
Fixed Failure-rate Ratio Test
固定失败率比率检验

这里的 Fixed 修饰的是 Failure-rate

text 复制代码
固定或受控的是失败率目标
不是"固定解"中的固定

FFRT 不是新的整数搜索算法,而是一种整数候选接受检验

使用 FFRT 前,待固定参数必须满足两个前提:

  1. 它是可整数估计的模糊度函数;
  2. 其整数基准中的相位、码和钟差偏差已经消除或正确吸收。
text 复制代码
ILS/LAMBDA
→ 搜索最佳和次优整数候选

Ratio Test
→ 比较两个候选的加权距离

FFRT
→ 根据允许失败率和当前模型强度
   自适应确定Ratio Test临界值

FFRT 中的"失败"是:

错误的整数候选通过检验并被接受。

以下情况不属于固定失败:

  • Ratio Test 未通过;
  • 系统保持浮点解;
  • 本历元暂不尝试固定。

#mermaid-svg-fevnDaUvdyfdyDSA{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-fevnDaUvdyfdyDSA .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-fevnDaUvdyfdyDSA .error-icon{fill:#552222;}#mermaid-svg-fevnDaUvdyfdyDSA .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-fevnDaUvdyfdyDSA .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-fevnDaUvdyfdyDSA .marker{fill:#333333;stroke:#333333;}#mermaid-svg-fevnDaUvdyfdyDSA .marker.cross{stroke:#333333;}#mermaid-svg-fevnDaUvdyfdyDSA svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-fevnDaUvdyfdyDSA p{margin:0;}#mermaid-svg-fevnDaUvdyfdyDSA .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-fevnDaUvdyfdyDSA .cluster-label text{fill:#333;}#mermaid-svg-fevnDaUvdyfdyDSA .cluster-label span{color:#333;}#mermaid-svg-fevnDaUvdyfdyDSA .cluster-label span p{background-color:transparent;}#mermaid-svg-fevnDaUvdyfdyDSA .label text,#mermaid-svg-fevnDaUvdyfdyDSA span{fill:#333;color:#333;}#mermaid-svg-fevnDaUvdyfdyDSA .node rect,#mermaid-svg-fevnDaUvdyfdyDSA .node circle,#mermaid-svg-fevnDaUvdyfdyDSA .node ellipse,#mermaid-svg-fevnDaUvdyfdyDSA .node polygon,#mermaid-svg-fevnDaUvdyfdyDSA .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-fevnDaUvdyfdyDSA .rough-node .label text,#mermaid-svg-fevnDaUvdyfdyDSA .node .label text,#mermaid-svg-fevnDaUvdyfdyDSA .image-shape .label,#mermaid-svg-fevnDaUvdyfdyDSA .icon-shape .label{text-anchor:middle;}#mermaid-svg-fevnDaUvdyfdyDSA .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-fevnDaUvdyfdyDSA .rough-node .label,#mermaid-svg-fevnDaUvdyfdyDSA .node .label,#mermaid-svg-fevnDaUvdyfdyDSA .image-shape .label,#mermaid-svg-fevnDaUvdyfdyDSA .icon-shape .label{text-align:center;}#mermaid-svg-fevnDaUvdyfdyDSA .node.clickable{cursor:pointer;}#mermaid-svg-fevnDaUvdyfdyDSA .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-fevnDaUvdyfdyDSA .arrowheadPath{fill:#333333;}#mermaid-svg-fevnDaUvdyfdyDSA .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-fevnDaUvdyfdyDSA .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-fevnDaUvdyfdyDSA .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-fevnDaUvdyfdyDSA .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-fevnDaUvdyfdyDSA .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-fevnDaUvdyfdyDSA .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-fevnDaUvdyfdyDSA .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-fevnDaUvdyfdyDSA .cluster text{fill:#333;}#mermaid-svg-fevnDaUvdyfdyDSA .cluster span{color:#333;}#mermaid-svg-fevnDaUvdyfdyDSA div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-fevnDaUvdyfdyDSA .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-fevnDaUvdyfdyDSA rect.text{fill:none;stroke-width:0;}#mermaid-svg-fevnDaUvdyfdyDSA .icon-shape,#mermaid-svg-fevnDaUvdyfdyDSA .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-fevnDaUvdyfdyDSA .icon-shape p,#mermaid-svg-fevnDaUvdyfdyDSA .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-fevnDaUvdyfdyDSA .icon-shape .label rect,#mermaid-svg-fevnDaUvdyfdyDSA .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-fevnDaUvdyfdyDSA .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-fevnDaUvdyfdyDSA .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-fevnDaUvdyfdyDSA :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 通过
不通过
浮点模糊度和协方差
ILS或LAMBDA搜索
最佳整数候选
次优整数候选
计算Ratio统计量
评估模型强度
允许失败率
生成FFRT临界值
Ratio通过吗
接受整数并条件更新
保持浮点解


2. FFRT 针对什么问题

传统软件常使用固定 Ratio 阈值。

但模糊度模型强度会随下列因素变化:

  • 卫星数量和几何;
  • 模糊度维数;
  • 观测时间;
  • 码、相位噪声;
  • 多路径和周跳;
  • 基线长度;
  • 电离层、对流层残差;
  • 多系统、多频观测;
  • 外部约束;
  • 轨道、钟差和偏差产品质量。

固定阈值可能产生两类相反问题:

text 复制代码
模型很强
→ 阈值过严
→ 正确候选被拒绝
→ 固定率下降

模型很弱
→ 阈值过松
→ 错误候选被接受
→ 错误固定风险失控

FFRT 解决的是:

如何让 Ratio 临界值随模型强度变化,在控制错误固定概率的同时,尽可能提高固定率。


第一部分:浮点解、整数搜索与固定解

3. GNSS 混合整数模型

线性化 GNSS 观测模型可写为:

y=Aa+Bb+ε\boxed{ \mathbf y = \mathbf A\mathbf a + \mathbf B\mathbf b + \boldsymbol\varepsilon }y=Aa+Bb+ε

其中:

  • y∈Rm\mathbf y\in\mathbb R^my∈Rm:观测减计算值;
  • a∈Zn\mathbf a\in\mathbb Z^na∈Zn:整数模糊度向量;
  • b∈Rp\mathbf b\in\mathbb R^pb∈Rp:位置、大气延迟等实数参数;
  • A∈Rm×n\mathbf A\in\mathbb R^{m\times n}A∈Rm×n:模糊度设计矩阵;
  • B∈Rm×p\mathbf B\in\mathbb R^{m\times p}B∈Rm×p:实数参数设计矩阵;
  • ε\boldsymbol\varepsilonε:观测误差;
  • Qyy=Cov⁡(ε)\mathbf Q_{yy}=\operatorname{Cov}(\boldsymbol\varepsilon)Qyy=Cov(ε):观测协方差;
  • m,n,pm,n,pm,n,p:观测数、整数参数数和实数参数数。

定义:

H=AB,x=ab\mathbf H = \begin{bmatrix} \mathbf A&\mathbf B \end{bmatrix}, \qquad \mathbf x = \begin{bmatrix} \mathbf a\\ \mathbf b \end{bmatrix}H=AB,x=ab

在模型满秩且 Qyy\mathbf Q_{yy}Qyy 正定时,浮点最小二乘解为:

x^=(HTQyy−1H)−1HTQyy−1y\boxed{ \hat{\mathbf x} = \left( \mathbf H^{\mathrm T} \mathbf Q_{yy}^{-1} \mathbf H \right)^{-1} \mathbf H^{\mathrm T} \mathbf Q_{yy}^{-1} \mathbf y }x^=(HTQyy−1H)−1HTQyy−1y

其协方差为:

Qx^x^=(HTQyy−1H)−1\boxed{ \mathbf Q_{\hat x\hat x} = \left( \mathbf H^{\mathrm T} \mathbf Q_{yy}^{-1} \mathbf H \right)^{-1} }Qx^x^=(HTQyy−1H)−1

分块表示:

x^=a\^b\^,Qx^x^=Qa\^a\^Qa\^b\^Qb\^a\^Qb\^b\^\hat{\mathbf x} = \begin{bmatrix} \hat{\mathbf a}\\ \hat{\mathbf b} \end{bmatrix}, \qquad \mathbf Q_{\hat x\hat x} = \begin{bmatrix} \mathbf Q_{\hat a\hat a} & \mathbf Q_{\hat a\hat b}\\ \mathbf Q_{\hat b\hat a} & \mathbf Q_{\hat b\hat b} \end{bmatrix}x^=a\^b\^,Qx^x^=Qa\^a\^Qb\^a\^Qa\^b\^Qb\^b\^

其中:

  • a^∈Rn\hat{\mathbf a}\in\mathbb R^na^∈Rn:浮点模糊度;
  • Qa^a^\mathbf Q_{\hat a\hat a}Qa^a^:浮点模糊度协方差。

实际程序宜使用 QR、Cholesky 等稳定方法求解,不宜显式计算普通矩阵逆。

3.1 FFRT 固定的必须是"可整数估计函数"

"整数线性组合"不一定等于"可整数估计函数"。

在秩亏模型中,模糊度基准可能发生下列变化,而观测模型保持不变:

a′=a+Ck\boxed{ \mathbf a' = \mathbf a + \mathbf C\mathbf k }a′=a+Ck

其中:

  • C\mathbf CC:模糊度基准或秩亏方向矩阵;
  • k∈Zq\mathbf k\in\mathbb Z^qk∈Zq:任意整数基准变化;
  • qqq:秩亏维数。

设希望固定的模糊度函数为:

aI=DTa\boxed{ \mathbf a_I = \mathbf D^{\mathrm T}\mathbf a }aI=DTa

其中:

  • D\mathbf DD:整数系数矩阵;
  • aI\mathbf a_IaI:候选整数函数。

要使 aI\mathbf a_IaI 不随模糊度基准改变,至少应满足:

DTC=0\boxed{ \mathbf D^{\mathrm T}\mathbf C = \mathbf0 }DTC=0

因为:

DTa′=DTa+DTCk=DTa\mathbf D^{\mathrm T}\mathbf a' = \mathbf D^{\mathrm T}\mathbf a + \mathbf D^{\mathrm T}\mathbf C\mathbf k = \mathbf D^{\mathrm T}\mathbf aDTa′=DTa+DTCk=DTa

这保证了函数对秩亏基准变化不敏感。

但这仍不意味着整数可估性已经自动成立。还需要保证:

  • 该函数在实数模型中可估;
  • 其整数值覆盖完整的整数格,而不是只覆盖某个整数子格;
  • 所选整数基准与模型的 S-basis 或基准约束一致。

在常见有限维整数模型中,一个直观检查是:

所选独立整数函数能否与其余整数基准共同补成一个整数幺模变换。

因此,仅有:

D∈Zn×r\mathbf D\in\mathbb Z^{n\times r}D∈Zn×r

并不足以证明 DTa\mathbf D^{\mathrm T}\mathbf aDTa 可安全进行整数固定。

典型可整数估计函数包括:

  • 同系统、同频率短基线 RTK 的双差模糊度;
  • 已恢复整数基准的 PPP-AR 星间单差模糊度;
  • 通过整数幺模变换构造的宽巷和窄巷参数。

以下参数不能未经处理直接套用 FFRT:

  • 吸收了卫星或接收机相位偏差的原始非差模糊度;
  • 基准未统一的跨系统模糊度;
  • 未处理频间偏差的传统 GLONASS FDMA 模糊度;
  • 不满足整数可估性条件的任意实数参数。

3.2 浮点模糊度必须近似无偏

FFRT 的经典标定通常假设:

a^I∼N(aI,QII)\boxed{ \hat{\mathbf a}I \sim \mathcal N \left( \mathbf a_I, \mathbf Q{II} \right) }a^I∼N(aI,QII)

若实际存在未建模偏差:

a^I∼N(aI+βI,QII)\boxed{ \hat{\mathbf a}I \sim \mathcal N \left( \mathbf a_I+\boldsymbol\beta_I, \mathbf Q{II} \right) }a^I∼N(aI+βI,QII)

其中:

  • βI\boldsymbol\beta_IβI:模糊度偏差;
  • QII\mathbf Q_{II}QII:可整数估计模糊度的协方差。

当:

βI≠0\boldsymbol\beta_I\ne\mathbf0βI=0

时,即使 Ratio 较好,按零偏模型标定的失败率也可能失效。

因此:

FFRT 只能控制"所假设概率模型下"的错误固定风险,不能弥补未改正的系统偏差。


4. ILS 与 LAMBDA

整数最小二乘 ILS 估计为:

aˇ1=arg⁡min⁡z∈ZnJ(z)\boxed{ \check{\mathbf a}1 = \arg\min{\mathbf z\in\mathbb Z^n} J(\mathbf z) }aˇ1=argz∈ZnminJ(z)

其中:

J(z)=(a^−z)TQa^a^−1(a^−z)\boxed{ J(\mathbf z) = \left( \hat{\mathbf a}-\mathbf z \right)^{\mathrm T} \mathbf Q_{\hat a\hat a}^{-1} \left( \hat{\mathbf a}-\mathbf z \right) }J(z)=(a^−z)TQa^a^−1(a^−z)

符号含义:

  • z\mathbf zz:任意整数候选;
  • J(z)J(\mathbf z)J(z):候选到浮点模糊度的加权平方距离;
  • aˇ1\check{\mathbf a}_1aˇ1:最佳整数候选。

次优候选为:

aˇ2=arg⁡min⁡z∈Zn, z≠aˇ1J(z)\boxed{ \check{\mathbf a}2 = \arg\min{ \mathbf z\in\mathbb Z^n,\, \mathbf z\ne\check{\mathbf a}_1 } J(\mathbf z) }aˇ2=argz∈Zn,z=aˇ1minJ(z)

定义:

J1=J(aˇ1),J2=J(aˇ2)J_1=J(\check{\mathbf a}_1), \qquad J_2=J(\check{\mathbf a}_2)J1=J(aˇ1),J2=J(aˇ2)

因此:

0≤J1≤J20\le J_1\le J_20≤J1≤J2

LAMBDA/MLAMBDA 主要完成:

  1. 整数保持的模糊度去相关;
  2. 最佳候选搜索;
  3. 次优候选搜索。

FFRT 不替代 LAMBDA。FFRT 使用整数搜索得到的 J1J_1J1 和 J2J_2J2。


5. 整数变换为什么不能改变 Ratio

设采用整数幺模变换:

z=ZTa\boxed{ \mathbf z = \mathbf Z^{\mathrm T}\mathbf a }z=ZTa

其中:

  • Z\mathbf ZZ:可逆整数矩阵;
  • ∣det⁡(Z)∣=1\vert{}\det(\mathbf Z)\vert{}=1∣det(Z)∣=1;
  • z∈Zn\mathbf z\in\mathbb Z^nz∈Zn:变换后的整数模糊度。

浮点值和协方差变为:

z^=ZTa^\hat{\mathbf z} = \mathbf Z^{\mathrm T}\hat{\mathbf a}z^=ZTa^

Qz^z^=ZTQa^a^Z\mathbf Q_{\hat z\hat z} = \mathbf Z^{\mathrm T} \mathbf Q_{\hat a\hat a} \mathbf ZQz^z^=ZTQa^a^Z

对一一对应的候选:

zc=ZTac\mathbf z_c = \mathbf Z^{\mathrm T}\mathbf a_czc=ZTac

有:

∥z^−zc∥Qz^z^2=∥a^−ac∥Qa^a^2\boxed{ \left\| \hat{\mathbf z}-\mathbf z_c \right\|{\mathbf Q{\hat z\hat z}}^2 = \left\| \hat{\mathbf a}-\mathbf a_c \right\|{\mathbf Q{\hat a\hat a}}^2 }∥z^−zc∥Qz^z^2=∥a^−ac∥Qa^a^2

其中:

∥v∥Q2=vTQ−1v\|\mathbf v\|_{\mathbf Q}^2 = \mathbf v^{\mathrm T}\mathbf Q^{-1}\mathbf v∥v∥Q2=vTQ−1v

因此,只要变换、协方差传播和整数回代都正确:

  • 变换坐标中的整数数值会改变;
  • 回代到原参数后的 ILS 最佳解不变;
  • 最佳、次优候选的加权距离 J1,J2J_1,J_2J1,J2 不变;
  • Ratio 统计量不变。

LAMBDA 去相关的作用是改善搜索几何和计算效率,而不是人为提高真实 Ratio。


6. 固定后实数参数怎样更新

若接受整数候选 aˇ\check{\mathbf a}aˇ,实数参数的条件固定解为:

bˇ=b^−Qb^a^Qa^a^−1(a^−aˇ)\boxed{ \check{\mathbf b} = \hat{\mathbf b} - \mathbf Q_{\hat b\hat a} \mathbf Q_{\hat a\hat a}^{-1} \left( \hat{\mathbf a}-\check{\mathbf a} \right) }bˇ=b^−Qb^a^Qa^a^−1(a^−aˇ)

在整数候选正确且浮点模型成立时,固定解协方差为:

Qbˇbˇ=Qb^b^−Qb^a^Qa^a^−1Qa^b^\boxed{ \mathbf Q_{\check b\check b} = \mathbf Q_{\hat b\hat b} - \mathbf Q_{\hat b\hat a} \mathbf Q_{\hat a\hat a}^{-1} \mathbf Q_{\hat a\hat b} }Qbˇbˇ=Qb^b^−Qb^a^Qa^a^−1Qa^b^

错误固定时,形式协方差仍可能很小,但实际位置误差可能很大。

6.1 错误整数怎样映射到位置域

设真实整数为 a\mathbf aa,错误接受的整数为:

aˇ=a+Δa\check{\mathbf a} = \mathbf a+\boldsymbol{\Delta a}aˇ=a+Δa

其中:

  • Δa\boldsymbol{\Delta a}Δa:整数固定误差向量。

采用错误整数和采用真实整数得到的实数参数之差为:

ΔbIAR=Qb^a^Qa^a^−1Δa\boxed{ \boldsymbol{\Delta b}{\mathrm{IAR}} = \mathbf Q{\hat b\hat a} \mathbf Q_{\hat a\hat a}^{-1} \boldsymbol{\Delta a} }ΔbIAR=Qb^a^Qa^a^−1Δa

该式表明:

  • 相同的整数错误在不同几何和协方差下,可产生不同的位置偏差;
  • FFRT 控制的是"错误整数被接受"的概率;
  • FFRT 不直接控制位置误差是否超过某个告警限值。

因此:

text 复制代码
模糊度失败率
≠
位置域完整性风险

高完整性应用还需监测:

  • 位置误差影响矩阵;
  • 保护级或告警限值;
  • 固定后残差;
  • 独立传感器与解一致性。

第二部分:Ratio Test 与整数孔径估计

7. Ratio Test 的两种定义

7.1 小比值形式

r=J1J2\boxed{ r = \frac{J_1}{J_2} }r=J2J1

由于 J1≤J2J_1\le J_2J1≤J2:

0≤r≤10\le r\le10≤r≤1

接受条件:

r≤μ\boxed{ r\le\mu }r≤μ

其中:

  • μ∈0,1\mu\in0,1μ∈0,1:临界值;
  • μ\muμ 越小,检验越严格;
  • μ\muμ 越大,检验越宽松。

7.2 大比值形式

部分软件定义:

R=J2J1\boxed{ R = \frac{J_2}{J_1} }R=J1J2

接受条件:

R≥R0\boxed{ R\ge R_0 }R≥R0

两种形式满足:

R=1r,R0=1μ\boxed{ R=\frac{1}{r}, \qquad R_0=\frac{1}{\mu} }R=r1,R0=μ1

本文后续采用:

r=J1J2r=\frac{J_1}{J_2}r=J2J1

比较软件阈值前,必须先确认 Ratio 定义方向,以及距离是否使用平方形式。

例如:

J1=1,J2=4J_1=1, \qquad J_2=4J1=1,J2=4

则:

r=J1J2=0.25,R=J2J1=4r=\frac{J_1}{J_2}=0.25, \qquad R=\frac{J_2}{J_1}=4r=J2J1=0.25,R=J1J2=4

若小比值阈值为 μ=0.30\mu=0.30μ=0.30,则 r≤μr\le\mur≤μ,通过检验。

对应的大比值阈值为:

R0=10.30≈3.33R_0=\frac{1}{0.30}\approx3.33R0=0.301≈3.33

此时 R≥R0R\ge R_0R≥R0,结论完全相同。


8. Ratio Test 判断什么

当:

J1≪J2J_1\ll J_2J1≪J2

最佳候选明显优于次优候选,此时:

r≪1r\ll1r≪1

当:

J1≈J2J_1\approx J_2J1≈J2

两个候选难以区分,此时:

r≈1r\approx1r≈1

Ratio Test 判断的是:

最佳候选相对于次优候选是否具有足够明显的优势。

它不是直接检验:

text 复制代码
最佳候选是否等于真实整数

所以 Ratio 通过仍可能错误固定。


9. 整数孔径估计

普通 ILS 总是输出一个整数。

整数孔径估计允许输出:

text 复制代码
一个整数候选
或
拒绝固定

可写成映射:

IA:Rn→Zn∪{∅}\boxed{ \mathcal I_A: \mathbb R^n \rightarrow \mathbb Z^n \cup \{\varnothing\} }IA:Rn→Zn∪{∅}

其中:

  • ∅\varnothing∅:拒绝固定;
  • 下标 AAA:表示带接受区域的整数孔径估计。

设候选 z\mathbf zz 的 ILS 搜索区域为:

Sz\mathcal S_{\mathbf z}Sz

加入 Ratio Test 后的接受区域为:

Az(μ)⊆Sz\boxed{ \mathcal A_{\mathbf z}(\mu) \subseteq \mathcal S_{\mathbf z} }Az(μ)⊆Sz

临界值变化规律:

text 复制代码
μ减小
→ 接受区域缩小
→ 固定率下降
→ 失败率通常下降

μ增大
→ 接受区域扩大
→ 固定率上升
→ 失败率通常上升

FFRT 属于整数孔径估计理论中的一种失败率受控方法。


第三部分:成功、失败与拒绝

10. 固定失败的严格定义

设真实整数为:

a\mathbf aa

接受的最佳候选为:

aˇ1\check{\mathbf a}_1aˇ1

固定失败事件:

F={候选被接受}∩{aˇ1≠a}\boxed{ F = \left\{ \text{候选被接受} \right\} \cap \left\{ \check{\mathbf a}_1\ne\mathbf a \right\} }F={候选被接受}∩{aˇ1=a}

固定失败率:

Pf=P(F)\boxed{ P_f=P(F) }Pf=P(F)

所以:

text 复制代码
候选被拒绝
→ 没有固定
→ 不是固定失败

错误候选被接受
→ 错误固定
→ 固定失败

11. 四类结果与概率指标

ILS 最佳候选 接受检验 结果
正确 接受 正确固定
错误 接受 错误固定
正确 拒绝 误拒绝或虚警
错误 拒绝 正确拒绝

定义:

  • CAC_ACA:正确候选被接受;
  • FAF_AFA:错误候选被接受;
  • FRF_RFR:正确候选被拒绝;
  • CRC_RCR:错误候选被拒绝。

它们构成完整事件空间:

P(CA)+P(FA)+P(FR)+P(CR)=1\boxed{ P(C_A)+P(F_A)+P(F_R)+P(C_R)=1 }P(CA)+P(FA)+P(FR)+P(CR)=1

常用指标为:

Ps=P(CA)\boxed{ P_s=P(C_A) }Ps=P(CA)

Pf=P(FA)\boxed{ P_f=P(F_A) }Pf=P(FA)

PFA=P(FR)\boxed{ P_{\mathrm{FA}}=P(F_R) }PFA=P(FR)

Pfix=Ps+Pf\boxed{ P_{\mathrm{fix}} = P_s+P_f }Pfix=Ps+Pf

Prej=1−Pfix\boxed{ P_{\mathrm{rej}} = 1-P_{\mathrm{fix}} }Prej=1−Pfix

其中:

  • PsP_sPs:正确固定概率;
  • PfP_fPf:失败率;
  • PFAP_{\mathrm{FA}}PFA:虚警率,即正确候选被拒绝的概率;
  • PfixP_{\mathrm{fix}}Pfix:固定率或接受率;
  • PrejP_{\mathrm{rej}}Prej:拒绝率。

固定后的条件失败率为:

Pf∣fix=PfPfix\boxed{ P_{f\mid\mathrm{fix}} = \frac{P_f}{P_{\mathrm{fix}}} }Pf∣fix=PfixPf

条件成功率为:

Ps∣fix=PsPfix=1−Pf∣fix\boxed{ P_{s\mid\mathrm{fix}} = \frac{P_s}{P_{\mathrm{fix}}} = 1-P_{f\mid\mathrm{fix}} }Ps∣fix=PfixPs=1−Pf∣fix

FFRT 通常控制无条件失败率 PfP_fPf,不等于直接控制条件失败率。


12. ILS 失败率和模型强度

若不使用接受检验,而是始终接受 ILS 最佳候选:

Pf,ILS=P(aˇ1≠a)\boxed{ P_{f,\mathrm{ILS}} = P \left( \check{\mathbf a}_1\ne\mathbf a \right) }Pf,ILS=P(aˇ1=a)

对应成功率:

Ps,ILS=1−Pf,ILS\boxed{ P_{s,\mathrm{ILS}} = 1-P_{f,\mathrm{ILS}} }Ps,ILS=1−Pf,ILS

当小比值 Ratio 的临界值取:

μ=1\mu=1μ=1

所有 ILS 候选都被接受,所以:

Pf(1)=Pf,ILS\boxed{ P_f(1)=P_{f,\mathrm{ILS}} }Pf(1)=Pf,ILS

因此:

text 复制代码
P_f,ILS较小
→ 模型较强

P_f,ILS较大
→ 模型较弱

但 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS 通常没有简单解析式,不能从单个 Ratio 值直接反推。


13. 怎样评估 ILS 模型强度

13.1 整数 Bootstrap 成功率

对去相关模糊度协方差作分解:

Qz^z^=LDLT\boxed{ \mathbf Q_{\hat z\hat z} = \mathbf L \mathbf D \mathbf L^{\mathrm T} }Qz^z^=LDLT

其中:

  • L\mathbf LL:单位下三角矩阵;
  • D=diag⁡(σ1∣I2,...,σn∣I2)\mathbf D=\operatorname{diag} (\sigma_{1|I}^2,\ldots,\sigma_{n|I}^2)D=diag(σ1∣I2,...,σn∣I2);
  • σi∣I\sigma_{i\vert{}I}σi∣I:第 iii 个模糊度在前序整数已知条件下的条件标准差。

整数 Bootstrap 成功率为:

Ps,IB=∏i=1n2Φ(12σi∣I)−1\boxed{ P_{s,\mathrm{IB}} = \prod_{i=1}^{n} \left 2\\Phi \\left( \\frac{1}{2\\sigma_{i\\vert{}I}} \\right) -1 \\right }Ps,IB=i=1∏n2Φ(2σi∣I1)−1

其中:

Φ(x)=12π∫−∞xe−v2/2 dv\boxed{ \Phi(x) = \frac{1}{\sqrt{2\pi}} \int_{-\infty}^{x} e^{-v^2/2} \,\mathrm dv }Φ(x)=2π 1∫−∞xe−v2/2dv

ILS 在可容许整数估计器中具有最高成功率,因此:

Ps,ILS≥Ps,IB\boxed{ P_{s,\mathrm{ILS}} \ge P_{s,\mathrm{IB}} }Ps,ILS≥Ps,IB

所以:

Pf,ILS≤1−Ps,IB\boxed{ P_{f,\mathrm{ILS}} \le 1-P_{s,\mathrm{IB}} }Pf,ILS≤1−Ps,IB

该上界便于快速筛查明显过弱的模型,但不等于精确的 ILS 失败率。

13.2 ADOP:直观但不充分的模型强度指标

模糊度精度因子 ADOP 定义为:

ADOP⁡=∣Qa^a^∣12n\boxed{ \operatorname{ADOP} = \left\vert{} \mathbf Q_{\hat a\hat a} \right\vert{}^{\frac{1}{2n}} }ADOP=∣Qa^a^∣2n1

其中:

  • ∣Qa^a^∣\vert{}\mathbf Q_{\hat a\hat a}\vert{}∣Qa^a^∣:协方差矩阵行列式;
  • nnn:模糊度维数;
  • ADOP 的单位通常为周。

ADOP 越小,模糊度整体精度通常越高,整数固定越容易。

对整数幺模变换:

Qz^z^=ZTQa^a^Z\mathbf Q_{\hat z\hat z} = \mathbf Z^{\mathrm T} \mathbf Q_{\hat a\hat a} \mathbf ZQz^z^=ZTQa^a^Z

因为:

∣det⁡(Z)∣=1\vert{}\det(\mathbf Z)\vert{}=1∣det(Z)∣=1

所以:

∣Qz^z^∣=∣Qa^a^∣\boxed{ \left\vert{} \mathbf Q_{\hat z\hat z} \right\vert{} = \left\vert{} \mathbf Q_{\hat a\hat a} \right\vert{} }∣Qz^z^∣=∣Qa^a^∣

ADOP 在整数幺模变换下保持不变。

但 ADOP 只是行列式形成的标量摘要。不同协方差形状可能具有相同 ADOP,却有不同的 ILS 失败率和 FFRT 临界值。

因此:

ADOP 适合做快速诊断,不能直接替代 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS。

13.3 Ratio 对公共尺度不敏感,但失败率敏感

若将协方差整体放大为:

Qa^a^′=κQa^a^,κ>0\mathbf Q'{\hat a\hat a} = \kappa \mathbf Q{\hat a\hat a}, \qquad \kappa>0Qa^a^′=κQa^a^,κ>0

对同一个浮点样本和整数候选:

Ji′=1κJiJ'_i = \frac{1}{\kappa}J_iJi′=κ1Ji

所以:

J1′J2′=J1J2\boxed{ \frac{J'_1}{J'_2} = \frac{J_1}{J_2} }J2′J1′=J2J1

即当前样本的 Ratio 对协方差公共尺度不敏感。

但是,协方差尺度改变后,浮点模糊度分布的离散程度会改变,因此:

  • ILS 失败率会改变;
  • FFRT 临界值会改变;
  • 同一个 Ratio 值的风险含义会改变。

这进一步说明:

不能仅根据当前 Ratio 大小判断模型可靠性,还必须使用正确的绝对协方差。

13.4 精确模型强度通常怎样获得

精确或高精度评估 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS 通常依赖:

  • Monte Carlo 仿真;
  • 专用成功率评估算法;
  • 经验证的上下界;
  • 与具体 FFRT 拟合函数一致的模型强度计算方法。

若 FFRT 查表要求特定定义的 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS,不能随意用 ADOP 或 Bootstrap 上界替换。


第四部分:FFRT 数学原理

14. 概率积分定义

假设:

  • 待固定模糊度函数具有整数可估性;
  • 浮点估计近似无偏;
  • 协方差正确;
  • 误差近似服从高斯分布。

则:

a^∼N(a,Qa^a^)\hat{\mathbf a} \sim \mathcal N \left( \mathbf a, \mathbf Q_{\hat a\hat a} \right)a^∼N(a,Qa^a^)

其概率密度为:

fa^(x)=exp⁡−12(x−a)TQa\^a\^−1(x−a)(2π)n/2∣Qa^a^∣1/2\boxed{ f_{\hat a}(\mathbf x) = \frac{ \exp \left -\\dfrac{1}{2} (\\mathbf x-\\mathbf a)\^{\\mathrm T} \\mathbf Q_{\\hat a\\hat a}\^{-1} (\\mathbf x-\\mathbf a) \\right }{ (2\pi)^{n/2} \left\vert{} \mathbf Q_{\hat a\hat a} \right\vert{}^{1/2} } }fa^(x)=(2π)n/2∣Qa^a^∣1/2exp−21(x−a)TQa\^a\^−1(x−a)

正确固定概率:

Ps(μ)=∫Aa(μ)fa^(x) dx\boxed{ P_s(\mu) = \int_{\mathcal A_{\mathbf a}(\mu)} f_{\hat a}(\mathbf x) \,\mathrm d\mathbf x }Ps(μ)=∫Aa(μ)fa^(x)dx

失败率:

Pf(μ)=∑z∈Zn, z≠a∫Az(μ)fa^(x) dx\boxed{ P_f(\mu) = \sum_{ \mathbf z\in\mathbb Z^n,\, \mathbf z\ne\mathbf a } \int_{\mathcal A_{\mathbf z}(\mu)} f_{\hat a}(\mathbf x) \,\mathrm d\mathbf x }Pf(μ)=z∈Zn,z=a∑∫Az(μ)fa^(x)dx

固定率:

Pfix(μ)=Ps(μ)+Pf(μ)\boxed{ P_{\mathrm{fix}}(\mu) = P_s(\mu)+P_f(\mu) }Pfix(μ)=Ps(μ)+Pf(μ)

高维接受区域积分通常难以解析计算,因此工程中多采用仿真、查表或拟合函数。


15. FFRT 的数学定义

设允许的最大无条件失败率为:

Pˉf\bar P_fPˉf

由于小比值形式中 μ\muμ 增大时接受区域嵌套扩大,Pf(μ)P_f(\mu)Pf(μ) 单调不减。因此 FFRT 临界值可定义为:

μ⋆=sup⁡{μ∈0,1:Pf(μ;Qa^a^)≤Pˉf}\boxed{ \mu^\star = \sup \left\{ \mu\in0,1: P_f \left( \mu; \mathbf Q_{\hat a\hat a} \right) \le \bar P_f \right\} }μ⋆=sup{μ∈0,1:Pf(μ;Qa^a^)≤Pˉf}

其中:

  • Pˉf\bar P_fPˉf:用户容忍的失败率;
  • μ⋆\mu^\starμ⋆:FFRT 临界值;
  • Pf(μ;Qa^a^)P_f(\mu;\mathbf Q_{\hat a\hat a})Pf(μ;Qa^a^):当前模型和临界值下的失败率。

等价的风险约束思想为:

max⁡μPfix(μ)s.t.Pf(μ)≤Pˉf\boxed{ \max_{\mu} P_{\mathrm{fix}}(\mu) \quad \text{s.t.} \quad P_f(\mu)\le\bar P_f }μmaxPfix(μ)s.t.Pf(μ)≤Pˉf

即:

text 复制代码
先满足失败率约束
再尽可能提高固定率

16. FFRT 临界值依赖什么

严格来说:

μ⋆=g(Qa^a^,Pˉf)\boxed{ \mu^\star = g \left( \mathbf Q_{\hat a\hat a}, \bar P_f \right) }μ⋆=g(Qa^a^,Pˉf)

由于协方差结构很复杂,高效实现常用:

μ⋆≈g(n,Pf,ILS,Pˉf)\boxed{ \mu^\star \approx g \left( n, P_{f,\mathrm{ILS}}, \bar P_f \right) }μ⋆≈g(n,Pf,ILS,Pˉf)

其中:

  • nnn:待固定模糊度数量;
  • Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS:ILS 失败率;
  • Pˉf\bar P_fPˉf:允许失败率。

这类关系通常通过大规模 Monte Carlo 仿真建立。

需要注意:

  • 临界值不仅与 Ratio 本身有关;
  • 维数变化后应重新计算;
  • 固定子集变化后应重新计算;
  • 随机模型变化后应重新计算;
  • μ⋆\mu^\starμ⋆ 随 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS 的关系不保证在全部范围内严格单调。

在常见有效模型区间内,模型变弱通常会使检验趋于严格;但高维接受区域的几何关系可能使拟合曲线局部回升,不能凭直觉自行构造单调阈值。


17. 查表和拟合函数的适用范围

FFRT 是一般风险控制思想,但具体查表和拟合系数并不是通用常数。

以 Hou、Verhagen 和 Wu(2016)的高效实现为例:

  • 拟合函数通过大规模 Monte Carlo 仿真建立;
  • 文献给出了多组 0.0005∼0.010.0005\sim0.010.0005∼0.01 范围内的容忍失败率;
  • 临界值按模糊度维数 nnn 分组;
  • 拟合自变量使用 Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS;
  • 不同容忍失败率和维数需要使用各自的拟合系数;
  • 主要拟合区间为:

Pˉf≤Pf,ILS<0.2\boxed{ \bar P_f \le P_{f,\mathrm{ILS}} < 0.2 }Pˉf≤Pf,ILS<0.2

分情况处理:

17.1 模型已经足够强

若:

Pf,ILS≤PˉfP_{f,\mathrm{ILS}} \le \bar P_fPf,ILS≤Pˉf

即使接受全部 ILS 候选也满足风险要求,可以取:

μ⋆=1\boxed{ \mu^\star=1 }μ⋆=1

17.2 位于拟合区间

使用与以下条件完全匹配的系数:

  • Ratio 定义方向;
  • 平方距离定义;
  • 模糊度维数;
  • 容忍失败率;
  • Pf,ILSP_{f,\mathrm{ILS}}Pf,ILS 计算方法。

17.3 模型超出拟合区间

若:

Pf,ILS≥0.2P_{f,\mathrm{ILS}}\ge0.2Pf,ILS≥0.2

文献拟合函数不应直接外推。

这通常也意味着:为满足严格失败率约束,接受区域和固定率可能很小。

合理处理包括:

  • 保持浮点解;
  • 延长观测时间;
  • 减少固定子集;
  • 改进随机模型;
  • 增加外部约束;
  • 针对实际模型重新仿真标定。

"0.2"是特定高效拟合实现采用的工程边界,不是 FFRT 理论本身的普适物理常数。


18. FFRT 与普通 Ratio Test

FFRT 不改变 Ratio 统计量:

r=J1J2r=\frac{J_1}{J_2}r=J2J1

它改变的是临界值来源。

方法 临界值来源
普通 Ratio Test 固定经验值
FFRT 允许失败率与模型强度

因此:

text 复制代码
FFRT
=
Ratio Test统计量
+
整数孔径估计
+
模型相关临界值
+
固定失败率约束

第五部分:宽巷模糊度与 FFRT

19. 宽巷模糊度

设两个载波频率满足:

f1>f2f_1>f_2f1>f2

对应波长为:

λ1=cf1,λ2=cf2\lambda_1=\frac{c}{f_1}, \qquad \lambda_2=\frac{c}{f_2}λ1=f1c,λ2=f2c

其中:

  • ccc:真空光速;
  • f1,f2f_1,f_2f1,f2:两个载波频率;
  • λ1,λ2\lambda_1,\lambda_2λ1,λ2:原始载波波长。

若载波相位 L1,L2L_1,L_2L1,L2 均以米为单位,宽巷相位组合为:

LW=f1L1−f2L2f1−f2\boxed{ L_W = \frac{ f_1L_1-f_2L_2 }{ f_1-f_2 } }LW=f1−f2f1L1−f2L2

宽巷波长:

λW=cf1−f2\boxed{ \lambda_W = \frac{c}{ f_1-f_2 } }λW=f1−f2c

宽巷整数模糊度:

NW=N1−N2\boxed{ N_W=N_1-N_2 }NW=N1−N2

由于:

N1,N2∈ZN_1,N_2\in\mathbb ZN1,N2∈Z

所以:

NW∈ZN_W\in\mathbb ZNW∈Z

若交换频率顺序,组合符号也会改变,但整数性不变。

若原始载波相位以周为单位,不能直接套用上述米制公式,必须先乘以各自波长,或重新推导对应的周制组合系数。

还要区分:

text 复制代码
代数上的 N1-N2 是整数
≠
实际估计参数一定保留该整数

只有当观测模型中的相位偏差已经消除、差分抵消或通过 OSB/UPD 等产品正确改正时,估计得到的宽巷未知数才具有可固定的整数意义。


20. MW 组合与宽巷浮点值

工程中常使用 Melbourne--Wübbena(MW)组合估计宽巷模糊度。

定义窄巷码组合:

PN=f1P1+f2P2f1+f2\boxed{ P_N = \frac{ f_1P_1+f_2P_2 }{ f_1+f_2 } }PN=f1+f2f1P1+f2P2

其中:

  • P1,P2P_1,P_2P1,P2:两个频率上的伪距,单位为米。

MW 组合以周为单位可写为:

MW=LW−PNλW\boxed{ MW = \frac{ L_W-P_N }{ \lambda_W } }MW=λWLW−PN

理想情况下:

MW=NW+bMW+εMW\boxed{ MW = N_W + b_{MW} + \varepsilon_{MW} }MW=NW+bMW+εMW

其中:

  • bMWb_{MW}bMW:码、相位硬件偏差形成的宽巷偏差;
  • εMW\varepsilon_{MW}εMW:码噪声、多路径及相位噪声。

MW 组合消除了几何距离、钟差、对流层和一阶电离层,但并未消除全部硬件偏差和噪声。

因此:

在双差 RTK 中,同系统、同频率硬件偏差通常可通过差分大幅抵消;在 PPP-AR 或未差模型中,则必须通过一致的钟差、码偏差和相位偏差产品恢复整数基准。传统 GLONASS FDMA 还需特别处理接收机间频间偏差。

MW 通常需要跨历元平滑。发生周跳或数据中断后,应重新初始化。


21. 宽巷模糊度矩阵变换

设双频模糊度为:

a=N1N2\mathbf a = \begin{bmatrix} \mathbf N_1\\ \mathbf N_2 \end{bmatrix}a=N1N2

宽巷选择矩阵:

TW=I−I\boxed{ \mathbf T_W = \begin{bmatrix} \mathbf I&-\mathbf I \end{bmatrix} }TW=I−I

宽巷模糊度:

aW=TWa\boxed{ \mathbf a_W = \mathbf T_W\mathbf a }aW=TWa

浮点值:

a^W=TWa^\boxed{ \hat{\mathbf a}_W = \mathbf T_W\hat{\mathbf a} }a^W=TWa^

协方差:

QWW=TWQa^a^TWT\boxed{ \mathbf Q_{WW} = \mathbf T_W \mathbf Q_{\hat a\hat a} \mathbf T_W^{\mathrm T} }QWW=TWQa^a^TWT

TW\mathbf T_WTW 只是提取宽巷组合,不是方阵。

若还要保留另一组独立整数参数,应构造完整幺模变换:

aWaR\]=\[I−I0I\]\[N1N2\]\\boxed{ \\begin{bmatrix} \\mathbf a_W\\\\ \\mathbf a_R \\end{bmatrix} = \\begin{bmatrix} \\mathbf I\&-\\mathbf I\\\\ \\mathbf0\&\\mathbf I \\end{bmatrix} \\begin{bmatrix} \\mathbf N_1\\\\ \\mathbf N_2 \\end{bmatrix} }\[aWaR\]=\[I0−II\]\[N1N2

其中:

  • aR=N2\mathbf a_R=\mathbf N_2aR=N2:剩余整数参数;
  • 完整变换矩阵行列式为 111,保持整数向量一一对应。

22. 正确固定宽巷后的条件更新

将未固定参数记为:

u=baR\mathbf u = \begin{bmatrix} \mathbf b\\ \mathbf a_R \end{bmatrix}u=baR

协方差分块:

QuuQuWQWuQWW\]\\begin{bmatrix} \\mathbf Q_{uu}\&\\mathbf Q_{uW}\\\\ \\mathbf Q_{Wu}\&\\mathbf Q_{WW} \\end{bmatrix}\[QuuQWuQuWQWW

若宽巷固定为 aˇW\check{\mathbf a}_WaˇW,则:

uˇ=u^−QuWQWW−1(a^W−aˇW)\boxed{ \check{\mathbf u} = \hat{\mathbf u} - \mathbf Q_{uW} \mathbf Q_{WW}^{-1} \left( \hat{\mathbf a}_W-\check{\mathbf a}_W \right) }uˇ=u^−QuWQWW−1(a^W−aˇW)

条件协方差:

Qu∣W=Quu−QuWQWW−1QWu\boxed{ \mathbf Q_{u\mid W} = \mathbf Q_{uu} - \mathbf Q_{uW} \mathbf Q_{WW}^{-1} \mathbf Q_{Wu} }Qu∣W=Quu−QuWQWW−1QWu

因为被减项为半正定矩阵:

Qu∣W⪯Quu\boxed{ \mathbf Q_{u\mid W} \preceq \mathbf Q_{uu} }Qu∣W⪯Quu

正确固定宽巷后:

  • 剩余模糊度精度提高;
  • 后续整数搜索空间缩小;
  • 窄巷固定更容易;
  • 位置和大气参数可能得到增强。

23. FFRT 与宽巷固定的关系

FFRT 不是宽巷专用方法。

它可以用于:

  • 超宽巷;
  • 宽巷;
  • 窄巷;
  • 原始频点模糊度;
  • 双差模糊度;
  • PPP-AR 星间单差模糊度;
  • 部分模糊度子集。

典型级联流程:
#mermaid-svg-BaEWKEYwKrgUE5JY{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-BaEWKEYwKrgUE5JY .error-icon{fill:#552222;}#mermaid-svg-BaEWKEYwKrgUE5JY .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-BaEWKEYwKrgUE5JY .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-BaEWKEYwKrgUE5JY .marker{fill:#333333;stroke:#333333;}#mermaid-svg-BaEWKEYwKrgUE5JY .marker.cross{stroke:#333333;}#mermaid-svg-BaEWKEYwKrgUE5JY svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-BaEWKEYwKrgUE5JY p{margin:0;}#mermaid-svg-BaEWKEYwKrgUE5JY .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster-label text{fill:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster-label span{color:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster-label span p{background-color:transparent;}#mermaid-svg-BaEWKEYwKrgUE5JY .label text,#mermaid-svg-BaEWKEYwKrgUE5JY span{fill:#333;color:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY .node rect,#mermaid-svg-BaEWKEYwKrgUE5JY .node circle,#mermaid-svg-BaEWKEYwKrgUE5JY .node ellipse,#mermaid-svg-BaEWKEYwKrgUE5JY .node polygon,#mermaid-svg-BaEWKEYwKrgUE5JY .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-BaEWKEYwKrgUE5JY .rough-node .label text,#mermaid-svg-BaEWKEYwKrgUE5JY .node .label text,#mermaid-svg-BaEWKEYwKrgUE5JY .image-shape .label,#mermaid-svg-BaEWKEYwKrgUE5JY .icon-shape .label{text-anchor:middle;}#mermaid-svg-BaEWKEYwKrgUE5JY .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-BaEWKEYwKrgUE5JY .rough-node .label,#mermaid-svg-BaEWKEYwKrgUE5JY .node .label,#mermaid-svg-BaEWKEYwKrgUE5JY .image-shape .label,#mermaid-svg-BaEWKEYwKrgUE5JY .icon-shape .label{text-align:center;}#mermaid-svg-BaEWKEYwKrgUE5JY .node.clickable{cursor:pointer;}#mermaid-svg-BaEWKEYwKrgUE5JY .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-BaEWKEYwKrgUE5JY .arrowheadPath{fill:#333333;}#mermaid-svg-BaEWKEYwKrgUE5JY .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-BaEWKEYwKrgUE5JY .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-BaEWKEYwKrgUE5JY .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BaEWKEYwKrgUE5JY .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-BaEWKEYwKrgUE5JY .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BaEWKEYwKrgUE5JY .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster text{fill:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY .cluster span{color:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-BaEWKEYwKrgUE5JY .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-BaEWKEYwKrgUE5JY rect.text{fill:none;stroke-width:0;}#mermaid-svg-BaEWKEYwKrgUE5JY .icon-shape,#mermaid-svg-BaEWKEYwKrgUE5JY .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BaEWKEYwKrgUE5JY .icon-shape p,#mermaid-svg-BaEWKEYwKrgUE5JY .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-BaEWKEYwKrgUE5JY .icon-shape .label rect,#mermaid-svg-BaEWKEYwKrgUE5JY .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BaEWKEYwKrgUE5JY .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-BaEWKEYwKrgUE5JY .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-BaEWKEYwKrgUE5JY :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 拒绝
接受
双频或多频浮点模糊度
形成EWL或WL整数参数
传播宽巷协方差
ILS或LAMBDA搜索
FFRT验证宽巷
保持浮点或继续累积
宽巷条件更新
得到更精确的剩余模糊度
再次整数搜索
FFRT或其他验证
输出最终固定解

如果宽巷只采用逐星舍入,而没有搜索最佳和次优向量候选,就不能直接套用标准向量 Ratio Test。


24. 单个宽巷模糊度的直观推导

设单个宽巷浮点值为:

N^W\hat N_WN^W

最近整数为:

Nˇ1=round⁡(N^W)\check N_1 = \operatorname{round}(\hat N_W)Nˇ1=round(N^W)

定义到最近整数的距离:

d=∣N^W−Nˇ1∣\boxed{ d = \left\vert{} \hat N_W-\check N_1 \right\vert{} }d= N^W−Nˇ1

有:

0≤d≤120\le d\le\frac{1}{2}0≤d≤21

次近整数距离为:

1−d1-d1−d

若宽巷方差为 σW2\sigma_W^2σW2,则:

J1=d2σW2,J2=(1−d)2σW2J_1 = \frac{d^2}{\sigma_W^2}, \qquad J_2 = \frac{(1-d)^2}{\sigma_W^2}J1=σW2d2,J2=σW2(1−d)2

所以:

r=J1J2=(d1−d)2\boxed{ r = \frac{J_1}{J_2} = \left( \frac{d}{1-d} \right)^2 }r=J2J1=(1−dd)2

接受条件 r≤μr\le\mur≤μ 等价于:

d≤μ1+μ\boxed{ d \le \frac{ \sqrt{\mu} }{ 1+\sqrt{\mu} } }d≤1+μ μ

即:

对单个宽巷模糊度,Ratio Test 等价于要求浮点值距离最近整数足够近。

虽然 σW2\sigma_W^2σW2 在当前样本的 Ratio 中抵消,但 N^W\hat N_WN^W 的概率分布仍取决于 σW2\sigma_W^2σW2,所以 FFRT 临界值仍与模型强度有关。


第六部分:级联、部分固定与累计风险

25. 宽巷错误为什么危险

若:

aˇW≠aW\check{\mathbf a}_W \ne \mathbf a_WaˇW=aW

错误整数会通过条件更新传递到:

  • 窄巷模糊度;
  • 原始频点模糊度;
  • 位置;
  • 大气参数。

可能出现:

text 复制代码
宽巷错误
→ 后续状态被错误约束
→ 窄巷获得很高但虚假的Ratio
→ 最终位置错误固定

宽巷波长长,不等于可以放松风险控制。


26. 多阶段失败率预算

设:

  • FWF_WFW:宽巷阶段发生错误接受;
  • CWC_WCW:宽巷阶段正确接受;
  • FNF_NFN:后续窄巷阶段发生错误接受;
  • FtotalF_{\mathrm{total}}Ftotal:完整级联流程最终错误固定。

后续窄巷阶段只在宽巷正确接受后执行,因此:

Ftotal=FW∪(CW∩FN)\boxed{ F_{\mathrm{total}} = F_W \cup \left( C_W\cap F_N \right) }Ftotal=FW∪(CW∩FN)

两个事件互斥,所以:

P(Ftotal)=P(FW)+P(CW)P(FN∣CW)\boxed{ P(F_{\mathrm{total}}) = P(F_W) + P(C_W) P(F_N\mid C_W) }P(Ftotal)=P(FW)+P(CW)P(FN∣CW)

由:

P(CW)≤1P(C_W)\le1P(CW)≤1

可得保守上界:

P(Ftotal)≤P(FW)+P(FN∣CW)\boxed{ P(F_{\mathrm{total}}) \le P(F_W) + P(F_N\mid C_W) }P(Ftotal)≤P(FW)+P(FN∣CW)

若总风险预算为:

Pˉf,total\bar P_{f,\mathrm{total}}Pˉf,total

可以分配为:

Pˉf,W+Pˉf,N∣W≤Pˉf,total\boxed{ \bar P_{f,W} + \bar P_{f,N\mid W} \le \bar P_{f,\mathrm{total}} }Pˉf,W+Pˉf,N∣W≤Pˉf,total

其中:

  • Pˉf,W\bar P_{f,W}Pˉf,W:宽巷阶段允许失败率;
  • Pˉf,N∣W\bar P_{f,N\mid W}Pˉf,N∣W:以宽巷正确接受为条件的后续阶段允许失败率。

真实级联模型、固定子集和筛选规则通常相关,仍应通过联合 Monte Carlo 仿真或真实数据统计验证整体风险。


27. 单历元失败率与长期运行风险

设系统在 MMM 次实际执行整数接受检验的固定事件中,第 kkk 次失败事件为 FkF_kFk。

这里的 MMM 不一定等于输出历元数。例如,Fix-and-hold 模式可能只在初始化或失锁后重新执行一次整数检验,但一次错误接受会持续影响后续许多历元。

任务周期内至少发生一次错误固定的概率满足:

P(⋃k=1MFk)≤∑k=1MP(Fk)\boxed{ P \left( \bigcup_{k=1}^{M}F_k \right) \le \sum_{k=1}^{M} P(F_k) }P(k=1⋃MFk)≤k=1∑MP(Fk)

若每次均满足:

P(Fk)≤PˉfP(F_k)\le\bar P_fP(Fk)≤Pˉf

则:

P(Fmission)≤MPˉf\boxed{ P(F_{\mathrm{mission}}) \le M\bar P_f }P(Fmission)≤MPˉf

这是不要求历元独立的保守上界。

因此:

单历元 FFRT 失败率并不自动等于整个任务的完整性风险。

长期运行系统还需考虑:

  • 固定事件数量;
  • 历元间相关性;
  • Fix-and-hold 的错误传播;
  • 失锁后的重新固定;
  • 任务级风险预算;
  • 错误固定释放机制。

28. 部分模糊度固定

设从原模糊度中选择子集:

aS=Sa\boxed{ \mathbf a_S = \mathbf S\mathbf a }aS=Sa

其中:

  • S\mathbf SS:子集选择矩阵;
  • aS\mathbf a_SaS:待固定子集。

浮点子集和协方差:

a^S=Sa^\hat{\mathbf a}_S = \mathbf S\hat{\mathbf a}a^S=Sa^

QSS=SQa^a^ST\boxed{ \mathbf Q_{SS} = \mathbf S \mathbf Q_{\hat a\hat a} \mathbf S^{\mathrm T} }QSS=SQa^a^ST

必须根据新的:

  • 子集维数;
  • 子集协方差;
  • ILS 模型强度;

重新计算 FFRT 临界值。

如果选择矩阵 S\mathbf SS 由当前观测、Ratio、残差或多个试探结果动态决定,则"选择子集"本身也是随机过程,必须纳入整体失败率评估。

若算法连续尝试多个子集,并接受第一个通过的结果,整体错误固定概率可能高于单个子集的目标失败率。

应采用:

  • 子集级风险分配;
  • 预先固定的选择规则;
  • 联合 Monte Carlo 验证;
  • 任务级风险控制。

第七部分:优势、局限与优化

29. FFRT 的优势

  • 具有明确的失败率目标;
  • 临界值可适应模型强弱;
  • 强模型下可减少不必要拒绝;
  • 弱模型下可抑制错误固定;
  • 可用于宽巷、窄巷和原始频点;
  • 可用于全维和部分固定;
  • 适合自动化、多历元和多系统处理。

30. FFRT 的局限

30.1 依赖随机模型正确性

若:

Qa^a^\mathbf Q_{\hat a\hat a}Qa^a^

低估实际误差,理论风险控制可能失效。

常见模型失配包括:

  • 多路径;
  • 周跳;
  • 未建模大气残差;
  • 相位、码偏差错误;
  • 时间相关噪声;
  • 非高斯粗差;
  • 轨道、钟差产品异常。

30.2 不保证单次固定一定正确

FFRT 控制概率风险,不是单历元正确性的证明。

30.3 临界值需要标定

高维失败率通常需要:

  • Monte Carlo;
  • 查表;
  • 拟合函数;
  • 经验证的近似或界。

30.4 依赖完整候选搜索

若次优候选搜索不完整,Ratio 会失真。

30.5 不替代其他质量控制

仍需:

  • 周跳检测;
  • 固定后残差;
  • 多历元连续性;
  • 位置域检查;
  • 独立传感器;
  • 完整性监测。

31. 关键优化点

31.1 正确建立随机模型

重点包括:

  • 码和相位噪声;
  • 高度角及 C/N0C/N_0C/N0 加权;
  • 双差相关性;
  • 多频组合协方差;
  • 时间相关性;
  • 大气残差;
  • 产品偏差不确定度。

31.2 使用完整协方差

宽巷必须传播:

QWW=TWQa^a^TWT\mathbf Q_{WW} = \mathbf T_W \mathbf Q_{\hat a\hat a} \mathbf T_W^{\mathrm T}QWW=TWQa^a^TWT

不能假设宽巷模糊度彼此独立且等方差。

31.3 保证第二候选正确

整数搜索应至少可靠返回:

  • 最佳候选;
  • 真正的次优候选;
  • 对应的加权平方距离。

31.4 不外推 FFRT 拟合函数

超出维数、失败率或模型强度范围时,应重新仿真或采用保守策略。

31.5 动态选择固定子集

可依据:

  • 条件标准差;
  • 连续跟踪时间;
  • 卫星高度角;
  • 残差;
  • 预测成功率;
  • 系统和频点;

选择固定子集。

31.6 离线验证实际风险

对于很小的失败率目标,需要大量独立或有效独立样本。

若满足以下条件:

  • NNN 次试验相互独立或近似有效独立;
  • 每次试验具有近似相同的失败概率;
  • NNN 次均未观察到错误固定;

则 95% 置信水平下常用的"零事件上界"近似为:

Pf≲3N\boxed{ P_f \lesssim \frac{3}{N} }Pf≲N3

若历元高度相关,应使用有效独立样本数,而不能直接使用原始历元数。

该经验式说明:要验证极小失败率,需要非常大的有效样本量。


32. 最具代表性的使用场景

FFRT 没有只能由它完成的唯一场景。

它最适合:

必须限制错误固定概率,同时模糊度模型强度频繁变化的自动化系统。

典型场景:

  • 长基线和网络 RTK;
  • PPP-AR 收敛阶段;
  • EWL/WL/NL 多频级联固定;
  • 部分模糊度固定;
  • 多系统高维模糊度;
  • 大规模测站或终端自动处理;
  • 自动驾驶、机械控制和形变预警等高可靠性场景。

第八部分:工程实现

33. FFRT 实现流程

#mermaid-svg-CaOlnkqtD1lgtn5H{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-CaOlnkqtD1lgtn5H .error-icon{fill:#552222;}#mermaid-svg-CaOlnkqtD1lgtn5H .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-CaOlnkqtD1lgtn5H .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-CaOlnkqtD1lgtn5H .marker{fill:#333333;stroke:#333333;}#mermaid-svg-CaOlnkqtD1lgtn5H .marker.cross{stroke:#333333;}#mermaid-svg-CaOlnkqtD1lgtn5H svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-CaOlnkqtD1lgtn5H p{margin:0;}#mermaid-svg-CaOlnkqtD1lgtn5H .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster-label text{fill:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster-label span{color:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster-label span p{background-color:transparent;}#mermaid-svg-CaOlnkqtD1lgtn5H .label text,#mermaid-svg-CaOlnkqtD1lgtn5H span{fill:#333;color:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H .node rect,#mermaid-svg-CaOlnkqtD1lgtn5H .node circle,#mermaid-svg-CaOlnkqtD1lgtn5H .node ellipse,#mermaid-svg-CaOlnkqtD1lgtn5H .node polygon,#mermaid-svg-CaOlnkqtD1lgtn5H .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-CaOlnkqtD1lgtn5H .rough-node .label text,#mermaid-svg-CaOlnkqtD1lgtn5H .node .label text,#mermaid-svg-CaOlnkqtD1lgtn5H .image-shape .label,#mermaid-svg-CaOlnkqtD1lgtn5H .icon-shape .label{text-anchor:middle;}#mermaid-svg-CaOlnkqtD1lgtn5H .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-CaOlnkqtD1lgtn5H .rough-node .label,#mermaid-svg-CaOlnkqtD1lgtn5H .node .label,#mermaid-svg-CaOlnkqtD1lgtn5H .image-shape .label,#mermaid-svg-CaOlnkqtD1lgtn5H .icon-shape .label{text-align:center;}#mermaid-svg-CaOlnkqtD1lgtn5H .node.clickable{cursor:pointer;}#mermaid-svg-CaOlnkqtD1lgtn5H .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-CaOlnkqtD1lgtn5H .arrowheadPath{fill:#333333;}#mermaid-svg-CaOlnkqtD1lgtn5H .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-CaOlnkqtD1lgtn5H .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-CaOlnkqtD1lgtn5H .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-CaOlnkqtD1lgtn5H .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-CaOlnkqtD1lgtn5H .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-CaOlnkqtD1lgtn5H .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster text{fill:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H .cluster span{color:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-CaOlnkqtD1lgtn5H .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-CaOlnkqtD1lgtn5H rect.text{fill:none;stroke-width:0;}#mermaid-svg-CaOlnkqtD1lgtn5H .icon-shape,#mermaid-svg-CaOlnkqtD1lgtn5H .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-CaOlnkqtD1lgtn5H .icon-shape p,#mermaid-svg-CaOlnkqtD1lgtn5H .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-CaOlnkqtD1lgtn5H .icon-shape .label rect,#mermaid-svg-CaOlnkqtD1lgtn5H .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-CaOlnkqtD1lgtn5H .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-CaOlnkqtD1lgtn5H .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-CaOlnkqtD1lgtn5H :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 否



浮点模糊度及协方差
检查整数可估性 偏差基准 周跳和粗差
选择全部或部分模糊度
整数保持去相关
ILS搜索最佳和次优候选
计算J1 J2和Ratio
评估ILS模型强度
输入允许失败率
查表 拟合或仿真得到临界值
Ratio是否通过
保持浮点解
条件更新位置和剩余状态
残差 连续性和位置域检验
质量控制通过
释放固定解
输出固定解


34. 工程伪代码

text 复制代码
输入:
    浮点模糊度 a_float
    模糊度协方差 Q_aa
    可容忍失败率 Pf_bar
    待固定子集

1. 检查整数可估性、相位偏差基准、周跳和粗差
2. 检查随机模型是否与FFRT标定模型一致
3. 构造子集浮点解及协方差
4. 使用整数幺模变换进行去相关
5. 用ILS/LAMBDA搜索:
       a1 = 最佳整数候选
       a2 = 次优整数候选
6. 计算:
       J1 = distance(a_float, a1, Q_aa)
       J2 = distance(a_float, a2, Q_aa)
       r  = J1 / J2
7. 评估模型强度:
       n
       Pf_ILS 或经验证的近似指标
8. 按有效范围计算FFRT阈值:
       mu = FFRT(n, Pf_ILS, Pf_bar)
9. 若 r <= mu:
       接受a1
       条件更新位置和其他状态
       执行残差、连续性和位置域检验
   否则:
       保持浮点解
10. 记录实际固定事件,用于任务级风险统计

35. 常见概念混淆

35.1 FFRT 是新的整数搜索算法

错误。整数搜索仍由 ILS/LAMBDA 完成。

35.2 FFRT 与 Ratio Test 无关

错误。FFRT 使用 Ratio Test,只是动态确定临界值。

35.3 固定失败是没有得到固定解

错误。固定失败是错误整数被接受。

35.4 Ratio Test 通过就证明整数正确

错误。Ratio Test 是概率意义的候选区分检验。

35.5 FFRT 直接控制条件失败率

不一定。经典 FFRT 通常控制无条件失败率 PfP_fPf。

35.6 ILS 失败率可以从当前 Ratio 直接算出

错误。ILS 失败率是模型概率指标,需要协方差、仿真或经验证的近似方法。

35.7 LAMBDA 去相关会提高真实 Ratio

错误。正确的整数变换保持加权距离和 Ratio 不变,只提高搜索效率。

35.8 宽巷波长长,所以不需要验证

错误。宽巷仍受码噪声、多路径和偏差影响。

35.9 MW 组合天然就是无偏整数

错误。MW 中还可能包含码、相位硬件偏差。

35.10 宽巷固定后窄巷一定正确

错误。窄巷仍需独立搜索和验证。

35.11 所有历元使用同一 Ratio 阈值最合理

错误。不同历元的模糊度维数和模型强度不同。

35.12 单历元失败率就是长期系统风险

错误。长期运行还要考虑多次固定、阶段相关性和 Fix-and-hold 传播。

35.13 FFRT 可以弥补错误随机模型

错误。随机模型错误会破坏失败率标定。

35.14 ADOP 相同就表示 FFRT 临界值相同

错误。ADOP 只概括协方差体积,不包含完整协方差形状。

35.15 Ratio 对协方差公共尺度不敏感,所以方差尺度不重要

错误。当前样本的 Ratio 对公共尺度不敏感,但 ILS 失败率和 FFRT 临界值对绝对协方差尺度敏感。

35.16 未改正相位偏差可以依靠更严格的 FFRT 消除

错误。FFRT 控制随机误差下的风险,不能修复模糊度系统偏差和整数基准错误。

35.17 只要系数矩阵是整数,模糊度函数就可整数估计

错误。还必须对秩亏基准变化保持不变,并保证整数格映射完整。

35.18 控制模糊度失败率就等于控制位置完整性风险

错误。错误整数对位置的影响还取决于

Qb^a^Qa^a^−1\mathbf Q_{\hat b\hat a}\mathbf Q_{\hat a\hat a}^{-1}Qb^a^Qa^a^−1。

35.19 同一任务每秒输出一次固定解,就等于每秒产生一次独立 FFRT 风险

错误。固定事件可能高度相关;Fix-and-hold 中一次错误固定还可能持续影响多个历元。


36. 总结

FFRT 是 Fixed Failure-rate Ratio Test,即固定失败率比率检验。
FFRT 不是新的整数搜索算法,而是整数孔径估计中的候选接受方法。
Ratio Test 比较最佳和次优整数候选的加权距离,但不能证明最佳候选一定正确。
固定失败是"错误整数被接受",不是"没有固定"。
FFRT 根据允许失败率、模糊度维数和模型强度动态确定 Ratio 临界值,但具体查表和拟合系数只能在其标定范围内使用。
FFRT 只能用于可整数估计且近似无偏的模糊度函数;整数系数组合本身并不足以证明整数可估性,更严格的阈值也不能弥补错误的相位偏差或整数基准。
宽巷模糊度可以使用 FFRT 验证,但宽巷整数性还依赖偏差基准、观测单位和模型参数化的一致性。
正确固定宽巷可减小剩余模糊度协方差,错误宽巷则会把偏差传递到后续窄巷和位置状态。
FFRT 控制的是模糊度域错误接受概率,不直接等于位置域完整性风险。
多阶段、多个子集和长期运行都需要分配累计风险,不能只关注单个历元的 FFRT 失败率。
FFRT 的有效性依赖正确随机模型、完整候选搜索、合理阈值标定和独立质量控制。


参考资料

  • P. J. G. Teunissen、S. Verhagen:The GNSS Ambiguity Ratio-Test Revisited: A Better Way of Using It
  • Y. Hou、S. Verhagen、J. Wu:An Efficient Implementation of Fixed Failure-Rate Ratio Test for GNSS Ambiguity Resolution
  • P. J. G. Teunissen:The Least-Squares Ambiguity Decorrelation Adjustment
  • P. J. G. Teunissen:Theory of Integer Aperture Estimation with Application to GNSS
  • P. J. G. Teunissen:Influence of Ambiguity Precision on the Success Rate of GNSS Integer Ambiguity Bootstrapping
  • A. Khodabandeh、P. J. G. Teunissen:Integer Estimability in GNSS Networks
  • P. J. G. Teunissen、S. Verhagen:Integer Aperture Estimation---A Framework for GNSS Ambiguity Acceptance Testing
  • K. Wang、P. J. G. Teunissen、A. El-Mowafy:The ADOP and PDOP---Two Complementary Diagnostics for GNSS Positioning
  • P. J. G. Teunissen、O. Montenbruck:Springer Handbook of Global Navigation Satellite Systems
相关推荐
小园子的小菜8 小时前
深入理解 JVM 垃圾回收:从对象判定、回收算法到经典收集器全解析
jvm·算法
2601_954526758 小时前
【硬核长文】从卡门涡街物理方程到边缘网关温压补偿算法:工业蒸汽测控实战,深度解密靠谱的涡街流量计厂家有哪些
算法
吞下星星的少年·-·8 小时前
牛客技能树:区间翻转
算法·滑动窗口
流浪0019 小时前
数据结构篇(五):线性表——栈
数据结构·c++·算法
tkevinjd9 小时前
力扣148-排序链表
算法·leetcode·链表
qeen8710 小时前
【C++】vector的模拟实现详解(二)
c++·学习·算法·迭代器·stl
沉迷学习 日益消瘦11 小时前
4 净资产趋势可视化:SVG 图表 + 手势交互 + 降采样算法
算法·交互
可编程芯片开发1 天前
基于MATLAB的PEF湍流风场生成器模拟与仿真
算法
罗西的思考1 天前
【Agentic RL / 强化学习 / OPD】OpenClaw-RL 源码阅读笔记 --- (9)--- Reward Judging
人工智能·算法·机器学习