Competitive equilibrium

Arrow-Debreu competitive equilibrium consists of prices \(\{p_t,w_t,r_t\}_{t=0}^{\infty}\), allocations for the firm \(\{y_t,k_t^d,l_t^d\}_{t=0}^{\infty}\) and the allocations for household \(\{c_t,k_t^s,l_t^s\}_{t=0}^{\infty}\) such that,

Steady state

For firm problem, \[\begin{equation} \begin{split} r_t =&z\alpha k_t^{\alpha -1}l_t^{1-\alpha}\\ w_t =&z(1-\alpha) k_t^{\alpha}l_t^{-\alpha}\\ r_tk_t+w_tl_t&=zk_t^{\alpha}l_t^{1-\alpha} \end{split} \end{equation}\]

Then for household problem, \[\begin{equation} \begin{split} \mathcal{L}(\{c_t,k_{t+1},l_t\}_{t=0}^{\infty};\lambda_t)=&\sum_{t=0}^{\infty} \beta ^t(\frac{c_t^{1-\sigma}}{1-\sigma}-\chi \frac{l_t^{1+\eta}}{1+\eta})+\lambda_t(\sum_{t=0}^{\infty}p_t(zk_t^{\alpha}l_t^{1-\alpha}-c_t-k_{t+1}+(1-\delta)k_t)\\ \frac{\partial \mathcal{L}}{\partial c_t}=&\beta^tc_t^{-\sigma}-\lambda_t p_t=0,\\ \frac{\partial \mathcal{L}}{\partial l_t}=&-\beta^t\chi l_t^{\eta}+\lambda_t p_tz(1-\alpha) k_t^{\alpha}l_t^{-\alpha}=0,\\ \frac{\partial \mathcal{L}}{\partial k_t}=&\lambda_t p_t(z\alpha k_t^{\alpha -1}l_t^{1-\alpha}+1-\delta)-\lambda_{t-1}p_{t-1}=0,\\ c_t=&zk_t^{\alpha}l_t^{1-\alpha}-k_{t+1}+(1-\delta)k_t \end{split} \end{equation}\]

For Steady state, \(p_0=1\), then, \[\begin{equation}\label{ssfoc} \begin{split} &c^{\sigma} l^{\eta}= z(1-\alpha)k^{\alpha}l^{-\alpha}/\chi\\ &z\alpha k^{\alpha -1}l^{1-\alpha}= 1/\beta -1 +\delta\\ &c=zk^{\alpha}l^{1-\alpha}-\delta k \end{split} \end{equation}\]
\[\begin{equation*} M=\frac{k}{l}=\left(\frac{z\alpha \beta}{1-\beta +\beta \delta}\right)^{\frac{1}{1-\alpha}}, \end{equation*}\] \[\begin{equation*} N=\frac{c}{l}=z(\frac{k}{l})^{\alpha}-\delta \frac{k}{l}=zM^{\alpha}-\delta M, \end{equation*}\] \[\begin{equation*} \begin{split} (lN)^{\sigma}l^{\eta}=& z(1-\alpha)(\frac{k}{l})^{\alpha}/\chi\Rightarrow\\ l^{\sigma+\eta}&=\frac{z(1-\alpha)M^{\alpha}}{\chi N^{\sigma}} \Rightarrow\\ l_{ss}=&\left(\frac{z(1-\alpha)M^{\alpha}}{\chi N^{\sigma}}\right)^{\frac{1}{\sigma+\eta}}, \end{split} \end{equation*}\]

Then, \[\begin{equation*} \begin{split} k_{ss}=&Ml\\ c_{ss}=&Nl\\ y_{ss}=&zk^{\alpha}l^{1-\alpha}=zM^{\alpha}l\\ r_{ss}=&\alpha zk^{\alpha-1}l^{1-\alpha}=\alpha zM^{\alpha -1}\\ w_{ss}=&(1-\alpha)zk^{\alpha}l^{\alpha}=(1-\alpha)zM^{\alpha}. \end{split} \end{equation*}\]

Social planner problem

The problem of the social planner is that, given the initial capital \(k_0\), \[\begin{equation}\label{SPP1} \begin{split} w( k_0)&=\max_{\{c_t, k_t, l_t \}_{t=0}^{\infty}} \sum_{t=0}^{\infty} \beta ^t(\frac{c_t^{1-\sigma}}{1-\sigma}-\chi \frac{l_t^{1+\eta}}{1+\eta})\\ s.t. \;\;zk_t^{\alpha}l_t^{1-\alpha}&=c_t+k_{t+1}-(1-\delta)k_t, \;\;\forall t\geq 0\\ c_t&\geq0,\;k_t\geq0,\;0\leq l_t\leq 1, \;\;\forall t\geq 0\\ k_0&\text{ is given.} \end{split} \end{equation}\]

Bellman equation, \[\begin{equation} V(k)=\max_{\begin{smallmatrix}0\leq l\leq 1 \\0\leq k'\leq zk^{\alpha}l^{1-\alpha}+(1-\delta)k\end{smallmatrix}} \{\frac{(zk^{\alpha}l^{1-\alpha}+(1-\delta)k-k')^{1-\sigma}}{1-\sigma}-\chi \frac{l^{1+\eta}}{1+\eta}+\beta \mathbb{E}V(k')\} \end{equation}\]

VFI

Julia code: click here.

# Julia code
# See A2.jl
Plain VFIPlain VFIPlain VFI

Plain VFI

HPI-VFIHPI-VFIHPI-VFI

HPI-VFI

MPB-VFIMPB-VFIMPB-VFI

MPB-VFI

Section ncalls time %tot avg alloc %tot avg
Plain VFI n_k=100 1 287s 72.0% 287s 84.5GiB 70.9% 84.5GiB
Plain VFI n_k=50 1 72.6s 18.2% 72.6s 21.1GiB 17.7% 21.1GiB
Plain VFI n_k=20 1 13.1s 3.30% 13.1s 3.38GiB 2.84% 3.38GiB
VFI-HPI n_k=500 1 11.9s 3.00% 11.9s 5.89GiB 4.94% 5.89GiB
VFI-MPB n_k=500 1 8.47s 2.13% 8.47s 2.71GiB 2.27% 2.71GiB
VFI-HPI n_k=200 1 2.57s 0.65% 2.57s 839MiB 0.69% 839MiB
VFI-MPB n_k=200 1 2.05s 0.52% 2.05s 653MiB 0.54% 653MiB
VFI-HPI n_k=50 1 286ms 0.07% 286ms 67.5MiB 0.06% 67.5MiB
VFI-MPB n_k=50 1 141ms 0.04% 141ms 34.0MiB 0.03% 34.0MiB
VFI-HPI n_k=20 1 133ms 0.03% 133ms 21.0MiB 0.02% 21.0MiB
VFI-MPB n_k=20 1 62.8ms 0.02% 62.8ms 10.9MiB 0.01% 10.9MiB