海归网首页   海归宣言   导航   博客   广告位价格  
海归论坛首页 会员列表 
收 藏 夹 
论坛帮助 
登录 | 登录并检查站内短信 | 个人设置 论坛首页 |  排行榜  |  在线私聊 |  专题 | 版规 | 搜索  | RSS  | 注册 | 活动日历
主题: [闲聊]星际争霸1的AI设计思路:以人族开局为例
回复主题   printer-friendly view    海归论坛首页 -> 海归茶馆           焦点讨论 | 精华区 | 嘉宾沙龙 | 白领丽人沙龙
  阅读上一个主题 :: 阅读下一个主题
作者 [闲聊]星际争霸1的AI设计思路:以人族开局为例   
renzaisina





头衔: 海归中士


加入时间: 2012/10/28
文章: 4

海归分: 787





文章标题: [闲聊]星际争霸1的AI设计思路:以人族开局为例 (1388 reads)      时间: 2012-10-28 周日, 17:25   

作者:renzaisina海归茶馆 发贴, 来自【海归网】 http://www.haiguinet.com

现在看来,伯克利分校的星际争霸1AI—— “主宰”充其量是个微操机器人。它一如既往地没有认识到,AI能够“随机应变”这个问题的解决,最终的答案就是问题本身——随机地应变。

星际争霸1是一款即时策略类游戏。我们就从策略入手,以人族的开局为例说明如何设计真正的AI。电脑AI选定人族后如何发展自己呢?不妨将它视为一连串策略的发生、执行与完成,这一切又都由AI自己随机决定。为何要随机的理由很充分,任何一种无论多么成功的策略体系出现一次后都会被针对,一旦如此,AI就不再是AI了,人们发现那变成了愚蠢的行为。相反,有时看似愚蠢的行为,随着事情的发展却变得很聪明。

1、主动型策略
(1)采矿;
(2)建造:
放BS;
放BB;
放BR;
放BC。
(3)训练(比如,造SCV);
(4)探路;
(5)攻击;
(6)野BB。

2、被动型策略
(1)穿矿聚团攻击;
(2)散点围攻。

3、偶发型策略
(1)野BS;
(2)封气矿。

这些策略属于基本策略,是不完整的,你还可以将其归为两类供选择。不管怎样,我们将它们的集合统称为策略集。重要的是还有一类:

4、优化型策略
(1)先定分析
如同一名人类选手新学星际这个游戏,AI需要对地图、兵种等进行基本的分析,依据有关数据确定每个时段的必须完成的任务、基本的发展路线。能做到这一点是因为,星际的资源、兵力和科技在一定时间内是有上限的。

(2)指令序列
指令序列必须具备策略集(供选择策略)、计算和比对功能。进入游戏后,AI为每个SCV建立一个指令序列(相当于一个独立的电脑进程或应用程序),来控制SCV。假如随机取到采矿这个策略,那么,四个SCV可以同时去距自己最近的水晶采矿。与之同时,为大本建立起的指令序列训练一个SCV。假如电脑在拥有9个SCV时选到探路策略,那么就随机选一个SCV,计算出一条路线,出去探路。假如这个SCV在探到对方后遭遇攻击,指令序列根据先定分析中的数据比对攻击与防御,决定攻击还是躲避。假如这个SCV不幸地遭遇散点围攻(类似于6条小狗合围)后阵亡,则该指令序列删除。

