蒙特卡罗树搜索
穷举的方案会形成一个树形地图,为计算机围棋博弈而发明的树形地图叫作蒙特卡罗树搜索(Monte Carlo Tree Search,简称 MCTS)。大致的原理是:通过统计大量的蒙特卡罗抽样结果,来选择较好的走法。
蒙特卡罗算法是对一类随机算法的特性的概括,它诞生于上个世纪 40 年代美国的 “曼哈顿计划”,名字来源于赌城蒙特卡罗,象征着“概率”。
知乎用户苏椰举了个例子帮助我们理解蒙特卡罗算法:
假如筐里有 100 个苹果,让我每次闭眼拿 1 个,挑出最大的。于是我随机拿 1 个,再随机拿 1 个跟它比,留下大的,再随机拿 1 个…… 我每拿一次,留下的苹果都至少不比上次的小。拿的次数越多,挑出的苹果就越大,但我除非拿 100 次,否则无法肯定挑出了最大的。这个挑苹果的算法,就属于蒙特卡罗算法——尽量找好的,但不保证是最好的。

(蒙特卡罗树搜索算法的构建过程)
然而,围棋实在太复杂了。国际象棋中,平均每回合有 35 种可能,一盘棋可以有 80 回合;而围棋每回合有 250 种可能,一盘棋可以长达 150 回合。
国际象棋 AI 可以通过穷举法战胜人类,而围棋 AI 只依靠蒙特卡罗树搜索进行穷举法的话,效率非常慢。