Bandit based Monte-Carlo Planning


發表時間:2006(ECML 2006)
文章要點:這篇文章提出了UCT算法,把bandit的UCB1算法用到Monte-Carlo planning裏面。
首先假設我們有一個generative model,就是我給一個狀態和動作,就告訴我下一個狀態和reward。有了這個model之後,通常的做法就是搞個lookahead search。最常見的算法就是Monte-Carlo search,通過隨機採樣或者某種heuristic biasing的方法來選動作往前看n步,再回溯看哪個動作的value最高。這個方法的缺點就是sample是隨機的,相互之間沒有聯繫。作者的想法就是,如果在搜索過程中,如果在前期的sampling過程中能識別出一些比較好的動作的子集,那麼就會提升後期的性能(if one is able to identify a large subset of the suboptimal actions early in the sampling procedure then huge performance improvements can be expected.)。同時,這個子集不可能一上來就選對了,所以還需要擴張或者刪減,所以還需要平衡exploration-exploitation。然後作者就提出了經典的UCT算法來選擇動作。首先在bandit問題裏,UCB1是

同時,由Hoeffding's inequality可得

這個不等式就說明了UCB1在bandit問題上的收斂性。然後作者就說,planning其實就相當於是non-stationary bandit,只需要讓

然後取一個合適的\(C_p>0\)就可以滿足那個概率不等式了。這就成了經典的UCT算法了。

總結:算是MCTS的起源文章了,很經典也很有效,像AlphaZero這類算法都是基於UCT改進的,影響力是真的大。
疑問:裏面具體的證明還需要看看UCB的文章。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章