我正在编写分布式 Go/Gomoku 机器人。
基本上,重点是将树搜索分布到多台计算机上。使用像 DFS 这样的基本树搜索算法,这将非常简单,因为我可以将搜索空间划分为子树。虽然我宁愿有更高效的东西,比如带有 alpha-beta 修剪的 mini-max - 但据我所知,如果没有任何类型的共享内存,它是毫无意义的。所以我有点卡住了。
知道我可以使用哪种高效且易于分发的算法吗? 更重要的是,我在哪里可以找到它的一些(伪)代码或实现?
谢谢,
最佳答案
您需要阅读有关 Monte Carlo Tree Search 的内容,不是因为它天生就更容易分发(它既不比其他树搜索更容易也不难),而是因为它是最先进的技术,而且解决这个问题的人是致力于该算法的分布式版本。
如果您不厌其烦地编写分布式算法,没有理由从一个较小的算法开始。除非你出于教育原因制作分布式算法,在这种情况下,继续吧,在分布式基本算法的实验中会有一些深刻的教育意义,并且看到它比非分布式最先进的算法表现更差:)
请参阅 Wikipedia page on computer go 中的“最新进展”部分.
关于algorithm - 任何分布式并行树搜索算法建议?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2218744/