由于我的 RL 算法难以学习一些控制动作,我决定使用模仿学习/学徒学习来指导我的 RL 执行最佳动作。我已经阅读了一些关于这个主题的文章,只是想确认如何实现它。
我是否只是简单地采样一个状态,然后执行最优动作在那个状态, 计算动作的奖励,然后观察下一个状态,最后把那个放到经验回放中?
如果是这种情况,我正在考虑按如下方式实施:
- 初始化最佳重放缓冲区
- 添加最佳经验元组进入重播缓冲区
- 初始化正常重放缓冲区
- 在模拟过程中,初始采样仅来自最佳重放缓冲区,同时填充正常的重播缓冲区与仿真结果。
- 随着训练/学习的进行,对最佳重放缓冲区的使用进行退火处理,并仅从正常重放缓冲区中采样。
这样的架构行得通吗?