馬可夫性質到底主張了什麼
馬可夫性質只說了一件乾淨俐落的事:下一個狀態的機率只取決於當前狀態與當前動作——不取決於之前發生過的任何事。知道整段歷史,並不會比只知道當下更佔優勢。當下就是過去的一份充分摘要。
一行寫出馬可夫性質:下一個狀態的機率只取決於當前的狀態與動作,而與之前的整個歷史無關。
為什麼要在乎?因為它把記帳工作從「記住一切」縮減成「記住當前狀態」。每個價值、每個轉移都能只用狀態來定義,而整套MDP 形式化就架在這一個承重的假設之上。
它何時悄悄失效
這個性質不是自然律——它是你如何定義狀態的一種性質。只要狀態漏掉了某個對未來有影響的東西,它就會失效。幾個經典陷阱:
- 漏掉了速度。一張球的照片告訴你它在哪裡,卻沒告訴你它要往哪去。下一格畫面取決於單張影像藏起來的運動資訊。
- 隱藏的模式。一個讀數 21°C 的恆溫器,在暖氣偷偷開著與關著時行為截然不同。模式很重要,卻不在讀數裡。
- 只看到局部。一台攝影機只看到房間的一角。智能體背後的東西仍會影響結果——這正是部分可觀測性的領域,留到第 5 篇講。
互動式卡爾曼濾波器,從帶雜訊的部分觀測中估計隱藏的運動狀態。
設計一個配得上這個性質的狀態
實務上的修補方式是把狀態變豐富,直到它捕捉到足夠的過去。最常見的招數,就是把近期的歷史摺進狀態本身。
- 堆疊畫面:不用單張影像,改用最近四張。這樣位置與速度就都看得見了。
- 把你能推斷出的隱藏變數加進來:在狀態向量裡放進「暖氣開/關」。
- 把歷史摘要成特徵:一個移動平均、一個計數器、一個「距上次事件已過多久」。
每加一樣東西都會撐大狀態空間,這會耗掉記憶體與資料——所以功夫在於只加剛剛好的量,以恢復馬可夫性質,又不讓空間爆炸。設計狀態是任何強化學習專案裡槓桿最高的選擇之一,而它完全握在你手上,不在演算法手上。
兩位親戚:隨機環境與獎勵過程
馬可夫性質並不要求世界是可預測的。確定性環境(deterministic environment)總是把同一個動作送向同一個結果;隨機性環境則會擲骰子。兩者都能是馬可夫——這個性質講的是下一狀態的分布取決於什麼(取決於當前狀態),而不是那個分布究竟是一根尖峰還是一片散開。
如果你把 MDP 裡的動作拿掉——讓狀態自行演化、但仍持續收集獎勵——你得到的就是馬可夫獎勵過程(Markov reward process)。它是一個沒有選擇的 MDP,很適合當墊腳石:你可以先研究獎勵如何累積,再加上「做決策」這層複雜度。連獎勵也拿掉,剩下的就是一條單純的馬可夫鏈(與你也許在別處遇過的隱藏馬可夫模型是近親)。
互動式馬可夫鏈:節點是狀態,由標註轉移機率的箭頭相連。