蒙特卡洛方法
模型无关的强化学习
在现实问题中,通常没有明确地给出状态转移
P
s
a
(
s
′
)
P_{sa}(s')
Psa(s′) 和奖励函数
R
R
R
例如,我们仅能观察到部分片段(episodes)
Episode 1: s 0 ( 1 ) → R ( s 0 ) ( 1 ) a 0 ( 1 ) s 1 ( 1 ) → R ( s 1 ) ( 1 ) a 1 ( 1 ) s 2 ( 1 ) → R ( s 2 ) ( 1 ) a 2 ( 1 ) s 3 ( 1 ) ⋯ s T ( 1 ) {s^{(1)}_{0}}\xrightarrow[R(s_{0})^{(1)}]{a^{(1)}_{0}}{s^{(1)}_{1}}\xrightarrow[R(s_{1})^{(1)}]{a^{(1)}_{1}}{s^{(1)}_{2}}\xrightarrow[R(s_{2})^{(1)}]{a^{(1)}_{2}}{s^{(1)}_{3}}\cdots s^{(1)}_{T} s0(1)a0(1)R(s0)(1)s1(1)a1(1)R(s1)(1)s2(1)a2(1)R(s2)(1)s3(1)⋯sT(1)
Episode 2: s 0 ( 2 ) → R ( s 0 ) ( 2 ) a 0 ( 2 ) s 1 ( 2 ) → R ( s 1 ) ( 2 ) a 1 ( 2 ) s 2 ( 2 ) → R ( s 2 ) ( 2 ) a 2 ( 2 ) s 3 ( 2 ) ⋯ s T ( 2 ) {s^{(2)}_{0}}\xrightarrow[R(s_{0})^{(2)}]{a^{(2)}_{0}}{s^{(2)}_{1}}\xrightarrow[R(s_{1})^{(2)}]{a^{(2)}_{1}}{s^{(2)}_{2}}\xrightarrow[R(s_{2})^{(2)}]{a^{(2)}_{2}}{s^{(2)}_{3}}\cdots s^{(2)}_{T} s0(2)a0(2)R(s0)(2)s1(2)a1(2)R(s1)(2)s2(2)a2(2)R(s2)(2)s3(2)⋯sT(2)
模型无关的强化学习直接从经验中学习值
V
(
s
)
V(s)
V(s) 和策略
π
\pi
π ,而无需构建马尔科夫决策过程模型(MDP)
通过迭代进行值函数估计和策略优化的方式
值函数估计
在基于模型的强化学习(MDP)中,值函数能够通过动态规划计算获得
V π ( s ) = E [ R ( s 0 ) + γ R ( s 1 ) + γ 2 R ( s 2 ) + ⋯ ∣ s 0 = s , π ] = R ( s ) + γ ∑ s ′ ∈ S P s π ( s ) ( s ′ ) V π ( s ′ ) \begin{align} V^{\pi}{(s)}&=\mathbb{E}{[R(s_{0})+\gamma R(s_{1}) + \gamma^{2}R(s_{2})+\cdots|s_{0}=s,\pi]}\\ &= R(s)+\gamma \sum\limits_{s'\in S}{P_{s\pi{(s)}}(s')V^{\pi}(s')} \end{align} Vπ(s)=E[R(s0)+γR(s1)+γ2R(s2)+⋯∣s0=s,π]=R(s)+γs′∈S∑Psπ(s)(s′)Vπ(s′)
在模型无关的强化学习中
- 我们无法直接获得 P s a P_{sa} Psa 和 R R R
- 但是,我们拥有一系列可以用来估计值函数的经验
Episode 1: s 0 ( 1 ) → R ( s 0 ) ( 1 ) a 0 ( 1 ) s 1 ( 1 ) → R ( s 1 ) ( 1 ) a 1 ( 1 ) s 2 ( 1 ) → R ( s 2 ) ( 1 ) a 2 ( 1 ) s 3 ( 1 ) ⋯ s T ( 1 ) {s^{(1)}_{0}}\xrightarrow[R(s_{0})^{(1)}]{a^{(1)}_{0}}{s^{(1)}_{1}}\xrightarrow[R(s_{1})^{(1)}]{a^{(1)}_{1}}{s^{(1)}_{2}}\xrightarrow[R(s_{2})^{(1)}]{a^{(1)}_{2}}{s^{(1)}_{3}}\cdots s^{(1)}_{T} s0(1)a0(1)R(s0)(1)s1(1)a1(1)R(s1)(1)s2(1)a2(1)R(s2)(1)s3(1)⋯sT(1)
Episode 2: s 0 ( 2 ) → R ( s 0 ) ( 2 ) a 0 ( 2 ) s 1 ( 2 ) → R ( s 1 ) ( 2 ) a 1 ( 2 ) s 2 ( 2 ) → R ( s 2 ) ( 2 ) a 2 ( 2 ) s 3 ( 2 ) ⋯ s T ( 2 ) {s^{(2)}_{0}}\xrightarrow[R(s_{0})^{(2)}]{a^{(2)}_{0}}{s^{(2)}_{1}}\xrightarrow[R(s_{1})^{(2)}]{a^{(2)}_{1}}{s^{(2)}_{2}}\xrightarrow[R(s_{2})^{(2)}]{a^{(2)}_{2}}{s^{(2)}_{3}}\cdots s^{(2)}_{T} s0(2)a0(2)R(s0)(2)s1(2)a1(2)R(s1)(2)s2(2)a2(2)R(s2)(2)s3(2)⋯sT(2)
蒙特卡洛方法
蒙特卡洛方法(Monte-Carlo methods)是一类广泛的计算方法
依赖于重复随机抽样来获得数值结果
例如,计算圆的面积
围棋对弈:估计当前状态下的胜率