AlphaGo挑戰《星際爭霸2》會像圍棋之戰一樣橫掃頂級選手嗎?
暴雪娛樂製作總監 Tim Morten 在 WCS 中國站決賽上表示,AlphaGo 確認將挑戰《星際爭霸2》,但谷歌目前正在和暴雪溝通,具體細節還沒有確定。 via https://mp.weixin.qq.com/s?__biz=MjM5OTIxNzU0MA==mid=405605959idx=1sn=c4b2521a661ea8df2665f3c1e00b722bscene=1srcid=0327O9NXSt15Ui5ClEy6cNkMkey=710a5d99946419d933c0f52383c34d84972dfc3ba3c30123b6395562201d3f80c272da2940a53b91368a5421de5d610dascene=0uin=MTkzODQ0MjA0MQ%3D%3Ddevicetype=iMac+MacBookAir6%2C1+OSX+OSX+10.11.3+build(15D21)version=11020201pass_ticket=P9YrWLnyIr19chSGv93CAmyqmgbjugunIemwnDlHQ5GftrVnFKAOaET39FBa%2BFVY
站內知友 @TaoLei 曾經提到過 AlphaGo 的第一作者「曾經用機器學習和蒙特卡羅樹搜索玩《文明2》引起不小轟動」。
Deepmind要挑戰星際爭霸1還是2是有爭議的,目前的消息來源只有一篇上海的記者報道。
事實可能是暴雪只說挑戰Starcraft然後被一幫記者腦補成星際2。我本人覺得Deepmind更可能挑戰星際1,因為Alphago的頭目David Silver讀博士時的母校Alberta大學已經舉辦星際1的AI比賽好多年了。另外不要停留在星際1那簡陋的編輯器程度,星際1早有API了,BWAPI: Main Page,此API是純競賽API,沒有任何作弊介面,當然沒有限制APM,只是獲取戰爭迷霧裡單位是被禁止的。碼農可去一試。而星際2隻能用內置的那個銀河編輯器,暴雪並沒有開放API。正文:
首先根本無需限制AI的APM,甚至現在這階段人類都可以開圖和AI打,都沒有任何問題。
其次,谷歌來做AI是否能橫掃人類我不知道,但是悍馬2000那種AI是沒有可能橫掃任何一個業餘玩家的。Alphago現在的演算法也是不行的,因為滿足不了即時性。Alphago的直覺和大局觀是在大量計算時間的支撐下形成的,每一步棋並沒有比李世石耗時間少太多。Alphago在前期穩定耗時1分鐘,我相信就是利用這些時間來預先做一些運算,並且存在內存里以供之後根據局勢來直接調用。而李世石的78手擊敗Alphago正是因為這步棋把AI之前預先計算好的策略全部推翻,重新計算時間已經不夠了,所以亂下直到投降。悍馬2000的那些操作根本就是紙上談兵。(其實細心的同學看視頻就已經發現悍馬最明顯的作弊其實是開圖,所有坦克位置,槍兵位置全部能看到,暫且不談這個)
那些所謂的視頻里,悍馬操作的地圖全都是沒有任何地形的平原。實戰中可能有這種情況嗎?狹窄地形,毒爆包夾,無限APM的機槍也不可能無傷的。(如果是挑戰星際1,對AI來說就更不利了,因為星際1里的槍兵是無論如何都甩不了的,哪怕你的APM無限)另外說坦克那個(我就不提什麼I/O作弊了,沒必要和AI計較這個),1,只有在平原地形下,小狗才有空間散。在狹窄地形,建築學堵口,AI小狗散個試試,給多少APM也是被建築學後面的坦克全滅。2,實戰中用純坦克打小狗的是SB吧?AI爆狗,人類就得出坦克給它滅?有這麼傻逼的人類嗎?星際1可以出火兵,星際2出火車,AI操作去吧,一萬APM有用嗎?3,假如挑戰星際1,星際1小狗的碰撞體積遠大於星際2,只要路口稍窄根本就沒有散的餘地。
所以悍馬那些操作都是紙上談兵,至今沒看到某AI從農民開始發展擊敗職業選手的視頻。
隨便動腦子就能想明白,如果悍馬那些操作加上一些簡單if else,那麼哪怕是本科生也早就有人做出實戰無敵的AI了,但是為什麼沒有呢?星際AI比賽的獎金雖然不多,但做幾個if else加上悍馬的操作就能白拿錢的好事怎麼沒人做到呢?我承認悍馬的操作搭配人腦那確實是無敵,可是關鍵就在這裡了,好比某人買了世界上最好的電競滑鼠,滑鼠硬體支持每秒點擊一萬次,滑鼠的側鍵可以自動切屏施法瞄準,但是此人智商只有一歲的水平,還是沒有卵用。想想Alphago是怎麼模擬人腦的直覺的吧,Alphago的直覺能做到秒下圍棋嗎?
PLU之前的全明星以及韓國的類似節目以及直播等也可以作為旁證。火星effort用100多APM橫掃韓服340APM的對手。馬本座200APM橫掃500APM的天才人族Nada。我可以擔保,教主左手用滑鼠,右手被砍斷,只要稍加練習也能虐VS平台絕大多數人,還可能低估了。再高的APM,連一個缺乏經驗的人類大腦都彌補不了,還能彌補電腦?回到圍棋上,圍棋里也有類似悍馬這樣的純操作,那就是封閉空間內的死活判斷。一個搞計算機系的大學生也能做個AI在封閉空間內的圍棋死活題上擊敗李世石,無論是計算速度還是精度都能讓李世石完敗。但是想要在正式比賽擊敗李世石就沒那麼簡單了。這些單兵種的操作也就相當於圍棋死活題那個程度,和實戰差十萬八千里。
StarCraft AI Competition
這是目前星際AI的發展歷史,雖然重視程度和圍棋有很大差距,但也並不是像某些人認為的那樣低級。
上面鏈接里是Alberta大學舉辦的歷屆AI星際競賽,以及人機對戰的歷史。注意Alberta大學正是Alphago主創David Silver讀phd時的母校,裡面很多參賽的星際AI就是David Silver的博士學弟做出來的。這可能也是Deepmind選擇挑戰星際爭霸AI的原因之一。戰果是排名前3的AI被一個俄羅斯的業餘玩家輕易橫掃。俗話說Talk is cheap,要啥自行車,you can you up.
除了Alberta的這個比賽之外還有其他一些比賽:Welcome to the IEEE CIG 2015 StarCraft AI Competition[SSCAIT] Student StarCraft AI Tournament 2016
很多人說現在的AI都是土法鍊鋼,規模等級和大公司沒辦法比。這其實是不準確的。
1,Alphago的主創之一黃士傑在讀博士的時候開發的AI已經有相當的水平了(好像擊敗過相當於業5業6的Zen,業5業6拿到星際對戰平台上來講就是前幾名,而星際的對戰平台的頂尖水平距離職業也相當遠),星際的AI哪怕是伯克利或者什麼學校的博士開發的也像弱智一樣。2,規模上如果是Alphago那個量級,怎麼保證實時運行?這就好像你拿著筆記本i5 CPU去嘲笑衛星上的幾MHz的龜速CPU一樣,人家能在-150攝氏度條件下能正常運行,你的i5能嗎?現在alphago的策略去搞星際,除非把星際變成回合制遊戲,否則實際效果不一定比10K行代碼強。3,當然不是說星際AI就無解,圍棋的AI技術已經積累很多年了,而圍棋的AI並不能直接拿到星際里用,所以星際AI至少也得從頭有這麼多積累才能有成效,只是很少有公司願意干這麼低性價比的事情。對人腦簡單的對電腦不一定就簡單。為什麼這些AI在人的面前這麼弱呢?
Where are StarCraft bots weak?我大致翻譯一下:1,AI在星際里的策略選擇有很大規律性,可以被人類利用。裡面給了一個例子,玩家注意到AI總是會用兵去追他的小狗,他就用小狗去吸引AI的兵來拖延時間,直到做出科技兵種直接乾死AI。Alphago用蒙特卡羅和神經網路模擬人類的直覺,但是這兩個演算法都是比較耗時間的,和李世石的比賽中AI用時也並沒有達到瞬間落子的程度。AI下快棋兩次輸給樊麾,慢棋5:0,雖然當時的狗比現在的弱很多,但也足以證明無論AI多強,它的快棋水平都是要次於慢棋的。所以在星際這種即時戰略遊戲里,AI是沒有足夠的時間來模擬人的直覺的,只能採用相對固定的戰術模式,這樣就容易被人類所利用。2,前後期策略的轉化。人類一開始會採用一個初期的戰術,一旦失敗會立馬根據對手的應對轉換戰術來在後期贏得主動。
不要說AI的多線操作 1萬APM能讓偵察做到天衣無縫。偵察是無論多少APM都不可能天衣無縫的(參考文末的小例子),幾個槍兵打興奮劑追農民,或者兩個叉叉堵路口,再高的APM也沒辦法讓農民進去偵察的。所以偵察不到的情況下,AI的前期戰術就可能失敗。文章里舉了一個例子,Alberta大學,David Silver的博士學弟做的AI,UAlbertaBot的前期rush很強,但是一旦失敗往後期策略轉換就有很大困難,因為前期rush往往會犧牲經濟,想轉後期哪怕是AI也力不從心。後期亂戰情況下,兵種齊全,很難讓AI的單一兵種瘋狂操作佔到便宜。雖然AI也會用判斷來轉換策略,但是很難做到人那種程度,什麼假rush真運營,什麼假運營真空投等等,AI還很難做到。3,建築擺放也是一大難題,無論是AI自己擺建築學,還是AI破人類的建築學都是難題。
蟲族在星際1里建築學是拖把流里核心一環。基地造多少個是得根據對手策略的選擇來決定的,基地造多了前期兵力空虛,基地造少了後期後勁不足。地堡的數量也是得根據大量對局,以及對對手風格的了解決定的。
就像圍棋里圍大模樣一樣,建築擺放是很靠直覺的,雖然堵口等有固定的模式可以hard code到AI裡面,但是其他方面,比如防空炮的位置和數量是沒有規律可循的,只能靠經驗和直覺,AI的直覺是靠大量計算時間支撐的,量子計算機普及之前,AI的直覺不可能做到人類這樣的瞬發。可能防空炮的位置差了一格結果沒有防住一次空投直接GG,也可能防空炮多造了幾個,結果兵力不足被正面捅穿。人類的建築學,AI也很難破解,人類各種不按常理出牌,教主那樣的猥瑣防空流,各種違章建築,AI對於每個違章建築都得選擇到底是繞過去還是拆建築還是撤退。而讓AI去自己構建違章建築也是很難的。AI得靠直覺決定什麼時候建,大部隊移動到什麼地方,哪個方位容易遭到攻擊,哪個地方建違章建築更有效。這些都需要靠大量計算支撐的AI直覺。4,賽制對AI不利。AI對AI的比賽一般是讓N個AI之間單循環賽,打1000盤看總勝率。
但是人對AI採用的賽制一般是BO3或者BO5。只有3到5盤,人類一般會在第一盤選擇某個戰術,rush,運營或者暴兵等戰術,然後觀察對方的應對再決定下一盤怎麼打。AI在一盤中用某個戰術擊敗人類是很有可能的,但是在BO幾的賽制里人類更容易摸索出AI的規律(因為AI沒有時間去計算蒙特卡洛和神經網路來產生直覺,所以它只能大量使用硬編碼,這樣就會有規律可循)。星際選手們可能不了解星際AI的現狀,然後估計AI操作佔優就能擊敗人類,這其實就是紙上談兵。操作的問題上面已經分析過了,也並不是沒有伯克利等學校的博士大牛去實踐。
星際選手以為自己運營戰略選擇都是一瞬間靈光一閃的事情,對於AI不算什麼難題,這就好像一個戀愛高手把妹一把一個準,然後以為對於AI來說把妹是很簡單的事情一樣。舉個例子,假如讓我去寫星際AI,稍微一想就發現有個很小很小的人類幼兒園水平的問題:
AI的飛龍看到了一個槍兵並且把它的位置速度和朝向記錄下來了,然後槍兵到視野外了,一秒後飛龍又看到了一個槍兵,因為槍兵可能已經改變移動方向和移動速度,那麼電腦怎麼判斷這個槍兵和之前記錄的槍兵是否是同一個槍兵?如果是小狗的話移動方向和速度更加變幻莫測。或者AI第一次偵查看到了人類2隊槍兵中的1隊多槍兵,第二次又看到了人類2隊槍兵中的另1隊多,AI怎麼判斷這兩次看到的槍兵有多少是前一次已經看到的,有多少是新偵查到的?
如果沒做好對應的話,AI完全可能把人類的2隊槍兵誤認為是1隊槍兵,或者1隊槍兵誤認為是2隊。兵力判斷錯誤的話,AI之後的決策就全部錯誤了。當然這個和星際的API介面有關係,介面如果提供每個槍兵的ID,那麼這個問題就不是問題(這種API和I/O作弊是同一類問題,API可能只有獲取視野內每個槍兵當前位置,朝向,移動速度的介面,也可能有獲得槍兵的全局ID的介面),否則就得上各種模式匹配,運動軌跡預測之類的演算法了,既然是預測就無法100%準確,而且需要運算時間,而人類雖然也不能達到100%判斷準確對方的兵力,但是起碼人類能做到瞬間判斷個八九不離十。對於現在水平的AI,人類完全可以讓它獲取槍兵的ID,但是類似這個問題的問題恐怕還有無數個。AI很像一個連去哪能找到杯子喝水都搞不清楚卻對於相對論量子力學很在行的博士。
提問:這個AI博士如果從初中開始讀,能考上重點高中嗎?這博士量子力學都這麼牛逼了,初中那些幾何題就更不成問題了吧,數學物理滿分,語文閱讀理解又有套路,這些都滿分還用得著拼作文嗎?直覺再差,字數寫夠隨便寫篇能讀的作文也能上重點高中吧?答:謝邀,考不上,因為此博士已經因為喝不到水而渴死了。 以上一直有SC的AI比賽的。每年一屆我記得。只是可能很多人沒聽說過。目前做的最好的AI的實力是多少我忘記了,反正我是打不過的。
人總是自以為是
AlphaGO是去年才冒出來的,再之前,跟幾個會下圍棋的同學討論AI的問題,人家的表態基本上就是AI最高能做到那幾個圍棋軟體的水平,跟他們下得有來有回罷了,稍微厲害點的業餘都能吊打。後面的事情大家都知道了。
星際么,也不過就是一種有限解法的博弈罷了。AI吊打人類,遲早的事情。黃旭東昨晚說了,限制APM,不然幾萬APM的散機槍還玩個J8
人類打星際,再厲害也是框框A。電腦打,則是可以把每一個單位當做Dota或者LOL英雄一樣操作。不會手抖,不會膀胱不濟,不會是瞎子,不會忘記開門,忘記堵口,忘記造人口。前線幾十個英雄騷擾,後方精準到調整每一個農民採礦。總結下來就是…單位越少,時間約早,人類的勝算越大。單位越多,時間越長,人類勝利的希望就越渺茫。機器目前比不上人類的,恐怕只有人類進化了千百年所演進出來的身體協調能力罷了。
一.Alpha Go挑戰圍棋,只考慮了「思考」,而沒有考慮其他。為什麼?
1.眼睛獲取信息。圍棋可以說幾乎沒有「看」這個操作,人眼睛能判斷圍棋黑白棋,目前的電子眼也可以。因為棋面非常簡單,只有黑白棋和格子。對於圍棋來說,「看」的操作可以忽略但是星際爭霸2就不一樣了,畫面非常複雜,星際2的畫面複雜度遠高於圍棋,這時候就不能單純的把「看」這個操作省略了。2.手的操作。圍棋幾乎不需要「手」來操作。圍棋唯一的操作就是落子,而落子的速度,快一秒慢一秒也沒那麼重要,對於圍棋來說,「手」的操作可以忽略。
但是星際爭霸2就不一樣了。星際爭霸2頂級選手每秒按滑鼠鍵盤的次數平均為7次左右。也就是說,「手」的操作不能被省略。3.反應速度。星際爭霸2的一場大規模交戰在數秒之內就會打完。損失上百個單位。而圍棋落一個子可能要幾分鐘。圍棋多想一秒鐘,沒什麼大關係。星際爭霸2交戰的時候,你反應稍微慢一秒,可能就是對面用一半損失消滅你全部部隊,你無力回天。二.為了得到一場公平的對決該做什麼?1.Alpha Go用機械臂操作鍵盤和滑鼠,和人類一樣。(目前ai的操作都是直接對電腦輸入指令。)為什麼圍棋可以不講究這個?我前面說了,圍棋的操作很簡單,就算真的用機械臂也難不倒機械臂的。但是讓機械臂和人手一樣一秒按七八次鍵盤,這個難度顯然很大。2.Alpha Go用電子眼觀看屏幕獲得戰場數據。(目前所有的AI都是直接讀取遊戲內部數據得到信息。)圍棋為什麼可以不講究這個?因為棋面非常簡單,黑白棋和格子,目前用電子眼很容易判斷。星際2就不一樣了,幾十個兵種,每個兵種還會混在一起,所以星際2得講究這個。3.有人說,悍馬2000那麼快的反應速度,為什麼要限制它的APM?你要明白,悍馬2000的反應速度快是建立在它直接讀取遊戲數據,還有直接用指令操控電腦的基礎上的。如果它操作用機械臂,看屏幕來獲取信息,他操作和反應還有那麼快嗎?這是不可能的。反過來想,如果星際2的畫面直接跑到你腦子裡,操作只要你想想就能實施,那麼人腦的反應速度也是極其恐怖的,只不過目前電腦接不到人腦上而已。4.因為目前機械臂和電子眼還沒有發展到那麼高的級別,所以谷歌目前的想法是直接限制APM,數據和操作還是通過連接電腦直接獲取。就算是限制APM到和人類玩家差不多,其實對人類玩家還是不公平的。這只是一個沒辦法的辦法。下一個結論:我認為星際2由於有戰爭迷霧的存在,會導致戰局有很大變數。圍棋的棋面是公開的,很容易被Alpha Go算死,輸了可能就是一直輸,再也不可能贏了。但是戰爭迷霧和不同的地圖就像不確定因素,Alpha Go很難把人類算死。這個地圖輸了,下一個地圖換個打法可能就能贏。對Alpha Go來說,打星際爭霸2比下圍棋難很多。同等算力下,Alpha Go下圍棋勝率可能無限接近100%,但打星際的勝率可能僅是90%,人類總會依靠各種地圖,想出奇奇怪怪辦法陰Alpha Go。感覺只要AI不是作弊或者那種無限APM,現階段人類就有的打,而且很有機會贏。其實AlphaGo的目的是想證明人工智慧可以戰勝人類智力,而不是機器能夠超越人類物理極限不是么?
如果是機械手的話不好說,如果是內置程序,那估計人類沒得打。
1.AlphaGo面對的圍棋問題是完全信息博弈問題,也就是說對弈者能夠觀察到場上的所有信息,而星際爭霸這種遊戲是不完全信息博弈問題,即選手是無法觀測到所有信息的,二者要解決的問題是有一定差異的。所以就算DeepMind要搞星際的話,那肯定也不會是AlphaGo
2. DeepMind諸位大佬確實準備搞一波星際爭霸,而且就是StarCraft2,因為前幾個月他們已經和暴雪合作,開源了星際2的機器學習環境(DeepMind and Blizzard open StarCraft II as an AI research environment | DeepMind)。星際2在不久的將來很有可能被DeepMind的諸位大佬所攻破,當然這其實是一件比較難的事情。舉例來說,圍棋的狀態空間是10的170次方,而星際爭霸的狀態空間大小是10的1685次方,當時AlphaGo剛出來的時候,各種公眾號的軟文開始吹圍棋的狀態空間要比宇宙中的所有粒子數還要多,那隻能說星際的狀態空間和圍棋的狀態空間要比簡直就完全不在一個數量級上。
3.雖然DeepMind開源了星際2的開發環境,但是當前基於星際的人工智慧比賽還基本上是基於星際1的,比如這個比賽AIIDE StarCraft AI Competition,這是今年比賽的結果StarCraft AI Competition Results,其實前幾名大部分還是基於規則進行編寫的,真正的完全通過機器學習的方法來做,還是存在比較大的困難的。。。有的也只是在bot的某幾個模塊使用機器學習的演算法來做,所以說當前在星際上的這種AI還是存在很大的空間的,當然就開DeepMind的大佬們怎麼玩了!
暴雪在即時戰略遊戲中最大的發明叫戰爭迷霧
我覺得關鍵得看色總奶誰吧
我覺得在設計出優秀的模型和進行大量的訓練量後,應該可以戰勝人類吧。dota2的solo不是已經完敗了嘛
AlphaGo的最終目的應該是打造一個通用的AI,在任何行業,只要告訴他目標,告訴他各種評分標準之類的東西,讓後讓他自己去練習去學習,最終訓練成一個該領域頂級的專家。最近在圍棋上,AlphaGo已經完勝人類,星際2也是遲早的事。
謝。。。邀。。。
我的看法是,只要經過簡單的調配之後(幾個月內),AlphaGo就可以在短時間內(幾個月內)戰勝人類。
核心理由:星際爭霸是有數值上限的。
這裡的數值指代的東西很多:比如說一定時間內的最大採礦量——這決定了暴兵的兵力上限;比如一定時間內單位最大移動距離——這決定了速度上限;比如在等量操作下的最大輸出和最低傷亡——這決定了微操;等等。。有這些還不簡單?
最後,再發一次我在人機大戰前就說過的話:「弱小和無知不是生存的障礙,傲慢才是」。不開圖就有的打 電腦偵查不到位的話 野個建築就有的打 前期滅了電腦 後期就沒法打了
不請自來我想問,ai怎麼應對我睡夢羅漢拳?
如果雙方都開圖的話我估計人類打不過,開不開圖對機器來說差別很大
關鍵是alpha 狗是通過圖像來識別還是通過後台數據直接讀取每個兵的意圖。
其實可以先看看某魚平台上直播 MOON對戰AI。
阿法狗優勢很大,阿法狗A了上去,阿法狗面如死灰,阿法狗打出GG!
應該不會,畢竟不是棋類這種可以完全推導的,戰略類遊戲畢竟還是給了擁有兵者詭道的人類機會吧,我更相信人的可能性。拙見
推薦閱讀:
※認知計算是什麼?與人工智慧、機器學習這些概念有什麼區別?
※中國象棋AI實現?
※兩個 AlphaGo 互相下,誰會贏?
※AlphaGo 2.0 與其 1.0 相比有哪些提升?
※顯卡、顯卡驅動、cuda 之間的關係是什麼?
TAG:星際爭霸2 | 深度學習DeepLearning | AlphaGo |