国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

融合環(huán)境模型與深度強化學習的游戲算法

2018-07-09 07:18:14黃學雨郭勤
江西理工大學學報 2018年3期
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò)深度

黃學雨, 郭勤

(江西理工大學信息工程學院,江西 贛州341000)

0 引 言

近年來,深度學習和強化學習在各自的領(lǐng)域中大放異彩,而隨著計算機相關(guān)硬件性能的提升,深度學習和強化學習在一些領(lǐng)域更是取得了突破性的進展.如在2015年,微軟公司構(gòu)造了一個擁有152層的深度殘差網(wǎng)絡(luò),在ImageNet平臺上取得了歷史最好成績[1];同年谷歌公司的人工智能研究團隊DeepMind在《Nature》發(fā)表文章[2]提出了深度Q網(wǎng)絡(luò)(deep Q-network,DQN),在 Atari游戲平臺上取得了巨大的成果:2016年DeepMind使用最新的計算機圍棋程序[3]AlphaGo與職業(yè)九段棋手Lee Sedol對戰(zhàn),取得了4∶1的成績;2017年DeepMind團隊帶著升級版的圍棋程序與世界排名第一的棋手柯潔對弈,最終以3∶0取得勝利.

而將深度學習與強化學習結(jié)合起來形成的深度強化學習則是當前研究最火熱的領(lǐng)域,它擁有深度學習的感知能力與強化學習的決策能力,在很多領(lǐng)域都有廣泛的應(yīng)用,如汽車自動駕駛[4]、自適應(yīng)規(guī)劃[5]、多 Agent協(xié)作[6]等.

針對深度強化學習在游戲中的應(yīng)用,前人做了廣泛的研究.DeepMind團隊的Wang等提出“Dueling Network”,該網(wǎng)絡(luò)分離了用于表示狀態(tài)的值函數(shù)和與狀態(tài)相關(guān)的動作的優(yōu)勢函數(shù),可以減少對不同動作的估計偏差[7].Hausknecht等提出了基于遞歸神經(jīng)網(wǎng)絡(luò)的架構(gòu)來處理游戲中的部分可觀察性[8].Bowling等為撲克牌游戲提出了使用兩個Regret反復(fù)自我對局的解決方案.也有一些學者正在研究如何使用一個網(wǎng)絡(luò)來玩多個游戲[9-10].以上研究都是針對如何提高深度強化學習在游戲上的得分的,卻忽略了訓練時間過長的問題,因此需要找到一種方法來提高深度強化學習在游戲訓練上的速度.

文中利用先前執(zhí)行任務(wù)時獲得的經(jīng)驗來建立的環(huán)境模型,讓Agent首先從環(huán)境模型中學習,待Agent學習到一定經(jīng)驗后再與環(huán)境進行交互學習;通過該方法Agent可以少犯錯誤,從而加快Agent訓練速度.

1 相關(guān)計算

融合環(huán)境模型與深度強化學習的游戲算法首先讓Agent從環(huán)境模型中學習,然后再與真實環(huán)境進行交互.在交互過程中首先使用深度卷積神經(jīng)網(wǎng)絡(luò)來處理游戲畫面,經(jīng)過處理后輸出狀態(tài)到強化學習中的Q函數(shù),經(jīng)過Q函數(shù)處理后輸出可以得到最大獎賞的動作.經(jīng)過不斷地交互,Agent可以在有限的時間內(nèi)學習到最優(yōu)策略,過程如圖1所示.

1.1 環(huán)境模型

Sutton等提出的Dyna算法是基于環(huán)境模型的最具有代表性的強化學習算法之一[11].該算法考慮到以前Agent執(zhí)行任務(wù)時得到的經(jīng)驗的重要性,將這些任務(wù)經(jīng)驗轉(zhuǎn)化為環(huán)境模型,當Agent再次執(zhí)行相關(guān)任務(wù)時候就可以直接從模型中學習,其結(jié)構(gòu)如圖2所示.

