|Printed Black & White Copy
This technical note introduces dynamic programming (DP), a powerful tool for finding optimal solutions to complex problems that involve a concatenation of multiple decisions. This note assumes some familiarity with decision trees. Compared to decision trees, DP simplifies the problem representation by pooling together similar decision situations, allowing us to apply backward induction in batches by means of the Bellman equation. The note stresses the importance of data to estimate transition probabilities, as well as to proxy the value-to-go in some complex situations. The note includes four exercises, which are supported by spreadsheets for both students and instructors. These cover job search decisions, pricing of American options, and hotel pricing (revenue management).