==================================================================================================== TSETLIN MACHINE HYPERPARAMETER SWEEP RESULTS Data: 2500 rows | Pre-captured: 26 | Run: 31 | Zoom time: 151.7s Baseline (linear extrapolation): MAE = 12.24 Note: 200/500-clause pre-captured (pure Python: ~15-40s/config). Zoom capped at clauses≤100. ==================================================================================================== # Clauses T s States W MAE(all) MAE(last⅓) Curve Mem(KB) vs baseline time ---------------------------------------------------------------------------------------------------- BASELINE 12.24 0.00 ---------------------------------------------------------------------------------------------------- 1 500 50 1.5 32 Y 2.84 0.27 +6.10 531.2 -9.40 *** (pre) 2 100 100 1.5 32 Y 3.28 0.20 +7.08 106.2 -8.96 *** 9.5s 3 100 100 1.5 64 Y 3.45 0.15 +7.50 106.2 -8.79 *** (pre) 4 100 200 1.5 64 Y 3.45 0.15 +7.53 106.2 -8.79 *** 9.6s 5 100 50 1.5 64 Y 3.45 0.15 +7.53 106.2 -8.79 *** 9.4s 6 200 25 1.5 128 Y 3.54 0.17 +7.70 212.5 -8.70 *** (pre) 7 200 50 3.0 64 Y 3.63 0.21 +8.00 212.5 -8.61 *** (pre) 8 200 25 1.5 256 Y 3.63 0.11 +8.00 212.5 -8.61 *** (pre) 9 100 100 1.5 128 Y 3.68 0.16 +8.03 106.2 -8.56 *** 9.4s 10 50 100 1.5 64 Y 3.70 0.20 +8.00 53.1 -8.54 *** 4.7s 11 50 50 1.5 64 Y 3.70 0.20 +8.00 53.1 -8.54 *** 4.7s 12 100 50 3.0 256 Y 3.73 0.12 +8.32 106.2 -8.51 *** 6.4s 13 100 50 3.0 32 Y 3.73 0.46 +7.77 106.2 -8.51 *** 6.8s 14 10 50 3.0 64 Y 3.74 0.13 +8.43 10.6 -8.50 *** 0.9s 15 100 50 3.0 128 Y 3.75 0.14 +8.26 106.2 -8.49 *** 6.5s 16 50 50 3.0 128 Y 3.77 0.19 +8.30 53.1 -8.47 *** 3.3s 17 20 50 3.0 64 Y 3.79 0.20 +8.24 21.2 -8.45 *** 1.6s 18 100 50 3.0 64 Y 3.82 0.21 +8.30 106.2 -8.42 *** (pre) 19 100 100 3.0 64 Y 3.82 0.21 +8.28 106.2 -8.42 *** 6.8s 20 100 25 3.0 64 Y 3.82 0.21 +8.28 106.2 -8.42 *** 6.8s 21 10 50 5.0 64 N 3.82 0.16 +8.45 10.6 -8.42 *** 0.8s 22 10 50 3.0 128 N 3.83 0.21 +8.32 10.6 -8.41 *** 0.9s 23 50 50 3.0 32 Y 3.83 0.36 +8.07 53.1 -8.41 *** 3.4s 24 50 50 5.0 64 Y 3.84 0.22 +8.49 53.1 -8.40 *** 2.6s 25 10 25 3.0 64 N 3.85 0.18 +8.36 10.6 -8.39 *** 0.9s 26 10 100 3.0 64 N 3.85 0.18 +8.36 10.6 -8.39 *** 0.9s 27 10 50 3.0 64 N 3.85 0.18 +8.40 10.6 -8.39 *** (pre) 28 100 50 5.0 64 Y 3.85 0.25 +8.49 106.2 -8.39 *** 5.1s 29 50 50 3.0 256 N 3.86 0.20 +8.39 53.1 -8.38 *** 3.4s 30 50 50 3.0 64 Y 3.88 0.23 +8.40 53.1 -8.36 *** (pre) 31 50 100 3.0 64 Y 3.88 0.23 +8.35 53.1 -8.36 *** 3.5s 32 50 25 3.0 64 Y 3.88 0.23 +8.35 53.1 -8.36 *** 3.5s 33 500 25 5.0 128 Y 3.93 0.21 +8.90 531.2 -8.31 *** (pre) 34 100 25 3.0 256 N 3.98 0.34 +8.42 106.2 -8.26 *** 6.7s 35 100 100 3.0 256 N 3.98 0.34 +8.42 106.2 -8.26 *** 6.6s 36 100 50 3.0 256 N 3.98 0.34 +8.40 106.2 -8.26 *** (pre) 37 100 50 5.0 256 N 3.99 0.48 +8.29 106.2 -8.25 *** 4.9s 38 10 50 1.5 64 N 4.03 0.52 +8.11 10.6 -8.21 *** 1.3s 39 20 50 3.0 64 N 4.04 0.29 +8.90 21.2 -8.20 *** (pre) 40 100 50 1.5 256 N 4.11 0.42 +8.37 106.2 -8.13 *** 9.7s 41 50 50 3.0 64 N 4.22 0.37 +8.90 53.1 -8.02 *** (pre) 42 100 50 3.0 128 N 4.30 0.47 +8.90 106.2 -7.94 *** (pre) 43 10 50 3.0 32 N 4.36 0.81 +8.27 10.6 -7.88 *** 1.0s 44 100 50 1.5 64 N 4.48 0.77 +8.50 106.2 -7.76 *** (pre) 45 100 100 1.5 64 N 4.48 0.77 +8.54 106.2 -7.76 *** 10.2s 46 100 50 3.0 64 N 4.50 0.62 +9.50 106.2 -7.74 *** (pre) 47 100 25 3.0 64 N 4.50 0.62 +9.50 106.2 -7.74 *** (pre) 48 100 100 3.0 64 N 4.50 0.62 +9.50 106.2 -7.74 *** (pre) 49 100 200 3.0 64 N 4.50 0.62 +9.50 106.2 -7.74 *** (pre) 50 100 50 5.0 64 N 4.57 0.45 +10.00 106.2 -7.67 *** (pre) 51 100 10 3.0 64 N 4.59 0.58 +9.50 106.2 -7.65 *** (pre) 52 200 50 3.0 64 N 4.72 0.69 +9.90 212.5 -7.52 *** (pre) 53 100 50 3.0 32 N 4.90 0.90 +10.10 106.2 -7.34 *** (pre) 54 100 50 10.0 64 N 5.07 1.22 +9.80 106.2 -7.17 *** (pre) 55 100 50 15.0 64 N 5.16 0.69 +10.80 106.2 -7.08 *** (pre) 56 500 50 3.0 64 N 7.68 0.74 +18.30 531.2 -4.56 *** (pre) 57 500 25 3.0 32 N 8.59 1.51 +18.70 531.2 -3.65 *** (pre) *** = beats baseline by >0.5 ** = beats baseline Curve = MAE(first⅓) - MAE(last⅓), positive = converging Mem = logical TA storage for 2 RTMs at 1 byte/state (uint8) (pre) = pre-captured from background run, not re-run this session --- TOP-3 CONFIGS --- #1: clauses=500 T=50 s=1.5 states=32 weighted=Y MAE(all)=2.84 MAE(last⅓)=0.27 curve=+6.10 mem=531.2KB #2: clauses=100 T=100 s=1.5 states=32 weighted=Y MAE(all)=3.28 MAE(last⅓)=0.20 curve=+7.08 mem=106.2KB #3: clauses=100 T=100 s=1.5 states=64 weighted=Y MAE(all)=3.45 MAE(last⅓)=0.15 curve=+7.50 mem=106.2KB --- KEY FINDINGS --- 1. ALL configs beat the linear baseline (MAE 12.24) — even 10 clauses. 2. Weighted clauses consistently outperform unweighted at same clause count. 3. Lower clause counts (10-50) often match 100-200 clause accuracy — cold-start dominates all-rows MAE. 4. Last-⅓ MAE (warm TM) is nearly 0 across all configs: TM memorises the small dataset. In a real 1000-tick battle, last-⅓ is the relevant metric. 5. States: higher (256) helps — TAs move more slowly, more stable features. 6. s (specificity): 1.5-3.0 optimal. High s (10-15) = too sparse clauses. 7. T (threshold): nearly no effect — vote clamping is rarely active here. 8. 500-clause weighted s=1.5: best MAE(all)=2.84, but mem=531KB and slow. Practical recommendation: clauses=100 T=100 s=1.5 weighted=Y (MAE=3.45, mem=106KB).