(3)策略中心
控制线。对(1)的问题做出回应的就是它。在游戏进行到某个时间,依据自身采集的资源情况、侦查情况,修正或继续执行原来的策略。例如,当水晶达到100时,大本返回(或控制线直接读取到)这个信息,控制线从自身的策略集中选择策略,决定是放BS,或是等待,继续训练SCV,满150水晶时放BB。这些信息返回给大本。水晶达到150时,控制线随机选一个SCV放BB。当探路的SCV探完对方后,返回信息给控制线表示任务完成,控制线决定这个SCV的下一步动作,比如,此时对方探路农民同样到达了AI家中,AI家中尚未造建筑,则控制线有可能选到野BS或野BB。理由是,从人类选手的操作可以知道,一个要放建筑的农民可能很长时间都放不下。所以,指令序列给出的任务应当是有时间属性的,超过某个时点则交由控制线处理,这同样可以用来对付对方的封气矿策略。控制线还应当有个某个时段占据某个有利地形,或某些兵种前往某地的策略,等等。它决定了兵力部署、站位。
交叉策略中心。SCV遭遇对方探路农民的骚扰性攻击后,可能选择攻击策略(穿矿聚团攻击或散点围攻),这需要多个指令序列的协同,因此可以选择创建一个新的指令序列来进行控制。我们将它称为一个交叉策略中心。

(4)分析中心
先定分析属于这部分的内容。只是它如此重要,以致将它提前了。分析中心又应当具备更多的功能。
学习。也就是对AI自身的整体性训练,包括自我对战训练、与其他选手的对战训练和调整策略集、控制线等。策略集一开始是不完整的,但可以通过与一个同自身一样的程序来对战,扩充和优化策略集。分析中心通过对对战录像的分析(当然只能是代码形式的),读取有关数据,切分各时段资源、兵力和科技等情况,选取较优的部分纳入策略集,删除不合理的策略。如有必要,为策略赋予时间属性。这样,就可能出现一个AI学习到的大招。其他也是如此。

基于随机性的电脑AI不会每次都胜,因为世界是公平的。但是,随着电脑AI的强大,完全可以预言,星际争霸1的平衡性将被彻底打破。公平将不再是对一个人类选手和一个电脑AI而言,而只是对一个AI与另一个AI而言。我们需要的将是1024线,看到的将是真正的不夜城。3个枪兵旋转打地刺不是奇迹,也许,我们打开AI间的对战一看,一个AI正在甩枪兵。

作者:renzaisina海归茶馆 发贴, 来自【海归网】 http://www.haiguinet.com









相关主题
[闲聊]张少将召忠又出雷人之言:野田果真就是“国际祥林嫂”,象个怨妇! 海归主坛 2012-11-06 周二, 22:27
[闲聊] 刚发现自己跟赵子琪和路金波(李寻欢)是同龄人 海归茶馆 2011-7-26 周二, 13:17
[闲聊]看Boston Legal,记得有句话大意:A person is... 海归酒吧 2009-5-18 周一, 14:49
[新闻][闲聊]国务院批复2万亿元铁路投资计划 海归茶馆 2008-10-25 周六, 18:04
[闲聊]标准的美和黄金分割,附:女性人体美的四条标准 海归茶馆 2006-8-04 周五, 20:57
[闲聊]诸神之战在星际争霸1的实现[001]AI游戏的发端 海归茶馆 2012-10-28 周日, 17:26
[闲聊]浅谈手机,华为牌子对比苹果和三星牌子 海归茶馆 2014-4-21 周一, 18:22
[闲聊]Crayon Pop:继PSY《江南style》之后诞生的又一明星 生活风情 2013-8-15 周四, 15:52

返回顶端
阅读会员资料 renzaisina离线  发送站内短信
  • [闲聊]星际争霸1的AI设计思路:以人族开局为例 -- renzaisina - (1860 Byte) 2012-10-28 周日, 17:25 (1388 reads)
显示文章:     
回复主题   printer-friendly view    海归论坛首页 -> 海归茶馆           焦点讨论 | 精华区 | 嘉宾沙龙 | 白领丽人沙龙 所有的时间均为 北京时间


 
论坛转跳:   
不能在本论坛发表新主题, 不能回复主题, 不能编辑自己的文章, 不能删除自己的文章, 不能发表投票, 您 不可以 发表活动帖子在本论坛, 不能添加附件不能下载文件, 
   热门标签 更多...
   论坛精华荟萃 更多...
   博客热门文章 更多...


海归网二次开发,based on phpbb
Copyright © 2005-2024 Haiguinet.com. All rights reserved.