Skip to main content

Dynamic Programming

  • Living reference work entry
  • First Online:
Encyclopedia of Machine Learning and Data Mining

Definition

Dynamic programming is a method for modeling a sequential decision process in which past decisions impact future possibilities. Decisions can be made at fixed discrete time intervals or at random time intervals triggered by some change in the system. The decision process can last for a finite period of time or run indefinitely – depending on the application. Each time a decision needs to be made, the decision-maker (referred to as “he” in this entry with no sexist connotation intended) views the current state of the system and chooses from a known set of possible actions. As a result of the state of the system and the action chosen, the decision-maker receives a reward (or pays a cost) and the system evolves to a new state based on known probabilities. The challenge faced by the decision-maker is to choose a sequence of actions that will lead to the greatest reward over the length of the decision-making horizon. To do this, he needs to consider not only the current reward...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Recommended Reading

  • Bertsekas D (2000) Dynamic programming and optimal control. Athena Scientific, Belmont

    Google Scholar 

  • Bertsekas D, Tsitsiklis J (1996) Neuro-dynamic programming. Athena Scientific, Belmont

    Google Scholar 

  • Feinberg E, Shwartz A (2002) Handbook of Markov decision processes. Kluwer Academic, Boston

    Google Scholar 

  • Puterman M (1994) Markov decision processes. Wiley, New York

    Google Scholar 

  • Sutton R, Barto A (1998) Reinforcement learning. MIT, Cambridge

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Martin L. Puterman .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer Science+Business Media New York

About this entry

Cite this entry

Puterman, M.L., Patrick, J. (2014). Dynamic Programming. In: Sammut, C., Webb, G. (eds) Encyclopedia of Machine Learning and Data Mining. Springer, Boston, MA. https://doi.org/10.1007/978-1-4899-7502-7_77-1

Download citation

  • DOI: https://doi.org/10.1007/978-1-4899-7502-7_77-1

  • Received:

  • Accepted:

  • Published:

  • Publisher Name: Springer, Boston, MA

  • Online ISBN: 978-1-4899-7502-7

  • eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering

Publish with us

Policies and ethics