星際爭霸II的強化學習環(huán)境(3)

本篇是我在CASIA實習結業(yè)報告珍手,另可參閱實習感受垦巴。

項目地址

目錄

簡介

pysc2_maddpg 這個項目是我在中科院自動化所的實習代碼光绕,主要是利用深度強化學習的MADDPG算法得湘,應用到暴雪開源的SC2LE強化學習開發(fā)環(huán)境,來訓練星際爭霸2中一個簡單的對抗環(huán)境绷耍。

功能

利用Open AIMADDPG多智體聯(lián)合算法吐限,訓練了星際爭霸2——sc2le環(huán)境中最基本5v5對抗中的收割者鲜侥。

  • 當動作空間為3褂始,初始態(tài)為攻擊態(tài)時,勝率達到90%描函。
  • 通過訓練崎苗,收割者能夠實現(xiàn)索敵靠近。
  • 能夠基本協(xié)同作戰(zhàn)舀寓,以獲得更高勝率胆数。
  • 考慮血量和己方的攻擊力,選擇作戰(zhàn)攻略(目前還未實現(xiàn))互墓。

項目

Papers

papers是項目的理論支撐必尼,包括項目的參考的論文。

Document

Document是前人文檔券盅。

maddpg

maddpg是代碼的核心部分,包含maddpg算法和pysc2環(huán)境兩個部分膛檀。

  • sc2_env是項目對于pysc2環(huán)境的接口锰镀,包含combined_action.pyrunner.py兩個文件。其中combined_action.py是動作空間文件咖刃,規(guī)定了動作個數泳炉,在在3動作空間會有更好的表現(xiàn)。runner.py將我們的agent接入了pysc2環(huán)境嚎杨。
  • maddpg是項目調用的maddpg算法的部分花鹅,包含trainercommonagent.py文件磕潮。其中trainercommon是MADDPG自帶的部分翠胰,用于規(guī)定算法容贝;agent.py文件是我們自己實現(xiàn)的agent類,具體可以實現(xiàn)一些特殊的動作之景,如選擇單元斤富、選擇控制組、獲得當前狀態(tài)等等锻狗。

csv文件

項目的csv文件是數據記錄文件满力,記錄了實驗的相關數據。

load文件

項目的load文件將會顯示試驗的結果轻纪。

train_maddpg.py

train_maddpg.py訓練總文件刻帚,配置好環(huán)境之后運行的文件潦嘶。

設計思路

游戲采用最簡單的5v5場景,為了讓收割者們通過學習學到好的策略崇众,設計采用condition-strategy-rewards的基本構架掂僵。

condition

為了讓收割者們有更好的表現(xiàn),我們需要讓收割者們上場殺敵顷歌。殺敵的時候就需要考慮血量和攻擊力兩個方面锰蓬。condition暫時還未實現(xiàn),是未來工作的一部分眯漩。

假設我方還有m個幸存的收割者芹扭,血量分別是Hp_1, Hp_2,..., Hp_m,收割者的攻擊力大體上相同赦抖,所以我方此時的攻擊力為D=μm舱卡,μ是常數。同理摹芙,對方還剩下n個幸存者灼狰,血量分別是Hp'_1, Hp_2',..., Hp_m',攻擊力為D'=μn浮禾。那么敵我雙方團滅時間大致為t_1=\frac{\sum{}Hp}{D'}t_2=\frac{\sum{}Hp'}{D}交胚。當我方團滅時間大于對方時候,m\sum{}Hp>n\sum{}Hp'時盈电,攻擊蝴簇。

考慮pysc2內置的reward是當前幀減去前一幀的score,為了獲得更大score匆帚,我們應該讓reaper_i=\arg\min_{reaper_i}(Hp_{reaper_i})號收割者遠離熬词,并派遣其他收割者攻擊。

其余情況均遠離。

Github上可能無法加載condition互拾,condition圖片版點擊此處歪今。

strategy

采取攻擊策略有助于提升勝率,但是盲目攻擊又將帶來損失颜矿,因此我們制定了一套該場景下的策略寄猩。

  • 主動參兵有獎:設置distance,當我方收割者與離之最近的敵方收割者拉近距離時候會有獎勵骑疆;若已經進入戰(zhàn)場田篇,不再通過distance增加reward。
  • 支援隊友有獎:當拉近距離之后箍铭,孤軍奮戰(zhàn)是不好的策略泊柬,因此當我們所有的收割者都執(zhí)行攻擊動作的時候,有一個相應的獎勵诈火。
  • 戰(zhàn)場殺敵有獎:此項由于涉及到score兽赁,是pysc2內設的,因此不予考慮柄瑰。

