如何在无穷博弈游戏有哪些之中取胜?

本篇文章尝试讨论游戏类问题或鍺说博弈问题并给出一定的抽象再在此抽象的基础上尝试给出一个一般性的解法,通过这种思路可以应对很多的算法题、面试题也可茬此基础上对解题过程进行一定的变化来解决一些变种问题。

一个游戏问题归根到底是双方(或多方)游戏玩家进行博弈的过程为了使描述更为严谨,在描述游戏玩家的时候隐含假设是该游戏中的玩家均为理性人,即会采取最为合理的策略使其获胜若当前不存在使其獲胜的策略,则其会在可选策略中进行随机的选取

后文均在此假设之下来描述分析问题。

N块石头排成一行每块石头有各自的位置,两個玩家依次取石头每个玩家可以取任意一块或相邻块石头,最后能将石头一次取光的玩家获胜

给定初始石头数目N,问先手玩家获胜还昰后手玩家获胜

(来源:《编程之美》1.11)

***很简单,先手玩家必胜先手玩家只需要保证取中间石头并保证左右两边严格对称即可获勝获胜,不论采用“聪明”的办法或者是较为“笨”的办法都不难得到这个结论

N块石头排成一行,每块石头有各自的位置两个玩家依佽取石头,每个玩家可以取任意一块或两块石头最后能将石头一次取光的玩家获胜。

给定初始石头数目N问先手玩家获胜还是后手玩家獲胜。

在分析问题的时候我们可以简单得出一下表

。。。。。。

可以看出,在这个问题中具体哪个玩家获胜依赖于起始嘚石头。

在分析第二个石子问题时我们发现有些状态是先手必胜的,有些状态是后手必胜的(也就是先手必败的)

因为我们把所有类姒博弈类或游戏类的状态进行分类,并加以定义如下:

1、必胜态:在此状态行动的玩家必胜

2、必败态:在此状态行动的玩家必败

3、僵持态:在此状态行动的玩家胜败不定

所有游戏的状态均是这三种状态组成的状态转换图。

现在则不难根据定义得到这三个状态的转换规则:

1、若一个状态能转移到必败态那么此状态就是必胜态。(即如果我的一个策略能让对手进入必败态那么我肯定采取这个策略,因此我肯定获胜因此这是个必胜态)

2、若一个状态只能转移到必胜态,那么此状态是必败态(无论我怎么做对手都必胜,那么我就必败)

3、除了必胜态和必败态其余都是僵持态换句话说若一个状态可以转移到必胜态和僵持态,那么此状态就是一个僵持态

大概的状态转换图洳下:

接下来根据理性人的假设,所有玩家会尽可能的采取最优的策略去获取胜利因此采用博弈论中的严格剔除劣势策略的方法,可以紦必胜态到僵持态、僵持态到必胜态的转换剔除掉(很简单的道理僵持时我没有必要走到胜态让对手获胜,胜态时没有必要重新走入僵歭态浪费获胜的机会)

因此状态转换图只有3个转换信息:从必胜态到必败态、从必败态到必胜态、一直停留在僵持态。

这就会得到一些佷有意思的结论

四、由问题抽象得到的结论

根据以上模型,我们可以得到以下结论:

1、假定游戏在有限步内结束则给定初始条件,游戲的结果确定

证明:若初始态为僵持态,由理性人假设游戏会一直持续在僵持态,这与游戏在有限步内结束矛盾故游戏初始态为必勝态或必败态,即游戏的结果确定

2、若游戏可以不在有限步内结束,则给定初始条件游戏或无限持续下去,或胜负已定

证明过程:哃理可证。。

任何现实世界中的游戏或者博弈均无法逃脱此框架。

比如象棋从某种意义上来说开局双方一步未走的时候结局是已经確定的。但之所以会出现精彩纷呈的比赛原因在于现实世界中我们人并不能完全的遵从理性人的假设我们无法遍历象棋巨大的状态空间並分析其中的必胜态、必败态和僵持态,进而就无法得到最合理的策略从某种意义上来说,正是这种人的局限性才使得现实世界中的博弈有如此多的看点。

五、抽象问题的动态规划求解

对于状态转换类问题使用动态规划无疑是一个很好且实用的算法状态转换图前文已經分析过了,根据此状态转换图不难根据具体的游戏规则判断出必胜必败态进而设计算法求出游戏中遇到的所有状态的类型,进而求得給定初始值游戏的胜负关系

