◆程鑫瑤
深度強化學習算法分析與對比研究
◆程鑫瑤
(沈陽化工大學 計算機科學與技術學院 遼寧 110142)
隨著經濟社會的發(fā)展,人工智能技術也得到了快速發(fā)展,深度強化學習融入了深度學習的感知能力和強化學習的決策能力,特別是在對運動控制問題的處理上,潛力非凡。本文分析了深度強化學習算法,通過分析探尋深度強化學習在現實生產中應用的可能性。
人工智能;深度強化學習;獎勵機制;經驗重放;對比
近些年,因強化學習可以改善序列決策問題,受到了社會各界的廣泛關注。受動物學習試錯法的啟發(fā),強化學習在對智能體訓練中,可以將環(huán)境和智能體融合得到的獎勵值當做反饋信號。一般情況下,強化學習可用馬爾可夫決策過程來表示,是由S.A.R.T.y元素構成,S特指現如今所處的環(huán)境狀態(tài),A特指智能體動作,R特指得到的獎勵值,T代表狀態(tài)轉移的概率,y代表折扣因子。智能體策略π代表狀態(tài)空間到達動作空間的映射。不斷優(yōu)化智能體策略,實現獎勵值的最高是強化學習的核心目標。
在強化學習算法中,一種相對經典的算法即SARSA算法,該算法融合了動態(tài)規(guī)劃算法等特點。通過預測現階段動作長期回報,將收集到的反饋信號上傳到動作中,在獲得反饋獎賞值后,智能體僅向后倒退一步,更新規(guī)則如下所示:
其中學習速率是,折扣因子是,在該算法中,結合當前的狀態(tài),動作值函數智能體就可明確下一個狀態(tài)的動作。結合策略對值函數的依賴程度就可確定SARSA算法的收斂性,因此,對于算性性能質量來說,最關鍵的是設計良好的探索策略。
在強化學習算法中,另一種比較經典的算法即Q-learning算法,這種算法和SARSA算法有所不同。在迭代更新中,Q-learning算法會對所有可能的動作加以考慮,在更新計算中選擇最大的值函數,以下是該算法的更新規(guī)則:
學習速率是∈(0,1],折扣因子是,該算法存在以下優(yōu)點:在不考慮環(huán)境模型的基礎下,對所有可用動作的預期效果加以對比。除此之外,該算法可以不做任何修改,對隨機獎賞和轉換問題進行處理,經理論和驗證:應用Q-learning算法,針對處于有限動作和狀態(tài)空間下的MDP問題,可以結合現實情況為其設計最優(yōu)學習策略。
以下是策略梯度的計算公式:
綜合以上計算公式可以知道:結構簡單是確定性策略梯度計算的主要特點。一般情況下,在應用確定性策略中,會應用Actor-Critic網絡來學習,在該網絡架構中,在近似狀態(tài)動作值函數上,要應用Critic網絡,此網絡學習流程和Q-learning算法非常相似。在進行網絡參數學習上都是參照狀態(tài)動作值函數損失函數來進行。該網絡和傳統(tǒng)的Q-learning算法有所不同的是,在計算損失函數期間,該網絡不再應用貪心策略算法去選擇動作,在選取未來動作時,會應用Actor網絡輸出動作來完成。
常規(guī)的強化學習算法僅會對一些簡單的任務環(huán)境加以處理,而實際上面臨的一些任務流程都比較復雜,尤其是部分動作和狀態(tài)空間是呈連續(xù)狀態(tài),應用傳統(tǒng)的強化學習算法無法解決。隨著對深度強化學習原理研究的深入發(fā)展,社會各界也越來越關注強化學習和深度學習的研究。如今人工智能領域的研究重心已集聚在深度強化學習的算法上,基于值函數近似深度強化學習算法和基于策略梯度深度強化學習算法是現階段深度強化學習算法的兩大類別,其中,前者具有典型代表的是深度 Q網絡算法,后者最具典型代表的是深度確定策略梯度算法,在下文具體贅述:
在現實應用中,一些任務環(huán)境狀態(tài)空間較大或者呈連續(xù)狀態(tài),想要解決這樣的問題,應用直接估計離散狀態(tài)動作值函數較難。通常情況下,要應用參數化連續(xù)函數對估計的狀態(tài)動作值函數加以近似是常見的解決方式,算法如下所示:
參數化連續(xù)函數Q針對一些比較復雜的環(huán)境,在近似上一般用神經網絡來完成,然而強化學習算法在應用Q網絡時,通常是離散的,在現實應用中不夠穩(wěn)定。原因是在強化學習算法期間,這些訓練數據是按順序生成的,具有較強的相關性。針對于此,外界為解決此問題,提出了DQN算法。DQN在網絡輸入數據上,是以原始圖像為例,無需提取,本質上屬于端到端的機器學習算法。該算法結合了Q-learning和深度學習算法,與傳統(tǒng)的Q-learning算法相比,具備以下兩大技術:
其一,在該算法中融合了目標網絡,而應用這種目標網絡可以顯著提高DQN具有的穩(wěn)定性。
其二,在DQN中應用了經驗池結構,這種結構在訓練儲存期間,對應的智能體將過去應用過的數據信息加以記憶。同時,在實際應用階段中,兩個數據元組之間數據弱相關,對以往數據之間強相關性加以改善,能顯著提高系統(tǒng)的收斂性。
在傳統(tǒng)的Q-learning或DQN算法中,在選擇動作并對狀態(tài)動作值函數加以評估期間,會在最大化操作算子中應用相同的值,這也讓實際操作中產生較高的值估計。為此,學者基于算法基礎上提出了一種創(chuàng)新方法,此種方法也被稱作雙重深度Q網絡算法。在應用此種算法中,最大化操作算子被分解為兩大部分。
在解決連續(xù)動作空間存在的問題時,DPG雖然可以發(fā)揮一定的功能,但是一旦面臨的策略網絡流程相對復雜,應用此種方法依舊存在不少問題,比如具有較差的收斂性。所以學者為提高此種算法的性能,提出了深度確定性策略梯度算法。此種算法融合了DQN和DPG算法的優(yōu)勢,可以有效解決策略網絡流程比較復雜的問題。該種算法與DQN算法一樣,應用經驗重放技術來提高數據應用的效率,應用這種技術,可以弱化數據之間具有的相關性,為系統(tǒng)學習提供充足的穩(wěn)定性。在學習期間,一些需要的經驗數據會被存儲到經驗池中,一旦經驗池裝滿數據,會丟棄最老的數據。也會應用隨機抽樣的方式在經驗池中抽取一些小批量的數據,將這些數據用作更新訓練網絡參數。與此同時,目標網絡在DQN算法中應用的主要目的是提高系統(tǒng)具有的穩(wěn)定性,而在深度確定性策略梯度算法中,在更新對應的網絡參數之后,應用目標網絡主要目的是及時更新滑動平均算法。
強化學習屬于一種有核心目的自動化學習決策的一種算法,和現有的監(jiān)督學習算法有所差異,智能體在強化學習期間,并不會收到指令是否正確的命令,在優(yōu)化選擇和行為時,是依靠智能體得到的積極或消極的獎勵來完成。隨著深度學習和強化學習的有機融合,在機器學習領域,深度強化學習已將其具有的作用發(fā)揮出來。學者也積極探究深度強化學習算法的原理以及應用的途徑,2015年,Lillicrap為解決機器人連續(xù)運動空間問題,指出了DDPG算法,在這之后,眾多學者為提高此算法具有的性能,在此基礎之上指出了事后經驗重放的想法,所以陸續(xù)提出了DAPG,PPO等算法。以上算法在不同的仿真環(huán)境之下,可以將機器人運動空間問題有效解決,但是,在解決機器人面臨的問題上,單純依靠一個深度強化學習算法遠遠不夠。究其原因,一些深度強化學習算法在控制對策以及策略形成上是逐步生成的,此種控制策略會推進機器人以較高的效率完成任務。一般情況下,電機會驅動控制機器人關節(jié),如果電機角速度和角度軌跡波動性較大,不夠穩(wěn)定,也會直接影響電機的驅動力矩,甚至會引發(fā)較大的突變值,直接損害機器人的關節(jié)。所以在控制機器人運動時,應和人類運動一樣,平滑地編碼機械臂運動。
通過前文的分析可以看出深度強化學習算法在人工智能領域發(fā)揮著主要的功效,因此,有必要提出完善深度強化學習算法的對策,推進其在人工智能的有效應用。現如今DMPs算法在保障機器人自主學習上依舊存在問題:如何保障參數化運動基元,可以盡可能適應全新的外部環(huán)境,賦予其獨立自主性。在應用運動基元過程中,通過對全局參數加以調整,可以將運動基元轉化到嶄新的任務模塊,這里的全局參數就被稱作元參數。學者在過去的研究中指出,機器模型本身決定這些元參數。例如在乒乓球活動中,當預設擊球位置之后,可以通過逆運動模型得到元參數。但是實際情況是,機器人的模型結構大多處于未知,有關人員想要得到關節(jié)角度信息,無法通過逆運動來獲取。因此,在提高機器人自主學習獨立性上,如何應用現有的深度強化學習算法來計算和獲取至關重要。為了對這種缺陷加以彌補,讓機器人和人類一樣可以執(zhí)行任務,可以應用分層動態(tài)運動基元算法,這也是一種創(chuàng)新的學習算法。在該算法中,有兩個相互關聯(lián)的部分,即元參數以及運動軌跡,這兩個部分可以獨立完成訓練學習,同時二者互相關聯(lián),融合了深度強化學習算法以及運動基元具有的優(yōu)勢,保障機器人和人類一樣,不但具有自主學習能力,同時也能形成平滑的運動軌跡。
總的來說,具備強大的感知能力,甚至在一些場景應用下已超出人類的感知水準是深度學習最大的優(yōu)勢,其具有深度神經網絡提取原始輸入的特點,如今在機器翻譯、語音識別、自動駕駛等多個領域被廣泛研究,并取得了顯著成果。深度強化學習憑借其強大的學習感知能力,融合強化學習的理念和環(huán)境做出交融,來完成決策過程。基于此種背景之下,本文主要研究了深度強化學習的算法,并分析出深度強化學習算法的性能,為人工智能技術的發(fā)展提供必要幫助。
[1]劉全.深度強化學習綜述[J].計算機學報,2018.
[2]Timothy.P.Lillic;rap.Continuous control with deep reinforc;ement learning[J].Machine Learning 2016.
[3]Volodymyr Mnih. Asynchronous Methods for Deep Rein-forc;ement Learning [J].Machine Learning 2016.
[4]董豪.基于深度強化學習的機器人運動控制研究進展[J/OL].控制與決策,2021.
[5]劉建偉.基于值函數和策略梯度的深度強化學習綜述[J].計算機學報,2019.