動態規劃
維度災難(curse of dimensionality)
動態規劃很精確,但它每個狀態都要存、要更新一個數字——而隨著變數增加,狀態數會爆炸。十格的網格世界微不足道;但追蹤十個各能取十種值的獨立事物,你立刻面對一百億個狀態。這種「每加一個維度就把工作量翻倍」的組合式暴增,就是維度災難(curse of dimensionality),也是表格式動態規劃無法擴展的主因。
如果狀態由 d 個特徵描述、每個特徵有 k 種可能值,狀態空間就有 k 的 d 次方個條目——對 d 是指數成長。一次完整的動態規劃掃描必須碰過全部,所以遠在問題達到實際規模之前,記憶體與計算量就已經不可能了。這正是現代強化學習為何用能跨狀態泛化的函數逼近(例如神經網路)取代查表,以及為何用抽樣取代窮舉掃描的原因。
\lvert\mathcal{S}\rvert = k^{\,d}
狀態數隨變數個數 d 呈指數成長。
另见