一般做网站需要多少钱网站设计知识
news/
2025/10/2 11:14:09/
文章来源:
一般做网站需要多少钱,网站设计知识,网站的页面布局,wordpress要ftp动态规划算法#xff08;DP#xff09;#xff1a;在马尔可夫决策过程#xff08;MDP#xff09;的完美环境模型下计算最优策略。但其在强化学习中实用性有限#xff0c;其一是它是基于环境模型已知#xff1b;其二是它的计算成本很大。但它在理论伤仍然很重要#xff…动态规划算法DP在马尔可夫决策过程MDP的完美环境模型下计算最优策略。但其在强化学习中实用性有限其一是它是基于环境模型已知其二是它的计算成本很大。但它在理论伤仍然很重要其他的一些算法与动态规划算法DP十分相似只是计算量小及没有假设环境模型已知。
动态规划算法DP和一般的强化学习算法的关键思想都是基于价值函数对策略的搜索如前所述一旦我们找到满足贝尔曼最优方程的最优价值函数 v ∗ v_\ast v∗ 或 q ∗ q_\ast q∗我们就可以很容易地获得最优策略。 v ∗ ( s ) max a E [ R t 1 γ v ∗ ( S t 1 ) ∣ S t s , A t a ] max a ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v ∗ ( s ′ ) ] , o r q ∗ ( s , a ) E [ R t 1 γ max a ′ q ∗ ( S t 1 , a ′ ) ∣ S t s , A t a ] ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ max a ′ q ∗ ( s ′ , a ′ ) ] \begin{aligned} v_\ast(s) \max_a\Bbb{E}[R_{t1}\gamma v_\ast(S_{t1})|S_ts,A_ta]\\ \max_a\sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma v_\ast(s^\prime)\Big],\quad \rm{or}\\ q_\ast(s,a)\Bbb{E}\Big[R_{t1}\gamma\max_{a^\prime}q_\ast(S_{t1},a^\prime)\Big |S_ts,A_ta\Big]\\ \sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma\max_{a^\prime}q_\ast(s^\prime,a^\prime)\Big] \end{aligned} v∗(s)q∗(s,a)amaxE[Rt1γv∗(St1)∣Sts,Ata]amaxs′,r∑p(s′,r∣s,a)[rγv∗(s′)],orE[Rt1γa′maxq∗(St1,a′) Sts,Ata]s′,r∑p(s′,r∣s,a)[rγa′maxq∗(s′,a′)]
1、策略评估预测
首先我们考虑如何计算任意策略 π \pi π 下的状态价值函数 v π v_\pi vπ我们称其为策略评估 v π ( s ) ≐ E π [ G t ∣ S t s ] E π [ R t 1 γ G t 1 ∣ S t s ] E π [ R t 1 γ v π ( S t 1 ) ∣ S t s ] ∑ a π ( a ∣ s ) ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v π ( s ′ ) ] \begin{aligned} v_\pi(s)\doteq \Bbb{E}_\pi[G_t|S_ts]\\ \Bbb{E}_\pi[R_{t1}\gamma G_{t1}|S_{t}s]\\ \Bbb{E}_\pi[R_{t1}\gamma v_\pi(S_{t1})|S_ts]\\ \sum_a\pi(a|s)\sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma v_\pi(s^\prime)\Big] \end{aligned} vπ(s)≐Eπ[Gt∣Sts]Eπ[Rt1γGt1∣Sts]Eπ[Rt1γvπ(St1)∣Sts]a∑π(a∣s)s′,r∑p(s′,r∣s,a)[rγvπ(s′)]
其中 π ( a ∣ s ) \pi(a|s) π(a∣s) 表示在策略 π \pi π 下当状态为 s s s 时采取动作 a a a 的概率以 π \pi π 为下标的期望是指其计算是基于策略 π \pi π 的。只要保证 γ 1 \gamma1 γ1 及存在终止状态则 v π v_\pi vπ 存在且唯一。
如果环境动态模型完全已知那么上述方程可通过迭代计算来求解即 v k 1 ( s ) ≐ E π [ R t 1 γ v k ( S t 1 ) ∣ S t s ] ∑ a π ( a ∣ s ) ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v π ( s ′ ) ] \begin{aligned} v_{k1}(s)\doteq \Bbb{E}_\pi[R_{t1}\gamma v_k(S_{t1})|S_ts]\\ \sum_a\pi(a|s)\sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma v_\pi(s^\prime)\Big] \end{aligned} vk1(s)≐Eπ[Rt1γvk(St1)∣Sts]a∑π(a∣s)s′,r∑p(s′,r∣s,a)[rγvπ(s′)]
显然 v k v π v_kv_\pi vkvπ 是这个更新规则的不动点因为贝尔曼方程保证了其相等实际上在保证 v π v_\pi vπ 存在的条件下当 k → ∞ k\rightarrow\infty k→∞时序列 { v k } \{v_k\} {vk}可以收敛至序列 v π v_\pi vπ这种算法成为迭代策略评估。
为了使 v k 1 v_{k1} vk1 相比 v j v_j vj 更加逼近 v π v_\pi vπ迭代策略评估对每个状态 s s s 应用如下操作用状态 s s s 的旧价值来更新 s s s 的新价值再用 s s s 的新价值替换 s s s 的旧价值我们称这种操作为预期更新。迭代策略评估的每次更新都会产生新的估计价值函数 v k 1 v_{k1} vk1。
若要编写程序实现上述的迭代策略评估必须使用两个数组一个储存旧价值 v k ( s ) v_k(s) vk(s)另一个储存新价值 v k 1 ( s ) v_{k1}(s) vk1(s)我们用旧价值数组来一个接一个地计算新价值数组过程中可以立刻改变旧价值数组也可以更新完毕再改变旧价值数组这两种方法均收敛于 v π v_\pi vπ事实上前者收敛速度更快。 2、策略改进
我们计算策略的价值函数的原因是为了找到更好的策略假设我们已经知道某策略 π \pi π 的价值函数 v π v_\pi vπ对于某些状态我们想知道是否应该改变策略虽然我们根据 v π v_\pi vπ 知道当前的策略有“多好”但是更换策略是“更好”还是“更差”呢一种方法就是在状态 s s s 时确定性地选择动作价值函数最高的动作 a a a然后遵循现有的策略 π \pi π q π ( s , a ) ≐ E [ R t 1 γ v π ( S t 1 ) ∣ S t s , A t a ] ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v π ( s ′ ) ] \begin{aligned} q_\pi(s,a)\doteq \Bbb{E}[R_{t1}\gamma v_\pi(S_{t1})|S_ts,A_ta]\\ \sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma v_\pi(s^\prime)\Big] \end{aligned} qπ(s,a)≐E[Rt1γvπ(St1)∣Sts,Ata]s′,r∑p(s′,r∣s,a)[rγvπ(s′)]
关键在于它是大于还是小于 v π ( s ) v_\pi(s) vπ(s)如果它更大那么也就是说在状态 s s s 选择一次根据上述公式只有这一次的动作选择不遵循策略 π \pi π动作 a a a 的策略比一直遵循策略 π \pi π 要更好那么也就是说每次遇到状态 s s s 都确定性地选择动作 a a a 会更好事实上新策略确实更好。
假设 π \pi π 和 π ′ \pi^\prime π′ 是任意一对确定性策略有 q π ( s , π ′ ( s ) ) ≥ v π ( s ) q_\pi(s,\pi^\prime(s))\geq v_\pi(s) qπ(s,π′(s))≥vπ(s)也就是说策略 π ′ \pi^\prime π′ 优于策略 π \pi π也就是说它在所有状态下均获得更多的期望收益即 v π ′ ( s ) ≥ v π ( s ) v_{\pi^\prime}(s)\geq v_\pi(s) vπ′(s)≥vπ(s)我们称其为策略改进定理。
到目前为止在给定策略及其价值函数的条件下我可以轻松地在单个状态下对动作的更改我们将其延伸至所有状态下动作的更改即在每个状态下根据 q π ( s , a ) q_\pi(s,a) qπ(s,a) 来选择最佳的动作也就是选择新的贪心策略 π ′ \pi^\prime π′即 π ′ ( s ) ≐ arg max a q π ( s , a ) arg max a E [ R t 1 γ v π ( S t 1 ) ∣ S t s , A t a ] arg max a ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v π ( s ′ ) ] \begin{aligned} \pi^\prime(s)\doteq \argmax_aq_\pi(s,a)\\ \argmax_a\Bbb{E}[R_{t1}\gamma v_\pi(S_{t1})|S_ts,A_ta]\\ \argmax_a\sum_{s^\prime,r}p(s^\prime,r|s,a)\Big[r\gamma v_\pi(s^\prime)\Big] \end{aligned} π′(s)≐aargmaxqπ(s,a)aargmaxE[Rt1γvπ(St1)∣Sts,Ata]aargmaxs′,r∑p(s′,r∣s,a)[rγvπ(s′)]
贪心策略采取的是在短期内看起来最好的动作可以看出它优于原策略。根据原策略的价值函数通过贪心方法改进原策略从而得到新策略我们称其为策略改进。
到目前为止我考虑的是确定性策略这种特殊情况事实上上述所有思想可以很容易地扩展到随机策略。
3、策略迭代
一旦通过价值函数 v π v_\pi vπ 改进策略 π \pi π得到更好的策略 π ′ \pi^\prime π′我们就可以计算价值函数 v π ′ v_{\pi^\prime} vπ′再改进策略 π ′ \pi^\prime π′得到更好的策略 π ′ ′ \pi^{\prime\prime} π′′由此我们可以得到一系列单调改进的策略和价值函数 π 0 ⟶ E v π 0 ⟶ I π 1 ⟶ E v π 1 ⟶ I π 2 ⟶ E ⋯ ⟶ I π ∗ ⟶ E v ∗ \pi_0\stackrel{E}{\longrightarrow}v_{\pi_0}\stackrel{I}{\longrightarrow}\pi_1\stackrel{E}{\longrightarrow}v_{\pi_1}\stackrel{I}{\longrightarrow}\pi_2\stackrel{E}{\longrightarrow}\cdots\stackrel{I}{\longrightarrow}\pi_\ast\stackrel{E}{\longrightarrow}v_\ast π0⟶Evπ0⟶Iπ1⟶Evπ1⟶Iπ2⟶E⋯⟶Iπ∗⟶Ev∗
其中 ⟶ E \stackrel{E}{\longrightarrow} ⟶E 表示策略评估 ⟶ I \stackrel{I}{\longrightarrow} ⟶I 表示策略改进每个策略都优于前一个策略。由于有限马尔可夫决策过程只有有限个策略因此该过程必然会在有限次的迭代中收敛到最优策略和最优价值函数。
这种寻找最优策略的方法被称为策略迭代完整算法如下所示可以看出每次策略评估本身就是一次迭代计算都是从前一个策略的价值函数开始这通常会使得策略评估的收敛速度大大提高。
4、值迭代
策略迭代的一个缺点是它得每次迭代都要进行策略评估这本身就是一个冗长的迭代计算而策略评估只有在极限的情况下才收敛到 v π v_\pi vπ我们是否可以在此之前就截断迭代呢答案是可以的。实际上在保证策略迭代收敛的前提下可以通过多种方式截断策略迭代中的策略评估过程一种特殊的方式是策略评估时每个状态仅更新一次就停止这种算法称为值迭代。它可以写成一个特别简单的更新操作其中结合了策略改进和截断策略评估 v k 1 ( s ) ≐ max a E [ R t 1 γ v k ( S t 1 ) ∣ S t s , A t a ] max a ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r γ v k ( s ′ ) ] \begin{aligned} v_{k1}(s)\doteq \max_a\Bbb{E}[R_{t1}\gamma v_k(S_{t1})|S_ts,A_ta]\\ \max_a\sum_{s^\prime,r}p(s^\prime,r|s,a)[r\gamma v_k(s^\prime)] \end{aligned} vk1(s)≐amaxE[Rt1γvk(St1)∣Sts,Ata]amaxs′,r∑p(s′,r∣s,a)[rγvk(s′)]
对于任意的 v 0 v_0 v0序列 { v k } \{v_k\} {vk} 都会收敛于 v ∗ v_\ast v∗。理解值迭代的另一种方法就是参考贝尔曼最优方程只需要将贝尔曼最优方程转换为更新规则即可获得值迭代。最好我们看一下值迭代是如何终止的与策略评估一样值迭代需要无限次迭代才能精确收敛到 v ∗ v_\ast v∗但实际上值函数在一次迭代过程只发生了极小的变换我们就停止迭代完整算法如下所示 值迭代在每次迭代过程中都有效的结合了一次策略评估和一次策略改进通过在每个策略改进之间插入多个策略评估通常可以实现更快的收敛。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/924833.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!