Vous êtes sur la page 1sur 9

THEORIE DE L’OPTIMISATION ET AIDE LA DECISION

I – Concept d’optimisation
Plusieurs problèmes de prise décision peuvent être résolue grâce à la théorie de l’optimisation.
Un problème d’optimisation consiste à déterminer les valeurs des variables décisionnelles permettant
d’optimiser une fonction objectif définie.
On distingue :
 L'optimisation linéaire étudie le cas où la fonction objectif et les contraintes sont des expressions
linéaires des variables. La programmation linéaire et des méthodes heuristiques permettent la
résolution des problèmes correspondant.
 L’optimisation non linéaire étudie le cas général dans lequel la fonction objectif et/ou les
contraintes sont des expressions non linéaires des variables.
Tout problème d’optimisation comporte une étape essentielle à savoir la modélisation mathématique qui
consiste en trois étapes :
1- Identification des variables de décisions qui très souvent sont des éléments de l’ensemble
. Ce sont les paramètres sur lesquels l’utilisateur peut agir pour faire évoluer le système
considéré.
2- Définition de la fonction objectif (fonction coût) permettant d’évaluer l’état du système
(exemple rendement, performance)
3- Description des contraintes imposées aux variables
Tout problème d’optimisation consiste alors à déterminer les variables de décisions conduisant aux
meilleurs conditions de fonctionnement du système ; ce qui revient à minimiser ou à maximiser la
fonction objectif tout en respectant les contraintes imposées.
II – Optimisation linéaire sous contraintes
Parmi les problèmes de prise décision qui peuvent être modélisés en problèmes d’optimisation linéaire, on
a le problème d’affectation des ressources à différentes activités en cherchant à minimiser ou ^maximiser
une fonction objectif.
II –1 Présentation et formulation mathématique

Il s’agit, par exemple, d’un problème où on dispose de ressources (matérielles ou humaines) qui

doivent être affectées à la réalisation de activités (tâches ou opérations) en cherchant à minimiser la

durée totale de réalisation sachant qu’une ressource ne peut être affectée qu’à une et une seule activité et
qu’une activité ne peut être réalisée par une et une seule ressource. On suppose connues les durées de
réalisation de chaque activité par chaque ressource.
Pour la formulation mathématique, on a:

1
Variables : si la ressource est affecté à l’activité et sinon

Fonction objectif : à minimiser en respectant :


Les contraintes :
- La contrainte assurant que chaque ressource est affectée à une seule activité et une seule :

,
- La contrainte assurant que chaque activité est réalisée par une seule ressource et une seule :

 : durée de réalisation de l’activité par la ressource .

Un des algorithmes permettant de trouver une solution est l’algorithme Khün connu sous l’appellation
de la méthode hongroise

Remarque ; La formulation faite ci-dessus concerne un problème de minimisation. On a une


formulation analogue pour un problème de maximisation.
II –2 La méthode hongroise
C4est une méthode itérative qui se dont les étapes sont décrites ci-après :
Etape 0 : Réduction du tableau initial
Soustraire à chaque élément de chaque ligne du tableau initial le plus petit élément de la ligne ; on
obtient ainsi un nouveau tableau.
. Soustraire à chaque élément de chaque colonne du tableau obtenu précédemment le plus petit
élément de la colonne ; on obtient ainsi un tableau réduit.
Etape 1 : Encadrer et barrer les zéros
Chercher la ligne comportant le moins de zéros non barrés (en cas d’égalité, choisir arbitrairement
la ligne la plus haute) et encadrer le zéro le plus à gauche de cette ligne. Ensuite, barrer tous les zéros se
trouvant sur la même ligne et / ou sur la même colonne que le zéro encadré.
Recommencer l’opération jusqu’à ce qu’on ne puisse plus encadrer ou barrer de zéro.
Si l’on a encadré un zéro par ligne et par colonne, on a obtenu la solution optimale et le processus
s’arrête.
. Si non, on passe à l’étape 2
Etape 2 : Marquer et barrer les lignes et les colonnes
a) Marquer d’une croix les lignes ne contenant aucun zéro encadré.
b) Marquer d’une croix toute colonne ayant un zéro barré sur une ligne marquée.
c) Marquer d’une croix toute ligne ayant un zéro encadré dans une colonne marquée
Répéter alternativement b) et c) jusqu’à ne plus pouvoir marquée ni de ligne ni de colonne.
2
Tracer un trait sur toutes les lignes non marquées et sur toutes les colonnes marquées.
Etape 3 : Modification du tableau
Les cases non traversées par un trait constituent un tableau partiel.
Retrancher à toutes les cases de ce tableau partiel le plus petit élément de celui-ci.
Ajouter ce même élément à toutes les cases barrée deux fois du tableau réduit de l’étape 2.
On obtient alors un nouveau tableau sur lequel on pourra répéter la succession des étapes 1, 2 et 3
Exemple :
Dans une unité de production, le responsable cherche, pour journée de travail donnée, à affecter aux
postes de travail polyvalentes P1, P2, P3 et P4, les tâches T1, T2, T3 et T4 de telle sorte que chaque poste
de travail ne puisse effectuer qu’une seule tâche et que chaque tâches ne puisse être réalisée que par un
seul poste de travail sachant que l’ensemble de ses tâches doit être réalisé le rapidement possible
Le tableau suivant présente les durées en minutes de réalisation de chaque tâche par chaque poste de
travail :

