多年以后,面对李世石与 AlphaGo 的厮杀,加里·卡斯帕罗夫将会回想起,与深蓝对弈的那个遥远的下午。彼时的对手是一个庞大的超级计算机,记下变化多端的开局,以固定的逻辑决策应对中局,穷极所有可能性筛选残局。人工智能蹒跚学步之时,许多概念尚且是空中楼阁,计算机能够战胜优秀的人类围棋选手,这样的想法不啻于天方夜谭。
棋类游戏的核心在于根据棋局判断下一手的最优下法,深蓝通过穷举的方法在国际象棋的棋局中解决了这个问题。在 64 格的国际象棋棋盘上,深蓝的运算能力决定了它能算出 12 手棋之后的局面下的最优解,而身为人类棋手执牛耳者的卡斯帕罗夫最多只能算出 10 手棋,多出来的两手棋就会成为左右战局的关键因素。
深蓝的核心在于“算”:利用强大的计算资源来优化目标函数。深蓝本身就是一套专用于国际象棋的硬件,大部分逻辑规则是以特定的象棋芯片电路实现,辅以较少量负责调度与实现高阶功能的软件代码。其算法的核心是暴力穷举:生成所有可能的下法,然后执行尽可能深的搜索,并不断对局面进行评估,尝试找出最佳的一手。
可在围棋棋盘上,可以落子的点数达到了 361 个。别说 12 手棋,就是 6 手棋的运算量都已经接近于天文数字!这使得计算机相对于人脑的运算优势变得微不足道,走出优于人类棋手的妙手的概率也微乎其微,这也是为什么计算机会在围棋领域被看衰的原因。
围棋的棋盘状态远比国际象棋复杂,以穷举法进行最优落子策略的推演无异于痴人说梦。事实上,顶级的围棋棋手更多地依赖模糊的直觉来评判特定的棋盘状态的好坏。但理性推演与感性判断之间似乎存在着不可逾越的巨大鸿沟,尤其是对于计算机程序而言,依赖直觉是不可能的事情。因此并没有显而易见的方式来将国际象棋领域的成功复制到围棋上,直到 AlphaGo 的横空出世。
与深蓝相比,AlphaGo 的核心则在于“想”。与专用硬件深蓝不同,AlphaGo 是一套能够运行在通用硬件之上的纯软件程序。它汲取了人类棋手海量的棋谱数据,并依赖人工神经网络和深度学习技术从这些数据中学会了预测人类棋手在任意的棋盘状态下走子的概率,模拟了以人类棋手的思维方式对棋局进行思考的过程。