================================================================= BitBrain gate test - fine-grained aim correction ================================================================= fixtures : 5 tr_drussgt_vs_* (open-loop replay) power=2.0 speed=14.0 class half-range=+-40.0 deg AD: widths [6, 8, 10, 12] nAde=@[128, 256] target=1.0% passes=2 step=1 stride=3 == dataset (effective sample counts) == tr_drussgt_vs_corners.jsonl samples=2173 tr_drussgt_vs_crazy.jsonl samples=11209 tr_drussgt_vs_modularbot.jsonl samples=19548 tr_drussgt_vs_modularbot_shield.jsonl samples=12308 tr_drussgt_vs_spinbot.jsonl samples=10494 |label err| deg: mean=15.91 p50=11.55 p90=37.19 p99=51.99 max=63.16 rounds=55 samples/round=1013. == baselines (same arrival geometry, same sample set) == Pattern (zero corr) n=55732 meanPx=139.78 medPx=112.71 p90Px=299.10 meanDeg= 15.56 medDeg= 11.73 pxHit%= 7.0 angHit%= 19.1 straight-line naive n=55732 meanPx=160.17 medPx=131.57 p90Px=336.48 meanDeg= 16.01 medDeg= 12.18 pxHit%= 5.0 angHit%= 18.8 fixed corr=+0.20 deg n=55732 meanPx=139.76 medPx=112.66 p90Px=298.85 meanDeg= 15.56 medDeg= 11.74 pxHit%= 7.0 angHit%= 19.0 == label histogram (N=64) == class 0 [ -40.0, -38.8) n=2365 class 1 [ -38.8, -37.5) n=303 class 2 [ -37.5, -36.2) n=364 class 3 [ -36.2, -35.0) n=377 class 4 [ -35.0, -33.8) n=400 class 5 [ -33.8, -32.5) n=426 class 6 [ -32.5, -31.2) n=430 class 7 [ -31.2, -30.0) n=437 class 8 [ -30.0, -28.8) n=475 class 9 [ -28.8, -27.5) n=515 class 10 [ -27.5, -26.2) n=558 class 11 [ -26.2, -25.0) n=571 class 12 [ -25.0, -23.8) n=546 class 13 [ -23.8, -22.5) n=555 class 14 [ -22.5, -21.2) n=526 class 15 [ -21.2, -20.0) n=553 class 16 [ -20.0, -18.8) n=560 class 17 [ -18.8, -17.5) n=577 class 18 [ -17.5, -16.2) n=611 class 19 [ -16.2, -15.0) n=651 class 20 [ -15.0, -13.8) n=713 class 21 [ -13.8, -12.5) n=731 class 22 [ -12.5, -11.2) n=744 class 23 [ -11.2, -10.0) n=807 class 24 [ -10.0, -8.8) n=916 class 25 [ -8.8, -7.5) n=1109 class 26 [ -7.5, -6.2) n=1260 class 27 [ -6.2, -5.0) n=1362 class 28 [ -5.0, -3.8) n=1668 class 29 [ -3.8, -2.5) n=1809 class 30 [ -2.5, -1.2) n=1977 class 31 [ -1.2, +0.0) n=2155 class 32 [ +0.0, +1.2) n=2768 class 33 [ +1.2, +2.5) n=2161 class 34 [ +2.5, +3.8) n=1847 class 35 [ +3.8, +5.0) n=1721 class 36 [ +5.0, +6.2) n=1484 class 37 [ +6.2, +7.5) n=1428 class 38 [ +7.5, +8.8) n=1098 class 39 [ +8.8, +10.0) n=1004 class 40 [ +10.0, +11.2) n=893 class 41 [ +11.2, +12.5) n=852 class 42 [ +12.5, +13.8) n=727 class 43 [ +13.8, +15.0) n=705 class 44 [ +15.0, +16.2) n=712 class 45 [ +16.2, +17.5) n=669 class 46 [ +17.5, +18.8) n=629 class 47 [ +18.8, +20.0) n=587 class 48 [ +20.0, +21.2) n=571 class 49 [ +21.2, +22.5) n=597 class 50 [ +22.5, +23.8) n=528 class 51 [ +23.8, +25.0) n=520 class 52 [ +25.0, +26.2) n=489 class 53 [ +26.2, +27.5) n=490 class 54 [ +27.5, +28.8) n=486 class 55 [ +28.8, +30.0) n=456 class 56 [ +30.0, +31.2) n=432 class 57 [ +31.2, +32.5) n=470 class 58 [ +32.5, +33.8) n=423 class 59 [ +33.8, +35.0) n=431 class 60 [ +35.0, +36.2) n=399 class 61 [ +36.2, +37.5) n=384 class 62 [ +37.5, +38.8) n=332 class 63 [ +38.8, +40.0) n=2388 == AD layer (synthesised on this data, homeostasis to ~1% target) == nAde=128 pct-init: w6=0.47% w8=0.56% w10=0.66% w12=0.70% (mean=0.59%) nAde=128 +homeostasis:w6=1.20% w8=1.50% w10=1.34% w12=1.32% (mean=1.34%) nAde=256 pct-init: w6=0.37% w8=0.50% w10=0.62% w12=0.69% (mean=0.54%) nAde=256 +homeostasis:w6=1.16% w8=1.30% w10=1.31% w12=1.47% (mean=1.31%) == prequential sweep (predict-then-learn) == BitBrain wm = count-weighted mean of class centers (KEY readout) BitBrain arg = argmax class center vs Pattern / straight-line / fixed baselines above nAde=128 N=4 retained | wm n=55732 meanPx=136.93 medPx=110.25 p90Px=288.15 meanDeg= 15.25 medDeg= 11.48 pxHit%= 4.8 angHit%= 15.2 argmax | argmax n=55732 meanPx=166.79 medPx=127.55 p90Px=347.39 meanDeg= 19.33 medDeg= 13.81 pxHit%= 2.4 angHit%= 9.4 nAde=128 N=4 perRound | wm n=55732 meanPx=130.27 medPx=104.94 p90Px=270.86 meanDeg= 14.37 medDeg= 10.86 pxHit%= 4.3 angHit%= 13.7 argmax | argmax n=55732 meanPx=140.28 medPx=103.16 p90Px=299.10 meanDeg= 15.72 medDeg= 10.64 pxHit%= 3.0 angHit%= 11.6 nAde=128 N=8 retained | wm n=55732 meanPx=136.21 medPx=109.65 p90Px=287.48 meanDeg= 15.13 medDeg= 11.39 pxHit%= 4.9 angHit%= 15.1 argmax | argmax n=55732 meanPx=162.26 medPx=122.44 p90Px=349.71 meanDeg= 18.58 medDeg= 12.97 pxHit%= 3.5 angHit%= 12.9 nAde=128 N=8 perRound | wm n=55732 meanPx=128.87 medPx=103.50 p90Px=270.52 meanDeg= 14.12 medDeg= 10.51 pxHit%= 4.5 angHit%= 14.7 argmax | argmax n=55732 meanPx=134.81 medPx= 95.93 p90Px=302.68 meanDeg= 14.77 medDeg= 8.58 pxHit%= 4.7 angHit%= 17.1 nAde=128 N=16 retained | wm n=55732 meanPx=135.94 medPx=109.36 p90Px=287.13 meanDeg= 15.09 medDeg= 11.35 pxHit%= 5.4 angHit%= 15.4 argmax | argmax n=55732 meanPx=161.08 medPx=120.64 p90Px=350.87 meanDeg= 18.37 medDeg= 12.58 pxHit%= 5.0 angHit%= 16.2 nAde=128 N=16 perRound | wm n=55732 meanPx=128.78 medPx=103.42 p90Px=271.12 meanDeg= 14.08 medDeg= 10.46 pxHit%= 5.2 angHit%= 15.6 argmax | argmax n=55732 meanPx=133.72 medPx= 94.38 p90Px=304.44 meanDeg= 14.55 medDeg= 8.33 pxHit%= 6.7 angHit%= 21.7 nAde=128 N=32 retained | wm n=55732 meanPx=135.84 medPx=109.25 p90Px=286.59 meanDeg= 15.07 medDeg= 11.33 pxHit%= 5.4 angHit%= 15.6 argmax | argmax n=55732 meanPx=161.27 medPx=120.06 p90Px=352.17 meanDeg= 18.37 medDeg= 12.52 pxHit%= 5.7 angHit%= 17.6 nAde=128 N=32 perRound | wm n=55732 meanPx=128.83 medPx=103.30 p90Px=271.66 meanDeg= 14.09 medDeg= 10.44 pxHit%= 5.2 angHit%= 15.8 argmax | argmax n=55732 meanPx=133.97 medPx= 93.91 p90Px=307.63 meanDeg= 14.56 medDeg= 8.28 pxHit%= 7.5 angHit%= 23.5 nAde=128 N=64 retained | wm n=55732 meanPx=135.87 medPx=109.28 p90Px=287.03 meanDeg= 15.07 medDeg= 11.33 pxHit%= 5.5 angHit%= 15.6 argmax | argmax n=55732 meanPx=162.34 medPx=120.83 p90Px=354.80 meanDeg= 18.50 medDeg= 12.57 pxHit%= 5.8 angHit%= 17.7 nAde=128 N=64 perRound | wm n=55732 meanPx=128.97 medPx=103.37 p90Px=272.07 meanDeg= 14.10 medDeg= 10.47 pxHit%= 5.2 angHit%= 15.9 argmax | argmax n=55732 meanPx=134.67 medPx= 94.30 p90Px=309.47 meanDeg= 14.64 medDeg= 8.30 pxHit%= 7.6 angHit%= 23.6 nAde=256 N=4 retained | wm n=55732 meanPx=135.35 medPx=109.18 p90Px=284.46 meanDeg= 15.04 medDeg= 11.24 pxHit%= 4.8 angHit%= 15.0 argmax | argmax n=55732 meanPx=156.83 medPx=115.59 p90Px=331.56 meanDeg= 18.05 medDeg= 12.22 pxHit%= 2.0 angHit%= 8.5 nAde=256 N=4 perRound | wm n=55732 meanPx=126.10 medPx=101.89 p90Px=259.70 meanDeg= 13.81 medDeg= 10.37 pxHit%= 4.0 angHit%= 13.4 argmax | argmax n=55732 meanPx=133.30 medPx= 97.76 p90Px=283.16 meanDeg= 14.82 medDeg= 10.16 pxHit%= 2.6 angHit%= 10.6 nAde=256 N=8 retained | wm n=55732 meanPx=134.60 medPx=108.62 p90Px=283.12 meanDeg= 14.92 medDeg= 11.15 pxHit%= 4.9 angHit%= 15.1 argmax | argmax n=55732 meanPx=150.62 medPx=108.97 p90Px=331.24 meanDeg= 17.03 medDeg= 10.73 pxHit%= 3.6 angHit%= 13.3 nAde=256 N=8 perRound | wm n=55732 meanPx=124.78 medPx=101.15 p90Px=257.08 meanDeg= 13.58 medDeg= 10.21 pxHit%= 4.3 angHit%= 14.3 argmax | argmax n=55732 meanPx=125.60 medPx= 85.82 p90Px=287.09 meanDeg= 13.54 medDeg= 7.27 pxHit%= 4.7 angHit%= 17.6 nAde=256 N=16 retained | wm n=55732 meanPx=134.31 medPx=108.35 p90Px=282.05 meanDeg= 14.87 medDeg= 11.12 pxHit%= 5.4 angHit%= 15.5 argmax | argmax n=55732 meanPx=149.00 medPx=106.72 p90Px=332.91 meanDeg= 16.75 medDeg= 10.45 pxHit%= 5.6 angHit%= 17.9 nAde=256 N=16 perRound | wm n=55732 meanPx=124.72 medPx=101.16 p90Px=257.90 meanDeg= 13.56 medDeg= 10.21 pxHit%= 4.8 angHit%= 14.9 argmax | argmax n=55732 meanPx=124.46 medPx= 84.11 p90Px=291.12 meanDeg= 13.28 medDeg= 6.90 pxHit%= 7.3 angHit%= 23.7 nAde=256 N=32 retained | wm n=55732 meanPx=134.23 medPx=108.09 p90Px=281.94 meanDeg= 14.86 medDeg= 11.12 pxHit%= 5.3 angHit%= 15.3 argmax | argmax n=55732 meanPx=149.43 medPx=106.75 p90Px=335.62 meanDeg= 16.77 medDeg= 10.31 pxHit%= 6.5 angHit%= 19.8 nAde=256 N=32 perRound | wm n=55732 meanPx=124.95 medPx=101.33 p90Px=258.34 meanDeg= 13.58 medDeg= 10.23 pxHit%= 4.9 angHit%= 15.0 argmax | argmax n=55732 meanPx=124.62 medPx= 83.51 p90Px=293.48 meanDeg= 13.26 medDeg= 6.74 pxHit%= 8.3 angHit%= 26.1 nAde=256 N=64 retained | wm n=55732 meanPx=134.30 medPx=108.26 p90Px=282.48 meanDeg= 14.87 medDeg= 11.13 pxHit%= 5.3 angHit%= 15.2 argmax | argmax n=55732 meanPx=151.60 medPx=107.64 p90Px=341.44 meanDeg= 17.05 medDeg= 10.44 pxHit%= 6.5 angHit%= 19.9 nAde=256 N=64 perRound | wm n=55732 meanPx=125.13 medPx=101.31 p90Px=259.01 meanDeg= 13.61 medDeg= 10.21 pxHit%= 5.0 angHit%= 15.0 argmax | argmax n=55732 meanPx=125.34 medPx= 83.61 p90Px=296.28 meanDeg= 13.35 medDeg= 6.72 pxHit%= 8.5 angHit%= 26.5 == per-fixture breakdown: perRound, N=32, vs Pattern ========== tr_drussgt_vs_corners.jsonl n= 2173 Pattern n=2173 meanPx=164.76 medPx=139.78 p90Px=325.54 meanDeg= 14.40 medDeg= 10.50 pxHit%= 3.9 angHit%= 18.5 BitBrain wm n=2173 meanPx=134.00 medPx=109.26 p90Px=268.02 meanDeg= 10.33 medDeg= 7.21 pxHit%= 1.7 angHit%= 16.7 BitBrain arg n=2173 meanPx=132.64 medPx=105.90 p90Px=280.25 meanDeg= 10.16 medDeg= 5.94 pxHit%= 3.6 angHit%= 23.8 tr_drussgt_vs_crazy.jsonl n= 11209 Pattern n=11209 meanPx=126.34 medPx= 97.68 p90Px=280.34 meanDeg= 13.65 medDeg= 8.48 pxHit%= 7.3 angHit%= 25.8 BitBrain wm n=11209 meanPx=113.68 medPx= 91.36 p90Px=233.59 meanDeg= 11.90 medDeg= 8.27 pxHit%= 4.5 angHit%= 19.1 BitBrain arg n=11209 meanPx=111.95 medPx= 79.22 p90Px=248.50 meanDeg= 11.55 medDeg= 6.37 pxHit%= 5.9 angHit%= 24.6 tr_drussgt_vs_modularbot.jsonl n= 19548 Pattern n=19548 meanPx=151.80 medPx=129.09 p90Px=304.18 meanDeg= 17.21 medDeg= 14.39 pxHit%= 3.3 angHit%= 10.5 BitBrain wm n=19548 meanPx=134.78 medPx=112.25 p90Px=269.34 meanDeg= 14.89 medDeg= 12.05 pxHit%= 3.3 angHit%= 11.0 BitBrain arg n=19548 meanPx=134.46 medPx= 91.39 p90Px=312.12 meanDeg= 14.43 medDeg= 7.95 pxHit%= 7.5 angHit%= 25.1 tr_drussgt_vs_modularbot_shield.jsonl n= 12308 Pattern n=12308 meanPx=144.28 medPx=121.48 p90Px=297.04 meanDeg= 16.60 medDeg= 13.80 pxHit%= 6.6 angHit%= 14.1 BitBrain wm n=12308 meanPx=128.52 medPx=106.53 p90Px=263.24 meanDeg= 14.45 medDeg= 11.56 pxHit%= 6.9 angHit%= 14.6 BitBrain arg n=12308 meanPx=124.98 medPx= 81.72 p90Px=299.54 meanDeg= 13.56 medDeg= 6.64 pxHit%= 10.5 angHit%= 28.5 tr_drussgt_vs_spinbot.jsonl n= 10494 Pattern n=10494 meanPx=121.29 medPx= 79.94 p90Px=299.51 meanDeg= 13.55 medDeg= 6.58 pxHit%= 15.0 angHit%= 33.7 BitBrain wm n=10494 meanPx=112.59 medPx= 85.32 p90Px=248.00 meanDeg= 12.62 medDeg= 8.52 pxHit%= 6.7 angHit%= 18.4 BitBrain arg n=10494 meanPx=117.72 medPx= 72.72 p90Px=290.16 meanDeg= 13.19 medDeg= 5.80 pxHit%= 10.6 angHit%= 27.3 == compact: mean px error (lower is better) == config wm meanPx arg meanPx wm hit% arg hit% Pattern 139.78 - 7.0 - straight-line 160.17 - 5.0 - fixed corr 139.76 - 7.0 - nAde128/N4/retained 136.93 166.79 4.8 2.4 nAde128/N4/perRound 130.27 140.28 4.3 3.0 nAde128/N8/retained 136.21 162.26 4.9 3.5 nAde128/N8/perRound 128.87 134.81 4.5 4.7 nAde128/N16/retained 135.94 161.08 5.4 5.0 nAde128/N16/perRound 128.78 133.72 5.2 6.7 nAde128/N32/retained 135.84 161.27 5.4 5.7 nAde128/N32/perRound 128.83 133.97 5.2 7.5 nAde128/N64/retained 135.87 162.34 5.5 5.8 nAde128/N64/perRound 128.97 134.67 5.2 7.6 nAde256/N4/retained 135.35 156.83 4.8 2.0 nAde256/N4/perRound 126.10 133.30 4.0 2.6 nAde256/N8/retained 134.60 150.62 4.9 3.6 nAde256/N8/perRound 124.78 125.60 4.3 4.7 nAde256/N16/retained 134.31 149.00 5.4 5.6 nAde256/N16/perRound 124.72 124.46 4.8 7.3 nAde256/N32/retained 134.23 149.43 5.3 6.5 nAde256/N32/perRound 124.95 124.62 4.9 8.3 nAde256/N64/retained 134.30 151.60 5.3 6.5 nAde256/N64/perRound 125.13 125.34 5.0 8.5 == shuffled-label control (permuted labels, same input distribution) == (the weighted mean shrinks to the label mean; the argmax keeps making a confident pick, so its null is random-correction worse-than-baseline) retained shuffled mean: wm meanPx=141.51 pxHit%=5.8 arg meanPx=200.10 pxHit%=2.4 perRound shuffled mean: wm meanPx=146.74 pxHit%=4.6 arg meanPx=193.22 pxHit%=2.4