T1 T2 T3 T4
P1 60 170 330 360
P2 130 200 200 400
P3 50 300 170 180
P4 120 90 250 300
Résolution
Etape 0
Réduction en ligne
T1 T2 T3 T4
P1 0 110 270 300
P2 0 70 70 270
P3 0 250 120 130
P4 30 0 160 110
Réduction en colonne : obtention du tableau réduit
T1 T2 T3 T4
P1 0 110 200 190
P2 0 70 0 160
P3 0 250 50 20
P4 30 0 90 0
Itération 1 :
Etape 1
En gras zéro encadré et en rouge zéro barré
T1 T2 T3 T4
P1 0 110 200 190
P2 0 70 0 160
P3 0 250 50 20
P4 30 0 90 0
La ligne P3 et la colonne T4 n’ont pas de zéro encadré donc on passe à l’étape 2
Etape 2
On marque la ligne P3 et ensuite la colonne P1.

3
On trace un trait sur les lignes P1, P2 et P4 puis sur la colonne P1.
Etape 3
Le tableau partiel obtenu est le suivante
T2 T3 T4
P3 250 50 20
Le plus petit élément est 20

On a donc le tableau suivant


T1 T2 T3 T4
P1 20 110 200 190
P2 20 70 0 160
P3 0 230 30 0
P4 50 0 90 0
Itération 2 :
Etape 1
En gras zéro encadré et en rouge zéro barré
T1 T2 T3 T4
P1 20 110 200 190
P2 20 70 0 160
P3 0 230 30 0
P4 50 0 90 0
La ligne P1 et la colonne T4 n’ont pas de zéro encadré, on passe à l’étape 2
Etape 2
On marque la ligne P1.
On trace un trait sur les lignes P2, P3 et P4.
Etape 3
Le tableau partiel obtenu est le suivante
T1 T2 T3 T4
P1 20 110 200 190
Le plus petit élément est 20
On a donc le tableau suivant
T1 T2 T3 T4
P1 0 90 180 170
P2 20 70 0 160
P3 0 230 30 0
P4 50 0 90 0
Itération 3 :
Etape 1
En gras zéro encadré et en rouge zéro barré
T1 T2 T3 T4
4
P1 0 90 180 170
P2 20 70 0 160
P3 0 230 30 0
P4 50 0 90 0
On a un zéros encadré par ligne et par colonne. On a la solution optimale
P1 effectuera la tâche T1, P2 ma tâche T3, P3 la tâche T4 et P4 le tâche T2.
Durée totale : 60+200+180+90=530 min

III – Optimisation non linaire sans contraintes


La résolution d’un tel problème se fait généralement en appliquant certains théorèmes mathématiques
concernant le maximum et le minimum d’une fonction. A cet effet, on procède comme suit :
- Etape 1 : Recherche des points critiques
- Etape 2 : Détermination éventuelle de l’optimum
III-1 – Cas d’une fonction à une variable
Considérons un problème à une variable désignée par x et dont la fonction objectif est f ( x) .
Pour sa résolution, on procède comme suit :
1°/ Recherche des points critiques
On calcule la dérivée d’ordre 1 f ( x ) puis on résout l’équation f ( x )  0 .
On peut ainsi obtenir un ou plusieurs points critiques x0 .
2°/ Détermination de l’optimum
On calcule la dérivée d’ordre 2 f ( x ) puis on évalue f ( x0 )
- Si f ( x0 )  0 alors on a un maximum au point x0 ayant pour valeur f ( x0 )
- Si f ( x0 )  0 alors on a un minimum au point x0 ayant pour valeur f ( x0 )
- Si f ( x0 )  0 alors on a ni maximum ni maximum au point x0
III-2 – Cas d’une fonction à une variable
Considérons un problème à deux variables désignées par x et y et dont la fonction objectif est
f ( x, y ) .
Pour sa résolution, on procède comme suit :
1°/ Recherche des points critiques
f f
On calcule les dérivées partielles d’ordre 1 et puis on résout le système d’équations
x y
suivant :
 f
 0
 x
 f .
 0
 y

On peut ainsi obtenir un ou plusieurs points critiques ( x0 , y0 ) .
5
2°/ Détermination de l’optimum
2 f 2 f 2 f
On calcule les dérivées partielles d’ordre 2 , et
x 2 y 2 xy
2
2 f 2 f  2 f 
On évalue ensuite, au point ( x0 , y0 )  :     
x 2 y 2  xy 
2 f
- Si   0 et  0 alors on a un maximum au point ( x0 , y0 ) ayant pour
x 2
valeur f ( x0 , y0 )