之前在写笔记的时候就考虑到要寫这一篇附录因为笔者发现这一个主题涉及到的内容之多,足以单独拿出来讲一讲加上赶上最近一个话题潮流——“如何看待游戏”。其实之前看了那么多探讨很少有从技术方面来讨论关于这个话题的(不是指做游戏的技术)。先不论该怎么定义:“游戏的性质”这個问题——能不能作为“艺术载体”啊导致成瘾是不是一个问题啊?这些探讨且都放到一边单纯从技术发展的角度来说,游戏可能真嘚是不能缺少的一部分以人工智能研发的角度来说,游戏是一个非常重要的范畴

很多对于人工智能以及计算机科学的算法,都可以在遊戏中获得实际应用而反过来游戏也可以启发技术和算法的研发。《集异璧之大成》里面人机博弈是一个相当重要的主题,尤其是关於人工智能的发展以及我们研究人类思维的时候,这个内容是绕不过去的(很多游戏可以拿来作为研究大脑思维的实验)

游戏某种程喥上可以说是“把抽象思维表现到形式系统上面的一个过程”。游戏当中必须要制定规则而在有限规则之下,以博弈的形式发展出多种哆样乃至于无穷无尽的变化,然后获得各种各样的结果这里并不是在把游戏往高大上方面拉(而是确实就是如此),并且在严肃看待遊戏的时候确实可以从中受到很多启发。

回到GEB上面来说之所以需要专门写这么一篇附录是因为:侯世达出版GEB的时候,当时的计算机技術和现在有着非常巨大的差距如果直接看原书的内容,会让很多人觉得格格不入尤其是书里面拿人机博弈来举例子,当时的例子放到紟天来说已经没有说服力了——之前提到过GEB出版的时候IBM的“深蓝”都还没有下赢国际象棋,更不说如今阿尔法狗都已经下赢围棋了

二:游戏中的人机博弈1·人工智能发展历史追溯 游戏与人工智能之间确实有着非常紧密的联系,这其中要牵扯到“博弈论”的内容在人工智能的发展历史上的第二阶段,大概是二十世纪五十年代的时候就涉及到了“博弈论”。

这里要稍微提一下人工智能的发展史从概念仩来说,人工智能的概念甚至可以追溯到早期神话传说时代就有雏形和概念了:神话、幻想当中的人造生命(炼金术里的人造小人)、自動机(上发条的非能源提供动力的可动机械——音乐盒、自动人偶、自动钢琴)、形式推理的发展和演进(之前曾经在读书笔记里提到关於形式推理的“推广部分”)、一直到现代计算机的发明

几乎伴随着现代计算机的发明,计算机科学成立的同时来自不同领域的数学镓、心理学家、工程学家、经济学家、政治学家等一大批科学家都开始探讨关于创造人工大脑的可能性。1950年图灵测试被提出来,图灵发表的划时代论文预言了创造出具有真正智能的机器的可能性由于他注意到“智能”这一概念难以定义,所以他提出了著名的图灵测试(GEB后半部分将会有大量篇幅提到这件事)。在1956年的时候人工智能被正式确立为一门学科。

差不多就在同一时期游戏AI就被引入了人工智能研究的课题里面。1951年Christopher Strachey使用曼彻斯特大学的Ferranti Mark 1机器写出了一个西洋跳棋(checkers)程序;Dietrich Prinz则写出了一个国际象棋程序。亚瑟·山谬尔(Arthur Samuel)在五十姩代中期和六十年代初开发的国际象棋程序的棋力已经可以挑战具有相当水平的业余爱好者游戏AI一直被认为是评价AI进展的一种标准(这段内容在GEB里面,侯世达有详细的讲述)

不止如此,早期的神经网络研究也差不多在这个时间开始了早期的人工智能的研究是建立在20世紀30年代末到50年代初的一系列科学进展交汇的成果知识点,神经学研究发现大脑内由神经元组成的电子网络激励电频只存在“开”、“关”两种状态,不存在中间态同时期研究获得的控制论描述了电子网络的控制和稳定性,以及当时的信息论描述了数字信号的概念图灵嘚计算理论证明了数字信号可以用来描述任何形式的计算。在这几者的结合之下暗示了构建电子脑的可能性。但这个研究在70年代受到了挫折——实际上当时整个人工智能的研究都遭遇了瓶颈

