API Reference

Continuous Dynamic Programming

ContinuousDPs.ContinuousDPType
ContinuousDP{N,TR,TS,Tf,Tg,Tlb,Tub}

Type that reperesents a continuous-state dynamic program

Fields

  • f::Tf<:Function: Reward function
  • g::Tg<:Function: State transition function
  • discount::Float64: Discount factor
  • shocks::TR<:AbstractVecOrMat: Random variables' nodes
  • weights::Vector{Float64}: Random variables' weights
  • x_lb::Tlb<:Function: Lower bound of action variables
  • x_ub::Tub<:Function: Upper bound of action variables
  • interp::Interp{N,TS<:VecOrMat}: Object that contains information about interpolation
source

LQ Approximation

ContinuousDPs.approx_lqFunction
approx_lq(s_star, x_star, f_star, Df_star, DDf_star, g_star, Dg_star,
          discount)

Return an approximating LQ instance.

Arguments

  • s_star::ScalarOrArray{T}: State variables at the steady-state
  • x_star::ScalarOrArray{T}: Action variables at the steady-state
  • f_star::Real: Reward function evaluated at the steady-state
  • Df_star::AbstractVector{T}: Gradient of f satisfying Df_star = [f_s', f_x']
  • DDf_star::AbstractMatrix{T}: Hessian of f satisfying DDf_star::Array = [f_ss f_sx; f_xs f_xx]
  • g_star::ScalarOrArray{T}: State transition function evaluated at the steady-state
  • Dg_star::AbstractMatrix{T}: Jacobian of g satisfying Dg_star = [g_s, g_x]
  • discount::Real: Discount factor
source

Simulation

QuantEcon.simulateFunction
simulate([rng=GLOBAL_RNG], res, s_init, ts_length)

Generate a sample path of state variable(s)

Arguments

  • rng::AbstractRNG: Random number generator
  • res::CDPSolveResult: Object that contains result of dynamic programming
  • s_init: Initial value of state variable(s)
  • ts_length::Integer: Length of simulation

Return

  • s_path::VecOrMat:: Generated sample path of state variable(s)
source

Policy Evaluation

ContinuousDPs.evaluate_policy!Function
evaluate_policy!(cdp, X, C)

Update basis coefficients

Arguments

  • cdp::ContinuousDP: Object that contains model parameters
  • X::Vector{Float64}: Policy function vector
  • C::Vector{Float64}: A buffer array to hold the basis coefficients

Returns

  • C::Vector{Float64}: Updated basis coefficients vector
source
ContinuousDPs.set_eval_nodes!Function
set_eval_nodes!(res, s_nodes_coord)

Set evaluation nodes

Arguments

  • res::CDPSolveResult: Object that contains the result of dynamic programming
  • s_nodes_coord::NTuple{N,AbstractVector}: Evaluation nodes
source