AI 全自动玩斗地主,靠谱吗?Douzero算法教程

这篇具有很好参考价值的文章主要介绍了AI 全自动玩斗地主,靠谱吗?Douzero算法教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

你觉得,AI 全自动玩斗地主,胜率能有多高?

真就有100%胜率,实现欢乐豆自由?

我让这个 AI 自己玩了一小时,结果出乎意料。
douzero,深度学习,python,计算机视觉,人工智能
先不着急说最终结果,我们先来看看这个 AI 有多强。

01

Ai斗地主,就是通过 AI 算法分析游戏画面,获取玩家角色、手牌等信息。

完全自主决策这把是否叫地主,是否加倍,以及如何出牌。

设定好程序,不需要我们参与,AI 自己就能玩一下午。

douzero,深度学习,python,计算机视觉,人工智能

算法名字是 DouZero,快手团队开发的。

不是要把欢乐豆归零的意思——

意思是像 AlphaZero 一样从零开始训练,不需要你教他怎么打,完全自己学习。

系统只需要给出正负反馈,算法就会自我强化,做出最有效的行为决策。

跟训狗是一个道理。

douzero,深度学习,python,计算机视觉,人工智能

斗地主的所有牌型总共有27472种。相对与围棋上亿万种的走法,算是小巫见大巫了。

那实现的难点在哪呢?

围棋是所有棋子都摆在棋盘上,对弈双方都能看到,这属于"完全信息博弈"。

而斗地主每个玩家都看不到其他人的手牌,从博弈论的角度看,斗地主是“不完全信息博弈”。

并且还要综合考虑合作机制。

两个农民玩家对抗地主玩家。不仅要保证自己赢,也要辅助队友赢。

对于AI来说就更有挑战性了。

02

这里简述一下算法原理。

DouZero 是一个基于深度蒙特卡罗算法来打斗地主的强化学习算法。

所谓的蒙特卡罗就是通过不断的重复实验来估计真实价值的方法。

而在DouZero中,引入了Deep Monte-Carlo (DMC)方法。所谓DMC,就是用神经网络替换Q表,并使用均方误差 (MSE) 更新Q网络。

douzero,深度学习,python,计算机视觉,人工智能
让q价值最大化,q价值指的是在某个状态做某个动作预期的价值是多少。

感觉屏幕对面的你,已经在打哈欠了,我们不多说了,具体的大家可以看看算法论文。

论文链接:
https://arxiv.org/abs/2106.06135

那胜率到底多高呢?

咱们首先声明一下,我们不支持任何形式的外挂,玩游戏就图一乐呵,真让 AI 全自动去打,游戏也就失去了本身的意义。

我们只是测试算法的可行性,我让 AI 打了20局游戏,赢了13局,输了7局。综合胜率在65%。

不过样本数量不够大,官方数据中显示,AI 综合胜率大概在60%左右

总体来看,可以达到普通玩家水平。

本以为 AI 斗地主会很厉害。

60%的胜率,就这?

03

这已经是上百种斗地主 AI 算法的最高胜率了,其他算法还有20%胜率的,效果感人。

AI 斗地主没有想象中的厉害,为什么呢?

因为斗地主是个运气成分很强的游戏。

牌好的时候,闭着眼睛打也能赢。牌烂的时候,高手也救不了你。

所以只有在自己和对手的牌相对均衡的情况下,AI的优势才能被明显体现。

有时候也会出现不可思议的打法。

比如下面这种情况,我自己打不一定能赢。
douzero,深度学习,python,计算机视觉,人工智能
上面视频 51s 的时候,AI还会先出K,测试地主的大牌。

wx搜索【喵宁一】查看视频
第一时间阅读文章~

“鲁迅先生”说过:打好烂牌才算本事。

大写的牛!

计算机非常擅长在完全信息下做搜索,而人类玩家则更擅长在非完全信息下进行推理和决策。

尽管斗地主属于非完全信息游戏,但以AI对于对手手牌的概率分布估计能力,以及基于此所做出的细粒度搜索和判断能力,都将远胜于人类。

人类,危!

随着 AI 推理决策、高效学习能力的提高,AI 外挂会势如破竹,横卷游戏界。

特别是FPS类射击游戏,已经有成熟的 AI 外挂了。这种纯拼技术的游戏,AI胜率几乎百分百。

给游戏业带来了巨大的挑战。

并且不仅仅是游戏业,随着深度强化学习的快速发展,这一技术被应用于军事的步伐也越来越快了。

围棋 AI 已经超越了人类,斗地主 AI 也能战胜普通水平。不出意外,未来空战,AI 超越人类飞行员也是迟早的事。

这不是空穴来风。

美军已经毫不掩饰他们在这个领域的野心了。

那个时候战争形态跟现在都会发生天翻地覆的变化。

如果大国人工智能已经达到高水平,甩出别国几条街。

我们有生之年极有可能会看到,一方没有伤亡,另外一方被灭亡的战争。

战争打到什么程度,只取决于大国愿意付出多少成本,世界舆论压力,其他大国是否干预。

只有提高自己的硬实力,才有话语权。

国家如此,人也是如此。

04

最后还是逃脱不出技术号的本质,上个教程。

第一步:下载项目

项目地址:
https://github.com/Vincentzyx/DouZero_For_HLDDZ_FullAuto

这个项目在DouZero 算法的基础上,加入了自动出牌、自动叫牌等模块。

项目里面已经有训练模型了,不需要我们再单独下载了。

