python小练习(073):简单游戏AI设计之五(带AI的贪食蛇)
接上一节,继续优化我们的贪食蛇。上一节的结尾我们已经发现了一种情况,即找不到最优路径的时候,“笨蛇”就会撞死,那么如何改善这种情况呢?
玩过贪食蛇的人应该都知道,如果我可以追着蛇尾跑,那一定是最安全的,因为蛇尾不断在消除,不断有空格出现。
那么,是不是当食物与蛇头之间没有路径的时候就直奔蛇尾呢?也不是这样,我们知道当食物与蛇头之间没有路径时,我们应该尽可能多的争取时间多走几步,跑向蛇尾固然是安全,但是不是最佳路径。最佳路径应该走最远的路跑向蛇尾,这样一旦蛇头与食物之间有新的路径出现,我们就可以去进食了。
所以新的策略应该是“当食物与蛇头之间没有路径的时候,就找蛇头与蛇尾之间的最长路径”。
那么这里就需要做一个新的函数来达到这个目的,这个函数其实很简单,只需把原来找食物的最短路径,改成找蛇尾的最长路径即可。
更改后的接近完成的代码:
**** Hidden Message *****
为什么说接近完成呢?因为还有一种情况没有考虑,就是当食物与蛇头和蛇尾与蛇头之间都没有路径时怎么办。
这个情况我们下一节中继续讨论,敬请期待。 我来学习了~可惜我还在看零基础 TSUNAMI 发表于 2017-2-9 16:35
我来学习了~可惜我还在看零基础
可以先收藏以后学到了再慢慢看,这个带AI的贪食蛇程序大概也就200行的代码,还有最后2节本季的python小练习就告一段落了{:10_248:} jerryxjr1220 发表于 2017-2-9 16:48
可以先收藏以后学到了再慢慢看,这个带AI的贪食蛇程序大概也就200行的代码,还有最后2节本季的python小练 ...
哈哈,谢谢喽~ TSUNAMI 发表于 2017-2-9 16:50
哈哈,谢谢喽~
我觉得本季的python小练习的最后5节还是比较值得看的,基本上涉及到了游戏AI设计的各个环节,建模-算法-调试-优化-最终成品,对于新手学习程序开发还是很有帮助的。{:10_254:} 可以可以 我还是这个领域的孩子啊{:5_100:} {:10_256:}{:10_256:}{:10_256:} 这个可以有 想学习
学习学习 发 请问本站的python视频教程在哪? 学习了!!!!! 发货 厉害了我的哥,膜拜大神{:5_91:} 可以 dd mmm 我想交流下我的看法