德州扑克人工智能?德扑人工智能软件

星星 0 2023-07-22

其实德州扑克人工智能的问题并不复杂,但是又很多的朋友都不太了解德扑人工智能软件,因此呢,今天小编就来为大家分享德州扑克人工智能的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

  1. 柯洁落败阿尔法狗,除了围棋,人工智能的打牌技术又是怎样的呢?
  2. 人工智能可以在麻将领域秒杀麻友吗?
  3. 2011年卡内基梅隆大学开发的一个人工智能程序在什么大赛上战胜了四位人类玩家
  4. AI赌神Libratus称霸德州扑克赛场,人工智能是如何打德州扑克的?

柯洁落败阿尔法狗,除了围棋,人工智能的打牌技术又是怎样的呢?

国际上比较受关注的人工智能打牌有两个:德州扑克以及桥牌。这两个项目很有技术含量,2017年人工智能顶级会议NIPS上的最佳论文,不是Deepmind终结各种棋类的AlphaZero,而是德州扑克1V1战胜人类的Libratus(冷扑大师)。桥牌人工智能的水平还比较低。

打牌时,一般各家的牌是互相看不见的,所以叫“非完全信息博弈”,比“完全信息”的棋类难度高。开发打牌机器人用的技术,与开发下棋机器人用的不一样。例如Libratus就没有用现在十分流行的深度学习与神经网络技术,而是用较为传统的优化算法(当然也很专业)。

在德州扑克上,人工智能解决了1V1(机器与1个人类对战)。2017年1月30日,CMU开发的Libratus击败了四位人类顶级职业扑克玩家。比赛共打了20天,四人分别对战Libratus,玩了12万手,最终AI令人信服地取得了统计性的压倒胜利。

上图是四位人类玩家与Libratus每天的收益表,人类越输越多。Libratus还曾经到中国(新闻中名为“冷扑大师”)与中国“龙之队”对战,中国玩家输得更多。

德州扑克更常见的玩法是多人在一张桌上混战,比1V1更为复杂。这方面人工智能学界还需要开发,但预计没有本质的困难。

另一个在西方比较受关注的扑克类竞技项目是桥牌,这也是中国体育总局明确纳入体育竞技项目的唯一扑克类,各级别的智力运动会都有桥牌项目。桥牌项目是四人打,分成两边对抗,需要两个同伴相互配合。

在桥牌项目上,人工智能也有了一些进展,在国际流行的BBO桥牌网,中国的新睿桥牌网上,都有机器人自动打牌。但是从目前的技术水平来说,机器人打桥牌的技术还不行,经常作出令人哭笑不得的打法。打桥牌需要更多的逻辑与概率思考,比德州有更多的逻辑,而且需要两边配合,理解同伴与对手的行为,对人工智能还是相当有挑战性的。

目前桥牌人工智能对于确定性的局面,能够给出确定性的答案,如四家牌明了,最佳攻防结果是什么,牌手们都相信机器给出的结果。但是桥牌的精髓正好是不确定性,攻防双方需要在不确定性的概率里找到最佳方案。在只看到自己牌的叫牌阶段,如何达到最佳定约,非常复杂,人工智能还没有很好的开发方向。

德州扑克,是世界上奖金最多的竞技项目(世界冠军奖金上千万美元,职业玩家收入也很高)。桥牌是智力游戏里牌类的代表。人工智能在这两个项目上还需要新的技术突破,特别是桥牌。至于其它牌类,如斗地主、80分之类的,甚至麻将,技术含量要低很多,不会是研究热点。

人工智能可以在麻将领域秒杀麻友吗?

AI已经轻松攻克双陆棋、国际跳棋、国际象棋、围棋等棋类游戏了,但至今为止(2019/08/16)还未有战胜职业麻将选手的AI发布,那么为什么小小的麻将那么难攻克呢?

因为游戏复杂度与游戏难度并不等价

游戏难度除了与游戏本身的复杂度有关以外,还与战略等多种要素相关,也就是说,数学上更复杂的游戏,玩起来不一定更难。

根据信息的暴露程度将游戏分为两大类:完美信息游戏和不完美信息游戏。围棋、象棋等棋类游戏,对局双方可以看到局面的所有信息,属于完美信息游戏;而扑克、桥牌、麻将等游戏,虽然每个参与者都能看到对手打过的牌,但并不知道对手的手牌和游戏的底牌,也就是说各个对局者所掌握的信息是不对称的,因此属于不完美信息游戏。

