人工智能当前,棋牌游戏留给人类的堡垒不多了

最近半年在写一个棋牌游戏的环境:RoomAI,目的是为方便自己和他人在棋牌游戏 AI 方面进行一些探索和研究。在 RoomAI 中,选手获得游戏环境给出的信息,当前选手选择合适的动作,游戏环境根据该动作推进游戏逻辑;重复上述过程,直到分出胜负;整个过程如下所示。

在开发过程中,查看了一些棋牌游戏相关的资料,在这里分享给大家。

1. 棋牌游戏

之前为了写一个棋牌游戏相关的专利,去查棋牌游戏的定义,发现搜狗百科 “棋牌游戏是棋类游戏和牌类游戏的统称”。这和没说有什么区别,囧。但这也说明,棋类游戏和牌类游戏是不同的,它们有其鲜明的特点。棋类游戏是明牌,专业说法是完全信息游戏。典型的棋类游戏有中国象棋、国际象棋和围棋等。牌类游戏是暗牌,专业说法是非完全信息游戏。典型的牌类游戏有斗地主、七鬼五二三、桥牌和德州扑克等。

另外,棋类游戏的游戏形式比较简单,一般是两位选手一对一对决。牌类游戏的游戏形式多种多样,不仅有两位选手一对一对决,还有多位选手博弈,甚至允许或者要求某些选手组成同盟。比如,斗地主有三位选手,两位农民对战一位地主。

2. 棋牌游戏和人工智能

信息是否完全决定一款游戏是棋类游戏还是牌类游戏,也决定了其 AI 算法。

2.1. 基于搜索的棋类游戏 AI

棋类游戏的典型代表是国际象棋和围棋,它们分别由 DeepBlue[1] 和 AlphaGo[3] 解决。DeepBlue 建立在极大极小值搜索 (max-min search) 基础上。极大极小值搜索在当前局面下展开游戏的树状结构,当前玩家节点选择价值最大的分支(极大), 对手节点选择价值最小的分支(极小), 其流程如下所示。

因为国际象棋复杂度很高,极大极小值搜索不可能搜索到叶子节点。DeepBlue 解决方案是限制搜索深度,超过搜索深度的节点用精心挑选的评估函数计算其价值。DeepBlue 的搜索深度为 12 步棋,而一名人类象棋专家大约搜索10步棋。

AlphaGo 建立在蒙特卡洛树搜索 (Monte Carlo Tree Search, MCTS) 基础上。 MCTS 的搜索结构是树状结构,如下所示。

树中每一个节点 s 代表了一个围棋盘面,并带有两个数字。一个是访问次数N(s),另一个质量度Q(s),质量度Q(s)表示这个节点下 AlphaGo 的优势程度。当对手落了一子,AlphaGo 迅速读入当前盘面,将之当作搜索的根节点,展开搜索。MCTS 搜索的流程如下图所示,一共分为四个步骤:

1. 选择 从根节点 R 开始,递归选择某个子节点直到达到叶子节点 L。我们选择子节点不应该乱选,而是应该选择那些优质的子节点。 2. 扩展 如果 L 节点上围棋对弈没有结束,那么可能创建一个节点 C。 3. 模拟 用价值网络和快速走子计算节点 C 的质量度。 4. 反向传播 根据 C 的质量度,更新它爸爸爷爷祖先的质量度。

上述搜索步骤反复进行,直到达到某个终止条件。搜索结束后,MCTS 选择根节点的质量度最高的子节点作为 AlphaGo 的走法。从上面描述来看,AlphaGo 建立在 MCTS 之殇,机器学习模主要用于减少搜索宽度和减少搜索深度两个方面。策略网络用于使得搜索朝着几个恰当的候选集中,从而减少了搜索宽度。价值网络和快速走子用在评估叶子节点质量度上,使得搜索就不用继续往下搜索,从而减少了搜索的深度。

2.2. 基于博弈论的牌类游戏 AI

牌类游戏中,选手不知道对手的私有信息,不能确定某个动作之后的状态,从而使用 maxmin search 和 MCTS 来求解。最近战胜德州顶级人类的 Libratus 是建立在反事实遗憾最小 (CounterFactual Regret Minimization, CRM)[4] 算法之上。 CRM 算法也是将游戏展开搜索。在某一个节点,当前玩家只能使用其知道的非完全信息,因此会造成不同节点的非完全信息一样。对于玩家来说,非完全信息相同的不同节点被归入同一个信息集合 (Information Set)。

如上图所示,在节点玩家按照上一轮得到的动作选择概率 p(action)Tp(action)T p(action)^{T},选择动作进入不同分支;搜索不同分支得到不同分支的价值(价值表示胜负、得分和奖励之类的效用);然后按照下面的公式更新。

(1)

其中 regretaction1regretaction1 regret_{action1} 表示不选择 action1 的遗憾值或者损失值。

CRM 被证明可以对纳什平衡建模,是一个强大算法。CRM 遍历所有节点,并保存所有非完全信息下不同动作的概率值。即使可以进行一些优化和压缩,CRM 也需要巨大的计算能力和存储空间。这就是为什么 Libratus 开发人员使用匹兹堡超级计算中心(PSC)新升级的超级计算机 Bridges 进行开发。

