Programs to Compute and Analyze Optimal Policy Under Uncertainty

Included on this page is a zipped directory that includes Matlab files to compute and analyze optimal policy in forward-looking Markov Jump Linear Quadratic Models by implementing the optimal policy algorithms from the paper:

"Monetary Policy with Model Uncertainty: Distribution Forecast Targeting" (DFT)
by Lars E.O. Svensson and Noah Williams

May 2007 version

Programs by Satoru Shimizu, Lars E.O. Svensson, and Noah Williams
Last update: 7/25/07

The main programs are opt_policy.m and impul_res.m which compute optimal policy and the simulated distribution of impulse responses under the optimal policy. They require that a user define a model as a structured variable consisting of a collection of matrices. Given a specification of appropriate matrices, set_up_model.m defines the structured variable appropriately.

Two examples of how to use the programs to reproduce the results in the DFT paper are given in the following:
  • kickoff_RS.m computes optimal policy and plots impulse responses in the Rudebusch-Svensson model as in Section 4.1 of the DFT paper
  • kickoff_Linde.m computes optimal policy and plots impulse responses in the Linde model as in Section 4.2 of the DFT paper
  • These programs also provide much more detail on the setup and structure of the models and algorithms.

    In a bit more detail, the other files consist of the following:
  • set_up_model.m: creates a structured variable, "model" given a specification of matrices.
  • opt_policy.m and opt_policy_light.m: compute the optimal policy. The two programs differ only in that opt_policy.m checks the dimensions of all matrices.
  • impul_res.m: computes the impulse response distribution.
  • plot_impul_res.m: plots the impulse response distribution.

  • Also included are two utility files from Lars Peter Hansen and Thomas J. Sargent that accompany their monograph Recursive Models of Dynamic Linear Economies (see
  • olrp.m: solves standard discounted linear quadratic dynamic programming problems
  • doubleo.m: solves matrix Riccati equations using a doubling algorithm
  • Download the Programs

    Back to Home