coreBugZJ

此 blog 已弃。

电子游戏有人工智能吗? (转)

确实如此,如果从某个角度上看。

 


朱莉亚和我正在Wii上玩《超级马里奥赛车》(Super Mario Kart)。在这款赛车游戏里,我们可以选择一辆赛车,在各种赛道同幽灵、电脑或者世界各地的其他真人玩家进行对抗。我突然想到:每次玩游戏时,我们都在进行“图灵测试”。


当通过联网进行比赛时,我们知道对手是真人玩家。这个游戏运作的信息不仅来自我们对游戏模式的选择,还由于其他一些难以被忽视的讯息。于是,由于我们预先知道了对手是人工智能电脑还是真人,所以这并不是一个真正的“图灵测试”。我设想可以在那些不了解游戏的人身上进行这个测试,但工作量会很大,而且需要允许他们使用我们的账号,而他们也许还会加以破坏,使得这个测试无法进行。但我们可以深入的思考关于机器与人类之间的不同,这亦是我们在游戏中生存的安身立命之本。


【图灵测试:如果一个人使用任意一串问题去询问两个他不能看见的对象:一个是正常思维的人;一个是机器,如果经过若干询问以后他不能得出实质的区别,则此机器通过图灵试验。】


按照游戏能力的高低来划分的话,游戏中的电脑对手有四个级别。朱莉亚和我每次都能百分之百地轻松击倒两个最低级别的电脑对手。多数时候,朱莉亚还可以在大部分的赛道上击败第三等级的电脑对手;我的成功率稍低,但是在大部分情况下我也能赢。第四等级的电脑对手的能力同第三等级的差不多,只是第四等级里的赛道被颠倒,变成了常规赛道的镜像模式。这种改变对电脑来说易如反掌……我想它们只是做些简单伎俩,诸如把脑袋里的什么芯片颠倒下,要不就是把眼睛装到脑壳后之类,这样它们就可以将镜像模式作为正常赛道来比赛。朱莉亚对赛道很熟悉,把赛道的布局牢记在心里,因此只是在为数不多的几次“镜像模式”挑战赛中碰到麻烦,这种改变对于我来说难度中等,没跑好主要是因为开局没把握好。可以说,这种以颠倒赛道比赛的方式并没有使我偏出赛道和撞上障碍物的几率增加。


然而,当我们来上一场真人PK的话,这又是另外一番完全不同的景象了。我们会看到这些人类伙伴所拥有的能力模式和策略更为复杂。

一小部分真人对手的能力稍差或者注意力不集中,我们可以立马把他们甩到身后,让他们望尘莫及。我们猜这些玩家是真正赛车手的小弟妹。如果他们选择的游戏角色是个小娃娃的话,就更符合我们的猜想。(大约三分之一的游戏角色,包括我经常选择的那个,都是卡通化的成人形象。这些角色体重更轻,可以驾驶机动性更强的赛车……角色的选择会对比赛成绩产生影响,而且必须和赛车的风格相匹配。)这些人大概都是些游戏菜鸟或小白,要不就是那种游戏玩到一半还要跑到冰箱里拿啤酒喝的心不在焉的家伙。


还有一类游戏达人级的真人玩家,他们的游戏水平连电脑也赶不上,我们更是自叹不如了。这些人也许在现实中就是个赛车很厉害的家伙,要不就是玩过那些我们还没闯过的关,从而被锻炼得能力超强。或者他们已经把游戏给黑了来作弊。无论如何,我们都讨厌他们。


另外有一些玩家通常玩得相当好,朱莉亚可以经常打败他们,我则基本上都是他们的手下败将。这些真人的玩家,包括朱莉亚和我,都有自己所擅长或不擅长的赛道(作为游戏策略的一部分就是要投票选择比赛的赛道,通常是从最初投票选择的赛道中随机选一条)。所以当我们在不同的赛道上同其他玩家比赛时,结果也会不同。


