强化学习—— 蒙特卡洛树(Monte Carlo Tree Search, MCTS)
1. 单一状态蒙特卡洛规划
以 多臂赌博机(multi-armed bandits) 为例
1.1 特点
为序列决策问题,在利用(exploitation)和探索(exploration)之间保持平衡,利用为过去决策中的最佳汇报,探索为未来获得更大回报。
1.2 数学模型
- 设有k个赌博机,选择第I个赌博机后,获得的回报为: V I t V_{I_t} VIt
- 经过n次操作后的悔值函数为(第一项为最大的奖赏): Q n = m a x i = 1 , . . . , k ∑ t = 1 n V i , t − ∑ t = 1 n V I t , t Q_n=\displaystyle{max_{i=1,...,k}}\sum_{t=1}^n V_{i,t} - \sum_{t=1}^n V_{I_t,t} Qn=maxi=1,...,kt=1∑nVi,t−t=1∑nVIt,t
2. 上限置信区间策略
upper confidence bound, UCB
- 记录第i个赌博机过去t-1时刻的平均奖赏,在t时刻,选择具有最佳上限置信区间的赌博机: I t = m a x i = 1 , . . . , k { V ^ i , T i ( t − 1 ) + 2 ⋅ l o g ( t ) s } I_t=max_{i=1,...,k}\{\hat{V}_{i,T_i(t-1)}+\sqrt{\frac{2\cdot log(t)}{s}}\} It=maxi=1,...,k{ V^i,Ti(t−1)+

本文围绕蒙特卡洛树搜索算法展开,先介绍单一状态蒙特卡洛规划,包括其特点及数学模型,接着阐述上限置信区间策略。详细讲解蒙特卡洛树搜索的选择、扩展、模拟、反向传播步骤,并给出流程图。最后给出五子棋的MCTS代码实现。
最低0.47元/天 解锁文章
2974





