赞
踩
目录
时间差分算法可以利用智能体在环境中时间步之间的时序差,通过学习由时间间隔产生的差分数据对强化学习问题进行求解。动态规划法可以求解基于模型的强化学习任务,蒙特卡洛法虽与之结合能求解无模型强化学习问题,但具有数据方差大、收敛速度慢的特点。
时间差分法与蒙特卡洛法都是基于采样数据估计当前价值函数,区别是时间差分法使用动态规划中自举方式计算当前价值函数,蒙特卡洛则每幕结束后才对价值函数进行计算。
SARSA算法的五个字母对应着单词的缩写,代表下述的过程:
用该序列计算动作的估值Q(S,A),并对其进行调整,从而达到bellman方程的收敛。
完整的更新方程如下所示:
优点:
1.不要求环境是MDP或基于模型的,也不用转移概率计算估值。SARSA算法估值靠其一点一点尝试得出。
2.该算法的估值,反馈速度较快,可以走一步更新一次,因为基于时间差分,不像蒙特卡洛算法要完成这幕才开始更新。
3.SARSA的方差比较小
缺点:
1.在简单场景中收敛速度较qlearning慢。
2.由于Sarsa算法中动作值函数q(s,a)基于表格的方式存储,因此其不适用于规模较大的强化学习任务。
Sarsa属于固定策略算法,Q-learning属于非固定策略。所谓策略是否固定即其属于onpolicy还是offpolicy。onpolicy算法SARSA算法选择动作时所遵循的策略和更新动作值函数时所遵循的策略是相同的;offpolicy算法Q-learning算法在动作值函数q(s,a)的更新中采用不同于选择动作时遵循的策略。
Q-learning算法的动作值函数q(s,a)更新式如下所示:
Q-learning算法与Sarsa算法的区别是Q-learning的折扣估值带有max。Q-learning认为最大的估值才是当前Q(s,a)的估值。
优点:
1.使用max进行估值计算,很容易在比较简单的环境中发现最优路径、找到最好的策略。
2.实现简单,只需记录S->A->R->S',逻辑易于理解。
缺点:
1.几乎无法实现连续动作输出。
2.单纯用最大值评价有些不合理的地方。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。