简单说来,我们之所以能判定对手为电脑,不仅因为他们不犯错误,也因为他们不会去抓住一些机会,而在机会面前真人玩家通常会去碰碰运气。我们游戏中的一个策略,便是往赛道上扔障碍物,而最低水平的电脑玩家连这些障碍物都绕不过去。我们还有两三个把戏,可以加速前进或者先发制人,而低水平的电脑玩家对这些把戏也是“一无所知”。较高水平的电脑一般都能绕过障碍物,他们似乎对这些小伎俩有所察觉。


最厉害的电脑也远远不是最厉害的真人玩家的对手,而这并不是因为人工智能或计算能力的局限性,至少我坚信这点。至于在策略、游戏精通度和基本技能方面,电脑玩家可以变得更加完美从而更难被打败(尽管运气因素也会影响比赛胜负,而且影响还不小),但我坚信电脑还没有尽善尽美到如此地步。


这款赛车游戏里有一种被称为“杯赛”的游戏模式,即一个真人玩家对抗其他11个电脑车手。其中有一两个电脑比其他电脑水平要高,通常能打败你的也就是这一两个电脑车手。但是随着杯赛一场一场的推进,高手电脑的安排也是换来换去,场场迥异,这种类人模式亦被编程进了游戏。


另外一种游戏模式是对抗来自互联网上的“幽灵”,“幽灵”有一个鬼魅般的形象(半透明),它代表了以前竞赛中某个玩家的角色。所以所谓来自互联网的“幽灵”角色指的是那些没有竞赛者参与的,只是为了试验自己能跑多快的玩家,你要同这些幽灵比赛来检验自己能否击败它。因此这回你对抗的虽然是“真人”,却是彼时游戏中的真人。


电脑似乎会选择那些与你旗鼓相当但实力并不完全对等的幽灵来和你比赛,这点很有意思。朱莉亚几乎每次都能打败她的那些幽灵,而我则一般6局5胜。但是当我使用朱莉亚的身份进行游戏时,她能打败的那些幽灵又让我成了手下败将。


所以游戏中所谓的互联网幽灵是一种“混合怪物”,它们是被人工智能驱使的用来对付你的真人玩家经验。


那到底是什么原因让我们在《超级马里奥赛车》中能将人与电脑区分开来呢?同电脑相比,人类更为多变且不可预测,我认为这点作为程序写进电脑应该不难,我也深信人类可以很好被电脑所模仿,而这些电脑能够轻松的通过图灵测试。


当然这些并不是真正的图灵测试,因为真正的图灵测试是以语言模式来执行的测试,我们知道语言模式和赛车模式是存在区别的!但是如果在我们人类的联网游戏中偶尔加入几个人工智能电脑,我想感觉也不错。诡异吧?确实,但很好玩。


【诡异谷(The Uncanny Valley)假说:假说认为,在人和非人(诸如机器人)的互动中,人对非人的喜好程度与非人和人之间相像的程度并不成正比。起初,喜好程度确实会随着相像程度提高而上升,但达到一定程度后,人对它的喜好感会急剧下降,甚至会转成负面的厌恶。】


如果这样的智能电脑存在的话,我想把它命名为卡拉图(Klatu)。


【Klaatu:《地球停转之日》中的人性化高智慧外星观察员,新版《地球停转之日》中的Klaatu由基努里维斯扮演,他在麦当劳里的一段中文对话把我雷到魂飞魄散。】



扩展阅读:浅谈AI(by 方弦)


AI者,Artificial Intelligence是也,也就是说人工智能。


人工智能可以说从远古开始就是很多人追求的目标了。古有偃师造木偶人的传说,在近代,各种各样的科幻小说更是将人工智能带到了大众视线之下,关于人工智能方方面面的各种严肃的争论也从未停止。


