La
programmation dynamique est une méthode
algorithmique pour résoudre des
problèmes d'optimisation. Le concept a été introduit au début des années 1950 par
Richard Bellman. Le terme « programmation » signifie à l’époque plus planification et ordonnancement. La programmation dynamique s'applique avec succès lorsque le problème d'optimisation est composé de plusieurs sous-problèmes de même nature, et qu'une solution optimale du problème global s'obtient à partir de solutions optimales des sous-problèmes.