Vous êtes sur la page 1sur 108

Recherche Oprationnelle:

Programmation dynamique, chanes de Markov, files dattente

Cours de Tronc Commun Scientifique


FICM 2A
Notes de cours et exercices corrigs

Frdric S UR
sur@loria.fr
http://www.loria.fr/sur/enseignement/RO/

cole des Mines de Nancy

2013-2014
(version du 27 fvrier 2014)
Avertissement. Ce document est constitu de notes de cours qui contiennent vraisem-
blablement des coquilles et erreurs. Merci de bien vouloir me les signaler.
Il sagit dun rsum trs condens de notions dont ltude approfondie ncessiterait
bien plus de temps. On essaie ici de donner les lments simplifis, mais autant que pos-
sible rigoureux, de la thorie qui permettent daller au del de lapplication de formules.
Nhsitez pas consulter la littrature ddie.
Table des matires

1 La programmation dynamique 7
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.1 Un problme de plus court chemin . . . . . . . . . . . . . . . . 7
1.1.2 Principe doptimalit de Bellman . . . . . . . . . . . . . . . . 8
1.2 Lquation de Bellman . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Un systme dynamique . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 quation de Bellman et principe doptimalit . . . . . . . . . . 9
1.2.3 Un exemple de recherche de plus courts chemins . . . . . . . . 10
1.2.4 La rsolution dune quation de Bellman vue comme une re-
cherche de plus courts chemins . . . . . . . . . . . . . . . . . . 10
1.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.1 La distance ddition . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2 Problme de location de skis . . . . . . . . . . . . . . . . . . . 14
1.3.3 quilibrage de charge sur deux machines en parallle . . . . . . 15
1.3.4 Un problme dconomie mathmatique . . . . . . . . . . . . . 15
1.3.5 Gestion de stock . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.6 Problme du sac dos . . . . . . . . . . . . . . . . . . . . . . 17

2 Les chanes de Markov 19


2.1 Exemple introductif . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Vocabulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.1 Dfinitions et premires proprits . . . . . . . . . . . . . . . . 21
2.2.2 Reprsentation graphique des chanes de Markov . . . . . . . . 22
2.2.3 Chanes rductibles et irrductibles . . . . . . . . . . . . . . . 24
2.2.4 Chanes priodiques et apriodiques . . . . . . . . . . . . . . . 26
2.3 Comportement asymptotique des chanes ergodiques . . . . . . . . . . 27
2.4 Le thorme des coupes . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Comportement asymptotique des chanes absorbantes . . . . . . . . . . 32
2.6 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.6.1 Lanatomie dun moteur de recherche (examen 2010-2011) . . . 35
2.6.2 Modle conomique de Leontief (examen 2011-2012) . . . . . 36

3
TABLE DES MATIRES 4

2.6.3 Problme de la ruine du joueur (examen 2013-2014) . . . . . . 37

3 Les files dattentes 39


3.1 Rappels : loi de Poisson et loi exponentielle . . . . . . . . . . . . . . . 39
3.2 Caractristiques dun systme dattente . . . . . . . . . . . . . . . . . 40
3.3 La formule de Little . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.4 Processus de Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4.1 Processus de Poisson . . . . . . . . . . . . . . . . . . . . . . . 44
3.5 Modlisation dans le cadre Markovien . . . . . . . . . . . . . . . . . . 47
3.5.1 La proprit PASTA . . . . . . . . . . . . . . . . . . . . . . . 47
3.5.2 Les clients et les serveurs sont sans mmoire . . . . . . . . . . 48
3.5.3 Les files dattente M/M/1 . . . . . . . . . . . . . . . . . . . . . 50
3.5.4 Processus de naissance et de mort . . . . . . . . . . . . . . . . 55
3.6 Formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.6.1 File M/M/1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.6.2 File M/M/1/K . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.6.3 File M/M/m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.6.4 File M/M/m/m . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.7 Les files M/G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.7.1 Processus de Markov par lot . . . . . . . . . . . . . . . . . . . 60
3.7.2 File M/G/1 gnrale . . . . . . . . . . . . . . . . . . . . . . . 61
3.8 Rseaux de files dattente . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.9 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.9.1 Paradoxe de lautobus . . . . . . . . . . . . . . . . . . . . . . 67
3.9.2 Dimensionnement dun service-client . . . . . . . . . . . . . . 67
3.9.3 Vlos en libre service (rattrapage 2010-2011) . . . . . . . . . . 67
3.9.4 Chez le mdecin (examen 2010-2011) . . . . . . . . . . . . . . 68
3.9.5 Un serveur informatique (rattrapage 2011-2012) . . . . . . . . 68
3.9.6 Problme de maintenance informatique (examen 2010-2011) . . 69
3.9.7 tude dune file M/G/1 (examen 2010-2011) . . . . . . . . . . 69
3.9.8 Maintenance dun systme industriel critique (examen 2011-2012) 70
3.9.9 Approvisionnement et gestion dun stock (examen 2013-2014) . 72
3.9.10 Un guichet avec des clients prioritaires (rattrapage 2013-2014) . 73

4 Correction des exercices 75


4.1 La programmation dynamique . . . . . . . . . . . . . . . . . . . . . . 76
4.1.1 La distance ddition . . . . . . . . . . . . . . . . . . . . . . . 76
4.1.2 Problme de location de skis . . . . . . . . . . . . . . . . . . . 78
4.1.3 quilibrage de charge sur deux machines en parallle . . . . . . 79
4.1.4 Un problme dconomie mathmatique . . . . . . . . . . . . . 81
4.1.5 Gestion de stock . . . . . . . . . . . . . . . . . . . . . . . . . 83

F. Sur 2013-2014
5 TABLE DES MATIRES

4.1.6 Problme du sac dos . . . . . . . . . . . . . . . . . . . . . . 84


4.2 Les chanes de Markov . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.2.1 Lanatomie dun moteur de recherche . . . . . . . . . . . . . . 86
4.2.2 Modle conomique de Leontief . . . . . . . . . . . . . . . . . 87
4.2.3 Problme de la ruine du joueur . . . . . . . . . . . . . . . . . . 89
4.3 Les files dattente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.1 Paradoxe de lautobus . . . . . . . . . . . . . . . . . . . . . . 92
4.3.2 Dimensionnement dun service-client . . . . . . . . . . . . . . 93
4.3.3 Vlos en libre service . . . . . . . . . . . . . . . . . . . . . . . 94
4.3.4 Chez le mdecin . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.3.5 Un serveur informatique . . . . . . . . . . . . . . . . . . . . . 96
4.3.6 Problme de maintenance informatique . . . . . . . . . . . . . 97
4.3.7 tude dune file M/G/1 . . . . . . . . . . . . . . . . . . . . . . 98
4.3.8 Maintenance dun systme industriel critique . . . . . . . . . . 100
4.3.9 Approvisionnement et gestion dun stock . . . . . . . . . . . . 103
4.3.10 Un guichet avec des clients prioritaires . . . . . . . . . . . . . 104

Recherche Oprationnelle
TABLE DES MATIRES 6

F. Sur 2013-2014
Chapitre 1

La programmation dynamique

1.1 Introduction
1.1.1 Un problme de plus court chemin
On considre le problme du plus court chemin dans un graphe orient et valu,
dfini sur un ensemble de n sommets {1, 2, . . . n}. Si les valuations sont positives, lal-
gorithme de Dijkstra permet de trouver le plus court chemin (i.e. le chemin de valuation
totale minimale) entre deux sommets.
Dans le cas o les valuations peuvent tre ngatives et o le graphe ne prsente
pas de circuit de valuation totale ngative, nous allons prsenter lalgorithme de Floyd-
Warshall qui rpond la question.
Notons d(i, j) la valuation de larc (i, j), et (pour k > 1) dki,j la longueur du plus
court chemin du sommet i au sommet j parmi ceux parcourant uniquement les som-
mets {1, 2, . . . k}. Par convention on suppose aussi :
 k
di,j = + sil ny a pas de chemin de i j
d0i,j = d(i, j)

Le but est de construire un algorithme permettant de calculer les dni,j .


On remarque la proprit suivante.

Proposition 1.1 Soit k tel que 0 6 k 6 n 1. Les (dk+1 k


i,j )i,j sont lis aux (di,j )i,j par la
formule de rcursion :

(i, j) {1, 2, . . . n}2 , dk+1


 k k k

i,j = min di,j , di,k+1 + dk+1,j

Dmonstration. En effet, si on considre deux sommets i et j :


soit le plus court chemin entre i et j parmi ceux visitant {1, . . . , k + 1} ne passe pas par
le sommet k + 1, et alors dk+1 k
i,j = di,j ;

7
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 8

soit ce plus court chemin passe par le sommet k + 1. Dans ce cas il ne peut y passer
quune seule fois (sinon il y a un circuit, de valuation totale positive par hypothse sur le
graphe, que lon pourrait liminer pour construire un chemin entre i et j plus court, ce
qui serait absurde). Ce plus court chemin est donc la concatnation du plus court chemin
entre i et k + 1 et du plus court chemin entre k + 1 et j, parmi ceux visitant les sommets
intermdiaires {1, . . . , k} uniquement. On a alors : dk+1 k k
i,j = di,k+1 + dk+1,j .


Lalgorithme de Floyd-Warshall (-Roy) (1962) consiste calculer les (d1i,j )i,j (en
O(n2 ) oprations, car il y a n2 paires de sommets (i, j)), puis les (d2i,j )i,j (O(n2 )
oprations), . . ., et finalement les (dni,j )i,j (toujours O(n2 ) oprations) qui donnent les
longueurs de plus courts chemines cherches.
La complexit totale de lalgorithme est de O(n3 ).

1.1.2 Principe doptimalit de Bellman


Dans le problme prcdent, pour trouver les chemins minimaux sur le graphe, on a
rsolu des problmes plus petits : trouver les chemins minimaux sur des graphes
k < n sommets. Cette astuce est possible lorsque le problme doptimisation vrifie le
principe doptimalit de Bellman : une solution optimale pour le problme contient les
solutions optimales pour tous les sous-problmes.
Ici, le plus court chemin entre les sommets i et j est la concatnation, pour tout
sommet intermdiaire k sur ce chemin, du plus court chemin entre i et k et du plus court
chemin entre k et j.
La programmation dynamique consiste rsoudre les problmes doptimisation sat-
isfaisant le principe doptimalit de Bellman en tirant partie dune formule rcursive.
Lalgorithme de Floyd-Warshall est donc de ce point de vue bas sur la programmation
dynamique.

1.2 Lquation de Bellman


Il se trouve quune classe gnrale de problmes doptimisation satisfait le principe
doptimalit de Bellman. Il sagit de problmes dont la fonctionnelle satisfait lquation
de Bellman.

1.2.1 Un systme dynamique


Considrons un systme dynamique , suppos ici temps discret et horizon fini T ,
dont ltat linstant t (0 6 t 6 T ) est repr par xt (valeur scalaire ou vecteur de Rd ).

F. Sur 2013-2014
9 1.2. LQUATION DE BELLMAN

Soit (xt ) lensemble des actions possibles lorsque le systme est dans ltat xt . Si
laction at (xt ) est choisie, le systme passe ltat xt+1 = (xt , at ).
Notons galement F (xt , at ) le cot de laction at lorsque le systme est dans l-
tat xt .
Partant de ltat initial x0 , le cot global aprs T pas de temps est alors :
T
X
F (xt , at )
t=0

Minimiser le profit global revient rsoudre lquation de Bellman :


( T )
X
min F (xt , at ), t.q. 0 6 t 6 T, at (xt ) et 0 6 t < T, xt+1 = (xt , at )
a0 ,...,aT
t=0

Notons PT (x) la valeur du cot minimal obtenu en arrivant ltat x aprs T tapes, par-
tant de ltat x0 . Lquation prcdente donne la valeur de PT (xT +1 ) (aprs la dernire
dcision aT le systme arrive ltat xT +1 auquel aucun cot nest associ).
Rsoudre lquation de Bellman consiste choisir les actions at guidant le systme
chaque pas de temps parmi celles possibles de manire minimiser le cot global.

1.2.2 quation de Bellman et principe doptimalit


Ce problme de minimisation peut aussi scrire pour tout tat final x :
PT (x) = min {PT 1 (y) + F (y, a)}
a(y) t.q. x=(y,a)

o PT 1 (y) dsigne le cot minimal ralisable en T 1 tapes menant ltat y.


Autrement dit, lquation de Bellman satisfait le principe doptimalit de Bellman.
La stratgie optimale en T tapes arrivant en x linstant T et passant par y lin-
stant T 1 contient la stratgie optimale arrivant en y en T 1 tapes.
On peut donc utiliser la programmation dynamique pour rsoudre ce problme 1 .
Pour ce faire, on suppose connatre les P0 (x) pour toutes les valeurs de x possibles.
On calcule alors pour tous les x possibles :
P1 (x) = min {P0 (y) + F (y, a)}
a(y) t.q. x=(y,a)

(cette optimisation nest pas forcment vidente en pratique, si par exemple (y) nest
pas un ensemble fini, comme dans lexercice 1.3.4), puis on calcule P2 (x),. . .jusquaux PT (x)
qui sont les valeurs qui nous intressent. La succession des choix a0 , a1 , . . . , aT donne
la stratgie optimale.
1. Il semble que certains auteurs rservent lappellation programmation dynamique la rsolution
dquations de Bellman, rgissant justement un systme dynamique.

Recherche Oprationnelle
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 10

1.2.3 Un exemple de recherche de plus courts chemins


Considrons le problme des plus courts chemins partant dun sommet s0 , dans un
graphe G orient sans circuit mais dont les valuations d(x, y) peuvent tre ngatives.
Soit dT (s) la longueur du plus court chemin obtenu en T tapes arrivant en s. Alors :
( T )
X
dT (sT ) = min d(st1 , st ) 1 6 t 6 T, st G(st1 )
s1 ,...,sT
t=1

o G(s) dsigne lensemble des successeurs dun sommet s du graphe G.


On reconnat lquation de Bellman. Le systme dynamique correspondant est le
parcours dun graphe partant du sommet s0 , et on cherche minimiser la valuation to-
tale dT (s). Laction prendre quand on est un tat y permet daboutir un successeur x
de y avec un cot d(x, y).
Le problme peut donc se rsoudre par la programmation dynamique en rsolvant
de manire rcursive :

dT (x) = min {d(x, y) + dT 1 (y)}


yG1 (x)

et on cherche dT (s0 ) ; comme le graphe na pas de circuit on peut se limiter T 6 n.


Lalgorithme correspondant consiste appliquer cette formule de rcursion avec
linitialisation : d0 (s0 ) = 0 et d0 (u) = + si u 6= s0 .
La longueur du plus court chemin partant de s0 et arrivant un sommet u est donne
par min0tn dt (u).
Cette ide est la base de lalgorithme de Bellman-Ford permettant de trouver la
longueur du plus court chemin entre un sommet donn et tout autre sommet dun graphe
valu.

1.2.4 La rsolution dune quation de Bellman vue comme une re-


cherche de plus courts chemins
Lexemple prcdent montre quon peut voir un problme de recherche de plus
courts chemins dans un graphe (sans circuit) comme la rsolution dune quation de
Bellman par programmation dynamique.
Rciproquement, lorsque lensemble (x) des actions possibles depuis un tat donn x
est fini, la rsolution de lquation de Bellman dcrite dans la section 1.2.1 peut tre vue
comme la recherche dun plus court chemin dans un graphe. Ce graphe est constitu au
niveau 0 de ltat de dpart x0 , au niveau 1 des tats possibles pour x1 (cest--dire les
valeurs dcrites par (x0 , a) lorsque a (x0 )), au niveau 2 des tats possibles pour x2
(les valeurs dcrites par (x1 , a) lorsque a (x1 ) o x1 est un des tats possibles
t = 1), etc., jusquau niveau T + 1 constitu du seul tat terminal du systme xT +1 . Il y

F. Sur 2013-2014
11 1.2. LQUATION DE BELLMAN

a un arc entre xt et xt1 sil existe a (xt1 ) tel que xt = (xt1 , a) (i.e. une action
permise dans ltat xt1 menant ltat xt ), et cet arc est valu par F (xt1 , a).
La programmation dynamique revient alors chercher le plus court chemin de x0
xT +1 , et la politique optimale est obtenue par propagation arrire (ou backtracking).
Un tel graphe est illustr sur la figure 1.1.
Comme on peut le voir sur certains exemples (comme le problme du voyageur de
commerce vu en cours), ce graphe peut devenir norme relativement au niveau maxi-
mum T + 1.
Remarquons quune quation de Bellman formule en max correspond la re-
cherche dun plus long chemin dans le graphe associ.

t=0 t=1 t=2 t=T=3 t=4

F IGURE 1.1 La rsolution de lquation de Bellman discrte vue comme une recherche
de plus court chemin, le niveau t du graphe tant constitu des tats possibles pour le
systme linstant t. Dans cet exemple, certains tats xt sont tels que (xt ) = (les
sommets correspondants nont pas de successeurs), et certains tats peuvent tre atteints
par diffrentes suites dactions (les sommets correspondants ont plusieurs antcdents).

Recherche Oprationnelle
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 12

F. Sur 2013-2014
13 1.3. EXERCICES

1.3 Exercices
1.3.1 La distance ddition
. . .aussi appele distance de Levenshtein.
Soient x et y deux mots sur un alphabet, de longueurs respectives m et n.
On note d(x, y) le nombre minimal dinsertions ou de suppressions de caractres
pour passer de x y. Lentier d(x, y) est appel distance ddition entre les mots x et y.
Par exemple, on peut passer de mines mimes des deux manires suivantes :
mines mies (suppression) mimes (insertion)
mines mins (suppression) mimns (insertion) mimens (insertion)
mimes (suppression)
La premire solution ncessite 2 insertions/suppressions, la seconde 4.
Dans cet exemple, d(mines,mimes) = 2.

Questions.

1. Montrez que d tablit bien une distance entre mots.


2. Montrez que |m n| 6 d(x, y) 6 m + n.
3. Pour i {0, 1, 2, . . . , m} et j {0, 1, 2, . . . , n}, on note xi et yj les prfixes de x
et y de longueurs respectives i et j, avec la convention x0 = y0 = , o est le
mot vide.
Quelles sont les valeurs de d(xi , y0 ) et d(x0 , yj ) ?
4. Soient i {1, . . . , m} et j {1, . . . , n}. Montrez que :

d(xi , yj ) = min d(xi1 , yj1 ) + 2 i,j , d(xi1 , yj ) + 1, d(xi , yj1 ) + 1 , (1.1)

o i,j vaut 0 si la i-me lettre de x et la j-me lettre de y sont identiques, et 1


sinon.
5. Estimez la complexit de lalgorithme rcursif implmentant directement
lquation (1.1). On pourra raisonner sur deux mots de mme longueur n.
Remarquez que dans cet algorithme les mmes calculs sont faits plusieurs fois.
6. Dduisez de lquation (1.1) un algorithme de calcul de d(x, y) tel que le nombre
doprations et loccupation mmoire soient en O(mn).
7. Calculez d(ingenieur, igneneur).
8. Trouvez une suite doprations ralisant le nombre minimal doprations dans le
cas prcdent.

Recherche Oprationnelle
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 14

Remarque : On dfinit aussi la distance ddition comme le nombre minimal dinser-


tions, suppressions ou substitutions (ces dernires sont bien sr possibles dans le cadre
de lnonc, mais cotent ici 2 oprations). On peut aussi donner des cots diffrents
chaque opration. Le principe de la rsolution par programmation dynamique reste le
mme.
La distance ddition est utilise dans de nombreux contextes (par exemple les cor-
recteurs dorthographe des logiciels de traitement de texte). Une variante est galement
utilise dans les problmes dalignement de gnomes en biologie molculaire.

1.3.2 Problme de location de skis


On cherche attribuer m paires de skis (de longueurs l1 , l2 , . . . , lm ) n skieurs (de
tailles t1 , t2 , . . . , tn ), de manire minimiser la somme des diffrences entre la longueur
des skis et la taille des skieurs.
Bien sr, n 6 m.
On suppose sans perte de gnralit que les li et les ti sont classs par ordre croissant.
Le problme consiste trouver une fonction (dallocation) a telle que le skieur no i
se voit attribuer la paire de skis no a(i) et qui minimise :
n
X
ti la(i)
i=1

La mme paire de skis nest pas attribue deux skieurs, donc la fonction a est
injective.

Questions.

1. Montrez que loptimum est atteint par une fonction a croissante. On supposera
donc que laffectation des skis des i premiers skieurs se fait parmi les j premires
paires de skis.
2. Soit Si,j le minimum de la fonction-objectif du problme restreint aux i premiers
skieurs et j premires paires de skis.
Montrez que

S(i, j) = min S(i, j 1), S(i 1, j 1) + |ti lj | .

3. Comment procderiez-vous pour calculer la solution optimale ?


4. Quelle est la complexit de cet algorithme ?

F. Sur 2013-2014
15 1.3. EXERCICES

1.3.3 quilibrage de charge sur deux machines en parallle


On considre deux machines (par exemple des machines industrielles, mais aussi
des processeurs) sur lesquelles sont excutes n tches de dures t1 , t2 , . . . tn .
On souhaite rpartir les tches sur chacune des machines de manire ce quelles
sarrtent au plus tt.

Questions.
1. Justifiez que le but est de partitionner lensemble des n tches en deux sous-
ensembles A1 et A2 , lun sexcutant sur la machine 1, lautre sur la machine 2,
tels que !
X X
DT (A1 , A2 ) = max ti , ti
iA1 iA2

soit minimum.
2. Notons minDT(k, T ) le temps darrt minimal ralisable en plaant les n k
dernires tches, lorsque lon impose 1) que les k premires tches ont t r-
parties sur les deux machines (pas forcment de manire optimale) et 2) que la
diffrence (absolue) entre les temps darrt des machines 1 et 2 est T > 0 si on
considre uniquement les k premires tches.
Que vaut minDT(n, T ) ?
tablissez une formule de rcurrence (ascendante en k) sur minDT.
3. Application numrique :
k 1 2 3 4
tk 1 2 2 6
Quel est lordonnancement optimal ?

1.3.4 Un problme dconomie mathmatique


Lexercice qui suit est un classique de lconomie mathmatique, dont on trouve
diffrentes variantes dans la littrature.
On suppose quun individu vivant uniquement de ses rentes dispose dun capital k0 .
On voudrait optimiser sa stratgie de consommation au cours de sa vie sur la pri-
ode 0, 1, 2, . . . , T , sous lhypothse quil ne souhaite rien lguer sa mort.
Le taux dactualisation du capital (permettant de tenir compte de linflation et du
rendement du placement du capital) sur une priode de temps est de x, suppos constant.
On notera = 1 + x.
On note kt le capital linstant t, et ct la consommation (les dpenses) de lindividu
pendant lintervalle [t, t + 1]. On a donc : kt+1 = kt ct .

Recherche Oprationnelle
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 16

On suppose classiquement que lutilit de la consommation ct est mesure par :


log(ct ) et que lindividu cherche maximiser lutilit globale :
T
X
bt log(ct )
t=0

