close

  來源:智東西

  4月3日消息,微軟公司於去年8月推出了一個名為Suphx的麻將人工智慧系統,並在麻將遊戲社區Tenhou中對其進行測試。據悉,Tenhou是世界上最大的麻將社區之一,擁有超過35萬活躍用戶。

  根據測試結果,Suphx最高成績為10段。這是目前為止,世界上第一個也是唯一一個達到10段水平的人工智慧。Tenhou社區中的人類玩家也證實Suphx具有超強學習能力,99.99%的玩家認為模型經過訓練后表現有所改善。

  本周,微軟團隊發佈了一份修訂版預印本文件,對Suphx進行了全面介紹。目前這項研究發表在學術網站arXiv上,論文題目為《Suphx:用深度強化學習打麻將(Suphx:Mastering Mahjong with Deep Reinforcement Learning)》

  一、麻將:規則複雜的不完全信息博弈

  麻將是一種多玩家參與、多輪牌的不完全信息博弈遊戲。

  每一局麻將又包含許多回合。一局遊戲的勝負是由累積回合分數決定的,輸掉一圈並不意味著玩家滿盤皆輸。為了保證最後勝出,玩家有可能會故意輸掉一局。

  另外,麻將遊戲的「胡牌」方式非常多。不同的「胡牌」方式下,牌面也有很大不同。相應地,每回合遊戲的得分也就不同。

  所謂不完全信息博弈,是指參與者並不了解博弈的全部情況。在麻將遊戲中,每位玩家手中最多有13張別人不可見的牌。牌牆中的14張牌對所有玩家都不可見。此外,牌桌中央還有70張牌。只有被玩家摸回或打出時,這部分牌的牌面才可見。

  在這種規則下,玩家每做出一個選擇,接下來的牌局就可能出現10個以上的走向。玩家很難僅僅依據自己手中的牌來判斷接下來的動作,而是要經過仔細的思考與權衡。

  這也正是建立麻將人工智慧模型的難點所在:人工智慧很難將獎勵信號與觀察到的信息聯繫起來。

  二、Suphx:兩天訓練150次,熟練掌握5種模式

  在微軟的研究中,研究人員選擇用日本4人麻將(Riichi Mahjong)規則訓練Suphx模型,訓練數據來自Tenhou社區。

  培訓過程耗時兩天,研究人員在44個圖形處理單元上、用150萬個遊戲對模型進行了訓練。

  1、原型:深度卷積神經網路

  深度卷積神經網路(deep convolutional neural networks)曾在圍棋、象棋等遊戲中應用,其強大的表示能力已經得到了驗證。Suphx也選擇深度卷積神經網路作為原型。

  不同於棋類遊戲的是,麻將玩家獲得的信息並不是自然的圖像格式。為此,研究人員設計了一套特徵,將觀察到的信息編碼為深度卷積神經系統能理解的形式。

  研究人員把每位玩家的私有牌編碼成4個頻道。圖示有4行34列,每一行對應一個頻道,每一列對應一種牌。第n個通道中的第m列表示玩家手中有n個m類型的牌。每種牌都可被表示為一個34維向量。

  同時,研究人員還降低了計算複雜程度:規定執行深度搜索時優先找到可能的贏家;Suphx不考慮對手的行為,只專注於尋找可能獲勝的牌面。

  2、訓練方式:有監督學習+分層強化學習,學會5種模式

  訓練過程中,原型先利用人類職業玩家的數據進行有監督學習(supervised learning),然後再進行分層強化學習(self-play reinforcement learning)。研究人員設計應用策略梯度演算法(policy gradient algorithm)來進行分層強化學習。

  Suphx學習了5種模式來處理不同的情況。分別是:棄牌(discard)模式、Riichi模式、Chow模式、Pong模式和Kong模式。

  所有模式都用網路結構表示。棄牌模式對應34張牌,有34個輸出神經元。其他模式僅有兩個輸出神經元,分別對應執行或不執行操作。

  3、GRU網路+Oracle代理+pMCPA

  除上述設定外,微軟團隊還引入了其他幾種技術:

  全局獎勵預測器(GRU網路)。該預測器可以提前預測遊戲的最終結局,提供有效的學習信號,從而使策略網路可執行。

