jonathan-laurent / AlphaZero.jl

A generic, simple and fast implementation of Deepmind's AlphaZero algorithm.
https://jonathan-laurent.github.io/AlphaZero.jl/stable/
MIT License
1.23k stars 136 forks source link

question on parallel tree search #141

Open lcwd2 opened 1 year ago

lcwd2 commented 1 year ago

AGZ uses virtual loss to make the tree search threads explore different paths. What is the strategy used in AlphaZero.jl?

jonathan-laurent commented 1 year ago

AlphaZero.jl does not have multiple workers explore the same MCTS tree and therefore there is no need for a virtual loss. Instead, many games are simulated in parallel during self-play and network inference requests are batched across those.

lcwd2 commented 1 year ago

We probably still want a mechanism for matches to facilitate a large number of simulations.

jonathan-laurent commented 1 year ago

This is true and as a matter of fact, matches would be quite slow with the current implementation. This is on my TODO list though.

lcwd2 commented 1 year ago

looking forward to the new release