Ein*_*lar 6 python artificial-intelligence neural-network tic-tac-toe genetic-algorithm
我对机器学习领域非常感兴趣,最近我得到了一个关于未来几周项目的想法.
基本上我想创造一个可以击败Tic Tac Toe的每个人的AI.该算法必须可以针对每个n*n板尺寸进行扩展,甚至可以针对其他维度(例如,对于游戏的3D模拟).
此外,我不希望算法提前知道游戏的任何内容:它必须自己学习.所以没有硬编码的ifs,也没有监督学习.
我的想法是使用人工神经网络作为主算法本身,并通过使用遗传算法训练它.所以我必须只编写游戏规则,然后每个人都在与自己作斗争,应该从头开始学习.
这是一个很大的项目,我不是这个领域的专家,但我希望通过这样的目标,学习很多东西.
是的,这是可能的。但你必须事先告诉你的人工智能游戏规则(嗯,这是有争议的,但如果你这样做的话表面上会更好——它会更好地定义你的搜索空间)。
现在,普通的井字游戏太简单了——最小最大搜索就足够了。扩大维度或棋盘的大小确实为更先进的算法提供了理由,但即便如此,搜索空间也相当简单(维度增加的代数性质导致搜索空间的轻微变换,这仍然应该是)可以用更简单的方法处理)。
如果你真的想用大量的机器学习技术来解决问题,请再看一下国际象棋(深蓝实际上只是暴力地强迫了傻瓜)。Arimaa 对于这个应用程序也很有趣。您也可以考虑看看 Go(也许可以从 AlphaGo 上完成的一些工作开始)
这就是我的两分钱的价值