人工智能的确切定义到底是什么呢?一个比较普遍的定义就是由人类制造出来的能够表现出类似于人类的推理、归纳、学习等智能行为的机器或者程序。在这种定义 之下,其实一些简单的人工智能早已出现了,它们可以解决一些简单的问题,在某个特定的领域内的表现可以接近甚至超越人类。对这些人工智能的判别方法也早已 有人提出,并已经被广泛接受为一种被认可的手段,那就是由英国数学家阿兰·图灵(Alan Turing)提出的图灵测试。在排除非本质因素后,如果一台机器和一个人进行同一智能行为时,可以使观众无法判断出人类和机器的行为的话,那么就可以认 为这台机器在这方面拥有人工智能。在图灵当初的版本中,所使用的行为是聊天,如果说一群测试者在分别与一台机器和一个人谈话(当然是排除了语音等等因素而 只专注于内容)后,不能分辨出机器和人的话,那么就可以说这个机器具有与人相当的智能。当然,现在也有很多研究者在质疑这种测试方法,认为能有更好的办 法。


如果是利用图灵测试来判别人工智能的话,那么我们现在就已经有了在某一特定领域中通过了图灵测试的人工智能,并且它在测试中表现得似乎比人更加高明。这个 领域就是人类智慧的代表作——国际象棋,而这个人工智能,就是大名鼎鼎的“深蓝”。用计算机下国际象棋一直以来就被认为是人工智能的“圣杯”,是研究人工 智能的一条通道。终于,在不停地努力了十几年以后,在1997年夏天,由许峰雄等人所建造的“深蓝”在经过十几年的奋斗后,终于在棋盘上战胜了当时公认的 国际象棋世界冠军卡斯帕罗夫。卡斯帕罗夫是历史上等级分最高的人类棋手,但即使是他也败在了“深蓝”脚下,甚至在赛后还怀疑“深蓝”背后有人直接指挥控制 下子。在场外的许多国际象棋评论员也认为“深蓝”的奕法与以往的弈棋计算机不同,已经有了明显的人类特征。这样说来,很显然“深蓝”已经通过了国际象棋领 域的图灵测试。

 


但是人工智能研究界还有一些不甚满意的呼声,因为“深蓝”思考的方法并不十分高明。实际上,“深蓝”取胜的方法本质上是就是蛮力搜索,通过它的专用国际象 棋芯片,它可以对棋局作出速度极高的搜索,计算每个可能的变招。芯片的设计中还包含了丰富的国际象棋知识。正是利用了这些象棋知识,“深蓝”可以将搜索问 题大大简化,再加上专用芯片的强大搜索能力,就能计算十几甚至二十几步以后的局势,从而战胜了卡斯帕罗夫。



不得不说,运用蛮力策略的“深蓝”的确有点“胜之不武”的感觉。所以,虽然“深蓝”已经战胜了人类棋王,但是它仍然不是一个人工智能的好例子。那么,智能到底是什么?怎样才能说一个东西它有没有智能?到底怎么样才算是有智能?怎么样才能使一台机器拥有智能?


要分析“智能”这种东西,我们还是首先看看这个世界上最有智能的东西——大脑。在现代,科学家们对大脑是如何工作的仍没有一个定论,但是各种层面上的研究 已经正在逐渐拼凑出一个模糊的画面来了,对于一些方面也能做出一定的揭示了。现在我们还是以下国际象棋为例子来谈谈我们知道的画面。很显然,一名棋手在下 棋的时候是肯定不能像深蓝一样将每个布局都推演出来的,那么,人脑是如何做出判断的呢?这仍然是一个谜团。的确,人类棋手在下棋的时候的确会做明确的逻辑 推演,比如说典型的“如果对方如何如何走子我就如何如何反应”的推理。这些也正是计算机的专长。但人类棋手在下棋的时候也会有一些难以用逻辑来解释的感 觉。比如说高级的棋手在看一盘棋的时候可以比较准确地讲出局势的优劣,这个在计算机看来并不是一件很容易的事情,因为局势的优劣并不在于这盘棋的棋子排布 本身,而是在于接下来的对弈方面的各种应对的综合分析。还有,人类棋手还能够评估一着棋的风险、收益,还有棋子的状态和位置的重要性。尽管这些东西都是可 以量化的,但是对于计算机而言,要获得这些重要的信息,必须经过大量复杂的运算。然而,人类棋手的大脑却可以在瞬间通过一种“感觉”得知这些信息,这是否 意味着人跟程序始终是有不同的地方,而机器永远不可能超越人类呢?这个问题,从人工智能这个概念被提出的时候就已经产生了,至今仍是争论不休。


