【論文講義】正交策略梯度法和自動駕駛應用

【講義】正交策略梯度法和自動駕駛應用

本文是論文Orthogonal Policy Gradient and Autonomous Driving Application的講解講義,本文中我們從一個關於獎勵函數的回報梯度定理出發,證明了"當策略梯度向量和Q-Value向量正交時,獎勵函數值爲極大值",由此得出了一種實時逼近最優值的方法,並實現了這種方法且應用在了智能自動駕駛上.

在這裏插入圖片描述


關於獎勵函數的回報梯度的定理

在此先證這個定理:在MDP(Markov Decision Process)中: 平均回報函數ρ\rho和策略π\pi及Q函數QπQ^{\pi}滿足:

ρθ=adπ(s)aπ(s,a)θQπ(s,a)\frac{\partial \rho}{\partial \theta} = \sum_{a}d^\pi(s) \sum_a \frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a)

證明:

累計獎勵可寫作:Vπ(s)=aπ(s,a)Qπ(s,a)V^{\pi}(s) = \sum_a \pi(s,a) Q^\pi(s,a)

可得:
Vπ(s)θ=θaπ(s,a)Qπ(s,a)\frac{\partial V^{\pi}(s)}{\partial \theta} =\frac{\partial}{\partial \theta} \sum_a \pi(s,a) Q^\pi(s,a)
=a(π(s,a)θQπ(s,a)+π(s,a)Qπ(s,a)θ) =\sum_a (\frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) + \pi(s,a)\frac{\partial Q^\pi(s,a)}{\partial \theta} )
=a(π(s,a)θQπ(s,a)+π(s,a)θ(Rasρ(π)+sPssaVπ(s)))=\sum_a (\frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) + \pi(s,a)\frac{\partial }{\partial \theta}(R^s_a-\rho(\pi)+\sum_{s'}P^a_{ss'} V^\pi(s')) )
=a(π(s,a)θQπ(s,a)+π(s,a)(ρθ+sPssaVπ(s)θ))=\sum_a (\frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) + \pi(s,a)(-\frac{\partial \rho}{\partial \theta}+\sum_{s'}P^a_{ss'} \frac{\partial V^\pi(s')}{\partial \theta}) )

dπd^\pi項累加可得:
sdπ(s)ρθ=sdπ(s)aπ(s,a)θQπ(s,a)+sdπ(s)aπ(s,a)sPssaVπ(s)θ)sdπ(s)Vπ(s)θ\sum_s d^\pi(s) \frac{\partial \rho}{\partial \theta} = \sum_s d^\pi(s) \sum_a \frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) + \sum_s d^\pi(s) \sum_a \pi(s,a) \sum_{s'}P^a_{ss'} \frac{\partial V^\pi(s')}{\partial \theta}) - \sum_s d^\pi(s) \frac{\partial V^{\pi}(s)}{\partial \theta}

再由dπd^\pi的恆定性我們可得:
sdπ(s)ρθ=sdπ(s)aπ(s,a)θQπ(s,a)+sSdπ(s)Vπ(s)θsSdπ(s)Vπ(s)θ\sum_s d^\pi(s) \frac{\partial \rho}{\partial \theta} = \sum_s d^\pi(s) \sum_a \frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) + \sum_{s' \in S} d^\pi(s') \frac{\partial V^{\pi}(s')}{\partial \theta} - \sum_{s \in S} d^\pi(s) \frac{\partial V^{\pi}(s)}{\partial \theta}
ρθ=adπ(s)aπ(s,a)θQπ(s,a)\Rightarrow \frac{\partial \rho}{\partial \theta} = \sum_{a}d^\pi(s) \sum_a \frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a)
得證.


有了這個定理我們不難發現,

aπ(s,a)θQπ(s,a)=πθQ\sum_a \frac{\partial \pi(s,a)}{\partial \theta} Q^\pi(s,a) =\vec{ \frac{\partial \pi}{\partial \theta}} \odot \vec{Q}

這意味着只需要使πθQ=0||\vec{ \frac{\partial \pi}{\partial \theta}} \odot \vec{Q}||=0即正交即可滿足達到極值點。


用於自動駕駛

我們的實驗環境是Torcs.《The Open Racing Car Simulator》(TORCS)是一款開源3D賽車模擬遊戲.是在Linux操作系統上廣受歡迎的賽車遊戲.有50種車輛和20條賽道,簡單的視覺效果.用C和C++寫成,釋放在GPL協議下.

在這裏插入圖片描述

整體架構是,由策略網絡負責給出具體的駕駛操作,由Q值網絡負責給出對駕駛操作達到的效果做預期評估.(這和人類的智能行爲類似,是標準的Deep Reinforcement learning套路:行動能力和思考能力兼備).

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章