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

馬可夫性質與狀態設計

「未來只取決於現在」是個禮物——但前提是你的狀態真的抓住了「現在」。本篇教你怎麼讓它成真。

馬可夫性質到底主張了什麼

馬可夫性質只說了一件乾淨俐落的事:下一個狀態的機率只取決於當前狀態與當前動作——不取決於之前發生過的任何事。知道整段歷史,並不會比只知道當下更佔優勢。當下就是過去的一份充分摘要。

P\!\left(S_{t+1}=s' \mid S_t=s,\, A_t=a\right) = P\!\left(S_{t+1}=s' \mid S_t=s,\, A_t=a,\, S_{t-1},\, A_{t-1},\, \ldots,\, S_0\right)

一行寫出馬可夫性質:下一個狀態的機率只取決於當前的狀態與動作,而與之前的整個歷史無關。

為什麼要在乎?因為它把記帳工作從「記住一切」縮減成「記住當前狀態」。每個價值、每個轉移都能只用狀態來定義,而整套MDP 形式化就架在這一個承重的假設之上。

它何時悄悄失效

這個性質不是自然律——它是你如何定義狀態的一種性質。只要狀態漏掉了某個對未來有影響的東西,它就會失效。幾個經典陷阱:

  1. 漏掉了速度。一張球的照片告訴你它在哪裡,卻沒告訴你它要往哪去。下一格畫面取決於單張影像藏起來的運動資訊。
  2. 隱藏的模式。一個讀數 21°C 的恆溫器,在暖氣偷偷開著與關著時行為截然不同。模式很重要,卻不在讀數裡。
  3. 只看到局部。一台攝影機只看到房間的一角。智能體背後的東西仍會影響結果——這正是部分可觀測性的領域,留到第 5 篇講。
智能體看到的永遠只是觀測,而非隱藏的真實狀態——卡爾曼式的追蹤器會推斷出馬可夫性質所需、卻缺失的那部分(例如速度)。

互動式卡爾曼濾波器,從帶雜訊的部分觀測中估計隱藏的運動狀態。

設計一個配得上這個性質的狀態

實務上的修補方式是把狀態變豐富,直到它捕捉到足夠的過去。最常見的招數,就是把近期的歷史摺進狀態本身。

  1. 堆疊畫面:不用單張影像,改用最近四張。這樣位置速度就都看得見了。
  2. 把你能推斷出的隱藏變數加進來:在狀態向量裡放進「暖氣開/關」。
  3. 把歷史摘要成特徵:一個移動平均、一個計數器、一個「距上次事件已過多久」。

每加一樣東西都會撐大狀態空間,這會耗掉記憶體與資料——所以功夫在於只加剛剛好的量,以恢復馬可夫性質,又不讓空間爆炸。設計狀態是任何強化學習專案裡槓桿最高的選擇之一,而它完全握在你手上,不在演算法手上。

兩位親戚:隨機環境與獎勵過程

馬可夫性質並不要求世界是可預測的。確定性環境(deterministic environment)總是把同一個動作送向同一個結果;隨機性環境則會擲骰子。兩者都能是馬可夫——這個性質講的是下一狀態的分布取決於什麼(取決於當前狀態),而不是那個分布究竟是一根尖峰還是一片散開。

如果你把 MDP 裡的動作拿掉——讓狀態自行演化、但仍持續收集獎勵——你得到的就是馬可夫獎勵過程(Markov reward process)。它是一個沒有選擇的 MDP,很適合當墊腳石:你可以先研究獎勵如何累積,再加上「做決策」這層複雜度。連獎勵也拿掉,剩下的就是一條單純的馬可夫鏈(與你也許在別處遇過的隱藏馬可夫模型是近親)。

馬可夫獎勵過程其實就是一條馬可夫鏈:狀態自行演化並一路收集獎勵,沒有動作可供選擇。

互動式馬可夫鏈:節點是狀態,由標註轉移機率的箭頭相連。