avec 0 < b < 1 une mesure de la patience consommer : si b est proche de 1 lindividu
est patient car les bt sont tous proches de 1 et donnent approximativement le mme poids
aux log(ct ) alors que si b est petit lindividu est impatient : les bt dcroissent rapidement
et les consommations aux instants t petits ont le plus gros poids. (On pourrait normaliser
lutilit globale par (1b)/(1bT +1 ) de manire utiliser une pondration de somme 1,
ce qui ne change rien la suite)
Le butPde cet exercice est de chercher la stratgie de consommation (les ct ) qui
maximise Tt=0 bt log(ct ) sous contrainte t {0, . . . T }, kt+1 = kt ct > 0.

Questions.
1. Soit {0, . . . , T }, k le capital restant linstant , et U (k ) lutilit maximale
du capital restant linstant :
( T )
X
U (k ) = max bt log(ct ) t.q. t {, . . . , T }, kt ct > 0 .
(ct )t{,...,T }
t=

Montrez que U (k ) = maxc log(c ) + b U +1 (k +1 ) t.q. k c > 0 .
2. tendons le problme en notant pour tout et pour tout k, U (k) lutilit maxi-
male dun capital restant de k linstant . Soit c (k) la consommation permettant
datteindre le maximum U (k) lorsquon connat U +1 (k) pour toute valeur de k.
On fait lhypothse que : k, UT +1 (k) = 0 (il ny a pas dutilit garder un
capital aprs sa mort).
Dmontrez que : cT (k) = k et UT (k) = log(k) + log().
3. Enfin, dmontrez que quel que soient k et {0, . . . , T },
k
cT (k) = P .
t=0 bt
Commentez la politique optimale de consommation.

1.3.5 Gestion de stock


On cherche grer le stock dun produit unique sur n units de temps.
On note :

F. Sur 2013-2014
17 1.3. EXERCICES

xk le nombre dunits disponibles en dbut de priode k.


uk le nombre dunits commandes (reues immdiatement) en dbut de priode k
wk le nombre dunits demandes par le client en dbut de priode k.
On suppose que les demandes sont connues (par un historique par exemple), et que le
stock a une capacit maximale C. Si une demande ne peut tre satisfaite, une pnalit
doit tre paye mais le client se tourne vers un autre fournisseur.
Les cots associs sont :
cot de rapprovisionnement : c(uk ) = K uk + c uk , o K est le cot fixe de
commande ((uk ) = 1 si uk > 0, 0 sinon) et c le cot unitaire de commande ;
cot de gestion du stock : r(xk , uk , wk ) = h max(xk + uk wk , 0) p min(xk +
uk wk , 0), o r est le cot unitaire de stockage et p le cot des pnalits en-
tranes par une pnurie.
On cherche dterminer les commandes uk de manire minimiser les cots. On
veut un stock nul la fin des n units de temps.
Question.
Montrez que ce problme doptimisation satisfait le principe de Bellman en crivant
la formule de rcurrence adquate.

1.3.6 Problme du sac dos


. . .ou knapsack problem dans la littrature anglo-saxonne.
On sintresse au problme du sac dos (sans rptition) : tant donne une liste
de n objets de poids p1 , . . . , pn et de valeur v1 , . . . vn , comment remplir un sac dos
pouvant contenir un poids dau plus P de manire maximiser la valeur emporte ?
Application numrique : trouvez la composition de valeur maximale dun sac dos
de capacit P = 5, connaissant la liste des objets avec leur poids et valeur :
j 1 2 3 4
pj 2 1 2 3
vj 3 2 1 4

Recherche Oprationnelle
CHAPITRE 1. LA PROGRAMMATION DYNAMIQUE 18

F. Sur 2013-2014
Chapitre 2

Les chanes de Markov

Les principaux rsultats que vous avez vus dans les cours de probabilit / statistique
antrieurs ont trait des processus stochastiques ralisations indpendantes (par ex-
emple loi des grands nombres, thorme de la limite centrale). Les chanes de Markov
permettent de modliser des processus dans lesquels une ralisation dpend de la rali-
sation prcdente.

2.1 Exemple introductif


Lobservation du ciel a permis de dduire les statistiques suivantes :
une journe ensoleille est suivie dune journe ensoleille avec une probabil-
it 0, 9,
une journe ensoleille est suivie dune journe pluvieuse avec une probabil-
it 0, 1,
une journe pluvieuse est suivie dune journe ensoleille avec une probabil-
it 0, 5,
une journe pluvieuse est suivie dune journe pluvieuse avec une probabilit 0, 5.
En introduisant la suite de variables alatoires (Xn )nN reprsentant ltat du ciel (S
pour soleil ou P pour pluie) la date n > 0, on peut crire les probabilits condition-
nelles : 
Pr Xn+1 = S | Xn = S = 0, 9
Pr Xn+1 = P | Xn = S = 0, 1
Pr Xn+1 = S | Xn = P = 0, 5
Pr Xn+1 = P | Xn = P = 0, 5
Naturellement :
 
Pr Xn+1 = S | Xn = S + Pr Xn+1 = P | Xn = S = 1

19
CHAPITRE 2. LES CHANES DE MARKOV 20

et :  
Pr Xn+1 = S | Xn = P + Pr Xn+1 = P | Xn = P = 1.

Si on sintresse lvolution de ltat du ciel au fil du temps, on peut reprsenter le


phnomne par le graphe suivant.

% 0.5 x
0,9 Sr 2P 0,5
0,1

Par exemple lorsque lon est ltat Soleil, avec une probabilit 0,9 on reste dans cet
tat, et on va vers ltat Pluie avec une probabilit 0,1. Do lappellation probabilits
de transition pour les probabilits conditionnelles ci-dessus.
Notons P la matrice dordre 2 (appele matrice de transition) :
 
0, 9 0, 1
P=
0, 5 0, 5

et intressons-nous la distribution n de Xn , dfinie par :



n = Pr(Xn = S) , Pr(Xn = P) .

On calcule avec la formule des probabilits totales :

Pr(Xn+1 = S) = Pr(Xn+1 = S et Xn = S) + Pr(Xn+1 = S et Xn = P)


= Pr(Xn = S) Pr(Xn+1 = S | Xn = S) +
Pr(Xn = P) Pr(Xn+1 = S | Xn = P)

Et de mme :
Pr(Xn+1 = P) = Pr(Xn = S) Pr(Xn+1 = P | Xn = S) +
Pr(Xn = P) Pr(Xn+1 = P | Xn = P)

Sous forme matricielle cela se rsume en :

n+1 = n P

(remarquons quil sagit du produit gauche de P par la matrice ligne n )


Par rcurrence immdiate on peut crire :

n N, n = 0 Pn .

Lessentiel de ce chapitre sera consacr des questions de convergence, comme :

F. Sur 2013-2014
21 2.2. VOCABULAIRE

1. la suite (n ) converge-t-elle ? (si oui, vers une distribution de probabilit que


lon qualifiera de stationnaire car vrifiant = P)
2. si oui quelle condition ?
3. la limite ventuelle dpend-elle de ltat initial 0 ?
Le thorme ergodique nous permettra, connaissant la distribution stationnaire
(si celle-ci est unique), de donner la proportion moyenne de journes de beau temps sur
un grand intervalle de temps.

2.2 Vocabulaire
2.2.1 Dfinitions et premires proprits
Dfinition 2.1 Soit E un ensemble fini ou dnombrable dtats. Une suite de variables
alatoires (Xn )nN valeurs dans E telle que :

Pr(Xn+1 = j | X0 = i0 , . . . , Xn1 = in1 , Xn = i) = Pr(Xn+1 = j | Xn = i)

est une chane de Markov.

Autrement dit, une chane de Markov est un processus dont la mmoire une pro-
fondeur de 1 : Xn ne dpend que de Xn1 .

Dfinition 2.2 Pr(Xn+1 = j | Xn = i) = pn (i, j) est la probabilit de transition de


ltat i ltat j entre les tapes n et n + 1.

Lensemble des probabilits de transition entre tats caractrise la chane de Markov.


Dans la suite (et sauf indication du contraire) on supposera :
1. pn (i, j) ne dpend pas de n : la chane de Markov est dite homogne ;
2. lensemble dtats E est fini, de cardinal not m.
Ces hypothses permettent de dfinir la matrice de transition.

Dfinition 2.3 Pour une chane de Markov homogne tats finis, on appelle la matrice
P = (pi,j ) matrice de transition.

La matrice de transition est de taille m m. Nous allons tablir quelques proprits


lmentaires de cette matrice. Notons, quelque soit n N, n la distribution de proba-
bilit de Xn .

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 22

Proposition 2.1 Avec les notations prcdentes :


la somme des lments de toute ligne de P vaut 1 (on dit que P est une matrice
stochastique).
n N , n = n1 P = 0 Pn .
n N, pni,j = Pr(Xt+n = j | Xt = i), o pni,j dsigne llment en ligne i et
colonne j de la matrice Pn . 1 Il sagit des quations de Chapman-Kolmogorov.

Dmonstration.
Pm Le point 1 vient du fait que la somme des lments de la ligne i est par dfinition
j=1 Pr(X n+1 = j | Xn = i) = 1.
La dmonstration du point 2 se fait comme dans lexemple introductif.
Pour ce qui est du point 3, la dmonstration se fait par rcurrence sur n, avec :
m
X
pn+1
i,j = pi,k pnk,j
k=1
m
X
= Pr(Xt+1 = k | Xt = i) Pr(Xt0 +n = j | Xt0 = k)
k=1
m
X
= Pr(X1 = k | X0 = i) Pr(Xn+1 = j | X1 = k)
k=1
Xm
= Pr(X1 = k | X0 = i) Pr(Xn+1 = j | X1 = k et X0 = i)
k=1
Xm
= Pr(Xn+1 = j et X1 = k | X0 = i)
k=1
= Pr(Xn+1 = j | X0 = i)

En effet, la chane de Markov tant homogne, on peut donner toute valeur t et t0 dans ce qui
prcde (ligne 3), ensuite on utilise la proprit de Markov (dfinition 2.1) la ligne 4, puis la
formule des probabilits totales (ligne 5 et 6). 

2.2.2 Reprsentation graphique des chanes de Markov


Une chane de Markov homogne ensemble dtats E peut tre reprsente par la
graphe orient valu G tel que :
ses sommets sont les tats de E,
il y a un arc du sommet i vers le sommet j si pi,j > 0,
la valuation de larc i j est la probabilit de transition pi,j .
1. Attention, il ne sagit pas de pi,j la puissance n , mais bien de llment en ligne i et colonne j
de Pn , la matrice puissance n-me de P.

F. Sur 2013-2014
23 2.2. VOCABULAIRE

Une chane de Markov peut alors tre vue comme une marche alatoire sur le
graphe G : on tire alatoirement x0 ralisation de X0 selon la loi 0 , puis de x0 on
tire x1 (ralisation de X1 ) selon les probabilits de transition des arcs issus de x0 , etc.

Exemple 1.
Considrons la chane de Markov valeurs dans E = {1, 2, 3, 4, 5}, de matrice de
transition :
0, 5 0 0, 5 0 0
0, 25 0, 5 0, 25 0 0

P = 0, 4
0 0, 6 0 0
0 0 0 0, 9 0, 1
0 0 0 0, 5 0, 5
Elle est reprsente par le graphe G suivant :

0,5 0,9

 
K
s 2 KKK
s 4X
sss KK
sss KK
KK
0,25 sss KK0,25
ss KK
s KK 0,1 0,5
sss KK
ss 0,4 KK
ss KK
s KK 
ytss %
9 43e
1 F5
0,5 0,6

0,5 0,5

Dans cet exemple, une ralisation de la chane de Markov pourra prendre les valeurs
des tats 1,2,3, ou 4,5, car le graphe nest pas connexe.

Exemple 2.
La chane de Markov prenant ses valeurs dans {1, 2, 3, 4, 5, 6} et dont la matrice de
transition est :
0 0, 8 0 0 0 0, 2
0, 4 0 0, 6 0 0 0

0 0, 2 0 0, 8 0 0
P=
0 0 0, 9 0 0, 1 0

0 0 0 0, 75 0 0, 25
0, 25 0 0 0 0, 75 0
est reprsente par le graphe suivant :

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 24

0.4 0,2
q 12q 13
1S S
0,8 0,6

0,2 0,25 0,8 0,9

 0,25 0,1 
6q 15q 14
0,75 0,75

Nous reviendrons sur ces deux exemples dans la suite de ce chapitre.

2.2.3 Chanes rductibles et irrductibles


Dfinition 2.4 Une chane de Markov est dite irrductible si chaque tat est accessible
partir de chaque autre tat en un nombre fini dtapes. Avec la proposition 2.1, cela
se traduit par :
(i, j) E E, n N, pni,j > 0.

On peut montrer que la relation ltat i est accessible partir de j et ltat j est
accessible partir de i dfinit une relation dquivalence sur lensemble des tats E.
Les classes dquivalences de cette relation sont les composantes fortement connexes du
graphe orient G.
Par dfinition, un graphe reprsentant une chane de Markov irrductible est forte-
ment connexe (il ne prsente quune seule classe dquivalence).

Dfinition 2.5 Si une chane de Markov nest pas irrductible, alors elle est dite r-
ductible et G admet plusieurs composantes fortement connexes.
Une composante qui ne mne aucune autre est dite finale, sinon les tats qui la
composent sont dits transients (ou transitoires).

Remarquons quune fois quon a quitt une classe tats transients, on ne peut pas
y retourner (par dfinition de la classe dquivalence).
Considrons une chane de Markov possdant m n tats transitoires, et n tats
rpartis dans k composantes finales C1 , C2 , . . . Ck . Alors, quitte renumroter les tats
(en considrant dabord les tats de C1 , puis ceux de C2 , . . . puis ceux de Ck , et enfin
les tats transitoires), la matrice de transition P peut scrire sous la forme canonique
suivante :

F. Sur 2013-2014
25 2.2. VOCABULAIRE


P1 0 ... 0 0
0 P2 ... 0 0

P = ... .. .. .. ..

. . . .

0 0 . . . Pk 0
Q1 Q2 . . . Qk Qk+1

o Pi est une matrice de taille ni ni (avec ni le cardinal de Ci ), et


Q = Q1 Q2 . . . Qk Qk+1 est une matrice de taille (m n) m.
Avant de revenir aux exemples, voyons une dernire dfinition.

Dfinition 2.6 Considrons une chane de Markov rductible. Lorsque les composantes
finales sont toutes rduites un seul tat, on dit que ltat correspondant est absorbant,
et que la chane elle-mme est absorbante.

La forme canonique de la matrice de transition devient :


 
Ims,ms 0
P=
Rs,ms Qs,s

o s est le nombre dtats transitoires (et donc n = m s est le nombre dtats ab-
sorbants).

Dans lexemple 1 prcdent, la chane est rductible. Ses classes (composantes forte-
ment connexes du graphe associ) sont : {1, 3}, {2}, {4, 5}.
Ltat 2 est transient, les classes {1, 3} et {4, 5} sont finales.
Quitte permuter les tats, on peut crire la matrice de transition sous la forme
canonique suivante :

1 3 4 5 2

1 0, 5 0, 5 0 0 0
3
0, 4 0, 6 0 0 0
P = 4
0 0 0, 9 0, 1 0
5 0 0 0, 5 0, 5 0
2 0, 25 0, 25 0 0 0, 5

Dans lexemple 2, la chane de Markov est irrductible : chaque tat est accessible
de nimporte quel autre tat.

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 26

2.2.4 Chanes priodiques et apriodiques


Dfinition 2.7 Un tat i dune chane de Markov est dit priodique (de priode p) si :

p = pgcd {n, Pr(Xn = i | X0 = i) > 0} > 1.

Autrement dit, si on considre le graphe associ la chane de Markov, tous les cycles
partant de i et revenant en i ont une longueur divisible par p > 1.
Lorsque p = 1, ltat est dit apriodique.

Proposition 2.2 Les tats dune mme composante fortement connexe (classe dquiv-
alence) ont mme priode.

Dmonstration. Soit p la priode de ltat i et p0 la priode de ltat j. On suppose que i et j


appartiennent la mme classe, et donc il existe un chemin de i vers j et un chemin de j vers i.
La concatnation de ces deux chemins forme un cycle sur i, sa longueur l est donc divisible
par p. Or on peut former un cycle sur i du type : i j puis cycle sur j de longueur p0 , puis
j i, dont la longueur est l + p0 , et est divisible par p. Comme on a dj vu que p divise l,
alors p divise p0 . De mme on montre que p0 divise p. Conclusion : p = p0 . 

Il est donc lgitime de parler de la priode dune classe, et de classe priodique (ou
apriodique). Pour une chane de Markov irrductible (qui a donc une seule classe), on
peut parler de chane priodique ou apriodique.
On remarque aussi que ds que le graphe dune chane de Markov irrductible a une
boucle sur un sommet s, alors la chane est apriodique (comme le sommet s).
Dans le cas dune chane irrductible priodique (priode p), on peut dmontrer que
la matrice de transition peut scrire sous la forme (quitte renumroter les tats) :

0 P1 0 . . . 0
0 0 P2 . . . 0

.. .
. .
. . . .
.
P= .

. . . .

0 0 0 . . . Pp1
Pp 0 0 . . . 0

Dans lexemple 1, la chane de Markov est apriodique, car par exemple le sommet 1
est de priode 1 (il prsente une boucle sur lui-mme).
Dans lexemple 2, on se convainc que la chane est de priode 2.

F. Sur 2013-2014
27 2.3. COMPORTEMENT ASYMPTOTIQUE DES CHANES ERGODIQUES

Sa matrice de transition peut se mettre sous la forme canonique :

1 3 5 2 4 6

1 0 0 0 0, 8 0 0, 2
3 0
0 0 0, 2 0, 8 0
5 0 0 0 0 0, 75 0, 25
P=
2 0, 4 0, 6
0 0 0 0
4 0 0, 9 0, 1 0 0 0
6 0, 25 0 0, 75 0 0 0

2.3 Comportement asymptotique des chanes ergodiques


Dans cette section, nous nous intressons aux proprits asymptotiques de la distri-
bution n de Xn (lorsque n +).
De la relation n+1 = n P, on voit que si (n ) converge, cest vers un vecteur
propre ( gauche) associ la valeur propre 1 ( gauche).
Remarquons que 1 est bien valeur propre gauche de P. En effet, comme :

1 1
1 1
P .. = ..

. .
1 1

(car P est une matrice stochastique) on se rend compte que 1 est valeur propre de P (
droite, i.e. au sens dont vous avez lhabitude). Comme la matrice P et sa transpose PT
ont les mmes valeurs propres 2 , alors 1 est valeur propre ( droite) de PT . On conclut :
1 est bien valeur propre gauche de P.
Attention, ce raisonnement ne nous assure pas :
1. que la suite (n ) converge effectivement,
2. que le sous-espace propre associ la valeur propre 1 a des vecteurs com-
posantes toutes positives (de manire obtenir une distribution de probabilits
en normalisant),
3. ni lunicit de la limite ventuelle : si le sous-espace propre associ la valeur
propre ( gauche) 1 est de dimension strictement suprieure 1, alors plusieurs
limites sont possibles, selon la valeur de 0 .
Nous allons voir que les chanes irrductibles ont tout de mme une unique distribu-
tion limite. Ce rsultat sera obtenu laide du thorme de Perron-Frobenius.
2. En effet, les polynmes caractristiques
 de P et PT sont identiques :
T T
det(P I) = det (P I) = det(P I)

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 28

Proposition 2.3 Une chane de Markov irrductible admet une unique distribution de
probabilit telle que : P = .
Dmonstration. (esquisse). La chane de Markov tant irrductible, pour tout couple dtat (i, j)
il existe un chemin de longueur n(i, j) N entre i et j. Soit n = ppcm{n(i, j)} : pour tout
(i; j) il existe aussi un chemin de longueur n entre les tats i et j (quitte reprendre plusieurs
fois le chemin de longueur n(i, j)).
Avec la proposition 2.1, on dduit :

(i, j) E 2 , pni,j > 0.

(on dit que la matrice stochastique P ou la chane de Markov sont rgulires.)


Maintenant en toute gnralit, si M est une matrice stochastique, une valeur propre,
v = (vi ) un vecteur propre associ (composantes vi ), et k un indice tel que vk = max{|vi |} ;
alors : X X X
|vk | = | pk,j vj | 6 pk,j |vj | 6 |vk | pk,j = |vk |
j j j

Donc toute valeur propre de M est infrieure ou gale 1. Comme 1 est effectivement valeur
propre daprs la remarque du dbut de section, on dit que le rayon spectral de M est infrieur
ou gal 1.
Ainsi Pn a un rayon spectral infrieur ou gal 1.
Comme Pn et sa transpose ont mme spectre, il en est de mme pour (PT )n .
Ainsi, pni,j est strictement positif pour tout couple (i, j) dtats, et la matrice (PT )n a un
rayon spectral gal 1.
Le thorme de Perron-Frobenius (voir la littrature ddie) nous permet de conclure que
lespace propre associ la valeur propre 1 de PT est de dimension 1, et quun vecteur propre
associ 1 est de composantes toutes strictement positives.
On conclut lexistence de en normalisant la somme des lments 1. 

Avant de nous demander quelles sont les conditions pour que la suite (Xn ) admette
une distribution stationnaire limite, revenons sur les deux cas particuliers de chanes de
Markov tudis prcdemment : les chanes rductibles et les chanes priodiques.
Dans le cas des chanes rductibles, la limite (ventuelle) de (n ) dpend de 0 .
Dans lexemple 1, si la marche alatoire sur le graphe associ la chane part des tats
1, 2 ou 3, il est clair que la distribution limite ventuelle ne pourra tre que de la forme :

= 0 0


car les tats 4 et 5 ne seront jamais visits. Mme rsultat mutatis mutandis si lon part
de 4 ou 5. La limite ventuelle de la suite des (n ) dpend donc de 0 .
On peut montrer que dans le cas des chanes rductible, la probabilit dtre dans
un tat transient tend vers 0 quand le nombre de pas n tend vers +, et que si chaque

F. Sur 2013-2014
29 2.3. COMPORTEMENT ASYMPTOTIQUE DES CHANES ERGODIQUES

classe finale est apriodique alors un distribution stationnaire existe ; effectivement


elle dpend alors de 0 .
Dans le cas des chanes priodiques, il ny a a priori pas convergence de (n ). Dans
lexemple 2, si on part dun tat impair (0 = (, 0, , 0, , 0)), alors on est certain
quau bout dun nombre impair dtapes on est dans un tat pair. La suite des n va
prendre la forme : 
2k = k 0 k 0 k 0
et :
2k+1 = 0 k0 0 k0 0 k0 .


Cette suite ne peut pas converger (rappelons que n est une distribution de probabilit
et que donc sa somme vaut 1).
Remarquons au passage que, comme cette chane priodique est irrductible (cf sec-
tion 2.2.3), elle admet daprs la proposition 2.3 une unique distribution stationnaire. On
voit que cela nassure pas la convergence.
On ne discutera pas davantage le cas des chanes rductibles ou priodiques.

Dfinition 2.8 Une chane de Markov est dite ergodique si (n ) converge, indpendam-
ment de 0 .

