gpt4 book ai didi

c# - Pentago AI算法如何实现

转载 作者:行者123 更新时间:2023-11-30 17:19:50 25 4
gpt4 key购买 nike

我正在尝试用 C# 开发 Pentago-game。

现在我有 2 个玩家模式,工作得很好。

问题是,我想要一个玩家模式(针对计算机),但不幸的是,minimax/negamax 的所有实现都是针对每个“移动”计算的一个事物”(放置大理石,移动棋子)。

但是在 Pentago 中,每个玩家都需要做两件事(放置弹珠,并旋转其中一个内板)

我不知道如何实现旋转部分和放置弹珠,我希望有人能指导我。

如果你不熟悉这个游戏,这里有一个 link到游戏中。

如果有人需要,我可以将我的代码上传到相关的地方。

非常感谢您

最佳答案

如果一个合法的移动包含两个子移动,那么您的游戏算法目的“移动”只是一个元组,其中第一项是弹珠放置,第二项是棋盘旋转,例如:

var marbleMove = new MarbleMove(fromRow, fromCol, toRow, toCol);
var boardRotation = new BoardRotation(subBoard, rotationDirection);
var move = new Tuple<MarblMove, BoardRotation>(marbleMove, boardRotation);

通常,玩游戏的算法会要求您枚举给定位置的所有可能移动。在这种情况下,您必须枚举子移动的所有可能对。有了这份 list ,您就可以继续使用站立式电脑游戏方法。

关于c# - Pentago AI算法如何实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4564936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com