另一号称超过人类专家的德州 AI 是 DeepStack [5] 也是用了 CRM, 同时用深度学习模型近似所有非完全信息下不同动作的概率值。

3. 留给人类的堡垒们

几千年以来,棋牌游戏是人类智力的竞技场。值此人工智能大发展之际,人类用棋牌游戏构建了其中一条保卫人类智力优越感的防线。人类公元 1997 年,国际象棋首先被计算机系统深蓝攻陷,人们开始寄希望于复杂度奇高的围棋; 人类公元 2016 年 3 月,围棋被计算机系统 AlphaGo 攻破,因为国际象棋和围棋是完全信息游戏,人们又寄希望于非完全信息的德州扑克;不想不满一年,2017 年 1 月,计算机系统 Libratus 攻克了德州扑克。这段激动人心的历程是要载入人类(机器人)史的。但在当下,人类在这条防线上还拥有一些堡垒。

连围棋都被攻克了,完全信息的棋类游戏没有办法再担当人类堡垒之职,我们只能把目光放在牌类游戏中。虽然 Libratus 在德州扑克中超越了人类,但那只是两位选手对局情况。如果是多人对局的德州,我们就没有办法使用 CRM 了,需要设计不同的算法框架。按照 Tuomas Sandholm 教授本人的观点,那就是一个 “totally different story”。更进一步的情况,某些牌类游戏不仅允许多人对局,还允许或者要求某些选手之间合作。比如,斗地主有三位选手,两位农民对战一位地主。再比如桥牌和四国军棋,两位选手组成一队,两队进行对局。这些情况也是现有没有考虑过的问题。

4. 总结

随着计算机科学与技术的不断发展,人工智能在不同棋牌游戏中超过了人类,但还在一些游戏中探索。基于这个认知,我个人觉得在未来一段时间牌类游戏依然是一个有意思的点,因此想在上面做一些研究和探索。工欲善其事必先利其器,为了方便自己和他人,我开始开发 RoomAI。RoomAI 的目标是提供一些非完整信息游戏环境,目前已经支持德州和梭哈。

参考文献

[1] Campbell, Murray, A. Joseph Hoane, and Feng-hsiung Hsu. “Deep blue.” Artificial intelligence 134.1-2 (2002): 57-83. [2] 几种智能算法在黑白棋程序中的应用,柏爱俊 [3] Silver, David, et al. “Mastering the game of Go with deep neural networks and tree search.” Nature 529.7587 (2016): 484-489. [4] Neller, Todd W., and Marc Lanctot. “An Introduction to Counterfactual Regret Minimization.” (2013). [5] Morav?ík, Matej, et al. “Deepstack: Expert-level artificial intelligence in no-limit poker.” arXiv preprint arXiv:1701.01724 (2017).

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张叔叔讲互联网

江苏省初中信息技术七年级 -张叔叔一文读懂

讲完了浙江省初中信息技术教材内容,张叔叔一路北上,今天开始讲一下江苏省初中信息技术教材(凤凰科学技术出版社)。整体对比来看,江苏省的信息技术教材内容质量明显好于...

721
来自专栏PPV课数据科学社区

深度剖析Data Mining(值得收藏)

DataMining主要功能 Data Mining实际应用功能可分为三大类六分项来说明:Classification和Clustering属于分类区隔类;Re...

3477
来自专栏华章科技

这套"网红试卷"火了!数学老师您应该是段子手出身吧?

导读:其实,这是湖北省荆州中学的一套网红试卷,连命题人都是“2015级数学组的老头儿们”,每道题都是“鸡汤”加“知识点”的组合,并用段子引出提问,时而风趣,时而...

693
来自专栏CSDN技术头条

大脑记忆的建模

据国外媒体报道,科学家近日发现了大脑形成及失去记忆背后的数学方程。他们认为,这些方程可以精确地描述我们唤起回忆的方式。未来某一天,这一发现或许能帮助医生消除或改...

1828
来自专栏DT数据侠

扒完社交网络关系才明白,《权力的游戏》凭什么是神作

“Valar Morghuli,凡人皆有一死。” “没错,但那是‘凡人’。会数据的,都不是凡人。” ——DT君

830
来自专栏Crossin的编程教室

根据四万场比赛结果,我给今年世界杯每场比赛计算了胜率,冠军竟然是…

四年一度的世界杯本周就要开赛啦!如果你和我一样是一名伪球迷,请先了解以下注意事项:

1102
来自专栏镁客网

研究团队打破了高温、电磁场等技术限制,在空气中创造出等离子环 | 黑科技

1500
来自专栏大数据文摘

算法帝国里的牛人们:布尔

1525
来自专栏思影科技

第六届脑电数据处理基础班

? 思影科技将于2018年5月31日--2018年6月5日(周四-下周二)在重庆举办第六届脑电数据处理基础班(详见课表安排)。 1、培训简介 脑电相关技术(例...

4035
来自专栏LET

最美的理论(中篇)

1447

扫码关注云+社区