La limite de la suite de distributions (n ) est appele distribution stationnaire


(car elle vrifie : = P).

On a vu que les chanes de Markov rductibles ou priodiques ne sont pas er-


godiques. On admet le thorme suivant.

Thorme 2.1 Les chanes de Markov irrductibles et apriodiques sont ergodiques.

Rappelons que la distribution stationnaire associe est unique daprs la proposi-


tion 2.3. De plus, daprs la dmonstration de cette proposition, pour tout i, (i) > 0.
Remarquons galement la proprit suivante :

Proposition 2.4 La matrice de transition P dune chane de Markov ergodique admet-


tant pour distribution stationnaire est telle que (P)n , o est la matrice carre
forme de la concatnation de lignes identiques .
Dmonstration. Comme 0 , n > 0, n = 0 Pn , Pn est une suite de matrices convergentes.
Soit Q sa limite : Q est stochastique et comme (Pn ) et (Pn+1 ) ont mme limite : Q P = Q.
En particulier nimporte quelle ligne Qi de Q vrifie : Qi P = Qi
La chane tant ergodique, elle est irrductible donc admet une unique distribution station-
naire .

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 30

Les lignes de Q sont donc gales . 

On admet galement le thorme ergodique suivant :


Thorme 2.2 (thorme ergodique pour les chanes de Markov) Soit (Xn ) une chane
de Markov ergodique de distribution stationnaire et f une fonction relle borne
dfinie sur E (tats de la chane), alors :
n
1 X X
lim f (Xk ) = i f (i) p.s.
n+ n + 1
k=0 iE

Ce thorme fait bien sr penser la loi forte des grands nombres lorsque les Xn
sont indpendants.
Un cas particulier intressant est celui o f est la fonction indicatrice dun ensemble
dtat S E : du thorme ergodique
X on dduit quen moyenne, la proportion de temps

pass dans les tats de S est i .
iS
Cela justifie lintuition que lon peut avoir du rgime permanent. Dans lexemple
mtorologique au dbut du chapitre, la chane de Markov est apriodique (elle prsente
une boucle sur au moins un tat) et irrductible (une seule composante fortement con-
nexe), donc elle est ergodique. La distribution existe et satisfait = P. On peut
donc dterminer numriquement (faites-le !). Alors (S) et (P) sont les probabil-
its que, dans longtemps , il y ait un jour ensoleill ou pluvieux. Daprs le thorme
ergodique, cest aussi la proportion de journes ensoleilles ou pluvieuses sur un grand
intervalle de temps.

2.4 Le thorme des coupes


Pour une chane ergodique se pose le problme de dterminer .
Daprs la proposition 2.4, lorsque n +, Pn converge vers une matrice dont
toutes les lignes sont gales . On voit quon peut utiliser les algorithmes permettant
de calculer les puissances successives dune matrice.
On peut galement rsoudre le systme linaire : = P. Ce systme est de
rang m 1 (m : nombre dtats), et la somme des lments de est 1, ce qui permet
de dterminer .
Dans les deux cas, cela peut tre assez compliqu lorsque la chane de Markov a un
trs grand nombre dtats.
Pour rsoudre le systme dans les cas simples (ceux des exercices), on peut
aussi utiliser le thorme des coupes, qui permet dobtenir un systme dquations
quivalent au prcdent.

F. Sur 2013-2014
31 2.4. LE THORME DES COUPES

Proposition 2.5 Thorme des coupes (conservation des flux). Soit (A, B) une par-
tition de E (A B = E et A B = ). Alors :
XX XX
i pi,j = i pi,j
jB iA jA iB

Dmonstration. Il sagit dun simple calcul partant de = P :


X X
j, j = i pi,j + i pi,j
iA iB
X XX XX
j = i pi,j + i pi,j (somme sur j B)
jB jB iA jB iB


XX X X X (la somme sur les lignes
i pi,j = j i 1 pi,j
de P vaut 1)
jB iA jB iB jA

XX XX
i pi,j = i pi,j (changement dindice dans la somme de droite)
jB iA jA iB

Remarque : le thorme des coupes est valable pour E infini dnombrable.


Le but est de choisir la partition (ou la coupe entre A et B) en minimisant le nombre
dinconnues i qui interviennent. Chaque coupe fournit une quation linaire en les i .
On utilise alors m 1 coupes (utiliser davantage de coupes fournirait des quations
linairement lies au prcdentes car le systme est de rang m 1) et la condition

P
i i = 1.

Exemple 3.
On considre la chane de Markov reprsente par le graphe :
0,2 0,4 0,8

 0.3  0,2 
1r 22r 23
0,8 0,3

Cette chane est apriodique irrductible donc ergodique.


Avec la coupe A = {1}, B = {2, 3} on obtient lquation : 0.81 = 0.32 .
Avec la coupe A = {1, 2}, B = {3} on obtient lquation : 0.32 = 0.23 .
En ajoutant la contrainte 1 + 2 + 3 = 1 on dduit la valeur des i .
Remarquons que les probabilits des boucles ninterviennent pas.

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 32

2.5 Comportement asymptotique des chanes absorbantes


Les rsultats de cette section sont adapts du livre Introduction to probability par
C.M. Grinstead et J.L. Snell, American Mathematical Society, 1997.
Considrons une chane de Markov absorbante. Rappelons que, quitte renumroter
les tats en listant dabord les tats absorbants puis les tats transients, la matrice de
transition peut scrire sous la forme :
 
Ims,ms 0
P=
Rs,ms Qs,s

o s est le nombre dtats transients (et m s le nombre dtats absorbants).


Par souci de simplicit, abandonnons les indices des matrices blocs.
Comme la matrice P est triangulaire infrieure par blocs, on peut crire quelque soit
nN:  n 
n I 0
P =
Qn
Rappelons que pni,j est la probabilit darriver ltat j en partant de ltat i, aprs n
tapes (proposition 2.1).

Proposition 2.6 Dans une chane de Markov absorbante, la probabilit datteindre


aprs un certain nombre dtapes un tat absorbant est 1. (i.e. Qn 0 lorsque n
+).

Dmonstration. Par dfinition des tats transients, pour chacun de ces tats j il existe un nombre
minimum mj de transitions au bout desquelles on peut arriver un tat absorbant. Soit pj la
probabilit de ne pas arriver un tat absorbant en partant de j en mj tapes. Remarquons que
pj < 1 car par hypothse au moins un chemin arrive un tat absorbant en mj tapes. Soit
m = maxj mj et p = minj pj . Partant de nimporte quel tat transient, la probabilit de ne pas
tre absorb (et donc arriver un tat transient) en m tapes est donc infrieure pm , en 2m
tapes elle est infrieure p2m , etc. Comme p < 1, pkm tend vers 0 avec k et la probabilit de
ne pas tre absorb en km tapes aussi.
Dautre part, la probabilit de ne pas tre absorb en n tapes est strictement dcroissante
avec n (faites un raisonnement par rcurrence sur n), donc convergente (suite minore par 0).
Comme la suite extraite des (pkm )kN tend vers 0, cette probabilit tend aussi vers 0.
On conclut bien : Qn 0. 

Thorme 2.3 La matrice carre (de taille s) I Q est inversible.


N = (I Q)1 est la matrice fondamentale de la chane.

F. Sur 2013-2014
33 2.5. COMPORTEMENT ASYMPTOTIQUE DES CHANES ABSORBANTES

Llment ni,j en ligne i et colonne j de la matrice N est le nombre moyen de


passage par ltat transitoire j en partant de ltat transitoire i. 3

Dmonstration. On calcule :
n
!
X
(I Q) Qk = I Qn+1
k=0

P+n
En passant la limite
k
+, daprs la proposition prcdente, I Q est inversible et son
inverse est N = k=0 Q .
k la variable alatoire valant 1 si, partant de i,
Soient i et j deux tats transitoires, et Xi,j
la chane est dans ltat j aprs k tapes. Notons qi,jk llment en ligne i, colonne j de la

matrice Qk .
On a :
k
Pr(Xi,j = 1) = pki,j = qi,j
k

et :
k k
Pr(Xi,j = 0) = 1 qi,j .
k est :
Lesprance de Xi,j

k k k k
E(Xi,j ) = 0 (1 qi,j ) + 1 qi,j = qi,j .

Le nombre moyen de passage en j partant de i lors des n premires tapes est :


n n
!
X X
k k
E Xi,j = qi,j .
k=0 k=0

Cette quantit tend bien vers ni,j lorsque n + car Qn 0. 

Proposition 2.7 En consquence, sj=1 ni,j est le nombre moyen de passage dans les
P
tats transients lorsquon part de i (jusque larrive dans un tat absorbant).

Voici un dernier rsultat important sur la matrice fondamentale des chanes de Markov
absorbantes. Rappelons la forme canonique de la matrice P :
 
Ims,ms 0
P= .
Rs,ms Qs,s

3. Attention, il y a abus de notation, en fait il sagit du i-me (j-me) tat transitoire, les tats tant
ordonns de manire ce que P soit sous forme canonique. . .

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 34

Thorme 2.4 Soit A = NR (cest une matrice de taille s m s).


Llment ai,j de A en ligne i colonne j est la probabilit dtre absorbe par ltat j
en partant de ltat transient i. 4

Dmonstration. Un chemin de i vers j est constitu de k tapes dans les s tats transients avant
daller du dernier tat transient visit ltat absorbant j. Donc la probabilit qi,j dtre absorb
en j partant de i est :
+ X
X s
qi,j = Qki,n Rn,j
k=0 n=1
Xs +
X
= Rn,j Qki,n
n=1 k=0
Xs
= Rn,j Ni,n
n=1
= ai,j
P+ k
En effet, N = k=0 Q .


4. Attention toujours labus de notation, il sagit du j-me tat absorbant et du i-me tat transient
lorsque les tats sont permuts pour mettre la matrice de transition sous forme canonique.

F. Sur 2013-2014
35 2.6. EXERCICES

2.6 Exercices
2.6.1 Lanatomie dun moteur de recherche (examen 2010-2011)
Une des difficults rencontres par les moteurs de recherche sur Internet est que de
trs nombreuses pages web peuvent contenir le mot ou lexpression cherchs. Dans quel
ordre les afficher ?
En 1998, deux tudiants en thse lUniversit de Stanford, Serguey Brin et Lawrence
Page, publient larticle The anatomy of a large-scale hypertextual Web search engine,
dans lequel ils proposent une nouvelle fonction pour classer ces pages, le PageRank. Le
nouveau moteur de recherche prsent est G OOGLE.
Soit PR(pi ) le PageRank de la i-me page du Web. En premire approximation, la
fonction PR est suppose vrifier :
X PR(pj )
PR(pi ) =
L(pj )
pj P(pi )

o P(pi ) est lensemble des pages Web qui ont un lien vers la page pi , et L(pj ) le
nombre total de liens (vers pi mais aussi vers dautres pages) que lon peut trouver sur
la page pj .
Par convention, on considrera que toute page pointe vers elle-mme. Si une page pi
ne prsente aucun lien, on posera donc L(pi ) = 1.
Dautre part, PR est normalis de manire ce que :
N
X
PR(pi ) = 1
i=1

o N est le nombre total de pages sur le Web.


Intuitivement, si une page web a un fort PageRank, alors les pages vers lesquelles
elle pointe hriteront dune fraction de ce PageRank dautant plus forte quelles sont
peu nombreuses.

1. Soit PR la matrice ligne : PR(p1 ), PR(p2 ), . . . , PR(pN ) .
Identifiez une matrice M stochastique telle que :

PR = PR M.

Indication : vous pourrez raisonner en premire approximation sur un Web limit


trois pages web p1 , p2 , p3 , o p1 pointe vers p2 et p3 , p2 vers p1 et p3 vers p2 .

2. Calculez le PageRank dans lexemple de lindication prcdente.

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 36

3. On considre le Web comme un graphe orient dont les sommets sont les pages
Web, et les arcs sont les liens dune page i vers une page j, valus par les coeffi-
cients mi,j .
Justifiez que la chane de Markov associe ne peut pas tre considre comme
ergodique. Quel est le problme pour la dfinition du PageRank ?

4. En fait, le PageRank est dfini dans larticle de Brin et Page comme 5 :

1d X PR(pj )
PR(pi ) = +d
N L(pj )
pj P(pi )

Identifiez une nouvelle matrice M stochastique telle que :

PR = PR M.

Le facteur d est appel facteur damortissement (damping factor) par Brin et Page,
et est fix 0.85.

5. Justifiez que la chane de Markov dfinie par la matrice de transition prcdente


est ergodique.

6. Justifiez lexplication intuitive du PageRank par Brin et Page :


PageRank can be thought of as a model of user behavior. We assume
there is a "random surfer" who is given a web page at random and
keeps clicking on links, never hitting "back" but eventually gets bored
and starts on another random page.
En particulier, quelle situation correspondent les cas d = 0 et d = 1 ?

2.6.2 Modle conomique de Leontief (examen 2011-2012)


Cet exercice porte sur le modle conomique input-output de Wassily Leontief (Prix
Nobel dconomie 1973).
On considre une conomie forme de n industries produisant un unique type de
bien manufactur. Ces industries sont interconnectes : pour une production valant 1e,
lindustrie i a besoin dacheter lindustrie j une partie de sa production pour une
valeur qi,j > 0. On suppose pour simplifier quil sagit l de lintgralit de ses cots
de production. Soit Q la matrice carre dordre n avec le coefficient qi,j en ligne i
colonne j.
On suppose que pour toute industrie i, nj=1 qi,j 6 1.
P

5. dans leur article il manque le N divisant 1 d. . .

F. Sur 2013-2014
37 2.6. EXERCICES

On note xi la valeur (en euros) de la production totale de lindustrie i, et X le vecteur


ligne (x1 , x2 , . . . , xn ).
Enfin, on connat les besoins des consommateurs : on suppose que la valeur de leurs
besoins en produits de lindustrie i est bi . On note B le vecteur ligne (b1 , b2 , . . . , bn ).
P
1. Que signifie conomiquement lhypothse j qi,j 6 1 ?

2. Considrons une industrie j. Soit yj la valeur totale de sa production qui sert aux
autres industries, et Y le vecteur ligne (y1 , y2 , . . . , yn ). Exprimez Y en fonction
de Q et X.

3. On suppose que la production de chaque industrie a atteint un quilibre permettant


de satisfaire les besoins des consommateurs et les besoins des autres industries.
crivez lquation traduisant cette hypothse.
quelle condition sur la matrice Q peut-on trouver un vecteur de production X
ralisant lquilibre ?

4. On introduit une n + 1 - me industrie fictive telle que, quel que soit i


{1, . . . , n} :
Xn
qi,n+1 = 1 qi,j
j=1

et qn+1,n+1 = 1 et quel que soit j {1, . . . , n} : qn+1,j = 0.


Cette n + 1-me industrie est appele banque dans la littrature. votre avis,
pourquoi ?
Associez au modle input-output une chane de Markov dont vous prciserez les
tats et les probabilits de transition.
quel type de chane vu en cours correspond-elle ?

5. quelle condition la matrice (I Q) est-elle inversible ? Quelle est linterprta-


tion conomique ? Examinez le cas particulier o une classe dindustries ne con-
tenant pas la banque est absorbante : les besoins peuvent-ils tre satisfaits ?

2.6.3 Problme de la ruine du joueur (examen 2013-2014)


On considre un jeu au casino o on gagne 1 euro avec une probabilit p, et perd
1 euro avec une probabilit q = 1 p. Un parieur joue plusieurs parties successives
et indpendantes. On note S la somme dargent (en euros) que le parieur possde en
entrant au casino, et C le capital du casino. Aprs la premire partie, le parieur possde
donc soit une somme S + 1 (et C 1 pour le casino), soit S 1 (et C + 1 pour le casino).
Le parieur sarrte lorsquil est ruin, ou lorsquil a ruin le casino.

Recherche Oprationnelle
CHAPITRE 2. LES CHANES DE MARKOV 38

1. Notons Xn la somme dargent dont dispose le parieur aprs n parties.


a) Justifiez que Xn puisse tre modlis par une chane de Markov absorbante
prenant ses valeurs dans {0, 1, . . . , S +C 1, S +C}, et reprsentez-la graphique-
ment en prcisant les probabilits de transition.
b) Quels sont les tats absorbants ? Les tats transitoires ?
c) Quelle est la matrice de transition associe cette chane de Markov ? (on
lcrira sous la forme canonique utilise pour les chanes absorbantes)
2. On note Px la probabilit pour que le parieur finisse ruin lorsqu un moment il
possde une somme x {0, 1, 2 . . . , S + C 1, S + C}. Dmontrez que :

Px = pPx+1 + qPx1 si x {1, 2, . . . , S + C 1}.
P0 = 1
PS+C = 0

3. On rappelle quune suite rcurrente linaire dordre 2 dfinie par : un+2 = aun+1 +
bun scrit sous la forme :
ou bien un = r1n +r2n o r1 et r2 sont les deux racines distinctes du polynmes X 2
aX b ;
ou bien un = ( + n)r0n o r0 est racine double du polynmes X 2 aX b ;
o , sont des paramtres dterminer.
Exprimez Px en fonction de x, q/p et S + C. Vous serez amen distinguer les
cas p = 1/2 et p 6= 1/2.
4. Le capital du casino est bien sr trs grand devant celui du parieur, et on peut
simplifier lexpression de PS en considrant S trs petit devant C (i.e. en calculant
la limite de PS lorsque C tend vers linfini).
a) Dans le cas p = 1/2, quelle est la probabilit pour que le parieur finisse ruin,
partant dun capital S ?
b) Mme question dans le cas p 6= 1/2. On distinguera les cas p < 1/2 et p > 1/2.
c) Interprtez ces rsultats.

F. Sur 2013-2014
Chapitre 3

Les files dattentes

Lobjet de ce chapitre est la modlisation des files dattente par des processus ala-
toires. Les applications de la thorie des files dattente sont, au del des files un guichet
ou des embouteillages sur la route, la gestion du trafic arien (dcollage, routage, at-
terrissage des avions), les rseaux informatiques (comment dimensionner un serveur
pour quil puisse rpondre un certain nombre de requtes), les call-centers (combien
doprateurs pour assurer une certaine qualit de service ?), etc.
Les rponses que lon cherche apporter concernent par exemple la dimension de
la file et du processus de service (combien de places dans la file dattente, combien de
serveurs ?), le temps moyen dattente, la probabilit que la file dattente soit vide ou
les serveurs inoccups, etc.

3.1 Rappels : loi de Poisson et loi exponentielle


Ces rsultats ont t tablis dans le cours de statistique en premire anne.

Dfinition 3.1 Une variable alatoire X valeurs entires suit une loi de Poisson de
paramtre > 0 si :
k
k N, Pr(X = k) = ek .
k!

Proposition 3.1 Une variable alatoire qui suit une loi de Poisson de paramtre a
une esprance et une variance gales .

Dfinition 3.2 Une variable alatoire Y valeurs relles strictement positives suit une
loi de exponentielle de paramtre > 0 si :

t > 0, Pr(Y = t) = et .

39
CHAPITRE 3. LES FILES DATTENTES 40

Proposition 3.2 Une variable alatoire Y qui suit une loi exponentielle de paramtre
a une esprance gale 1/ et une variance gale 1/2 .
Sa fonction de rpartition est donne par :

t > 0, Pr(Y < t) = 1 et .

Proposition 3.3 Une variable alatoire Y suit une loi exponentielle si et seulement si :

s, t > 0, Pr(Y > s + t|Y > t) = Pr(Y > s)

On dit quune variable exponentielle est sans mmoire : si un vnement ne sest pas
produit entre 0 et t, la probabilit quil se produise entre t et t + s est la mme que la
probabilit pour quil se produise entre 0 et s : linstant de dpart na pas dinfluence et
la variable ne garde pas de mmoire du pass.

3.2 Caractristiques dun systme dattente


Un systme dattente est constitu de clients , qui entrent dans une file dattente,
avant daccder des serveurs qui dlivrent un service pendant un certain temps.
Client et serveur sont ici des termes gnriques.

S1

S2

4 3 2 1

.........

File dattente

Sn
"Clients"
"Serveurs"

Un systme dattente (dnomm file dattente par lger abus de langage) est
caractris par :
la loi darrive des clients dans la file (dterministe ou stochastique),
la loi de la dure des services (dterministe ou stochastique),
le nombre de serveurs travaillant en parallle dans le centre de service,
la taille de la file dattente (finie ou infinie),
lorganisation de la file.

F. Sur 2013-2014
41 3.3. LA FORMULE DE LITTLE

Les notations de Kendall (1953) permettent de dcrire le systme dattente de manire


succincte. Avec ces notations, un systme dattente est dcrit par :

A/B/m/N/S

o :
A est la distribution des arrives : stochastique (on prcise alors la loi) ou dter-
ministe.
B est la distribution des temps de service : idem.
m est le nombre de serveur
N est le nombre maximum de clients dans le systme (clients attendant dans la
file + clients en cours de service)
S est la discipline de service (la manire de sortir de la file dattente pour les
clients) : First In First Out (FIFO), Last In First Out (LIFO), alatoire (RAND),
Round Robin 1 . . .
A et B peuvent prendre les valeurs : D (distribution dterministe), M (distribution
Markovienne), Ek (distribution dErlang-k), G (distribution gnrale, on ne fait pas
dhypothse particulire), etc.
Comme nous ntablirons que des rsultats en moyenne , nous ne nous intresserons
pas lvolution dun individu particulier dans la file et donc la discipline de service
naura pas dimportance pour nous.
Lorsque m ou N ne sont pas prciss, ils sont supposs infinis.

Dans la suite de ce chapitre nous allons tudier les files dattente stochastiques et
voir dans quelle condition il est possible de faire des calculs.

3.3 La formule de Little

La formule (ou loi) de Little est un rsultat trs gnral (pas dhypothse sur la dis-
tribution des arrives et des services) liant la nombre moyen de clients dans le systme,
leur temps de sjour, et leur taux moyen darrive.
Nous allons ltablir en nous appuyant sur lillustration suivante.

1. Voir lamusante tymologie ici : http://fr.wikipedia.org/wiki/Round-robin

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 42

Nombre darrives / dparts Arrives

5 5
4
4 Dparts
1
3
3
2
temps
1 2

Sur ce schma, la courbe rouge reprsente lvolution au cours du temps du nombre


cumul darrives dans le systme depuis un temps initial o le systme est vide, et la
courbe verte reprsente le nombre cumul de dparts. Les entiers figurant sur les courbes
rouges et vertes correspondent au numro du client respectivement entrant ou sortant du
systme. En toute gnralit, les entres et sorties nont pas de raison de se faire dans le
mme ordre.
Comme les clients qui partent sont des clients qui sont arrivs un instant antrieur,
la courbe rouge est toujours au dessus de la courbe verte. Lorsquelles se rencontrent
il ny a aucun client dans le systme.
Notons :
A(t) le nombre darrives pendant [0, t],
D(t) le nombre de dparts pendant [0, t],
N (t) = A(t) D(t) le nombre de clients dans le systme au temps t,
Ti : temps de sjour dans le systme (attente + service) du i-me client.
Considrons laire entre la courbe rouge et la courbe verte jusque linstant t ; il sagit
bien sr de lintgrale de N entre les instants 0 et t.
La quantit Ti correspond laire dune bande de hauteur 1 et de longueur Ti . Dans
la partie gauche du graphe prcdent (entre larrive du client 1 et le dpart du client 4),
on se convainc que laire entre les courbes rouges et vertes est T1 + T2 + T3 + T4 .
Nanmoins, linstant t tous les clients ne sont pas sortis, donc laire nest pas di-
rectement la somme des Ti pour les A(t) clients entrs dans le systme, il faut introduire
un terme correctif, not ici R(t). Cela permet dcrire la relation :
Z t A(t)
X
N (u)du = Ti R(t)
0 i=1

