在强化学习(四)用蒙特卡罗法(MC)求解中,我们讲到了使用蒙特卡罗法来求解强化学习问题的方法,虽然蒙特卡罗法很灵活,不需要环境的状态转化概率模型,但是它需要所有的采样序列都是经历完整的状态序列。如果我们没有完整的状态序列,那么就无法使用蒙特卡罗法求解了。本文我们就来讨论可以不使用完整状态序列求解强化学习问题的方法:时序差分(Temporal-Difference, TD)。
时序差分这一篇对应Sutton书的第六章部分和UCL强化学习课程的第四讲部分,第五讲部分。
1. 时序差分TD简介
时序差分法和蒙特卡罗法类似,都是不基于模型的强化学习问题求解方法。所以在上一篇定义的不基于模型的强化学习控制问题和预测问题的定义,在这里仍然适用。
预测问题:即给定强化学习的5个要素:状态集SS, 动作集AA, 即时奖励RR,衰减因子γγ, 给定策略ππ, 求解该策略的状态价值函数v(π)v(π)
控制问题:也就是求解最优的价值函数和策略。给定强化学习的5个要素:状态集SS, 动作集AA, 即时奖励RR,衰减因子γγ, 探索率ϵϵ, 求解最优的动作价值函数q∗q∗和最优策略π∗π∗
回顾蒙特卡罗法中计算状态收获的方法是:
Gt=Rt+1+γRt+2+γ2Rt+3+...γT−t−1RTGt=Rt+1+γRt+2+γ2Rt+3+...γ
本文介绍了时序差分(Temporal-Difference, TD)方法,它是不基于模型的强化学习求解方法,无需完整状态序列。TD法通过TD目标值(Rt+1+γV(St+1))近似替换收获Gt,利用TD误差进行引导学习。内容包括TD的预测问题求解、n步时序差分、TD(λ)及其在控制问题中的应用。"
124761499,10993013,C++编程:使用友元函数计算Boat和Car总重量,"['C++', '开发语言', '学习']
订阅专栏 解锁全文
1135

被折叠的 条评论
为什么被折叠?