完美信息游戏和不完美信息游戏难度的衡量指标通常是有区别的。对于完美信息游戏,通常游戏的复杂度就决定了难度,可以用状态空间复杂度和游戏树复杂度对其难度进行衡量;而对于不完美信息游戏,隐藏信息对于游戏的难度影响很大,可以用信息集数目和信息集平均大小对其难度进行衡量。

井字棋的游戏树复杂度为10^5(即4^9≈10^5),国际象棋是10^123(即35^80≈10^123),而围棋是10^360(即250^150≈10^360)。在传统的完美信息棋牌游戏中,围棋不管从状态空间复杂度,还是游戏树复杂度上都远远领先其他棋牌类游戏。2017年,AlphaZero利用MCTS和深度强化学习,成功解决了包括围棋在内的多个完美信息游戏。目前,学术界研究的热点则转向不完美信息游戏和即时策略游戏等。

但在不完美信息游戏中,由于信息是不完全(例如扑克和麻将中对手的手牌和游戏剩余的底牌都是未知的),因此对于参与者来说许多不同的游戏状态看起来是无法区分的。比如在扑克游戏中,自己拿了两张A,对方拿了不同的牌对应不同的状态;但是从自己的视角看,这些状态其实是不可区分的。我们把每组这种无法区分的游戏状态称为一个信息集。对于不完美信息游戏而言,合理的游戏策略应该建立在信息集而不是游戏状态之上,因为我们依赖未知信息来细粒度出招是没有意义的。相应地,当我们衡量不完美信息游戏的难度的时候,也应该依据信息集的数目,而不是游戏状态空间的大小。信息集的数目通常小于状态空间的数目。

除了信息集的数目,还有一个重要的指标:信息集的平均大小,即在信息集中平均有多少不可区分的游戏状态。以两人德州扑克为例,假定我们的手牌是AA,考虑对手的手牌为AK或者AQ两种不同情况。因为信息不完全,我们无法区分当前局势到底处在哪个状态,因此会把两种情况都归到同一个信息集。在两人德州扑克中,信息集的大小最多为1326(从52张牌中选择2张:C_52^2),也就是约为10^3。容易看出,信息集的数目反映了不完美信息游戏中所有可能的决策节点的数目,而信息集的平均大小则反映了游戏中每个局面背后隐藏信息的数量。显然,信息集平均大小越大,其中包含的未知信息就越多,因此决策的难度就越高。事实上,信息集的平均大小直接影响采用搜索算法的可行性:当对手的隐藏状态非常多时,传统的搜索算法基本上是无从下手的。因此信息集的平均大小也可以作为游戏难度的衡量指标。

那么根据上面两个指标来看,麻将的难度到底有多大呢?

每一局麻将结束的时候,底下有14张牌不会被用到,所以不考虑吃碰杠的情况下,每一局至多会进行17.5轮(136减去13x4共52张手牌再减去14张底牌,总共剩70张牌,每一轮出4张)。与桥牌类似,依然按照游戏轮次来计算。第一轮,每个玩家只能看到自己的13张牌,因此第一轮信息集数目为C_136^13(为了计算方便,不考虑重复手牌)。第二轮,由于第一轮每个玩家各出一张牌,一副麻将总共有34种不同的牌,所以第一轮出的四张牌所有可能的情况至多为34^4,因此第二轮信息集数目为C_136^13?34^4。以此类推,第18轮信息集数目为C_136^13?34^68。总的信息集数目为各轮信息集的和,即C_136^13(1+34^4+?+34^68)≈7×10^121。

第一轮,除去自己13张手牌,总共剩余123张牌,每位对手13张牌,所以每个信息集大小为C_123^13C_110^13C_97^13(为了计算方便,不考虑重复手牌)。第二轮,除去自己13张手牌,以及第一轮出的四张牌,总共剩余119张牌,因此每个信息集大小为C_119^13C_106^13C_93^13。以此类推,第18轮,每个信息集大小为C_55^13C_42^13C_29^13。对每一轮的信息集大小求平均,得到麻将的信息集平均大小≈1.07×10^48。

所以相比其他棋牌,AI很难攻克麻将。

