这是我一直在玩弄一个星期左右的问题,提出了通过同事:算法的策略游戏
试想一个游戏一个 36x36 grid播放。游戏的目标是创建任意大小的正方形的四个角(例如,2x2,3x3,4x4等)。第一位玩家在除了中心四个网格空间之外的任何地方放置游戏。第一步之后,玩家可以将他们的游戏片放在网格的任何位置。游戏片段放置后无法移动。就是这样;游戏简单而有趣。
我一直在想出一个算法来赢得比赛,或者至少在这场比赛中表现不错。有什么建议么?
这是我一直在玩弄一个星期左右的问题,提出了通过同事:算法的策略游戏
试想一个游戏一个 36x36 grid播放。游戏的目标是创建任意大小的正方形的四个角(例如,2x2,3x3,4x4等)。第一位玩家在除了中心四个网格空间之外的任何地方放置游戏。第一步之后,玩家可以将他们的游戏片放在网格的任何位置。游戏片段放置后无法移动。就是这样;游戏简单而有趣。
我一直在想出一个算法来赢得比赛,或者至少在这场比赛中表现不错。有什么建议么?
这是一个完美信息的游戏,玩家轮流使用象棋,所以国际象棋引擎中使用的相同方法适用于此。使用minimax(可能有alpha-beta pruning)算法来搜索有效移动的树。您可以使用一些评估函数来指导您的搜索,并倾向于拥有最接近完成方格的职位。
好吧我正在阅读垃圾进入游戏..作为它的含糊.. 我假设这个游戏类似于“点和线”,其中移动空间是用一条线连接2个相邻的点。所以2x2网格将有9个顶点,4个1x1胜出位置和1个2x2胜出位置。随着比赛结束,对于完成正方形的人而言,双方的球员都会耗尽可怕的解决方案。
因为你的工作广场的一些逻辑很好。你可以计算任何行的成员资格到所有可能的框。所以在2x2的例子中,一个辐射会有2个1x1的盒子的成员资格,而一个边会有一个1x1和一个2x2的成员资格。这个成员变得很重要。
在游戏开始时,您会为所有线段生成所有成员资格。使2副本(如打战舰)ENEMY COPY将被启动到他已经离开的圈数以完成每个箱子..等36x36将会有144个动作离开完成大箱子 4套140moves来完成4个35x35的盒子
在他的移动过程中,你减少了敌人的所有受影响的盒子 在你移动的任何移动过程中,你使所有包含移动的盒子失效。你设置这些为负1,或无限或20亿......只是要知道这些方块是不可能的。
你现在创建一个反敌方副本,它是敌方副本的反面..这包含完成一个给定方块的移动次数。
对于给定的举动..首先检查赢的情况。如果你能移动并赢得胜利。 (与一个正方形对抗) 然后检查是否需要一个块。 (与任何一个敌人方板),如果你这样的倾向
现在增加一个极小型功能..
或使用搜索发现,摧毁许多小正方形完成尽可能的位置,或创建一个行这可以减少反敌方板上的多个低方格。这应该是合理的,因为它不是试图完成任何特定的广场,而是一个极小的极端,在这两个场合你的低分都会是一个更好的场景。
和FogleBird一样写了Minimax算法效果最好。问题是如何评估当前董事会的得分。这场比赛非常复杂,有超过一千个场地开始。在像井字游戏这样的小游戏中,您可以计算所有可能的移动,直到搜索树的最小极限(minimax)结束为止,然后给予1分给胜出玩家,-1给失败并回溯树,找到最佳移动。在这个游戏中,你需要某种heuristic来计算三个10步之后的棋盘得分。
我没有关于游戏的很多信息,所以我只能猜测不错的启发式:因为完成平方
有很多启发式可能,大多数时候你需要混合其中的一些。
您是否需要填充广场或将其放置在角落?
例如,下面是一个胜利?
.......................
.X..X..................
.......................
.......................
.X..X..................
.......................
或以下?
.......................
.XXXX..................
.X..X..................
.X..X..................
.XXXX..................
.......................
或以下?
.......................
.XXXX..................
.XXXX..................
.XXXX..................
.XXXX..................
.......................
我一定会希望如此,因为在第一场比赛中很容易赢得胜利 – 2010-01-29 00:43:29
这三者中的任何一个都将构成胜利 – Gideon 2010-01-30 04:39:58
我认为你只需要在广场角落有棋子赢得胜利,并且你不能在对手已经移动的空间中移动?广场必须与轴线对齐,还是45度角的方格才能赢得比赛? – 2010-01-28 02:02:46
1x1也是一个正方形,尽管如此,如果你第一次参加游戏,游戏会很容易赢得:-) – paxdiablo 2010-01-28 02:04:52
为了继续Jason的问题,什么构成了“任何大小的广场?”。四角,一个正方形的轮廓,一个坚实的瓷砖? – John 2010-01-28 02:05:51