📅 2026-04-16🤖 claude-opus-4-20250514
渐进式定位架构:从粗定位到精预测
1. 两种输出模式
1.1 最近志愿者估计值(快速粗定位)
直接取 RSSI 最强(距离最近)的好心人 GPS 位置作为设备位置。
- 这正是 Apple Find My / Google Find Hub 当前的做法
- 优势:零延迟,无需优化计算
- 精度:等于该好心人的 GPS 精度(3–30m)
- 用途:快速响应,用户打开 App 立刻看到大致位置
1.2 实时预测(精细优化)
收集多个好心人报告后做非线性优化 + 卡尔曼滤波。
- 需要积累一定报告量(≥3 个才有几何约束)
- 精度随报告增多持续提升
- 移动场景下持续输出轨迹预测
2. 渐进收敛架构
两者不是二选一,而是同一系统的不同阶段:
阶段 1:首个报告到达(t=0s)
├── 输出:最近志愿者估计值(粗定位)
├── 精度:等于好心人 GPS 精度(3–30m)
└── 置信圆:大(反映单点不确定性)
阶段 2:累积 3+ 个报告(t=30s~数分钟)
├── 输出:非线性优化结果(精定位)
├── 精度:显著优于单点,取决于几何分布
└── 置信圆:缩小
阶段 3:持续收到报告(移动场景)
├── 输出:卡尔曼滤波实时轨迹预测
├── 精度:随时间累积持续提升
├── 无报告时:按运动模型推算位置
└── 置信圆:动态调整(有观测时缩小,无观测时逐渐增大)
3. 模式切换逻辑
if 报告数 == 1:
输出 = 最强 RSSI 好心人的 GPS 位置
置信半径 = 该好心人的 accuracy + RSSI 测距不确定性
elif 报告数 == 2:
输出 = 两个距离圆的交点区域中心(或加权平均)
置信半径 = 缩小但仍较大(几何约束不足)
elif 报告数 >= 3:
输出 = IRLS 鲁棒非线性优化结果
置信半径 = 基于残差和几何 DOP 估计
if 移动场景 and 有历史轨迹:
输出 = 卡尔曼滤波融合结果
置信半径 = 滤波器协方差矩阵
4. 用户界面呈现
| 要素 | 表现形式 |
|---|---|
| 位置点 | 地图上的标记 |
| 置信圆 | 半透明圆环,半径 = CEP90 |
| 精度等级 | 文字提示:"大致位置" → "较精确" → "精确" |
| 轨迹(移动) | 带时间戳的路径线 + 预测延伸 |
置信圆随报告增多逐步缩小,给用户直观的"搜索范围正在收窄"体验。
5. 关键设计意义
5.1 优雅退化
当好心人极少时,系统退化到商业系统水平(最近志愿者位置),不会比现有方案差。这回答了"只有 1 个好心人怎么办"的问题。
5.2 渐进增益
每增加一个好心人都会改善结果:
- 第 1 个:基线(等于 Find My)
- 第 3 个:开始有几何约束
- 第 5+ 个:鲁棒优化开始发挥作用(可识别并降权异常值)
- 第 10+ 个:接近目标精度(CEP90 ≤ 30m)
5.3 实时预测价值
移动场景下,即使当前无好心人报告,运动模型仍能给出"设备可能在哪"的预测——这是纯静态优化无法做到的。用户不会看到"位置未知",而是看到一个不确定性逐渐增大的预测位置。