阅读Google如何解决翻译问题让我思考.是否有可能通过分析数百万个游戏并确定基于(完全?)统计数据的最佳可能移动来构建强大的国际象棋引擎?有几个这样的国际象棋数据库(这是一个拥有450万个游戏的数据库),并且可以使用诸如所涉及的玩家的评级,游戏的年龄等因素来对相同(或镜像或反射)位置的移动进行加权.国际象棋理论改进的因素)等.为什么这不是建立国际象棋引擎的可行方法的任何原因?
这样的事情已经完成:它是打开书籍的基本概念.
由于游戏的性质,计算机AI在一开始就是出了名的糟糕,当有很多可能性时,最终目标仍然遥遥领先.当战术可能性开始形成时,它开始向中间发展,并且在最终游戏中可以完美地发挥,远远超过大多数人的能力.
为了帮助AI在开始时做出好的动作,许多引擎依赖于打开书籍:基本上是统计推导的移动流程图.高评级玩家之间的许多游戏都进行了分析,建议被硬编码成"书",虽然这些位置仍在"书中",但人工智能甚至没有"思考",只是遵循"书"的内容. "说.
有些人也可以记住开卷书(这主要是为什么菲舍尔发明了他的随机国际象棋变体,因此记忆开头变得不那么有效了).部分由于这个原因,有时在一开始就采取非传统的举动,而不是因为它在统计上是历史上最好的举动,而恰恰相反:它不是一个"已知"的位置,可以带走你的对手(人或计算机)出书".
在频谱的另一端,有一个名为endgame tablebase的东西,它基本上是一个先前分析的残局位置的数据库.由于以前对这些职位进行了详尽的搜索,所以可以使用它来实现完美的游戏:给定任何位置,可以立即决定它是赢,输或抽,以及实现/避免结果的最佳方式是什么.
在国际象棋中,这样的事情只适用于开场和比赛结束.中间游戏的复杂性使游戏变得有趣.如果只是通过查看桌子就可以下棋,那么游戏就不会那么令人兴奋,有趣和深刻.
好吧,450万场比赛仍然只涵盖了所有可能游戏的一小部分(极小).
虽然你会有大量的获胜和失败的位置,但这会留下将其减少到一组可用参数的问题.一个非常古老的问题,神经网络作为标准方法.但神经网络并没有赢得国际象棋锦标赛.