深度強化學習課程文件
貝爾曼方程:簡化我們的價值估計
加入 Hugging Face 社群
並獲得增強的文件體驗
開始使用
貝爾曼方程:簡化我們的價值估計
貝爾曼方程簡化了我們的狀態價值或狀態-動作價值計算。
根據我們目前所學,我們知道,如果計算(一個狀態的價值),我們需要計算從該狀態開始的收益,然後永遠遵循該策略。(我們在以下示例中定義的策略是貪婪策略;為簡化起見,我們不折現獎勵)。
因此,要計算,我們需要計算預期獎勵的總和。因此
然後,要計算,我們需要計算從該狀態開始的收益.
所以你可能已經注意到,我們正在重複計算不同狀態的價值,如果你需要對每個狀態值或狀態-動作值都這樣做,這可能很繁瑣。
與其計算每個狀態或每個狀態-動作對的預期收益,不如使用貝爾曼方程。 (提示:如果你知道什麼是動態規劃,這非常相似!如果你不知道,別擔心!)
貝爾曼方程是一個遞迴方程,其工作方式如下:不是從頭開始計算每個狀態的收益,我們可以將任何狀態的價值視為
即時獎勵+ 下一個狀態的折現價值 ( ) .

如果我們回到我們的例子,我們可以說狀態 1 的價值等於我們從該狀態開始的預期累積收益。
計算狀態 1 的價值:如果代理從狀態 1 開始,並在所有時間步遵循策略,則獎勵的總和。
這等同於= 即時獎勵+ 下一個狀態的折現價值
為簡單起見,這裡我們不折現,所以伽馬 = 1。但是你將在本單元的 Q-Learning 部分學習一個伽馬 = 0.99 的例子。
- 的價值= 即時獎勵+ 下一個狀態的折現價值 ( ).
- 等等。
總而言之,貝爾曼方程的思想是,我們不是將每個價值計算為預期收益的總和(這是一個漫長的過程),而是將價值計算為即時獎勵 + 下一個狀態的折現價值的總和。
在進入下一部分之前,思考一下伽馬在貝爾曼方程中的作用。如果伽馬值非常低(例如 0.1 甚至 0)會發生什麼?如果伽馬值是 1 會發生什麼?如果伽馬值非常高,例如一百萬,會發生什麼?
< > 在 GitHub 上更新