現在,無論你是不是相關從業人員,你一定已經聽過“ChatGPT”的大名了。作為美國人工智能研究實驗室 OpenAI 開發的人工智能模型,ChatGPT 能夠通過人類自然對話方式進行交互,“理解”用戶輸入的文字信息,并根據用戶的指令完成多種不同的任務,例如自動文本生成、自動問答、自動摘要等。
不僅如此,ChatGPT 還能寫出媲美真人作者的專業文章,用清晰詳細的答案解答用戶提出的問題,甚至還能編寫和調試計算機程序。《紐約時報》稱之為“有史以來向公眾發布的最強 AI 聊天機器人”。利用 OpenAI 最新放出的 ChatGPT API,程序設計師只需一行代碼,即可將 AI 嵌入網頁、應用程序中。
而這一切,都有賴于 ChatGPT 背后的大型語言模型——基于轉換器的生成式預訓練模型(Generative Pre-trained Transformer,GPT)。
按照《中國科技術語》副主編,計算語言學家馮志偉教授的說法,“ChatGPT 通過大規模的機器學習,把能獲取到的人類書籍、學術論文、新聞、高質量的各種信息作為學習內容……從語言大數據中獲取豐富的詞匯、語法和語義知識,是深度學習時代自然語言處理研究的最重要的神經網絡模型。”
01
GPT 終于進入游戲領域了
隨著 ChatGPT 被越來越多的開發者應用,現在它還能用于音樂、繪畫、乃至醫學研究等不同領域。當然,除了這些,游戲也是開發者們重點關注的一大領域。
近日,來自哥本哈根信息技術大學(IT University of Copenhagen)的研究者發表了一項新的研究成果,為 ChatGPT 模型在程序化內容生成(Procedural Content Generation,PCG)領域開辟了一個新的方向——利用大型語言模型,將自然語言的描述文字轉換成實際可玩的“超級馬力歐兄弟(Super Mario Bros.)”游戲關卡。
無獨有偶,幾乎在同一天,紐約大學坦登工程學院(NYU Tandon School of Engineering)的研究人員為了驗證此類語言模型在生成非語言類作品方面的潛力,也發布了一篇利用大型語言模型自動生成”推箱子“游戲關卡的論文。
02
GPT 是如何做游戲的?
哥本哈根信息技術大學的研究者以 GPT-2 模型為基礎,利用它預測、生成后續文本的能力,將原版”超級馬力歐兄弟“1 代、2 代中的 37 個關卡作為訓練數據“喂”給 AI,訓練出熟悉超級馬力歐游戲關卡組合特征的“MarioGPT”AI 模型。
在這個模型中,游戲關卡中的各類元素都被編碼為不同的字符,每個元素占據游戲中的一個方格,而關卡內容以一個方格寬的豎列為單位,從左往右組合成完整的關卡。

游戲關卡內各類元素的編碼及對應圖標,圖片來源:參考資料[1]
在生成關卡時,研究者先將一個包含頭 50 列內容的“種子”輸入 AI,由 AI 根據給定的“提示詞(Prompt )”,按照現有內容,從左往右逐列生成各類地形。
提示詞就是普通英語單詞,描述關卡中敵人、管道、磚塊的數量,以及關卡地形的總體高度差變化水平大小等。
給定的提示詞將影響處理過程中各類元素的權重,進而影響最后出現在關卡中的地形特征、管道數量、敵人的分布,最終生成用戶所指定的關卡風格。
不同提示詞下生成的地圖,a. 許多管道、許多敵人、較少方塊,高度差小;b. 較少管道、較少敵人、許多方塊,高度差大;c. 許多管道、一些敵人;d. 沒有管道、沒有敵人、許多方塊。圖片來源:參考資料[1]
最后,為了評估 AI 生成的關卡質量,研究者對生成關卡的準確性和可玩性進行了定量分析。以往用其他深度學習方式生成的關卡,其準確率僅有約 46%,而 MarioGPT 生成內容與輸入的提示詞相符的比例超過 90%。利用第三方AI對關卡可玩性進行評估的結果顯示,88.33% 的關卡都是實際可過關的。

