Skip to content

Record how the platform-height correction fakes a 31% win - #8

Merged
averagenative merged 1 commit into
mainfrom
hoops-anchor-note
Sep 1, 2026
Merged

averagenative merged 1 commit into
mainfrom
hoops-anchor-note

Conversation

@averagenative

Copy link
Copy Markdown
Owner

Follow-up to #7, numbers only, no behaviour change.

#7 concluded that a platform-height correction to shotL/shotR buys 3% on arc height at the rim and isn't worth shipping. A second session of flights has since made that conclusion stronger — and turned up the trap that nearly reversed it.

Pooling the two sessions makes the same correction look like a 31% win:

constant linear in platY change
session A (n=8) 54.7px 53.0px −3%
session B (n=7) 61.4px 75.1px +23% WORSE
pooled (n=15) 75.2px 51.8px −31%

It helps marginally in one session, hurts materially in the other, and only looks good pooled. The tell: pooling made the constant model worse than it was in either session alone (75.2 vs 54.7 and 61.4), which can only happen if pooling introduced variance neither session had. The extra free parameter absorbs that, and leave-one-out rewards it for absorbing an artefact rather than for predicting anything.

There's no real drift to model either — per session the parameters agree to within 0.21 of a standard deviation, so calibration carries across sessions fine.

This exists so the next person who notices the platform-height correlation (it's strong, and it replicates at −0.78) doesn't pool their sessions, see 31%, and ship it.

The merged note says a platform-height correction to shotL/shotR buys
3% on arc height at the rim and is not worth shipping. A second session
of flights has since made that conclusion much stronger, and turned up
the trap that nearly reversed it.

Pooling the two sessions makes the same correction look like a 31% win,
75.2px down to 51.8px. Split by session:

  session A (n=8)    54.7px -> 53.0px    -3%
  session B (n=7)    61.4px -> 75.1px   +23%   WORSE
  pooled   (n=15)    75.2px -> 51.8px   -31%

It helps marginally in one session, hurts materially in the other, and
only looks good pooled. The tell is that pooling made the CONSTANT model
worse than it was in either session alone, which can only happen if
pooling introduced variance neither session had; the extra free
parameter then absorbs it and leave-one-out rewards it for that rather
than for predicting anything.

There is no real drift to absorb either: per session the parameters
agree to within .21 of a standard deviation, so calibration does carry
across sessions and the pooled variance was not a genuine offset.

No behaviour change. This exists so the next person who notices the
platform-height correlation -- it is strong, and it replicates -- does
not pool their sessions, see 31%, and ship it.
@averagenative
averagenative merged commit 0eb432e into main Sep 1, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant