Académique Documents
Professionnel Documents
Culture Documents
==========
COURS DE RECHERCHE
OPÉRATIONNELLE
==========
MASTER I MaISN
==============
Année Universitaire 2022-2023
==========
22 mars 2023
Table des matières
3 Problèmes d’ordonnancement 30
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Méthode MPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3 Construction des niveaux dans la méthode MPM . . . . . . . . . . . 32
3.4 Vocabulaire et notations . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.1 Durée du Projet . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.2 Chemin critique . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.3 Marges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.4 Date de début de tâche . . . . . . . . . . . . . . . . . . . . . . 33
3.5 La méthode PERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.1 Principe de la représentation . . . . . . . . . . . . . . . . . . . 34
3.6 Travaux dirigés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.7 Ordonnancement en présence de durées aléatoires . . . . . . . . . . . 38
3.7.1 Estimation des moyennes et variances des durées . . . . . . . . 38
3.7.2 Estimation de la distribution de la durée d’exécution du projet 39
3.8 Analyse des ressources . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.8.1 Modélisation générale du problème RCPSP . . . . . . . . . . . 40
3.8.2 Algorithme de résolution de cas des ressources renouvelables . 42
3.8.3 Algorithme de résolution de cas des ressources consommables . 42
3.9 Analyse des couts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9.1 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9.2 Diminution du cout total d’un ordonnancement sans variation
de durée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.9.3 Accélération d’un ordonnancement au moindre cout . . . . . . 44
5 Analyse multicritère 53
6 Gestion de Stocks 54
ganisations du monde réel. Elle comprend donc toutes les approches scientifiques
pouvant aider à mathématiser une situation réelle de décision.
On trouve des applications de la R.O. dans les organisations du monde réel comme
l’optimisation dans les télécommunications, l’affectation et la localisation des res-
sources, la gestion des horaires du personnel et l’élaboration d’emplois du temps, le
choix du meilleur partenariat, l’analyse des performances, l’évaluation des politiques
publiques, la théorie du choix social, l’ordonnancement des employés, la localisation
de nouveaux centres de soins de santé, la stratégie d’intervention pour les préven-
tions, l’implantation de nouvelles écoles, la planification et l’ordonnancement de
tâches, la gestion de stocks et de la production, la planification pour l’industrie,
l’optimisation des transports et de la chaîne logistique, la gestion du trafic aérien ou
ferroviaire, l’intelligence artificielle, etc.
m
X
où αi = 1, αi ≥ 0, i = 1, · · · , m.
i=1
S = {x ∈ Rn | pTi x ≤ βi , i = 1, · · · , m},
Puisqu’une égalité peut être représentée par deux inégalités, les ensembles sui-
vants suivants sont des exemples d’ensembles polyédriques :
S = {x ∈ Rn | Ax = b, x ≥ 0},
S = {x ∈ Rn | Ax ≥ 0, x ≥ 0}.
f est dit strictement convexe si l’inégalité stricte est toujours vérifiée pour x 6= y et
λ ∈]0, 1[.
Exemple 1.3.1.
Exemple 1.4.2. Voyons à présent un cas où la fonction objectif doit être minimisée.
Une compagnie possède deux mines de charbon A et B. La mine A produit quoti-
diennement 1 tonne de charbon de qualité supérieure, 1 tonne de qualité moyenne
et 6 tonnes de qualité inférieure. La mine B produit par jour 2, 4 et 3 tonnes de
chacune des trois qualités. La compagnie doit produire au moins 90 tonnes de char-
bon de qualité supérieure, 120 tonnes de qualité moyenne et 180 tonnes de qualité
inférieure.
Sachant que le coût de production journalier est le même dans chaque mine, soit
1000, quel est le nombre de jours de production dans la mine A et dans la mine B
qui minimisent le coût de production de la compagnie ?
1.4.3 Application
Formulons mathématiquement l’exemple 1.2.1, nous avons :
Étape 1 : Notons respectivement par x1 et x2 le nombre de chaises et de tables
qui doit être produit par jour.
Étape 2 : Le bénéfice pour une chaise étant de 3 euros et celui pour une table
de 4 euros, le bénéfice journalier est donc donné par la fonction objectif :
x1 ≥ 0 (1.8)
et
x2 ≥ 0 (1.9)
Le problème consiste donc à trouver les valeurs des variables x1 et x2 qui maximisent
le bénéfice journalier (1.3) tout en satisfaisant les contraintes (1.4) à (1.7).
En résumé, le problème s’écrit sous la forme :
max z = 3x1 + 4x2
2x1 + x2 ≤ 12
x + 2x ≤ 12;
1 2 (1.10)
S.C :
x 1 ≥ 0
x2 ≥ 0
Notons que maximiser une fonction objectif z revient à minimiser la fonction −z.
1.5.4 Exemple
Exemple 1.5.1. Soit le problème sous sa forme générale :
max x1 − 4x2
x1 ≤ 7;
3x − 2x
1 2 ≥ 4;
S.t :
x 1 + x 2 = 5;
x 1 ; x2 ≥ 0.
Une solution du problème est par définition une valeur des variables permettant de
vérifier les contraintes réelles des variables ; une solution admissible est une solu-
tion qui vérifie également les contraintes de non-négativité ; l’ensemble des solutions
admissibles -noté D- est donc
D = {x ∈ Rn | τi x ≥ bi , i = 1, · · · , p; τi x = bi , i = p + 1, · · · , m; x ≥ 0}.
Une solution optimale du problème est par définition une solution admissible qui
minimise la fonction objectif z :
x∗ solution optimale ⇐⇒ x∗ ∈ D et cx∗ ≤ cx; ∀x ∈ D.
Deux espaces peuvent être associés au problème. Le plus important est l’espace des
décisions : c’est un espace à n dimensions muni du repère euclidien orthonormé des
variables (x1 , · · · , xn ).
Cet espace permettra de représenter l’ensemble D et de caractériser la (les) fonc-
tion(s) optimale(s).
Par ailleurs, l’espace des contraintes est un espace à m dimensions muni d’un
repère euclidien orthonormé (e1 , · · · , em ). Il permet de représenter les vecteurs τi et
b, et jouera un rôle important dans l’étude de la dualité(voir chapitre 3.)
2. solutions admissible dans un polyèdre convexe, non vide mais non borné ;
x1 + x2 ≥8
−2x + 3x ≥ 6
1 2
x1 − x2 ≤2
x1 ; x2 ≥0
3. un ensemble vide
x1 + x2 ≤8
−2x + 3x
1 2 ≥6
x1 − x2 ≥2
x1 ; x 2 ≥0
Définition 1.6.1. On appelle point extrême d’un polytope ou d’un polyèdre convexe
X, tout point x ∈ X qui ne peut pas être exprimé comme combinaison convexe
d’autres points y ∈ X, (y 6= x)
Théorème 1.6.1. L’ensemble (polytope ou polyèdre) convexe D a un nombre fini
de points points extrêmes.
Théorème 1.6.2. Tout point d’un polyèdre convexe D ⊂ Rn est une combinaison
convexe des points extrêmes de D.
K
X
alors z(x) = λk z(y k ) (linéarité de z ) d’où :
k=1
K
X
∗
z(x) ≥ z λk = z ∗ .
k=1
Remarque 1.6.1.
a) Si D est un polytope
1. soit la solution optimale est unique et est située en un sommet de D
2. soit il existe une infinité de solutions optimales qui sont les points d’une
face de D, ces solutions optimales sont donc combinaison convexe d’un
nombre fini de sommet.
b) Si D est polyèdre convexe, non vide mais non borné, en plus des situations
décrites ci-dessus, il est possible que le problème n’ait pas optimale à distance
finie ; il existe alors une solution admissible (à l’infini) telle que z = −∞.
c) Si D = ∅, le problème n’a pas de solution optimale.
Théorème 1.6.4. Pour un programme convexe, tout optimum local est optimum
global.
Exemple 1.7.2. Le programme linéaire suivant donne une infinité de solution op-
timales
max z = 5x1 + 5x2
x1 + x2 ≤8
−2x + 3x
1 2 ≤6
S.t :
x1 − x2 ≤2
x1 ; x2 ≥ 0.
z ∗ = min z = cx
(
Tx = b
S.t :
x ≥ 0.
Avec T (m × n), x(n × 1), c(1 × n), b(m × 1). Dans un premier temps, les deux hypo-
thèses suivantes sont introduites :
H1 : rang(T ) = m(< n) : le système est non redondant
H2 : il existe une base B admissible initiale
z ∗ = min z = cB xB + cR xR
(
BxB + RxR = b (2.1)
S.t :
x ≥ 0.
!
xB
T = (B, R), x = , c = (cB , cR )
xR
et avec
xB = (xi , i ∈ I), m variables de base
xR = (xj , j ∈ J), n − m variables hors base
La solution admissible initiale vaut :
xB = B −1 b ≥ 0 (par hypothèse H2)
xR = 0
xB + B −1 RxR = B −1 b
et donc, en remplaçant xB
z = cB B −1 b − (cB B −1 R − cR )xR .
Ou en notation vectorielle,
z = a00 − α0 xR
xB + AxR = a0
x ≥ 0.
Les cœfficients de cette forme équivalente constituent le tableau simplexe (à m + 1
lignes et à n − m + 1 colonnes), que l’on peut donc associer à chaque solution de
base.
xj , j ∈ J( variables hors base)
z a00 a0j
xi ∈ I
( variables ai0 aij
de base)
Les variables xj , j ∈ J, hors base sont par définition égales à zéro ; quand la solution
de base est admissible (supposé ici), toutes les valeurs ai0 , i ∈ I, sont non négatives.
Les coefficient aij du tableau simplexe sont les coefficient de la combinaison linéaire
des vecteurs de base ti , i ∈ I qui exprime de manière unique le vecteur hors base tj
a0k > 0
aik ≤ 0, ∀i ∈ I,
la fonction économique z peut prendre une valeur aussi petite que l’on veut, c’est-
à-dire qu’il n’y a pas de solution optimale finie.
Cette absence de solution optimale finie se caractérise donc au niveau du tableau
simplexe par la situation suivante :
a0j > 0
ai0 ≥ 0 aij ≤ 0
k
>0
..
←− .
ai0
⇐= ( calcul de ) ←−
aik ≥0 >0
←− ..
.
≤0
≥0 .
I∗ = I − l + k
J∗ = J + l − k
nouvelle base B ∗ .
Le cœfficient alk est appelé le pivot du changement de base (par référence à la
méthode de Gauss de résolution d’un système linéaire). L’équation
X
xl + alk xj = al0
j∈J
devient
1 X alj al0
xl + xl + xj = ;
alk j∈J−k
a lk a lk
et
a0k al0 a0k X a0k alk
z = a00 − + xl − a0j − xj .
alk alk j∈J−k
a lk
2.5 Exercices
Utiliser la méthode simplexe pour résoudre les problèmes suivants :
1.
max z = 6x1 + 5x2
x1 + x2 ≤8
−2x + 3x
1 2 ≤6
S.t :
x1 − x2 ≤2
x1 , x2 ≥ 0.
2.
min z = −3x1 + 5x2
−2x1 + 3x2 ≤ 6
S.t : x1 − 4x2 ≤2
x ,x
1 2 ≥ 0.
3.
max z = 63x1 + 32x2 + 52, 5x3
40x1 + 50x2 + 20x3 ≤ 350
S.t : 3x1 + x2 + 5x3 ≤ 34
x ,x ,x
1 2 3 ≥ 0.
4. Modéliser le problème de l’exemple 1.2.3 (page 2 chapitre 1) et le résoudre.
z∗ = min z = cx
(
T x = b; (2.5)
S.t : (P )
x ≥ 0.
ou vectoriellement :
T x + Ixa = b
x ≥ 0
xa ≥ 0
où I représente la matrice identité (m × m).
Ce nouveau système linéaire de contraintes est non redondant (r(T, I) = m) et de
plus il existe une solution de base admissible initiale (xa = b ≥ 0, variable de base ;
x = 0, variable hors base).
Les deux hypothèses H1 et H2 sont ainsi vérifiées et par conséquent, il est possible
d’appliquer l’algorithme simplexe pour chercher l’optimum d’une fonction linéaire
sous ces contraintes.
Pour obtenir une solution du problème initiale, il est nécessaire que les variables
artificielles soient nulles.
C’est pourquoi dans la fonction économique, on pénalise l’introduction de variables
artificielles de la manière suivante :
n
X m
X
min z a = cj x j + M xai
j=1 i=1
où M représente une constante symbolique aussi grande que l’on veut. Cette méthode
est parfois dénommée "Big M method ".
La présence de ce cœfficient M va induire que pour diminuer z a , l’algorithme va
tenter prioritairement d’annuler les variables artificielles.
L’algorithme simplexe peut donc s’appliquer à ce nouveau problème -le problème
augmenté- :
m
X
z ∗a a
= min z = cx + M xai
i=1
(P a ) : T x + Ixa = b ( avec b ≥ 0)
x ≥ 0
xa ≥ 0
Étant donné que M est aussi grand que l’on veut, les variables artificielles vont être
éliminées de la base en premier lieu.
Deux cas cas peuvent se présenter.
b) Quand une variable artificielle est sortie de la base, il est certain qu’elle n’y
rentrera plus ; la colonne correspondante du tableau simplexe devient superflue
et peut être supprimée.
c) Les cœfficient a0j relatifs au problème P a sont de la forme
(1) (2)
a0j = a0j + M a0j ;
dans les tableaux simplexes, il peut être commode d’écrire les cœfficients a0j
(2) (1)
en deux lignes, contenant respectivement les termes a0j et a0j . Tant que
l’annulation de toutes les variables artificielles n’est pas terminée -ce sont les
(2)
cœfficients aoj - proportionnels au "big M" -qui déterminent le signe des a0j
et donc la variable xk rentrant dans la base est déterminée par
(2) (2)
a0k = max a0j .
j∈J
Les formules de changement de base sont ensuite appliquées aux deux lignes.
(2)
Dès lors que toutes les variables artificielles sont nulles, les cœfficients a0j
(1)
sont tous nuls et l’algorithme simplexe s’applique aux cœfficients a0j .
2.7 Exercices
Résoudre les problèmes suivants :
1.
max z = 6x1 + 5x2
x1 + x2 ≥8
−2x + 3x
1 2 ≤6
S.t :
x1 − x2 ≤2
x 1 ; x2 ≥ 0.
2.
max z = 6x1 + 5x2
x1 + x2 ≤8
−2x + 3x
1 2 ≥6
S.t :
x1 − x2 ≥2
x1 ; x2 ≥ 0.
3.
max z = 10x1 + 9x2 + 7x3
2x1 + 3x2 + 5x3 ≥ 450
4x + 9x + 10x
1 2 3 ≤ 1200
S.t :
3x1 + 2x2 + 6x3 ≤ 600
x1 ; x2 , x3 ≥ 0.
avec :
t
A est la transposée de la matrice A du primal
t
c est la transposée de la matrice c du primal
t
b est la transposée de la matrice b du primal
y est la matrice des variables dual.
Remarque 2.8.1. Nous pouvons représenter un problème primal et son dual associé
dans un tableau que l’on doit à A. W. Tucker.
x1 x2 . . . xn
y1 a11 a12 . . . a1n ≤ b1
y1 a21 a22 . . . a2n ≤ b2
. . . . . . . .
. . . . . . . .
y1 am1 am2 . . . a1 ≤ bm
≥ c1 ≥ c2 . . . ≥ cn
Le problème primal se lit dans le sens de ligne, tandis que le problème dual se lit
dans le sens des colonnes.
Le sens économique des variable duales, encore appelées prix fantôme, est qu’elle
correspondent à l’augmentation de la ressource correspondante lorsque celle aug-
mente d’une unité. Autrement dit, elles permettent de mesurer l’incidence de cha-
cune des ressources sur le profit. En particulier, lorsque la fonction objectif est à
maximiser, la variable yi mesure le changement marginal de z = cx par rapport à bi .
Proposition 2.8.1. En général les deux programmes utilisent les mêmes données
et présentent les mêmes caractéristiques.
Primal Dual
m contraintes m variables
n variables n contraintes
contraintes du type ≤ ou ≥ contraintes du type ≥ ou ≤
problème max ou min problème min ou max
écriture en ligne écriture en colonne
Théorème 2.8.1. Si le problème primal admet une solution, le dual en admet éga-
lement et le maximum de l’un est égale au minimum de l’autre.
2.8.3 Illustration
Énoncé
Considérons le problème précédent :
Interprétation du dual
Supposons dans notre problème qu’une autre entreprise veut fournir les matières
premières pour la fabrication des produits P et Q. La société α achète les matières
premières A, B et C respectifs aux prix y1 , y2 et y3 la tonne. Ainsi la société α va
chercher à minimiser le coût total d’acquisition de ces matières premières a savoir :
L’entreprise α ne pourra accepter que si les prix proposés lui procurent un résultat
au moins égal à ce que lui rapporte la fabrication d’un produit et P et Q :
2.8.6 Résumé
Le primal et le dual sont liées par les relations suivantes :
Si le primal est un problème de maximisation le dual est un problème de
minimisation et vise versa ;
La matrice des coefficients de l’un est la transposée des coefficients de l’autre ;
Les coefficients de la fonction économique du primal sont les second membre
des contraintes du dual ;
Les seconds membres des contraintes du primal sont les coefficient de la fonc-
tion économique du dual ;
A l’optimum, la fonction économique du primal et du dual ont la même valeur
(z = w) ;
Si, à l’optimum, une contrainte du primal n’est pas saturée, alors la variable
duale correspondante est nulle ;
Si la valeur optimale d’une variable d’un programme linéaire n’est pas nulle,
alors la contrainte duale correspondante est saturée pour la solution optimale.
Travaux dirigés
2.9 Problème 1
Vous vous rendez au village et vous trouvez votre tante qui tisse des pagnes
traditionnels pour vendre. Dans la causerie, elle vous révèle qu’il y a seulement deux
types de pagne qui sont les plus vendus. Le premier type qui est composé de fil
blancs et noirs, et le second de fil blanc, noir et bleu.
Elle vous dit que ses capacités financières ne lui permettent d’acheter que 800
rouleaux de fil blanc, 700 rouleaux de fil noir et 300 rouleaux de fil bleu. La vente
d’un pagne du premier type lui rapporte 4 000 FCA et 5 000 FCA pour celle du
second type.
Elle ajoute aussi que pour la confection d’un pagne du premier type, elle utilise
deux rouleaux de fil blanc et un rouleau de fil noir. Celle du second type utilise un
rouleau de fil blanc, deux rouleaux de fil noir et un rouleau de fil bleu. Elle vous dit
qu’il y a longtemps qu’elle fait ce métier mais qu’elle ne s’en sort pas. Pourtant elle
vend tout ce qu’elle confectionne.
Sachant que vous avez suivi un cours sur la programmation linéaire, aidez votre
tante.
NB : vous utiliserez la résolution graphique en expliquant toutes les étapes.
2.10 Problème 2
Le directeur d’un lycée souhaite renouveler le matériel de son établissement. Il a
besoin au minimum de
- 90 instruments complets de géométrie ,
- 240 tables bancs de deux places,
- 240 tables bancs de trois places.
Une premières entreprise de vente lui propose un lot A comprenant 2 instruments
complets de géométrie, 4 tables bancs de deux places et 8 tables bancs de trois places
pour 120 000 FCA. Une deuxième entreprise vend pour 240 000 FCA un lot B de 3
instruments complets de géométrie, 12 tables bancs de deux places et 6 tables bancs
de trois places.
Pour répondre à ses besoins, le directeur achète x lots A et y lots B.
2.11 Problème 3
Un ébéniste fabrique des bureaux sous forme standard ou luxe. Des études de
marché ont montré que pour l’année à venir, les possibilités de vente s’élèvent à
300 unités pour le modèle luxe et à 400 unités pour le modèle standard. L’approvi-
sionnement en bois est suffisant pour fabriquer annuellement 500 bureaux quel que
soit le type. Par ailleurs, le temps de fabrication d’un modèle luxe est le double de
celui d’un bureau de modèle standard. La capacité annuelle de fabrication est telle
que, si tous les bureaux fabriqués étaient de type standard, on pourrait en fabriquer
700 au maximum. La vente d’un bureau sous le modèle luxe conduit à une marge
unitaire sur coût variable égale à 7, celle d’un bureau de type standard égale à 5. On
se propose de rechercher le programme annuel de fabrication conduisant au profit
global maximum.
1. Donner le programme linéaire correspondant au problème.
2. Trouver la solution par la méthode graphique.
2.12 Problème 4
La société Bonvin, S.A., qui pratique le négoce en vins propose à sa clientèle
deux vins de table : l’un est dénommé ”Extra”, l’autre ”Supérieur”. Ces produits sont
obtenus par coupage de crus issus de diverses régions : un vin de l’Hérault, un vin
du Bordelais et un vin d’Italie. Les coupages sont réalisés selon les proportions fixes
suivantes :
Vin ”Extra” Vin ”Supérieur”
Vin de l’Hérault 0,5 0,2
Vin du Bordelais 0,3 0,6
Vin d’Italie 0,2 0,2
Total 1 1
Après les vendanges, la société dispose en stock dans ses cuves des quantités suivantes
de crus d’origine :
Vin de l’Hérault .. 13600 hectolitres
Vin du Bordelais .. 12000 hectolitres
Vin d’Italie ... 10400 hectolitres
Ces quantités constituent les ressources disponibles pour la production de l’année à
venir. En outre, compte tenu des capacités techniques de mise en bouteille existantes,
cette production ne peut pas dépasser 36000 hectolitres au total dans l’année. L’ac-
tivité de cette entreprise comporte des coûts qui ont été classés en deux catégories :
— Une partie est considérée comme fixe ; elle correspond aux approvisionne-
ments, puisque ceux-ci sont déja constitués, ainsi qu’aux frais de personnel.
Ces coûts s’élèvent à 12000000 euros pour l’année.
— L’autre partie correspond aux frais de mise en bouteille, d’emballage et de
commercialisation. Cette seconde partie est proportionnelle aux quantités
produites : soit 100 euros par hectolitre de vin quelle que soit la qualité
de celui-ci.
Une étude de marché révèle que celui-ci ne saurait absorber plus de 20000 hectolitres
de vin ”Extra” à 500 euros par hectolitre, et 16000 hectolitres de vin ”Supérieur” à
600 euros l’hectolitre.
Le problème de cette entreprise peut être formulé ainsi :
Quelles quantités faut-il produire de vin ”Extra” et ”Supérieur” afin de rendre maxi-
mum le bénéfice total sachant que Bonvin s’est engagée à fournir à sa clientèle :
— au moins 15000 hectolitres de vin ”Extra”,
— et au moins 5000 hectolitres de vin ”supérieur” ?
2.13 Problème 5
Il reste à un chimiste 1 kg de MNA et 2 kg de PCS. En mélangeant convenable-
ment ces deux matières, il peut fabriquer trois produits (X,Y,Z).
Les proportions par unité de produit sont de 5 MNA et 1 PCS pour X, 1 MNA et 1
PCS pour Y et 1 MNA et 3 PCS pour Z. Ces produits sont vendus respectivement
10 euros, 6 euros et 12 euros le kg.
2.14 Problème 6
Une société de tri de déchets et recyclage de papier peut se fournir en déchets
auprès de deux villes. Son rôle consiste à séparer les listes d’ordinateur et les jour-
naux. La répartition entre ménages et sociétés est différente d’une ville à l’autre
expliquant un pourcentage différent de listes d’ordinateur et de journaux dans les
déchets. Ces pourcentages ainsi que la quantité maximum de déchets que peuvent
fournir par an ces deux villes sont reprises au tableau suivant : la société offre aux
villes un prix de 35 euros par tonne de déchet. Elle doit décider du montant optimal
de déchets à acheter à chaque ville pour minimiser son coût d’achat. Pour couvrir
ses frais fixes, la société doit au moins collecter 1500 tonnes de listing d’ordinateur
par an. La société ne désire pas collecter plus de 6000 tonnes de journaux par an.
Listes(%) Journaux (%) Offre (Tonnes par an)
Ville 1 5 20 10000
Ville 2 15 30 20000
2.15 Problème 7
On désire déterminer la composition, à coût minimal, d’un aliment pour bétail
qui est obtenu en mélangeant au plus trois produits bruts : orge, arachide, sésame.
1 2 3
Produit brut orge arachide sésame pourcentage requis
pourcentage de protéines 12% 52% 42% 22%
pourcentage de graisses 2% 2% 10% 3, 6%
coût par tonne 25 41 39
2.16 Problème 8
Un pays désire accroître son potentiel d’armement ; il veut quérir au moins 100
000 fusils 200 000 grenades défensives et offensives, une centaine de chars, 400 mi-
trailleuses lourdes et autant de bazookas. Il s’adresse pour ce faire à des marchands
d’armes qui récupèrent les matériels utilisés ou non sur tous les champs de bataille.
Ces marchands proposent 3 types de lots :
Problèmes d’ordonnancement
3.1 Introduction
L’ordonnancement est une activité que tout le monde pratique et bien souvent
sans s’en rendre compte. Faire couler le café le matin pendant que l’on prend une
douche est un exemple très simple mais qui met en évidence que l’organisation
dans le temps des tâches permet de gagner du temps. Ce temps gagné peut, en
revanche, s’avérer très précieux puisque pour une entreprise il peut représenter de
la productivité et donc de l’ argent. La réalisation d’un projet de grande envergure
comme la construction d’un bateau, ou d’un aéroport nécessite en générale une
succession des tâches auxquelles s’attachent certaines contraintes tels que :
de temps
d’antériorité
de production
Les méthodes d’ordonnancement les plus connues et les plus utilisée sont MPM ;
PERT et GANTT :
Remarque 3.4.1. :
— Tous les sommets de ce chemin critique sont appelés tâches critiques.
— Tout retard pris dans l’exécution d’une tache critique retard la date de fin du
projet.
3.4.3 Marges
Définition 3.4.3. On appelle marge pour une tâche dans le réalisation d’un projet
le retard que l’on peut accuser sans affecter la date de début des tâches suivantes
ou/et la date de fin du projet.
Définition 3.4.4. La date de début au plus tôt d’une tâche X est noté t(X) est
obtenue en cumulant la durée des tâches précédentes sur la séquence (chemin) la
plus longue.
On initialise à 0 pour les sommets sans précédents et pour chaque sommet (on
le fait par ordre croissant), X on a :
n o
t(X) = max t(Y ) + lY,X ; Y ∈ P (X)
Définition 3.4.5. La date au plus tard une tâche X est noté t∗ (X) est la date à la
quelle doit être exécutée la tâche X sans remettre en cause la durée optimale de fin
de projet.
On initialise pour le sommet “Fin” de tel sorte que la date de début au plus tôt
soit égale à la date de début au plus tôt soit égale à la date de début au plus tard, au-
trement dit t(F in) = t∗ (F in) et on détermine les t∗ (X) suivant l’ordre décroissante
des niveaux en utilisant la formule :
n o
t∗ (X) = min t∗ (Y ) − lX,Y ; Y ∈ S(X)
Marges totales
Définition 3.4.6. La marge totale sur une tâche est le retard que l’on peut prendre
dans la réalisation de cette tâche sans retarder l’ensemble du projet.
Elle est notée Mt et définie pour chaque tâche X par :
Remarque 3.4.3. Pour chaque tâche du chemin critique la marge totale est nulle.
Marges libres
Définition 3.4.7. La marge libre sur une tâche est le retard que l’on peut prendre
dans la réalisation de cette tâche sans retarder la date de début au plus tôt de tout
autre tâche qui suit.
Elle est noté ML et définie pour chaque tâche X par :
n o
ML (X) = min t(Y ) − t(X) − lX,Y ; Y ∈ S(X)
Remarque 3.4.4. Il faut noter que la marge libre d’une tache critique est aussi
nulle et de façon générale elle est inférieure ou égale à la marge totale.
— une borne supérieure di de la durée di de la tache i qui est donc une estimation
pessimiste ;
— la durée mi la plus probable de di , autrement dit une estimation du mode de
la distribution de probabilité de la durée de la tache i.
A partir de ces trois données, il convient d’estimer la moyenne E(di ) et la variance
σ 2 (di ) de la durée di .
Pour ce faire, l’approche proposée dans PERT formule deux hypothèses H1 et H2 :
H1 : l’étendue de la distribution de di est approximativement 6σ(di ), de
sorte que l’estimation de σ 2 (di ) vaut
1 2
b2 (di ) =
σ (di − di ) . (3.1)
6
La justification de cette hypothèse est qu’elle est vérifiée pour de nombreuses
distributions de probabilité, en particulier pour une distribution normale.
H2 : la distribution de di est approximativement une distribution beta
dont les deux paramètres sont fixés arbitrairement, de sorte que l’estimation
de E(di ) vaut
b i ) = 1 (4mi + di + di ).
E(d (3.2)
6
La justification de cette hypothèse réside dans la généralité de la distribution
beta et dans la constation pratique que les durées des taches ont souvent une
fonction de densité de la forme de celle de cette distribution.
Ainsi, en supposant toutes ces hypothèses satisfaites, il sera finalement possible d’éva-
luer la probabilité que la durée d’exécution du projet dépasse un certain seuil.
Définition 3.8.1. Une ressource renouvelable est un moyen que l’on retrouve iden-
tique à lui même après chacune des utilisations.
Définition 3.8.2. Une ressource consommable est un moyen qui diminue au fur et
a mesure de son utilisation.
Remarque 3.8.1. Une ressource consommable est gérée comme un stock, en ce sens
que des quantités de cette ressource sont disponibles, à certains instants.
Notations
— Soit R un ensemble de ressources renouvelables ; Qrt représente la capacité
de la ressource r ∈ R disponible à la période t.
— Soit C un ensemble de ressources consommables ; nous supposerons pour
chaque ressource c ∈ C que la quantité maximale pouvant être consommée est
constante et vaut Qc à chaque période de temps. Nous supposerons- de ma-
nière non restrictive- que la consommation d’une ressource non renouvelable
est due au moment de la fin de l’exécution d’une tache.
— Soit un ensemble de taches j = 1, · · · , J à effectuer ; la tache j peut être
exécutée selon Mj modes.
Si le mode m ∈ {1, · · · , Mj } est utilisé pour la réalisation de la tache j, sa
durée d’exécution est notée pjm et elle correspond à une utilisation qjmr de la
ressource r ∈ R durant toute son exécution et une consommation qj mc de la
ressource c ∈ C à la fin de son exécution.
— Soit 0 et J + 1, les taches fictives début et fin du projet. Par similarité -mais
cette hypothèse peut être relaxé- nous supposerons que seules des contraintes
de postériorité stricte existent entre les taches et soit Γ−1 (j) l’ensemble des
taches prédécesseurs de j.
Préliminaires
Pour la formulation ci-dessous, il convient de déterminer préalablement :
X EFj , j ∈ {1, · · · , J + 1}, une borne inférieure de la fin au plus tôt de la tache
j. Ces dates peuvent être calculées en utilisant les plus petites durées des
taches - soit min pjm - et en résolvant le problème PSP correspondant
m∈{1,··· ,Mj }
sans s’occuper des contraintes de ressources.
X T une borne supérieure de la fin du projet pouvant être calculée soit par une
heuristique, soit en sommant les durées maximales de toutes les taches.
X LFj , j ∈ {1, · · · , J + 1}, une borne supérieure de la fin au plus tard de la
tache j.
Variables
Introduisons les variables binaires :
X xjmt = 1 si la tache j ∈ {1, · · · , J} est exécutée en le mode m ∈ {1, · · · , Mj }
et se termine à la période t ∈ {1, · · · , T } ; et xjmt = 0 sinon.
X x(J+1)1t = 1 si la tache J +1 se termine à la période t ∈ {1, · · · , T }, autrement
dit si le projet se termine en t ; et x(J+1)1t = 0 sinon.
Une formulation possible est alors le programme linéaire en variables binaires sui-
vant :
LFJ+1
X
min z= tx(J+1)1t
t=EFJ+1
Mj LFj
X X
xjmt = 1 j = 1, · · · , J + 1
m=1 t=EFj
Mi X LFi Mj LFj
X X X
tximt ≤ (t − pjm )xjmt j = 1, · · · , J + 1, i ∈ Γ−1 (j)
m=1 t=EFi m=1 t=EFj
S.c : Mj
J X t+pjm −1
X X
qjmr xjmr ≤ Qrt r ∈ R, t = 1 · · · , T
j=1 m=1 τ =t
Mj
J+1 X LFj
X X
qjmc xjmt ≤ Qc c∈C
j=1 m=1
tt=EFj
xjmt∈{0,1} ; j = 1, · · · , J + 1 m = 1, · · · , Mj ; t = 1, · · · , T.
(3.3)
dans cette modélisation :
X la fonction objectif exprime la minimisation de la durée d’exécution du projet,
X les contraintes de la première ligne du système affectent un seul mode et une
seule date de fin à chaque tache ;
ci = f (di ), di ≤ di ≤ di
𝑐𝑖
𝑑𝑖 𝑑̅𝑖 𝑑𝑖
ci = f (θi ), 0 ≤ θi ≤ θi = di − di
Remarque 3.9.2. Si les fonctions de cout f (.) sont linéaires, il s’agit d’un problème
de programmation linéaire. Dans le cas où les variations de thetai sont discrètes, ce
problème est alors alors en variables mixtes.
Les valeurs possibles pour λ sont celles comprises entre la durée minimale du projet
quand di = di ∀i et cette même durée quand di = di ∀i.
Si λ est considéré comme un paramètre, le problème est un problème de programma-
tion linéaire est paramétrique.
Il convient donc bien de diminuer la durée de chaque chemin critique, leur nombre
pouvant augmenter quand la durée d’exécution du projet diminue.
Travaux Dirigés
n
nX o
Désignons par D = aij xj ≤ bi ; i = 1, · · · , m avec xj ≥ 0 l’ensemble des
j=1
solutions admissibles. Le but que l’on se fixe dans la résolution d’un tel problème
est de minimiser ”au mieux” les différents objectifs. Pour cela, la tâche consiste
à déterminer un ou plusieurs bons compromis, c’est-à-dire des solutions x ∈ D
correspondant à la préférence globale du décideur. Car, en général, ces fonctions
objectifs sont conflictuelles et donc il n’y a pas de solution(s) optimale(s) mais des
solutions de meilleurs compromis.
Remarque 4.1.2.
n = (n1 , · · · , np )
où (4.6)
nk = min flk ; k = 1, · · · , p.
l=1,··· ,p
En effet, les coordonnées du point nadir correspondent aux pires valeurs obtenues
par chaque fonction objectif lorsque l’on restreint l’espace des solutions à la surface
de compromis. Ce point sert à restreindre l’espace de recherche et il est utilisé dans
certaines méthodes d’optimisation interactives.
Notons que si la matrice des gains n’est pas univoquement déterminée, notam-
ment en cas de non unicité de l’une des solutions optimales, alors le point nadir
dépend de la matrice choisie.
m = (m1 , · · · , mp )
où (4.7)
mk = max fk (x); k = 1, · · · , p.
x∈D
Remarque 4.1.3.
Dans les méthodes multicritères, l’intervalle [Mk , mk ] est souvent utilisé pour mesu-
rer la variation des valeurs du critère fk sur l’ensemble des solutions efficaces.
vant :
min f1 (x) = 3x1 − x2 ;
min f2 (x) = −x1 + 3x2 ;
4x1 + 3x2 ≥ 12
x1 + 3x2
≥6
(4.14)
x −x
1 2 ≤2
S.C :
−x1 + x2
≤3
x1 + x2 ≤8
x1 ≥ 0 x2 ≥ 0
avec λ ∈ Λ.
a) Si x est solution optimale de (P1 ), x est solution efficace.
b) Si x est solution efficace et que ZD est un ensemble convexe, il existe λ ∈ Λ
tel que x soit une solution optimale de (P1 ).
Si les poids λk n’étaient pas tous strictement positifs, la condition (a) n’assure-
rait que la faible efficacité de x dans le cas où x n’est pas solution optimale unique.
Travaux dirigés
Analyse multicritère
Gestion de Stocks