Dynamic Programming - Theory, Computation, and Empirical Applications

Course content

The overall purpose of the course is to provide a fundamental understanding of dynamic programming (DP) models and their empirical application. The DP framework has been extensively used in economic modeling because it is sufficiently rich to model almost any problem involving sequential decision making over time and under uncertainty. Prominent examples are saving/consumption decisions, retirement behavior, investment, labor supply/demand, housing decisions. The course will first introduce participants to theoretical concepts, and then focus on empirical applications covering both discrete and continuous decision problems as well as the estimation of dynamic games.


MSc programme in Economics – elective course

Learning outcome

The purpose of the lectures and the exercise classes is that the student should

Acquire knowledge, skills and competencies related to stochastic dynamic programming and the involved computational hurdles (curse of dimensionality, high dimensional integration, multiplicity of solutions, etc.)

After completing the course, the student should be able to:


  • Acquire knowledge about solution methods (backward recursion, value function iterations, policy iterations, endogenous grid method) for dynamic structural models of sequential decision making under uncertainty of both finite and infinite horizons and for single and multiple agents.

  • Acquire knowledge about solving for unique and multiple equilibria in general equilibrium models and simple dynamic games.

  • Acquire knowledge about estimation methods (full solution methods: Mathematical Programming with Equilibrium Constraints (MPEC) and Nested Fixed Point Algorithm (maximum likelihood, minimum distance, indirect inference, GMM and simulation versions of these); Non-full solution methods: CPP-estimator, Nested Pseudo likelihood (policy iteration estimators); GMM using Euler equations).

  • Acquire knowledge about numerical techniques to evaluate integrals (quadrature methods andMonte Carlo integration) involved in evaluating expectations future states of the world and to integrate unobservable out of the sample criterion used in estimation (e.g. the likelihood function).

  • Acquire knowledge about the numerical approximation and interpolation techniques required to approximate value functions over continuous state variables (splines, orthogonal polynomials, neural net).

  • Acquire knowledge about a variety of dynamic structural models

  • Acquire knowledge about how evaluate policy initiatives by means of counter factual simulations


Skills obtained through exercise classes

  • Students will obtain (programming) skills though hands on experiences with solving and/or estimating relatively simple models (cake eating, stochastic growth, consumption/savings, investment, labor demand/supply and simple dynamic games).

Skills obtained through Term paper

  • The purpose of the term paper is to make students combine many of the simplified building blocks we covered in the computer exercises. By combining these building blocks, students should be able to solve and estimate more sophisticated model. In particular the students should

  • Solve and estimate dynamic games or single agent models and test hypotheses using solution and estimation methods discussed in the course. Ideally students should be able to replicate the results from an already published paper and thereby get hands on experience with the involved techniques.

  • Investigate the consequences policy proposals by means of counterfactual simulations program the estimators applied in the paper using MATLAB (or GAUSS, FOTRAN and C)

  • Present the analysis in a short and focused term paper.


  • Hence, after completing the course, the student should have obtained the competencies in dynamic programming theory and practice and thereby be able to understand papers and undertake empirical analysis on a (simple) dynamic structural model and to present the analysis in a short and focused paper.


The acquired competencies in dynamic programming theory and practice provide a strong background that enable students to do empirical analyses at a high level suitable for a Master or even a PhD thesis.


The lectures focus on theory whereas the class provides hands on knowledge of solution and estimation of the models. Ideally, the whole process of estimating a dynamic structural model empirically is learned by writing a term paper that has to be handed in at the end of the semester.

  • Jérome Adda and Russell Cooper: “Dynamic Economics: Quantitative Methods and Applications” MIT Press 2003, ISBN: 978-0-262-01201-0

  • Kenneth Judd: “Numerical Methods in Economics” MIT Press 1998, ISBN: 978-0-262-10071-7

  • 15-20 papers: Ranging from classic seminal contributions to recent state of the art work from the research frontier.


Pre-requisites are Micro III, Macro III, Econometrics I-II. Strongly recommended is Advanced Microeconometrics. While the latter is essential as this course provides the necessary computational skills (MATLAB Programming) and knowledge about estimation techniques, it is not a formal requirement.

2 x2 hours of lecture per week for 10½ week and 2 hours of exercise for 12 weeks and some weeks to write the paper.

Time and venue:
To see the time and location of lectures and the exercise class please press the link/links under "Se skema" (See schedule) at the right side of this page. (17F means Spring 2017).

You can find the similar information partly in English at
-Select Department: “2200-Økonomisk Institut” (and wait for respond)
-Select Module:: “2200-F17; [Name of course]”
-Select Report Type: List
-Select Period: "Forår/Spring – Week 4-29”
Press: “ View Timetable”

Please be aware regarding exercise classes:
- The schedule of the exercise class is only a pre-planned schedule and can be changed until just before the teaching begins without the participants accept. If this happens it will be informed in KUnet or can be seen in the app myUCPH and at the above link.

7,5 ECTS
Type of assessment
Oral examination, 25 min under invigilation
Written assignment
The exam is an oral defence of the project assignment. The project assignment and defence can be in English or in Danish. Language must be chosen at the course or exam registration.

All aids can be used to the project assignment.

The student can only take the project assignment in to the oral examination, nothing els.



Marking scale
7-point grading scale
Censorship form
External censorship
100 % censorship
Criteria for exam assessment

Students are assessed on the extent to which they master the learning outcome for the course.

To receive the top grade, the student must be able to demonstrate in an excellent manner that he or she has acquired and can make use of the knowledge, skills and competencies listed in the learning outcomes.

Single subject courses (day)

  • Category
  • Hours
  • Lectures
  • 42
  • Class Instruction
  • 24
  • Preparation
  • 140
  • Exam
  • 0,42
  • English
  • 206,42