20 年前,IBM 的深蓝战胜了国际象棋冠军卡斯帕罗夫,让人们感受到了计算机的强大。20 年后的今天,计算机的下棋能力更是突飞猛进了。不过,尽管计算机的速度越来越快,它下棋的方法却没有什么变化,基本还是靠蛮力,就是说,它会快速搜索所有可能的棋步,然后做出最好的选择。
与计算机相比,人类有着不同的思维方式。通过对棋局的判断,人类能够找出最有利的选择。据 Technologyreview 网站报道,伦敦皇家大学的 Matthew Lai 把人工智能技术用于象棋引擎的构建。他开发的象棋引擎 Giraffe 能够像人类一样思考。与传统象棋引擎完全不同,Giraffe 可以对棋局做出判断,自己学习下棋技巧。
自完成之日起,Giraffe 下棋的水平就等同于最好的传统象棋引擎。与人类相比,它的水平等同于国际棋联的“国际象棋大师”。Giraffe 背后的技术是神经网络。在处理信息的方式上,神经网络是模仿人脑的。它拥有许多层的节点,而且,通过训练,这些节点的连接方式会发生改变。
在训练神经网络的时候,Lai 采用了来自真实比赛的数据,确保棋局是合理而且可能出现的,同时,他也使用了许多不常见的棋局。这是因为,虽然通常不出现在比赛中,但是,它们可以缩短计算机内部检索的时间。从计算机象棋游戏的数据库中,Lai 随机选择了 500 万个棋局,然后,他为每个棋局增加了一个合理的棋步,最终生成 1750 万个棋局。最后,他让 Giraffe 自己下棋,改善其判断能力,更重要的是,让其能够拥有自我学习的能力。
Lai 使用了一套名为 Strategic Test Suite 的标准数据库测试 Giraffe。这套测试的最高分数是 15000 分。在自主学习阶段,Giraffe 很快就达到了 6000 分,72 小时之内达到 9700 分。这已经赶上目前最好的象棋引擎了。
当然,Giraffe 也有自己的缺点。神经网络的运算速度比较慢,因此,与其它象棋引擎相比,Giraffe 搜索速度要慢上 10 倍。尽管如此,它仍然是有竞争力的。“与现在的多数象棋引擎不同,Giraffe 的优势不是来自于非常的远见,而是精确评估棋局的能力。人类能够很自然地理解复杂的位置概念,但是,象棋引擎长期以来都缺乏这种能力,” Lai 说,“这在开局和残局阶段特别重要。在这两个阶段,它的表现特别好。”
图片来自 fansshare