下棋一直是人类智能的挑战,因此当我们在衡量机器智能的时候下棋自然成了人工智能的标志之一。下棋程序最早可以追溯到二战时图灵对于计算机下棋的研究,图灵甚至在1947年编了第一个下棋程序,但收到当时计算机的能力限制只有比较低的水平。

所有下棋程序有一个重要的理论基础,那就是香农发表的《计算机下棋程序》这篇文章。香农把棋盘定义为二维数组,每个棋子都有一个对应的子程序计算机器所有可能性,最后再加上一个评估程序作出最后的决策。香农的论文引用了冯诺伊曼和经济学家摩根斯顿合作的《博弈论与经济行为》以及维纳的《控制论》两篇论文。

机器下棋的研究从最简单的跳棋开始,后来发展到国际象棋,再到最近的围棋。最早连定理证明的开山鼻祖纽厄尔和司马贺都写过下棋程序。国际象棋最著名的下棋程序肯定是IBM的深蓝了,在1997的时候击败了国际象棋大师卡斯帕罗夫。卡斯帕罗夫从最初完全看不上下棋程序到后来声称深蓝有几步棋表现出了拟人的放弃短期利益的行为。

相比国际象棋,围棋的棋子更多,对下棋程序的要求更加复杂。谷歌首次利用强化学习是机器和自己对弈进行学习。强化学习由萨顿在1980年被发明,但是一直不被重视,但是谷歌的AlphaGo使其成为显学。AlphaGo在2016年和2017年分别战胜了世界冠军李世石和柯洁。并在当年实现了从0开始,无任何人类经验输入,只告知围棋基本规则,它只用了3天就自己和自己下了490万盘,之后就可以战胜第一代AlphaGo Lee。

人类下棋到底能不能赢人工智能(人工智能简史之计算机下棋简史)(1)

计算机下棋

,