利用与探索
利用与探索(Exploitation & Exploration)是强化学习中非常重要的概念。利用是指从已知信息中得到最大回报。探索是指要开拓眼界、尽可能地发掘环境中更多的信息。人们在作选择时,经常会用到利用与探索的思想。比如,在选择饭店时,一般会利用自己的经验选择自己满意的饭店,以确保大概率得到理想的服务,但是也会偶尔探索一下新店,看看是否有更好的服务。
常用两种策略来实现利用与探索,分别是贪心策略(greedy strategy)和ε-贪心策略(ε-greedy strategy)。
贪心策略的思想是:只根据当前信息来作出最优选择,不考虑长远。比如,强化学习主体在做决定时,只根据既有策略计算出所有动作在当前状态下的条件概率,执行最大值对应的动作。 记可选的样本为s_i,i=1,2,…m,m为样本总数。记样本s_i的当前概率为q_i。那么,按贪心策略选择样本s_i的概率为p_i:
在强化学习算法中,常应用随机采样的方法来获取样本以优化算法。贪心策略应用于随机采样时,会出现当前概率暂时为0的样本以后也不会被采样到。这种现象类似于“近亲繁殖”,采样不全面,不利于对环境的探索。
ε-贪心策略的思想是:以探索率ε∈[0,1]从所有可能样本中按均匀分布随机选择一个样本,以1−ε的概率按当前最大概率选择。 按ε-贪心策略选择样本s_i的概率为p_i:
ε-贪心策略使得每个样本都有一定被选中的概率,保证了探索样本空间时的充分性。
强化学习算法分类
1.从算法优化过程分类
基于值函数优化策略的算法,是先求得状态值函数或动作值函数,然后依据它们来得到最优策略,主要有动态规划法、蒙特卡罗法、时序差分法(又包括Sarsa和Qlearning)和DQN等。
直接优化策略的算法,是直接从候选策略中选择最优策略,主要有策略梯度法、Actor-Critic和DDPG等。
构建环境模型辅助优化策略的算法,是在环境模型未知的情况下,先对环境进行建模,再用构建的模型来辅助优化值函数,最终求得最优策略。构建的环境模型一般不能完全刻画实际的环境,因此,算法不能完全依赖构建的环境模型,而是将对构建模型的利用和对实际环境的探索结合起来进行优化。构建环境模型辅助优化策略的算法主要有Dyna、Dyna-2、基于模拟的搜索等系列算法。
2.环境模型是否已知的分类
如果已知环境模型,则强化学习问题的求解显然要容易的多。此时,称为有模型强化学习算法。
在不知道环境模型时,一般要通过蒙特卡罗法来试探环境,得到与环境模型相关的知识用于优化策略。相应地,这类算法也称为无模型强化学习算法。
在无模型强化学习算法中,有的算法需要一次对环境的完整尝试才能进行迭代优化,称为回合制算法。有的算法不需要完整的尝试,只需要一步试探即可进行迭代优化,称为单步制算法。
3.值函数求解的分类
在状态空间和动作空间是小型的离散空间时,值函数可以用一个小型的表格来表示。一个状态值或者一个状态-动作值对对应表格中的一格。此时,值函数的迭代优化就表现为对表格中数据的迭代计算,该类算法称为值函数可计算的强化学习算法,也称为表格型强化学习算法。
如果状态空间和(或)动作空间是连续的,那么就无法用一个表格来表示值函数。此时,一般是采用映射来描述从状态值或状态-动作值对到一个实数值的对应关系,该类算法称为值函数逼近的强化学习算法。
值函数逼近的方法还被应用到大型离散空间中值函数的求解。因为当空间过于庞大时,直接计算值函数实际上已经不可行。
创作不易 觉得有帮助请点赞关注收藏~~~