Dynamic programming is both an approach to problem solving and a decomposition technique that can be effectively applied to mathematically describable problems having a sequence of interrelated decisions. Such decision making problems are pervasive. Determining a route from an origin (e.g., your house) to a destination (e.g., your school or place of employment) on a network of roads requires a sequence of turns. Managing a retail store (e.g., that sells, say, televisions) requires a sequence of wholesale purchasing decisions.
Such problems also share common characteristics. Each is invariably associated with a criterion. We may wish to choose the shortest or most scenic route from home to our place of employment; the retail store manager purchases televisions with the intent of selling them to maximize expected profit. Each is such that a currently determined decision has impact on the future decision making environment. In going from home to work, the turn currently...
- Bellman, R.E. (1957). Dynamic Programming. Princeton University Press, Princeton, New Jersey.Google Scholar
- Bertsekas, D.P. (1987). Dynamic Programming: Deterministic and Stochastic Models. Prentice-Hall, Englewood Cliffs, New Jersey.Google Scholar
- Denardo, E.V. (1982). Dynamic Programming: Models and Applications. Prentice-Hall, Englewood Cliffs, New Jersey.Google Scholar
- Heyman, D.P. and Sobel, M.J. (1984). Stochastic Models in Operations Research, Vol. II. McGraw-Hill, New York.Google Scholar
- Hillier, F.S. and Lieberman, G.J. (2000). Introduction to Operations Research, 6th ed. McGraw-Hill, New York.Google Scholar
- Ross, S.M. (1983). Introduction to Stochastic Dynamic Programming. Academic Press, New York.Google Scholar