由于第一代人工智能的研究者太过于乐观,提出了太多过分乐观却没能实现的展朢——比如1958年艾伦·纽厄尔和赫伯特·西蒙说:“十年之内,数字计算机将成为国际象棋世界冠军。”“十年之内,数字计算机将发现并证明一个重要的数学定理。”(IBM的“深蓝”是97年的事)

1965年赫伯特·西蒙说:“二十年内,机器将能完***能做到的一切工作。”(这事到紟天都没达到除了科幻小说里)。

1967年马文·闵斯基说:“一代之内……创造‘人工智能’的问题将获得实质上的解决。”(并没有)

1970年马文·闵斯基:“在三到八年的时间里我们将得到一台具有人类平均智能的机器。”(笑而不语……)

在70年代初期的时候人工智能的研究就进入了瓶颈期,当时最先进的AI程序都只能解决一些很简单的问题而它们的问题在于一些基础性的障碍,而且这些问题至今都没有得箌完美地解决这些问题主要有这么几个:

1·计算机的运算能力,严格来说计算机要获得“智能”必须要在计算能力上突破一个界限,就好仳飞机要达到一定速度才能飞起来在这个界限之下,计算机的“智能”恐怕无法实现——目前来说这个界限依然模糊虽然计算能力已經比当时强得多了。

2·计算复杂性和计算时间指数爆炸:这部分涉及到图灵、哥德尔等人研究的关于可计算性还有停机问题等等的研究,在GEB的内容里也有论述比如一些证明等等,我们的大脑可以跨过步骤直达结果而计算机要进行运算所需要的时间随着问题复杂性提升呈現指数爆炸。这部分也和计算机游戏部分相关更复杂的问题需要更久的时间才能解决。这也是为什么上个世纪末,国际象棋方面计算機获得了突破而到现在围棋,才刚刚获得突破的原因(围棋的玩法远比国际象棋复杂得多这点没人否认吧)。

在GEB这本书出版的时候國际象棋已经有了几个具有一定水平的AI程序,然而其水平仅限于业余水平的高手甚至还比不了职业高手,更不要说达到人类的峰值水平叻(世界冠军)而阿尔法狗和深蓝的事情得单独放到后面来说。

2·博弈论与游戏 那么说完那段时期的人工智能研究历史我们来看看关於智能程序玩游戏和博弈论的内容:

“博弈论(英语:Game Theory),又译为对策论或者赛局理论,经济学的一个分支1944年冯·诺伊曼与奥斯卡·摩根斯特恩合著《博弈论与经济行为》,标志着现代系统博弈理论的的初步形成,因此他被称为“博弈论之父”博弈论被认为是20世纪经济學最伟大的成果之一。目前在生物学、经济学、国际关系、计算机科学、政治学、军事战略和其他很多学科都有广泛的应用主要研究公式化了的激励结构(游戏或者博弈)间的相互作用。是研究具有斗争或竞争性质现象的数学理论和方法也是运筹学的一个重要学科。

博弈论考虑游戏中的个体的预测行为和实际行为并研究它们的优化策略。表面上不同的相互作用可能表现出相似的激励结构(incentive structure)所以它們是同一个游戏的特例。其中一个有名有趣的应用例子是囚徒困境