Donc :
Z t A(t)
1 A(t) 1 X R(t)
N (u)du = Ti
t 0 t A(t) i=1 t

F. Sur 2013-2014
43 3.3. LA FORMULE DE LITTLE

Ce qui nous intresse est dtablir un rsultat asymptotique (i.e. lorsquon observe
le systme sur un intervalle de temps grand). Faisons quelques hypothses additionnelle
lorsque t + :
Rt
1. 1t 0 N (u) N (N est le nombre moyen de clients prsents par unit de temps)
A(t)
2. t
( est le nombre moyen darrives par unit de temps)
P 
A(t)
3. i=1 i /A(t) T (T est le temps de sjour moyen)
T
R(t)
4. t
0
Les hypothses 1,2,3 semblent naturelles et caractristiques dun systme qui at-
teindrait un rgime permanent . Lhypothse 4 est galement naturelle dans ce cadre :
on suppose que les clients ne saccumulent pas dans le systme et que le temps de sjour
naugmente pas au cours du temps, et donc que R(t) est born.
On dduit donc la formule de Little (1961) :
Thorme 3.1 (formule de Little). Avec les notations prcdentes :

N = T.

Par exactement le mme raisonnement, en se restreignant aux clients dans la file


dattente (et non plus dans tout le systme), on tablit le corollaire :
Thorme 3.2 (variante de la formule de Little). En notant Nf le nombre moyen de
clients dans la file dattente et Tf le temps dattente moyen dans la file, alors :

Nf = Tf .

Remarquons encore une fois quil sagit dun rsultat trs gnral, en particulier sans
hypothse sur la distribution des arrives ou des temps de services, ni sur la discipline
de service.

Exemple 1.
Considrons un serveur informatique 5 processeurs, recevant en moyenne 1000 re-
qutes par seconde. Ladministrateur du serveur se rend compte que le serveur est oc-
cup 100%, et quen moyenne 8 requtes sont en attente.
Quel est le temps moyen dattente dune requte ? (quantit mettre en relation
avec la notion de time-out, dure au bout duquel le client dcide que le serveur est
indisponible.)
Daprs la formule de Little (variante) : Tf = Nf / = 8/1000 sec.
Quel est le temps moyen de traitement dune requte ?
Avec les deux lois de Little : T Tf = (N Nf )/ = 5/1000 sec.

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 44

3.4 Processus de Poisson


Avant dtudier un type de files dattente dans lequel on peut faire des calculs (les
files M/M), nous introduisons la notion de processus de Poisson.

3.4.1 Processus de Poisson


Dfinition 3.3 Considrons (X(t))t>0 un processus stochastique croissant temps con-
tinu valeurs dans N (cela signifie que pour tout t > 0, X(t) est une variable alatoire
valeurs entires). On suppose que ce processus vrifie les hypothses suivantes :
X(0) = 0,
0 6 t1 6 6 tk ,, les variables alatoires X(t1 )X(0), . . . , X(tk )X(tk1 )
sont indpendantes,
Pr(X(t + h) X(t) = 1) =h0 h + o(h),
Pr(X(t + h) X(t) > 1) =h0 o(h)
Alors (X(t))t>0 est appel processus de Poisson.

La deuxime hypothse traduit l absence de mmoire du processus, la troisime


que la probabilit que X saccroisse de 1 pendant un petit intervalle de temps est propor-
tionnelle la longueur de cet intervalle (coefficient ), et la quatrime que la probabilit
pour que X saccroisse de plus de 1 pendant un petit intervalle de temps est ngligeable.
Le paramtre est un taux darrive (nombre par unit de temps).
On dmontre :

Thorme 3.3 Un processus de Poisson (X(t))t>0 vrifie :


1. t, X(t) suit une loi de Poisson de paramtre t :

(t)k
k > 0, Pr(X(t) = k) = et
k!
2. le temps Tarr entre deux arrives suit une loi exponentielle :

t > 0, Pr(Tarr = t) = et

Dmonstration. Pour le point 1 : soit t > 0. On va montrer par rcurrence sur k que :

(t)k
Pr(X(t) = k) = et .
k!
Dune part si X(t + h) = 0, cest que X(t) = 0 et quaucune arrive na eu lieu entre t
et t + h. Avec lhypothse dindpendance de la dfinition :

Pr(X(t+h) = 0) = Pr(X(t) = 0)Pr(X(t+h)X(t) = 0) = Pr(X(t) = 0)(1h)+o(h).

F. Sur 2013-2014
45 3.4. PROCESSUS DE POISSON


