0

我受到同事的挑战,要求我创建一个井字游戏 AI,它可以玩 5 人游戏(不是传统的 3 人游戏)。我最初的想法是我创建了一个“记分牌”,即游戏中的每个单元格的分数都在 0 和无穷大之间。AI 会找到形状并确定哪些位置具有多少价值并为单元格打分。最后,得分最高的细胞是选择。

有没有更好的方法来解决这个问题?

4

1 回答 1

1

5x5井字游戏可能仍然足够小,可以直接解决,这取决于您的时间限制,如果您对棋盘对称性很了解的话。奇怪的是,我昨晚刚刚为这个问题写了一个通用技术的描述:

如何为 Windows Phone 棋盘游戏编写简单的 AI?

如果没有,那仍然是一个很好的起点。对我来说,下一个最明显的事情是更改董事会评估功能,并在您的时间限制内尽可能深入地搜索树。这个想法是,作为一个人,你可能对什么是强项和弱点有一些想法。因此,作为猜测,我们知道连续五次获胜,因此将 X 获胜指定为 +5,O 获胜指定为 -5。获胜的一种方法是在此之前连续获得四个,因此如果 X 连续四个,则可能值 4,如果 O 连续四个,则可能值 -4。这个想法是,如果你不能一直沿着树搜索,你可以使用极小极大技术尽可能地搜索,确信你正在朝着强大的位置努力。

该板评估功能只是一个示例。想出一个好的电路板评估功能可能很棘手,而且我所描述的功能遗漏了一些明显的细节。

另一件要尝试的事情是使用遗传算法和神经网络来进化棋盘评估功能。现在的想法是将棋盘位置输入神经网络,神经网络进行棋盘评估,并让它们根据我上面描述的技术,锦标赛风格进行游戏。然后,在锦标赛回合之后,从获胜者和失败者中创建新的神经网络(通过遗传算法)。董事会评估功能自然演变。

于 2012-02-22T14:35:48.943 回答