鄧舒夏
看看近幾年大眾領域對棋牌界的關注,你就會發現,最火爆的話題并不是幾位國際高手之間的對決,而是人類和人工智能(AI)的對決——2016年圍棋高手李世石以1:4的比分負于人工智能選手AlphaGo,隨后另一位高手柯潔又兩次輸給這個AI選手,這一系列的比賽引發了各行各業對AI能力的討論,也使得AlphaGo成為圍棋界“破圈”最成功的世界冠軍。
不過AI在圍棋上的建樹并不足以展現其最高潛能。通常來講,根據游戲中的信息暴露程度,棋牌類游戲可以分為“完美信息游戲”和“不完美信息游戲”兩類。像國際跳棋、國際象棋、圍棋等屬于“完美信息游戲”,而德州撲克、橋牌、麻將等屬于“不完美信息游戲”。在AlphaGo一戰成名之后,越來越多的研究者投入到不完美博弈游戲的研究中,微軟選擇的是麻將——在2019年8月的世界人工智能大會上,微軟亞洲研究院宣布其研發的麻將AI系統“Suphx”成為首個在國際知名麻將競技平臺“天鳳”上升到十段的AI系統,今年4月,他們于在線數據庫arXiv吐發表了關于Suphx的論文。
“從未知信息的數量、信息集的平均大小上來看,麻將是AI學習中難度最高的棋牌類游戲之一,它的玩法入門容易,想要精通卻十分困難。比如在天鳳平臺上超過35萬的活躍玩家中,只有不到1%的玩家達到了專業七段及以上的高手水平?!蔽④泚喼扪芯吭焊痹洪L劉鐵巖告訴《第一財經》雜志。2017年下半年,微軟亞洲研究院成立了麻將AI研究團隊,包括5名研究人員和4名實習生。有趣的是,這些人中并沒有麻將高手,有的人甚至連麻將的規則都不甚了解。
首先擺在研究員面前的問題是,他們要教會Suphx麻將的規則。要知道,麻將雖然起源于中國,但民間的麻將更偏娛樂性,缺乏統一的規則和評價體系,僅在中國就有四川麻將、福建麻將、北京麻將等等不同打法,不同游戲平臺也設立了不同的規則。調研之后,微軟研究人員決定將日本“天鳳”平臺作為訓練標準,這個“競技”性質的平臺具有完善的規則和段位體系。同時,平臺上的海量比賽數據對訓練AI有很高的價值。
“天鳳公司的CEO角田先生對AI麻將的發展持非常開放的態度,因為他一直在努力推動麻將競技運動,很想知道目前人類能打出的這些打法是不是最好的,未來還有哪些新技巧可以用?!眲㈣F巖說。在此之前,已有兩位AI選手人駐天鳳,它們分別是2015年由東京大學團隊設計的“爆打”,和2018年日本Dwango公司推出的“NAGA25”。
縱觀Suphx的“求學之路”,可以大至分為三個階段。首先,微軟研究員搭建了日本麻將的仿真環境,嘗試了決策樹、神經網絡等多種AI模型,然后通過自我博弈的強化學習技術來訓練模型。