Donc Pr(X(t + h) = 0) Pr(X(t) = 0) /h = Pr(X(t) = 0) + o(1).
En passant la limite (h 0), on obtient une quation diffrentielle qui se rsout en
Pr(X(t) = exp(t) (rappelons que Pr(X(0) = 0) = 1).
Dautre part si X(t + h) = k > 0, cest que X(t) = k 0 6 k et quil y a eu k k 0 arrives
entre t et t + h. Avec lhypothse dindpendance de la dfinition :

Pr(X(t + h) = k) = Pr(X(t) = k) Pr(X(t + h) X(t) = 0) +


Pr(X(t) = k 1) Pr(X(t + h) X(t) = 1) +
k2
X
Pr(X(t) = k 0 ) Pr(X(t + h) X(t) = k k 0 )
k0 =0
= Pr(X(t) = k)(1 h) + Pr(X(t) = k 1)h + o(h) +
k2
X
Pr(X(t) = k 0 )o(h)
k0 =0

Donc :

(Pr(X(t + h) = k) Pr(X(t) = k)) /h = Pr(X(t) = k) + Pr(X(t) = k 1) + o(1)

En passant la limite et avec lhypothse de rcurrence :

d tk1 t
Pr(X(t) = k) = Pr(X(t) = k 1) + k e
dx (k 1)!

qui est une quation diffrentielle linaire du premier ordre avec second membre .
Lquation sans second membre se rsout en : Pr(X(t) = k) = Aet , et on rsout lqua-
tion initiale par la mthode de la variation de la constante :

tk1 t
A0 (t) A(t) et = A(t)et + k

e
(k 1)!

se simplifiant en :
tk1
A0 (t) = k
(k 1)!
do :
tk
A(t) = A(0) + k .
k!
Conclusion :
tk t
Pr(X(t) = k) = k e .
k!
(la constante A(0) est fixe par Pr(X(0) = k) = 0 si k > 0.)
Pour le point 2 du thorme, soit T1 la dure entre t = 0 et la premire arrive. Alors :

Pr(T1 > s) = Pr(X(s) = 0) = es

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 46

car si T1 > s, cest quaucune arrive na encore eu lieu la date s.


Soit Tk la dure entre la k-me arrive ( la date tk ) et la k + 1-me arrive. Alors
Pr(Tk > s) = Pr(X(tk + s) X(tk ) = 0).
Nanmoins :
n
X 
X(t + s) X(t) = lim X(t + ks/n) X(t + (k 1)s/n)
n+
k=1

Comme les (X(t + ks/n) X(t + (k 1)s/n)) sont indpendants, on dduit 2 :


n
Y
Pr (X(t + s) X(t) = 0) = lim Pr(X(t + ks/n) X(t + (k 1)s/n) = 0)
n+
k=1
= lim (1 s/n)n = exp(s).
n+

Do Pr(Tk > s) = exp(s).


La fonction de rpartition de Tk est donc : Pr(Tk < s) = 1 exp(s), les Tk sont
indpendants identiquement distribus de loi : Pr(Tk = s) = s exp(s) (obtenue en drivant
la fonction de rpartition).


Exemple 2.
Voici ci-dessous un exemple de ralisation dun processus de Poisson (avec = 0.2),
not ici A(t) (courbe bleue). En abscisse sont reprs les instants des sauts (en
rouge).

20

18

16

14

12
A(t)

10

0
0 10 20 30 40 50 60 70 80 90
t

2. cette justification nest pas trs rigoureuse mais on sen contentera. . .

F. Sur 2013-2014
47 3.5. MODLISATION DANS LE CADRE MARKOVIEN

t fix, A(t) suit donc une loi de Poisson de paramtre t. Dautre part, les temps
inter-arrives suivent une loi exponentielle de paramtre .

Remarque 1 : de lexpression de lesprance de variables alatoires suivant des lois de


Poisson et exponentielle, on dduit : t > 0, E(A(t)) = t et : E(Tarr ) = 1/. Dans
lexemple prcdent, la moyenne du nombre darrives (par exemple) t = 50 est
donc 10, et le temps moyen entre deux arrives est 5.
Remarque 2 : les hypothses pour arriver un processus de Poisson semblent restric-
tives, mais en fait le thorme de Palm-Khintchine nous dit que sous certaines con-
ditions , le cumul de processus darrive non-Poissonniens tend vers un processus de
Poisson.

3.5 Modlisation dans le cadre Markovien


3.5.1 La proprit PASTA
Avant de spcifier davantage le type de files sur lequel nous allons travailler, nous
commenons par un rsultat assez gnral.
Thorme 3.4 Supposons que les arrives se font selon un processus de Poisson. Alors
chaque client entrant verra une distribution de clients dj prsents dans le systme
gale celle vue en rgime permanent.
Avec le thorme ergodique, cela signifie quen rgime permanent un nouveau client
verra n clients devant lui avec une probabilit gale la proportion du temps pendant
laquelle le systme est occup par n clients.
Cest ce qui est appel la proprit PASTA (Wolff 1982) : Poisson Arrivals See Time
Averages. Notons quon ne fait aucune hypothse sur la loi des services.
Dmonstration. (un peu heuristique.) Soit Nt le nombre de clients dans le systme linstant t >
0, et t un intervalle de temps petit . Notons aussi Att ,t le nombre darrives entre t t
et t. Par la formule de Bays :
Pr(Ntt = n | Att,t > 1) = Pr(Att,t > 1 | Ntt = n)
Pr(Ntt = n)/ Pr(At,t > 1)
Comme un Processus de Poisson est sans mmoire (indpendance des nombres darrives sur
des intervalles disjoints), Pr(Att,t > 1 | Ntt = n) = Pr(Att,t > 1).
Maintenant lorsque t tend vers 0, Pr(Ntt = n | Att,t ) est la probabilit que le n
clients soient dans le systme lorsquun nouveau client arrive (on ne compte pas ce nouveau
client). Daprs ce qui prcde, cette probabilit est gale
lim Pr(Ntt = n) = Pr(Nt = n).
t+

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 48

Cela signifie que la probabilit pour quil y ait n clients dans la file linstant t est indpen-
dante du fait que t soit un moment darrive.
En passant la limite (t +), en rgime permanent, cela signifie quun nouveau client
voit n clients devant lui avec une probabilit gale la proportion de temps pendant laquelle le
systme est occup par n clients.
En effet, la premire probabilit est :

lim lim Pr(Ntt = n | Att,t > 1)


t+ t0

et la seconde :
lim Pr(Nt = n).
t+

Remarque : Ce rsultat peut sembler intuitif. Nanmoins, lhypothse darrives selon


un processus de Poisson est primordiale : la proprit PASTA est fausse dans le cas con-
traire. Considrons un systme D/D/1 initialement vide, avec des arrives dterministes
aux temps 1,3,5. . . et un temps de service de 1. La longueur de la queue vue par un
nouvel arrivant est toujours 0, alors quen rgime permanent, le systme nest occup
par 0 client que dans 50% du temps.
Consquence : en particulier, lorsque la proprit PASTA est vrifie, le nombre moyen N
de clients prsents dans le systme est aussi le nombre moyen de clients vus dans le
systme par un nouvel entrant. Mme raisonnement pour le nombre de clients dans la
file dattente. En effet, comme les distributions de probabilits sont identiques, les es-
prances le sont aussi.
Ainsi, tout nouvel arrivant sjournera en moyenne dans le systme N /.

Exemple 3.
Considrons un serveur informatique. En faisant des statistiques sur son utilisation, on
se rend compte quil est indisponible pendant 80% du temps.
Si lon suppose que les requtes sont distribues selon un processus de Poisson, la
proprit PASTA nous permet de dire quune nouvelle requte a aussi 80% de chances
de trouver le serveur indisponible.

3.5.2 Les clients et les serveurs sont sans mmoire


Nous allons nous placer dans le cadre des files dattente pour lesquelles les arrives
effectives des clients dans le systme suivent un processus de Poisson et que lorsquau
moins une place est occupe dans le centre de service les clients sortent de la file selon
un processus de Poisson.

F. Sur 2013-2014
49 3.5. MODLISATION DANS LE CADRE MARKOVIEN

Par dfinition des lois de Poisson, cela signifie que les clients nont pas de mmoire
(i.e. une arrive est indpendante des arrives prcdentes), et les serveurs non plus.
Daprs le thorme sur les processus de Poisson, ces hypothses impliquent que :
les arrives Poissonniennes se font au taux de arrives par unit de temps,
chaque service a une dure exponentielle de moyenne 1/ units de temps ( est
le taux de service).
Remarque : la loi des dparts du systme na pas de raison dtre la loi des services.
Cest le cas si les serveurs sont occups en permanence, sinon le taux de dpart est
infrieur au taux de service.
Avant dillustrer cette remarque dans lexemple suivant (et dans la discussion sur les
processus de Markov), on aura besoin de la proprit suivante.

Proposition 3.4 Soient X et Y deux variables alatoires indpendantes distribues


selon des lois exponentielles de paramtres respectifs et . Alors la variable ala-
toire min(X, Y ) suit une loi exponentielle de paramtre + .
Dautre part, si N est la variable alatoire qui vaut 1 si min(X, Y ) = X et 2 sinon,
alors :

P (N = 1) = 1 P (N = 2) = .
+
Dmonstration. Soit t > 0. Successivement :

Pr(min(X, Y ) > t) = Pr(X > t et Y > t)


= Pr(X > t) Pr(Y > t) (indpendance)
= exp(t) exp(t)
= exp(( + )t)

Pour la seconde partie :

Pr(N = 1) = Pr(X 6 Y )
Z +
= Pr(Y > X | X = x) Pr(X = x)dx
x=0
Z +
= ex ex dx
x=0

=
+


Exemple 4.
Considrons le cas de s serveurs indpendants et sans mmoire (dure de service
selon une loi exponentielle), chacun ayant un taux de service (dure moyenne 1/).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 50

Le centre de service (ensemble des serveurs) suit alors une loi de service sans
mmoire de taux s daprs la proposition prcdente.
Nanmoins, il faut tre faire attention une subtilit : la loi des dparts des clients
hors du systme dattente nest pas la loi des services !
En effet :
si n > s clients sont dans le systme, alors s dentre eux sont servis, et n s sont
dans la file dattente. La loi des dparts est gal la loi des services de, et le taux
de dpart est s
si n < s clients dont dans le systme, alors ils sont tous en cours de service et sn
serveurs sont inoccups. La dure inter-dparts suit alors une loi exponentielle de
taux n < s.
La proposition 3.4 correspond lintuition : si n clients sont en service, alors la dure
moyenne de service du premier client partir est : 1/(n) (la dure moyenne de service
dun client, i.e. la dure moyenne pour quun des clients soit servi, est divise par n).

3.5.3 Les files dattente M/M/1


Il sagit dun exemple standard de systme dattente avec un nombre illimit de
places dattente, avec des arrives selon un processus de Poisson (taux darrive ), un
seul serveur avec une dure de service exponentielle (taux de service , i.e. dure de
service moyenne 1/).
On ajoute lhypothse que la probabilit dune arrive et dun service simultans
pendant lintervalle de temps [0, h] est en o(h) lorsque h 0.

volution du nombre de clients dans la file au cours du temps


Notons Nt le nombre de clients dans le systme dattente linstant t. Nous allons
chercher exprimer la loi de Nt .
Ce qui suit nest pas ncessairement trs rigoureux mais permet de comprendre les
grandes ides.
Dune part, si m < n :

Pr(Nt+h = n | Nt = m) = Pr(A(t + h) A(t) = m n | Nt = m) + o(h)


= Pr(A(t + h) A(t) = m n) + o(h)

(si la population passe de m n > m, il y a eu m n arrives car il ny a pas darrives


et dparts simultanes, et les arrives sur [t, t+h] sont indpendantes de celles sur [0, t]).
Donc (cf processus de Poisson) si m < n 1 :

Pr(Nt+h = n | Nt = m) = o(h)

F. Sur 2013-2014
51 3.5. MODLISATION DANS LE CADRE MARKOVIEN

et :
Pr(Nt+h = n | Nt = n 1) = h + o(h).

Dautre part, par un raisonnement similaire sur les dparts, si m > n + 1 :

Pr(Nt+h = n | Nt = m) = o(h)

et :
Pr(Nt+h = n | Nt = n + 1) = h + o(h).
De la formule des probabilits totales, on dduit :
si n > 1 :

Pr(Nt+h = n) = h Pr(Nt = n 1) + (1 h h) Pr(Nt = n)


+h Pr(Nt = n + 1) + o(h)

et :

Pr(Nt+h = 0) = h Pr(Nt = 1) + (1 h) Pr(Nt = 0) + o(h).

Soit t le vecteur-ligne (de taille infinie mais dnombrable) :



t = Pr(Nt+h = 0) Pr(Nt+h = 1) Pr(Nt+h = 2) . . .

Alors, en notant P(h) la matrice (aussi de taille infinie dnombrable) :



1 h h 0 0 0 ...
h
1 h h h 0 0...

P(h) = 0
h 1 h h h 0 . . .
0
0 h 1 h h h . . .

.. .. .. .. .. ..
. . . . . .

On a :
t+h = t P(h) + o(h).
Remarquons que P(h) est une matrice stochastique.
Vocabulaire : on dit que N (t) est un processus de Markov temps continu.
Remarque : vu la forme des quations obtenues, un processus de Poisson est un cas
particulier de processus de Markov temps continu. Do le M dans la notation de
Kendall des dparts et arrives.

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 52

Reprsentation de la file M/M/1 comme une chane de Markov


Le processus de Markov Nt saute de valeurs entires en valeurs entires au cours
du temps. Lorsque Nt = n, une arrive dans le systme le fait passer ltat n + 1 alors
quune sortie le fait passer n 1. Comme les arrives sont un processus de Poisson
de paramtre et les dparts sont un processus de Poisson de paramtre , on dduit de
la proposition 3.4 (page 49) : le temps de sjour lorsquon vient darriver dans ltat n
est distribu selon une loi de Poisson de paramtre + , puis on saute ltat n + 1
avec la probabilit /( + ) (larrive eu lieu avant le dpart) ou ltat n 1 avec la
probabilit /( + ) (dans le cas contraire). Labsence de mmoire des processus fait
qu larrive dans le nouvel tat, on recommence .
De cette manire, on peut associer au processus de Markov Nt le processus temps
discret Xn o Xn est la valeur de Nt aprs le n-me saut.
On se convainc que Xn est une chane de Markov et quon peut exprimer les proba-
bilits de transition par :

+
si i = j 1

Pr(Xn = j | Xn1 = i) = +
si i = j + 1

0 sinon.

La reprsentation graphique de la chane de Markov temps discret (mais ensemble


dtat infini dnombrable) est :

+ + +
0t 41t 42t 43s 3 ...

+ + + +

Aprs n > 0 tapes, notons pi (n) la probabilit pour que Xn soit gal ltat i.
La chane tant apriodique irrductible, elle serait ergodique si lespace dtat tait 
fini. . . Ici il faut en plus que la distribution
P stationnaire ventuelle = p0 p1 p2 . . .
soit de somme 1, donc que la srie pn converge. P
Avec la formule des coupes (et la condition pn = 1) on calcule :


p = p

+ 0 + 1


p
+ 1
= p
+ 2

 n  

... = n N, pn = 1

p = p


+ n + n+1



...

. . . sous la condition = / < 1

F. Sur 2013-2014
53 3.5. MODLISATION DANS LE CADRE MARKOVIEN

Le cas / > 1 correspondrait au cas o la chane nest pas ergodique. Si > , il


y a trop darrives par rapport aux dparts et Nt +.
La probabilit pn est la probabilit pour que dans longtemps , le nombre de clients
dans le systme soit n. Daprs le thorme ergodique, il sagit aussi de la proportion
moyen de temps pendant lequel n clients sont dans le systme.
Remarque importante : on voit que les dnominateurs + sont limins dans les
calculs. Voil pourquoi on reprsente la chane de Markov dont les tats reprsentent le
nombre de clients dans le systme par :

0t 41t 42t 43s 3 ...

Bien sr, cela simplifie les quations du rgime permanent obtenues par la formule des
coupes.

File M/M/1 vue comme un systme diffrentiel


(peut tre omis en premire lecture.)
La formulation prcdente permet didentifier les probabilits pn en rgime perma-
nent. Mais comment calculer les probabilits pn (t) en rgime transitoire ? (avec pn (t) la
probabilit pour que Nt = n.)
On a tabli plus haut :

Pr(Nt+h = n) = h Pr(Nt = n 1) + (1 h h) Pr(Nt = n)


+h Pr(Nt = n + 1) + o(h)
Ainsi :
Pr(Nt+h = n) Pr(Nt = n)
= Pr(Nt = n 1) + Pr(Nt = n + 1)
h
( + ) Pr(Nt = n) + o(1)
Do :

d Pr(Nt = n)
= Pr(Nt = n 1) + Pr(Nt = n + 1)
dt
( + ) Pr(Nt = n)
Il sagit dun systme diffrentiel linaire du premier ordre quil est possible de
rsoudre.
Dans ce cours on ne dtaillera pas davantage le rgime transitoire.
Remarque : on retrouve (heureusement !) en rgime permanent : 0 = pn1 +
pn+1 ( + )pn (formules quivalentes celles obtenues par la formule des coupes).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 54

File M/M/1 : proprits


Avec tout ce qui prcde, on est capable de calculer quelques grandeurs caractris-
tiques des files M/M/1, sous condition : = / < 1 pour laquelle un rgime perma-
nent stablit.
pn = n (1 )
(daprs ce qui prcde)
Nombre moyen de clients dans le systme :
+
X
N= npn =
n=0
1
P+ P+ n P+ n P+ n+1
En
P+effet : n=0 np n = (1 ) n=0 n = n=0 n n=0 n =
n
n=1 (n (n 1)) = 1/(1 ) 1

Nombre moyen de clients dans la file dattente :


+
X 2
Nf = (n 1)pn =
n=1
1
(mme calcul)
Temps moyen de sjour dans le systme :
1
T = N / =
1
(en utilisant la formule de Little)
Temps moyen dattente dans la file :

1 2
Tf = Nf / =
1
(en utilisant la variante de la formule de Little)
Remarquons que le temps dattente et le nombre moyen de clients en attente peuvent
aussi tre obtenus uniquement partir de la formule de Little et de la proprit PASTA.
Daprs la formule de Little :
T = N /
Mais N (nombre moyen de clients dans le systme) est gal au nombre moyen de
clients vus par un nouvel arrivant (daprs PASTA). Le temps de service moyen de
chacun est 1/, donc le temps de sjour moyen dans le systme du nouveau client est :
1 1
T =N +

F. Sur 2013-2014
55 3.5. MODLISATION DANS LE CADRE MARKOVIEN

(somme des temps de service des N clients prcdents et du temps de service propre).
Donc : N / = N / + 1/, do :


N=

et :
1
T =

(formules bien sr identiques aux expressions trouves plus haut.)

3.5.4 Processus de naissance et de mort


Dfinition 3.4 Un processus de naissance et de mort est un processus de Markov
temps continu tel que de ltat n > 0 on ne puisse aller que vers ltat n 1 ou vers
ltat n + 1.

Dans la discussion sur les processus de Markov (page 50), rien nempche les paramtres
des lois exponentielles rgissant les arrives ou dparts de dpendre du nombre de
clients dans le systme dattente. Cest le cas ici.

Un processus de naissance et de mort se reprsente par le graphe :

1 2 3 n n+1
t 41 t 42 s s 3 s
0 3 ... n 3 ...
0 1 2 n1 n

Pourquoi processus de naissance et mort ? Les tats sinterprtent comme la


taille dune population, une transition n n + 1 correspondant une naissance et une
transition n n 1 une mort.

Avec le thorme des coupes, on tablit en rgime stationnaire

n
Y i1
pn = p0
i=1
i

et p0 est dtermin par la condition +


P
n=0 pn = 1.
( la condition que les i et i soient tels que cette srie converge bien.)

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 56

Processus de naissance ou de mort purs


(peut tre omis en premire lecture.)

Dfinition 3.5 Si n, n = 0, on parle de processus de naissance pur, et si n, n = 0,


de processus de mort pur.

tudions le cas particulier du processus de naissance pur tel que n, n = , et


Pr(N0 = 0) = 1.
Mais alors (pour n > 0) :

Pr(Nt+h = n) = h Pr(Nt = n 1) + (1 h) Pr(Nt = n) + o(h)

do
Pr(Nt = n)
= (Pr(Nt = n 1) Pr(Nt = n))
dt
si n > 0,
et :
Pr(Nt = 0)
= Pr(Nt = 0).
dt
n
Donc : Pr(Nt = 0) = et , et par rcurrence : Pr(Nt = n) = (t)
n!
et .
Conclusion : ce type de processus de naissance pur est un processus de Poisson.

Les files M/M


On remarque que tous les systmes M/M sont des processus de naissance et de mort
particuliers ! 3
Voyons deux exemples :

File M/M/3.
Dans ce systme, la file est de longueur illimite mais trois serveurs travaillent en
parallle. Cest un exemple de processus de Markov o la dure moyenne des services
dpend du nombre de clients dans le systme (cf exemple 4 page 49).
La reprsentation de la file M/M/3 est :

2 3 3 3
0t 41t 42t 43t 44s 3 ...

3. Mais tous les phnomnes dattente ne sont pas des processus de naissance et de mort. . . Voir les
exercices.

F. Sur 2013-2014
57 3.6. FORMULAIRE

et les probabilits pn stablissent par la formule des coupes, le nombre moyen de


clients dans le systme ou dans la file par le mme type de calcul que dans le cas M/M/1,
et les temps de sjour moyen et de temps dattente moyen par les formules de Little.

File M/M/2/4.
Il sagit dun systme o deux serveurs travaillent en parallle, mais o le systme ne
peut accueillir quau plus quatre clients (deux en service, et deux dans la file dattente).
Cette fois lensemble des tats possibles est : {0, 1, 2, 3, 4} et la reprsentation de cette
file est :
2 2 2
t 41t 42t 43t 44
0

Les pn , N et Nf sobtiennent toujours de la mme manire.


Mais attention, dans la formule de Little (T = N /), est le taux dentre effectif.
Dans le cas o le systme est de taille limite (M/M/n/K), lorsquil est plein (avec une
probabilit p(K)) les clients se prsentant ne peuvent pas entrer.
Le taux darrive des clients est de par heure, or ce nest que dans une proportion
(1 p(K)) quils peuvent entrer dans le systme. Le taux dentre effectif est donc :
(1 p(K)).
Donc il faut adapter les formules de Little en :

T = N / (1 p(K))

et : 
Tf = Nf / (1 p(K)) .

3.6 Formulaire
On donne ici les formules en rgime permanent, avec les notations :
= /
pk est la probabilit que le systme soit occup par k clients.
N= K
P
k=0 k pk est le nombre moyen de clients dans le systme (K ventuelle-
ment infini).
T est le temps de sjour dans le systme (obtenu par la formule de Little).
Nf = K
P
k=s (k s) pk est le nombre moyen de clients en attente (K ventuelle-
ment infini, s est le nombre de serveurs).
Tf est le temps dattente dans le systme (obtenu par la formule de Little).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 58

Vous devez tre capable de retrouver les formules comme en page 54, faire en
exercice !

3.6.1 File M/M/1


Cas dun nombre illimit de places dattentes, et un serveur.

pn = n (1 )
+
X
N= npn =
n=0
1
1 1/
T = N / = =
1 1
+
X 2
Nf = (n 1)pn =
n=1
1
1 2 1
Tf = Nf / = =
1 1

3.6.2 File M/M/1/K


Cas de K places dans le systme dattente, un serveur (donc K 1 places dattente).
Si 6= :
1
pk = k
1 K+1
1 (K + 1) K + K K+1
N =
(1 )(1 K+1 )
Si = :
1
pk =
K +1
K
N=
2
Dans les deux cas, pK est la probabilit pour quun client arrivant soit perdu ou (avec
le thorme ergodique) la proportion du temps o le serveur est occup.

Nf = N (1 p0 )
N
T =
(1 pk )
Nf
Tf =
(1 pK )

F. Sur 2013-2014
59 3.6. FORMULAIRE

3.6.3 File M/M/m


Cas dun nombre illimit de places dattentes, et m serveur.
si k 6 m :
p0
pk = k
k!
si k > m :
p0
pk = k
m!mkm
La file est stable si la srie +
P
k=0 pk converge, i.e. /m < 1 ou < m ou < m.
On calcule alors :
m1
m X k
1/p0 = +
m!(1 /m) k=0 k!

La probabilit pour que tous les serveurs soient occups ((m, ) =


P
k=m pk ) est
donne par la formule dite dErlang-C :

m /(m!(1 /m))
(m, ) =
m /(m!(1 /m)) + m1
P k
k=0 /k!

On a aussi :
m+1
N= p0 +
m!(1 /m)2
N
T =

m+1
Nf = p0
m!(1 /m)2
Nf
Tf =

3.6.4 File M/M/m/m


Cas de m places dans le systme dattente, et m serveur (donc file dattente vide :
tout nouveau client est servi immdiatement ou repart si aucun serveur nest libre).

k /k!
pk =
1 + + 2 /2! + + m /m!
La probabilit pour que tous les serveurs soient occups est donn par la formule
dite dErlang-B :
m /m!
(m, ) = pm = Pm k
k=0 /k!

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 60

N = (1 pm )
1
T =

Nf = 0
Tf = 0

3.7 Les files M/G


On va voir dans cette section des rsultats relatifs aux files M/G, cest--dire lorsque
les arrives sont toujours des processus de Poisson, mais les services non.

3.7.1 Processus de Markov par lot


Le cadre des processus de Markov temps continu permet aussi de traiter le cas de
certaines files M/G.
Lexpression gnrale de Nt+h en fonction de Nt est au premier ordre en h : (toujours
sous lhypothse dabsence de dpart et arrive simultanes)
+
X
Pr(Nt+h = n) = Pr(Nt+h = n | Nt = k) Pr(Nt = k) + o(h)
k=n1
= h Pr(Nt = n 1) + Pr(Nt = n)
X+
+ Pr(D(t, t + h) = k n) Pr(Nt = k) + o(h)
k=n+1

o D(t, t + h) est le nombre de dparts entre t et t + h.


Dans le cas o Pr(D(t, t + h) = k) ne dpend pas de t (cest l quapparat la
principale restriction : le processus de dpart est tout de mme sans mmoire) et scrit
sous la forme k h + o(h) (dveloppement au premier ordre), on voit que ces modles
entrent dans le cadre gnral des processus de Markov temps continu (la discussion
de la page 50 sadapte sans mal).
La reprsentation locale (i.e. les arcs issus de ltat n) du graphe associ est :
n
n1
n2

1
{ z x s
0 1 2 ... n-1 n 3 n+1

F. Sur 2013-2014
61 3.7. LES FILES M/G

Remarque 1 : ce nest bien sr pas un processus de naissance et de mort.


Remarque 2 : la situation est symtrique pour une file G/M.
Ce type de processus de service est appel Markov par lot (batch Markov process
dans la littrature anglosaxone). Dans les notations de Kendall, il est not MX (qui rem-
place donc G ici).
Plusieurs exemples rentrant dans ce cadre seront traits en exercice.

3.7.2 File M/G/1 gnrale


Pour finir, nous allons tablir des rsultats gnraux sur les files M/G/1.
Tout dabord, remarquons que le cas M/M/1 et le cas particulier de M/G/1 trait
dans la section prcdente (qui peuvent tous deux donner lieu une modlisation par
un processus de Markov continu) sont bass sur labsence de mmoire de la dure de
service. En effet dans ce cas la probabilit dun (ou plusieurs) dparts entre t et t + h
ne dpend pas de t. Maintenant, en toute gnralit il y a dpendance : dans le cas
limite dune loi de dpart dterministe (disons toutes les minutes, minute entire), la
probabilit de dpart entre t et par exemple t + 0, 5 dpend clairement de t.
Nous allons voir dans cette section quil est encore possible dtablir des rsultats
par une analyse en moyenne du phnomne dattente.

Dans la suite on suppose que les dures de services sont indpendants identiquement
distribus, donns par la variable alatoire Y de loi y.
Nous allons commencer par tablir lexpression de la probabilit p0 pour que le
serveur soit inoccup.

Proposition 3.5 Dans une file M/G/1 avec arrive Poissonnienne de taux et services
indpendants de dure moyenne E(Y ), si p0 est la probabilit pour que le serveur soit
inoccup, alors :
1 p0 = E(Y ).

Dmonstration. Notons Xn le nombre de clients prsents dans le systme aprs le n-me dpart,
An le nombre darrives pendant le service du n-me client (dessinez une frise chronologique
pour vous aider).
Alors :
Xn+1 = Xn + An + u(Xn )
o u(Xn ) = 1 si Xn > 1 (il y a un dpart car dans ce cas le serveur est effectivement occup)
et u(Xn ) = 0 si Xn = 0 (serveur inactif)
Or daprs la proprit PASTA le nombre moyen de clients vu par un nouvel arrivant ne
dpend pas de linstant darrive, donc E(Xn ) = E(Xn+1 ).
Par suite de quoi : E(An ) = E(u(Xn )).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 62

Or E(u(Xn )) = 0 Pr(Xn = 0) + 1 Pr(Xn > 1) = 1 p0 ,


et E(An ) est le nombre moyen darrives pendant un service, que lon calcule par :
Xn Z +
E(An ) = k Pr(k arrives pendant t)y(t)dt
k=0 0
+ +
(t)k
X Z
= k et y(t)dt
0 k!
k=0
+
!
+
(t)k
Z X
= et y(t)t dt
0 k!
k=0
Z +
= ty(t)dt = E(Y )
t=0
(t)k
(rappelons que + t
P
k=0 k! = e )
On a bien : 1 p0 = E(Y ) 

Remarquons que pour une file M/M/1, alors E(Y ) = 1/ et le formulaire nous
donne bien la mme expression.
Remarquons aussi que pour que la file ne sallonge pas indfiniment, le nombre
moyen darrives pendant la dure dun service doit tre strictement infrieur 1, i.e.
E(Y ) < 1.
Nous allons voir maintenant que lon peut dterminer le nombre moyen de clients
dans le systme et le temps moyen dattente.
Dans lexercice 3.9.1 sur le paradoxe de lautobus, on dmontrera de manire d-
tourne la proprit suivante sur la dure rsiduelle de service (dfinie comme la dure
restant un serveur pour terminer son service lorsquun nouveau client arrive dans la
file) :
Proposition 3.6 Dans une file M/G/1, le temps moyen rsiduel de service tr vrifie :
1 Var(Y )
tr = E(Y ) +
2 2E(Y )
o Y est la dure dun service.
Dans la foule nous allons tablir des formules tablissant le temps dattente moyen
et le nombre moyen de clients dans une file M/G/1. Notons = E(Y ). On suppose
que < 1 pour que la file dattente ne sallonge pas indfiniment.
Daprs la proprit PASTA, un nouveau clients voit Nf clients dans la file, qui
seront servis avant lui sous hypothse de politique de service FIFO 4 . Chacun de ces
clients aura un temps de service moyen de E(Y ).
4. Cest le seul endroit o nous faisons une hypothse sur la politique de service.

F. Sur 2013-2014
63 3.7. LES FILES M/G

Donc le temps moyen dattente dun nouveau client est : Nf E(Y ), augment de
son temps rsiduel moyen dattente, le temps rsiduel dattente tant la diffrence entre
linstant de la fin du service courant et linstant darrive.
Le temps rsiduel dattente est 0 si le serveur est inoccup lorsque le nouveau client
arrive (avec une probabilit 1 daprs la proposition 3.5 et la proprit PASTA) et
gal au temps rsiduel de service sinon (probabilit ).
Donc : Tf = Nf E(Y ) + tr .
Dautre part, avec la loi de Little, Nf = Tf , donc en rsolvant en Tf et Nf :

tr
Tf =
1 E(Y )
et :
tr
Nf =
1 E(Y )
Comme le temps moyen de sjour T (temps dattente + temps de service) vrifie
T = Tf + E(Y ) et le nombre moyen de client dans le systme vrifie N = T , on
conclut :

Proposition 3.7 (Formules de PollaczekKhinchine).


Le nombre moyen de clients dans une file M/G/1 avec des arrives Poissonniennes
de taux et une dure de service Y de loi quelconque 5 est :

2 (1 + Var(Y )/E(Y )2 )
N =+
2(1 )

o = E(Y ).
Le temps moyen de sjour dans la file est :

(1 + Var(Y )/E(Y )2 )
 
T = E(Y ) 1 +
2(1 )

Remarquons que dans le cas particulier M/M/1, alors Var(Y )/E(Y )2 = 1 (cf propo-
sition 3.2) et on retrouve les formules dj tablies.
Dans le cas particulier M/D/1, alors Var(Y ) = 0.

Exemple 5.
Considrons une entreprise utilisant des machines identiques. Ces machines tombent en
panne au bout dune dure Poissonnienne de taux . (1/ = 10 jours est le MTBF )
5. Enfin, admettant au moins une esprance et une variance.

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 64

La rparation dure (exactement) 20 jours avec probabilit 0,2 et 1 jour avec proba-
bilit 0,8.
Quel est le temps moyen de rparation latelier ? (il ne traite quune machine la
fois)
On calcule successivement :
E(Y ) = 20 0, 2 + 1 0, 8 = 4, 8 jours.
Var(Y ) = E(Y 2 ) E(Y )2 = 57, 76
= E(Y ) = 0, 48 (donc p0 = 0, 52).
La formule de Pollaczek-Khinchine nous fournit alors : T = 12, 57 jours. On dduit
aussi le nombre moyen de machines prsentes dans latelier : N = 1, 257 machine.

3.8 Rseaux de files dattente


Nous ne traiterons cette situation que dans le cas dun exemple.
Considrons une situation o les clients entrent dans un premier systme modlis
par une file M/M/1/3 (taux dentre , taux de service 1 ), et quune fois quils ont t
servis ils entrent dans une file M/M/1/2 (taux dentre 0 , taux de service 2 ), comme
reprsent sur le schma ci-dessous.

2 1 0 1
S1 S2

1 2

Ici lentre dans le second systme suit bien un processus de Poisson, comme la
sortie du premier systme (ds quun client a t servi dans le premier systme, il entre
sans dlai dans la seconde file). Le taux 0 dentre dans la seconde file est 0 = 0
lorsquil ny a pas de client servi en S1 , sinon 0 = 1
On ajoute lhypothse que lorsque lune des files est pleine, les clients arrivant sont
perdus (les clients sortant du premier systme repartent sans passer par le deuxime).

Notons (i, j) pour i {0, 1, 2, 3} et j {0, 1, 2} ltat du systme global : i clients


dans le premier systme dattente, j dans le second. Le systme peut tre reprsent par
le graphe de la page suivante.

F. Sur 2013-2014
65 3.8. RSEAUX DE FILES DATTENTE

0,0 bF
FF
FF
FF
FF 2
FF
FF
FF
FF
FF
 1
1,0 bF / 0,1
FF bFF
FF FF
FF FF
FF 2 FF
F FF2
FF FF
FF FF
FF FF
FF FF
 F  F
1 1
2,0 bF / 1,1 bF / 0,2
FF FF S
FF FF
FF FF
FF 2 FF 2
FF FF
FF FF 1
FF FF
FF FF
FF FF
 1  1 
3,0 bF / 2,1 bF / 1,2
FF FF S
FF FF
FF FF
FF 2 FF 2
FF FF
FF FF 1
FF FF
FF FF
FF FF
 1 
3,1 bF / 2,2
FF S
FF
FF
FF 2
FF
FF 1
FF
FF
FF

3,2

On est dans la situation dun systme dattente M/G du type de ceux de la sec-
tion 3.7.1 et les calculs se font laide du thorme des coupes, formule de Little, etc.
Voir les exercices.

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 66

F. Sur 2013-2014
67 3.9. EXERCICES

3.9 Exercices
3.9.1 Paradoxe de lautobus
La cadence moyenne de passage dun autobus un arrt est approximativement
de 10 minutes.
Quel est le temps moyen dattente dun autobus lorsquon arrive larrt ?

3.9.2 Dimensionnement dun service-client


On veut prvoir le nombre de conseillers affecter un service-client tlphonique
(une hotline ) de manire assurer que dans plus de 90% des cas, les appels sont
traits.
On estime que les appels sont rpartis selon un processus de Poisson de taux = 40
appels par heure, et que la dure des appels est rpartie selon une loi exponentielle de
moyenne 1/ = 1/5 heure.
On se placera dans les deux cas limites : 1) la file dattente est illimite (les clients
sont mis en attente au cas o tous les conseillers sont occups et ont la patience dat-
tendre), et 2) il ny a pas de file dattente (lorsque tous les conseillers sont occups, les
clients abandonnent).
Quel est le cot conomique de passer dune qualit de service de 90% 99% ?

3.9.3 Vlos en libre service (rattrapage 2010-2011)


On considre une station de vlos en libre service (Vlo Stanlib Nancy).
Cette station a une capacit de stockage de trois vlos.
On suppose que les vlos emprunts reviennent dans cette mme station (une seule
station pour toute la ville). La dure demprunt de chaque vlo est exponentielle, de
dure moyenne 1/ = 30 minutes. Les utilisateurs arrivent selon une loi de Poisson de
taux = 2 utilisateurs/heure : si un vlo est disponible leur arrive ils lempruntent,
sinon ils partent.
1. Dessinez le graphe du processus de naissance et de mort associ. Les quatre tats
correspondront au nombre de vlos disponibles dans la station.
2. Dterminez la probabilit pk , en rgime permanent, pour quil y ait k vlos dans
la station (0 6 k 6 3).
3. Application numrique : calculez la probabilit pour quil ny ait aucun vlo la
station.
4. On envisage daugmenter la capacit de stockage de la station de trois vlos N
vlos. Avec les valeurs prcdentes de et , comment fixer N de manire ce
quun utilisateur trouve au moins un vlo dans plus de 99% des cas ?

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 68

3.9.4 Chez le mdecin (examen 2010-2011)


Un mdecin reoit des patients sans rendez-vous. Les arrives sont distribues de
manire Poissonnienne avec un taux = 4 arrives/heure. La dure de consultation suit
une loi exponentielle de moyenne 12 minutes. Bien sr, la salle dattente a une capacit
limite, et lorsquelle est pleine, les patients sont obligs daller ailleurs.
Le mdecin voudrait assurer une qualit de service telle quil soit capable daccueil-
lir plus de 90% des patients se prsentant au cabinet.

1. Quel modle vu en cours (donnez la notation de Kendall) vous semble bien reprsen-
ter cette situation ?
2. Comment dimensionner la salle dattente de manire atteindre la qualit de ser-
vice cible ?
3. En fait, les patients qui arrivent alors que la salle dattente nest pas pleine nen-
trent que sils jugent lattente raisonnable. On note N la capacit du cabinet
(places en consultation et en salle dattente). Si n < N est le nombre de pa-
tients dans le cabinet, un nouveau patient dcide daller ailleurs avec une proba-
bilit 1 1/(n + 1) (et donc dentrer dans la salle dattente avec une probabilit
1/(n + 1)). Dans quelle proportion du temps la salle dattente est-elle pleine ?
Faites le calcul avec la plus petite salle dattente rpondant la question prc-
dente.

3.9.5 Un serveur informatique (rattrapage 2011-2012)


Les statistiques dutilisation dun serveur informatique mono-processeur montrent
quen moyenne, 10 requtes lui sont adresses par seconde, et quil est inactif 10% du
temps.

1. On suppose que les conditions sont runies pour modliser ce systmes par un
systme dattente M/M/1. Dessinez le graphe associ et expliquez quoi cor-
respondent les tats de la chane de Markov ainsi que les taux et (mmes
notations que dans le cours).
2. Dterminez les valeurs numriques de , et = /.
3. Quel est le temps moyen de traitement dune requte ?
4. Calculez le nombre moyen de requtes en attente de traitement.
5. On suppose prsent que le serveur est bi-processeur ; le nombre de requtes
adresses ne change pas et le serveur est encore inactif 10% du temps. Que devi-
ennent les valeurs numriques des questions prcdentes ?

F. Sur 2013-2014
69 3.9. EXERCICES

3.9.6 Problme de maintenance informatique (examen 2010-2011)


Un serveur informatique monoprocesseur reoit des requtes distribues selon un
processus de Poisson de taux = 800 requtes / seconde. Le temps de traitement dune
requte est distribu selon une loi exponentielle de moyenne 1 milliseconde (taux de
service 1 ).
En raison dune programmation dfaillante, lorsque N 1 requtes sont dans le sys-
tme et quune N -me requte arrive, le serveur plante , et doit tre redmarr par
un technicien. Le temps dintervention du technicien est distribu de manire exponen-
tielle, avec une moyenne 10 minutes (taux de service 2 ). Aprs redmarrage, toutes les
requtes en attente sont perdues.
On vous demande de ne pas faire dapplication numrique dans cet exercice.
1. Dessinez le graphe du processus associ ce systme. Sagit-il dun processus de
naissance et de mort ?
2. Si 0 6 k < N , soit pk la probabilit pour quen rgime permanent k requtes
soient en attente, et pN la probabilit que le serveur soit hors-service. Montrez
que si k > 0 :
2 s k 1
pN k = pN
s1
o s = 1 /.
3. Quelle est la probabilit pour que le serveur soit hors-service ?
4. En supposant que vous avez calcul les valeurs numriques des pk (on ne vous
demande pas de le faire !), par quelle formule obtiendriez-vous le nombre moyen
de requtes dans le serveur ?

