q-learning-MCU-C51
代码和说明链接:https://github.com/392625227/q-learning-HC0541-C51-
本文修改自这个:https://github.com/392625227/Arduino_Neural_Network
实现一个基于8051MCU的强化学习q-learning 应用。
强化学习与人类学习的方式类似,算法需要大量的训练才能像人一样实现目标(如果你想在某件事上做到最好,就需要大量的训练)。从技术上讲,采用RL的算**选择出奖励更多的可能动作,然后根据每个动作的表现来修改奖励,这就是算法学习最佳可能动作的方法。
本文使用芯圣电子HC0541(8051内核)MCU进行强化学习的基本练习。这个项目的目标是模拟一个有八个房间的房子,我们想知道从一个房间到另一个房间的最短路径。算法将从主房间开始,然后在所有其他房间中搜索,直到算法找到目标房间为止。
循环由6次(可以多次)迭代组成,在每次迭代中,算法总是从主房间开始,在找到目标房间时完成。可以说,对算法的奖励将基于它所做的决策。为了模拟练习,我们需要八个led,因为一个led代表房子的一个房间。
需求:
keil C + C51
HC0541 SDK, http://www.holychip.cn/pro.php?id=68
PC 上模拟运行时无需硬件也可以。
|