在Agent從模型中學習的過程中,假設(shè)Agent當前狀態(tài)為,下一狀態(tài)為(st,at),從當前狀態(tài)到下一狀態(tài)(st+1,at+1),如果這個狀態(tài)經(jīng)歷過程是已經(jīng)經(jīng)歷過的,那么它只是簡單的返回已經(jīng)儲存的動作.該算法整個步驟如下:

圖1 融合環(huán)境模型與深度強化學習的游戲算法結(jié)構(gòu)

圖2 Dyna算法結(jié)構(gòu)

Step1:初始化 Q(s,a)和 Model(s,a);

Step2:初始化當前狀態(tài)s1;

Step3:由狀態(tài)s1,Q函數(shù)選取下一動作a2;

Step4:執(zhí)行動作a2,得到狀態(tài)s2以及獎賞r;

Step5:應(yīng)用一次Q學習,得到一組狀態(tài)-動作-獎賞對(s1,r1,a2),其中 Q 學習為:

Step6:將狀態(tài)-動作-獎賞對(s1,r1,a1)輸入到模型中;

Step7:重復(fù)上述步驟3到步驟6一定次數(shù),得到環(huán)境模型;

Step8:將環(huán)境模型輸入到Agent中;

其中st代表t時刻的狀態(tài),根據(jù)st,Q產(chǎn)生動作at,執(zhí)行該動作并于環(huán)境交互,得到下一步的狀態(tài)st+1以及獎賞r,根據(jù)以上參數(shù)應(yīng)用一次Q-學習,并將得到的結(jié)果輸入到環(huán)境模型中,重復(fù)上述過程一定次數(shù)后就可以得到相應(yīng)的環(huán)境模型.

1.2 環(huán)境感知

對于強化學習來說,直接從高維度的輸入介質(zhì)如視頻、圖像等學習控制策略是一項巨大的挑戰(zhàn).大多數(shù)的成功的強化學習應(yīng)用都是依賴于線性值函數(shù)與手工制定的特征標簽,但是這些應(yīng)用的性能嚴重依賴于特征標簽的質(zhì)量.

近年來,深度學習在計算機視覺領(lǐng)域取得了較大的突破,這使得直接從原始高維度輸入介質(zhì)中學習到高級特征成為了可能.這些方法除了使用小波分解技術(shù)完成圖像識別外[12],大都是使用神經(jīng)網(wǎng)絡(luò)完成的,如卷積神經(jīng)網(wǎng)絡(luò)、多層感知器、受限波爾曼機和遞歸神經(jīng)網(wǎng)絡(luò).因為卷積神經(jīng)網(wǎng)絡(luò)在處理圖像上的優(yōu)勢,所以文中使用該網(wǎng)絡(luò)來感知Agent在游戲中的環(huán)境[13].該網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示.

該卷積神經(jīng)網(wǎng)絡(luò)由5層組成,第一層為輸入層,輸入介質(zhì)為游戲畫面;第二層為第一個隱藏層,由16個8×8的帶有4個滑動窗口的過濾器組成;第三層為第二個隱藏層,由32個4×4的帶有2個滑動窗口的過濾器組成;第四層為第一個全連接層組成,它帶有256個矯正單元;第五層為輸出層,該層為全連接線性層,用于輸出Agent的有效的動作.

文中的實驗在Atari游戲平臺[14]上進行,該平臺每幀畫面具有210×160的寬高(像素),且每個畫面有128中顏色,具有很高的維度,如果直接處理需要很大的計算量,所以采用將彩色轉(zhuǎn)化為灰度,最終轉(zhuǎn)化為84×84寬高的畫面,輸入到卷積神經(jīng)網(wǎng)絡(luò)中.

1.3 決策控制

神經(jīng)網(wǎng)絡(luò)雖然可以感知環(huán)境,但是對于策略控制卻無能為力,文中使用強化學習中的Q學習[15-16]來解決策略控制問題.