2 f
- Si   0 et 0 alors on a un minimum au point ( x0 , y0 ) ayant pour
x 2
valeur f ( x0 , y0 )
- Si   0 alors on a ni maximum ni maximum au point ( x0 , y0 )
- Si   0 alors cette méthode n’est pas adapté pour
Exemple :
Une entreprise doit s’approvisionner en deux produits A et B pour des quantités désignées respectivement
par x et y . Le coût total d’approvisionnement dépend des quantités commandées et livrées. Elle est exprimée par le
fonction f ( x, y )  x 3  y 3  6 xy .
Cette entreprise cherche à déterminer les quantités à commander des deux produits pour optimiser le coût
total d’approvisionnement. Résoudre ce problème

Résolution :
Variables : Les quantités des produits à commander : x et y
Fonction Objectif : Coût total d’approvisionnement f ( x, y )  x 3  y 3  6 xy
Formulation du problème :

Optimiser f ( x, y )  x 3  y 3  6 xy
x  0
et s/c 
y  0
Recherche des points critiques :

 f
  3x 2  6 y  0
 x
 f
  3 y2  6x  0
 y

On trouve deux points critiques (0, 0) et (2, 2)
Détermination de l’optimum :

6
 2 f
 2  6x
 x

 f
2

 2  6y
 y
 2 f
  6

 x y 2

2
2 f 2 f  2 f 
On a       36 xy  36  36( xy  1)
x 2 y 2  xy 
2 f
On retient le point (2, 2) et on a   108  0 et  12  0
x 2
On a donc un minimum qui a pour valeur f ( x0 , y0 )  8
L’entreprise doit commander la quantité x0  2 du produit A et la quantité y0  2 du produit B pour
un coût total d’approvisionnement de f ( x0 , y0 )  8

IV – Optimisation non linaire sous contraintes


IV-1 – Principe de résolution
On distingue globalement deux types de contraintes :
- Les contraintes de type égalité
- Les contraintes de type inégalité
Un problème d’optimisation sous contraintes peut être transformé en un problème d’optimisation sans
contraintes dont le principe de résolution a été abordé au paragraphe précédent. Une telle transformation
se fait en définissant une nouvelle fonction objectif en introduisant de nouvelles variables appelées
multiplicateurs de Lagrange. Par ailleurs les contraintes de type inégalité peuvent être ramenées à des
contraintes de type égalité.
On se limitera donc aux problèmes d’optimisation avec contraintes de type égalité.

IV-1 – Méthode de Lagrange

Soit à optimiser une fonction f  x1 , x2 ,..., xn  à n variables x1 , x2 ,..., xn sous contraintes

hi  x1 , x2 ,..., xn   0 avec i  1, 2,..., m où on suppose que nm .


D’après le théorème de Lagrange, un tel problème se ramène à un problème d’optimisation sans
contraintes dont la fonction objectif est donné par :
m
L  x1 , x2 ,..., xn , 1 , 2 ,..., n   f ( x)   i hi ( x1 , x2 ,...xn )
i 1

7
où 1 , 2 ,..., n sont de nouvelles variables introduites appelées multiplicateurs de Lagrange.

En appliquant le principe de résolution d’un problème d’optimisation non linéaire sans contraintes, on
pourra résoudre le problème initial.
Exemple :
Une entreprise doit s’approvisionner en deux produits A et B pour des quantités désignées respectivement
par x et y . Le coût total d’approvisionnement dépend des quantités commandées et livrées. Elle est exprimée par le
fonction f ( x, y )  x 3  y 3  6 xy .
Cette entreprise cherche à déterminer les quantités à commander des deux produits pour optimiser le coût
total d’approvisionnement sachant sa capacité de stockage et le besoin en ces produits se traduisent par la
contrainte x  y  10 .
Résoudre ce problème

Résolution :
Contrainte non logique : h( x, y )  x  y  10
Formulation du problème :
Optimiser f ( x, y )  x 3  y 3  6 xy
s/c h( x, y )  x  y  10  0
x  0
et s/c 
y  0
Transformation du problème :
On a une seule contrainte don on introduit un seul multiplicateur de Lagrange  .
La formulation du problème devient donc :
Optimiser L( x, y,  )  x3  y 3  6 xy   ( x  y  10)
x  0
et s/c 
y  0
Recherche des points critiques :

L
 x  3 x  6 y    0
2


 L
  3 y  6x    0
2

 y
 L
  x  y  10  0
 
On trouve un point critique x0  5 , y0  5 et 0  45

8
Détermination de l’optimum :
2 f
Au point (5,5, 45) on a   36(25  1)  0 ,  30  0 et
x 2
2 f
 30  0
y 2
On a donc un minimum qui a pour valeur f ( x0 , y0 )  100
L’entreprise doit commander la quantité x0  5 du produit A et la quantité y0  5 du produit B pour
un coût total d’approvisionnement de f ( x0 , y0 )  100

Remarque : On peut ramener ce problème à un problème d’une variable et le résoudre en appliquant la


méthodologie décrite au paragraphe III-1

Vous aimerez peut-être aussi