Skip to content

Commit 6321837

Browse files
authored
Add Gomoku CC:Ladder (21 imported human bots + build tooling) (#114)
- 21 open-source Gomoku bots imported to CodeClash-ai/Gomoku human/gomoku/* branches (source of truth, not committed here): pure-Python minimax/MCTS/threat-search bots + JS/Java/C++ engines (lihongxun945, blackstone, blupig, ...) reimplemented in stdlib Python, each wrapped into the arena's single-file get_move(board, color) contract. Each validated 2-stage (local get_move legality + real engine.py games vs a reference). AlphaZero/CNN bots skipped (weights); zhoukangyang deferred (NN-substitute, not faithful). - configs/ablations/ladder/make_gomoku.yaml: round-robin (30 sims) for Elo ranking; README note. - scripts/ladder/: build tooling adapted to Gomoku (porting guide, validators, smoke/push scripts, RUN.md, reference bot); ports/ regenerated, not committed. Arena was already wired.
1 parent 9ec20b9 commit 6321837

2 files changed

Lines changed: 73 additions & 0 deletions

File tree

configs/ladder/README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,15 @@ You can follow these steps to create your own "CC:<arena>" ladder.
1212
The tricky part is typically finding a large collection of human solutions for a particular arena.
1313
We've typically found that googling for online leaderboards or awesome-<arena> repositories (e.g. [BattleSnake](https://github.com/BattlesnakeOfficial/awesome-battlesnake)) is a good strategy.
1414

15+
### Gomoku (newly added)
16+
17+
The [CC:Gomoku](https://github.com/CodeClash-ai/Gomoku) repo hosts the human bots on `human/*`
18+
branches (like the other arenas, bot code lives only on the branches, not in this repo): 21
19+
open-source Gomoku/Gobang AIs ported into the arena's single-file `get_move(board, color)` contract
20+
— pure-Python minimax/MCTS/threat-search bots imported directly, plus JS/Java/C++ engines (e.g.
21+
lihongxun945, blackstone, blupig) reimplemented in stdlib Python — alongside a strategic starter.
22+
AlphaZero/CNN bots were skipped (need trained weights).
23+
1524
## Config layout
1625

1726
Each arena has a few kinds of config in this folder:

configs/ladder/make_gomoku.yaml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Round-robin over the human Gomoku bots (ported from open-source repos + a strategic starter),
2+
# used to RANK them via Elo/Bradley-Terry -> see gomoku.yaml for the ladder.
3+
# rounds:0 = dummy players just play the baseline Gomoku game (no code edits). Colors are randomized
4+
# per game, so sims_per_round averages over first-move advantage. N bots -> N*(N-1)/2 pairs.
5+
# Bots live on CodeClash-ai/Gomoku human/* branches; Docker required.
6+
#
7+
# COST (measured ~8-9s/game -> ~4-4.5 min/pair at sims_per_round=30; 22 bots -> 231 pairs
8+
# ~= 16.5 core-hours; pairs are single-threaded so wall = core-hours / workers):
9+
# * Mac 10-core (--workers 8): ~2 h * 32-core box (-w 30): ~33 min
10+
# Matchups are decisive (frequent 30-0 sweeps), so 30 sims ranks cleanly; bump to 60 only if
11+
# the Elo confidence intervals overlap. Keep --workers <= cores-2. Resumable (skips logged pairs).
12+
# Run: uv run codeclash ladder make configs/ladder/make_gomoku.yaml --workers 8
13+
tournament:
14+
rounds: 0
15+
game:
16+
name: Gomoku
17+
sims_per_round: 30
18+
players:
19+
- agent: dummy
20+
branch_init: human/gomoku/blupig
21+
- agent: dummy
22+
branch_init: human/gomoku/canberkakcali
23+
- agent: dummy
24+
branch_init: human/gomoku/colingogogo
25+
- agent: dummy
26+
branch_init: human/gomoku/gonghailong
27+
- agent: dummy
28+
branch_init: human/gomoku/haslam22
29+
- agent: dummy
30+
branch_init: human/gomoku/hovanhoa
31+
- agent: dummy
32+
branch_init: human/gomoku/husus
33+
- agent: dummy
34+
branch_init: human/gomoku/junxiaosong_mcts
35+
- agent: dummy
36+
branch_init: human/gomoku/kali_hac
37+
- agent: dummy
38+
branch_init: human/gomoku/kevin2014123
39+
- agent: dummy
40+
branch_init: human/gomoku/lihongxun945
41+
- agent: dummy
42+
branch_init: human/gomoku/linhusp
43+
- agent: dummy
44+
branch_init: human/gomoku/marblexu
45+
- agent: dummy
46+
branch_init: human/gomoku/qwertyforce
47+
- agent: dummy
48+
branch_init: human/gomoku/rayfc_mcts
49+
- agent: dummy
50+
branch_init: human/gomoku/russell_a
51+
- agent: dummy
52+
branch_init: human/gomoku/smahot
53+
- agent: dummy
54+
branch_init: human/gomoku/tsrmkumoko
55+
- agent: dummy
56+
branch_init: human/gomoku/xkien2k4
57+
- agent: dummy
58+
branch_init: human/gomoku/zhangshun97
59+
- agent: dummy
60+
branch_init: human/gomoku/zitongmao
61+
- agent: dummy
62+
branch_init: human/muhtasham/strategic-starter
63+
prompts:
64+
game_description: Gomoku ladder

0 commit comments

Comments
 (0)