- 深度強化學習實踐(原書第2版)
- (俄)馬克西姆·拉潘
- 1317字
- 2021-08-18 17:39:25
5.1 價值、狀態和最優性
你可能還記得我們在第1章中對狀態價值的定義。這是一個非常重要的概念,現在來對它進行進一步探究。
這部分圍繞價值以及如何估算它展開。我們將價值定義為從狀態獲得的預期的總獎勵(可選折扣)。在形式上,狀態的價值是,其中rt是片段中的步驟t獲得的獎勵。總獎勵可以通過γ進行折扣(未折扣的情況對應γ=1),這取決于我們如何定義它。價值始終根據智能體遵循的某些策略來計算。為了說明這一點,考慮一個具有以下三個狀態的簡單環境(見圖5.1):
1)智能體的初始狀態。
2)智能體從初始狀態執行動作“向右”后,到達的最終狀態。從中獲得的獎勵是1。
3)智能體執行動作“向下”后,到達的最終狀態。從中獲得的獎勵是2,如圖5.1所示。

圖5.1 有獎賞的環境狀態轉移示例
環境始終是確定性的,每個動作都可以成功,并且我們總是從狀態1開始。一旦到達狀態2或狀態3,片段就結束了。現在的問題是,狀態1的價值是多少?如果沒有智能體的行為或者策略信息,這個問題就毫無意義。即使在簡單的環境中,智能體也可以有無數種行為,對于狀態1每種行為都有自己的價值。考慮以下示例:
- 智能體始終向右。
- 智能體始終向下。
- 智能體以0.5的概率向右,以0.5的概率向下。
- 智能體以0.1的概率向右,以0.9的概率向下。
為了演示價值是如何計算的,我們將根據上述策略依次進行計算:
- 對于“始終向右”的智能體,狀態1的價值為1.0(每次向右1走,它就會獲得1,片段結束)。
- 對于“始終向下”的智能體,狀態1的價值為2.0。
- 對于50%向右/ 50%向下的智能體,價值為1.0×0.5 + 2.0×0.5 = 1.5。
- 對于10%向右/ 90%向下的智能體,價值為1.0×0.1 + 2.0×0.9 = 1.9。
現在,另一個問題是:該智能體的最佳策略是什么?RL的目標是獲得盡可能多的總獎勵。對于這種單步動作的環境,總獎勵等于狀態1的價值。顯然,選擇策略2(始終向下)總獎勵值最大。
不幸的是,這種最優策略顯而易見的環境在實踐中并不那么吸引人。在大多引人關注的環境中,最優策略會更難制定,甚至難以證明某策略就是最優的。然而,不用擔心。我們正朝著讓計算機自行學習最佳行為的方向發展。
前面的示例可能會給大家一個錯誤的印象,那就是在采取動作時應該始終追求最高的獎勵。通常,這沒有那么簡單。為了演示這一點,我們把前面的環境從狀態3擴展到狀態4(見圖5.2)。狀態3不再是最終狀態,而是向狀態4過渡的狀態,帶來的獎勵為–20。一旦我們在狀態1中選擇了“向下”的動作,不可避免會遇到這種極差的回報,因為狀態3之后只有一個出口。因此,如果智能體認為“貪婪”是一個好策略,那這對于智能體來說就是一個陷阱。

圖5.2 增加了額外狀態的相同環境
考慮到增加的狀態,狀態1的價值應該按照以下方式計算:
- 對于“始終向右”的智能體,狀態1的價值不變,仍為1.0。
- 對于“始終向下”的智能體,狀態1的價值為2.0 + (–20) = –18。
- 對于50%向右/50%向下的智能體,價值為0.5×1.0 + 0.5×(2.0 + (–20)) = –8.5。
- 對于10%向右/90%向下的智能體,價值為0.1×1.0 + 0.9×(2.0 + (–20)) = –16.1。
所以,對于新環境來說最優策略是1 : 始終向右。
之所以會花一些時間討論簡單和復雜環境,主要是為了讓大家意識到最優性問題的復雜性,可以更好地領會Richard Bellman的結果。Bellman是一位美國數學家,他提出并證明了著名的Bellman方程。我們將在下一節中討論該方程。