利用研究人員發布的開源 MarioGPT 代碼生成的部分關卡。圖片來源:羅澍
為了讓大家實際體驗 MarioGPT 設計關卡的效果,研究者還在網上發布了一個在線示例,任何人都可以在頁面上直接下命令實時生成關卡,甚至還能試著親手闖關。
研究者發布的示例頁面截圖
與之類似,紐約大學坦登工程學院的研究者也將 282 個人類設計的推箱子關卡(Microban)錄入AI的訓練數據,輔以 43.8 萬個利用深度學習制造的 10x10 關卡(Boxoban),讓 AI 生成與訓練數據完全不同,但確實有解的推箱子游戲關卡。
左邊是生成的新關卡,和右邊的訓練數據略有不同,但也有解。圖片來源:參考資料[2]
03
在 AI 介入前
游戲也有自動生成關卡
對于大部分游戲玩家來說,“自動生成游戲內容”“自動生成游戲關卡”并不是什么陌生的事情。比如 2016 年推出的一款太空探索游戲《無人深空》,就是自動生成游戲內容的最大案例。它使用程序生成算法,動態生成一個據稱可包括數以億計可探索行星的開放式宇宙。游戲中的星系、行星及其生態系統、動植物及其行為模式、人造結構,外星派系及其航天飛船等幾乎所有游戲元素都由程序生成。
但這個生成系統的模式是固定的,不同玩家在離線狀態訪問同一個坐標位置的行星時,系統生成的將是各種屬性都相同的行星。此外,許多批評者認為,游戲中生成的行星雖然外觀貼圖千變萬化,但游戲性同質化嚴重,內容簡陋,除了貼圖外基本千篇一律。
暴雪娛樂 2000 年發售的經典動作角色扮演游戲《暗黑破壞神 2》,在各個關卡的大部分地區內,地圖場景都是隨機生成的,每次讀檔進游戲都會生成一套新的迷宮地圖,在保證每個大章節內部野外區域無縫聯通的情況下,盡可能增加了支路和地下城內部場景的多樣性。之后的續作《暗黑破壞神 3》也很好地繼承了這一特性。
此外,各種沙盒建造類游戲,例如《泰拉瑞亞》《我的世界》等,每個新的“世界”存檔,都會根據隨機“種子”生成包含各類元素的完整游戲世界,等待玩家前去探索。
04
GPT 生成的游戲場景
有何創新之處?
雖然利用 GPT 模型生成隨機場景的人工智能模型目前還處于初級階段,但它已經在程序化內容生成方面展現出自己的無限潛力。
首先,以往的游戲中采用純隨機的方式生成游戲內容,往往不太合理。如早期的《無人深空》中,生成的生物千奇百怪,但零件拼湊的痕跡相當明顯。而使用 GPT 模型生成內容時,借助語言模型對上下文的理解和對關聯性的預測能力,可以生成相對合理、符合一定特征的內容。因此在使用 GPT 生成游戲內容時,可以更加穩定地輸出合理化的場景、生物。
其次,GPT 模型生成場景的豐富度遠超固定隨機算法。通過將新穎性搜索(Novelty Search)算法納入機器學習中,可以有效地讓人工智能在保證合理性的前提下,盡可能創造出更豐富的變化。
同時,比起只能簡單調整出現比例的隨機算法,GPT 能讓用戶以自然語言的方式描述所需的結果,直觀快速地讓最終輸出的內容符合用戶的要求。
最后,GPT 模型可以方便地進行微調,以適用于不同的任務。過去使用深度學習生成內容的生成式對抗網絡(Generative Adversarial Network,GAN)算法,在訓練時需要更大量的學習、迭代,同時需要調整神經網絡學習過程中的各類底層參數。而如今 GPT 模型僅需要相對少量的訓練數據,就能實現對模型的微調與定制,快速生成任務所需的人工智能模型。
05
ChatGPT
程序生成游戲的未來?
以 ChatGPT 為代表的大型語言模型,不但具有強大的處理人類語言數據的能力,還具有高度的通用性,只需經過微調,就能夠勝任許多不同領域的程序化內容生成工作。
不過,在游戲行業,GPT 是否能夠勝任除了程序生成以外的游戲,目前還需觀望。我們知道,游戲作為一種互動、內容的展現形式,其中還夾雜了游戲設計者的創新和巧思。僅靠 GPT 或許并無法實現一款大型的游戲設計,但 MarioGPT 的出現,或多或少還是為游戲行業帶來了新的思路。
我們可以想見,未來不僅在游戲行業,此類人工智能未來還有可能推廣到園林景觀設計、城市區域規劃等與每個人生活息息相關的領域,為我們的生活增光添彩。
參考資料:
[1] https://doi.org/10.48550/arXiv.2302.05981
[2] https://doi.org/10.48550/arXiv.2302.05817
[3] https://www.linkresearcher.com/theses/992e7524-7a45-4f87-8454-f809f307c011
[4] https://mp.weixin.qq.com/s/RCLuUThxw3_4Y_OL9L8Xdg
[5] https://zh.wikipedia.org/wiki/GPT-3
[6] https://zhuanlan.zhihu.com/p/350017443
[7] https://zhuanlan.zhihu.com/p/399295895
[8] https://github.com/shyamsn97/mario-gpt
[9] https://huggingface.co/spaces/multimodalart/mariogpt
[10] https://www.zhihu.com/question/35430956
作者:羅澍
審核:于旸 騰訊玄武實驗室負責人

來源: 科普中國

內容資源由項目單位提供