r036_logo
強化學習
2025-08-14

有限馬可夫決策過程(Finite Markov Decision Process, Finite MDP)

馬可夫決策過程是強化學習中的架構,特點是未來的狀態只取決於當前狀態與動作,與過去無關,在這個狀態性質下則稱為馬可夫性質(Markov Property)

基礎元素有:

(S,A,P,R,γ)(S, A, P, R, \gamma)
  • SS:有限的狀態空間(State space)
  • AA:有限的動作空間(Action space)
  • PP轉移機率函數(Transition probability),表示在狀態執行動作轉移到狀態的機率
  • RR報酬函數(Reward function),在狀態採取動作後所得到的期望報酬
  • γ[0,1]\gamma \in [0,1]折扣因子(Discount factor),用來折扣未來的報酬,當考慮長遠報酬則趨近1,短期報酬則越小

決策流程

RENODE 重構節點 人工智慧資訊網站

在有限馬可夫決策過程中,智能體(Agent)與環境(Environment)在離散時間點進行互動。於每個時間步 tt,智能體觀察當前環境狀態 StS_t,並基於該狀態選擇動作 AtA_t。環境接收此動作後,會回應一個數值獎勵 Rt+1R_{t+1} 以及下一個狀態 St+1S_{t+1},促成智能體與環境之間的連續交互過程。

離散時間(discrete time)表示為:

t=0,1,2,3,t = 0, 1, 2, 3, \ldots

在強化學習中,智能體與環境的互動即發生於這些離散的時間步數(time steps),每一步對應一次觀察、行動與回饋。

將整體互動過程用橫式表示則為:

(S0,A0,R1,S1,A1,R2,S2,A2,R3,)(S_0, A_0, R_1, S_1, A_1, R_2, S_2, A_2, R_3, \ldots)

轉移機率函數(Transition Probability)

轉移機率函數也稱為動態函數,這裡以P表示,包含狀態S、獎勵R、動作A狀態集合,在同一次行動中的機率將映射在0到1之間。 RENODE 重構節點 人工智慧資訊網站

動態函數描述下一狀態與獎勵只依賴當前狀態與動作來考慮,而這個動態函數的轉移機率則可以表示為以下

RENODE 重構節點 人工智慧資訊網站

該公式描述在狀態 ss 下執行動作 aa,並且轉移到下一個單一狀態 ss'機率,獲得獎勵 rr 的機率

機率分布(probability distribution)

理解動態函數的轉移機率後,再來是延伸機率論中的機率分布的表示方法

聯合機率方法表示為:

RENODE 重構節點 人工智慧資訊網站

該公式描述為當滿足(s,a)(s,a) 狀態動作下,轉移至下一個動作所獲得的獎勵機率總和為1,需要留意這裡的(s,a)(s,a)是以發生單一事件,而轉移至下一個可能發生的所有狀態與獎勵,因此將所有的事件機率加總機率將等於1。

邊際機率

邊際機率與聯合機率不同,這部分不考慮所有的狀態s',只考慮一個狀態下的所有獎勵機率,因此這裡將所有可能的獎勵值 rr 的機率加總起來,而機率總和等於1 RENODE 重構節點 人工智慧資訊網站

狀態轉移機率分佈概念

RENODE 重構節點 人工智慧資訊網站

期望獎勵 (Expected Reward)

簡單回顧一下期望值的觀念,期望值為一個連續事件機率下的獎勵平均作為價值評估,表示為

期望值=獎勵×機率\text{期望值} = \text{獎勵} \times \text{機率}

在有限馬可夫決策過程中,若考慮不同條件下的參數,獎勵的期望值在兩個參數時表示為狀態-行動 在三個參數時表示為 狀態-行動-未來狀態

狀態-行動

若計算當前 r(s,a)r(s,a) 的獎勵期望值表示為

RENODE 重構節點 人工智慧資訊網站

在狀態 ss 採取動作 aa 時,對所有可能的 ss'rr 做加權平均,求得期望值

一個例子

假設

  • R={r1}R = \{r_1\},且 r1=1r_1 = 1
  • S={s1,s2}S = \{s_1,s_2\}
  • p(s1,r1s,a)=0.8p(s_1, r_1 \mid s,a) = 0.8
  • p(s2,r1s,a)=0.2p(s_2, r_1 \mid s,a) = 0.2
1×0.8+1×0.2=11 \times 0.8+ 1 \times 0.2= 1

可以留意到這裡在狀態和動作下的獎勵他是一個整體得機率分佈,因此他的下一個狀態S={s1,s2}S = \{s_1,s_2\}機率總和應等於1


狀態-行動-未來狀態

當期望獎勵固定下一狀態 r(s,a,s)r(s,a,s') ,則已知 (s'),因此只考慮這個 (s') 下所有可能的獎勵 (r)。這是條件分布的概念,在邊際機率討論單一變數的情況下,分母是條件機率的總和,必定 < 1

RENODE 重構節點 人工智慧資訊網站

分母 是轉移到 ss' 的機率總和 分子 是到達 ss' 並獲得不同獎勵的加權後的總和

一個例子

假設

  • S={s1,s2}S = \{s_1, s_2\}
  • R={1,2}R = \{1, 2\}
  • p(s1,1s,a)=0.3p(s_1, 1 \mid s, a) = 0.3
  • p(s1,2s,a)=0.2p(s_1, 2 \mid s, a) = 0.2

分母是s'狀態轉移機率

p(s1s,a)=0.3+0.2=0.5p(s_1 \mid s,a) = 0.3 + 0.2 = 0.5

計算 s1s1 的獎勵期望值

r(s,a,s1)=10.3+20.20.5=0.3+0.40.5=0.70.5=1.4r(s,a,s_1) = \frac{1 \cdot 0.3 + 2 \cdot 0.2}{0.5} = \frac{0.3 + 0.4}{0.5} = \frac{0.7}{0.5} = 1.4

延伸思考,這個例子我們可以確定 s1s_1 的發生機率等於 0.5 裡面有兩個獎勵的機率,我們可以推測 s2s_2 的發生機率必定等於 0.5 ,但是裡面的獎勵集合數目與獎勵未知。