3.9.7 tude dune file M/G/1 (examen 2010-2011)


Daprs le cours phnomnes alatoires de Claudie Chabriac en M2 I SMAG Toulouse 2.
On considre une petite agence, un employ. On suppose quelle peut accueillir
un nombre illimit de clients, qui arrivent selon un processus de Poisson de taux = 3
clients par heure. La dure de service est exponentielle, de moyenne 1/1 = 10 minutes.
Dans = 80% des cas, le client se satisfait des explications, mais, dans = 20% des
cas, le client demande des explications supplmentaires, de dures rparties selon une
loi exponentielle de moyenne 1/2 = 20 minutes. On a donc affaire un systme de
type M/G/1. Le but de cet exercice est den faire ltude par la mthode dite des sries
formelles.

1. Dessinez le graphe associ ce phnomne dattente, en prcisant les transitions.


Indication : les sommets correspondant au cas o au moins un client est dans
lagence seront nots (n, i), o n > 0 est le nombre de clients dans lagence, et i

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 70

la phase de service du client que lon sert (i = 1 : explications standards ; i = 2 :


explications supplmentaires).

2. Soit pn,i les probabilits pour quen rgime stationnaire le systme se trouve dans
ltat (n, i), et p0 la probabilit pour quil ny ait pas de client dans lagence.
P n
P+ n
Soit pn = pn,1P+p n,2 si n > 0. Notons F (x) = n=0 pn x , F1 (x) = n=1 pn,1 x ,
+ n
et F2 (x) = n=1 pn,2 x .
tablissez les quations suivantes :

F1 (x) + F2 (x) = F (x) p0
1 F1 (x) + 2 F
 2 (x) = xF (x)
(1 x) + 2 F2 (x) = 1 F1 (x)

3. Soit N le nombre moyen de clients dans lagence. Comment sexprime N en


fonctions des pn ?

4. Justifiez le systme :

F1 (1) + F2 (1) = 1 p0 ; N = F10 (1) + F20 (1)
1 F1 (1) + 2 F2 (1) = ; 1 F10 (1) + 2 F20 (1) = (N + 1)
1 F1 (1) = 2 F2 (1) ; 1 F10 (1) = 2 F20 (1) F2 (1)

Quelles sont les inconnues ?

5. Dmontrez que :
F1 (1) + F2 (1) F1 (1)F2 (1) + F2 (1)2
N=
1 F1 (1) F2 (1)
et exprimez F1 (1) en fonction de et 1 , et F2 (1) en fonction de , , et 2 .

6. Comment trouver le temps moyen de sjour T dans cette agence ?

7. Quel est le taux dactivit de lemploy ?

8. Application numrique : que valent ici N , T , et le taux dactivit ?

3.9.8 Maintenance dun systme industriel critique (examen 2011-


2012)
Un systme industriel critique (par exemple le systme de refroidissement dune
centrale nuclaire) est certifi avec un temps moyen de fonctionnement sans panne gal
1/. Il est doubl dun systme de secours rigoureusement identique (mme temps
moyen de fonctionnement). Une quipe de rparation est disponible en permanence, et
est capable deffectuer la rparation dun des deux systmes en un temps moyen de 1/.

F. Sur 2013-2014
71 3.9. EXERCICES

1. On suppose que lorsque le systme principal tombe en panne, le systme de sec-


ours prend instantanment le relais. Sous quelles conditions peut-on modliser
lvolution du couple des deux systmes sous la forme dun processus de nais-
sance et de mort ? On supposera dans la suite ces conditions runies. Dessinez le
graphe associ.
Exprimez la probabilit de dfaillance simultane en rgime permanent en fonc-
tion du rapport = /.
Que devient cette probabilit si deux quipes de rparation indpendantes sont
disponibles ? (une machine en panne ne peut tre rpare que par une quipe ;
dessinez le nouveau graphe)
Caractrisez dans les deux cas le processus dattente laide des notations de
Kendall.
Dans la suite de lexercice on reviendra au cas dune seule quipe de maintenance.

2. En fait, le dmarrage du systme de secours est une action critique, mais indpen-
dante de la panne du systme principal. On fait lhypothse que ce systme d-
marre et prend le relais avec une probabilit , et quil tombe en panne instanta-
nment au dmarrage avec une probabilit 1 . Calculez la nouvelle probabilit
de dfaillance.

3. On fait une hypothse alternative la question prcdente : les deux systmes


fonctionnent maintenant en parallle, et la panne dun des deux systmes naf-
fecte pas la scurit. Calculez la probabilit de dfaillance simultane des deux
systmes.

4. Quel est le meilleur des deux prcdents cas en termes de scurit ?

5. votre avis, quelle hypothse des question 2 et 3 est trop optimiste ? (vous pouvez
vous inspirer de lactualit rcente.)
Vous expliquerez prcisment quel endroit de la modlisation des questions 2
et 3 intervient cette hypothse.

6. On se place dans les hypothses des questions 2 et 3 avec quatre systmes (soit
un systme principal et trois systmes de secours devant tre dmarrs comme
dans la question 2, soit quatre systmes en parallle comme dans la question 3).
Dans ces deux cas, dessinez le graphe de la chane de Markov correspondant au
nombre de systmes en panne, et crivez les quations permettant de trouver les
probabilits en rgime stationnaire (on ne vous demande pas de les rsoudre).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 72

3.9.9 Approvisionnement et gestion dun stock (examen 2013-2014)


Exercice inspir de lexamen 2006 lUniversit dUtrecht.
On considre un magasin vendant un seul type de produit, dont le stock inital est
de 4 units. Les clients arrivent selon un processus de Poisson de taux = 2 arrives
par heure. Chaque client demande une unit de produit : soit le produit est en stock et il
lemporte avec lui, soit le produit nest pas en stock et dans ce cas il attend patiemment le
rapprovisionnement. Dans les deux cas, larrive dun client dclenche immdiatement
une demande de rapprovisionnement vers le fournisseur pour une unit. Les dlais
de rapprovisionnement sont indpendants, distribus selon une loi exponentielle de
moyenne 1/ = 1 heure.
1. Dessinez le graphe reprsentant ce phnomne dattente, sous la forme :
v v v v v v u .3 . . . . .
0 61 6 2 6 3 64 6 5 66

o les tats 0, 1, 2, 3, 4 correspondent respectivement un stock de 4, 3, 2, 1, 0


objet(s), et les tats 5, 6, 7, . . . 1, 2, 3, . . . clients en attente.
(on vous demande donc dcrire les taux qui correspondent aux arcs.)
2. On suppose prsent que lorsquun nouveau client arrive devant le magasin, il
repart (sans dclencher de demande de rapprovisionnement) sil voit deux per-
sonnes dj en attente lintrieur du magasin et nentre que dans le cas contraire.
Dessinez le graphe associ.
3. On reprend les hypothses de la question 2, mais on suppose quune fois que les
stocks sont vides, les nouvelles demandes de rapprovisionnement sont traites
en urgence avec un dlai rparti selon une loi exponentielle de moyenne 1/0 =
1/2 heure. (cela naffecte pas les demandes dj passes, mais uniquement celles
passes lorsque le stock est vide).
Dessinez le graphe associ.
Pour la suite de lexercice, on se place nouveau dans les conditions de la ques-
tion 1.
4. Calculez les probabilits
P+ en rgime permanent pn , pour n > 0, en fonction de =
/. On rappelle que n=0 xn /n! = ex .
5. Quel est le nombre moyen de produits en stock ? (en fonction de )
6. Quelle est la probabilit pour quun nouveau client doive attendre le rapprovi-
sionnement du stock ?
7. Quel est le nombre moyen de clients en attente dans le magasin, et le temps dat-
tente moyen ?

F. Sur 2013-2014
73 3.9. EXERCICES

8. On suppose que les dlais de rapprovisionnement sont prsent dterministes : le


rapprovisionnement prend exactement a heures aprs lmission de la demande.
Le raisonnement bas sur un processus de Markov nest donc plus valable. Les
arrives des clients sont toujours rparties selon un processus de Poisson. Dter-
minez les nouvelles probabilits pn en rgime permanent. Vous pourrez introduire
la probabilit pn (t) dtre dans ltat n linstant t et considrer lvolution du
systme sur lintervalle de temps [t a, a].

3.9.10 Un guichet avec des clients prioritaires (rattrapage 2013-2014)


Le public se prsente un guichet unique dans une administration, selon une loi
darrive Poissonnienne, dintensit . Les dures de service sont exponentielles, de
dure moyenne 1/. Lorsque lemploy au guichet sert un client, les nouveaux arrivants
attendent dans une file.
1. Donnez la notation de Kendall qui correspond ce phnomne dattente.
2. Donnez la probabilit (en rgime permanent) pour que n personnes soient prsentes
(en comptant la personne au guichet et celles en attente).
3. Donnez le nombre moyen de personnes en attente dans la file.
4. Quel est le temps moyen de sjour du public dans cette administration ?
5. On fait lhypothse supplmentaire que des personnes prioritaires se prsentent
galement au guichet, selon une loi darrive Poissonnienne dintensit 0 (mme
loi de service). Ces personnes accdent au guichet ds que lemploy a termin
avec la personne quil sert, sans attendre que les personnes dans la file soient
servis.
Dessinez le graphe du processus de Markov associ ce phnomne dattente.
Vous noterez (n, m) ltat du systme dans lequel n personnes non-prioritaires
et m personnes prioritaires sont prsentes.
6. Lorsquau moins trois personnes (prioritaires ou non) sont prsentes, un second
guichet, identique au premier, ouvre. Dessinez le nouveau graphe.
7. On revient aux hypothses de la question 5. Montrez que si n > 1 et m > 1, alors

0 pn,m1 + pn1,m + pn,m+1 = ( + + 0 )pn,m

o pn,m est la probabilit (en rgime permanent) pour que le systme soit dans
ltat (n, m).

Recherche Oprationnelle
CHAPITRE 3. LES FILES DATTENTES 74

F. Sur 2013-2014
Chapitre 4

Correction des exercices

Ces propositions de corrections ont pour unique but de permettre le travail en au-
tonomie aprs la sance de TD.
Comme pour les solutions de mots-croiss, elles ne sont consulter quaprs avoir
rflchi lnonc (cest--dire aprs le TD).

75
CHAPITRE 4. CORRECTION DES EXERCICES 76

4.1 La programmation dynamique


4.1.1 La distance ddition
1. Il suffit de vrifier d(x, y) > 0 (vident), d(x, y) = 0 si et seulement si x = y
(vident aussi), d(x, y) = d(y, x) (vrai car insertion et substitution jouent des
rles symtriques et ont le mme cot), et lingalit triangulaire.
Si on peut passer laide de d(x, z) insertions/suppressions de x z et de d(z, y)
insertions/suppressions de z y, alors on peut passer en d(x, z) + d(z, y) de x y.
Donc d(x, y) 6 d(x, z) + d(z, y).
2. Pour passer du plus court des deux mots x et y au plus long, il faut au moins
|mn| insertions. Donc |mn| 6 d(x, y). Il y a dailleurs galit si et seulement
si on obtient le plus long des mots partir du plus court en exactement |m n|
insertions.
On peut passer de x y en m suppressions (de manire arriver au mot vide)
suivies de n insertions. Do d(x, y) 6 m + n. On montre que le cas dgalit
correspond aux mots nayant pas de lettre en commun (raisonnement par lab-
surde).
3. d(xi , y0 ) = i et d(x0 , yj ) = j (vident, ceci rsulte aussi des ingalits prc-
dentes).
4. crivons xi et yj sous la forme : xi = xi1 et yj = yj1 .
Il y a trois manires de transformer xi en yj :
a) en transformant xi1 en yj1 , puis,
si = on na plus rien faire (cot total d(xi1 , yj1 )) ;
si 6= , en supprimant la i-me lettre de x et en insrant la j-me lettre
de y (cot total de d(xi1 , yj1 ) + 2) ;
b) en transformant xi1 en yj , puis en supprimant la i-me lettre de xi (cot
de d(xi1 , yj ) + 1) ;
c) en transformant xi en yj1 , puis en insrant la j-me lettre de yj (cot de d(xi , yj1 )+
1).
Dans le premier cas, les cot des sous-cas 6= et = se confondent en
d(xi1 , yj1 ) + 2i,j .
Do la relation demande.
5. Si on note C(i, j) le cot pour le calcul rcursif de la distance entre deux mots
de longueur i et j, alors C(i, j) > C(i 1, j 1) + C(i 1, j) + C(i, j 1).
En dpliant cette rcurrence sous forme arborescente (faire un dessin), on voit
quil faut un arbre ternaire de profondeur n pour aboutir aux C(i, 0), C(0, j) dont
on connat la valeur par la question 3. En remontant : les cots de la profondeur n

F. Sur 2013-2014
77 4.1. LA PROGRAMMATION DYNAMIQUE

sont (au moins 1 ) de 1 (et il y en a 3n , ceux la profondeur (n 1) sont (au moins)


de 3 (et il y en a 3n1 ), . . ., celui la profondeur 0 est (au moins) de 3n (et il y en
a un).
Do une complexit exponentielle : C(n, n) > 3n .
6. Pour un algorithme de programmation dynamique, il suffit dorganiser le calcul
dans un tableau de taille (m + 1) (n + 1) comme en 7.
7. On applique la formule de rcurrence pour remplir le tableau, on trouve d = 3.
j i n g e n i e u r
i 0 1 2 3 4 5 6 7 8 9
i 1 0 1 2 3 4 5 6 7 8
g 2 1 2 1 2 3 4 5 6 7
n 3 2 1 2 3 2 3 4 5 6
e 4 3 2 3 2 3 4 3 4 5
n 5 4 3 4 3 2 3 4 5 6
e 6 5 4 5 4 3 4 3 4 5
u 7 6 5 6 5 4 5 4 3 4
r 8 7 6 7 6 5 6 5 4 3
On voit que la complexit en espace (pour le calcul de la distance) est en fait en
O(min(m, n)) (on na pas besoin de mmoriser toutes les lignes du tableau, mais
essentiellement la ligne qui prcde la ligne courante). Bien sr, il faut conserver
tout le tableau si on veut remonter les oprations par back-tracking.
8. Par back-tracking on peut retrouver la suite des oprations (insertion/suppression)
effectues pour arriver la distance ddition.
j i n g e n i e u r
i 0 1 2 3 4 5 6 7 8 9
i 1 0 1 2 3 4 5 6 7 8
g 2 1 2 1 2 3 4 5 6 7
n 3 2 1 2 3 2 3 4 5 6
e 4 3 2 3 2 3 4 3 4 5
n 5 4 3 4 3 2 3 4 5 6
e 6 5 4 5 4 3 4 3 4 5
u 7 6 5 6 5 4 5 4 3 4
r 8 7 6 7 6 5 6 5 4 3
En partant de la case en bas droite et en remontant : un dplacement en diagonale
correspond au cas a) (on recopie le caractre courant sil est identique dans les
deux mots o on fait suppression puis insertion sil est diffrent), un dplacement
1. au moins car il ny a pas que des C(i, 0) ou C(0, j) au niveau n de larbre ternaire. . .

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 78

vers la gauche au cas b) (suppression dans xi ), un dplacement vers le haut au cas


c) (insertion dans yj ).
Do la suite de transformations :
ingenieur -> ingeneur (suppression) -> ineneur (suppression) -> igneneur (inser-
tion)
ingenieur ingeneur (suppression) ineneur (suppression)
igneneur (insertion)
Bien sr, il ny a pas unicit de la suite de transformations de longueur minimale.
Question subsidiaire : on autorise prsent les substitutions, avec un cot de 1 (on
change le 2 en 1 dans la formule de rcurrence, lapplication numrique est modifie).

4.1.2 Problme de location de skis


1. Comme dans tout problme doptimisation sur un support fini, le minimum existe.
Supposons le minimum ralis par a non croissante. Donc il existe deux skieurs
i1 et i2 tels que i1 < i2 et la(i1 ) > la(i2 ) . On va montrer quen changeant les paires
de skis de i1 et i2 , alors on naugmente jamais la valeur de la fonction objectif.
Donc on peut transformer la fonction daffectation a en une fonction daffectation
croissante tout en diminuant ou conservant la valeur de la fonction objectif.
En effet, comme i1 < i2 , alors ti1 6 ti2 .
Soit D la diffrence entre la valeur de lobjectif ralis par a et la valeur ralise en
changeant les deux paires de skis comme prcdemment. Aprs simplification :

D = |ti1 la(i1 ) | + |ti2 la(i2 ) | |ti1 la(i2 ) | |ti2 la(i1 ) |.

Alors :
a) si ti1 6 ti2 6 la(i2 ) 6 la(i1 ) : D = 0
b) si ti1 6 la(i2 ) 6 ti2 6 la(i1 ) : D = 2(ti2 la(i2 ) ) > 0
c) si la(i2 ) 6 ti1 6 ti2 6 la(i1 ) : D = 2(la(i1 )ti1 ) > 0
d) si la(i2 ) 6 ti1 6 la(i1 ) 6 ti2 : D = 2(la(i1 ) la(i2 ) ) > 0
e) si la(i2 ) 6 la(i1 ) 6 ti1 6 ti2 : D = 0.
Ainsi, par permutations successives de skieurs, on transforme la fonction a non
croissante en une fonction croissante qui ralise galement le minimum.
2. Considrons le ski j dans laffectation optimale donnant S(i, j). Ou bien ce ski
nest pas affect, et donc S(i, j) = S(i, j 1), ou bien il est affect, et dans ce
cas il sera ncessairement affect au i-me skieur car la fonction daffectation est
croissante.

F. Sur 2013-2014
79 4.1. LA PROGRAMMATION DYNAMIQUE

3. Pour calculer laffectation optimale, on commence par trier les skis et les skieurs.
Puis on remplit un tableau :

t1 t2 t3 ... tn1 tn
l1 |t1 l1 | x x ... x
l2 o |t1 l1 | + |t2 l2 | x ... x x
l3 o o |t1 l1 | + |t2 l2 | + |t3 l3 | ... x x
..
.
lm1 x x x ... o o
lm x x x ... x SOL

o x dsigne les cases que lon ne calcule pas et o les cases calculer.
En effet : 1) sil ny a quun skieur, on lui attribue le ski le plus proche de sa
taille (initialisation de la colonne de t1 ) ; 2) sil y a autant de skieurs que de skis
laffectation se fait simplement par a(i) = i ; 3) pour calculer la case courante
laide de la formule de rcurrence, on a besoin des valeurs des cases au dessus
gauche et au dessus.
Le but est de calculer la valeur de la case SOL, donc il nest pas ncessaire de
calculer toutes les valeurs du triangle infrieur gauche : dans chacune des n
colonnes, m n cases sont calculer.
4. Complexit des tris : O(m log(m)+n log(n)) (admis, cf cours 1A ou page wikipedia),
et n(m n) cases calculer. Do une complexit globale en :
O(m log(m) + n log(n) + n(m n)).

4.1.3 quilibrage de charge sur deux machines en parallle


1. Lexpression de DT est vidente. Faites un dessin comme celui de la question
suivante.
2. minDT(n, T ) = ( ni=1 ti + T )/2. En effet, tout se passe comme si on avait une
P
n + 1-me tche de dure T , et des machines exactement quilibres.
On a :

minDT(k, T ) = min minDT(k + 1, |T tk+1 |), minDT(k + 1, T + tk+1 ) .
En effet, la k + 1-me tche est soit sur la machine la moins charge avec k tches
(cas 1, deux sous-cas sont possibles selon que la dure de la k + 1-me tche est
infrieure ou suprieure T , do la valeur absolue), soit sur la machine la plus
charge (cas 2).
Ceci est illustr sur le dessin suivant : les k premires tches sont en vert, la k + 1-
me en rouge, les n (k + 1) restantes places de manire optimale en noir. Le
schma de gauche correspond au cas 1, celui de droite au cas 2.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 80

T T

M1 M1

M2 M2

minDT(k,T) minDT(k,T)

3. On cherche la valeur de minDT(0, 0).


tape 1. T varie a priori entre 0 et 11 pour k = 4 (somme des temps).
On connat les minDT(4, T ) et on sait que :

minDT(3, T ) = min minDT(4, |T 6|), minDT(4, T + 6) ,

o T varie entre 0 et 5 pour k = 3.


On remplit le tableau ci-dessous.
tape 2. T varie entre 0 et 3, la rcurrence scrit :

minDT(2, T ) = min minDT(3, |T 2|), minDT(3, T + 2) .

etc.

T 0 1 2 3 4 5 6 7 8 9 10 11
tape 0 minDT(4, T ) 5.5 6 6,5 7 7,5 8 8,5 9 9,5 10 10,5 11
tape 1 minDT(3, T ) 8,5 8 7,5 7 6,5 6 - - - - - -
tape 2 minDT(2, T ) 7,5 7 6,5 6 - - - - - - - -
tape 3 minDT(1, T ) 6,5 6 - - - - - - - - - -
tape 4 minDT(0, T ) 6 - - - - - - - - - - -

Remarque 1 : comme dans lexercice avec les skieurs, il nest pas ncessaire de
calculer lintgralit du tableau pour arriver minDT(0, 0) qui est la valeur cher-
che. Remarquons quon a intrt ordonner les tches par dure croissante pour
minimiser le nombre doprations. On peut demander quelle est la complexit de
lalgorithme. On voit quil est en :
n n1
! n
!
X X X
O 1+ ti + 1 + ti + + 1 + t1 + 1 = O n + 1 + (n + 1 i) ti .
i=1 i=1 i=1

Remarque 2 : les dures de fin non-entires correspondent des dcalages T non


ralisables puisque les dures des tches sont entires. On pourrait encore simpli-
fier les calculs en liminant les cases correspondantes.
Conclusion : lordonnancement optimal a une dure de 6.

F. Sur 2013-2014
81 4.1. LA PROGRAMMATION DYNAMIQUE

On fait une propagation arrire (en gras sur le tableau prcdent). Le cas dgalit
dans lquation de rcurrence permet de dduire si la tche est place sur la ma-
chine la moins charge ou sur la plus charge. On voit quon arrive un dcalage
T = 1 entre les deux machines.
Il est obtenu en plaant : la tche 1 sur la machine la plus charge (machine 1 par
exemple, arbitraire cette tape), puis la tche 2 sur la machine la plus charge
(donc la machine 1), puis la tche 3 sur la machine la plus charge (donc ma-
chine 1), puis la tche 4 sur la machine la moins charge (qui est alors la ma-
chine 2).
Cest--dire :
- machine 1 : tches 1 - 2 - 3
- machine 2 : tche 4
Sans grande surprise. . . (mais il fallait une application numrique lgre ).

