人类又被AI碾压,这次是星际争霸
还记得2017年,那个血洗围棋界的“阿尔法狗”吗?
这个由谷歌旗下 DeepMind 公司开发的 AI ,对阵世界顶尖围棋选手,打出完全碾压式的战绩:
AlphaGo vs. 樊麾 - 5 : 0
AlphaGo vs. 李世石 - 4 : 1
AlphaGo vs. 柯洁 - 3 : 0
那时人们都绝望地说,在围棋上,人类可能再也赢不了AI了。
很遗憾,这就是棋类游戏的现状。
去年,阿尔法狗的终极版AlphaZero,已经在国际象棋、将棋和围棋三种棋类游戏中,全面超越人类。
DeepMind 与它的阿尔法 AI 大军,在吊打了各路顶级选手之后,甩下一句话:
“下次我们想试试打星际争霸。”
那时候,是2016年。经过两年多的训练,这一天,终于来了。
昨天,DeepMind 和暴雪进行一场直播,秀了一把他们在《星际争霸II》中,与人类选手对战吊打的成果。
这一回,出场的选手,是阿尔法狗的亲戚 AlphaStar。
暴雪邀请了,来自职业战队 Team Liquid 的两位职业选手, TLO 和 MaNa,和 AlphaStar 各打了5局。
结果...
被剃了光头,AlphaStar 十局全胜。
机哥非常好奇,像星际2这样操作如此复杂的RTS游戏,究竟AI需要强到什么程度,才可以做到“吊打”人类选手?
于是机哥借着写稿的机会,在上班时间,公然撸完了,这一场快三个小时的直播,看了个究竟。
AlphaStar 和 AlphaGo 血缘关系密切,训练的方式都非常相似。
借着暴雪开放星际2 API 的机会,AlphaStar 获得了大量来自玩家的 Replay 档案,借此大量地学习并模仿,真实玩家的操作和战术。
像星际争霸这样的即时战略游戏,和之前的各种棋,有着一处关键性的不同——战争迷雾。一种限制玩家获取对方完整信息的机制。
这样,AlphaStar 就不能像在下棋的时候一样,获得敌我双方的完整信息,必须要有非常强大的预判和即时决策的能力。
AlphaStar的目标是模拟人类的操作,为了让操作更接近人类,DeepMind 甚至对它的操作做出了各种限制。
比如说,将它的反应速度限制在偏低的 350 毫秒。
再比如说,AlphaStar的平均 APM 也在 277 左右,远低于星际职业选手的水平。
即使如此,在和两位职业选手的对战中,还是获得了十战全胜,这 AI 真的就这么无敌吗。
不好意思,是的,真的是打不过。
即使有着诸多限制,AI操作的精度,仍然是人类选手无法达到的。别看人家APM低,不过它可以说没有任何的冗余操作,每一次操作都是有效的。
而人类选手就不一样,人类选手的高APM,参杂了各种热手、误操作和多余的操作,很多时候你以为的骚操作,都是瞎JB浪。
这回AlphaStar之所以能赢的如此彻底,靠的就是骚操作,精确到每一个单位的骚操作。
蓝方:AlphaStar,丝血反杀后撤退
并且,在这10场比赛中,AlphaStar 有着覆盖了所有可见区域的全局视野,就像开了挂一样。人类被碾压,很正常。
不过还好,MaNa选手在直播的最后,和AlphaStar打了一场表演赛。这回,人类赢了。
这全都是因为,这一次,AlphaStar使用了另一个版本。这次,它失去了上帝视角,必须像人类一样切换视角观察战场,被MaNa用放风筝战术拖死。
没了视野,任你操作再骚,也要翻车。
果不其然,星际圈流传的老梗诚不我欺:
玩笑归玩笑,DeepMind的这次“成果展示”,代表着AI玩家的触手,已经正式深入到了电子竞技领域。
AlphaStar,现已正式约战世界冠军serral。机哥对下一场,还是非常期待的。
人类就真的没有未来么?我不信。
换我来,肯定能赢
现在都在知道人工智能对未来的一个发展趋势,对那些没有学习人的老铁们是真的无奈,不知道去往哪方面学习提升的!!
但你们是幸运的的,遇到了我,在前些天我整理出了一套人工智能的学习资料,不管是小白还是有一定的编程基础都是可以学习的。
如果有需要的老铁们可以微信扫扫下方二维码关注公众号,关键字回复【AI】资料领取!!