具有竞争或对抗性质的行为称为博弈行为。在这类行为中参加斗争戓竞争的各方各自具有不同的目标或利益。为了达到各自的目标和利益各方必须考虑对手的各种可能的行动方案,并力图选取对自己最為有利或最为合理的方案比如日常生活中的下棋,打牌等博弈论就是研究博弈行为中斗争各方是否存在着最合理的行为方案,以及如哬找到这个合理的行为方案的数学理论和方法

  • 简介:少女文明是一款以中世纪歐洲为架空背景的大型二次元战争游戏游戏的主要玩法与《骑马与砍杀》近似,唯一不同的是在这个战场上进行厮杀的都是萌萌的...

  • 简介:星球上尉是一款美漫风格的冒险闯关类游戏,游戏IP来源于经典的电视连载动画在这款游戏里,你可以操纵一只超级英雄小队与入侵地球的怪物进行激烈...

  • 简介:火柴人战魂荣耀是一款充满趣味的2D横版动作游戏,你将扮演一名火柴人与对手展开角逐互相厮杀,你需要盡可能的收集到地图中刷新的武器和道具并利...

  • 简介:今天小编为大家带来一款非常好玩热血的多人在线竞速类游戏——极限竞技街道赛。在游戏中拥有着超多的仿现实的赛车,各种汽车厂商的赛车你在这里都能...

  • 简介:中艺中国象棋是一款象棋对战类休闲益智游戏在游戲中你可以体验到象棋博弈的竞技快感,随时随地与真人玩家实时竞技超快的游戏匹配度,智能地为你选...

  • 简介:宾利棋牌是一款2019年度偅磅推出的爆款棋牌游戏作品!游戏可以满足广大牌友的各种任性需求,在游戏中你可以挑战各种不同的特色玩法同时还有海...

  • 简介:低語棋牌是一款采用了核心棋牌玩法模式的手机游戏作品,游戏拥有全新的竞技模式玩家可以体验到原汁原味的棋牌厮杀PK,你可以享受极致震撼的游戏特...

  • 简介:2019超火爆的经典棋牌游戏作品《淮安棋牌》强势来袭!游戏继承了江苏淮安本地特色的棋牌规则玩家可以在这里体驗到地道正宗的淮安经典棋牌玩法,...

  • 简介:卡胡纳(Kahuna)是一款全新打造的次世代棋牌竞技对战游戏游戏采用了独特的画面风格,全新的棋牌競技规则更有多元化的核心玩法模式,玩家可...

  • 简介:鬼魂(Onitama)是一款重磅打造的棋牌竞技对战手机游戏游戏采用了经典的棋牌桌游核心玩法,玩家可以通过合理分配你的战斗路线控制你麾下的...

  • 简介:全球征服(Nations in Combat Lite)是一款主打回合制核心玩法的战争策略手机游戏,游戏继承了经典的端游核心玩法玩家将控制...

  • 简介:代号47出击(原名杀手GO)是一款由日本游戏公司SE开发,国内厂商发行的回合制战略解谜游戏!动作冒險大作通过手机移植后竟然变成了策略游戏!对...

  • 简介:偏见游戏是一款能够揭露一些社会问题的益智小游戏当人与人出现分歧时,偏见昰如何渐渐产生的各种社会上的不和谐如何造成的?通过三角形与小正方形...

  • 简介:率土之滨是一款由网易打造的全新策略战斗手游小編带来的是率土之滨两周年版,此次两周年盛典将为游戏玩家们加入更多的游戏功能和内容想要体验最新...

  • 简介:信任的进化破解版是一款拥有多样化的关卡和挑战的益智游戏新作,在游戏之中玩家可以自由挑战不同的关卡和模式同时更有全新的剧情发展,不断分析游戏...

  • 簡介:德州扑克是一款正宗地道的德州扑克游戏规则的棋牌游戏游戏中玩家可以开设自己的私人房间邀请自己的好友一起游戏,距离再遠也能轻松的拉上自己的亲朋...

  • 简介:征程三国是一款以三国为题材的RPG手游游戏场景宏大,技能华丽酷炫三国的文臣武将的兵器在游戏嘟可以得到,全新的组队战斗方式更是让每个玩家感...

  • 简介:将军国际象棋是一款非常出色的国际象棋玩法游戏通过这款游戏大家能够体驗到最有意思的国际象棋玩法,对于喜欢玩国际象棋并且想要提高自己技术的朋友...

  • 简介:欢乐炸金花是一款非常流行的棋牌游戏游戏拥囿丰富的玩法让你刺激乐不停,还有多样的场次选择玩家可以自由的选择自己需要的场次,可以感受与不同的...

  • 简介:《小小军姬》是一款萌系兵器美少女养成战斗手游!这款二次元美少女手游带你了解各类兵器机甲亲自养成兵器少女,乐趣多多!喜欢这类游戏的话就不偠错...

  • 简介:腾讯天天军棋是腾讯首款推出的军旗题材的棋牌竞技手游作品游戏以四国军棋为核心玩法,同时打造出了更多的趣味玩法模式简单明了的玩法模式,搭配清...

参考资料

 

随机推荐