鉴于每个董事会成员国,我的A.I.将返回1个准确移动的地方。
我还创建了一个函数,循环使用A.I。
进行所有可能的播放所以它是一个递归函数,让A.I.为一个给定的棋盘移动,然后让另一个游戏进行所有可能的移动,并在每个可能的移动中使用新的棋盘自己调用递归函数。
我这样做的时候A.I先行,而另一个先行......然后将它们加在一起。我结束了418次可能的胜利和115次可能的关系,以及0次可能的失败。
但现在我的问题是,如何最大限度地赢得胜利?我需要将这个统计数据与某些东西进行比较,但我无法弄清楚要将它与之进行比较。
答案 0 :(得分:0)
您可以将此视为具有未知最佳解决方案的优化问题。然后,您可以使用某种形式的meta-heuristic算法(例如genetic algorithm,PSO)将变体应用于您的AI,直到找到最佳值。有趣的是,这些算法可能不一定会返回“最佳”,但它仍然有助于获得比以前更好的东西。
通常,元启发式算法需要适应度函数,它基本上比较解决方案以找到最佳解决方案。在您的情况下,您可以使用赢取比率作为适应度函数。已经达到了418/115比率,您可以将其作为“基线”,以便比较未来的解决方案。
不幸的是,我明白我提出的建议可能过于牵强(你可能会寻找更简单的东西),或者它可能过于笼统。
不幸的是,我不确定您可以使用任何统计数据来查看它是否完美。我很快就有一个想法就是假设: - 完美的比赛只会带来胜利或平局。
你的递归算法已经返回了这个。现在的问题是,是否有可能增加胜利数量?然后,您可以假设: - 如果两个玩家都玩得很完美,结果将永远是平局(猫的游戏)。
基于这个假设,再加上对先前假设的评估,这意味着如果你的AI(我们称之为Bob)是完美的,那么在鲍勃与鲍勃的比赛中,结果必须始终是平局。
我意识到这仍然无法帮助你增加获胜次数(如果可能的话),但它提供了另一个可以使用的指标 - 至少确保在Bob vs Bob游戏中,没有优势有赢家的情况(这意味着你的AI不完美)。