论文题目 :Maximum Entropy Monte-Carlo Planning
所解决的问题?
作者提出了一个新的stochastic softmax bandit
框架;
将其扩展到MCTS
上,得到了Maximum Entropy for Tree Search (MENTS)
算法。
将softmax state value
引入,在back-propaganda
过程中会更容易收敛。作者在理论和实验部分都验证了这两个想法。
背景
MCTS
Monte Carlo Tree Search (MCTS)
是一种非常好的能够获取全局最优的算法,同时也可以通过引入先验知识对其进行加强。它的核心问题在于exploitation
和exploration
的平衡。而MCTS
的收敛性高度依赖于state value
的 estimation
。而MCTS
通过simulation
获得当前状态的估计这种做法并不是非常高效,因此在sample
的过程中你的policy
会发生改变,导致你的序列期望收益会发生漂移(drift
),因此 UCT can only guarantee a polynomial convergence rate of finding the best action at the root 。MCTS
主要可以分为两步:1. tree policy
选择action
,直到到达叶子节点。2. 一个evaluation function
需要评估simulation return
,你可以选择近函数近似的方式来逼近这个值,但是在MCTS
中采用的是roll-out policy
获取simulation return
。
maximum upper confidence bound(UCB)
算法用于平衡探索和利用:
UCB
(
s
,
a
)
=
Q
(
s
,
a
)
+
c
log
N
(
s
)
N
(
s
,
a
)
\operatorname{UCB}(s, a)=Q(s, a)+c \sqrt{\frac{\log N(s)}{N(s, a)}}
U C B ( s , a ) = Q ( s , a ) + c N ( s , a ) log N ( s )
其中
N
(
s
)
=
∑
a
N
(
s
,
a
)
N(s)=\sum_{a}N(s,a)
N ( s ) = ∑ a N ( s , a ) ,
c
c
c 是控制exploration
的参数。
Maximum Entropy Policy Optimization
最大熵的策略优化问题其实就是在expected reward
目标上引入一个entropy
的约束。可表示为:
max
π
{
π
⋅
r
+
τ
H
(
π
)
}
\max _{\pi}\{\pi \cdot \mathbf{r}+\tau \mathcal{H}(\pi)\}
π max { π ⋅ r + τ H ( π ) }
其中
τ
\tau
τ 是控制exploration
的参数。定义softmax
F
τ
\mathcal{F_{\tau}}
F τ 和soft indmax
f
τ
\mathbf{f}_{\tau}
f τ :
f
τ
(
r
)
=
exp
{
(
r
−
F
τ
(
r
)
)
/
τ
}
\mathbf{f}_{\tau}(\mathbf{r})=\exp \left\{\left(\mathbf{r}-\mathcal{F}_{\tau}(\mathbf{r})\right) / \tau\right\}
f τ ( r ) = exp { ( r − F τ ( r ) ) / τ }
F
τ
(
r
)
=
τ
log
∑
a
exp
(
r
(
a
)
/
τ
)
\quad \mathcal{F}_{\tau}(\mathbf{r})=\tau \log \sum_{a} \exp (r(a) / \tau)
F τ ( r ) = τ log a ∑ exp ( r ( a ) / τ )
其中的关系为:
F
τ
(
r
)
=
max
π
{
π
⋅
r
+
τ
H
(
π
)
}
=
f
τ
(
r
)
⋅
r
+
τ
H
(
f
τ
(
r
)
)
\mathcal{F}_{\tau}(\mathbf{r})=\max _{\pi}\{\pi \cdot \mathbf{r}+\tau \mathcal{H}(\pi)\}=\mathbf{f}_{\tau}(\mathbf{r}) \cdot \mathbf{r}+\tau \mathcal{H}\left(\mathbf{f}_{\tau}(\mathbf{r})\right)
F τ ( r ) = π max { π ⋅ r + τ H ( π ) } = f τ ( r ) ⋅ r + τ H ( f τ ( r ) )
因此用softmax value function
去替代hard-max operator
可以得到softmax operator
:
Q
s
f
t
∗
(
s
,
a
)
=
R
(
s
,
a
)
+
E
s
′
∣
s
,
a
[
V
s
f
t
∗
(
s
′
)
]
Q_{\mathrm{sft}}^{*}(s, a)=R(s, a)+\mathbb{E}_{s^{\prime} | s, a}\left[V_{\mathrm{sft}}^{*}\left(s^{\prime}\right)\right]
Q s f t ∗ ( s , a ) = R ( s , a ) + E s ′ ∣ s , a [ V s f t ∗ ( s ′ ) ]
V
s
f
t
∗
(
s
)
=
τ
log
∑
a
exp
{
Q
s
f
t
∗
(
s
,
a
)
/
τ
}
V_{\mathrm{sft}}^{*}(s)=\tau \log \sum_{a} \exp \left\{Q_{\mathrm{sft}}^{*}(s, a) / \tau\right\}
V s f t ∗ ( s ) = τ log a ∑ exp { Q s f t ∗ ( s , a ) / τ }
最后可以得到optimal softmax policy
:
π
s
f
t
∗
(
a
∣
s
)
=
exp
{
(
Q
s
f
t
∗
(
s
,
a
)
−
V
s
f
t
∗
(
s
)
)
/
τ
}
\pi_{\mathrm{sft}}^{*}(a | s)=\exp \left\{\left(Q_{\mathrm{sft}}^{*}(s, a)-V_{\mathrm{sft}}^{*}(s)\right) / \tau\right\}
π s f t ∗ ( a ∣ s ) = exp { ( Q s f t ∗ ( s , a ) − V s f t ∗ ( s ) ) / τ }
Softmax Value Estimationin Stochastic Bandit
在stochastic bandit
中,环境给定的reward
是随机的,或者说会满足一个分布。stochastic softmax bandit
问题与传统的stochastic bandits
问题的区别在于,它不是期望去找到最大化期望奖励的policy
,而是去估计softmax value
V
s
f
t
∗
=
F
τ
(
r
)
V_{sft}^{*} = \mathcal{F}_{\tau}(\mathbf{r})
V s f t ∗ = F τ ( r ) 。定义
U
t
=
∑
a
exp
{
r
^
t
(
a
)
/
τ
}
U_{t}=\sum_{a} \exp \left\{\hat{r}_{t}(a) / \tau\right\}
U t = ∑ a exp { r ^ t ( a ) / τ } ,
U
∗
=
∑
a
exp
{
r
t
(
a
)
/
τ
}
U^{*}=\sum_{a} \exp \left\{r_{t}(a) / \tau\right\}
U ∗ = ∑ a exp { r t ( a ) / τ } 。因此会有
V
t
=
F
τ
(
r
^
t
)
=
τ
l
o
g
U
t
V_{t} = \mathcal{F}_{\tau}(\hat{r}_{t})=\tau logU_{t}
V t = F τ ( r ^ t ) = τ l o g U t ,我们的目标就变成了最小化均方差误差
E
\mathcal{E}
E 。
E
t
=
E
[
(
U
^
∗
−
U
t
)
2
]
\mathcal{E}_{t}=\mathbb{E}\left[\left(\hat{U}^{*}-U_{t}\right)^{2}\right]
E t = E [ ( U ^ ∗ − U t ) 2 ]
基于上述讨论作者提出了一种解决序贯决策中softmax value
估计的办法(Empirical Exponential Weight (E2W) ),直观的理解就是期望足够的探索用于保证得到较好的估计值,进而使得policy
收敛于最优策略
π
∗
\pi^{*}
π ∗ 。动作的采样分布如下所示:
π
t
(
a
)
=
(
1
−
λ
t
)
f
τ
(
r
^
)
(
a
)
+
λ
t
1
∣
A
∣
\pi_{t}(a)=\left(1-\lambda_{t}\right) \mathbf{f}_{\tau}(\hat{\mathbf{r}})(a)+\lambda_{t} \frac{1}{|\mathcal{A}|}
π t ( a ) = ( 1 − λ t ) f τ ( r ^ ) ( a ) + λ t ∣ A ∣ 1
其中
λ
t
=
ε
∣
A
∣
/
log
(
t
+
1
)
\lambda_{t}=\varepsilon|\mathcal{A}| / \log (t+1)
λ t = ε ∣ A ∣ / log ( t + 1 ) ,表示探索的衰减系数。
所采用的方法?
作者将MCTS
和maximum entropy policy
结合起来,得到MENTS
算法,能够获得更快的收敛速度。两点创新:
使用E2W
算法作为树搜索的策略;
π
t
(
a
∣
s
)
=
(
1
−
λ
s
)
f
τ
(
Q
s
f
t
(
s
)
)
(
a
)
+
λ
s
1
∣
A
∣
\pi_{t}(a | s)=\left(1-\lambda_{s}\right) \mathbf{f}_{\tau}\left(\mathbf{Q}_{\mathrm{sft}}(s)\right)(a)+\lambda_{s} \frac{1}{|\mathcal{A}|}
π t ( a ∣ s ) = ( 1 − λ s ) f τ ( Q s f t ( s ) ) ( a ) + λ s ∣ A ∣ 1
使用softmax value
评估每个节点并用于simulations
的反向传播。
其中Q-Value
的估计使用softmax backup
。
Q
s
f
t
(
s
t
,
a
t
)
=
{
r
(
s
t
,
a
t
)
+
R
t
=
T
−
1
r
(
s
t
,
a
t
)
+
F
τ
(
Q
s
f
t
(
s
t
+
1
)
)
t
<
T
−
1
Q_{\mathrm{sft}}\left(s_{t}, a_{t}\right)=\left\{\begin{array}{ll} r\left(s_{t}, a_{t}\right)+R & t=T-1 \\ r\left(s_{t}, a_{t}\right)+\mathcal{F}_{\tau}\left(\mathrm{Q}_{\mathrm{sft}}\left(s_{t+1}\right)\right) & t<T-1 \end{array}\right.
Q s f t ( s t , a t ) = { r ( s t , a t ) + R r ( s t , a t ) + F τ ( Q s f t ( s t + 1 ) ) t = T − 1 t < T − 1
取得的效果?
我的微信公众号名称 :深度学习先进智能决策 微信公众号ID :MultiAgent1024 公众号介绍 :主要研究深度学习、强化学习、机器博弈等相关内容!期待您的关注,欢迎一起学习交流进步!