好家伙!B站竟然開源了一個(gè)Dota2 AI項(xiàng)目:影魔SOLO智能體
為什么 Dota 里大家喜歡殺影魔?
Dota 2 的人工智能擊敗人類,是 AI 界的一次里程碑事件。2019 年 4 月,OpenAI 提出的 AI 智能體「OpenAI Five」擊敗 OG 成為了第一個(gè)在電競游戲中擊敗世界冠軍的 AI 系統(tǒng)。
作為一款 MOBA(多人在線戰(zhàn)術(shù)競技)游戲,Dota 2 不僅人氣很高,還對人工智能,特別是強(qiáng)化學(xué)習(xí)系統(tǒng)的研究提出了很多挑戰(zhàn),例如游戲時(shí)間跨度長,信息不完善及高度復(fù)雜,連續(xù)的狀態(tài)動作空間。所有這些問題,對于功能完善的 AI 系統(tǒng)在真實(shí)世界中的應(yīng)用至關(guān)重要。
既然游戲是訓(xùn)練 AI 的好環(huán)境,那自然就會有不少科技公司前來嘗試,除了 OpenAI 以外,這些年里我們還看到過很多的游戲 AI 項(xiàng)目,如 DeepMind 打星際爭霸、騰訊王者榮耀的「絕悟」、快手的斗地主 AI。
不過兩天前剛剛開源的一個(gè) AI 項(xiàng)目是我們?nèi)f萬沒想到的,小破站 Bilibili 竟然開源了一個(gè)強(qiáng)化學(xué)習(xí)訓(xùn)練的 Dota2 影魔 solo 智能體。
B 站這個(gè)項(xiàng)目叫 Last Order Dota2 Solo AI,雖然并非原創(chuàng)性的游戲 AI 研究,且當(dāng)前只有 65 個(gè) star 量,但我們還是想感嘆一句:出息了啊!

項(xiàng)目鏈接:https://github.com/bilibili/LastOrder-Dota2
Last Order Dota2 Solo AI
看介紹,該開源庫由 B 站的團(tuán)隊(duì)成員 Terry-Mao、LiuShuai 參考 OpenAI Five 的研究貢獻(xiàn)。
該庫提供一個(gè)由強(qiáng)化學(xué)習(xí)訓(xùn)練出的 Dota2 影魔 solo 智能體,可以通過自我對戰(zhàn)的訓(xùn)練方式訓(xùn)練,從隨機(jī)動作開始學(xué)習(xí)復(fù)雜的策略。而玩家也可以通過執(zhí)行該項(xiàng)目與智能體進(jìn)行影魔 solo 對戰(zhàn)。
玩過 Dota2 的玩家都知道,影魔 solo 有一定的限制,如不能使用眼淚、魔瓶。所以在和該智能體對戰(zhàn)時(shí)也有以下限制:
- 物品方面不可以出凝魂之露,靈魂之戒,魔瓶,真眼。
- 不可以吃符,或使用魔瓶吃符。不可以使用塔防。
- 一局比賽最⻓時(shí)限為 10 分鐘,超時(shí)將自動殺死重開房間。
- 游戲不能暫停。
在項(xiàng)目中,開發(fā)成員還詳細(xì)介紹了執(zhí)行該項(xiàng)目的環(huán)境需求,看起來并不復(fù)雜:需要安裝 python3.8、依賴庫后,在管理員模式運(yùn)行的 powershell 進(jìn)入項(xiàng)目根目錄。執(zhí)行下面命令即可啟動游戲:
- python .\play_with_human_local.py
后面根據(jù)項(xiàng)目介紹中的流程創(chuàng)建比賽房間就可以與 AI solo。

在項(xiàng)目最后,開發(fā)團(tuán)隊(duì)也列出了項(xiàng)目的參考資料,包括 OpenAI 的 Dota2 AI 研究《Dota 2 with Large Scale Deep Reinforcement Learning》、一個(gè)開源項(xiàng)目 DotaService 以及 Valve 開發(fā)者社區(qū)的 Dota Bot 腳本,感興趣的讀者可以自行查看。





