第二步:配置环境

# 安装依赖
pip3 install -r requirements.txt
pip3 install douzero

这里要注意遇到下面的错误,是因为pytorch版本不对应,需要检查更换一下版本。

RuntimeError: .xxx.pth is a zip archive did you mean to use torch.jit.load()?

第三步:测试运行

确认自己的屏幕缩放比,项目默认是 125%,电脑默认是100%。

python debug_screenshot.py

修改main.py文件中的第58行。

# 原代码
helper.ScreenZoomRate = 1.25
#修改为
helper.ScreenZoomRate = 1.00

运行项目,会出现自动开始的页面。

python main.py

打开游戏,注意这个游戏指的是qq游戏中的欢乐斗地主,不是腾讯游戏。

这个坑我已经替你们踩过了——

点击自动开始,如果想要自动开始下一把,点击单局按钮,换成自动就可以了。

douzero,深度学习,python,计算机视觉,人工智能文章来源地址https://www.toymoban.com/news/detail-716891.html

到了这里,关于AI 全自动玩斗地主,靠谱吗?Douzero算法教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序斗地主完整代码及步骤

    一、准备工作 1. 安装微信开发者工具,并登录微信小程序账号; 2. 准备斗地主游戏的图片资源; 3. 准备斗地主游戏的音效资源; 二、创建小程序 1. 打开微信开发者工具,点击“新建小程序”,输入小程序名称,选择小程序的项目目录,点击“创建”; 2. 在小程序的项目目

    2024年02月04日
    浏览(319)
  • Java 编写斗地主游戏 窗体程序 完整源码

    今天为大家分享斗地主游戏的开发与制作,目前是单机版游戏,后续时间空了,会给大家分享下联机版本的开发与制作。整个系统界面漂亮,有完整得源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步 开发语言为Java,开发环境Eclipse或者IDEA都可以。运行

    2024年02月13日
    浏览(41)
  • 【Java】Java基础 使用集合实现斗地主分牌

       📝个人主页:哈__ 期待您的关注  今天使用集合TreeSet来实现一个斗地主的分牌流程。 TreeSet集合的一个特点就是 元素有序,这样就方便我们分的牌自动排序。 我们到时候分的牌都存储在这里,但你可能会有疑问,因为存储的泛型是Integer,但扑克牌是有花色的,这该如何

    2024年04月27日
    浏览(38)
  • 第12章_集合框架拓展练习(ArrayList,HashSet,TreeSet,HashMap,斗地主,省市联动)

    1、随机验证码 随机验证码。 随机生成十组六位字符组成的验证码。 验证码由大小写字母、数字字符组成。 代码实现,效果如图所示: 开发提示: 使用字符数组保存原始字符,利用Random类生成随机索引。 将十组验证码放到集合中 用Iterator迭代器遍历集合 2、学生信息录入

    2024年01月17日
    浏览(46)
  • HTML小游戏19 —— html5版开心斗地主小游戏(附完整源码)

    💂 网站推荐:【神级源码资源网】【摸鱼小游戏】 🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】 💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 本节教程我会带大家使用 HTML 、CSS和 JS 来制作一个 html5版开心斗地主小游戏 🕹️ 本文

    2024年02月03日
    浏览(87)
  • 【华为OD机试 2023 B卷 | 100分】斗地主之顺子(C++ Java JavaScript Python)

    华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方已经将的 2022/0223Q(1/2/3/4)统一修改为OD统一考试(A卷)和OD统一考试(B卷)。 你收到的链接上面会标注A卷还是B卷。请注意:根据反馈,目前大部分收到的都是B卷。但是仍有概率抽到A卷。 A卷对应2023的新题库(2022Q4 2

    2024年02月08日
    浏览(43)
  • 【华为OD机试真题】1220 - 斗地主之顺子(JAVA C++ Python JS) | 机试题+算法思路+考点+代码分析

    🍂个人博客首页: KJ.JK   🍂专栏介绍: 华为OD机试真题汇总,定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用Python语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习

    2024年02月06日
    浏览(55)
  • 推荐两个AI神器:只需1个标题,2分钟全自动生成PPT!

    今天给大家分享两个工具,帮助你全自动生成PPT,接下来以自动化测试为主题,教大家如何2分钟生成好PPT。 1、打开ChatGPT页面,输入prompt,告诉它,让它帮你生成一份自动化测试为主题的PPT,如: 2、很快ChatGPT就能帮你自动生成以Markdown格式的回答 截图只截取部分,全部内容

    2024年02月16日
    浏览(42)
  • 新功能上线|AI全自动抠图换背景,电商、营销、摄影人士必备

    最近,皮卡智能AI开发了一种基于深度学习的图像编辑工具,能够自动抠图,替换任何图像的背景,甚至可以为图像做延伸想象,现已在国内网站上线。 此功能更换背景仅需1-2分钟即可完成,生成非常自然、真实的图像,相比PS工具的繁琐操作,利用AI抠出的对象边缘清晰自然

    2024年02月08日
    浏览(50)
  • 毕业设计——基于深度学习的医学图像处理分析平台,AI全自动疾病诊断

    基于LSTM-CLIP的多模态自主疾病诊疗方法,包含。包括电子病历信息预处理模块、transformer文本编码器模块、图像编码器模块、图像特征提取网络模块、LSTM循环神经网络模块、以及基于强化学习的交互模块。其中:电子病历信息预处理模块:用于采集病人文本病历以及影像学病

    2024年01月20日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包