原理很简单,就是给定小恐龙障碍物类型、障碍物距离、游戏的相对速度作为状态,小恐龙有跳跃,低头,不做任何动作这三种动作可选,小恐龙存活则奖励碰到障碍物则惩罚。
Q-learning算法详细说明可参考知乎问题:如何用简单例子讲解 Q - learning 的具体过程?
在示例中我默认让小恐龙不做任何动作让其慢慢纠正错误,不然你们会看到:
不停乱跳或是低头有点鬼畜
按空格开始游戏
-
未学习示例:http://runjs.cn/detail/cirqzzgn
-
已学习部分(未学习躲避翼龙)记录示例:http://runjs.cn/detail/baxttgdk