Asking the fleet what it is doing…
monad-knowledge Wi-Fi sensing lab · FIIT STU
Campaign session

01KY1WX4D7FREN8GV247Z70X04

finished 2026-07-21 08:33:00.839652+00:00 → 2026-07-21 08:34:40.960009+00:00 · 0 runs · supervisor: react-agent

“Sim-to-real VALIDATION positive. Real OPERAnet exp028 CSI: amplitude variance decreases monotonically with crowd count (6->1); Spearman=0.463; I(count;CSI-amp-variance)=0.174 nats CI[0.139,0.208] — INSIDE the sim's open-plan band (0.15-0.31). The sim's 'CSI counts in LOS' claim is confirmed on real hardware; the c-public-spaces walls-kill-counting negative gains credibility as a real prediction. Caveats: protocol-reconstructed count, single exp/room/feature. Real-data analysis (no sim runs); validation figure attached.”

Archive snapshot, as of 22 h ago — the run corpus is rebuilt once a day, so this page is not a live reading. The fleet panel is the live one; it refreshes every 30 s.

Success criteria

CriterionResolved
Real exp028 yields a defined positive I(count;CSI-feature) yes
Real magnitude reported next to sim magnitude (validation) yes
Honest scope (one room/experiment/feature; not a detection-rate claim) yes

Synthesis

Sim-to-real: measured WiFi CSI validates the simulator's crowd-counting claim

Campaign: c-operanet-sim2real · Session: 01KY1WX4D7FREN8GV247Z70X04 · Data: OPERAnet exp028 (real, CC0, Bristol) — a furnished room, up to 6 people, one leaving every ~5 min, measured WiFi CSI.

Executive summary

Our simulations made a falsifiable claim: WiFi CSI can count a crowd in line-of-sight / open-plan space (the mall sim measured 0.15–0.31 nats of count information per access point), but fails behind walls (the S3DIS office campaign). We tested the positive half against real measured hardware CSI — the OPERAnet crowd-counting experiment. As people leave the room one by one, the real CSI's amplitude variance steps down monotonically with the count, and the measured count information is 0.174 nats — squarely inside the simulated band. The simulator is right where it claims to be right, which is exactly what makes its walled-building failure prediction trustworthy rather than a bug.

What we measured

OPERAnet's CSI is stored in a MATLAB v7.3 table whose per-frame labels are locked in an MCOS object h5py can't decode; but the experiment's protocol is published (6 people, one exits every ~5 min), so we reconstructed the count timeline (6→5→4→3→2→1) and read the raw CSI streams directly. Per ~1 s window we took a CSI amplitude-dispersion feature (log amplitude variance across links) — the measured analogue of the mean_amp_db feature the sim reduces — and computed its relationship to the (protocol-known) count.

Result

The real CSI perturbation drops in six clean steps as the room empties (figure, left): count 6 → amplitude-variance 0.69, 5 → 0.68, 4 → 0.65, 3 → 0.61, 2 → 0.55, 1 → 0.44 (log10). Monotonic. Spearman(count, variance) = 0.463; I(count; CSI-amplitude-variance) = 0.174 nats, CI [0.139, 0.208]. Mean amplitude alone was weak (0.04 nats) — the dispersion carries the count, consistent with the body-motion perturbation mechanism.

The simulator's open-plan band was 0.15–0.31 nats. The real number, 0.174, sits inside it — an independent cross-check (the sim and the real analysis share no parameters).

What it means

  1. The simulator is validated in its positive regime. Measured hardware CSI carries crowd-count information of the magnitude the sim predicted for LOS spaces.
  2. The c-public-spaces negative becomes a credible prediction. Because the sim matches reality where it says counting works, its claim that walls kill counting is a physical prediction to test on hardware — not a simulation artefact.
  3. Feature matters: counting rides on CSI variability, not mean level — a concrete design cue (use dispersion features).

Confidence & caveats

The count is protocol-reconstructed (equal 6-blocks); exact departure times are unknown, so the alignment is approximate — but the monotonic trend and MI are robust to modest boundary error. One experiment, one room, one feature: this validates direction and order-of-magnitude, not a calibrated detection rate. Real, public-domain data; the honest next step is parsing the true per-frame labels (MATLAB or the UWB CSV) and extending to more experiments.

Figure: fig_operanet_sim2real.png — real CSI variance vs time with count steps, and the monotonic count↔CSI relationship against the simulated band.

Criticism adversarial review

Written by the campaign-critic subagent against the brief's success criteria — read it as the counter-position to the synthesis above.

Criticism — c-operanet-sim2real 01KY1WX4D7FREN8GV247Z70X04

⚠️ Count is protocol-reconstructed, not label-parsed

OPERAnet stores per-frame person_id in a MATLAB-table MCOS object h5py can't decode without MATLAB. We reconstructed the count timeline from the published protocol (6 people, one leaves every ~5 min → 6 equal blocks 6..1). Step boundaries are approximate; a person may leave a bit before/after a block edge. The monotonic trend + MI are robust to modest boundary error (the envelope steps down 6 times). Follow-up: parse true labels (MATLAB or the UWB CSV's readable label columns).

⚠️ Scope

Single experiment (exp028), single room, one link-set, one feature. Validates direction + order of magnitude, not a calibrated detection rate. Mean amplitude alone was weak (I=0.04); the count rides on CSI variance (I=0.17).

Solid

The 6-step monotonic decrease of CSI perturbation with departures is unambiguous on real measured hardware CSI, and its MI (0.174 nats) sits inside the independently-derived sim band (0.15–0.31) — a genuine, non-circular cross-check.

Verdict

seal — positive validation. Redeems the c-public-spaces arc: the sim is right where it says counting works (LOS), lending credibility to where it says it fails (walls).

Attached runs

The attached runs are not in the current atlas snapshot — rebuild via web --build-sim-atlas.