Artificial intelligence 创建类似AI的GO-可能使用minimax算法?

Artificial intelligence 创建类似AI的GO-可能使用minimax算法?,artificial-intelligence,minimax,Artificial Intelligence,Minimax,所以我想做一个类似于GO的游戏。基本上,我有一个网格的脸,当你点击一张脸,他们会变成你各自的颜色(红色和蓝色)。你和你的对手轮流点击人脸,给他们涂上各自的颜色。当任意数量的面被颜色完全相同的面包围时,所有被包围的面都将从棋盘上删除,删除的数字将作为分数添加到被包围颜色的玩家。如果你用相同的颜色轻拍一张脸两次(所以红色的脸再次被红色轻拍),那么它会在脸周围的脸上留下残留,这样残留的脸就不会变成其他颜色,而不是残留的颜色。现在我希望我能得到一个稍微工作的AI,它不一定非得令人惊异或其他什么,只要足够

所以我想做一个类似于GO的游戏。基本上,我有一个网格的脸,当你点击一张脸,他们会变成你各自的颜色(红色和蓝色)。你和你的对手轮流点击人脸,给他们涂上各自的颜色。当任意数量的面被颜色完全相同的面包围时,所有被包围的面都将从棋盘上删除,删除的数字将作为分数添加到被包围颜色的玩家。如果你用相同的颜色轻拍一张脸两次(所以红色的脸再次被红色轻拍),那么它会在脸周围的脸上留下残留,这样残留的脸就不会变成其他颜色,而不是残留的颜色。现在我希望我能得到一个稍微工作的AI,它不一定非得令人惊异或其他什么,只要足够好,可以做出相当聪明的动作,而且可能会赢。在做了一些研究之后,似乎使用MiniMax算法是我的最佳选择,但我不知道如何在unity中创建这样一个东西。我希望有人对如何实现这一点有一些见解,或者有人对一种算法有更好的想法,可以更好地确定移动


谢谢你的帮助

然而,这是一个非常广泛的问题——棋盘游戏AI(尤其是围棋)最成功的方法之一是基于UCT的方法。这是一个蒙特卡罗驱动的启发式近似最小最大算法。MinMax要求游戏的状态空间非常小,以适应内存和时间限制。另一方面,UCT可以在任何给定的时间内进行合理的移动(它是完全迭代的)