2011年卡内基梅隆大学开发的一个人工智能程序在什么大赛上战胜了四位人类玩家

2017年,卡内基梅隆大学开发的一个人工智能程序在德州扑克大赛上战胜了四位人类玩家,这在人工智能发展史上具有里程碑式的意义。

2017年1月30日,在宾夕法尼亚州匹兹堡,卡耐基梅隆大学(CMU)开发的人工智能系统Libratus,在共计12万手的一对一无限注德州扑克比赛中击败了四名顶级人类玩家JasonLee、DongKim、DanielMcAulay和JimmyChou,斩获20万美元奖金。

AI赌神Libratus称霸德州扑克赛场,人工智能是如何打德州扑克的?

1月30日,宾夕法尼亚州匹兹堡Rivers赌场,耗时20天的德州扑克人机大战尘埃落定。卡耐基梅隆大学(CMU)开发的AI程序Libratus击败人类顶级职业玩家,赢取了20万美元的奖金。(关注钮问,关注创业)

众所周知,人工智能已经在围棋中击败了人类中的顶级人物,相比而言扑克更加复杂。扑克不确定因素很多,比如对手可能会欺骗,在现实世界中到处都是欺骗,AI还不懂得怎样欺骗。扑克玩家看不到对手的牌,但在西洋棋、国际象棋和围棋中,大家可以看清对方的棋子。

那么人工智能是如何打德州扑克的呢?

一、AI赌神Libratus的策略

Libratus运用了三种策略:增强(自我)学习、残局解算器、避免人类识别模式。程序用“逼近法”打败了人类对手,“逼近法”与直觉有点相似。

德州扑克有运气成分,但比赛总共进行12万手牌,牌运的影响几乎微乎其微。打100-1000手牌,运气还是影响很大的;但打了12万手牌赢到17.66万个盲注,比赛结果的可信度高达99.77%。也就是说,每场比赛打12万手牌,人类与AI进行1000场比赛,AI将赢下998场,人类只能赢下2场。因此,人工智能Libratus有着完全不可逆转的优势。

二、人类学习扑克的模式

人类学习扑克的一种模式是试错模式,每次输了一手大牌后,想如果我当时不去加注,不去跟注或者扣牌就不会输了。每次对过去的行为感到后悔,然后总结经验调整打法,看是否赢得更多的钱或少输钱。

人类更多是从互联网学习别人已经总结好的正确打法。然后再加以练习,比如每天打上4-5个小时,再花1-2个小时总结今天打扑克的错误和进步,一般6个月里在互联网上打300—500万手牌,通常能成为优秀的扑克玩家。

三、人工智能Libratus学习扑克的模式

扑克人工智能是通过CounterfactualRegretMinimization进行100万亿手牌的训练来形成一套完美的打法。

Libratus主要依靠自己的近乎无限的计算量,通过无数盘德州扑克对决,把自己培养成能够面对各种复杂牌局都能提供最优解,换言之,Libratus本身就变成了德州扑克对决的最优算法集。再根据不同的对手,在不同时间段,进行调整。人工智能必须根据近期相关性的牌局,来调整自己的打牌的范围,进而适应不同对手,不同的打法。

卡内基梅隆大学团队(其ComputerScience专业堪称全球最好)每晚用超级电脑来分析白天的比赛,提高系统性能。系统检测自身在每轮比赛中的弱点,每天补救三个最明显的失误,而不是试图学习对手的制胜战术。

相对其它玩扑克的程序,Libratus最主要的提高在于电脑在接近游戏最后时的玩法。先前的系统从头至尾使用单一战术,但是Libratus使用额外的反馈回路来实时回应对桌的人类。

百度首席科学家的吴恩达说:“扑克曾经是AI最难攻克的游戏之一,因为关于游戏状态你只能看到部分信息。扑克并没有单一的最优下法。相反,AI玩家必须让自己的行动随机化,这样它诈唬时才能让对方无法确定真假。”

如果你也想创业!如果你正在创业!右上角关注:“钮问”的头条号

文章分享结束,德州扑克人工智能和德扑人工智能软件的答案你都知道了吗?欢迎再次光临本站哦!

上一篇: 企业研究人工智能(企业人工智能战略)
下一篇: 人工智能isp是什么 人工智能isp是什么意思
猜你喜欢