一、Behavior Cloning
模仿学习,模仿人的动作~
缺陷:如果状态St没有出现在训练数据中,那么无法给出下一个动作是什么,at就不会太好,并且会出现错误累加(棋盘局势悦来越离谱)
二、Reinforcement learning of policy network
策略网络强化学习
1.定义奖励:如果agent赢,从第一步到最后一步所有的回报都为+1
如果agent输,聪第一步到最后一步所有的回报都为-1
直观上说:win = 所有的动作都是好棋 lose = 所有动作都是臭棋
2.策略梯度计算:
通过策略梯度的计算,更新参数,强化策略网络
3.蒙特卡洛树搜索:
蒙特卡洛树搜索分为四步,selection、expansion、evaluation、backup,一直重复这四个步骤,每次都选择价值更优的位置去走。
- Selection。从根节点状态出发,迭代地使用UCB1算法选择最优策略,直到碰到一个叶子节点。叶子节点是搜索树中存在至少一个子节点从未被访问过的状态节点。
- Expansion。对叶子节点进行扩展。选择其一个从未访问过的子节点加入当前的搜索树。
- Simulation。从2中的新节点出发,进行Monto Carlo模拟,直到博弈结束。
- Back-propagation。更新博弈树中所有节点的状态。进入下一轮的选择和模拟
三、AlphaGo VS AlphaGo Zero
AlphaGo Zero不进行模仿学习,也就是不模仿人类的下棋经验作为初始网络,而是直接用蒙特卡洛搜索树进行训练,并且博弈效果远高于AlphaGo,事实证明,人类的经验对于AlphaGo是有害的!