在“机器是否超越人类”这个问题上,绝大部分的人都分成了两派。一派的人认为人工智能继续发展的话,它们的智能终有一天会达到甚至超越人类,这一派所持的 这种思想被称作“强人工智能主义”。与之相反,另一派别的人认为无论人工智能如何发展,它们的智能都无法超过人类,对应地这种思想就被称为“弱人工智能主 义”。强人工智能主义者认为,既然大脑遵循已知的物理规律,那么人工智能至少可以通过模拟来达到与大脑相当的水平,所以人工智能能够至少与人类并驾齐驱。 而弱人工智能主义者则认为存在某种物理上的或者是技术上的壁垒,将会最终阻碍人工智能达到人类智能的水平。


弱人工智能主义者曾经提出过许多著名的说明为什么人工智能不能超越人类的论证,一个就是所谓的“中文屋”论证。设想将某位完全不懂中文的外国人(比如说图 灵)关进一个房间里,他只能用纸条的方式向外交换信息,然而这些纸条上面允许写的只有中文字符。房间里有一本完美的中文交谈指南,上面写满了将输入的纸条 上面的中文转换成输出的规则和对应表,他可以指导一切交谈。图灵在里边只能通过查阅这本指南来与外界交流。对于图灵来说,纸条上面的中文字一点意义都没 有,他自己认为这只是在不停地将一些符号翻来倒去而已。但是在房间外的我们来说,这个房间作为一个整体可以与之进行完全合理的交谈,也就是说我们不能区分 房间里的人和一个中国人。然而我们知道,房间里的图灵对中文一窍不通。引申到人工智能上,那就有了如下的问题:即使人工智能表面上通过了图灵测试,但它本 身可能并不理解自己的行为,然而人类在有意识的情况下是完全理解自己的行为的。这样的话我们是不是可以说人工智能虽然在表面上达到了人类的水平,但是它在 自我理解方面仍然是一片空白呢?这就是弱人工智能主义者提出的一个诘难。


当然,强人工智能主义者也进行了反击。他们说,关键就在于这“理解”二字。如何才算是“理解”呢?关键在于,无论我们要评判什么,都只能在这个“中文屋” 的外部来进行。如果在这一系列的交互中我们都不能将其与一个中国人区别开来的话,那么我们就只能认为,作为一个整体来说,“中文屋”对中文的理解跟一个中 国人对中文的理解是一致的。至于自我理解这种被认为是人类才有的东西,其实也只是一种思维上的活动,也只能通过外部的相互交互来判断。就算是人类的大脑, 在分子原子的层面来说也没有自我意识,那么为什么“中文屋”作为一个整体就不能被认为有自我意识呢?所以说,只要通过图灵测试,无论机器的内部构造如何, 都应该被认为拥有智能。这就是强人工智能主义者的一些观点。


通过这些思辨与论证,我们发现,研究人工智能对于我们研究我们的大脑和意识这些暂时还说不清道不明的问题是很有帮助的。因为如果我们有了一个可以与人类媲 美的人工智能的话,我们就能够通过研究这个人工智能来研究这些问题,因为这样的话在控制整个研究上面就会变得容易得多了。即使弱人工智能主义者的主张是正 确的,人工智能不能达到人类的水平,我们通过研究其中的原因也能够启发我们对于这些问题的思考。无论如何,研究人工智能不但有实际上的应用,而且还会使我 们人类对自身意识的认识更进一步。


人工智能作为人类对自身智慧探求的一种尝试,虽然历经了这么多的关于它的实际能力和伦理方面的争论,但是对其的研究仍然是方兴未艾的。毕竟,我们需要知道我们从何而来。

posted on 2012-03-29 20:40 coreBugZJ 阅读(1547) 评论(1)  编辑 收藏 引用 所属分类: 技术视野Intelligence

Feedback

# re: 电子游戏有人工智能吗? (转)[未登录] 2012-03-30 22:13 kkk

中文屋的问题是屋子是被动的,所以还需要对智能的主动性或者自发性有定义  回复  更多评论   



只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理