Home
My Books
Browse ▾
Recommendations
Choice Awards
Genres
Giveaways
New Releases
Lists
Explore
News & Interviews
Genres
Art
Biography
Business
Children's
Christian
Classics
Comics
Cookbooks
Ebooks
Fantasy
Fiction
Graphic Novels
Historical Fiction
History
Horror
Memoir
Music
Mystery
Nonfiction
Poetry
Psychology
Romance
Science
Science Fiction
Self Help
Sports
Thriller
Travel
Young Adult
More Genres
Community ▾
Groups
Quotes
Ask the Author
Sign In
Join
Sign up
View profile
Profile
Friends
Groups
Discussions
Comments
Reading Challenge
Kindle Notes & Highlights
Quotes
Favorite genres
Friends’ recommendations
Account settings
Help
Sign out
Home
My Books
Browse ▾
Recommendations
Choice Awards
Genres
Giveaways
New Releases
Lists
Explore
News & Interviews
Genres
Art
Biography
Business
Children's
Christian
Classics
Comics
Cookbooks
Ebooks
Fantasy
Fiction
Graphic Novels
Historical Fiction
History
Horror
Memoir
Music
Mystery
Nonfiction
Poetry
Psychology
Romance
Science
Science Fiction
Self Help
Sports
Thriller
Travel
Young Adult
More Genres
Community ▾
Groups
Quotes
Ask the Author
Artificial Intelligence
discussion
1 view
星际争霸1的AI设计思路:以人族开局为例
Comments
Showing 1-1 of 1
(1 new)
post a comment »
date
newest »
message 1:
by
Fakeinbox
(new)
Aug 11, 2013 07:01PM
Mod
星际争霸1的AI设计思路:以人族开局为例
现在看来,伯克利分校的星际争霸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正在甩枪兵。
相关阅读
★绝对真理的内涵、架构与印证
★概率论:完全可能性的理论与现实图景
★悖论问题的统一解
★从延安文艺座谈会到人类社会的未来
★发现号航天飞机——自然算法伟大的飞矢变换
★诸神之战在星际争霸1的实现[001]AI游戏的发端
★千古同一梦,开门笑解痴——我的红楼梦
reply
|
flag
back to top
post a comment »
Add a reference:
Book
Author
Search for a book to add a reference
add:
link
cover
Author:
add:
link
photo
Share
Artificial Intelligence
Group Home
Bookshelf
Discussions
Photos
Videos
Send invite
Members
Polls
unread topics
|
mark unread
Welcome back. Just a moment while we sign you in to your Goodreads account.
现在看来,伯克利分校的星际争霸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正在甩枪兵。
相关阅读
★绝对真理的内涵、架构与印证
★概率论:完全可能性的理论与现实图景
★悖论问题的统一解
★从延安文艺座谈会到人类社会的未来
★发现号航天飞机——自然算法伟大的飞矢变换
★诸神之战在星际争霸1的实现[001]AI游戏的发端
★千古同一梦,开门笑解痴——我的红楼梦