為何我們會想寫這篇文章?
大家看到了這篇文章:AI人工智慧又贏了!微軟Suphx突破日本麻將最高紀錄,打敗人類頂尖玩家後,可能會聯想到 Google 開發的圍棋人工智慧 Alpha Go 於兩年前,以近乎完美的姿態打敗了人類選手,李世乭和柯潔的新聞。根據微軟所說:研發麻將 AI 人工智慧的技術門檻,可說是比研發圍棋、德州撲克等棋牌、博弈類的遊戲難多了!這是真的嗎?這篇取材自微軟亞洲研究院的新聞稿,將跟有這疑惑的大家解釋解釋,為何同樣是人工智慧,研發 AI 麻將技術門檻就是比 Alpha Go 等棋類 AI 還高得多呢?
微軟:麻將變動度,更勝圍棋德州撲克等
微軟在近期的新聞稿上提到了開發麻將 AI 人工智慧「Sphix」難度與象棋、圍棋、德州撲克等棋牌類遊戲相比,麻將具有更復雜的隱藏信息和更高的難度。總言而之,麻將 AI 人工智慧主要面臨以下挑戰:巨大的狀態空間:
和只有 52 張牌的德州撲克相比,136 張麻將牌的排列組合擁有更多組合的可能性。同時,麻將中同一個玩家在兩次出牌之間,夾雜了其他 3 個玩家的出牌和自己摸的底牌,可能出現的不同局面數目非常巨大。值得一提的是,在麻將中,4 位玩家的出牌順序是不固定的,任意一位玩家的「吃」、「碰」、「槓」都可能改變出牌順序,導致遊戲順序的不規則和莫大的變化。這些變動使麻將真的很難直接利用 AlphaGo 等棋盤遊戲 人工智慧 常用的蒙特卡洛樹搜索算法。非完美資訊遊戲:
賽局理論中,資訊集合是指對於特定的參與者,建立於其所觀察到的所有賽局中可能發生的行動的集合。如果賽局是完美資訊的,每個資訊集合只能有一個參與者,並顯示賽局所處的階段。否則,有的參與者可能就不知道賽局的狀態,以及自己周圍的形勢。象棋和圍棋屬於完美資訊遊戲,玩家可以看到棋局中對方玩家的落子。麻將則存在大量的隱藏資訊。整體來說,麻將中每個玩家可以有 13 張手牌,另外還有 84 張底牌。對於一個玩家而言,他只知道自己手裏的 13 張牌和之前已經打出來的牌,卻無法知道別人的手牌和沒有翻出來的底牌,所以最多可以有超過 120 張未知的牌。這麽多的未知資訊,使得麻將的難度非常高。一方面,由於隨機性太大,玩家即便在出牌決策中估計對方玩家手牌、底牌等不可見的牌,也無法避免不確定性對於遊戲走向的影響。這將對 AI人工智慧 模型的訓練帶來很大挑戰:AI人工智慧 模型很難發現已知牌面信息和最優打法之間的邏輯鏈路。另一方面,豐富的隱藏信息導致遊戲樹的寬度非常大,對樹搜索算法的可行性提出了進一步的挑戰。
復雜的獎勵機制:
日本麻將的規則是「無役不能和牌」,多樣又特殊的牌面,構成了復雜的「役種」和番數計算規則。一輪遊戲共包含 8 局,單局得分與役種和番數相關,最後根據 8 局的得分總和進行排名,來形成最終影響段位的點數獎懲。因此有時麻將高手會策略性輸牌,例如,在第 8 輪時如果 A 玩家已經大比分領先第二名,他可能會故意放炮給排名第四的玩家,來防止總分被排名第二的玩家反超,保證自己在最終結算時獲得最大的點數獎勵。這為構建高超的麻將 AI人工智慧 策略帶來了額外的挑戰,AI人工智慧 需要審時度勢,把握進攻與防守的時機。「面對麻將遊戲的巨大挑戰,AI人工智慧 僅靠強大的計算能力,沒辦法從根本上解決問題,而需要更強的直覺、預測、推理和模糊決策能力」微軟亞洲研究院副院長、機器學習領域負責人劉鐵巖博士表示。
為了讓 Suphx 能高效地學習麻將的複雜狀態和策略,微軟亞洲研究院特別針對麻將的特點與困難度,嘗試了一系列的「基於強化學習」的新式演算法,希望透過技術面的創新,讓 Suphx 具備強大有效的「狀態表達」和「策略學習」能力,同時具有「大局意識」,能從遊戲的全局角度做出策略性的判斷,確保統計意義上總分的領先地位。
相關文章
人工智慧爭輸贏!麻將AI與圍棋AI大PK(下)
真人冒充人工智慧,幕後藏鏡人是誰!?(上)
真人冒充人工智慧,幕後藏鏡人是誰!?(下)
暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~
Python基礎概念知識站:變數
還不知java這名字怎麼來的?快看這些程式語言的名字由來!
超強!這個工程師用Python畫皮卡丘練手感