1. 程式人生 > 其它 >The Effect of Planning Shape on Dyna-style Planning in High-dimensional State Spaces

The Effect of Planning Shape on Dyna-style Planning in High-dimensional State Spaces


發表時間:2019
文章要點:文章分析了Dyna這種model based方法,用model去生成one-step的transition和n-step的transition的區別,得出的主要結論是one-step的transition基本上沒有任何幫助,還不如直接用現有的buffer多更新幾次網路(similar sample efficiency gains could be obtained simply by performing more model-free updates on the data the agent had already gathered)。要想有用,就要用model去生成unfamiliar的樣本。然後作者就通過model planning生成更長的軌跡,而不是隻生成一步的方式來說明這個方式是有效的(planning with longer rollouts yields dramatic improvement when using a perfect model.)。不過另一方面,作者也說了,用Dyna的模式一邊學model,一邊學value,效果很差,基本沒有提升(With a learned model, performance will likely be worse due to model errors,)。從下面的圖裡也能看出來,不管是預訓練學一個model,還是一邊做RL一邊學model,效果都不行

實驗具體設計就是對rollout長度做對比,作者做的實驗就是控制總的planning的step數量,然後改變軌跡長度,比如100x1表示100條長度為1的rollouts, 10x10表示10條長度為10的rollouts。然後model要麼直接提供perfect model,要麼用資料集先學一個fixed model,再或者就online去學model。
總結:

一個可以想象到的結論,不過也給我們啟示,要想效果好,就需要能探索並且得到多樣化的樣本。這其實也給我們指了一條路,就是去model裡面做更多的探索,這也可以保證RL更safe。另外,因為model error會使得效果更差,所以planning的時候需要判斷模型準不準,然後確定planning長度。
另外,planning 100的長度對於一個隨便就上千步一局的遊戲來說也並不長其實,而且和環境多互動幾次也能得到多樣性的樣本,這就解釋了為啥直接在環境裡執行互動次數+planning次數那麼多的step,其實得到的樣本多樣性並不比planning得到的差。
疑問:既然rollout長才有用,但是如果model是學的,那長的rollout誤差也會更大,所以這個不準確的model也不會帶來好處了。這麼看的話,planning很雞肋啊?
另外,即使是在perfect model上做很長的planning,效果還是比不過直接在環境裡學互動次數+planning次數那麼多的step,那既然這樣,如果不考慮和環境互動次數的限制的話,model和planning簡直一無是處啊。。。
關於對比DQN Extra Updates,Rollout-Dyna-DQN比DQN Extra Updates效果好,作者解釋是Rollout-Dyna-DQN的樣本更加多樣化,所以更好。我感覺是因為作者總共就只和環境互動了100K step的原因吧,如果大家都和環境互動個1e6,2e6,這個多樣性的差距應該就被抹平了吧?