那些還待在實驗室,卻可能影響未來的生物、太空、人工智能等前沿技術資料來源:微軟亞洲研究院
從單局游戲來看,麻將的打法和計分規則比象棋、圍棋更加復雜。以天鳳的規則為例,桌面共有136張麻將牌,每位玩家只能看到自己的13張手牌和其他玩家打出過的牌,其他均為隱藏的未知信息。用博弈論的語言來講,每個可觀測狀態平均對應著超過1048個隱藏狀態。因此,僅基于這些已知信息無法解決策略上的問題,Suphx需要更強的直覺、預測、推理和模糊決策的能力。
此外,麻將牌型的組合也十分多樣,有清一色、混一色、門清等等贏法,不同牌型的計分數額相差很大。而在打法上,麻將還存在吃牌、碰牌、杠牌、立直(指報告進入聽牌,差一張牌即能贏牌的階段)等動作,這些都會改變玩家的摸牌順序。
從段位的判定角度看,天鳳平臺上一輪麻將游戲通常有8局甚至更多局的對決,每局結束后,4位玩家會被增加或扣除分數,最后累計得分排名——排在前兩名的玩家會得到一定點數,第三名點數不變,墊底的玩家則會被扣去一定點數。這些點數直接決定玩家的“段位”,因此高手可能會有策略地輸掉一些牌,以保證最后的排位成績。“所以我們不能直接使用每局的得分作為強化學習的獎勵反饋信號?!眲㈣F巖說道。“我們測試時基本上跑100萬場游戲,才能明確地看出誰更厲害。這與圍棋很不一樣,圍棋是五局三勝的。
最終,研究員們為Suphx設計了5個訓練模型,皆基于網絡層級數很深的深度殘差卷積神經網絡,它們分別是丟牌模型、立直模型、吃牌模型、碰牌模型以及杠牌模型。另外,Suphx還有一個基于規則的贏牌模型,用來決定在可以贏牌的時候是否執行贏牌。這樣在對決時,Suphx會根據已知信息和預測信息,推斷出還要摸幾張牌才能贏牌、能夠贏多少分、贏牌的概率等等。確定模型后,Suphx通過前期強化訓練,達到了約等于天鳳平臺六段的段位水平。直到2019年2月,微軟亞洲研究院與“天鳳”達成合作后,Suphx才在平臺上正式“出道”,參與到隨機匹配的對決中。此外,天鳳還向Suphx團隊提供了千萬量級的高段位玩家牌譜。
拿到真實的牌局數據后,Suphx的訓練進入到第二個階段——模仿學習。
首先,研究員們根據天鳳上真實的牌局數據校驗了Suphx的仿真模擬器,然后讓Suphx模仿高手在牌局中的行為,通過監督學習來訓練之前擬定的5個模型。需要說明的是,天鳳對AI選手有很多限制。出于“公平”的考量,Suphx需要和人類選手的比賽行為一致,即一次只能參與到一場對決中,不能為了升級快而同時在多個房間打牌。另外,Suphx不能進入付費房間——“鳳凰房”,只能在免費房間里對決。學習高手的牌譜后,Suphx的穩定段位很快提升到7.6段,已經高于平臺上的其他兩位AI選手。
模仿人類打法后,想要找到新策略,就需要Suphx回歸到自我博弈的“強化學習”上,這便是第三個階段。一場麻將對決中有太多的未知信息,因此,從當前牌面到最終策略之間的鏈路很不清晰,這就導致為Suphx設定強化學習的目標后,它很容易在訓練過程中迷失方向,不知道怎樣決策才能實現獎勵的最大化。