4.1.4 Un problme dconomie mathmatique


1. On a :
( T
)
X
U (k ) = max log(ct ) + b bt log(ct ) t.q. t {, . . . , T }, kt ct > 0 .
(ct )t{,...,T }
t= +1

Do la relation cherche (on maximise dabord sur les (ct )t{ +1,...,T } puis sur c ).
Il sagit dune quation de Bellman, on va se ramener une succession de prob-
lmes doptimisation une variable en gnralisant le problme : on ne considre
plus le capital linstant t comme une consquence des choix de consommation
dans le pass (et du capital initial), mais comme une variable libre k pouvant
prendre nimporte quelle valeur relle.
2. Daprs la question prcdente, on a :
k, U (k) = max {log(c ) + b U +1 (k c ) t.q. k c > 0} .
c

En supposant UT +1 (k) = 0 pour tout k, on a :


UT (k) = max{log(cT ) t.q. k cT > 0}.
cT

Le logarithme tant croissant, ce maximum est atteint pour cT (k) = k et donc


UT (k) = log(k) + log().
3. k, UT 1 (k) = maxcT 1 {log(cT 1 ) + b UT (k cT 1 ) t.q. k cT 1 > 0} .
Donc :
k, UT 1 (k) = max {log(cT 1 ) + b log(k cT 1 ) + b log() t.q. k cT 1 > 0} .
cT 1

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 82

Le maximum est atteint pour cT 1 maximisant f (x) = log(x) + b log(k x).


Comme f 0 (x) = 1/x b/(k x), le maximum est atteint pour x = k/(1 + b).
Donc cT 1 (k) = k/(1 + b) (qui vrifie bien k cT 1 (k) > 0).
Avec cette valeur, on dduit : k, UT 1 (k) = log(k) + b log(k) + uT 1 o uT 1
est un terme constant ne dpendant pas de k mais uniquement de b et , qui
nintervient donc pas dans la maximisation et na pas besoin dtre explicit.
En itrant, on trouve de la mme manire (on injecte la valeur de U +1 dans U et
on maximise par rapport c ) que :

X
k, UT (k) = bt log(k) + uT
t=0

et :
k
cT (k) = P .
t=0 bt

On a donc dtermin une politique optimale de consommation. Dans le cas o on


connat k0 (capital initial), on calcule donc la consommation initiale :

XT
c0 (k0 ) = k0 / bt .
t=0

Puis on dtermine le nouveau capital k1 = k0 c0 (k0 ), et la consommation


optimale linstant 1 :
k1
c1 (k1 ) = PT 1 .
t
t=0 b
Cette quantit peut bien sr sexprimer en fonction du capital initial mais lex-
pression est un peu lourde.
On calcule les consommations optimales de proche en proche.
La dernire consommation est cT (kT ) = kT qui est le capital (actualis) restant
la fin : comme on pouvait sy attendre, tout le capital restant est utilis t = T .

Examinons deux cas limites qui montre que ce modle conomique reprsente bien
des situations ralistes .
b 0 : individu impatient. Comme :

k(1 b)
cT (k) =
1 b +1
dans ce cas cT (k) k. Avec cette politique, tout le capital est dpens ds le
dpart.

F. Sur 2013-2014
83 4.1. LA PROGRAMMATION DYNAMIQUE

b 1 : individu patient. Ici : cT (k) k/( + 1). A chaque priode de temps,


lindividu dpense une fraction 1/( +1) du capital actualis, o est le temps lui
restant vivre. Le nouveau capital est alors kT +1 = kT kT /( + 1) =
kT /( + 1), et il augmente si /(1 + ) > 1 i.e. > 1/( 1), et diminue
sinon. On peut remarquer au passage que la consommation au cours du temps
vrifie : cT +1 = kT +1 / = 2 kT /( + 1) = cT (suite gomtrique :
la consommation suit exactement lactualisation du capital).
Donc en supposant le rendement x strictement positif (placement non risqu
taux constant, pas dinflation) et 1/x < T , au cours de sa vie le rentier patient
voit : son capital augmenter, puis diminuer la fin de sa vie (de manire avoir
puis le capital sa mort). Par contre si le rendement est trop faible (voire ngatif
en cas dinflation), le capital ne fait que diminuer.

4.1.5 Gestion de stock


On commence par remarquer :

xk+1 = max(xk + uk wk , 0),

ce qui justifie les expressions des cots.


Le but est de minimiser :
n
X
ck (uk ) + r(xk , uk , wk )
k=1

Soit :
( n )
X
F (n + 1, xn+1 ) = min ck (uk ) + r(xk , uk , wk ) .
(uk )16k6n
k=1

Les commandes uk sont telles que le stock xk ne dpasse pas la capacit maxi-
male C, quelque soit k.
On peut crire :
( n1
)
X
F (n+1, xn+1 ) = min cn (un ) + r(xn , un , wn ) + min ck (uk ) + r(xk , uk , wk )
un {0,...,Cxn } (uk )16k6n1
k=1

Donc :

F (n + 1, xn+1 ) = min cn (un ) + r(xn , un , wn ) + F (n, xn+1 un + wn ).


un {0,...,Cxn }

Lextension scrit :

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 84

F (k + 1, xk+1 ) = min {ck (uk ) + r(xk , uk , wk ) + F (k, xk+1 uk + wk )) ,


uk {0,Cxk }

qui est une quation de Bellman.


Le problme initial se rsout par back-tracking connaissant xn+1 = 0.

4.1.6 Problme du sac dos


On dfinit le sous-problme suivant. Soit j tel que 0 6 j 6 n, et V (p, j) la valeur
maximale que lon peut emporter dans un sac dos de capacit maximale p en slec-
tionnant les objets emports parmi 1, . . . , j. On cherche la valeur de V (P, n).
La relation entre les V (, j) et V (, j 1) est la suivante : si j > 1 et p > pj , alors :

V (p, j) = max {V (p pj , j 1) + vj , V (p, j 1)}

et si p < pj alors V (p, j) = V (p, j 1).


En effet, un sac dos de capacit p < pj ne pourra pas emporter le j-me objet
et atteindra la mme valeur maximale quen restreignant le choix aux j 1 premiers
objets. Et si p > pj , soit la valeur maximale V (p, j) est atteinte en emportant le j-me
objet, et on remplit le reste du sac comme un sac de capacit maximale p pj laide
des j 1 premiers objets (alors V (p, j) = V (p pj , j 1) + vj ), soit cette valeur est
atteinte sans emporter le j-me objet et donc en choisissant parmi les j 1 premiers
objets (dans ce cas V (p, j) = V (p, j 1)).
Le calcul de la valeur maximale dun sac dos peut tre fait par rcursion, avec
linitialisation V (p, 0) = 0 et V (0, j) = 0 en remplissant un tableau (complexit :
O(nP )).
Pour lapplication numrique, on remplit donc le tableau laide de la formule rcur-
sive tablie plus haut (pour j croissant puis j fix pour p croissant) :
p\j 0 1 2 3 4
0 0 0 0 0 0
1 0 0 2 2 2
2 0 3 3 3 3
3 0 3 5 5 5
4 0 5 5 5 6
5 0 3 5 6 7
Par backtracking, on conclut que le sac dos optimal (de valeur 7) est compos des
objets 4 et 1.
Une autre mthode de rsolution consiste
Pn crire une quation de Bellman associe
au problme. Il sagit ici de maximiser j=1 j vj o j vaut 1 si lobjet j est mis dans

F. Sur 2013-2014
85 4.1. LA PROGRAMMATION DYNAMIQUE

P
le sac dos et 0 sinon, sous la contrainte : j j pj 6 P . Remarquons quil sagit dun
problme de programmation linaire en nombres entiers !
Le graphe de la section 1.2.4 se construit alors selon les dcisions prises en partant
dun sac vide (capacit 5), on crit aux sommets du graphe de niveau j la capacit
restante selon les dcisions prises aux niveaux < j, et on value les artes par les vj .
On obtient :
/0
1iiiii4 0
ii i i 0
 H ---
6 --
2nnnn
n28
88  --
n n
nnn 88  / -
E 3 FFF
8 88 x< 1  1H 3 ---
xx   333 --
0

FF 01 8x
FF x x888 4   33 --
0 FFF
x x x 88
  33 --
F" x x  
3    / 33 -
-
3 FF E 2  0  2 J FFF 33 --
F F   F 3
FF
 FF 33--
FF  4   FF 3-
0 FF     FF3-3-
F "    F"  
1  / /
53 3
H 
 0  3 x< H
33  x
33    xx 
33    x xx 
x 
33    x xx 
3  /4 4  /4 
0 33 x< 4 0 
33
xxx  0

33 2 x
x 1   
33 xxx   
 xx   
5 FF   
FF   
FF
FF   
0 FF
F"   
5 / 5 / 5
0 0

La rsolution du problme est ainsi quivalente trouver le plus long chemin entre
le sommet lextrme gauche et celui lextrme droite. On trouve bien sr la mme
solution que par la mthode du tableau.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 86

4.2 Les chanes de Markov


4.2.1 Lanatomie dun moteur de recherche
1. Soit M = (mi,j ) la matrice N N telle que :

mi,j = 0 sil ny a pas de lien de la page pi vers la page pj ,
mi,j = 1/L(pi ) sinon

o L(pk ) est le nombre de liens sortant de la page pk .


Soit i {1, . . . , N }. On a :
N
X N
X N
X
mi,j = i,j /L(pi ) = 1/L(pi ) i,j
j=1 j=1 j=1

o i,j vaut 1 si i pointe vers j et 0 sinon. Ainsi N


P
j=1 i,j est le nombre de liens
PN
sortant de pi (et est gal L(pi )), donc j=1 mi,j = 1.
Dans le cadre de lindication :

1/3 1/3 1/3
M = 1/2 1/2 0
0 1/2 1/2

2. Le systme se rsout en : (PR1, PR2, PR3) = (3/9, 4/9, 2/9).


Ce rsultat est conforme lexplication intuitive : la page p2 a le plus fort PageR-
ank car elle est la page avec le plus de liens vers elle ; p1 et p3 ont le mme nombre
de liens vers elles mais p1 hrite en partie du fort PageRank de p2 .

3. Certaines pages (ou sites web) nont pas de liens vers lextrieur et forment donc
des classes finales. Donc la chane de Markov est rductible, donc nest pas er-
godique. La chane tant rductible, il ny a pas unicit de la distribution station-
naire, donc le PageRank nest pas dfini de manire unique.

4. On dfinit M = (mi,j ) par :

mi,j = 1d

N
sil ny a pas de lien de la page pi vers la page pj ,
mi,j = (1 d)/N + d/L(pi ) sinon

Soit i {1, . . . , N }. On a :
N
X N
X
mi,j = 1 d + d i,j /L(pi ) = 1 d + d = 1.
j=1 j=1

F. Sur 2013-2014
87 4.2. LES CHANES DE MARKOV

Cette matrice stochastique M vrifie bien :



N
1dX X PR(pj )
PR M = PR(i) + d
N i=1 L(pj )
pj P(pi )
i{1,...,N }
= PR
PN
daprs la dfinition de Brin et Page car i=1 PR(i) = 1.

5. La chane associe cette matrice de transition est apriodique et irrductible (le


graphe est complet), donc la chane est ergodique.
Ainsi le PageRank est correctement dfini (unicit de la distribution stationnaire).

6. La suite de la citation est :


The probability that the random surfer visits a page is its PageRank.
And, the d damping factor is the probability at each page the "random
surfer" will get bored and request another random page.
Le PageRank est la distribution stationnaire atteinte par le surfer qui parcourt le
web ; chaque page il a une alternative : soit il demande une page au hasard (avec
la probabilit 1 d), soit il clique au hasard sur un des liens de la page courante.
Le cas d = 0 correspond une succession de page web alatoire. Toutes les pages
ont alors le mme PageRank de 1/N .
Le cas d = 1 correspond la premire formulation, qui ne permet pas de dfinir
correctement le PageRank.
Remarquons que le calcul pratique de la (gigantesque) matrice de PageRank nest
pas du tout vident et fait appel des techniques numriques sophistiques. En
particulier, on est aid par le fait que le systme linaire soit creux.

Complment de lecture : Chercher sur le Web : juste un point fixe et quelques algo-
rithmes par Serge Abiteboul dans la brochure Mathmatiques, lexplosion continue ,
disponible ici :
http://smf.emath.fr/content/lexplosion-continue-sommaire

4.2.2 Modle conomique de Leontief


1. Cette condition signifie que pour produire 1e, lindustrie i dpense moins de 1e
auprs de ses fournisseurs. Si lingalit est stricte, cette industrie est bnficiaire,
sinon elle ne produit pas de bnfice. Aucune industrie ne produit perte.

2. qi,j xi est la valeur de la production de lindustrie j que toute industrie i doit


acheter pour produire une valeur xi .
Alors yj = ni=1 qi,j xi . Sous forme matricielle : Y = X Q.
P

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 88

3. La production xi de lindustrie i se dcompose en deux parts : une part servant


la production des aux autres industries (yi ) et lautre part la satisfaction des
besoins bi .
Donc : X = X Q + B, ou : X (I Q) = B.
On peut donc trouver une solution X pour toute valeur de B si et seulement si la
matrice I Q est inversible.

4. qi,n+1 est daprs la question 1 la valeur du bnfice de lindustrie i pour 1e


de production. Au lieu de servir payer lindustrie j comme les qi,j pour j
{1, . . . , n}, qi,n+1 sert payer lindustrie n + 1, qui elle ne paie rien personne.
Do le nom de banque , qui capitalise les bnfices. Notons quune industrie
ne faisant pas de bnfice est telle que qi,n+1 = 0 (elle ne paie rien la banque).
Les tats de la chane associe sont les n industries + la banque, et les proba-
bilits de transition sont les qi,j . Ce sont bien des probabilits par construction
des qi,n+1 (la matrice de transition est bien stochastique). Un arc va du sommet i
vers le sommet j si lindustrie i a besoin dacheter une partie de la production de
lindustrie j.
Il sagit dune chane rductible car lindustrie n + 1 est absorbante. Remarquons
que cette chane pourrait prsenter dautres classes absorbantes.

5. Supposons que les n industries fassent partie de classes transitoires et que la


banque constitue lunique classe absorbante (cest donc un tat absorbant).
Alors on sait daprs le cours que la matrice I Q est inversible, son inverse
tant la matrice fondamentale de la chane de Markov. Dans ce cas, une industrie
est soit bnficiaire (et prsente une transition vers la banque), soit ne fait pas de
bnfice mais il existe alors un chemin vers une industrie elle mme bnficiaire.
(i.e. elle a des sous-traitants dordre ventuellement >1 qui sont bnficiaires.)
Dans ce cas, il existe donc une solution lquation X = X Q + B ; cest--dire
il existe un plan de production X permettant de satisfaire les besoins B.
Si ce nest pas le cas, alors (au moins) une classe dindustries ne contenant pas
la banque est absorbante. Quitte renumroter les industries, la matrice Q scrit
sous la forme :  0 
Q 0
R1 R2
o Q0 est une matrice carre stochastique, de taille m (cardinal de la classe ab-
sorbante) et vrifie donc Q0 1 = 1 (o 1 est une colonne faite de m 1 ).
De lquation X = X Q + B, en crivant X = (X1 , X2 ) o X1 regroupe
les productions des m industries absorbantes et X2 les autres (idem pour B), on
dduit :
X1 = X1 Q0 + X2 R1 + B1


X2 = X2 R2 + B2

F. Sur 2013-2014
89 4.2. LES CHANES DE MARKOV

Ainsi en multipliant la premire quation droite par 1 :


X1 1 = X1 1 + X2 R1 1 + B1 1.
Comme tous les termes sont positifs, B1 = 0 et X2 R1 1 = 0.
Ainsi, les besoins non-nuls en les produits des industries de la classe absorbante
ne peuvent pas tre couverts. Il nexiste pas de plan de production.
Dautre part, si certains tats transitoires vont uniquement vers la classe absorbante
considre, alors la somme des lignes correspondantes dans R1 est gale 1 (et les
lignes correspondantes de R2 sont nulles). Donc llment correspondant un tel
tat dans X2 doit galement tre nul (daprs X2 R1 1 = 0). De X2 = X2 R2 + B2
(et grce X2 R2 > 0) on dduit que les besoins en les industries de ces tats
transitoires ne peuvent alors qutre nuls.
Rcapitulons : si une classe dindustries est absorbante, alors il nexiste pas de
plan de production satisfaisant des besoins de produits de ces industries ou des
besoins de produits dindustries appartenant des classes transitoires menant
uniquement vers la classe absorbante (i.e. les industries dont les industries de
la classe absorbante sont sous-traitantes, ventuellement indirectement).

4.2.3 Problme de la ruine du joueur


1. a) Les jeux tant indpendants, Xn ne dpend que de la valeur de Xn1 (la pro-
prit de Markov est vrifie). Les valeurs possibles varient bien entre 0 (ruine du
joueur) et S + C (ruine du casino).
Le graphe associ est :
1 1
u q q q q 
0 1
u 52t .3 . . . . .r 2 S+C-1 2 S+C
p p p p

b) Il sagit dune chane de Markov absorbante : on identifie trois composantes


fortement connexes : les deux composantes absorbantes {0} et {S + C}, et la
composante des tats transitoires {1, 2, . . . , S + C 1}.
c) Sous la forme vue en cours, la matrice de transition associe scrit :
0 S+C 1 2 3 ... S+C3 S+C2 S+C1

0 1 0 0 0 0 ... 0 0 0
S+C 0 1 0 0 0 ... 0 0 0

1 q 0 0 p 0 ... 0 0 0

2 0 0 q 0 p ... 0 0 0
3 0 0 0 q 0 ... 0 0 0

P =

. .. .. .. .. .. .. ..

.. ..
... . . . . . . . .

S+C3
0 0 0 0 0 ... 0 p 0

S+C2 0 0 0 0 0 ... q 0 p
S+C1 0 p 0 0 0 ... 0 q 0

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 90

2. Px est la probabilit dtre absorb par ltat 0 lorsque lon part de ltat x. Donc
P0 = 1 et PS+C = 0.
Soit N la matrice fondamentale de cette chane de Markov absorbante. Daprs le
cours :
P1 q
P2 0

.. .
. = N ..

PS+C2 0
PS+C1 0
Ici, linversion de I Q pour calculer N est complique, on utilise une autre
approche. On a en effet :

q P1
0 P2

.. 1 .
.
. = N .


0 PS+C2
0 PS+C1

Soit :

q 1 p 0 . . . 0 0 0 P1
0 q 1 p . . . 0 0 0 P2


0 0 q 1 . . . 0 0 0 P3


.. .. .. .. .. .. .. .. .
. = . ..

. . . . . .

0 0
0 0 . . . 1 p 0 PS+C3

0 0 0 0 . . . q 1 p PS+C2
0 0 0 0 ... 0 q 1 PS+C1

Donc pour x {2, . . . , S + C 2}, Px = pPx+1 + qPx1 , et : q = P1 pP2 et


0 = qPS+C2 + PS+C1 .
Comme P0 = 1 et PS+C = 0, on vrifie bien toutes les relations demandes.

3. Le polynme caractristique est ici : X 2 p1 X + pq . Son discriminant est : =


1/p2 4q/p = (1 4pq)/p2 et comme q = 1 p, = ((1 2p)/p)2 .
Si p = 1/2, le polynme caractristique admet la racine double r0 = 1 et
donc Px = ( + x). Comme P0 = 1 et PS+C = 0, on dduit que = 1 et
= 1/(S + C). Ainsi :
x
Px = 1
S+C

F. Sur 2013-2014
91 4.2. LES CHANES DE MARKOV

Si p 6= 1/2, le polynme caractristique admet les racines distinctes r1 =


(1/p + (1 2p)/p)/2 = (1 p)/p = q/p et r2 = (1/p (1 2p)/p)/2 = 1,
et donc : Px = (q/p)x + . Comme P0 = 1 et PS+C = 0, on dduit que
+ = 1 et (q/p)S+C + = 0. Ainsi :
 x  x  S+C
1 pq q
p
pq
Px = 1  S+C =  S+C
1 pq 1 pq

4. a) Dans le cas p = 1/2, PS = 1 S/(S + C) 1.


 S 1 q C
(p)
b) Dans le cas p 6= 1/2, PS = pq S+C .
1( pq )
C  S
1( pq ) q
Si p < q (p < 1/2), alors S+C 1/ p
et donc : PS 1.
1( pq )
C  S
1( pq ) q
Si p > q (p > 1/2), alors S+C 1 et donc : P S p
.
1( pq )

c) Interprtation : si la probabilit de gagner est plus petite que la probabilit de


perdre ou mme si le jeu est quilibr (p 6 1/2), alors le joueur finira ruin
presque srement. Si p > 1/2, la probabilit de ruine dcrot exponentiellement
vite avec le capital S du joueur. Autrement dit, le joueur devient infiniment riche
avec une probabilit 1 (q/p)S , qui est donc dautant plus grande quil dispose
dun capital initial S lev.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 92

4.3 Les files dattente


4.3.1 Paradoxe de lautobus
La dure entre deux arrives suit un processus alatoire de moyenne 10 minutes.
Soit Xi (i > 0) la variable alatoire reprsentant la dure entre la i 1-me arrive
et la i-me arrive. On suppose les Xi indpendants et identiquement distribus.
Voici le graphe du temps dattente Ta (t) en fonction du temps t darrive larrt :

Ta

t
X1 X2 X3 X4 X5 X6

En effet, le temps dattente scrit sous la forme : Ta (t) = tn(t) t, o n(t) est le
numro dordre du premier autobus arrivant aprs la date t, et tn(t) son horaire darrive.
Le temps moyen dattente sur lintervalle [0, t] est donc :

Z t n(t)
1 1 X 1 2
Ta ( )d = X R(t)
t 0 t i=1 2 i

o R(t) est un reste positif (born).


Comme t/n(t) X (dure moyenne entre deux passage) et R(t)/t 0 :
n(t)
1 X1 2
Ta Xi .
n(t)X i=1 2

Donc :
X2
Ta =
2X
avec X 2 la moyenne des Xi2 .

F. Sur 2013-2014
93 4.3. LES FILES DATTENTE

2
Comme Var(X) = X 2 X (algbre de la variance), on dduit :

1 Var(X)
Ta = X + .
2 2X

Conclusion(s) :
Le temps moyen dattente du bus est toujours suprieur la moiti du temps
moyen entre deux passages. . . (contrairement lintuition)
Il ne peut tre exactement gal la moiti du temps de passage que dans le cas
o la variance est nulle (cas dgalit), donc dans le cas dintervalles de passages
dterministes.
Dans le cas o les temps inter-passages sont distribus selon une loi de Poisson
2
de paramtre , alors Var(X) = 1/2 = X . Donc dans ce cas : Ta = X.
Le temps moyen dattente est alors gal au temps moyen entre deux passages !
(cest une manifestation de leffet PASTA : le temps moyen dattente ne dpend
pas de linstant darrive, et est gal en particulier au temps dattente lorsquon
arrive juste au dpart dun bus.)
Plus la variance des temps de passage est grande (par exemple lorsque le trafic est
perturb), plus le temps moyen dattente lest aussi. Il peut mme tre arbitraire-
ment grand. Une explication intuitive est que plus la variance est grande, plus on
a de chance darriver dans un grand intervalle de temps entre deux passages.
Par le mme raisonnement on peut dire que dans une file M/G/1, le temps moyen
que dure la fin dun service lorsquun nouveau client trouve le serveur occup est :

