国际象棋引擎
国际象棋引擎是一种分析局面并能计算出最强着法的程序。如今顶尖的国际象棋引擎估计等级分超过3500——比任何人类棋手,包括现任世界冠军,大约强600分。
它是每个分析棋盘、每场直播中的评估条,以及职业层面每项开局准备的背后大脑。如果你曾在赛后点击“分析”,你就已经使用过国际象棋引擎。屏幕上徘徊在+0.3或-1.5附近的数字,就是引擎以兵为单位对谁占优势的判断。大多数棋手通过图形界面与对局引擎交互,但引擎本身没有棋盘、没有棋子、没有图形——只有纯粹的计算。
什么是国际象棋引擎?
国际象棋引擎分析局面,搜索可能的后续变化,并找出它能找到的最强着法。Stockfish在标准硬件上每秒可评估多达一千万个局面。像Leela Chess Zero这样的神经网络引擎评估的局面数量少得多,但具有更深的局面理解——每次评估都“更聪明”,弥补了数量上的不足。
每位严肃的棋手都用引擎进行准备。有头衔的棋手检查开局新着、验证战术构想,并在赛前分析对手的对局。解说员在直播中运行引擎。教练用它们找出学生对局中的错误。无论你是在复盘一盘经典的特级大师对局,还是检查超快棋中的失误,引擎都是每位棋手如今依赖的沉默伙伴。喜欢在实体棋盘上进行引擎辅助练习的棋手,也可以使用专用的国际象棋电脑进行训练。
世界最佳国际象棋引擎
国际象棋引擎参加锦标赛以决出表现最佳的程序,包括TCEC(顶级国际象棋引擎锦标赛)和Chess.com计算机国际象棋锦标赛等赛事。以下是定义当前时代的引擎。
Stockfish
Stockfish是公众可获得的最强国际象棋引擎,多年来一直如此。它起源于2008年,当时是挪威程序员Tord Romstad创建的一款名为Glaurung的开源引擎的分支。意大利开发者Marco Costalba将其更名为Stockfish——因为它是“在挪威生产、在意大利烹制”的。自2020年起,Stockfish整合了NNUE(高效可更新神经网络),将传统搜索与神经网络评估相结合。它主导着每一项重大引擎竞赛,并为Lichess和Chess.com的分析工具提供支持。你现在最可能正在使用的在线国际象棋引擎?很可能就是Stockfish。
Leela Chess Zero(Lc0)
Leela Chess Zero是一款受Google DeepMind的AlphaZero启发的开源引擎。它于2018年1月由Gary Linscott发起,通过自我对弈自学国际象棋,最初只掌握规则。全球志愿者贡献算力来训练其神经网络。Leela在2018年底达到特级大师水平,此后一直是Stockfish的强劲对手。它的风格明显不同:更注重局面,更愿意为长期优势而牺牲,并能产生更接近人类的感觉。
AlphaZero
AlphaZero是改变一切的引擎。它由Google DeepMind开发,于2017年12月公布,通过四小时的自我对弈从零开始自学国际象棋——然后以28胜0负72和的战绩击溃Stockfish。DeepMind的Demis Hassabis称其风格“外星”:大胆的牺牲、长期的局面挤压,以及打破一切常规的着法。AlphaZero从未向公众发布,但其影响无处不在——如今每个顶尖国际象棋引擎都使用了它所推广的神经网络技术。
Komodo Dragon
Komodo由程序员Don Dailey和特级大师Larry Kaufman于2010年开始打造。它因卓越的局面评估而闻名——当其他引擎找不到计划时,Komodo能从无到有创造机会。2013年Dailey去世后,Mark Lefler继续开发。2020年,团队发布了融入NNUE技术的Dragon。如今归Chess.com所有,Komodo Dragon仍位居全球前三引擎之列。
Rybka
Rybka在捷克语中意为“小鱼”,在创始人Vasik Rajlich的带领下于2005年至2010年统治计算机国际象棋。该引擎赢得了四届世界计算机国际象棋锦标赛冠军,后因抄袭指控被剥夺这些头衔。尽管存在争议,Rybka对引擎开发的巨大影响仍是国际象棋史上的重要篇章。
“国际象棋引擎”一词的起源
机器下国际象棋的概念比计算机更古老。1770年,匈牙利发明家Wolfgang von Kempelen推出了“土耳其人”,一个装在柜子里的假人,看似能自主下棋。它击败了拿破仑和Benjamin Franklin。然而,这项发明是个骗局:里面藏着一人类国际象棋大师在操作棋子。
直到1912年,第一台真正的下棋机器才被创造出来,当时西班牙工程师Leonardo Torres y Quevedo开发了El Ajedrecista,一种能赢下王车残局的装置。现代计算机国际象棋始于20世纪50年代,当时Alan Turing编写了一个早期的下棋算法,IBM工程师Alex Bernstein构建了第一个全自动程序——每步耗时八分钟。
“引擎”一词于1986年进入国际象棋词汇,当时一家名为Sys-10的公司以“Chess Engine”为品牌营销其硬件。随着软件通过WinBoard及后来的通用国际象棋接口等协议与图形界面分离,这个术语保留了下来:“引擎”成为你在屏幕上看到的棋盘背后的计算核心。1997年世界冠军Garry Kasparov被IBM的Deep Blue击败时,人类对国际象棋计算机无可争议的统治时代结束了。
关于国际象棋引擎的最终思考
国际象棋引擎永远改变了对局的下法、研究方式和观看方式。没有顶尖棋手不用引擎准备。没有严肃转播不运行评估条。这项运动并未因它们而失色——如果说有什么影响,引擎通过揭示人类难以轻易发现的复杂层次,加深了对国际象棋的理解。无论你是在用在线国际象棋引擎分析上一盘对局,还是在关注Stockfish与Leela的TCEC超级决赛,这些程序如今已与现代国际象棋密不可分。
另见
阅读更多:国际象棋Stockfish、AlphaZero和Leela国际象棋引擎。
国际象棋引擎常见问题
什么是国际象棋引擎,它如何分析局面?
国际象棋引擎通过计算变化并评估结果局面来分析局面。
如今哪个国际象棋引擎被认为最强?
Stockfish被广泛认为是当今最强、最成功的国际象棋引擎。
国际象棋引擎和国际象棋AI有什么区别?
国际象棋引擎直接分析局面,而国际象棋AI可能使用机器学习技术。
国际象棋引擎如何计算最佳着法?
国际象棋引擎搜索着法树、评估局面,并比较数百万种变化。