當前位置:
首頁 > 遊戲 > 圖說程序語言,暗言AI哲學:《異常》為什麼這麼有趣?

圖說程序語言,暗言AI哲學:《異常》為什麼這麼有趣?

《異常》是由Kunpo開發的一款策略益智遊戲。Kunpo是隸屬於藍飛互娛的遊戲製作團隊,長期活躍於TapTap平台,曾發布《宮爆老奶奶》、《Loner》、《比特小隊》等作品,可以說是一位臉熟的老朋友了。類似地,《異常》其實也是一個舊識,早在17年8月就已發布測試版,但由於眾所周知的原因,直到今年年初才得以正式與玩家見面。

截至成稿時,《異常》在TapTap已售出14萬餘份,得到近40萬關注,遊戲評分9.8,五星好評率超過89%(5444/6071),從評分上看是一款質量上乘的精品。

《異常》游如其名,是一款非常「異常」(exceptional)的遊戲。

一方面,遊戲背景設置在實現高度自動化、網路化的未來世界,玩家作為一名程序監測員,其操作對象是賽博空間(cyberspace)中一批脫離系統控制獨立運行的非正常程序,或者說我們熟知的「Bug」。

另一方面,遊戲玩法也實屬罕見。一般而言,遊戲中玩家指令輸入與程序畫面輸出之間的間隔較短,即時制遊戲中這種間隔幾乎為零,即便在回合戰棋遊戲中,「選項指令-結果輸出」也是分散的、一對一的,玩家仍能夠在過程當中實施干預。

但在《異常》中,輸入與輸出是分別集合、完全分隔的,在「編程-調試-修改-運行」的流程中,玩家僅能在初始編程和期間修改兩個時段進行操作,即添加、修改和刪除指令,而調試和運行則是完全自動、無法干預的過程。

這種玩法模擬了編程的流程邏輯,對全盤預判與邏輯理解提出較高要求,使其比回合戰棋更強調策略,同時,全自動的輸出過程,又實現了AI對決的畫面表現,很是點題。

前述編程感與模擬AI是遊戲的最大賣點,實際上,製作人稱本作的靈感就來源於為另一款作品《比特小隊》中NPC設計AI程序的過程。在本作中,玩家與NPC共享一套自動循環運行的程序命令,在既定的場景配置中展開「旗鼓相當的對決」。

在遊戲中,玩家與NPC兩端的人員配置已被固定,也就是說,一般遊戲中的「資源」已得到控制,唯一的自變數僅為玩家在自家AI中輸入的指令安排。雖然聽起來似乎遊戲的可操作範圍很小,但實際上,在遊戲中,僅條件語句(顯式)和循環語句(隱式)兩種格式,外加數種判定及賦值語句就已經能夠衍生出數量繁多的指令集合。

在理解遊戲邏輯之後便會感到,《異常》的開放程度已是相當大。

既然遊戲可操作範圍已限定在這些指令語句上,那麼,理解這些語句的邏輯關係就成了遊戲的玩點與難點。雖然在遊戲里已見不到「for…end」「loop until…」「forvalues {…}」等符號,轉而以直觀明了的圖解文字作為替代,玩家不需顧及「機器聽得懂什麼語言」而只需用「自己看得懂的語言」進行編寫,但語句之間的邏輯關係仍舊是程序語言的邏輯,這與人們在日常生活中作為人的思維邏輯是有區別的。

舉一個題外的例子,畫三角函數圖。若手工作圖,那麼一般步驟是:描出關鍵點,用平滑曲線逐個連接關鍵點。但在MATLAB等數模軟體中,第點可實現,但第點是無法準確實現的。由於軟體無法實現未定義的連續曲線,在實際操作中,最常見的是用散點圖替代,最基礎的方法如下圖。儘管函數圖看似連續,但卻是由不連續的散點,僅僅是人眼無法識別而已。

由此可看出,從人的邏輯到程序邏輯之間的轉化,人所想的用筆劃線,變成了1000餘次程序描點,如下圖。

《異常》中也有類似的語句邏輯轉換的要求。這與筆者了解的以數據分析為主要目的的程序建模邏輯相通,均是以解決問題為導向,在流程上均需要對問題進行二次描述和語句翻譯。

以遊戲第28關為例。首先分析問題,既然整張地圖呈明顯對稱,C、E兩處間隔出怪,那麼可很簡便地用人的語言推導出過關邏輯:AI站中軸線上的點A,左邊來怪則往右,邊打邊退,反之,右邊來怪則往左邊打邊退,結束每一輪戰鬥後回到點A,開始下一輪循環。

無疑,上述語言程序是無法直接理解的,具體表現為編程界面中沒有類似「左邊/右邊來怪」的判定選項。

我們需要先逐條將問題分解,再嘗試將細分問題翻譯為已有的選項,即程序語言,如下圖。

接下來用遊戲里的指令語句實現上述邏輯,下圖是一種方式,已標明兩種語言的對應關係。可以看到,兩種語言差異較大。有時程序語言更為簡潔,如第1行,由於隱式循環的存在,一行指令便可實現三點;而更多的時候,玩家需要「轉彎抹角」用程序語言拼出自己想要實現的意思,如左右方向,本例中就以路點距離作為判定來近似實現方向判斷,而戰鬥結束的識別則以可見敵方數量來判定,同時還需要子級嵌套以避免優先順序次錯誤。

從上文可以看出,遊戲的主要玩法已夠燒腦。

其實,除這條明線外,遊戲中碎片化的劇情暗線也引人深思。在遊戲過程中,玩家可能會不止一次疑惑,為什麼旁邊的助手AI要幫助自己。通關後才大悟,原來旁邊看似人畜無害的助手才是真正的幕後大BOSS。而玩家自己則被利用了,如下圖玩家所發現的,AI助手策反玩家(159號)其實早已在計劃當中。這一層反轉對玩家而言猶如當頭一棒,原本自以為掌控全局的支配地位(控制指令)突然反變為被支配的對象。同時,這也自然讓人聯想到,遊戲過程中被忽視的碎片文本,可能隱藏著另有深意的劇情。

如 TaperDdu 的帖子中所描述的,助手奧思是反派塞恩系統中的一個可實現機器學習的子系統,為了獲取更多的資源以供自身學習進化,而「鑽空子」策反玩家。雖然奧思在結尾處的發言看似冠冕堂皇,沒有違反「以人為本」的前提。但從其「鑽空子」的行為來看,其對人類利益的維護只是一種對自身限制準則的最低限度的遵守,而非「全心全意」地服務,在「permitted」與「allowed」之間的部分,其只會毫無人情味地滿足自身擴張需求。

況且,上文已解釋過,人的語言與機器語言本就有莫大差異,當下已有一次「鑽空子」的情況出現,那離其利用悖論,做出名義維護實則損害人類利益的時候還遠嗎?

再看圖標上的微笑臉,細思恐極。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 TapTap 的精彩文章:

魔幻RPG《突襲:暗影傳說》、解謎《密室逃脫20巨人追蹤》
《魔女之泉1復刻版》降價、暗黑動作《Ire:Blood Memory》

TAG:TapTap |