Speed up the simulator 5-7x with identical games (6.10)

Precompute board adjacency and square sets, look up opponents once per
move, and cache walks that exclude only the start square. Every game is
unchanged for the same seed, checked with agents/scripts/fingerprint_games.py.
Plan: skip catch-up 6.9 (D44), stop running the random lineup (D45).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-27 17:02:53 +02:00
parent bbc95b6722
commit 0ca905eb71
8 changed files with 180 additions and 19 deletions
+1 -1
View File
@@ -42,7 +42,7 @@ rotates one seat per game. Bots: `random`, `casual`, `balanced`, `farmer`, `aggr
```sh
uv run dojo sim # 4 players, current rules, 200 games
uv run dojo sim --games 1000 --csv games.csv # more games; one CSV row per game
uv run dojo sim --lineup casual random --summary-csv s.csv # one CSV row per scenario
uv run dojo sim --lineup casual balanced --summary-csv s.csv # one CSV row per scenario
uv run dojo sim --exam c none a ac # Final Exam options in force (rules: c), combinable
uv run dojo sim --players 3 4 6 8 --start 0 3 # player counts x start position
uv run dojo sim --kiai 2 1 # Kiai +2 vs +1