定義Agent所處環(huán)境為ε,在每一步中Agent選擇的動作為 at,且 at∈A={1,2,…,k};在時刻 t,Agent環(huán)境為 xt,xt∈Rd;Agent與環(huán)境交互得到的獎賞為rt.因為Agent執(zhí)行任務(wù)的環(huán)境是部分可觀察的,所以定義一個動作-狀態(tài)序列 st=x1,a1,x2,…,at-1用于儲存Agent經(jīng)歷的狀態(tài)與執(zhí)行過的動作,Agent從這個序列中學習策略.又因為這個序列中的每一個動作-狀態(tài)對都是明確的,所以就得到了一個數(shù)量大,但是有限的馬爾科夫決策過程,對這個馬爾科夫決策過程應(yīng)用如下公式:

其中 Li(θi)為損失函數(shù),yi為目標函數(shù),在每一次迭代 i中,使用 Li(θi)來求得最優(yōu)的動作-狀態(tài)對;將得到的動作-狀態(tài)對儲存到經(jīng)驗回放序列中,使用Random Minibatch算法來優(yōu)化經(jīng)驗回放序列中的樣本.當Agent再與環(huán)境交互時候就可以從經(jīng)驗回放序列中取得相應(yīng)的策略.

2 融合環(huán)境模型與深度強化學習的游戲算法流程

圖3 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

環(huán)境模型是由Agent以前執(zhí)行相關(guān)任務(wù)時獲得的經(jīng)驗建立的,讓Agent從環(huán)境模型中學習而不是從新開始,可以讓Agent在與環(huán)境交互過程中少犯錯誤,從而加快學習速度.受環(huán)境模型的啟發(fā),文中提出了融合環(huán)境模型與深度強化學習的游戲算法.如圖4所示,首先讓Agent從環(huán)境模型中學習,等Agent學習到一定策略后,再與真實環(huán)境進行交互,使用卷積神經(jīng)網(wǎng)絡(luò)來感知周圍環(huán)境,再通過Q學習求取最優(yōu)策略.使用Avatar游戲平臺的游戲驗證算法的有效性.

圖4 融合環(huán)境模型與深度強化學習的游戲算法流程

具體步驟如下:

Step1:初始化Agent

Step2:Agent從環(huán)境模型中學習

Step3:Agent與真實環(huán)境交互

Step4:使用卷積神經(jīng)網(wǎng)絡(luò)感知環(huán)境

Step5:使用Q學習求取策略

Step6:重復(fù) step3到 step5

Step7:比較學習時間

3 實驗設(shè)計與結(jié)果

為了驗證文中提出的算法的有效性,采用The Arcade Environment(ALE)平臺進行實驗.在ALE平臺上采用兩款A(yù)tari 2600游戲,Atari 2600游戲是專門設(shè)計用來測試強化學習算法的性能的,它有兩個特點:

1)Agent的輸入為高維度的視頻畫面(210×160 RGB 60 Hz).

2)游戲中的任務(wù)設(shè)計對于人類玩家是具有難度的.

為了提高實驗結(jié)果的準確性,每個游戲中的算法參數(shù)設(shè)置為相同值,如表1所示.

表1 游戲算法中參數(shù)設(shè)置

3.1 實驗一

本次實驗使用一款名為MsPacman(吃豆子女士)的Atari 2600游戲,該游戲的場景如圖5所示.初始畫面有一個吃豆子的Agent,它有3條命,在行走的路上吃豆子,一個豆子計分10分,大的豆子計分100分,開始時候會有2個骷顱人,隨后會變化成4個,初始時候是藍色,Agent碰到它們不會死亡,且它們會變成螃蟹,Agent如果吃到它們計分200分,如果Agent吃到櫻桃計分100分,待骷顱人變成其他色后,Agent再與它們接觸都會死亡,Agent繼續(xù)使用下一條生命吃豆子,隨后規(guī)則與上面一致.如果Agent吃完了所有豆子游戲結(jié)束,或者Agent用完了所有的生命游戲也結(jié)束.

