JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

什麼是馬可夫決策過程?

認識那套把模糊的「智能體靠試誤學習」變成數學可解問題的形式語言。

為什麼需要一份正式藍圖

在訓練一個智能體之前,你得把問題本身描述得夠精確,精確到電腦能對它進行推理。強化學習(reinforcement learning)幾乎對所有問題都借用同一套整潔的描述:馬可夫決策過程(Markov decision process,MDP)。MDP 就是那個裝著一個世界、智能體的選擇、以及這些選擇後果的數學容器。一旦把問題寫成 MDP,一整箱演算法就突然全都能用上了。

可以把 MDP 想成一份完整寫下來的桌遊規則:有哪些格子、哪些走法合法、走一步後會發生什麼、以及怎麼計分。MDP 對序列決策問題做的正是同一件事——從一個機器人穿越房間,到推薦系統決定下一個要顯示什麼。

MDP 所形式化的智能体—环境循环:先采取动作,再获得新状态与奖励。

智能体与环境之间的循环示意图,交换动作、状态和奖励。

五個組成部分

MDP 通常寫成一個由五樣東西組成的元組(tuple)。它們單獨看都不難;威力來自它們如何彼此咬合。

  1. 狀態(states)——狀態空間是世界所有可能處境的集合。一個棋局、機器人的姿態、一位顧客的輪廓。
  2. 動作(actions)——動作空間是智能體在某狀態下能做的事:往左移、落一子、推薦第 7 號商品。
  3. 轉移(transitions)——轉移動態告訴你採取某動作後會落到哪個狀態。它常常是隨機的:同一步可能導向不同結果。
  4. 獎勵(rewards)——獎勵函數在每一步之後給出一個數字,用來編碼我們想要什麼。達成目標就加分,撞牆就扣分。
  5. 折扣(discount)——折扣因子(γ)控制未來的獎勵相對於眼前的獎勵有多重要。它值得我們用一整篇來談。

整套形式化就是這樣:一個狀態空間、一個動作空間轉移、一個獎勵函數、以及一個折扣。五個部分,你就能描述人們丟給強化學習的多數問題。

\mathcal{M} = \langle \mathcal{S},\, \mathcal{A},\, P,\, R,\, \gamma \rangle

整个 MDP 浓缩成一个元组:状态空间 𝒮、动作空间 𝒜、转移 P、奖励 R 和折扣 γ——这就是五个要素。

具體範例:格子世界裡的機器人

想像一個 4×4 的格子。機器人站在某個格子上(這就是狀態)。它可以往上、下、左、右移動(動作)。地板很滑,所以「往右移」有 80% 的機率真的往右、20% 會打滑到旁邊(轉移——是隨機的!)。它在出口格子得到 +10,其他每一步都得到 −1,藉此催它快點(獎勵)。

一个交互式网格世界,就像那个会打滑的机器人网格——每个方格是一个状态,每次移动是一个动作。

可交互的方格网格,智能体在格子间移动以到达目标。

states  = [(r, c) for r in range(4) for c in range(4)]
actions = ["up", "down", "left", "right"]

def reward(state):
    if state == (3, 3):   # the exit
        return +10
    return -1             # cost of dwelling

def transition(state, action):
    # returns a list of (next_state, probability)
    intended = move(state, action)
    sideways = [move(state, a) for a in slips(action)]
    return [(intended, 0.8), (sideways[0], 0.1), (sideways[1], 0.1)]
把一個會打滑的格子世界寫成 MDP 的各個部分——注意轉移回傳的是機率,而不是單一的下一個狀態。

演算法需要的一切,現在都擺在桌面上了。它不需要理解機器人或地板——只需要轉移獎勵。正是這種刻意的「無知」,讓同一套演算法能橫跨機器人、遊戲與廣告。

讓這一切成立的那個安靜假設

藏在「馬可夫」這個字裡的,是一個強而有力的承諾:馬可夫性質(Markov property)。它說當前狀態已經包含了預測未來所需的一切——一旦你知道現在整個過去就再也添不了任何資訊。在格子裡,機器人站在哪裡就足以決定轉移要的全部;它是怎麼走到那裡的,完全無關緊要。

一个交互式马尔可夫链:下一个状态只取决于当前状态——这正是马尔可夫性质。

状态及其转移箭头的交互式示意图,转移概率只取决于当前状态。

正是這個假設讓數學保持乾淨。如果未來取決於整段歷史,每個演算法都會淹沒在不斷膨脹的紀錄裡。馬可夫性質讓我們得以一次只推理一步。下一篇就專講它——它何時成立、何時偷偷失效,以及如何刻意設計狀態讓它成立。