12. 动态规划之值迭代

1. 什么是值迭代

根据贝尔曼最优方程,直接使用行为回报的最大值更新原来的策略函数值,这种规划方法称为基于值迭代的方法。

2. 策略迭代与值迭代的不同

根本的不同在于所使用的贝尔曼方程。

2.1 策略迭代流程与公式

策略迭代流程使以下3步反复进行的过程。
第1步:根据策略 π ( a ∣ s ) \pi(a|s) π(as)(初始值一般为随机均匀分布)利用贝尔曼期望方程迭代形式更新值函数 V π ( s ) V_\pi(s) Vπ(s)
V π ( s ) ← ∑ a ∈ A π ( a ∣ s ) ( R s a + γ ∑ s ′ ∈ S P s s ′ a V π ( s ′ ) ) V_\pi(s)\leftarrow\sum_{a\in A}\pi(a|s)\left( R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV_\pi(s') \right) Vπ(s)aAπ(as)(Rsa+γsSPssaVπ(s))
上述式子可以迭代1次,也可以迭代多次直至 V π ( s ) V_\pi(s) Vπ(s)收敛到某个值

第2步:根据更新后的值函数 V π ( s ) V_\pi(s) Vπ(s),利用贝尔曼期望方程求行为值函数 Q π ( s , a ) Q_\pi(s,a) Qπ(s,a)
Q π ( s , a ) ← R s a + γ ∑ s ′ ∈ S P s s ′ a V π ( s ′ ) Q_\pi(s,a)\leftarrow R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV_\pi(s') Qπ(s,a)Rsa+γsSPssaVπ(s)
第3步:根据 Q π ( s , a ) Q_\pi(s,a) Qπ(s,a)优化策略
π ( a ∣ s ) ← { 1 a = arg ⁡ max ⁡ a ∈ A Q ( s , a ) 0 其他 \pi(a|s)\leftarrow\begin{cases} 1 \quad a=\arg\max_{a\in A}Q(s,a)\\ 0 \quad 其他 \end{cases} π(as){1a=argmaxaAQ(s,a)0其他

2.2 值迭代流程及公式

根据贝尔曼最优方程 V ∗ ( s ) = max ⁡ a ∈ A [ R s a + γ ∑ s ′ ∈ S P s s ′ a V ∗ ( s ′ ) ] V^*(s)=\max_{a\in A}\left[ R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV^*(s') \right] V(s)=maxaA[Rsa+γsSPssaV(s)]导出值迭代公式
V ( s ) ← max ⁡ a ∈ A [ R s a + γ ∑ s ′ ∈ S P s s ′ a V ( s ′ ) ] V(s)\leftarrow \max_{a\in A}\left[ R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV(s') \right] V(s)aAmax[Rsa+γsSPssaV(s)]
利用迭代公式迭代直至 V ( s ) V(s) V(s)收敛到达或接近最优值函数 V ( s ) V(s) V(s),此时此刻,对应的策略也是最优的,
因此后续根据收敛后的V(s),根据贝尔曼最优方程计算出最优策略:
π ∗ ( a ∣ s ) = arg ⁡ max ⁡ a ∈ A [ R s a + γ ∑ s ′ ∈ S P s s ′ a V ( s ) ] \pi^*(a|s)=\arg\max_{a\in A}\left[ R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV(s) \right] π(as)=argaAmax[Rsa+γsSPssaV(s)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aganim

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值