圖5 MsPacman游戲場景

在參數(shù)設(shè)置一致,游戲環(huán)境一致的條件下,使用原算法的Agent與改進后算法的Agent同時進行游戲交互,交互時間為2小時,得到實驗結(jié)果如圖6所示.

圖6 不同算法在MsPacman游戲中結(jié)果

在2小時內(nèi)Agent共進行了12500次的episode,以100為一組求取其得分總和的平均值,得到如圖6所示結(jié)果,從實驗結(jié)果可以看到在0到70階段改進的算法Agent得分是比原算法Agent高的,這是因為改進的算法Agent從環(huán)境模型中提早學習到了策略;在80以后兩者的得分是相近的,這是因為兩者都已經(jīng)學習到了相應(yīng)的策略;還可以看到當x軸值為40到48之間的時候改進的算法Agent就已經(jīng)呈現(xiàn)出穩(wěn)定的狀態(tài),而原算法的Agent在72到80之間的時候才呈現(xiàn)出穩(wěn)定的狀態(tài);由此實驗結(jié)果可以說明改進后的算法可以有效提高Agent的訓練速度.

3.2 實驗二

本組實驗使用一款名為Qbert(Q伯特)的Atari 2600游戲,該游戲的場景如圖7所示,初始畫面里有21個可供Qbert點亮的區(qū)域、Qbert是一個有著橘紅色大鼻子的Agent,它每點亮一個區(qū)域就可以得到25分,還有兩個踩上去可以提升Agent高度的格子,格子被踩過之后就會消失,還有一個Agent需要避免接觸的壞人,Agent跳出界面或者與壞人接觸就會損失掉一條命,它共有3條命,當它把區(qū)域都點亮后就會進入到下一輪游戲,如果3條生命都用完了,游戲結(jié)束.

在參數(shù)設(shè)置一致,游戲環(huán)境一致的條件下,使用原算法的Agent與改進后算法的Agent同時進行游戲交互,交互時間為2小時,得到實驗結(jié)果如圖8所示.

圖7 Qbert游戲場景

圖8 不同算法在Qbert游戲中結(jié)果

在2小時內(nèi)Agent共進行了12500次的episode,以100為一組求取其得分總和的平均值,得到如圖8所示的結(jié)果,從實驗結(jié)果可以看到在0到90階段改進的算法Agent得分是比原算法Agent高的,這是因為改進的算法Agent從環(huán)境模型中提早學習到了策略;在90以后兩者的得分是相近的,這是因為兩者都已經(jīng)學習到了相應(yīng)的策略;還可以看到當x軸值為24時候改進的算法Agent開始呈現(xiàn)出穩(wěn)定的狀態(tài),x軸值為40到48之間的時候改進的算法Agent就已經(jīng)呈現(xiàn)出穩(wěn)定的狀態(tài),后面一直處于穩(wěn)定的狀態(tài),而原算法的Agent在x軸值為90以后的時候才穩(wěn)定;由此實驗結(jié)果可以說明改進后的算法在這個游戲中可以有效提高Agent的訓練速度.

4 結(jié) 論

文章通過在深度強化學習游戲算法的基礎(chǔ)上加入環(huán)境模型來提高Agent的訓練速度.其中環(huán)境模型是利用以前與環(huán)境進行交互得到的經(jīng)驗來建立的,兩次實驗的結(jié)果也證明了利用環(huán)境模型可以加速Agent學習速度.

環(huán)境模型可以加快學習速度,而完美的環(huán)境模型也可以使Agent學習到最優(yōu)策略,但是如果過于依賴環(huán)境模型就會失去與環(huán)境進行交互,并通過不斷試錯來學習策略的意義了.在強化學習中蒙特卡羅方法與樹搜索結(jié)合形成的蒙特卡羅樹搜索 ,能夠在執(zhí)行一個策略的同時去評測另一個策略的好壞,對于提高游戲得分有一定的幫助,在今后的研究中,將會在該算法上做進一步的研究.

