數理經濟學

模擬 Hamilton-Jacobi-Bellman

  • September 10, 2015

假設我已經解決了以下形式的 HJB:

$ \rho V(k) = \max_c g(c) + V’(k)(z - c) $

我已經校準 $ \rho $ 到每月參數。我想模擬開發 $ k $ . 我從 $ k(0) $ . 但是,與離散時間不同,我不確定接下來會發生什麼。

是 $ k(1) = k(0) + (z-c(0)) $ , 和 $ k(1) $ 的價值 $ k $ 下個月?還是我需要以某種方式整合 $ k(1) = \int_0^1 (z-c(t))dt + k(0) $ ? 有很多關於解決這些問題的參考資料,但我找不到任何關於模擬它的參考資料。

擴展 jmbejara 的答案和您關於集成的問題,這裡實際上有三個步驟:

  1. 求解 HJB 方程 $ \rho V(k) = \max_c g(c)+V’(k)(z-c) $ . (你已經這樣做了。)
  2. 獲取策略函式 $ c(k)=\text{argmax}_c g(c)+V’(k)(z-c) $ . (您可能在解決 HJB 時已經這樣做了。)
  3. 代替 $ c(k) $ 進入運動定律 $ k $ 並數值求解該微分方程 $ k(t) $ :$$ \dot{k}=z-c(k) $$

聽起來您已經有了 (1) 和 (2),只是不確定在 (3) 中究竟該做什麼。如果您在確定性環境中工作(從 HJB 看起來您就是這樣),則無需進行離散化:您只需使用 Matlab 中的罐裝 ODE 求解器或任何其他軟體包來數值求解微分方程以上為 $ k(t) $ .

更具體一點:

  • 如果 HJB 很簡單,並且您有一個分析解決方案 $ V(k) $ ,因此可以很容易地計算 $ c(k) $ 同樣,這很棒。你可以插 $ c(k) $ 進入運動定律 $ k $ 並告訴你選擇的軟體包來解決它並獲得它的軌跡 $ k(t) $ .
  • 如果您必須對 HJB 進行數值求解,那很好,因為這意味著您可能已經使用過某種數值 ODE 求解技術並且會熟悉它。不利的一面是,這意味著當您最初獲得 $ V(k) $ 和 $ c(k) $ ,你只會得到它的網格 $ k $ ,而不是擁有某種可以在任何地方應用的公式 - 這是一個問題,因為您需要能夠確定 $ c(k) $ 在任何時候 $ k $ 如果你要數值求解 $ \dot{k} $ 微分方程 $ k(t) $ . 據我所知,最簡單的解決方法是將樣條曲線擬合(或使用其他近似方法)離散網格 $ (k_{grid},c(k_{grid})) $ 你擁有的價值觀。然後你可以得到一個近似值 $ c(k) $ 樣條覆蓋的任何地方,假設您的 ODE 表現良好並且您有一個密集的網格,它將非常準確。

在隨機環境中事情變得更加複雜,但您的案例看起來是確定性的。(需要明確的是,我在這裡只是一個涉獵者:數值方法不是我的專業領域。但這就是我所知道的。)

引用自:https://economics.stackexchange.com/questions/97