Implementing Dynamic Programs in Spreadsheets

Published Online:https://doi.org/10.1287/ited.5.2.25

This paper has two purposes: to help explain dynamic programs (DP) to students who have no background in procedural languages, and to quantitatively motivate good spreadsheet designs that can be developed and modified easily. Teachers and practitioners could benefit from using spreadsheets to solve the common problems that are suited to DP. We give examples of several important DPs, implemented in different ways with a spreadsheet.

We further analyze these DPs for their constructive complexity, which is the number of keystrokes required to write a spreadsheet for a given computational task, as a function of the input data. We show that a given DP can be written in several ways, with varying constructive complexity. The implementation can drastically affect the difficulty of writing and modifying a spreadsheet. The different examples demonstrate the value of good spreadsheet design.

Note: Please see supplemental material for the errata to this paper.

INFORMS site uses cookies to store information on your computer. Some are essential to make our site work; Others help us improve the user experience. By using this site, you consent to the placement of these cookies. Please read our Privacy Statement to learn more.