1. 程式人生 > 其它 >Learning to Combat Compounding-Error in Model-Based Reinforcement Learning

Learning to Combat Compounding-Error in Model-Based Reinforcement Learning


發表時間:2019(NeurIPS 2019 Deep Reinforcement Learning Workshop)
文章要點:這篇文章想說model based方法裡面通常model都是imperfect的,就是這個model一般只在區域性是準確的,放到全域性上看誤差會越來越大,所以如果用這個model去planning很多個step的話就會有問題。作者提出了一種基於model error來自適應調整planning horizon的方法來緩解model error帶來的影響。具體的,作者定義了h-step model-based value error

因為model體現出來的問題就是value估計不準,所以這個是make sense的。這裡\(\bar{V}\)

是(target) value function,\(P\)就是真正的dynamics,\(\hat{P}\)是planning的model,\(h\)是planning的horizon,\(\hat{P}\)的定義如下

這裡這個\(\epsilon\)誤差就是去比較真正的dynamics planning出來的value和在model上planning出來的value的差。然後文章指出,這個差可以被一個關於Wasserstein Distance的表示式給bound住

所以這個誤差就被表示成

進一步為了用TD learning的方式計算,把這個寫成了

然後更新就和Q learning一樣

這裡還有一個點是這個誤差要基於一個policy \(\pi\)
來計算,但是如果這個policy一直變來變去,那model error就不好算了,文章嘗試了幾種計算方式,這裡不細說了。然後剩下的事情就是怎麼去adaptive調整horizon長度,作者用soft weighted combination的方式去加權計算

其中\(H_{max}\)是先設定的最大horizon長度,權重計算和softmax一致

這意思就是說要是誤差大,那麼計算的時候權重就小,如果都大,那就是\(h=0\)也就是沒有planning了。有了這個之後,剩下的事情就是正常的RL過程了, 比如DQN的話就更新Q function

總結:挺有意思的想法,就是感覺horizon太短了,都是3,5這種,然後實驗環境也比較簡單,說服力不太夠。
疑問:
Throughout the paper we assume that the reward function R is known to the agent,這個假設會不會太強了?
\(W(s,a)\)是怎麼根據buffer裡的資料算的,P是確定性轉移嗎?
計算horizon長度的時候,

這裡的權重,會不會出現\(h=1\)的時候誤差小,\(h=2\)的時候誤差大,後面的誤差又小這種情況,就是說中間有個地方不準,但是後面又準了?
後面的實驗,如果model是直接給的,好像沒問題。如果model也是通過資料學的,好像就學不出來了,那要是不能學出來,是不是就不太practical了?