2016至2017年,AlphaGo橫空出世,接連擊敗世界頂級(jí)圍棋選手;2019年,另一個(gè)人工智能AlphaStar登上歷史舞臺(tái),它挑戰(zhàn)的是《星際爭(zhēng)霸2》的頂級(jí)職業(yè)選手。
一盤圍棋棋局大約持續(xù)150 步,面對(duì)的是250個(gè)選擇;而25分鐘的《星際爭(zhēng)霸》就已經(jīng)至少有36000步,面對(duì)的選擇數(shù)量是1 后面50個(gè)0。這是對(duì)人工智能的一次巨大挑戰(zhàn)。最終AlphaStar成為第一個(gè)打敗《星際爭(zhēng)霸2》頂級(jí)人類職業(yè)選手的AI。
AlphaStar是如何獲勝的?設(shè)計(jì)者面對(duì)哪些困難?AI距離達(dá)到真正的“智能”還有多遠(yuǎn)?
谷歌前工程專家、普林斯頓大學(xué)機(jī)器學(xué)習(xí)博士肖恩·格里什,在他新出版的《智能機(jī)器如何思考》一書中,展示了人工智能領(lǐng)域的前沿成果,深入解讀了感知算法、強(qiáng)化學(xué)習(xí)、深度語(yǔ)言識(shí)別等概念,闡釋了智能機(jī)器究竟是如何感知和思考的,并描繪了我們終將與AI共處的未來(lái)。今天的文章是本書的部分精編。
智能機(jī)器如何思考
肖恩·格里什/ 著
中信出版集團(tuán) 2019年6月
AlphaGo仍有局限性
-------
雖然AlphaGo具備識(shí)別圍棋盤面特征的能力,但它只能執(zhí)行下圍棋這項(xiàng)非常單一的任務(wù)。正如OpenAI(致力于人工智能研究的公司)的研究員唐杰所言:“AlphaGo不會(huì)決定去買個(gè)芝士漢堡,然后嘗試接管世界?!?/p>
AlphaGo是專門為下圍棋而設(shè)計(jì)的,因此它只具備下圍棋所需要的能力,它的一切都依賴于人類。除了在對(duì)弈過(guò)程中識(shí)別模式、選擇模式的能力,AlphaGo無(wú)法與瞬息萬(wàn)變的環(huán)境互動(dòng);除了匯總統(tǒng)計(jì)數(shù)據(jù)外,它沒(méi)有關(guān)于過(guò)去事件的記憶;除了模擬它和對(duì)手如何走棋之外,它也沒(méi)有關(guān)于未來(lái)事件的概念。
那么我們?cè)谌斯ぶ悄茴I(lǐng)域要迎接的下一個(gè)重大挑戰(zhàn)是什么?DeepMind(致力于人工智能研究與應(yīng)用的公司,2014年被谷歌收購(gòu))宣布了一個(gè)新項(xiàng)目——設(shè)計(jì)一個(gè)能夠玩即時(shí)戰(zhàn)略游戲《星際爭(zhēng)霸》的AI。這要求該AI具備更多與人類智能相關(guān)的品質(zhì):能尋找做決策所需的信息,能在有時(shí)間限制的條件下,以及高低不同層次上做出這些決策——既可以規(guī)劃具有長(zhǎng)期影響的行動(dòng),也可以做出閃電般迅速的反應(yīng)。
為什么讓AI在《星際爭(zhēng)霸》中取勝
如此困難?
-------
《星際爭(zhēng)霸》是一款設(shè)定在26世紀(jì)的戰(zhàn)爭(zhēng)游戲。就像國(guó)際象棋一樣,每個(gè)玩家都指揮著一支由不同單位組成的軍隊(duì),每個(gè)單位都有其優(yōu)缺點(diǎn)。與國(guó)際象棋不同,《星際爭(zhēng)霸》是一款即時(shí)戰(zhàn)略游戲。玩家不是輪流走子,而是在一個(gè)大的戰(zhàn)斗區(qū)域內(nèi)實(shí)時(shí)指揮自己的軍隊(duì)。軍隊(duì)之間的戰(zhàn)斗殘酷且節(jié)奏快,這給手快的玩家?guī)?lái)了優(yōu)勢(shì)。事實(shí)上,《星際爭(zhēng)霸》的頂尖人類玩家操作鍵盤和鼠標(biāo)的速度通常超過(guò)每秒5次。
此外,《星際爭(zhēng)霸》要求每個(gè)玩家都要維持正常的經(jīng)濟(jì)運(yùn)轉(zhuǎn),從而提供更多的資源發(fā)展自己的軍隊(duì)、升級(jí)不同類型的建筑等。游戲中的“戰(zhàn)場(chǎng)迷霧”掩蓋了大部分游戲空間,使玩家只能看到自己的單位或單位附近發(fā)生了什么,要掌握更多信息,只能派出偵察兵或者找到其他方法來(lái)了解環(huán)境。
在國(guó)際象棋和圍棋等策略性游戲中,最優(yōu)秀的AI能在游戲樹(shù)(組合博弈理論中用來(lái)表達(dá)一個(gè)賽局中各種后續(xù)可能性的樹(shù))中搜索數(shù)百萬(wàn)個(gè)狀態(tài),并通過(guò)程序查找最有可能成功的狀態(tài)。這種能力取決于兩個(gè)因素:樹(shù)的每個(gè)層次的分支因子(AI在給定時(shí)間內(nèi)必須做出選擇的走子選項(xiàng)的個(gè)數(shù))和樹(shù)的深度(AI在一局游戲中需要走多少步棋)。
圍棋的分支因子大約是250,保守估計(jì)《星際爭(zhēng)霸》的分支因子大約為1 后面50個(gè)0;一盤職業(yè)圍棋棋局大約持續(xù)150 步,而一局典型的25 分鐘的《星際爭(zhēng)霸》大約有36000個(gè)動(dòng)作。此外,“戰(zhàn)場(chǎng)迷霧”讓每個(gè)玩家僅擁有不完整的信息,因此國(guó)際象棋或圍棋中的傳統(tǒng)搜索方法并不適用。
換言之,《星際爭(zhēng)霸》對(duì)人工智能領(lǐng)域提出了巨大的挑戰(zhàn)。一個(gè)可以得心應(yīng)手地玩《星際爭(zhēng)霸》的機(jī)器人,需要具備許多我們認(rèn)為能夠定義人類智能的品質(zhì),包括用有限的信息做出戰(zhàn)略決策的能力,以及實(shí)時(shí)應(yīng)對(duì)不可預(yù)見(jiàn)情況的能力。紐芬蘭紀(jì)念大學(xué)的計(jì)算機(jī)科學(xué)教授戴維·邱吉爾稱這是游戲人工智能研究的“巔峰”。
通過(guò)簡(jiǎn)化游戲建立架構(gòu)
-------
想讓《星際爭(zhēng)霸》機(jī)器人會(huì)玩游戲,就必須把它們需要執(zhí)行的任務(wù)分解成可管理的模塊。對(duì)于這些模塊的定義來(lái)自職業(yè)人類玩家的分析總結(jié),如下圖所示,架構(gòu)分為三層。
最左側(cè)是AI與環(huán)境交互所經(jīng)過(guò)的層,為機(jī)器人提供了一種通過(guò)編程與游戲本身進(jìn)行交互的方式。
中間是感知和環(huán)境建模層,用于為AI追蹤軍事情報(bào):包括對(duì)手的基地、游戲中的單位和整個(gè)地圖的信息。不同的機(jī)器人對(duì)這一層的重視程度不同。
機(jī)器人的“智能”行為來(lái)自架構(gòu)最右邊的部分,也分為三層:
? 在頂層,這些機(jī)器人推理戰(zhàn)略:機(jī)器人應(yīng)該建造或升級(jí)哪些建筑,以及應(yīng)該在什么時(shí)候做這些事情。通常需要提前幾分鐘進(jìn)行規(guī)劃,并會(huì)對(duì)游戲產(chǎn)生直接的長(zhǎng)期影響。
? 在中層,機(jī)器人會(huì)推理戰(zhàn)術(shù),這涉及提前30秒到1 分鐘的計(jì)劃:AI應(yīng)該把它的建筑建在哪里?應(yīng)該何時(shí)出兵到何處作戰(zhàn)?
? 底層是反應(yīng)層,它要求在幾秒鐘內(nèi)做出規(guī)劃和反應(yīng),處理軍事情報(bào)層送來(lái)的環(huán)境信息。
設(shè)計(jì)實(shí)用型《星際爭(zhēng)霸》機(jī)器人
-------
許多頂級(jí)《星際爭(zhēng)霸》機(jī)器人的開(kāi)發(fā)者都遵循實(shí)用主義理念,用能夠贏得游戲的策略來(lái)編程他們的機(jī)器人,即便這意味著他們并沒(méi)有創(chuàng)造出足夠“智能”的機(jī)器人。例如,一些機(jī)器人被編程為遵循簡(jiǎn)單的rush策略(在游戲早期犧牲經(jīng)濟(jì),快速發(fā)展兵力,以此一舉擊敗對(duì)手的策略),它們會(huì)建立一支由弱小的戰(zhàn)斗單位組成的小型軍隊(duì),在對(duì)手建立防御之前發(fā)動(dòng)攻擊。
職業(yè)人類玩家也會(huì)使用各種各樣的rush策略,這只需要遵循一套簡(jiǎn)單的規(guī)則,完全不考慮任何長(zhǎng)期規(guī)劃。即使是邱吉爾設(shè)計(jì)的更復(fù)雜的《星際爭(zhēng)霸》機(jī)器人UAlbertaBot,有時(shí)也會(huì)輸給那些使用rush策略的機(jī)器人。但能夠?qū)嵤┻@些策略的機(jī)器人仍然遠(yuǎn)遠(yuǎn)不能戰(zhàn)勝人類職業(yè)玩家。
玩過(guò)這類游戲的人肯定對(duì)戰(zhàn)過(guò)計(jì)算機(jī),大概會(huì)有此疑問(wèn):既然設(shè)計(jì)一款能玩游戲的機(jī)器人如此之難,為什么在游戲的人機(jī)對(duì)戰(zhàn)中計(jì)算機(jī)還是如此難以戰(zhàn)勝?邱吉爾解釋說(shuō),因?yàn)楝F(xiàn)實(shí)游戲中的機(jī)器人經(jīng)常“作弊”,它們并不是真的智能,比如計(jì)算機(jī)可以看到整個(gè)游戲地圖,沒(méi)有真正處于“戰(zhàn)場(chǎng)迷霧”環(huán)境下,但機(jī)器人也會(huì)派出偵察兵四處偵察,這只是在做戲。
《星際爭(zhēng)霸》不是終點(diǎn)
-------
杰米斯·哈薩比斯是DeepMind的創(chuàng)始人,在創(chuàng)立DeepMind之前,他就對(duì)《星際爭(zhēng)霸》這款游戲產(chǎn)生了興趣,因?yàn)樗囊晃煌率且幻呤滞婕?。杰米斯?duì)這位同事屢戰(zhàn)屢勝的能力非常著迷,有一段時(shí)間,他每晚把自己和他關(guān)在一個(gè)房間里,想辦法戰(zhàn)勝他。有時(shí)會(huì)為其設(shè)置障礙,讓他在沒(méi)有鼠標(biāo)或單手的情況下玩游戲,這樣便可以準(zhǔn)確地分析他的哪些操作讓他獲勝。
杰米斯將DeepMind的部分工作轉(zhuǎn)向開(kāi)發(fā)具有競(jìng)爭(zhēng)力的《星際爭(zhēng)霸》機(jī)器人,并和暴雪公司合作開(kāi)發(fā)了一個(gè)供機(jī)器人玩《星際爭(zhēng)霸2》的官方界面,從而讓開(kāi)發(fā)者幫助機(jī)器人以更有條理的方式學(xué)習(xí)。
最終AlphaStar成為第一個(gè)打敗《星際爭(zhēng)霸2》頂級(jí)人類職業(yè)選手的AI。今年1月,在人類vs AlphaStar的11場(chǎng)比賽中,人類只取得了一場(chǎng)勝利。
攻克《星際爭(zhēng)霸》是否意味著我們就能攻克智能?答案很簡(jiǎn)單,不是。
《星際爭(zhēng)霸》并沒(méi)有涉及人類智能的許多方面,包括人類從全新的、非結(jié)構(gòu)化的環(huán)境中理解并得出結(jié)論的能力。
創(chuàng)造出一個(gè)機(jī)器人,讓它能夠把《星際爭(zhēng)霸》這個(gè)游戲玩出頂級(jí)水平,這可能是一個(gè)引人注目的結(jié)果。然而,我們?cè)谶@個(gè)過(guò)程中獲得的工具和架構(gòu)——新的搜索算法、新的感知算法和新的強(qiáng)化學(xué)習(xí)算法,這些將是更重要的成就。
互動(dòng)送好禮
談?wù)勅伺c機(jī)器的共處
你肯定沒(méi)在《星際爭(zhēng)霸2》中和AlphaStar對(duì)戰(zhàn)過(guò),也不曾被AlphaGo打敗,但你也許經(jīng)常請(qǐng)教“小愛(ài)同學(xué)”或者被Siri調(diào)侃。無(wú)處不在的AI及其雛形可能已經(jīng)滲透到你的身邊,你會(huì)歡迎還是抗拒類似《黑鏡》、《真實(shí)的人類》等影視劇中所演繹的人與機(jī)器相處的生活嗎?我們將挑選10位留言走心的讀者送出《智能機(jī)器如何思考》一本,幫你更加了解AI。本書為中信出版集團(tuán)友情提供。
聯(lián)系客服