与此相对,使用了电脑和人工智能的将棋软件,又是如何进行下一步选择的呢?
如同之后会展开叙述的那样,虽然最近有些软件也采用了不同的方式(这是很重要的),但最大的特征依旧是进行人类无法比拟的大量计算,对盘面的各种可能性进行预判和分析。
将棋软件选择的关键,是第一章中介绍的大数据与硬件的进步。
例如在国际象棋界,早在1997年,IBM开发的深蓝就打败了当时的世界冠军。深蓝获胜的关键在于国际象棋一直以来就有记录棋局的习惯。就算是业余选手的棋谱,也有很多存档。
据说,当时深蓝的数据库中有多达100万局的棋谱档案。不仅如此,它还配有1秒钟可以分析2亿步的硬件。此外,残局——接近终局时盘面上棋子越来越少的局面——的完整棋谱也发挥了很大的作用。庞大的棋谱数据与计算能力相结合,使得在软件算法还不是很成熟的20年前,电脑可以战胜人类。
从根本上来说,AlphaGo的能力与深蓝的是一个道理。
AlphaGo的基础部分,是通过网上15万局左右的人类棋谱学习得到的。据说,它通过这种方法学习了近3000万手的局面和棋步,又通过与自己对局,收集到了在统计学上可以信赖的数据信息,从而变得更加强大。AlphaGo与自己的对局数量高达100万局,如果让人类来下,要花一千多年才可能实现。
要完成100万局,大家可能会认为这是非常荒唐的一件事(对于人类来说确实如此),但是在AlphaGo之间,恐怕10秒之内就能下完一盘。所以如果采用DeepMind公司能够进行高速运算的电脑,100万局应该是花不了多少时间的。
将棋程序也是如此。如同第一章中所介绍的那样,国际象棋程序也可以将搜索算步的Stockfish运用于算法,可以与其他电脑以1秒1局、10秒1局的速度,进行大量练习。