1 历史背景
1.1 西洋双陆棋的博弈特性
西洋双陆棋是一种两人参与的回合制棋盘游戏,其核心特征是运气与策略的混合:骰子点数决定可行动作的随机性,而玩家需在概率框架内做出最优走法。棋子的移动、阻挡与取胜机制使得局面空间极大(约10^20种局面),远超过国际象棋(约10^47)但小于围棋(约10^170)。然而,西洋双陆棋的博弈深度较浅,通常一局在20-30回合内结束,且胜负判定只依赖棋子是否全部移出棋盘,而非子力交换。这些特性使其成为早期AI研究的理想实验场:既有足够的复杂度考验算法,又不至于因搜索空间过大而无法求解。
1.2 早期计算机博弈的局限
在20世纪80年代,计算机博弈的主流方法是基于规则的手工编写评估函数(如棋型、子力、位置得分)与搜索算法(如Alpha-Beta剪枝)的结合。这类方法在国际象棋上取得了显著成功(如IBM的Deep Blue在1997年击败卡斯帕罗夫),但在西洋双陆棋上遭遇瓶颈:骰子随机性使得确定性搜索失效,人类专家也难以总结出完整且精确的评估规则。已有的西洋双陆棋程序,如Berliner的BKG 9.8(1979年),虽能击败业余选手,但面对世界冠军时毫无胜算。此外,这些程序依赖大量人工调参,泛化能力差,且无法通过自我对弈提升。
1.3 Gerald Tesauro 的研究动机
Gerald Tesauro 当时在IBM T.J. Watson研究中心从事神经网络与强化学习的基础研究。他注意到时间差分学习(TD)方法在简单迷宫和预测任务中展现出的高效性,希望将其应用于更复杂的连续决策问题。西洋双陆棋因其回合制、离散状态和明确胜负信号的特点,成为验证TD算法在函数逼近下可行性的绝佳测试平台。Tesauro 的目标并不仅是打造一个强大的游戏程序,更是探究“一个智能体能否仅通过与环境(这里指自己)的交互,学习到最优策略”——这本质上是对强化学习核心原理的实证检验。
2 核心技术
2.1 时间差分学习(TD(λ))
2.1.1 强化学习中的值函数估计
在强化学习框架中,智能体通过与环境交互获得奖励,目标是学习一个策略π使得期望累积奖励最大化。值函数V(s)表示从状态s出发遵循策略π所能获得的预期总奖励。在西洋双陆棋中,奖励仅在终局给出(赢=+1,输=-1),所有中间状态奖励为0。因此,学习V(s)本质上是在学习从当前局面到最终胜负的概率映射。传统蒙特卡洛方法需要完整一局结束后才能更新值函数,而TD方法允许每步迭代后立即更新,显著加速学习。
2.1.2 TD(0) 与 TD(λ) 的区别
TD(0)是最简单的增量式方法:在每一步使用当前状态的值和下一状态的值之间的差异(时间差分误差)来更新当前状态的值。其更新公式为:V(s_t) ← V(s_t) + α[ r_{t+1} + γV(s_{t+1}) - V(s_t) ],其中α为学习率,γ为折扣因子。TD(λ)则引入资格迹(Eligibility Traces),允许误差向后传播多步,λ(0≤λ≤1)控制传播的范围:λ=0时退化为TD(0),λ=1时近似蒙特卡洛方法。Tesauro 发现λ=0.7附近能取得最佳学习效果,既保留TD的快速更新特性,又能利用更远期的信息。
2.2 神经网络架构
2.2.1 输入特征的表示方式
TD-Gammon采用的全连接前馈神经网络,输入层包含约198个神经元,编码当前棋盘状态。特征主要分为三类:1)己方与对方每个点的棋子数量(24个点×2方=48个神经元,采用独热编码或二值编码);2)双方离开棋盘(已移出)的棋子数(2个神经元);3)双方被击中后处于“酒吧”(Bar)的棋子数(2个神经元)。此外还编码了骰子点数(21种组合的独热编码)以及当前玩家标识。这种高度结构化的输入设计利用了西洋双陆棋的先验知识,但相比纯像素级输入仍属“轻量级手工特征”——不过Tesauro指出,若采用更通用的编码(如每个点上的棋子数量直接作为实数),效果同样出色。
2.2.2 隐藏层设计与激活函数
网络包含一个隐藏层,神经元数量最初为80个(TD-Gammon 1.0),后续版本扩展到160个(TD-Gammon 2.0)甚至更多。隐藏层使用Sigmoid激活函数,输出层使用Tanh函数将胜率映射至[-1,1]区间(-1表示必输,+1表示必胜)。这种架构在1992年属于中等规模,约需1.5万个权重参数。隐藏层的作用是学习到诸如“控制关键点”“阻塞对手通路”“构建安全战略”等高阶特征表示,而无需人类显式定义。
2.2.3 输出层的胜率预测
输出层仅有一个神经元,直接输出当前局面下当前玩家的胜率估计(经Tanh压缩)。该值为标量,范围在[-1,1]之间,训练目标是与实际对弈结果一致(+1或-1)。TD-Gammon的决策方式为:在当前状态s下,对每一个合法动作a,模拟执行后进入下一个状态s',然后使用网络评估V(s')作为该动作的效用;选择V(s')最高的动作(通常还会结合1-2步的搜索,见后文)。此方法使得网络仅需学习状态值函数,策略则隐式地通过“贪婪选择”获得。
2.3 自我对弈训练机制
2.3.1 探索与利用的平衡
TD-Gammon完全通过自我对弈进行训练:开始时网络权重随机初始化,让两个相同副本进行对弈(或者使用同一个网络轮流决策)。训练过程中,每一步的决策并非始终选择最优动作;为了探索,程序以较小概率(如ε-贪婪策略,ε≈0.05)随机选择合法动作。同时,TD(λ)算法本身对偶然的探索性走法具有纠错能力——即使某一步选择了较差的动作,后续的TD误差仍会修正对应状态的值估计。这种探索机制避免了过早收敛到局部最优。
2.3.2 训练轮次与收敛速度
TD-Gammon 1.0进行了约150万局自我对弈(约30万轮迭代,每轮5局),在当时的IBM RS/6000工作站上耗时数天。更先进的版本(2.0)训练了300-400万局。训练过程中,网络值函数在最初的10万局后已能击败大多数业余玩家;在100万局左右达到专家水平;后续提升渐趋缓慢。值得注意的是,由于骰子随机性,同一网络在不同训练轮次之间会表现出波动,但整体趋势持续上升。Tesauro通过多次运行并取最佳结果来确保稳定性。
3 性能表现
3.1 与人类专家的对弈结果
3.1.1 击败世界冠军的里程碑
1992年,TD-Gammon 1.0即在没有任何人类棋谱输入的情况下,达到了与顶尖人类选手(如世界冠军Bill Robertie)相媲美的水平。经过进一步调参和增加隐藏层神经元数量的2.0版本(1994-1995年),在多次与人类冠军的测试中取得了接近甚至稍胜一筹的胜率。最著名的演示是:TD-Gammon在与Robertie的比赛中以微弱优势获胜,但Robertie评价其“下法极其老练,尤其在防守和概率判断方面令人惊叹”。不过需注意,这些对弈通常采用短局(如7分制),且世界冠军并非全程处于最佳竞技状态,但TD-Gammon的表现仍被认为是里程碑式的——它是第一个通过自我对弈学习即达到超人水平的游戏AI。
3.2 与其他AI程序的比较
3.2.1 基于规则的方法
在TD-Gammon出现之前,最强的西洋双陆棋程序是“西安”(Schnapps)和“柏吉斯”(Burgess)等基于手工规则的专家系统。这些程序需要数十条复杂规则(如“避开对手五点阵”“优先建立屏障”等),且面对新局面时经常表现僵硬。TD-Gammon无需显式规则即可习得与人类专家高度一致的策略,并且在某些细节上(如复杂概率计算)超越了基于规则的方法。直接对比显示:TD-Gammon 2.0对阵当时的冠军程序“Schnapps”取得了约70%的胜率。
3.2.2 传统搜索算法
由于西洋双陆棋的随机性,传统的确定搜索(如Alpha-Beta剪枝)难以直接应用。一些程序尝试使用期望搜索(Expectimax)结合手工估值函数,但搜索深度受限于分支因子(约21×21种骰子组合和后续走法)。TD-Gammon虽然自身不进行深层搜索,但Tesauro发现:在决策时进行1-2层的前瞻(即对当前局面下的所有可能骰子结果取平均,再选择最优动作)能提升约10%的棋力——这本质上是一种“浅层搜索+神经网络值函数”的混合方法,后来被AlphaGo等系统继承并深化。
4 学术影响
4.1 对强化学习理论的贡献
4.1.1 从表格法到函数逼近的跨越
20世纪80-90年代初,强化学习的研究多局限于表格型的简单问题(如网格世界、井字棋)。TD-Gammon首次证明:即使是具有连续状态空间的复杂博弈,也可通过神经网络函数逼近实现高效学习。此前,学界普遍担心函数逼近会导致TD算法发散或不稳定(该问题后来由Baird等人在1995年理论分析中得到部分解释)。TD-Gammon的成功为后续的“梯度时间差分学习”(GTD)和“深度Q网络”提供了实证信心。同时,它也是“继时差分学习”这个术语的推广者之一——Tesauro 1995年的论文被引超过8000次。
4.2 对深度强化学习的启发
4.2.1 AlphaGo 与 TD-Gammon 的传承
AlphaGo(2016年)的核心技术路线与TD-Gammon高度相似:采用深度神经网络作为值函数和策略函数,并通过自我对弈进行强化学习。区别在于AlphaGo使用了更深的网络(多个卷积层)、更复杂的搜索(蒙特卡洛树搜索)以及更大规模的并行计算资源。DeepMind团队成员多次在公开场合表示,TD-Gammon是深度强化学习的重要先驱——它启发了“学习预测”而非“学习规则”的思路。甚至可以说,没有TD-Gammon,就没有AlphaGo的诞生(至少会晚到来)。
4.3 在游戏AI以外的应用
4.3.1 机器人控制与决策
TD-Gammon展示的“从自身体验中学习控制策略”的思想,被广泛应用于机器人运动控制、自动驾驶策略优化等领域。例如,在机器人抓取物体任务中,算法可通过试错(自我对弈的另一种形式)习得合适的关节角度序列。尽管具体架构从神经网络进化到了深度强化学习(如DDPG、PPO),但TD-Gammon的价值函数近似方法仍是基石。此外,时间差分学习在优化库存管理、金融交易策略等序列决策问题中也得到应用,其高效更新特性尤其适合实时系统。
5 局限性讨论
5.1 对特殊局面的应对不足
TD-Gammon尽管整体水平高超,但在某些极端局面下表现不佳。例如,当棋盘出现对称式僵局(双方均无有效突破点)时,网络可能会产生震荡估值,导致决策犹豫。此外,对于某些需要“牺牲短期利益换取长期优势”的陷阱式走法,网络偶尔会失误——因为其训练数据全部来自自我对弈,缺乏人类棋手在错位局面下的经验。Tesauro曾指出,若让程序学习更多的人类棋谱,其棋力可能有小幅度提升,但这违背了他的研究初衷(纯自我对弈)。
5.2 训练过程的随机性与稳定性
由于骰子随机性,即使同样的网络和训练参数,每次运行的结果也会有微小差异。这种随机性使得调试和重现研究结果变得困难。更重要的是,TD-Gammon的训练在后期可能陷入“循环陷阱”:某些局面下的值函数被高估,导致网络不断选择该路径,从而强化了错误估计。尽管TD(λ)提供了一定程度的纠错,但完全消除这种偏差至今仍是强化学习中的开放问题。
5.3 硬件与算力的时代限制
1992年的计算资源极其有限:IBM RS/6000工作站的浮点性能仅约100 MFLOPS,训练150万局需数天。相比之下,现代PC可在数小时内完成同样规模的训练。由于算力不足,TD-Gammon的隐藏层只能设置80-160个神经元,网络容量较小,无法学习更精细的特征表示。若当年有当前水平的GPU和分布式训练,TD-Gammon可能会更早实现超人类水平,甚至可能无需手工设计输入特征——2017年出现的“TD-Gammon on the GPU”即证实了这一点。
6 后续发展与变种
6.1 TD-Gammon 2.0 与改进版
Tesauro 在1995年发布了TD-Gammon 2.0,主要改进包括:隐藏层神经元增加到160个,训练局数增加至300万以上,并引入了“回顾性学习”(Retrospective Learning)——在终局后将整局经验再次用于训练,类似于优先经验回放。这一版本棋力相比1.0提升了约15%,在多项测试中持平或超越世界冠军。此外,Tesauro还尝试将网络输出改为直接输出动作概率(策略网络),但发现对于西洋双陆棋,值函数方法更有效。
6.2 现代西洋双陆棋AI的演化
自TD-Gammon之后,西洋双陆棋AI沿着三条路线进化:1)更深的神经网络(如5-10层隐藏层),配合GPU训练;2)与蒙特卡洛树搜索结合,例如“BGMM”(Backgammon Master Model)采用类似AlphaZero的方法;3)引入注意力机制处理长程依赖。其中最具代表性的现代系统是“Cubeful”引擎,它在评价是否加倍(Doubling Cube)的决策上明显优于TD-Gammon。不过,纯值函数强化学习方法仍然是最流行的框架,因为西洋双陆棋的规则复杂度适中,不需要AlphaGo级别的资源。
6.3 轻量级复现与教学工具
由于TD-Gammon架构简单,许多教学项目对其进行复现作为入门练习。例如,1998年提出的“TD-Gammon in 50 lines of Python”虽然性能差强人意,但清晰地展示了TD(λ)算法的核心。近年来,在Jupyter Notebook或浏览器中运行简化版TD-Gammon已成为强化学习课程的标准实验,学生可通过修改超参数直观地观察学习过程。这种轻量级复现帮助普及了强化学习思想,也促进了知识传承。
7 相关词条
7.1 西洋双陆棋
一种古老的双人回合制棋盘游戏,使用骰子和棋子。其概率性特征使其成为AI研究的理想测试平台。
7.2 时间差分学习
强化学习中的一种预测方法,通过时间差分误差增量更新值函数,是TD-Gammon的核心算法。
7.3 强化学习
机器学习的一个分支,研究智能体如何通过与环境交互学习最优决策策略。TD-Gammon是强化学习的经典应用范例。
7.4 神经网络
由大量人工神经元连接组成的计算模型,能够逼近复杂函数。TD-Gammon使用全连接前馈网络作为值函数近似器。
7.5 人类博弈与AI
探讨人工智能与人类玩家在棋类、游戏等领域竞合的跨学科话题。TD-Gammon是该领域早期突破性成果之一。