娛樂城

  Oracle代理。一個強大的作弊軟體,可以幫助玩家看到對家的牌面。在Suphx的模型學習過程中,研究人員剔除了Oracle代理的一部分功能,使其變成一個普通代理、只能輸入可見信息。相比標準的深度學習過程,利用Oracle代理進行訓練加速了模型的學習過程。

  參數化的蒙特卡羅策略自適應演算法(pMCPA)。複雜的麻將規則導致了不規則的遊戲樹,阻礙了蒙特卡洛樹搜索技術的應用。為了解決這一問題,研究人員引入了參數化的蒙特卡羅策略自適應演算法(pMCPA)。pMCPA會不斷調整離線學習策略,使其能適應突發的遊戲情節(比如4個玩家丟棄了公共牌)。

  4、勝負評判模型

  Suphx利用了一個基於規則的勝負評判模型。該模型可以檢查其他玩家打出的牌及牌強中的牌能否組成獲勝牌面。假設組成了獲勝牌面,模型就根據以下規則做出判定:

  如果這不是遊戲的最後一輪,宣布這一輪當前玩家贏;

  如果這是遊戲的最後一輪,但是當前玩家的累積總分在四位玩家中最少,則不宣布。反之,宣布當前玩家這一輪贏。

  三、決策過程:按規則摸牌打牌,模型判定勝負

  在遊戲中,需要麻將玩家採取行動的情形有兩種:從牌牆中取牌和打出牌。對於Suphx來說也一樣。

  1、從牌牆中取牌

  從牌牆中抽牌時,如果Suphx抽到的牌可以與其私有牌湊成獲勝牌面,則由勝負評判模型判定是否獲勝。如果獲勝,就結束一輪遊戲。

  如果抽取的牌可以與私有牌湊成Kong的牌面(ClosedKong或AddKong),kong模式將決定湊成哪一種牌面。如果是ClosedKong,關閉Kong操作,退回抽牌步驟;如果是AddKong,其他玩家就可以使用。

  如果湊不成Kong,就進行Riichi步驟。在私有牌可以排列出Riichi牌面的前提下,Riichi模式決定是否聲明這一結果。如果不聲明,直接轉到棄牌步驟;如果聲明,在聲明後轉到棄牌步驟。

  棄牌步驟中,模型打出相應的牌。遊戲繼續進行下去,直到牌牆中的牌被打完。

  2、其他玩家棄牌

  另外一種情況是其他玩家棄牌。如果Suphx可以用棄牌與私有牌組成獲勝牌面,則由評判模型判定。模型判定獲勝,遊戲結束。模型判定失敗,Suphx會嘗試組成Chow、Pong或Kong牌面。如果無法組成這三種牌面,就輪到其他玩家行動。

  四、評估:Suphx成最強麻將AI

  在Tenhou平台上有兩種遊戲室,分別是專家室和鳳凰室。專家室對人工智慧和4段及以上的人類玩家開放;鳳凰室只接受7段以上的人類玩家。根據這項規定,研究人員在專家室對Suphx進行了評估。

  在專家室中,Suphx進行了5760次遊戲,最高記錄是10段(dan),平均成績是8.74段。而根據Tenhou平台統計,在其35萬用戶之中,能達到10段水平的玩家僅有180人。

娛樂城

  在論文中,研究人員稱Suphx在防禦方面「非常強大」。它開發出了自己的玩法,能夠在保證己方私有牌安全的情況下取勝。

  結語:Suphx有巨大應用潛力,或可用於金融預測

  經過學習,Suphx模型能夠掌握麻將遊戲的規則並在遊戲中取得較好成績,這說明了它具有超強的學習能力。

  研究人員認為,這種學習能力可以在許多其他領域發揮作用。比如在企業的運營中,Suphx可以幫助處理普通但是佔用認知的任務,從而解放員工生產力。

  除此以外,該模型或能用於金融預測。論文中寫道:「金融市場預測和邏輯優化等現實世界中的大多數問題都與麻將具有相同的特徵,即規則複雜、信息不完善。」因此,Suphx模型對於現實世界具有「巨大的應用潛力」。

  論文中寫道:「展望未來,我們將向Suphx引進更多新技術,並繼續推進麻將人工智慧和不完全信息博弈遊戲的前沿研究。」

百家樂
arrow
arrow
    文章標籤
    網紅電商
    全站熱搜
    創作者介紹
    創作者 stevensmoray0 的頭像
    stevensmoray0

    玩攻略 - 狼人殺

    stevensmoray0 發表在 痞客邦 留言(0) 人氣()