Back to browse
GitHub Repository

A lightweight and modular Gumbel MCTS implementation

6 starsPython

Gumbel-mcts, a high-performance Gumbel MCTS implementation

by whiplash451·Mar 19, 2026·1 point·0 comments

AI Analysis

●●SolidNiche GemBig Brain

Validated 2-15X speedup over Alpha Zero baseline with identical policy output.

Strengths
  • Gold-standard validation against michaelnny/alpha_zero reference implementation ensures correctness.
  • Sparse Gumbel variant handles large action spaces like chess where dense fails.
  • Numba acceleration delivers hundreds of thousands of simulations per second.
Weaknesses
  • Python/numba limits deployment compared to C++ alternatives like libtorch.
  • Niche audience—only matters if you're already training game-playing agents.
Category
Target Audience

ML researchers building game AI or reinforcement learning systems

Similar To

AlphaZero · MuZero · Leela Chess Zero

Post Description

Hi folks,

Over the past few months, I built an efficient MCTS implementation in Python/numba.

As I was building a self-play environment from scratch (for learning purposes), I realized that there were few efficient implementation of this algorithm.

I spent a lot of time validating it against a golden standard baseline [1].

My PUCT implementation is 2-15X faster than the baseline while providing the exact same policy.

I also implemented a Gumbel MCTS, both dense and sparse. The sparse version is useful for games with large action spaces such as chess.

Gumbel makes much better usage of low simulation budgets than PUCT.

Overall, I think this could be useful for the community. I used coding agents to help me along the way, but spent a significant amount of manual work to validate everything myself.

Feedback welcome.

[1] https://github.com/michaelnny/alpha_zero/blob/main/alpha_zer...

Similar Projects

SVO Voxelization for Gaussian Splat Collisions

Using an SVO to voxelize Gaussian splats is a sensible way to prune overlap checks — hierarchical voxels fit the problem and should cut costly pairwise collisions. Can't judge the execution: the Reddit thread is blocked with no visible code, benchmarks, or demos, so this currently reads like an intriguing sketch rather than a drop-in tool.

Niche GemWizardry
slimbuck
503mo ago