mirror of
https://github.com/ruvnet/RuView
synced 2026-08-01 19:01:42 +00:00
3d3d54d523
R3's 'next research lever' was: use R6.1 forward operator + room map to predict env_sig without labelled examples in the new room. R6.1 shipped (tick 18); this tick implements the prediction. Result: at raw-CSI level, all three approaches collapse to chance. | Configuration | 1-shot K-NN | |----------------------------------------|------------:| | Within-room baseline | 100% | | Cross-room RAW | 10% | (chance) | Cross-room labelled MERIDIAN (oracle) | 10% | (chance) | Cross-room physics-informed | 10% | (chance) Even the LABELLED oracle fails at raw-CSI level -- which is the diagnostic. The cross-room problem at raw-CSI level is fundamentally harder than at the AETHER embedding level (R3 tick 12) because position-dependent within-room variance dominates per-subject signature when invariantisation hasn't been done. Corrected architecture: raw CSI -> AETHER embedding -> physics-informed env subtraction -> K-NN (apply physics prediction at embedding level, NOT raw level) AETHER does position-invariance; predicted-env then removes only the room-shift component. THIS IS THE LOOP'S THIRD KIND OF NEGATIVE RESULT: 1. Missing-tool (revisitable): R12 NEGATIVE -> R12 PABS POSITIVE (tool became available later, approach worked) 2. Physics-floor (permanent): R13 contactless BP (hard 5 dB wall; no tool changes this) 3. Architecture-error (correctable): R3.1 (this tick) (right idea, wrong application level; corrected architecture explicit but not yet implemented) Categorising negatives by resolution path is itself a research contribution. Surfaces an architecture error BEFORE implementation. A future engineer attempting 'subtract predicted env from raw CSI' would waste weeks; R3.1 documents the failure path. Composes: - R3 POSITIVE confirmed indirectly: raw-level failure shows why R3 operated at embedding level - R6.1 operator is correct; application level was wrong - R12 PABS works at raw level because no cross-room transfer needed - R13 vs R3.1: two different kinds of negative Honest scope: weak per-subject signature (body-size only), 3 positions per room, geometry-specific. Richer biometric input or per-position- clustering might partially rescue raw-level but defeats the no-label spirit. Coordination: ticks/tick-20.md, no PROGRESS.md edit.
81 lines
4.2 KiB
Markdown
81 lines
4.2 KiB
Markdown
# Tick 20 — 2026-05-22 07:54 UTC
|
|
|
|
**Thread:** R3.1 (physics-informed env_sig prediction at raw-CSI level) — **NEGATIVE (architecture-error category)**
|
|
**Verdict:** The naive "subtract predicted env from raw CSI" fails at chance level. Even the labelled MERIDIAN oracle fails at raw-CSI level. The fix: apply physics-informed prediction at the **AETHER embedding level**, not raw CSI.
|
|
|
|
## What shipped
|
|
|
|
- `examples/research-sota/r3_1_physics_informed_env.py` — pure-numpy two-room cross-room experiment.
|
|
- `examples/research-sota/r3_1_physics_env_results.json` — machine-readable result.
|
|
- `docs/research/sota-2026-05-22/R3_1-physics-informed-env-prediction.md` — research note documenting the negative + corrected architecture.
|
|
|
|
## Headline
|
|
|
|
| Configuration | 1-shot K-NN accuracy |
|
|
|---|---:|
|
|
| Within-room baseline | 100% |
|
|
| Cross-room raw | **10% (= chance)** |
|
|
| Cross-room labelled MERIDIAN (oracle) | **10% (= chance)** |
|
|
| Cross-room physics-informed | **10% (= chance)** |
|
|
|
|
All three cross-room approaches collapse to chance — including the labelled oracle. Position-dependent within-room variance dominates per-subject signature at the raw-CSI level.
|
|
|
|
## Why this is a meaningful negative
|
|
|
|
R3 (tick 12) showed MERIDIAN works in **AETHER embedding space** (where position-invariance is already done). R3.1 surfaces that at **raw CSI level**, where position-invariance hasn't been done yet, no env-subtraction method works — because the variance you'd subtract isn't the variance you need to remove.
|
|
|
|
**Surfaces an architecture error before implementation.** Future engineer attempting "subtract predicted env from raw CSI" would waste weeks; R3.1 documents the failure path.
|
|
|
|
## Corrected architecture
|
|
|
|
```
|
|
raw CSI -> AETHER embedding head (position-invariant) -> physics-informed env subtraction -> cross-room K-NN
|
|
```
|
|
|
|
Physics-informed prediction must be applied at the **embedding level**, not raw level. AETHER already removes position-dependent variation; the predicted-env subtraction then has only the room-shift component to remove.
|
|
|
|
## Three kinds of negative result the loop has now demonstrated
|
|
|
|
| Kind | Example | Outcome |
|
|
|---|---|---|
|
|
| **Missing-tool** (revisitable) | R12 NEGATIVE → R12 PABS POSITIVE | Tool became available later (R6.1) and approach worked |
|
|
| **Physics-floor** (permanent) | R13 contactless BP | Hard 5 dB wall; no tool changes this |
|
|
| **Architecture-error** (correctable) | R3.1 (this tick) | Right idea, wrong application level; corrected architecture explicit but not yet implemented |
|
|
|
|
Categorising negatives by their resolution path is itself a research contribution. This is the loop's most "meta" tick.
|
|
|
|
## Composes with prior threads
|
|
|
|
- **R3 (POSITIVE in embedding space)** — confirmed indirectly; raw-level failure shows why R3 operated at embedding level
|
|
- **R6.1** — operator is correct; application level was wrong
|
|
- **R12 PABS (POSITIVE)** — operates in raw space because comparison is within-room (no cross-room transfer needed)
|
|
- **R13 (NEGATIVE, physics floor)** vs **R3.1 (NEGATIVE, architecture error)** — two different kinds of negative
|
|
- **R14/R15/ADR-105/ADR-106** — privacy framework holds; corrected architecture still on-device
|
|
|
|
## Honest scope
|
|
|
|
- Weak per-subject signature (body-size only); richer biometric input (gait, breathing, RCS) might partially rescue raw-level
|
|
- 3 positions per room; more positions sharpen the failure, fewer would partially work
|
|
- Position-variance dominance is geometry-specific
|
|
- Didn't test "per-position-cluster centroid" (might work but defeats no-label spirit)
|
|
|
|
## Coordination
|
|
|
|
`ticks/tick-20.md`. No PROGRESS.md edit. Branch `research/sota-r3.1-physics-env-prediction`.
|
|
|
|
## Remaining work
|
|
|
|
- **R3.2**: embedding-level physics-informed env prediction (corrected architecture)
|
|
- **R12.1**: pose-PABS closed loop (still highest-leverage)
|
|
- **R6.2.1**: 3D placement
|
|
- **R6.2.3**: chest-centric zones
|
|
- **ADR-107**: cross-installation federation
|
|
|
|
~4.1h to cron stop. **20 ticks landed.** Loop now has:
|
|
- 13 research threads (R1-R15)
|
|
- 3 negative results (R13 physics-floor, R3.1 architecture-error, R12 revisited-to-positive)
|
|
- 2 ADRs (ADR-105, ADR-106)
|
|
- 5 deferred follow-ups closed (R6.2, R6.2.2, R6.1, R12 PABS, R3.1)
|
|
|
|
Pattern: ~3 ticks per hour sustained over 8 hours.
|