Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions configs/ladder/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,15 @@ You can follow these steps to create your own "CC:<arena>" ladder.
The tricky part is typically finding a large collection of human solutions for a particular arena.
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.

### Gomoku (newly added)

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

## Config layout

Each arena has a few kinds of config in this folder:
Expand Down
64 changes: 64 additions & 0 deletions configs/ladder/make_gomoku.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Round-robin over the human Gomoku bots (ported from open-source repos + a strategic starter),
# used to RANK them via Elo/Bradley-Terry -> see gomoku.yaml for the ladder.
# rounds:0 = dummy players just play the baseline Gomoku game (no code edits). Colors are randomized
# per game, so sims_per_round averages over first-move advantage. N bots -> N*(N-1)/2 pairs.
# Bots live on CodeClash-ai/Gomoku human/* branches; Docker required.
#
# COST (measured ~8-9s/game -> ~4-4.5 min/pair at sims_per_round=30; 22 bots -> 231 pairs
# ~= 16.5 core-hours; pairs are single-threaded so wall = core-hours / workers):
# * Mac 10-core (--workers 8): ~2 h * 32-core box (-w 30): ~33 min
# Matchups are decisive (frequent 30-0 sweeps), so 30 sims ranks cleanly; bump to 60 only if
# the Elo confidence intervals overlap. Keep --workers <= cores-2. Resumable (skips logged pairs).
# Run: uv run codeclash ladder make configs/ladder/make_gomoku.yaml --workers 8
tournament:
rounds: 0
game:
name: Gomoku
sims_per_round: 30
players:
- agent: dummy
branch_init: human/gomoku/blupig
- agent: dummy
branch_init: human/gomoku/canberkakcali
- agent: dummy
branch_init: human/gomoku/colingogogo
- agent: dummy
branch_init: human/gomoku/gonghailong
- agent: dummy
branch_init: human/gomoku/haslam22
- agent: dummy
branch_init: human/gomoku/hovanhoa
- agent: dummy
branch_init: human/gomoku/husus
- agent: dummy
branch_init: human/gomoku/junxiaosong_mcts
- agent: dummy
branch_init: human/gomoku/kali_hac
- agent: dummy
branch_init: human/gomoku/kevin2014123
- agent: dummy
branch_init: human/gomoku/lihongxun945
- agent: dummy
branch_init: human/gomoku/linhusp
- agent: dummy
branch_init: human/gomoku/marblexu
- agent: dummy
branch_init: human/gomoku/qwertyforce
- agent: dummy
branch_init: human/gomoku/rayfc_mcts
- agent: dummy
branch_init: human/gomoku/russell_a
- agent: dummy
branch_init: human/gomoku/smahot
- agent: dummy
branch_init: human/gomoku/tsrmkumoko
- agent: dummy
branch_init: human/gomoku/xkien2k4
- agent: dummy
branch_init: human/gomoku/zhangshun97
- agent: dummy
branch_init: human/gomoku/zitongmao
- agent: dummy
branch_init: human/muhtasham/strategic-starter
prompts:
game_description: Gomoku ladder
Loading