Dan*_*ter 2 c# recursion artificial-intelligence greedy
我做了一个tic tac toe AI鉴于每个板状态,我的AI将返回一个确切的位置移动.我还创建了一个函数,循环使用AI进行的所有可能的播放
因此它是一个递归函数,让AI为给定的板移动,然后让另一个游戏进行所有可能的移动,并在每个可能的移动中使用新板自己调用递归函数.
我这样做是因为人工智能首先出现,而当另一个首先出现时...并将它们加在一起.我最终获得了418次可能的胜利和115种可能的关系,以及0次可能的失败.
但现在我的问题是,如何最大限度地赢得胜利?我需要将这个统计数据与某些东西进行比较,但我无法弄清楚要将它与之进行比较.
我的感觉是你引用的统计数据已经非常好了.两位专业的Tic-Tac-Toe玩家将永远以平局结束,如果对手知道如何玩游戏,则无法强制获胜.
更新
可能有一种更优雅的方式来证明你的AI的正确性,但最直接的方法是蛮力的方法.只需将所有可能的董事会职位列为游戏树,并修剪直接导致亏损的分支机构.然后,对于树中的每个分支,您可以计算出跟随该分支导致的获胜概率.然后你只需要在每个棋盘位置测试你的AI,并确保它以最高的获胜概率选择分支.