Records
OLSS-II with a one-strategy portfolio against full KLUSS at the 50 ms budget
Registration 2436cdbe-9447-4d1a-90d3-e85b8da1393d (study subgame-solving/opponent-portfolio), run 2026-09-19 on AMD Ryzen AI Max (Strix Halo), 32 threads, 125 GB unified memory, Radeon 8060S via ROCm, Linux 6.18. Server commit e3107a0, research commit 9588223 (registration files as committed; this record added afterwards). Other agents shared the machine during the run; per-seed results are deterministic regardless of load.
Command:
cd server && cargo run --release -p armies-arena --bin matchup -- --red 'olss2 n1 50ms=kluss:{"mode":"olss2","samples":64,"expansions":5000,"cfr_every":64,"portfolio":[{"policy":"greedy"}]}' --blue 'kluss 50ms=kluss:{"samples":64,"shadows":4,"expansions":2500,"cfr_every":64}' --games 200 --seed 0 --rules training --threads 8 --record-dir ../research/runs/2436cdbe-9447-4d1a-90d3-e85b8da1393d/records --out ../research/runs/2436cdbe-9447-4d1a-90d3-e85b8da1393d/matchup.json --tag 2436cdbe-9447-4d1a-90d3-e85b8da1393d
cd research && python3 scripts/paired_contrast.py runs/2436cdbe-9447-4d1a-90d3-e85b8da1393d/matchup.json
| Player | Wins | Draws | Losses | Effective | 95% Wilson | Mean plies | ms/move |
|---|---|---|---|---|---|---|---|
| olss2 N=1 (greedy portfolio, 5,000 expansions) | 122 | 0 | 78 | 0.610 | 0.541 to 0.675 | 182 | 115.659 |
| kluss (2,500 expansions) | 78 | 0 | 122 | 0.390 | 0.325 to 0.459 | 182 | 138.053 |
| ending: flag_captured | 191 | ||||||
| ending: no_moves | 9 |
Per-seed paired contrast for the olss2 player (score as Red plus score as Blue minus one): mean 0.220, 95% normal interval 0.066 to 0.374 over 100 seeds (44 positive, 34 split, 22 negative). The olss2 player won 76 games as Red and 46 as Blue. Wall time 593 s on 8 threads. Time per move is as played in the arena under load; the calibration bench (single thread, middlegame positions, other jobs sharing the machine) read 48 ms for the olss2 side at 5,000 expansions and 58 ms for kluss at 2,500.
Decision rule
The hypothesis (olss2 with one opponent strategy beats full kluss at 50 ms) is supported: the contrast interval 0.066 to 0.374 lies entirely above zero.
Provenance
Archived JSON: runs/2436cdbe-9447-4d1a-90d3-e85b8da1393d/matchup.json (SHA-256 e83768707dc32bb76805e6ebce65296d9b53984e096fa59e0b5e8b544d0145eb), with per-game moves in the arena record files under the same directory. Games planned 200, attempted 200, completed 200, interrupted 0. No deviation from the registration.