16.1任务与奖赏



其中:
policy:策略决定了agent在特定时间的行为,将当前环境的状态state映射为行动action,对应于心理学中所谓的一套刺激-反应规则。
reward:每一步动作,环境都会给予agent一个奖励reward,agent唯一的目标是最大化长期获得的总奖励。奖励的大小反应了事件的好坏。奖励信号是改变策略的主要依据,如果策略选择的行动是低回报的,那么在将来,可能会更改策略来选择其他的行动。
value function:reward只给出了在某个状态下的即时奖励,而价值函数给出的是长期的奖励。价值函数表示的是当前的奖励和后续奖励累计的总和。
model:模仿环境的行为,如给定状态和行为,模型可以预测下一个状态和下一个奖励。在现实中,model可能存在,也有可能不存在。在强化学习中, model存在时称为基于模型的学习model-based,不存在时称为无模型学习model-free。
强化学习在某种意义上可以看作具有“延迟标记信息”的监督学习问题。
16.2 K-摇臂赌博机
16.2.1 探索与利用
机器需通过尝试来发现各个动作产生的结果,而没有训练数据告诉机器应当做哪个动作。
最大化单步奖赏需要考虑两个方面:一是需知道每个动作带来的奖赏,二是执行奖赏最大的动作
单步强化学习任务对应了一个理论模型,就是K-摇臂赌博机

仅探索:将所有尝试机会平均分配给每个摇臂,最后以每个摇臂各自的平均吐币概率作为其奖赏的近似估计
仅利用:按下目前最优的摇臂,若有多个同时最优,则随机选一个
探索和利用是矛盾的,因为尝试次数有限,加强一方则另一方就会削弱,这就是强化学习面临的窘境。
16.2.2
-贪心
(epsilon)


2:Q(i)、count(i)分别为摇臂i的平均奖赏和选中次数
4:随机数
4-7步就是本算法操作的关键,小于就摇臂,获取本次尝试的奖赏值,就是9步,如果大于了,就区当前所知道能够取得最大收益的那个摇臂
可以让,随着次数增多逐渐减少
16.2.3 Softmax


16.3 有模型学习
若学习任务中的四个要素都已知,即状态空间、动作空间、转移概率以及奖赏函数都已经给出,这样的情形称为“有模型学习”。假设状态空间和动作空间均为有限,即均为离散值,这样我们不用通过尝试便可以对某个策略进行评估。
16.3.1 策略评估
前面提到:在模型已知的前提下,我们可以对任意策略的进行评估。一般常使用以下两种值函数来评估某个策略的优劣:
状态值函数(V):V(x),即从状态x出发,使用π策略所带来的累积奖赏;
状态-动作值函数(Q):Q(x,a),即从状态x出发,执行动作a后再使用π策略所带来的累积奖赏。
根据累积奖赏的定义,我们可以引入T步累积奖赏与r折扣累积奖赏:


MDP:马尔可夫决策过程



16.3.2 策略改进
理想的策略应能使得每个状态的累积奖赏之和最大,简单来理解就是:不管处于什么状态,只要通过该策略执行动作,总能得到较好的结果。因此对于给定的某个策略,我们需要对其进行改进,从而得到最优的值函数。

最优Bellman等式改进策略的方式为:将策略选择的动作改为当前最优的动作,而不是像之前那样对每种可能的动作进行求和。易知:选择当前最优动作相当于将所有的概率都赋给累积奖赏值最大的动作,因此每次改进都会使得值函数单调递增。

可以看出:策略迭代法在每次改进策略后都要对策略进行重新评估,因此比较耗时。
若从最优化值函数的角度出发,即先迭代得到最优的值函数,再来计算如何改变策略,这便是值迭代算法,算法流程如下所示:

16.4 免模型学习
由于模型参数未知,状态值函数不能像之前那样进行全概率展开,从而运用动态规划法求解。一种直接的方法便是通过采样来对策略进行评估/估算其值函数,蒙特卡罗强化学习正是基于采样来估计状态-动作值函数:对采样轨迹中的每一对状态-动作,记录其后的奖赏值之和,作为该状态-动作的一次累积奖赏,通过多次采样后,使用累积奖赏的平均作为状态-动作值的估计,并引入ε-贪心策略保证采样的多样性。

在上面的算法流程中,被评估和被改进的都是同一个策略,因此称为同策略蒙特卡罗强化学习算法。引入ε-贪心仅是为了便于采样评估,而在使用策略时并不需要ε-贪心,那能否仅在评估时使用ε-贪心策略,而在改进时使用原始策略呢?这便是异策略蒙特卡罗强化学习算法。

网友评论