【强化学习的数学原理】第04课-值迭代与策略迭代-笔记

学习资料:bilibili 西湖大学赵世钰老师的【强化学习的数学原理】课程。链接:强化学习的数学原理 西湖大学 赵世钰


一、值迭代算法

值迭代算法主要包括两部分。

第一部分:policy update。给定 v k v_k vk ,求解 m a x max max 最优化问题,其实就是求 π \pi π
第一部分:value update。根据求解出来的新的策略 π \pi π,即 π k + 1 \pi_{k+1} πk+1 ,把新策略代入到式子中,求出新的state value v k + 1 v_{k+1} vk+1
在这里插入图片描述
下面详细看policy update的过程。首先要对每一个状态s,求出其 q k ( s , a ) q_k(s,a) qk(s,a) 。因为各变量都是已知的,所以能很方便地求出结果。然后,对于每一个状态s的 q k ( s , a ) q_k(s,a) qk(s,a) q k ( s , a 1 ) q_k(s,a_1) qk(s,a1) q k ( s , a 2 ) q_k(s,a_2) qk(s,a2) q k ( s , a 3 ) q_k(s,a_3) qk(s,a3)…找出其中最大的 q k q_k qk,选择对应的动作a作为策略 π k + 1 ( a ∣ s ) \pi_{k+1}(a|s) πk+1(as) 。所以这种策略是一个确定性的策略,且是一个贪婪的策略,只会寻求最大的 q q q 值。
在这里插入图片描述

下面详细看value update的过程。类似地,要对每一个状态s,求出其 q k ( s , a ) q_k(s,a) qk(s,a) 。因为各变量都是已知的, v k ( s ′ ) v_k(s') vk(s)也是已知的(要么是刚开始赋值的,要么是前一轮算出来的 v k + 1 ( s ) v_{k+1}(s) vk+1(s)拿过来继续用),所以能很方便地求出结果。在上一步已经求出来最优的 π k + 1 ( a ∣ s ) \pi_{k+1}(a|s) πk+1(as) 了,所以直接代入相应的值,就能得出 v k + 1 ( s ) v_{k+1}(s) vk+1(s)。因为 π k + 1 ( a ∣ s ) \pi_{k+1}(a|s) πk+1(as) 只有在q值最大的情况下才等于1,在其他情况下都等于0,所以 v k + 1 ( s ) v_{k+1}(s) vk+1(s)直接就等于 m a x a q k ( s , a ) \mathop{max}\limits_{a}q_k(s,a) amaxqk(s,a)
在这里插入图片描述
下面是值迭代方法的伪代码。一开始有一个初值 v k v_k vk,当 v k v_k vk还没有收敛( v k − v k − 1 v_k-v_{k-1} vkvk1的值不够小)的时候,就进行下面的步骤。对于第k次迭代,对于状态空间中的每一个状态s,算出其 q k ( s , a ) q_k(s,a) q

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值