麻將競技平臺“天鳳”。
為此,微軟的研究員采用了一種新型訓練思路——讓Suphx在自我博弈時,先從“上帝視角”掌握牌局的全部信息,以此引導AI模型的訓練方向,使其更加接近完美信息意義下的最優路徑,然后倒逼AI模型更加深入地理解可見信息,從中找到有效的決策依據,以便在實戰時作出更準確的決策。這種從后向前推的方法被稱為“先知教練”,類似的技術常被用于AI金融領域,最典型的案例是讓AI利用未來真實的股票走勢,構建最優投資組合,并由此倒逼AI學出更好的基于股票歷史信息來決策的真實投資模型。
不過“強化學習”本身是一個AI延遲獎勵、自我提高的過程,并不像監督學習一樣可控,理論發展也不盡完善。在訓練Suphx時,劉鐵巖同樣發現了其局限性——如果教練過于“先知先覺”,它就會將過于超前的信號給到Suphx,使得后者的AI模型并不能完全理解為什么要這么做?!半m然這個技術目前在Suphx的運行過程中還是很有效的,但我們也走了不少的彎路,才把Suphx從七點幾的段位提升到八點幾,這個過程很艱難?!眲㈣F巖說,當下的解決方法是,研究員為“教練”額外制定一些約束條件,使其不能過多脫離Suphx本身的AI模型。
在“先知教練”“全局獎勵預測”等自適應訓練下,2019年6月,Suphx在天鳳平臺上達到十段段位,也逐步形成了一些特有的“牌風”。比如Suphx喜歡在出牌時保留安全牌,這樣未來其他玩家準備贏牌時可以降低自己“點炮”(即打出的牌促使對方贏牌)的風險。不過這些“防御性”打法只能讓Suphx排名“墊底”的概率比其他人類和AI選手低僅僅幾個百分點,這是因為“運氣”在麻將比賽中很重要——即便是一個頂級高手,在手氣極度不好的時候也無力回天。
現在,Suphx每天會在40塊圖形處理器(GPu)的訓練環境下完成100萬次以上的自我博弈訓練,平均完成一次牌局訓練的耗時是大約80微秒?!巴ǔI需要經過幾千萬次的自我博弈才會得到一個穩定的模型,這樣算下來,如果我們換一種新的麻將規則生成新的模擬器,大概要用二十多天的訓練時間得到一個比較穩定的AI模型?!眲㈣F巖說。
至于為什么Suphx的段位可以超過平臺上的其他兩位AI選手,劉鐵巖給出的簡單解釋是,“爆打”的開發者本身是一位段位很高的天鳳平臺玩家,他將自己的知識編碼到AI模型中,因此“爆打”更多使用傳統機器學習和“啟發式”的訓練過程,而Suphx使用的是深度學習方式。另一位AI選手NAGA25雖然采用的是“神經網絡”的深度學習方式,但沒有使用強化學習。
從某種程度上來說,AI在麻將上的參悟能力,代表了其在棋牌類游戲中的最高潛能。“不管從狀態空間復雜度還是游戲樹復雜度上,麻將都遠遠領先其他棋牌類游戲,除非未來還會發明一些更加復雜的大眾游戲,或者打個比方說,現在圍棋的棋盤是19×19的,如果把它變成190×190的盤面,難度同樣會上來幾個數量級?!眲㈣F巖說。值得一提的是,游戲公司也推出過很多AI選手,比如《王者榮耀》《星際爭霸》等等,這些戰略性電子競技,本質也是訓練機器做“不完美信息博弈”,但其復雜度并不比麻將高。
“人類存在生理極限,因此在操控上,機器天生比人類玩家更準確,但人類在打麻將上沒有這些局限性,操控鍵盤的技巧、出招快慢等不會對勝負產生影響,對決是智慧層面上的。”劉鐵巖解釋道。另外,策略類競技游戲的角色、地圖的隨機性有限,機器通過學習可以分析出游戲本身的“套路”,而麻將幾乎每一場牌局都是嶄新的,其“隨機性”遠比這些游戲要高。
不過,打贏人類玩家并不是Suphx的最終目的。如今已經有很多麻將愛好者會專門學習Suphx的牌譜,研究員們也正在同天鳳平臺探討,如何把Suphx改造成可以提供陪練服務的AI,比如讓它為玩家復盤比賽,或者模擬不同段位的水平做定制化的陪練——AI界不乏這樣的先例,比如騰訊人工智能圍棋團隊“絕藝”已經成為中國圍棋國家隊的訓練伙伴。此外,研究員們也在推動讓Suphx背后的AI技術外延,在金融、交通、游戲等需要復雜決策的領域落地,從而解決更多貼近人類真實生活的問題。
“其實現在回過頭看Suphx的發展,人在里面更多扮演的是算法設計者的角色,而不是通過對弈來教會Suphx如何出招?!眲㈣F巖說。他認為,即便沒有天鳳平臺的高手牌譜訓練,Suphx依然可以達到現在的段位水平,只不過花費的時間會更長一些?!癝uphx的能力更多是靠自我博弈獲得的,這是一個很好的例子,它說明人工智能真的會改變很多事情,你不需要成為一個領域的頂級專家,只需要知道里面的基本規則和知識,然后利用好人工智能就能達到驚人的結果,這就是人工智能可以賦能很多垂直行業的原因?!?/p>