[1]He K M,Zhang X,Ren S,et al.Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Las Vegas:IEEE,2016:770-778.

[2]Mnih V,Kavukcuoglu K,Silver D,et al.Human-level control through deep reinforcement learning[J].Nature,2015,518(7540):529-533.

[3]Silver D,Huang A,Maddison C,et al.Mastering the game of Go with deep neural networks and tree search[J].Nature,2016,529(7587):484-489.

[4]楊帆.無人駕駛汽車的發(fā)展現(xiàn)狀和展望 [J].上海汽車,2014(3):35-40.

[5]蘇世雄,齊金平.基于強化學習的自適應(yīng)在線規(guī)劃的應(yīng)用研究[J].測控技術(shù), 2016,35(7):124-127.

[6]張文旭,馬磊,王曉東.基于事件驅(qū)動的多Agent強化學習研究[J].智能系統(tǒng)學報,2017,12(1):82-87.

[7]Wang Z Y,Schaul T,Hessel M,et al.Dueling network architectures for deep reinforcement learning[C]//Proceedings of the 32nd International Conference on Machine Learning.Lille,France:ICML,2016.

[8]Hausknecht M,Stone P.Deep recurrent q-learning for partially observable MDPS[C]//Proceedings of the 2015 AAAI Fall Symposium Series.The Westin Arlington Gateway,Arlington,Virginia:AIAA,2015.

[9]Rusu A A,Colmenarejo S G,Gulcehre C,et al.Policy distillation[C]//Proceedings of the 2016 International Conference on Learning Representations.Caribe Hilton,San Juan,Puerto Rico:ICLR,2016.

[10]Parisotto E,Ba J L,Salakhutdinov R.Actor-mimic:Deep multitask and transfer reinforcement learning[C]//Proceedings of the 2016 International Conference on Learning Representations.Caribe Hilton,San Juan,Puerto Rico:ICLR,2016.

[11]Lin L J.Self-improving reactive agents based on reinforcement learning,planning and teaching[J].Machine learning,1992,8(3/4):293-321.

[12]王俊嶺,彭雯.基于Daubechies小波的人臉識別算法[J].江西理工大學學報,2017,38(3):81-85.

[13]Krizhevsky A,Sutskever I,Hinton G E.Image net classification with deep convolutional neural networks[C]//Advances in Neural Information Processing Systems.Lake Tahoe:MIT Press,2012:1097-1105.

[14]Bellemare M G,Naddaf Y,Veness J,et al.The arcade learning environment:An evaluation platform for general agents[J].J.Artif.Intell.Res.(JAIR),2013(47):253-279.

[15]Littman M L.Reinforcement learning improves behaviour from evaluative feedback[J].Nature,2015,521(7553):445-451.

[16]Bowling M,Burch N,Johanson M,et al.Heads-up limit hold'em poker is solved[J].Science,2015,347(6218):145-149.

猜你喜歡
卷積神經(jīng)網(wǎng)絡(luò)深度
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
深度理解一元一次方程
神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
電子制作(2019年19期)2019-11-23 08:42:00
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
深度觀察
深度觀察
深度觀察
基于傅里葉域卷積表示的目標跟蹤算法
基于神經(jīng)網(wǎng)絡(luò)的拉矯機控制模型建立
重型機械(2016年1期)2016-03-01 03:42:04
復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
稷山县| 大厂| 延庆县| 商都县| 西昌市| 博白县| 盐城市| 金昌市| 临清市| 红河县| 汉源县| 陇西县| 逊克县| 渝中区| 榆中县| 边坝县| 秦皇岛市| 来宾市| 晋宁县| 莱芜市| 崇明县| 辽源市| 张家港市| 台州市| 安泽县| 浦城县| 曲阳县| 潼关县| 泌阳县| 卢湾区| 东宁县| 丰台区| 宁明县| 江城| 唐河县| 麻江县| 梁平县| 玉林市| 武冈市| 保康县| 寻乌县|