Snake-AI,这是一个用 C/C++ 语言编写的贪吃蛇游戏的人工智能。
AI 的目的是让蛇尽可能的吃更多的食物,直到吃满整个地图。想参与这个项目,请查看todos。
Demo
使用方法
编译与运行:
$ make $ make run
为了解详细使用方法, 请查看主函数main()
算法介绍
- 函数Snake.decideNext(): 计算蛇S1的下一个移动方向D
- 计算从蛇S1的头部到达食物的最短路径P1。
- 派一条与蛇S1完全一样的虚拟蛇S2沿路径P1吃掉食物。
- 计算从蛇S2的头部到其尾部的最长路径P2。如果路径P2存在,将移动方向D设置为路径P1的第一个方向,否则进行步骤4。
- 计算从蛇S1的头部到达其尾部的最长路径P3。如果P3存在,将移动方向