人类又被AI碾压,这次是星际争霸的更多相关文章
- 2018年星际争霸AI挑战赛–三星与FB获冠亚军,中科院自动化所夺得季军
雷锋网 AI 科技评论消息,2018 年 11 月 13-17 日,AAAI 人工智能与交互式数字娱乐大会 (AI for Interactive Digital Entertainment) 在阿尔 ...
- 星际争霸2 AI开发(持续更新)
准备 我的环境是python3.6,sc2包0.11.1 机器学习包下载链接:pysc2 地图下载链接maps pysc2是DeepMind开发的星际争霸Ⅱ学习环境. 它是封装星际争霸Ⅱ机器学习API ...
- 星际争霸的虫王IA退役2年搞AI,自叹不如了
------------恢复内容开始------------ 金磊 发自 凹非寺 量子位|公众号 QbitA 这年头,直播讲AI,真算不上什么新鲜事.但要是连职业电竞选手,都开播主讲呢?没开玩笑,是真 ...
- 【转载】 星际争霸2的AI环境搭建
原文地址: https://blog.csdn.net/qq_40244666/article/details/80957644 作者:BOY_IT_IT 来源:CSDN -------------- ...
- FaceBook 发布星际争霸最大 AI 数据集
简介 我们刚发布了最大的星际争霸:Brood War 重播数据集,有 65646 个游戏.完整的数据集经过压缩之后有 365 GB,1535 million 帧,和 496 million 操作动作. ...
- 14. 星际争霸之php设计模式--状态模式
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- 【转载】 Deepmind星际争霸2平台使用第一轮-完成采矿
原文地址: https://blog.csdn.net/woaipichuli/article/details/78645999 ----------------------------------- ...
- 20. 星际争霸之php设计模式--适配器模式
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- 19. 星际争霸之php设计模式--迭代器模式
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
随机推荐
- Java学习---面试基础知识点总结
Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类. sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线 ...
- C# Excel操作类 ExcelHelper
实现C#与Excel文件的交互操作,实现以下功能: 1.DataTable 导出到 Excel文件 2.Model数据实体导出到 Excel文件[List<Model>] 3.导出数据到模 ...
- 关于Javascript的des加密
参考文章:https://www.cnblogs.com/MSMXQ/p/4484348.html 需要先下载CryptoJS文件,然后引入其中的两个文件,可以在github中找到. 直接上代码 &l ...
- java如何对map进行排序详解(map集合的使用)
今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单介绍Map 在讲解Map排 ...
- python第二十七课——os模块
演示os模块中常用的属性和函数: 1.os模块: 作用:管理文件和目录 属性: os.name:返回系统类型 常用的windows系统 --> nt os.environ:返回当前系统所有的环境 ...
- Netty入门(十)解码分隔符和基于长度的协议
我们需要区分不同帧的首尾,通常需要在结尾设定特定分隔符或者在首部添加长度字段,分别称为分隔符协议和基于长度的协议,本节讲解 Netty 如何解码这些协议. 一.分隔符协议 Netty 附带的解码器可以 ...
- 洛谷P4053 [JSOI2007]建筑抢修
放题解 题目传送门 放代码 #include <bits/stdc++.h>//万能头 #define MAXN 150000//最多的建筑数量(数据范围) using namespace ...
- Spring(十六)之MVC框架
MVC 框架教程 Spring web MVC 框架提供了模型-视图-控制的体系结构和可以用来开发灵活.松散耦合的 web 应用程序的组件.MVC 模式导致了应用程序的不同方面(输入逻辑.业 ...
- scrapy (四)基本配置
scrapy使用细节配置 一.建立项目 1.scrapy startproject 项目名字 2.进入项目: scrapy genspider 名字 不带http的根网址 3.默认模板(或改变模板) ...
- $Luogu P2029$ 跳舞 题解
一道不是十分水的\(dp\). 首先我们考虑\(dp\)方程的构造.起初我定义的状态是\(dp_{i,j}\)表示前\(i\)个格子,总共跳了\(j\)次的最大得分.但事实上它并不可以转移,因为我们不 ...