Massively Parallel Proof-Number Search for Impartial Games and Beyond
Tom\'a\v{s} \v{C}\'i\v{z}ek, Martin Balko, Martin Schmid

TL;DR
This paper introduces a massively parallel proof-number search algorithm that scales efficiently on many CPUs, significantly improving game-solving capabilities and verifying new positions in the Sprouts game, thus advancing computational game theory.
Contribution
The paper presents the first scalable parallel proof-number search algorithm for large CPU clusters, incorporating Grundy numbers for impartial games, and demonstrates its effectiveness on the Sprouts game.
Findings
Achieved 332.9× speedup on 1024 cores.
Outperformed the previous Sprouts solver GLOP by four orders of magnitude.
Verified 42 new Sprouts positions, nearly doubling known outcomes.
Abstract
Proof-Number Search is a best-first search algorithm with many successful applications, especially in game solving. As large-scale computing clusters become increasingly accessible, parallelization is a natural way to accelerate computation. However, existing parallel versions of Proof-Number Search are known to scale poorly on many CPU cores. Using two parallelized levels and shared information among workers, we present the first massively parallel version of Proof-Number Search that scales efficiently even on a large number of CPUs. We apply our solver, enhanced with Grundy numbers for reducing game trees of impartial games, to the Sprouts game, a case study motivated by the long-standing Sprouts Conjecture. Our algorithm achieves 332.9 speedup on 1024 cores, significantly improving previous parallelizations and outperforming the state-of-the-art Sprouts solver GLOP by four…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
Taxonomy
TopicsArtificial Intelligence in Games · Logic, programming, and type systems · Polynomial and algebraic computation
