Scratch3之AI集成 - flappy bird AI版本

AI神秘且有趣,我们一个经典的游戏flappy bird集成AI,实现自训练成长的聪明的笨鸟。先上效果:

初始化的笨鸟拥有分身,每个分身都有自我学习功能,根据自己的移动轨迹和得分情况进行汇总,进行新一代的笨鸟的迭代,基本经过数十轮的训练和迭代,能完成高智慧的笨鸟,自我闯关能力强。

需要了解的AI知识 :神经网络进化(Neuroevolution)- 神经网络进化wiki

游戏代码块组成:

  1. 初始化模型、设置AI角色复制的分身术,启动GameAI程序
  1. AI角色使用特征
  1. AI角色使用行为
  1. 当每轮执行,AI角色牺牲后进行决策记录
  1. 异步实时计算AI角色是否牺牲(是否撞到管道)
  1. 当一轮中所有AI角色都牺牲了,优化模型并保存模型,重启GameAI,进行下一代笨鸟的训练

核心代码组成:

Generation.js -- 训练中代数的js文件

Network.js -- 神经网络的js文件
Neuroevolution.js -- 网络进化的js文件

AISprite.js -- AI角色(小鸟)的js文件