我参加了一个人工智能课程,老师要求我们实施一个利用其中一种AI算法的游戏。这是我需要一些帮助的地方:
我不需要任何编码帮助,我可以管理它(我选择的语言是Java)。我只需要一点帮助来选择算法。
答案 0 :(得分:13)
在Ben的回答的辅助下,一个好的组合是alpha-beta修剪以及类似连接4的游戏。像tic-tac-toe这样的启发式过于简单,对象棋来说太复杂了。但连接4或类似的“中间道路”游戏可以是一个很好的地方,看看启发式如何在效率和质量上产生重大影响,而且它也足够复杂,甚至可以获得一些可以赢得一些的“利基”启发式场景优于其他场景,通常更好的启发式。连接4的规则特别简单,很容易想出你自己成功的启发式方法来看看这些事情的实际效果。
另一个常见的人工智能是A *用于寻路,例如在RTS或沙箱环境中的单位旅行。
答案 1 :(得分:5)
答案 2 :(得分:1)
任何游戏都可以使用任何AI算法,如果你有一个“敌人”跟随你的2D游戏,你可以使用模糊逻辑来制作轨迹。以同样的方式,你可以使用网络(任何类型)让他们“学习”跟随你的最佳方式。 (如果它们充足,你可以使用遗传算法让它们在几代人中学习)
所以,去想一些有趣的事情,然后问一下如何通过人工智能来改善决策,并且有乐趣(这是其中最重要的部分)
你可以查看this book以获得一些想法,我的赌注是你在图书馆的某个地方拥有它
答案 3 :(得分:1)
答案 4 :(得分:1)
如前所述,A *是一种很好的游戏寻路算法。 Here is a tutorial(有来源)了解如何实施。
祝你好运!答案 5 :(得分:1)
马尔可夫链蒙特卡罗或MCMC算法怎么样? http://en.wikipedia.org/wiki/Markov_chain_Monte_Carlo
在我的A.I.我用Bayesian Networks做了一个计算概率的课程。这不是太难,而是def。有趣。
答案 6 :(得分:0)
您可以从简单的基于图块的地图和简单的路径查找算法开始,例如上面提到的A *。在您尝试与所有游戏地图一起制作带有自由移动的游戏之后。