Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions WorldModel/EXPERIMENT_LEDGER.md
Original file line number Diff line number Diff line change
Expand Up @@ -307,3 +307,17 @@ Two reviewers verified the delivered synthetic A/Bs are sound (symlog threaded i
- **And it is worse than doing nothing.** Zero-action on the same episodes gives +0.034 (signal) / +0.029 (nuisance); random-action +0.046 / +0.060. Paired per-episode, planner minus zero-action is positive in **6/6** mode x seed comparisons (deltas +0.055 to +0.155, sign test p ~ 0.03), though only 1/6 individually clears |t| = 2. Same direction against random-action, 6/6.
- Decision: **KEEP node 11's decision (reject the CEM-budget lever) and REPLACE its evidence.** The lever genuinely does not work, now measured with a seed spread of +/-0.011 rather than +/-0.15. **REFRAME the open question.** Nodes 11-15 asked why the planner fails to beat chance; that framing is too generous. On the distance endpoint it is consistently worse than taking no action at all, which is not what an uninformative planner looks like — an uninformative planner scores like the zero policy. Something is systematically pointing it away from the goal.
- Next question: this is a directional defect, not a power problem, and it is cheap to localise. Candidates, in order: (a) the goal latent, already known from node 14 to sit ~70x further from the start latent than the goal displacement warrants, so the cost gradient may point almost anywhere; (b) sign or axis convention between the latent displacement and the action applied in `_step`; (c) the predictor's rollout diverging over `horizon=6` so the minimised cost is computed on a state that does not correspond to the executed trajectory. Test (b) first — it is a one-line check and would explain the sign exactly. NOTE that node 14's one-frame remedy did NOT fix control, so (a) alone is not sufficient.

## 17 — The control defect localised: the predictor under-represents the action by ~3.5x (2026-08-02, commit <pending>)
- Category: Benchmark
- Hypothesis: (node 16) the planner is worse than the zero policy, so something is systematically pointing it away from the goal. Node 16 named a sign/axis convention between the latent displacement and the action applied in `_step` as the cheapest discriminating test.
- Prediction: if a sign error exists, the displacement the planner produces is anti-correlated with the displacement it needs.
- Implementation: read `_step` and `generate` for convention; computed the EXACT reachable set (the dynamics are linear in the actions, so the reachable interval is base +/- sum of per-action-coefficient magnitudes); ran the trained planner on the fixed 200-episode set and compared needed against produced displacement; measured predictor sensitivity to action versus state in latent space and against the true env.
- Evidence:
- **The convention is consistent and there is NO sign error.** `generate` records the action that produced the transition (`_step(z, action, mode)` -> `post`), so training sees the true mapping. Measured on 200 episodes: correlation(needed displacement, produced displacement) = **+0.0375**, sign agreement **45.5%** against a 50% +/- 7% chance interval. A sign error would give strong negative correlation. **Candidate (b) from node 16 is REFUTED.**
- **The task is feasible; this is not a reachability problem.** Action authority is a half-width of **0.459** (median) against a median **0.207** to be closed, and the goal is reachable within `goal_tol` in **200/200** episodes in both modes. Uncontrolled drift is only 0.077-0.112.
- **The planner uses ~16% of the authority it has.** Mean |produced| **0.0734** against mean |needed| **0.2224** and a reachable half-width of 0.459.
- **ROOT CAUSE: the action barely exists in latent space.** Full action swing (-1 -> +1) moves the predicted latent **0.1378** while different states are **2.2613** apart — the action is **6.1%** of the state signal. In the TRUE env the same swing moves `pos` by 0.1200 against a state sd of 0.5640 — **21.3%**. The predictor therefore **under-represents the action by ~3.5x**, and in the true env actions beat drift 5.66x. There is ample control authority; it is attenuated on the way into the latent.
- Decision: **REJECT node 16's "systematically pointing it away" reframing, and REPLACE it.** The planner is not adversarial, it is uninformative — and an uninformative planner that still ACTS scores worse than the zero policy, because uncorrelated displacement added to a position increases expected distance. That fully accounts for node 16's "worse than doing nothing" with no directional defect. Node 16's claim that "an uninformative planner scores like the zero policy" was wrong: that holds only for a planner emitting zero actions. The MEASUREMENT in node 16 stands; the inference drawn from it does not.
- This also reconciles the whole nodes 6-16 arc. Every representation-side change was measured against metrics dominated by the per-trajectory factors (`chi`, `peak_amp`, `offset`), which are constants and easy to encode. `pos` — the only variable control acts on — is the one the encoder represents weakly (node 13: latent-to-position r ~ 0.63). Improving `chi` recovery while `pos` stays weakly encoded improves the panel and cannot improve control. The planner was never the bottleneck (node 11, confirmed in node 16), the objective was not the bottleneck (node 14), and the frame offset was not sufficient (node 14) — the ACTION CHANNEL is.
- Next question: this is a training-signal problem, not a planner, objective or benchmark problem. The one-step JEPA target gives the action a 6% footprint in a latent whose variance is dominated by frozen per-trajectory factors. Bounded, ordered candidates: (a) train the predictor on MULTI-STEP transitions so the action's compounded effect is visible in the target; (b) scale the action's authority per step (`DT`, or an action gain) so one step carries a larger footprint; (c) an action-conditioned auxiliary loss that requires the latent to predict the action from a (pre, post) pair — a direct measurement of how much action information the representation retains, and a candidate for the panel regardless. Test (c) FIRST: it is diagnostic rather than corrective, it needs no retraining of anything else, and it converts "the action is 6% of the signal" into a number the panel reports every run.
Loading