Professional Documents
Culture Documents
m-1
=1
(=total des exemplaires fabriqus
jusqu la fin du mois (m-1)).
3. Au dbut du mois (m) il faut prendre une dcision
x
= fabriquer (x=X
m
) exemplaires
(x= 0, 1, 2, 3 ou 4) pendant ce mois. Toutes les valeurs de X
m
(=x) ne sont pas acceptables
car il faut tenir compte des contraintes telles que (1.2), (1.3). Notamment : X
m
+
X
m-1
=1
4.
4. Limpact de chaque dcision consiste en :
un changement dtat : E
m
= [nouvel tat aprs la prise de dcision (= nombre total
dexemplaires qui seront fabriqus jusqu la fin du mois (m))] = [ tat antrieur (avant la prise de
dcision), soit E
m-1
] + x (+x car la dcision est de fabriquer (x)exemplaires pendant le mois (m)
venir, do la valeur du nouvel tat.).
et une variation de la valeur prise par la fonction conomique (= laugmentation
supplmentaire du cot total (F) des fabrications, due la dcision prise. ).
Globalement limpact de la dcision (ou sa qualit ) est mesur par une fonction de retour
r
m
(E
m-1
, x) : cette fonction dpend de la phase (m), de ltat E
m-1
au moment de la prise
de dcision et de la dcision (x) qui a t prise.
Dans le cas prsent limpact de chaque dcision (modification de la fonction objectif) est mesur
par : r
m
(E
m-1
, x)= C[m, x]. Ici la fonction conomique sexprime par une somme de
fonctions de retour.
Cours Outils de Planification de Rseau
par Albert RATSIRANTO ESPA- I5TCO Programmation dynamique 3
5. Le mcanisme de prise de dcision respecte les principes de la programmation
dynamique indiqus au dbut de cette section : si on suppose quune certaine
dcision (= une valeur de (x)) est prise la phase (m) du processus de dcision alors les
tats futurs, partir de la phase (m+1), ne dpendent plus que de ltat aprs la
prise de dcision dans la phase (m) (une fois que la dcision de fabriquer (x) exemplaires est prise
pour le mois (m) alors il y aura E
m
= E
m-1
+ x exemplaires qui seront supposs avoir t fabriqus la fin
du mois (m). Les variations futures de la fonction conomique (= cot total des fabrications) ne dpendront
plus que des cots des exemplaires encore fabriquer, et dont la quantit sera dcide lors des phases
futures du processus de dcision (donc pour les mois suprieurs (m)), et non plus des exemplaires dj
dcids avant ou pendant la phase (m) en cours).
6. Et le processus de dcision doit maintenant se rpter. Pour la phase suivante,
concernant le mois (m + 1) : Faire m+1 m puis revenir au point n 2 du processus.
1.2 Problme du sac dos (knapsack) [2], [4]
Un alpiniste doit mettre des provisions dans son sac dos avant une ascension. Compte
tenu des contraintes lies son projet le poids de son sac dos ne doit pas dpasser P=12 kg ; de
plus il peut y mettre, par exemple, Q=4 types diffrents daliments prconiss par les rgles de
son mtier. Toutefois lalpiniste souhaite maximiser lapport nergtique du contenu de son sac
dos sachant que pour chaque type (i) daliment il en connat le poids P
i
(par exemple : si lalpiniste peut
prendre des conserves de sardines lhuile alors il sait quune boite de sardines lhuile pse A=0,125 kg) et lapport
nergtique par unit de poids E
i
(par exemple : une boite de sardines lhuile apporte E=6 000 calories/kg).
Problme rsoudre :
Lalpiniste doit choisir la quantit A
.
Maximiser F = A
=1
(Maximiser lapport nergtique total)
avec A
P
I
12
Q
=1
(le poids total ne doit pas dpasser 12 kg)
A
u ; A
-
, si elles existent, donnent la composition idale du sac dos qui
maximisera lapport nergtique des aliments quil contient tout en respectant la contrainte sur
le poids.
***
On pourrait procder comme suit pour rsoudre le problme.
A la phase (i) de son processus de dcision lalpiniste choisit les aliments du type (i).
1. chaque phase donne du processus de dcision (= au moment de dcider quelle quantit dun certain aliment
doit tre mise dans le sac dos) l tat E du problme est dfini comme suit : ltat E prend la valeur
(p) si le poids du sac dos de lalpiniste pse (p) .
2. A chaque phase (i) du processus de dcision lalpiniste choisit la quantit A
pour laliment n i.
Supposons que lalpiniste ait termin la phase (i-1) du processus de dcision. A ce moment
lalpiniste a donc dj choisi (i-1) aliments et ltat (=poids du sac dos avant la prise de dcision) est
E
I-1
=.
3. Lalpiniste doit prendre une dcision concernant la quantit A
de laliment n (i).
Cours Outils de Planification de Rseau
par Albert RATSIRANTO ESPA- I5TCO Programmation dynamique 4
4. Limpact de la dcision consiste en :
un changement dtat : E
. P
. E
. Ici aussi la
fonction conomique sexprime, comme au 1.1, par une somme de fonctions de retour.
5. Le mcanisme de prise de dcision respecte les principes de la programmation dynamique indiqus
au dbut de cette section : si on suppose quune dcision (choisir une quantit A
: E
= t
(E
-1
, X
) . Suivant le principe de la
programmation dynamique on suppose donc que les dcisions possibles, une phase (i) donne,
ne dpendent que de ltat E
-1
lentre de cette phase ;
Limpact de la prise dune dcision X
qui indique la
qualit de la dcision qui a t prise. La fonction de retour est une fonction variable relle dont
les paramtres sont ltat au moment de la prise de dcision et la dcision proprement dite :
r
(E
-1
, X
) (2.1)
***
Processus de dcision par phases signifie :
1. A la phase 1 une dcision est prise pour choisir un vecteur de dcision X
1
, do les diffrents tats
possibles E
1
la phase 1 : chaque vecteur de dcision, pour cette phase, mne de ltat initial
vers un certain tat de sortie E
1
;
2. A une phase (i) chaque dcision prise mne de ltat E
-1
, en vigueur au dbut de la phase (i), vers
diffrents tats de sortie E
;
3. chaque dcision envisage pendant la phase (i) se traduira par une transition, partir
de ltat E
-1
avant la prise de dcision, vers un nouvel tat (E
= t
(E
-1
, X
) qui
dpendra de ltat en cours E
-1
et de la dcision X
(E
-1
, X
, , X
q
) expriment la suite des dcisions prises
chaque phase alors on pourra exprimer la fonction conomique sous la forme suivante :
Z R[r
1
(E
0
, X
1
), r
2
(E
1
, X
2
), .. , r
(E
-1
, X
), . . , r
(E
q-1
, X
q
) ] (2.3)
Pour chaque phase (i) successive la fonction de transfert (cf. point 3 ci-dessus et 2.1) t
indiquent les diffrents tats qui sont obtenus chaque fois quune dcision X
est prise :
E
= t
(E
-1
, X
) i, i = 1,2,..,q
***
Si la fonction R est dcomposable (cf. 2.2) alors on pourra dcomposer R par rapport
sa premire variable, ce qui donne :
Z R
1
[r
1
(E
0
, X
1
), R'
1
| r
2
(E
1
, X
2
), .. , r
(E
-1
, X
), . . , r
(E
q-1
, X
q
) ]]
Par le thorme doptimalit on aura alors :
0PT
X
1
,X
2
,,X
i
,,X
q
Z = 0PT
X
1
R
1
[r
1
(E
0
, X
1
), 0PT R
i
1
| ]
X
2
,,X
i
,,X
q
] (2.4)
Loptimisation sur Q variables est alors simplifie en :
1. une optimisation sur (Q-1) variables (cest loptimisation de R), qui donne une valeur
Z2 ;
2. une optimisation de R
1
[*,Z2] o (cf. 2.4) R
1
est une fonction du seul vecteur X
1
car la
valeur Z2 prcdente y joue simplement le rle de paramtre.
Ainsi de suite : si R
i
1
est dcomposable en R
2
, R
i
2
on rpte de nouveau une
dcomposition telle que (2.4). A chaque fois la seconde optimisation en R porte sur un
nombre de variables infrieur dune unit au nombre de variables lors de la dcomposition
prcdente. A la Q-me dcomposition loptimisation portera uniquement sur la dernire
variable X
q
.
On obtiendra alors une nouvelle expression de (2.4) dans chaque optimisation ne
portera que sur une seule variable de dcision seulement:
0PT
X
1
,X
2
,,X
i
,,X
q
Z =
0PT
X
1
R
1
[r
1
(E
0
, X
1
), 0PT
X
2
R
2
|r
2
(E
1
, X
2
), , 0PT
X
q
R
q
|r
q
(E
q-1
, X
q
)]]]
]
avec les contraintes :
E
= t
(E
-1
, X
) i, i = 1,2,..,q
(2.5)
Cours Outils de Planification de Rseau
par Albert RATSIRANTO ESPA- I5TCO Programmation dynamique 8
2.4 Graphe de dcision et rsolution du problme
La partie la plus interne de (2.5) consiste chercher loptimum Z
q
de la dernire
fonction de retour R
q
, optimum chercher par rapport au dernier vecteur de dcision X
q
et de
ltat E
q-1
avant cette dernire dcision (ici cet tat sert seulement de paramtre pour la
fonction R
q
). On obtient donc Z
q
Z
q
(E
q-1
), optimum qui ne dpend plus de X
q
. Cet optimum
dpend plutt de E
q-2
et de la dcision X
q-1
qui sera prise partir de cet tat [ puisque E
q-1
=
t
q-1
(E
q-2
, X
q-1
)].
Ainsi, en traitant la prochaine optimisation trouver dans (2.5) on aura rsoudre :
0PT
X
q-1
R
q-1
|r
q-1
(E
q-2
, X
q-1
), Z
q
(E
q-1
)]
= 0PT
X
q-1
R
q-1
|r
q-1
(E
q-2
, X
q-1
), Z
q
(t
q-1
(E
q-2
, X
q-1
) )]
(2.6)
On voit que, de nouveau, ltat E
q-2
sert de paramtre dans le cadre de la recherche de
loptimisation : dans les deux termes de la fonction R
q-1
loptimisation chercher ne porte
finalement que sur la dcision X
q-1
.
En rptant cette dmarche pour les fonctions R
associe ltat (E)] permet datteindre un tat (E) suivant, avec la valeur
optimale Z
+1
(E
i
) associe cet tat (E): une telle dcision sera la prochaine dcision optimale
et ltat (E) quelle permet datteindre sera le prochain tat optimal.
Plus prcisment litration (i) il faudra rechercher X
tel que :
Z
= R
|r
(E
-1
-
, X
), Z
+1
(t
(E
-1
-
, X
) )]
*
* *
Cours Outils de Planification de Rseau
par Albert RATSIRANTO ESPA- I5TCO Programmation dynamique 9
Lexploitation pratique de la formule (2.5) se fait par lintermdiaire du graphe de
dcision du problme rsoudre.
Le graphe de dcision est construit de la manire suivante:
Les sommets reprsentent les tats du problme. Les sommets sont classs par niveau : chaque
niveau (i) on regroupe les sommets correspondants aux tats de sortie admissibles pour la phase
de dcision n (i) ;
Un arc traduit chaque fonction de transition entre tats. Considrons un nud qui reprsente un
tat possible E
u
lentre de la phase (i). Si une dcision X
[qui
sera connu par lintermdiaire de la fonction de transition : E
= t
(E
u
, X
) ]. Dans le graphe de
dcision on ajoutera donc un arc tat E
u
tat E
;
La valeur V associe chaque arc traduit limpact de la dcision X
(E
u
, X
).
***
A la dernire phase les vecteurs de dcision X
q
admissibles doivent, entre autres,
respecter la contrainte suivante : la dcision X
q
doit provoquer une transition, de ltat E
q-1
vers
un tat final qui est spcifi dans le cadre du problme rsoudre. Cette contrainte limite
donc fortement lespace des dcisions X
q
oJmissiblcs. Sur le graphe de dcision cela signifie
que les derniers arcs doivent aboutir ltat final .
***
Dans lvaluation de la fonction conomique la contribution des fonctions de retour se
fait par lintermdiaire des fonctions g et h de cette fonction conomique et on suppose que
cette fonction est dcomposable en (g,h).
Daprs la formulation des optimisations, telle que (2.6), on constate que loptimum est
toujours rechercher, en fonction des dcisions, en utilisant les valeurs dune fonction de
retour. Or daprs la construction du graphe de dcision cest la valeur de cette fonction de
retour, pour une dcision donne, qui est justement la valeur associe larc symbolisant la
dcision ; les sommets des arcs du graphe de dcision sont galement les sommets indiqus par
les fonctions de transfert.
Le graphe de dcision contient donc symboliquement la majeure partie des informations
relatives au problme traiter en utilisant la programmation dynamique. Cependant les critres
permettant de caractriser les oprations doptimisation ne figurent videmment pas dans le
graphe de dcision -en particulier la formulation de la fonction conomique, par rapport aux
fonctions de retour, telle quelle est faite en (2.3).
Dans le cas o la fonction conomique Z prend la forme dune combinaison linaire alors
le couple (g,h) associ Z induit la ralisation dadditions (cf. 2.2 Dfinition 2). Dans ces conditions
la composition des optima successifs, telle quelle est formule par (2.6) se traduira par une suite
dadditions de ces valeurs optimales le long des arcs du graphe de dcision. Par consquent la
formule (2.6) traduit simplement une recherche de chemins optimaux dans le graphe des
dcisions.
***
Il faudra donc identifier les arcs optimaux, au sens du couple de fonctions (g,h) associ
la fonction conomique et suivant loprateur OPT utiliser. Daprs la construction (2.6) cette
identification commence par le sommet tat final car cest cette optimisation qui est la partie
la plus interne de (2.6).
Cours Outils de Planification de Rseau
par Albert RATSIRANTO ESPA- I5TCO Programmation dynamique 10
Si la fonction conomique est une combinaison linaire et si OPT est une minimisation
alors il faudra identifier les arcs qui, en partant de ltat initial, aboutissent ltat final et sont
optimaux dans le sens des plus courts chemins.
Remarques
1. Le fait de regrouper les sommets par niveaux , correspondant aux phases des prises de dcision, facilite la mise en uvre
des algorithmes de recherche des chemins optimaux ainsi que lidentification des dcisions optimales.
2. On peut approfondir, et gnraliser linterprtation de la formule (2.6) par lintermdiaire des graphes (voir notamment dans
[2] le chapitre traitant de Algbre des chemins ).
Mise jour le 15/09/2010
Bibliographie succinte.
[1] R. FAURE: Prcis de recherche oprationnelle (1980) , ditions Dunod
[2] M. GONDRAN, M. MINOUX: Graphes et algorithmes (1979) , ditions Eyrolles
[3] M. MINOUX: Programmation mathmatique Thories et algorithmes (1987) , Collection
technique et scientifique des Tlcommunications, ditions Dunod
[4] J.L LAURIERE : lments de programmation dynamique (1979) , ditions Gauthier-Villars.