1996年,IBM 的 Deep Blue 著名地击败了当时的世界冠军加里·卡斯帕罗夫。为了实现这一目标,IBM 投入数百万美元研发了一台专门的超级计算机,配备了 30 个 P2SC 处理器和 480 个定制 VLSI 国际象棋协处理器,能够每秒分析超过 2 亿个位置。这次胜利导致许多人认为,庞大的定制硬件是击败人类特级大师的前提。然而,最近的实验表明,人类与机器性能之间的差距更多是由软件的复杂程度而非单纯的计算数量来弥补的。
国际象棋人工智能的实力通常源于三个因素:分析的着法数量、这些着法的质量以及分析的深度。虽然现代引擎通过每秒处理数百万个位置在第一个因素上占据主导地位,但过去 30 年中最显著的进步反映了人类能力的提升:即优化引擎如何选择和评估最关键的着法。在一次受控测试中,一个现代 Stockfish 引擎被移植到一台配备 64MB RAM 的 200 MHz Intel Pentium Pro 上运行——这是 1995 年的标准桌面配置。尽管受到硬件限制,该引擎在古典时间控制下达到了估计的 Elo 分数 3300,远超卡斯帕罗夫不足 2800 的评分。

这张图片展示了在配备 64MB RAM 的 200 MHz Intel Pentium Pro 上运行现代国际象棋引擎的实验。
现代与 1996 年时代引擎之间的差异主要可以用算法的演变来解释。当一个名为 'Crafty' 的 1996 年时代引擎更新了现代技术——如 fail-soft 剪枝、后期着法减少和神经网络评估 (NNUE) 时,即使限制在相同的旧式硬件上,其 Elo 分数也大幅跳升。相反,将今天的 Stockfish 简单移植到 Pentium Pro 上,仅通过利用现代逻辑就获得了较高的 Elo 分数(在每步 1 秒的情况下约为 2496)。通过进一步针对 Pentium 的 32 位架构优化这些算法,引擎的性能在每步 30 秒的情况下达到了 3180。这些结果表明,过去三十年国际象棋人工智能的大部分进步归功于更好的编程,而非更快的硅片。
然而,在旧式硬件上运行现代引擎涉及重大的技术权衡。由于 Pentium Pro 缺乏现代 SIMD 指令和 64 位寄存器,代码必须经过大幅重写以使用 32 位算术,并限制在 64MB 的内存上限内。这需要替换大型查找表并缩小 NNUE 模型,以确保引擎保持功能正常。虽然这些优化允许现代引擎统治 1996 年时代的软件,但 Pentium Pro 的 Elo 估计是从较短的时间控制推导至古典游戏的,这可能涉及线性缩放无法完全捕捉的收益递减。