扑克人工智能之父:AlphaGo赢不赢都缺实用性
人机对战无疑是4月10日的新闻焦点之一。一边在海南澄迈,扑克人工智能“冷扑大师”(Libratus)经过5日激战,在33000手一对一无限注德扑比赛中完胜中国“龙之队”的6名高手,斩获200万人民币金;另一边在的中国棋院,谷歌宣布被中国网民称为“阿尔法狗”的围棋人工智能AlphaGo将在5月下旬的乌镇对阵柯洁领衔的中国顶尖棋手,上演终极一战。
一南一北,一牌一棋,两则人机对战重磅消息在同一天出炉,虽然未必是有意针锋相对,但也足够令无心的观众相互比较。有些读者认为,连围棋这样高深的智力运动都早已被阿尔法狗拿下,扑克这样门槛低、上手简单的大众娱乐又何足挂齿呢?但反方则指出,扑克不是单纯靠计算的游戏,牵扯到很多心理上的博弈,有时甚至需要“飙演技”,AI能掌握这类游戏有些匪夷所思。
那么,德扑和围棋这两种智力游戏,对AI来说到底有什么区别?哪个难度更大一些?针对这些问题,澎湃新闻(就冷扑大师和阿尔法狗的相关资料进行了梳理与比较。
不过,冷扑大师的开发者、美国卡内基梅隆大学(CMU)计算机系教授托马斯·桑德霍姆(Tuomas Sandholm)在听到阿尔法狗将来华挑战的消息后,评价非常的简单:问题的关键并不在于中国顶尖棋手能不能赢,而在于生活中几乎不存在像围棋这样的“完美信息游戏”,因而阿尔法狗也缺乏实用场景。
自1988年CMU开发的“奥赛罗”程序击败世界黑白棋冠军以来,人类就在棋类游戏上节节败退。1997年,IBM的计算机“深蓝”击败了国际象棋棋坛卡斯帕罗夫,使人机对战在当时达到了高峰,其影响力绝不亚于去年阿尔法狗击败韩国棋手李世石。
计算机程序攻克这些棋类游戏的方法在本质上是一样的:搜索。下每一步棋都是一个决策点,在决策点上分化出不同的可能性,而整盘棋也就形成了一棵不停分叉的决策树。而计算机所做的,就是在每一个决策点上搜索胜率最大的那条径。
因而难度主要取决于决策点的数量。决策点越多,搜索难度自然越大。黑白棋的搜索量只有10的十几次方,国际象棋是10的四十几次方,而围棋的搜索量达到了惊人的10的170次方。
不过,也正因为围棋的搜索量太大,完全精确的结果是不可能得到的。因而,阿尔法狗在蒙特卡洛树搜索算法(Monte Carlo Tree Search)的基础上,结合走棋网络(Policy Network)、快速走子(Fast rollout)和价值网络(Value Network)进行预测和评估,得到尽可能接近最优的解。虽然阿尔法狗这个过程中做出了巨大突破,但它本质上还是在搜索。
扑克与棋类完全不同。围棋是一种“完美信息游戏”,场面上所有的情况都黑白分明地摆在棋面上,双方掌握对等的信息。然而,德扑中隐藏了很多信息,是一种“非完美信息游戏”。玩家不知道对手手中是什么牌,不知道五张公共牌会开出怎样的结果,也不知道对手猜测自己握有怎样的手牌。
因此,虽然一盘德扑的决策点数量是10的160次方,要少于围棋,但光靠搜索是打不了德扑的。德扑由此跳出了在搜索量上的较量,对AI提出了另一个方向上的:应对隐藏的信息。