Chapitre 17. Programmation dynamique
- Par Irène Charon
- et Olivier Hudry
Pages 403 à 418
Citer ce chapitre
- CHARON, Irène
- et HUDRY, Olivier,
- Charon, Irène.
- et al.
- Charon, I.
- et Hudry, O.
Citer ce chapitre
- Charon, I.
- et Hudry, O.
- Charon, Irène.
- et al.
- CHARON, Irène
- et HUDRY, Olivier,
Notes
-
[1]
R. Bellman, The theory of dynamic programming, Bulletin of the American Mathematical Society 60 (6), 1954, 503-516. Voir aussi R. Bellman, Dynamic Programming, Princeton University Press, 1957 ; réédition Dover Publication, 2003.
-
[2]
Autrement dit, on se limite aux instances vérifiant, pour tout i compris entre 1 et n, ai ≤ C. On se gardera de considérer que l’on peut toujours majorer les ai par le plus grand d’entre eux : cela ne donne pas une majoration par une constante, puisque le majorant obtenu dépend de l’instance ; ici la constante C est fixée préalablement aux instances, et donc indépendamment de celles-ci.
-
[3]
R. Bellman, Dynamic programming treatment of the travelling salesman problem, Journal of the Association for Computing Machinery 9, 1962, 61-63.
-
[4]
M. Held, R. M. Karp, A dynamic programming approach to sequencing problems, Journal of the Society for Industrial and Applied, Mathematics 10 (1), 1962, 196-210.
La programmation dynamique fut conçue par R. Bellman dans les années 1950. Son application est régie par deux principes :
on plonge le problème à résoudre dans une famille plus générale de problèmes dont le problème initial fait partie ;
ces problèmes sont liés par des relations de récurrence permettant de les résoudre de proche en proche.
L’algorithme de Bellman (voir la partie 9.3.3, page 196) pour déterminer un plus court chemin d’un sommet r d’un graphe sans circuit = (S, A) vers un autre sommet t de ce graphe procède de cette démarche. Le plongement consiste ici à étendre la recherche d’un plus court chemin de r à t à la recherche d’un plus court chemin de r à tout autre sommet de . Les relations de récurrence s’appuient sur le fait que, pour atteindre un sommet t, on doit passer par un prédécesseur s de t, ce que traduit l’affectation (en reprenant les notations de la partie 9.3.3, page 196) : ; le calcul se fait alors de proche en proche, selon une numérotation topologique (qui existe puisque est supposé sans circuit) pour être sûr que val(s) contient la valuation d’un plus court chemin de r à s quand on l’utilise pour déterminer val(t).
Nous allons donner d’autres illustrations de la programmation dynamique en l’appliquant à divers problèmes.
On reprend le problème -complet PART de la partition décrit dans la partie 13.2.3, page 300 : étant donnés n entiers positifs ai (1 ≤ i ≤ n) de somme paire, existe-t-il ?Notons S la demi-somme des n entier…
Date de mise en ligne : 01/06/2022
Ce chapitre est en accès conditionnel
Acheter cet ouvrage
65,00 €
Acheter ce chapitre
4,00 €