Saisir un mot clé:
 
 

Programmation_dynamique

Ce site est un miroir du site http://fr.wikipedia.org/wiki/Accueil

Programmation dynamique

Un article de Wikipédia, l'encyclopédie libre.

Inventée par le professeur Richard Bellman, la programmation dynamique permet de résoudre au moyen d'un ordinateur tout problème d'optimisation dont la fonction objectif se décrit comme la somme de fonctions monotones non-décroissantes des ressources. Concrètement, cela signifie que l'on va pouvoir déduire la solution optimale d'un problème à partir d'une solution optimale d'un sous problème.

Sommaire

[] Utilisation

La programmation dynamique est très souvent applicable dans un cadre industriel pour deux raisons :

Quelques exemples concrets :

  • Optimiser la production d'un bassin minier en fonction des ressources sur chaque puits
  • Optimiser le nombre de consommateurs touchés par une campagne publicitaire en répartissant le budget sur différents médias, ou au contraire en le concentrant (média-planning).

C'est la programmation dynamique ? et non des considérations de respect des riverains d'un aéroport ? qui conduisit à faire monter les avions civils et militaires le plus rapidement possible jusqu'à leur altitude de croisière. Cette technique montre en effet que c'est ce qui minimise tant la consommation générale de carburant que la rentabilisation du capital de l'appareil.

[] Application algorithmique

Le problème des skieurs constitue une application : il s'agit de distribuer m skis à n skieurs (m>n) en minimisant les écarts de taille entre les skis et les skieurs. La propriété d'optimalité des sous-structures (si une distribution est optimale, alors toute sous partie des skis et des skieurs est optimale) le rend traitable par programmation dynamique.

Le problème du sac à dos (knapsack en anglais) est un problème classique de recherche opérationnelle qui est NP-complet, mais qui est résolu de manière pseudo-polynomiale à l'aide d'un algorithme de programmation dynamique.

Un autre exemple est le calcul de la distance de Levenshtein.

[] Articles connexes

La programmation dynamique a, compte-tenu de ses nombreux succès, fait disparaître du programme de la plupart des écoles d'ingénieurs une partie des mathématiques qui visait au même résultat par d'autres moyens : le calcul des variations.

Le temps d'exécution d'un algorithme de programmation dynamique peut être calculé grâce au théorème fondamental.

Martelli a démontré en 1976 que tout algorithme de programmation dynamique pouvait se ramener à la recherche du plus court chemin dans un graphe (A. Martelli. An application of heuristic search methods to edge and contour detection. Comm. ACM, 19(2):73--83, February 1976). Or, les techniques de recherche heuristique basées sur l'algorithme A* permettent d'exploiter les propriétés spécifiques d'un problème pour gagner en temps de calcul. Autrement dit, il est souvent plus avantageux d'exploiter un A* que d'utiliser la programmation dynamique.

[] Voir aussi

[] Articles connexes

[] Liens externes

 
Le Texte ci-dessus est disponible sous GNU Free Documentation License.
La source est wikipedia http://fr.wikipedia.org/wiki/Programmation dynamique
Home

Données
A la une
Articles
Formatons en lignes
Téléchargement
Licence GNU
Encyclopedie
Portail logiciels libres

Partenaires

beyrouthsurseine.com
Sonnerie & Logos
Photos-Video
Ringtones-Sonnerie
Actualite.org
Terrain tennis

  
Décembre 2008
L
M
M
J
V
S
D
1234567
891011121314
15161718192021
22232425 262728
293031
     
Tous les Logos et Marques sont déposés, les commentaires sont sous la responsabilité de ceux qui les ont publiés, le reste © technicmania.com