围棋局面多到无法穷举,AlphaGo 却用搜索加学习的组合攻克了它。本文解释蒙特卡洛树搜索如何在有限算力下聚焦有希望的分支,以及策略网络与价值网络各自解决了什么问题。
核心要点
- 蒙特卡洛树搜索用随机模拟把算力集中在更有希望的分支
- 策略网络缩小搜索宽度,价值网络减少模拟深度
- 自我对弈让系统摆脱人类棋谱限制继续变强
围棋为什么难
围棋的合法局面数量远超可观测宇宙中的原子数量,无法像简单棋类那样穷举。同时,判断一个局面的优劣极其困难,棋手依赖的是难以言传的棋感。这两个特点让围棋长期被视为人工智能的硬骨头。
传统博弈程序依赖搜索树加局面评估函数。搜索深度有限时,评估函数的偏差会被层层放大。围棋每一步的选择接近数百种,分支因子远高于国际象棋,纯靠暴力搜索行不通。
蒙特卡洛树搜索
蒙特卡洛树搜索(MCTS)换了思路:不追求评估每个局面,而是把计算资源集中在更有希望的分支上。它反复做四件事——选择、扩展、模拟、回传:沿着当前树走到一个节点,展开新局面,随机对弈到终局,再把胜负回传到路径上的所有节点。
在选择环节,MCTS 用 UCT 之类的公式平衡探索与利用:既倾向于访问胜率高的分支,也给访问次数少的分支留机会。随着模拟次数增加,树会逐渐长成偏向好手的结构,这是一种用随机性换取洞察的聪明做法。
AlphaGo 加了什么
2016 年 AlphaGo 战胜围棋世界冠军,成为人工智能的广为人知的里程碑。它在 MCTS 的基础上加入两个神经网络:策略网络负责建议下一步该往哪走,缩小搜索宽度;价值网络直接评估局面胜率,减少随机模拟的深度。
网络的训练分几步:先用人类棋谱做监督学习,让策略网络模仿高手;再通过自我对弈的强化学习继续提高;价值网络则利用自我对弈的胜负结果训练。后来的 AlphaGo Zero 完全抛弃人类棋谱,从随机对弈起步,反而达到更强水平。
留下的遗产
AlphaGo 的意义超出围棋本身。它证明搜索与学习的组合可以攻克看似无法穷举的问题,这套思路后来被用于芯片设计、程序优化与科学发现等组合优化任务。它也提醒我们,自我博弈能在没有人类数据的情况下持续进步。
常见问题
AlphaGo 是把所有棋局都记住了吗?
没有,也做不到。它做的是两件事:用搜索在当下局面中选择更好的落子,用神经网络把对局经验泛化成对局面的判断。网络学到的是可以迁移的模式,而不是逐局记忆,这也是它能在陌生局面下做出合理选择的原因。
本文为 AI 科普内容,仅用于知识普及,不构成任何技术选型、投资或职业决策建议。