docs/research/sota-2026-05-22/ticks/tick-24.md
Thread: R6.2.2.1 (3D N-anchor multistatic) Verdict: The 2D knee at N=5 (R6.2.2) doesn't hold in 3D. 3D N=5 gives only 49.4% coverage vs 2D 96.8%. Two responses: bump N OR use chest-centric zones (R6.2.3). The latter is the architectural fix.
examples/research-sota/r6_2_2_1_3d_multistatic.py — pure-numpy 3D N-anchor greedy search.examples/research-sota/r6_2_2_1_3d_multistatic_results.json — saturation curve.docs/research/sota-2026-05-22/R6_2_2_1-3d-multistatic.md — research note.| N | 2D (R6.2.2) | 3D (R6.2.2.1) | Δ |
|---|---|---|---|
| 2 | 35.7% | 7.7% | -28 pp |
| 3 | 63.4% | 28.1% | -35 pp |
| 4 | 86.2% | 40.6% | -46 pp |
| 5 | 96.8% | 49.4% | -47 pp |
| 6 | 100% | 59.1% | -41 pp |
| 7 | 100% | 65.1% | -35 pp |
No clean knee in 3D. Marginal gains stay 6-10 pp from N=4 onwards. 3D space is fundamentally harder because each Fresnel ellipsoid is a thin slab in the vertical direction, not a 2D rectangle.
At every N ≥ 4, the search picks 3-5 LOW (0.8 m) + 0-1 MID (1.5 m) + 1 HIGH (ceiling). Confirms R6.2.1's single-pair finding: diagonal-in-z links win.
The 2D-derived N=5 consumer rec is too optimistic for 3D. Two responses:
| Path | Mechanism | Outcome |
|---|---|---|
| Bump N | N=7-8 for 65%+ 3D coverage | More hardware, same target zones |
| Use chest-centric (R6.2.3) | Smaller zones (40×40 cm fits Fresnel envelope) | N=5 hits 80%+ |
Recommended path: R6.2.3 + R6.2.2 N=5 = realistic 80%+ 3D coverage at ADR-029's default N. Architectural lever that aligns 2D and 3D physics.
R6.2.2 (2D) and R6.2.1 (3D single-pair) each told partial stories. R6.2.2.1 composes them and reveals 2D over-promised. Without this tick, ADR-029 would ship the 2D recommendation and discover the 3D shortfall during field deployment.
ticks/tick-24.md. No PROGRESS.md edit. Branch research/sota-r6.2.2.1-3d-multistatic.
~3.2h to cron stop. 24 ticks landed. Loop has 13 research threads + 3 ADRs + 9 deferred follow-ups closed.
The previous 23 ticks have built on each other constructively. R6.2.2.1 is the first tick where the right action is to revise downward an earlier optimistic number (R6.2.2's 2D 97% becomes 3D 49%). Honest self-correction across ticks is the kind of integrity the loop is meant to produce.