rewards

rewards在agent.py闸氮,runner.pytrain_maddpg.py中都有涉及,范圍較廣教沾,暫時考慮了兩種rewards,分別是pysc2內置的score帶來的reward
和距離拉近帶來的rew_d译断。

項目結果

代碼截圖

image
image
image
image

對戰(zhàn)截圖

image
image
image
image
image
image
image

結果截圖

  • 在初始化為攻擊狀態(tài)授翻,動作空間為3個動作時,勝率可以達到90%多孙咪。
  • 在初始化為任意狀態(tài)堪唐,動作空間為3個動作時,勝率可以達到50%多翎蹈。
  • 在初始化為任意狀態(tài)淮菠,動作空間為7個動作時,勝率只有20%左右荤堪。
image
image
image

參考

前人工作

【1】星際爭霸2人工智能研究環(huán)境SC2LE初體驗

【2】邁向通用人工智能:星際爭霸2人工智能研究環(huán)境SC2LE完全入門指南

【3】星際爭霸2之環(huán)境配置

【4】星際爭霸2之MADDPG算法

參考網頁

【1】強化學習基本介紹

【2】DNQ介紹

【3】Intel——DNQ

【4】MADDPG論文翻譯

【5】MADDPG官方文檔

【6】MADDPG簡介

【7】DDPG詳解

【8】深度學習A3C

參考代碼

【1】openai/MADDPG

【2】Blizzard/s2client-proto

【3】deepmind/pysc2

【4】fangbrodie/pysc2_maddpg

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末合陵,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子澄阳,更是在濱河造成了極大的恐慌拥知,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件碎赢,死亡現(xiàn)場離奇詭異低剔,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進店門襟齿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來姻锁,“玉大人,你說我怎么就攤上這事猜欺∥菟ぃ” “怎么了?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵替梨,是天一觀的道長钓试。 經常有香客問我,道長副瀑,這世上最難降的妖魔是什么弓熏? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮糠睡,結果婚禮上挽鞠,老公的妹妹穿的比我還像新娘。我一直安慰自己狈孔,他們只是感情好信认,可當我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著均抽,像睡著了一般嫁赏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上油挥,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天潦蝇,我揣著相機與錄音,去河邊找鬼深寥。 笑死攘乒,一個胖子當著我的面吹牛,可吹牛的內容都是我干的惋鹅。 我是一名探鬼主播则酝,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼闰集!你這毒婦竟也來了沽讹?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤返十,失蹤者是張志新(化名)和其女友劉穎妥泉,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體洞坑,經...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡盲链,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片刽沾。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡本慕,死狀恐怖,靈堂內的尸體忽然破棺而出侧漓,到底是詐尸還是另有隱情锅尘,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布布蔗,位于F島的核電站藤违,受9級特大地震影響,放射性物質發(fā)生泄漏纵揍。R本人自食惡果不足惜顿乒,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望泽谨。 院中可真熱鬧璧榄,春花似錦、人聲如沸吧雹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽雄卷。三九已至搓蚪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間龙亲,已是汗流浹背陕凹。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留鳄炉,地道東北人。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓搜骡,卻偏偏與公主長得像拂盯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子记靡,可洞房花燭夜當晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內容

  • 姓名:劉暢 學號:15020199045 轉自:https://zhuanlan.zhihu.com/p/5098...
    薰風初入弦Isono_5c51閱讀 527評論 0 0
  • 背景 游戲是檢驗人工智能系統(tǒng)效果的一種重要手段摸吠,這得益于游戲本身所具有的對抗性和策略性空凸。 當前在大部分的視頻實時策...
    yaohwang閱讀 987評論 0 1
  • 古井文/悠葉 村子里的人又少了一些村口的這座古井仍舊慈祥地端坐著它是村子年邁的通訊兵傳達 歲月蹉跎的消息 我記得...
    悠葉_閱讀 2,472評論 60 58
  • 今年大二了,大一的時候參加了好多的生日聚會寸痢,有師姐的呀洲,有同學的,最多的還是舍友的。 剛開始的時候很開心啊道逗,因為有朋...
    avac閱讀 1,167評論 0 0
  • 萬維鋼的《萬萬沒想到》中提到兵罢,影響學習成績的因素是學習環(huán)境。 原文:“成績好的學生必須在一個不受打擾的環(huán)境中單獨學...
    伊衿閱讀 190評論 0 0