1 Var(X)
Ta = X + .
2 2X
En effet, ici le serveur (le bus) est toujours occup linstant o un nouveau client (un
passager) arrive.
Par dfinition, Ta est la dure rsiduelle de service.

4.3.2 Dimensionnement dun service-client


Notons m le nombre de conseillers employer, et = / = 8.
Dans le cas 1) il sagit dune file M/M/m, et dans le cas 2) dune file M/M/m/m.
Dans le cas 1), il doit y avoir au moins 8 conseillers, sinon la file dattente sallonge
indfiniment (pas de rgime permanent)
Avec la proprit PASTA, un client qui appelle a une probabilit m = +
P
k=m pk
(cas 1) ou m = pm (cas 2) de voir la file pleine.
Avec le formulaire :

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 94

Cas 1)
+ +
X X k
m = pk = p
km 0
k=m k=m
m!m
m
= p0
m!(1 /m)
m /(m!(1 /m))
=
m /(m!(1 /m)) + m1
P k
k=0 /k!

Cette dernire formule est appele formule dErlang C.


Cas 2)
1 m m /m!
m = p0 = Pm k
m! k=0 /k!

Il sagit de la formule dErlang B.


Pour dimensionner le centre dappel, on peut programmer la formule donnant pm
(et calculer pm pour diffrentes valeurs de m ou programmer une stratgie type di-
chotomie) ou utiliser un des nombreux calculateurs en ligne existant (recherche Google
erlang calculator).
On trouve dans le cas 1) m = 13 conseillers ncessaires (et p13 = 0, 059)
Si on exige une qualit de service suprieure 99%, il faut alors m = 16 conseillers,
(p16 = 0, 009) ce qui reste un surcot envisageable.
On trouve dans le cas 2) m = 11 conseillers ncessaires (p11 = 0, 0813).
Si on exige une qualit de service suprieure 99%, il faut alors m = 15 conseillers
(p15 = 0.0091), ce qui semble encore une fois raisonnable .
La comparaison des cas 1) et 2) peut sembler paradoxal : en supprimant la file dat-
tente, on a besoin de moins de conseillers. . . En fait, sans file dattente (et nombre de
conseillers gal), un client a plus de chance quun conseiller soit libre et puisse prendre
son appel immdiatement. Ce rsultat est bien sr contrebalancer par linsatisfaction
provoque chez le client qui doit rappeler. . .

4.3.3 Vlos en libre service


1. Les tats sont 0, 1, 2, 3, selon le nombre de vlos en attente dans la station. Les
dparts de vlo (3 2, 2 1, 1 0) se font avec un taux de gal
au taux darrive des clients. Les arrives de vlo dans la station se font avec un
taux 3 lorsquaucun vlo nest dans la station (i.e. trois vlos en promenade), 2
lorsquun vlo est dans la station, et lorsque deux vlos sont dans la station.

F. Sur 2013-2014
95 4.3. LES FILES DATTENTE

Le graphe est donc :

2 3
3t 42t 41t 40

2. Avec le thorme des coupes on dduit : p3 = p2 , p2 = 2p1 , p1 = 3p0 .


Donc : 3
p1 = 2p0

p2 = 6 p
2 0
p = 63 p

3 3 0

Avec p0 + p1 + p2 + p3 = 1 :

2 22
 
3
p1
0 =1+ 1+ + 2

3. Ici = , donc : p0 = 1/16.


4. Cette fois la chane de Markov a N + 1 tats. On se convainc que la formule des
coupes fournit :

0 6 k 6 N 1, pk+1 = (N k)pk .

Donc :  k
N!
0 6 k 6 N, pk = p0
(N k)!
P
Comme k pk = 1, et = :
N N
X N! X 1
p1
0 = = N!
k=0
(N k)! k=0
k!

On veut p1
0 > 100. Or, si N = 3, p1 0 = 16 (question prcdente), si N = 4
1 1
p0 = 65, et si N = 5 p0 = 326.
Conclusion : il faut une capacit de stockage de cinq vlos.

4.3.4 Chez le mdecin


1. Il sagit dun systme M/M/1/N, avec N 1 places dans la salle dattente.

2. Notons = /. Daprs le formulaire du cours, pN = p0 N (o p0 = (1


)/(1 N +1 ) ) est la probabilit que la salle dattente soit pleine.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 96

On cherche donc N tel que (1 )/( N ) < 0.1. Do (10.9 )/0.1 < N ,
soit :
log(1 0.9 ) log(0.1)
N>
log( )

Application numrique : = 4/5, N > 4.61, donc N > 5, do une salle dat-
tente avec au moins 4 places.

3. Le graphe du processus de naissance et mort associ est :


u ... t ... s s
0 51u 52t 4 4 3 N-1 4 N
/2 /3 /(N 1) /N

P
Avec le thorme des coupes et pk = 1 :

N /N !
pN = PN
k
k=0 /k!

Avec N = 5, p5 = 0.0012 : la salle dattente est pleine dans 0, 1% des cas. (


comparer avec 10% dans la question prcdente.)

4.3.5 Un serveur informatique


1. Il sagit du graphe de la page 53. Les tats correspondent au nombre de requtes
dans le serveur (en attente + en service), est le taux darrive des requtes et
le taux de service par le processeur.
2. Dune part on sait que = 10 requtes par seconde. Dautre part on sait que
p0 = 1 (cf formulaire) et p0 = 0, 1. Donc = 0, 9 et = 10/0, 9 ' 11, 11
requtes traites par seconde.
3. 1/ = 0, 09s
4. Nf = 2 /(1 ) = 0, 92 /0, 1 = 8, 1 requtes en attente.
5. On est devant un systme dattente de type M/M/2.
Daprs le formulaire (section 3.6.3) : 1/p0 = 2 /(2 ) + 1 + , et 1/p0 = 10.
On rsout en : 20 10 = 2 + do = 18/11 = 1, 64.
Donc = / = 110/18 = 6, 11 requtes par seconde, do un temps de traite-
ment moyen de 1/ = 0, 164 secondes.
Dautre part, dans ce cas : Nf = 3 /2(1 /2)2 p0 = 6, 8 requtes en attente.

F. Sur 2013-2014
97 4.3. LES FILES DATTENTE

4.3.6 Problme de maintenance informatique


1. Le graphe du processus associ est :

1 1 1 1
tu t s
0 51u 52t 4 ... 4 ... 3 N-1 4 N

Ce nest pas un processus de naissance et de mort.

2. Par le thorme des coupes :




p0 = 1 p1 + 2 pN
p1 = 1 p2 + 2 pN



...
pN 2 = 1 pN 1 + 2 pN




pN 1 = 2 pN

Donc successivement :


pN 1 = (2 /)pN
pN 2 = (1 2 /2 + 2 /) pN


k1 k 2
...
pN k = 1 2 / + + 1 2 / + 2 / pN

Do :
k1
X
pN k = 2 / si pN
i=0
do la formule demande.

3. Comme N
P
k=0 pk = 1, on a :

N
2 X k
p1

N =1+ s 1
1 k=1

Donc :  N 
2 s 1
=1+ p1
N s N
1 s1
Conclusion : la probabilit pN pour que le serveur soit hors-service est donne
par :
(1 /)N 1
 
1 2
pN = 1 + 1 N .
1 1

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 98

Remarque (non demand) : en faisant lhypothse que N est assez grand, on peut
simplifier la formule en tablissant un quivalent de pN :
si 1 < , alors pN
2 N
1
= O(1/N ) ;
2
 N
si < 1 , alors pN ( 1)
1 2

1
= O(1/K N ). (la situation est plus rare,
comme on sy attendait.)
P 1
4. N = N n=0 npN (la somme sarrte N 1 car pN correspond la probabilit
pour que le serveur soit plant ).

4.3.7 tude dune file M/G/1


1. Le graphe associ ce phnomne dattente sans mmoire est :

1 1 1 1
s
0 cGG 2 1,1 r
dII 2 2,1 dIr 2 3,1 r 2 ...
GG I dHH
GG II III HHH
GG II II HH
GG II II HH
G II I H
2 GGG 2 III 2 III 2 HHH
1 1 1
GG II II HH
GG II II HH
 I  I  HH
1,2 2 2,2 2 3,2 2 ...

2. On utilise dans cette question lunicit du dveloppement en srie formelle pour


identifier les coefficients des xn .
Daprs la dfinition de F, F1 , F2 , il est immdiat que : F1 (x)+F2 (x) = F (x)p0 .
Daprs la formule des coupes (en utilisant des coupes verticales sur le graphe
prcdent) :

p0 = 1 p1,1 + 2 p1,2
p1,1 + p1,2 = 1 p2,1 + 2 p2,2


p2,1 + p2,2 = 1 p3,1 + 2 p3,2
...

Ce qui permet dcrire : F1 (x) + 2 F2 (x) = xF (x).


Daprs la formule des coupes (en utilisant des coupes isolant les tats i, 2) :

( + 2 )p1,2 = 1 p1,1

( + 2 )p2,2 = 1 p2,1 + p1,2


( + 2 )p3,2 = 1 p3,1 + p2,2
...


Ce qui permet dcrire : (1 x) + 2 F2 (x) = 1 F1 (x).

F. Sur 2013-2014
99 4.3. LES FILES DATTENTE

3. N est lesprance du nombre de clients dans lagence :


+
X
N= npn
n=1

4. On obtient le systme avec les quations de la question 2, en prenant leur valeur


en x = 1 ou la valeur de leur drive par rapport x en x = 1.
On utilise aussi le rsultat de la question 3, et +
P
n=0 pn = 1.
Les inconnues sont bien sr : F1 (1), F1 (1), F2 (1), F20 (1), N, p0 .
0

5. Du systme : 
1 F1 (1) + 2 F2 (1) =
1 F1 (1) = 2 F2 (1)
On dduit :

F1 (1) = F2 (1) =
1 2
Du systme :
(1 )F10 (1) + (2 )F20 (1) =


1 F10 (1) 2 F20 (1) = F2 (1)


on dduit dune part (par limination de F20 (1)) :
(1 + 1 (2 )/2 )F10 (1) = F2 (1)(2 )/2
do ( + = 1) :
(1 1 /2)F10 (1) = + (2 /2 )F2 (1)
donc :
(1 F1 (1) F2 (1))F10 (1) = F1 (1) + 2 /(1 2 )F2 (1) F1 (1)F2 (1) ()
Dautre part (par limination de F10 (1)) :
(2 + 2 (1 )/(1 ))F20 (1) = (1 )/(1 )F2 (1)
do :
(2 / 2 /(1 ))F20 (1) = F2 (1)/ + 2 /(1 )F2 (1)
donc :
(1 F1 (1) F2 (1))F20 (1) = F2 (1) + /F2 (1)2 2 /(1 2 )F2 (1) ()

Finalement, comme N = F10 (1) + F20 (1), on trouve bien lexpression cherche
avec () et ().

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 100

6. Daprs la formule de Little : T = N/.



7. Le taux dactivit de lemploy est : 1 p0 = F1 (1) + F2 (1) = 1/1 + /2 .
F1 (1) est la proportion du temps consacre rpondre des questions standards,
F2 (1) aux questions supplmentaires.

8. Application numrique : = 3, = 0.8, = 0.2, 1 = 6, 2 = 3.


Donc N = 2.5333, T = 0.844h ' 50min, et le taux dactivit est : 1 p0 = 70%.

4.3.8 Maintenance dun systme industriel critique


1. On suppose que la dure de fonctionnement de chaque systme suit une loi expo-
nentielle de moyenne 1/, et que la dure de rparation est indpendante, de loi
exponentielle de moyenne 1/. Rparation et panne ne peuvent survenir dans un
intervalle de temps h quavec une probabilit o(h) lorsque h 0.
Le graphe associ est :


) )
0i 1i 2

Les tats sont : 0 (aucun systme en panne), 1 (un des deux systmes est en panne),
2 (les deux systmes sont en panne).
Par formule des coupes (ou les formules du cours sur les processus de naissance
et mort), si = / : p2 = 2 p0 et p1 = p0 avec p0 = (1 + + 2 )1 =
(1 )/(1 3 ).
La probabilit de dfaillance simultane de deux quipements est :
2
p2 = .
1 + + 2
Si deux quipes de rparation sont disponibles, alors le graphe devient :


) )
0i 1i 2
2

On calcule alors :
2
p2 = .
2 + 2 + 2
On obtient une probabilit infrieure ( peu prs divise par deux car il est vraisem-
blable que << 1) par rapport au cas o une seule quipe est disponible.
Dans le premier cas, il sagit dun processus M/M/1/2, dans le deuxime cas
M/M/2/2.

F. Sur 2013-2014
101 4.3. LES FILES DATTENTE

2. Dans cette question, le systme peut passer de ltat 0 ltat 1 avec la proba-
bilit h + o(h) sur un intervalle de temps h 0, et de ltat 0 ltat 2 avec
la probabilit (1 )h + o(h). (on effectue le produit des probabilits car les
vnements sont indpendants.)
Le graphe devient avec une quipe :

(1)


) )#
0i 1i 2

Le thorme des coupes donne le systme dquations :



p0 = p1
(1 )p0 + p1 = p2

Donc : p2 = ((1 ) + 2 )p0 .


Avec p0 + p1 + p2 = 1, on calcule : p1 2
0 = 1 + (2 ) + .
Donc :
(1 ) + 2
p2 = .
1 + (2 ) + 2
3. Dans cette question, on passe de ltat 0 ltat 1 avec une probabilit 2h + o(h)
(lune des deux machines tombe en panne pendant lintervalle de temps h 0,
avec indpendance des pannes entre les deux machines). Il ny a pas de dmarrage
donc pas de dfaillance possible. Do le graphe dans le cas dune quipe :

2
) )
0i 1i 2

On calcule
2 2
p02 = .
1 + 2 + 2 2
4. Comparons les situations des questions 2 et 3 :
On suppose << 1, ce qui semble raliste/ Dune part p2 (1 ) , dautre
part p02 2 2 . Donc si 1 (qui est aussi une quantit petite) nest pas trop
petit devant (i.e. on na pas 1 , ce qui peut sembler raliste), p2 > p02 .
La probabilit de dfaillance dans le cas de la question 2 est suprieure au cas de
la question 3 (dun ordre de grandeur).

5. Dans les questions 2 et 3, on suppose lindpendance des pannes entre les deux
machines, ce qui nest pas raliste en cas dune situation catastrophique majeure
qui entrane larrt des deux systmes.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 102

Dans la question 2, lindpendance intervient pour le calcul des probabilits de


transition de 0 1 et de 0 2 (indpendance entre panne au dmarrage et panne
du systme principal). Dans la question 3, elle intervient pour crire que la prob-
abilit de passer de 0 1 est 2h + o(h) (indpendance entre les pannes des deux
systmes fonctionnant en parallle).
Lhypothse des temps de fonctionnement et de rparation suivant une loi expo-
nentielle est sans doute galement discutable, surtout si on considre des vne-
ments rares potentiellement catastrophiques pour lesquels on ne dispose pas de
statistiques.

6. Cas dun systme principal et de trois systmes de secours dmarrant avec une
probabilit :

(1)3

(1)2 (1)2

(1) (1) (1)


*

*%
"*% "*%
0j 1j 2j 3j 4

quations obtenues par la formule des coupes :




+ (1 ) + (1 )2 + (1 )3 p0 = p1 
(1 ) + (1 )2 + (1 )3 p0 + + (1 ) + (1 )2 p1 = p2

(1 )2 + (1 )3 p0 + (1 ) + (1 )2 p1 + ( + (1 )) p2 = p3

(1 )3 p0 + (1 )2 p1 + (1 )p2 + p3 = p4

Soit aprs simplification :




p0 = p1
(1 )p0 + p1 = p2


(1 )2 p0 + (1 )p1 + p2 = p3
(1 )3 p0 + (1 )2 p1 + (1 )p2 + p3 = p4

Ce systme triangulaire se rsout facilement.

Cas de quatre systmes redondants en parallle :

4 3 2
* * * *
0j 1j 2j 3j 4

F. Sur 2013-2014
103 4.3. LES FILES DATTENTE

quations obtenues par la formule des coupes :



4p0 = p1

3p1 = p2


2p2 = p3
p3 = p4 .

4.3.9 Approvisionnement et gestion dun stock


1. Le graphe associ est :

2 3 4 5 6 7
v v v v v v u .3 . . . . .
0 61 62 6 3 64 6 5 6 6

car dans ltat n, n commandes sont en attente.

2. Le graphe associ est :

2 3 4 5 6
v v v v v v
0 6 1 62 6 3 6 4 65 6 6

3. Le graphe associ est :

2 3 3+0 3+20 3+30


v v v v v v
0 6 1 62 6 3 6 4 65 6 6

4. Avec la formule des coupes, pour tout n > 0 : pn1 = npn .


Donc pour tout n > 0 : pn = n /n!p0 en posant = / = 2.
Comme +
P
n=0 pn = 1, p0 = e .
Donc, pour tout n > 0 : pn = e n /n!.
On retrouve les formules de la file M/M/.

5. Le nombre moyen de produits en stock est donn par lesprance : 4p0 + 3p1 +
2p2 + 1p3 + 0(p4 + p5 + p6 + . . . ), qui vaut ici 46/3e2 = 2, 075.

6. La probabilit quun nouveau client doive attendre est daprs PASTA la proba-
permanent le systme soit dans un tat n > 4. La probabilit
bilit quen rgime P
cherche est donc : n>4 pn = 1 p0 p1 p2 p3 .
Application numrique : 0,143.

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 104

P
Le nombre moyen de clients en attente dans le magasin est : n>4 (n 4)pn =
7. P
Pn>0 (n 4)pP
n + 4p0 + 3p1 + 2p2 + 3p3 = 4 + 4p0 + 3p1 + 2p2 + p3 car
npn = et pn = 1.
Application numrique : 2 4 + 2, 075 = 0.075 client en attente en moyenne.
4+4p0 +3p1 +2p2 +p3
Avec la formule de Little, le temps moyen dattente est donc :
.
Application numrique : 0.0375 heure = 2.25 minutes.

8. Il sagit en fait de ltude dune file M/D/.


Si le systme est dans ltat n linstant t, cest quil y a eu exactement n arrives
entre les instants t a et t car : 1) toutes les commandes en attente linstant t a
sont arrives linstant t ; 2) aucun commande mise depuis t a nest encore
arrive t.
Les arrives suivant un processus de Poisson dintensit , le nombre darrive
pendant tout intervalle de temps de longueur a suit donc une loi de Poisson de
moyenne a.
n n
Donc pn (t) = ea (a)
n!
= e n! . (comme dhabitude, on dfinit = E(Y ))
Ceci est vrai pour tout t > a, donc en particulier en rgime permanent (t +).
On retrouve les rsultats de la question 4. On peut en fait dmontrer que lexpres-
sion des pn ne dpend pas de la distribution des dures de service (i.e. les pn ont
mme expression pour toute file M/G/).

4.3.10 Un guichet avec des clients prioritaires

1. Il sagit dune file M/M/1.

2. Cf. expression de pn dans le formulaire.

3. Cf. expression de Nf dans le formulaire.

4. Cf. expression de T dans le formulaire.

5. Le graphe demand est :

F. Sur 2013-2014
105 4.3. LES FILES DATTENTE


s s s ...
0,0T 3 1,0T 3 2,0T 3

0 0 0

  
0,1T 3 1,1T 3 2,1T 3 ...

0 0 0

  
0,2T 3 1,2T 3 2,2T 3 ...

0 0 0

. . . . . . . . .
6. Le graphe demand est :

2
s s s ...
0,0T 3 1,0T 3 2,0T 3

0 0 0 2

  
0,1T 3 1,1T 3 2,1T 3 ...

0 0 2 0 2

  
0,2T 3 1,2T 3 2,2T 3 ...

0 2 0 2 0 2

. . . . . . . . .
7. Par la formule des coupes (en isolant ltat (n, m), on trouve bien lexpression
demande :

0 pn,m1 + pn1,m + pn,m+1 = ( + + 0 )pn,m si n, m > 0

Recherche Oprationnelle
CHAPITRE 4. CORRECTION DES EXERCICES 106

F. Sur 2013-2014
Index

Algorithme de type M/G, 60


de Bellman-Ford, 10 de type M/G/, 104
de Floyd-Warshall, 7 de type M/G/1, 61
de type M/M/, 103
Batch Markov process, 60 de type M/M/1, 50
Chane de Markov, 21 de type M/M/1 (proprits), 54
absorbante, 25, 32 de type M/M/n, 56
apriodique, 26 de type M/M/n/S, 57
ergodique, 29 Formule de Little, 43, 54, 57
homogne, 21 Formules de Pollaczek-Khinchine, 63
irrductible, 24
Gestion de stock, 16
matrice de transition, 21
Google, 35
priodique, 26, 29
rductible, 24, 28 Knapsack problem, 17
rgulire, 28
reprsentation graphique, 22 LIFO, 41
Composante finale, 24 Loi
de Poisson, 39
Discipline de service, 41, 62
exponentielle, 39
Distance ddition, 13
Distance de Levenshtein, 13 Matrice
Distribution stationnaire, 29 fondamentale, 32
Dure rsiduelle dattente, 63 rgulire, 28
Dure rsiduelle de service, 62 stochastique, 22, 27, 51
quations de Chapman-Kolmogorov, 22 Matrice de transition, 20, 21
quation de Bellman, 8 forme canonique pour les chanes de
Erlang, 59, 94 Markov absorbantes, 25, 32
tat transient/transitoire, 24, 33 forme canonique pour les chanes de
Markov priodiques, 26
FIFO, 41, 62 forme canonique pour les chanes de
File dattente, 39 Markov rductibles, 25
de type G/M, 61 Modle de Leontiev, 36
de type M/D/, 104 MTBF, 63

107
INDEX 108

Nombre de passages par un tat transitoire,


33
Notations de Kendall, 41, 51, 58, 59, 61

PageRank, 35
Paradoxe de lautobus, 62, 67
PASTA, 47, 54
Plus court chemin, 7, 10
Principe doptimalit de Bellman, 8
Probabilit dabsorption, 34
Probabilit de transition, 20, 21
Problme
de la ruine du joueur, 37
du sac dos, 17
Processus
de Markov, 51
de Markov par lot, 60
de mort pur, 56
de naissance et de mort, 55
de naissance pur, 56
de Poisson, 44, 56
sans mmoire, 40
Programmation dynamique, 7

Rayon spectral, 28
Rseaux de files dattente, 64
Round Robin, 41

Thorme
de Palm-Khintchine, 47
de Perron-Frobenius, 27, 28
des coupes, 31, 52, 55
ergodique, 30, 47

F. Sur 2013-2014

Vous aimerez peut-être aussi