La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Recherche Opérationnelle 2 ème Année Gestion industrielle Année universitaire : 2009 - 2010 Responsable du cours : Rim Larbi

Présentations similaires


Présentation au sujet: "Recherche Opérationnelle 2 ème Année Gestion industrielle Année universitaire : 2009 - 2010 Responsable du cours : Rim Larbi"— Transcription de la présentation:

1 Recherche Opérationnelle 2 ème Année Gestion industrielle Année universitaire : Responsable du cours : Rim Larbi

2 Plan du cours Introduction à la recherche opérationnelle Partie 1 : Programmation Linéaire Chapitre 1 : Introduction à la programmation linéaire Chapitre 2 : Résolution dun programme linéaire : méthode de simplexe Chapitre 3 : Dualité et analyse de sensibilité dans la programmation linéaire

3 Plan du cours Partie 2 : Graphes Chapitre 1 : Notions fondamentales sur les graphes Chapitre 2 : Problème du plus court chemin Chapitre 3 : Problème de planification de projets

4 Introduction à la Recherche Opérationnelle

5 Introduction à la RO Origines de la RO - Période : 2 ème guerre, - Responsable : armée britannique - Problèmes posés : implantation optimale de radars de surveillance, le management des bombardements anti sous-marins opérations de miniers… RO = Application des mathématiques et des méthodes scientifiques aux opérations militaires RO = A pproche scientifique à la prise des décisions, qui cherche à déterminer comment concevoir et faire fonctionner un système dune façon optimale

6 Introduction à la RO Techniques de la RO La programmation mathématique programmation linéaire programmation quadratique programmation en nombres entiers programmation dynamique Analyses de réseaux et graphes Théories des files dattentes Simulation Analyse statistique Champs dapplication de la RO - Industries - Gouvernement - Agences - Hôpitaux - Institutions déducation…

7 Introduction à la RO Méthodologie de la RO (1) Identification du problème (2) Collecte des données (3) Modélisation (Formulation mathématique) (4) Vérification du modèle (5) Recherche des solutions (6) Présentation des solutions (7) Implémentation et recommandations

8 Partie 1 Programmation Linéaire

9 Chapitre 1 Introduction à la programmation linéaire

10 Chapitre 1 Introduction à la PL La programmation linéaire = méthode permettant doptimiser, c'est-à- dire rendre le plus grand ou le plus petit possible, une fonction linéaire, cela sous certaines contraintes définies par des inégalités. Les exemples habituels doptimisation sont la recherche dun bénéfice maximal ou dun coût minimal. Remarque : Cest grâce à cette méthode que les problèmes de ravitaillement étaient résolus pendant la seconde guerre mondiale.

11 Chapitre 1 Introduction à la PL Exemple Une compagnie est spécialisée dans la production de deux types de produits : des climatiseurs et des ventilateurs. Les deux produits nécessitent un certain nombre dheures de main dœuvre. Le tableau suivant donne les informations nécessaires sur les deux produits, cest-à- dire les nombres dheures machine et dheures main dœuvre nécessaires à la fabrication dune unité de chacun de ces produits, ainsi que le profit généré par la production dune unité de ce produit. Le tableau nous donne aussi le nombre total dheures machines et dheures main dœuvre disponibles. Heures machine Main dœuvreProfit Climatiseur2 h/unité3 h/unité25 DT/unité Ventilateur2 h/unité1 h/unité15 DT/unité Total disponible240 h140 h

12 Chapitre 1 Introduction à la PL I.Formulation du programme linéaire a)Variables de décision : doivent complètement décrire les décisions à prendre. La compagnie veut décider du nombre de climatiseurs et du nombre de ventilateurs à produire pour maximiser le profit. Ceci nous amène à choisir les deux variables de décision suivantes : x1 = nombre de climatiseurs x2 = nombre de ventilateurs

13 Chapitre 1 Introduction à la PL b) Fonction objectif : dans nimporte quel programme linéaire, le responsable de décision veut maximiser (en général, le revenu ou profit) ou minimiser (en général le coût) une fonction des variables de décisions. Cette fonction est appelée fonction objectif. Lobjectif de lentreprise est de déterminer le programme de production qui maximisera son profit (Z=profit). La fonction objectif sécrit alors: Max Z = 25x1 + 15x2

14 Chapitre 1 Introduction à la PL c) Contraintes du modèle : La limitation des ressources contraint lentreprise de la manière suivante : 1) Contraintes heure machine 2x1 + 2x ) Contrainte main dœuvre 3x1 + x ) Contraintes de non-négativité (exprimant que les niveaux dactivité ne peuvent être négatifs) x1 0, x2 0 Modèle complet : x1 = nbre de climatiseurs, x2 = nbre de ventilateurs Max Z = 25 x x2 s.c. 2x1 + 2x x1 + x2 140 x1 0, x2 0 s.c = sous contraintes

15 Chapitre 1 Introduction à la PL Domaine réalisable et solutions optimales : Ce sont deux concepts fondamentaux associés avec un PL. Pour les définir, on va utiliser le terme point (x1,x2), qui désigne une spécification de la valeur de chaque variable de décision. Le domaine réalisable (DR) est lensemble de tous les points satisfaisant toutes les contraintes du PL. Dans notre exemple, le point (20,40) (Z= 280) appartient au DR. Ce point est dit réalisable. Pour un problème de maximisation (min), une solution optimale est un point du DR qui donne la valeur la plus large (faible) de la fonction objective. (20, 40) solution optimale car (10, 110) est réalisable et donne Z = 1900 meilleur profit que Z= 280

16 Chapitre 1 Introduction à la PL II.Résolution graphique Méthode de résolution dun PL ne comportant que 2 variables de décision Etapes à suivre Représenter les lignes des contraintes et lensemble du domaine réalisable Localiser la solution optimale Calculer la solution optimale

17 Chapitre 1 Introduction à la PL 1 ère étape : domaine réalisable (PL) Max Z = 25 x x2 s.c. 2x1 + 2x x1 + x2 140 x1 0, x2 0 Domaine réalisable

18 Chapitre 1 Introduction à la PL 2 ème étape : Recherche de la solution optimale (PL) Max Z = 25 x x2 La fonction objectif Z = 25x1 + 15x2 représente pour Z fixé (25x1 + 15x2 = cte) léquation des courbes de niveau (des droites de pente -5/3) quon appelle aussi ligne disoprofit ou isocoût. Maximiser Z revient à déplacer la ligne disoprofit dans la direction qui augmente la valeur de Z (pour un pb de maximisation). La dernière ligne qui touche le DR définit la plus large valeur de toutes les solutions réalisables, et contient la solution optimale

19 Chapitre 1 Introduction à la PL 2 ème étape : Recherche de la solution optimale (suite) Solution optimale {B} = D D D D

20 Chapitre 1 Introduction à la PL 3 ème étape : Calcul de la solution optimale Solution optimale {B} = D D déquations respectives: 2x1 + 2x2 = 240 3x1 + x2 = 140 Donc x1=10, x2=110 et Z*=1900 D D

21 Chapitre 1 Introduction à la PL III.Notions de convexité et points extrêmes Définition : Un ensemble E non vide est dit convexe si et seulement si pour tout élément x et y de E et pour tout λ Є [0,1], λ x + (1- λ ) y Є E. Pour toute paire de points P1 et P2, lensemble des points qui forment le segment [P1P2] appartient au demi-plan. Caractéristique dun PL: le DR dun PL est ou bien vide ou convexe. ConvexesNon convexes

22 Chapitre 1 Introduction à la PL Définition: E, un ensemble convexe, un point P dans E est appelé point extrême si chaque segment de droite entièrement contenu dans S et contenant le point P, a P comme extrémité. Mathématiquement : Soit x Є E, x est un point extrême Sil Ǝ y Є E, z Є E et 0<λ<1 tels que x= λy + (1- λ)z alors x=y=z x nest pas un point extrême x a,b Points extrêmes a b y y Point extrême

23 Chapitre 1 Introduction à la PL Théorème: Pour un PL donné, si un optimum existe, au moins un point extrême est optimal. Corollaire: Si PL admet un optimum unique, alors cet optimum doit être un point extrême. IV.Cas particuliers de PL PL non borné Max Z = x1 + 2x2 s.c. 7x1+2x2 28 x1 + 6x2 12 x1 0, x2 0

24 Chapitre 1 Introduction à la PL x 1 +6x 2 = 12 7x 1 +2x 2 = Si la fonction objectif est min z = x1 + 2x2 (18/5, 7/5) est optimal. Lignes disoprofit

25 Chapitre 1 Introduction à la PL PL a une infinité de solutions optimales Max Z = x1 + 3x2 s.c. 2x1+6x2 30 (1) x1 10 (2) x2 4 (3) x1 0, x2 0 Tous les points appartenant à [AB] sont optimaux

26 Chapitre 1 Introduction à la PL PL non réalisable Max Z = 3x1 + 2x2 s.c. x1+2x2 2 (1) 2x1 + 4x2 8 (2) x1 0, x2 0 DR vide PL non réalisable

27 Chapitre 2 Résolution dun programme linéaire : méthode de simplexe

28 Chapitre 2 Méthode de simplexe I.Introduction Dans le chapitre précédent, on a vu comment résoudre graphiquement un PL à deux variables. Or la majorité des problèmes réels ont plusieurs variables. Doù la nécessité davoir une méthode algébrique pour résoudre des PLs ayant plus que 2 variables. La méthode de Simplexe est lune des méthodes les plus anciennes (Dantzig, 1947), et la plus utilisée jusquà nos jours, pour résoudre même des problèmes de grandes tailles avec quelques milliers de variables et quelques milliers de contraintes.

29 Chapitre 2 Méthode de simplexe II.Mise en forme standard Un PL peut avoir des contraintes dégalité (=) et des contraintes dinégalité ( et ). Avant lapplication de Simplexe, le PL doit être converti en un PL équivalent où : - toutes les contraintes sont des égalités, - toutes les variables sont non négatives ( 0), - le second membre est non négatif (AX b, b0). Un tel PL est dit sous la forme standard.

30 Chapitre 2 Méthode de simplexe Exemple : Usine de ceintures Une usine fabrique de 2 sortes de ceintures : luxe et standard Chaque type demande 1m2 de cuir Une ceinture standard demande 1h de travail Une ceinture de luxe demande 2h Chaque semaine, on dispose de 40m2 de cuir et de 60h de travail. Chaque ceinture standard rapport 3 Euros Chaque ceinture de luxe 4 Euros. Objectif : Maximiser le profit.

31 Chapitre 2 Méthode de simplexe x1 = nombre de ceintures de luxe produites par semaine x2 = nombre de ceintures standard produites par semaine Maximiser z = 4x1 + 3x2, avec x1 + x2 40 contrainte sur le cuir (1) 2x1 + x2 60 contrainte sur le travail (2) x1, x2 0 contrainte de signe (3)

32 Chapitre 2 Méthode de simplexe Pour convertir la i ème contrainte en une contrainte dégalité, on définit la variable décart, s i (slack variables) qui représente la quantité de ressource non utilisée dans cette contrainte. s 1 = 40 - x1 - x2 x1 + x2 + s 1 = 40 On doit ajouter s 1 0 pour que (x1, x2) satisfasse x1 + x2 40. Pour une contrainte, on définit e i (excess variable), variable dexcédent, qui est aussi 0. On obtient alors: max z = 4x1 + 3x2 s.c. x1 + x2 + s 1 = 40 2x1 + x2 – e 1 = 60 x1, x2, s1, e1 0

33 Chapitre 2 Méthode de simplexe Remarque : L'impact de ces variables d'écart sur la fonction objectif est nul. Ceci explique le fait que leur existence soit tout simplement liée à une mise en forme du programme linéaire initial. En général, la mise en forme dun PL donne : …

34 Chapitre 2 Méthode de simplexe On définit A = (a i j ), ; ; On suppose que n m (PL) : Max c t x s.c. Ax = b x 0 Rq : pour avoir la forme standard, les équations doivent, si nécessaire, être multipliées par (-1) pour avoir b 0

35 Chapitre 2 Méthode de simplexe III. Analyse algébrique de la méthode de simplexe 1. Variables de base On appelle Base une sous matrice régulière de A. Il faut que la matrice A(m,n) soit de rang m (pas de contrainte (ou équation) redondante càd inutile). Une solution de base est obtenue en posant n m variables égales à 0, et en résolvant pour les m variables restantes, qui sont les variables de base (VB). Les nm variables à 0 sont les variables hors base (VHB). Des choix différents de VHB donnent lieu à des différentes solutions de base.

36 Chapitre 2 Méthode de simplexe Représentation xtBxtB xtHxtH ctbctb ctHctH B base H hors base m colonnesn m colonnes

37 Chapitre 2 Méthode de simplexe Représentation matricielle x B A = [B | H], x =, c t = [c t B | c t H ] x H Ce qui donne Z = c t x = c t B x B + c t H x H Ax = b B x B + H x H = b Une solution de base est telle que x H = 0 Bx B = b x B = B 1 b

38 Chapitre 2 Méthode de simplexe Exemple Soit le système suivant : x1 + x2 = 3 x2 + x3 = 1 Si on pose VHB = {x3}, alors VB = {x1, x2}. On résout x1 + x2 = 3 x2 = 1 Ce qui donne x1 = 2 et x2 = 1. Certains choix de variables peuvent ne pas générer de solution de base.

39 Chapitre 2 Méthode de simplexe 2. Solutions de base réalisables Une solution de base est dite réalisable (SBR) si : x B = B 1 b 0 Si le vecteur x B contient des termes nuls, on dira que cette solution est une solution de base dégénérée (peut être associée à plus quune base).

40 Chapitre 2 Méthode de simplexe Exemple de SBR Soit le problème : min x1 2x2 s.c. x1 + 2x2 4 2x1 + x2 5 x1, x2 0 Sous forme standard, on a: min x1 2x2 s.c x1 + 2x2 + x3 = 4 2x1 + x2 + x4 = 5 x1, x2, x3, x4 0 4 variables (n=4) et 2 contraintes (m=2)

41 Chapitre 2 Méthode de simplexe (PL) : min x1 2x2 s.c x1 + 2x2 + x3 = 4 2x1 + x2 + x4 = 5 x1, x2, x3, x4 0 On peut essayer de constituer une base en utilisant lensemble B = {1, 3}, B = [A1A3] = 1 1H = [A2A4] = x B = x1, x H = x2 x3 x4 Linverse de B existe, donc B correspond à une base B 1 = 0 1/2 1 1/ A =

42 Chapitre 2 Méthode de simplexe La solution de base correspondante est donc : x B = B 1 b = 0 1/2 4 = 5/2 = x1 > 0 1 1/2 5 3/2 x3 Cette solution est bien une SBR.

43 Chapitre 2 Méthode de simplexe 3. Conditions doptimalité dune SBR Soit x une SBR associée à la base B. On a alors Soit x une solution réalisable quelconque de P. On a z(x)= c x et z( x) = c x = c B B -1 b. Calculons z(x) - z( x) On a b=Ax ; Par conséquent : z(x) - z( x) = c x-c x = cx - c B B -1 b = cx - c B B -1 Ax = (c – c B B -1 A)x Appelons ( x) = (c - c B B -1 A), alors z(x) - z( x) = ( x). x

44 Chapitre 2 Méthode de simplexe Théorème : Soit x une SBR de P. ( x) 0 x est optimal. Démonstration Rq: Pour simplifier la notation, nous allons utiliser la notation au lieu de ( x) Soit x une solution réalisable de P. z(x) peut sécrire : z(x) = c B B -1 b +. x = z( x) +. x 0 z( x) z(x), puisque x 0. Ceci est vrai x solution réalisable; d'où x est optimal. Rq : cest une condition suffisante. Elle devient aussi nécessaire si la SBR est non dégénérée.

45 Chapitre 2 Méthode de simplexe 4. Théorèmes fondamentaux Théorème : La région réalisable pour tout problème de programmation linéaire est un ensemble convexe. Si un PL possède une solution optimale, alors un point extrême de la région réalisable doit être optimal. Théorème : Pour tout LP, il existe un point extrême unique de la région réalisable qui correspond à chaque solution de base réalisable. Egalement, il existe au moins une SBR qui correspond à chaque point extrême de la région réalisable.

46 Chapitre 2 Méthode de simplexe Illustration des théorèmes On reprend lexemple des ceintures de cuir, c-à-d maximiser z, avec : z = 4x1 + 3x2 x1 + x2 + s1 = 40 2x1 + x2 + s2 = 60 x1, x2, s1, s2 0

47 Chapitre 2 Méthode de simplexe On a léquivalence entre SBR et points extrêmes suivants : Base Hors-base SBR Point extrême x1, x2 s1, s2 s1 = s2 = 0, x1 = x2 = 20 E x1, s1 x2, s2 x2 = s2 = 0, x1 = 30, s1 = 10 C x1, s2 x2, s1 x2 = s1 = 0, x1 = 40, s2 = 20 Non réalisable, s2 < 0 x2, s1 x1, s2 x1 = s2 = 0, s1 = 20, x2 = 60 Non réalisable, s1 < 0 x2, s2 x1, s1 x1 = s1 = 0, x2 = 40, s2 = 20 B s1, s2 x1, x2 x1 = x2 = 0, s1 = 40, s2 = 60 F

48 Chapitre 2 Méthode de simplexe 5. Nombre de solutions possibles Le nombre de bases candidates est égal à C m n = n!/((nm)!m! ) Le nombre de SBR est donc C m n c-à-d fini, mais peut être très large. Puisque le nombre de telles bases peut être très large, il est pratiquement impossible de trouver la solution optimale à partir dune formule compacte. il nous faut donc utiliser un algorithme systématique (procédure itérative) de recherche.

49 Chapitre 2 Méthode de simplexe Définition dun algorithme Un algorithme est un ensemble de règles employées pour obtenir des résultats à partir de données spécifiques, dans lequel chaque étape est bien définie et peut être traduite sous forme dun programme informatique. Simplexe Le simplexe est un algorithme ou méthode de recherche qui garantit de trouver un optimum dun PL (sil existe) en un nombre fini ditérations.

50 Chapitre 2 Méthode de simplexe IV. Méthode de simplexe 1. Principe Lalgorithme du simplexe pour une maximisation suit les étapes suivantes : 1.Trouver une SBR pour le PL, appelée la SBR initiale. 2. Déterminer si la SBR courante est optimale (Δ 0). Sinon, trouver une autre SBR qui possède une valeur z plus élevée. 3. Retourner au point (2) avec la nouvelle SBR comme SBR courante. La question est donc : comment se déplacer.

51 Chapitre 2 Méthode de simplexe 2. Tableau canonique (PL) : Max z = c t x comme on a : s.c. Ax = b x 0 x B A = [B | H], x =, c t = [c t B | c t H ] x H Le PL peut ainsi sécrire comme suit : B x B + 0 (-z) + H x H = b c B x B + (- z) + c x H = 0

52 Chapitre 2 Méthode de simplexe Sous forme matricielle on aura : Sous forme dun tableau, le PL peut être présenté comme suit : 0cHcH 1cBcB bH0B xHxH -zxBxB 2 ème membre1 er membre

53 Chapitre 2 Méthode de simplexe Le tableau canonique relatif à la base B est obtenu en transformant la matrice sous les variables x B et –z en une matrice identité dordre m+1. Pour ce faire, on multiplie à gauche chaque colonne du tableau par la matrice : 0cHcH 1cBcB bH0B xHxH -zxBxB 2 ème membre 1 er membre

54 Chapitre 2 Méthode de simplexe Le tableau canonique relatif à B est donc le suivant : où B -1 b 0. On rappelle que : Δ = c - c B B -1 A et peut être aussi partitionnée en Δ B et Δ H selon la SBR x On aura alors : = ( B H ) = (c B – c B B -1 Bc H – c B B -1 H) = (0c H – c B B -1 H) xBxB -zxHxH I0B -1 HB -1 b 01c H – c B B -1 H– c B B -1 b

55 Chapitre 2 Méthode de simplexe Soient, Notons par : et

56 Chapitre 2 Méthode de simplexe Notre tableau canonique devient ainsi : Variables de base x 1 …x m -z x m+1 … x n Valeurs des var de base x1..xmx1..xm 1 … 00 a 1,m+1 … a 1,n 0 … 10 a m,m+1 … a m,n b 1. b m -z 0 … 0 1 m+1 … n – c B B -1 b

57 Chapitre 2 Méthode de simplexe 3. Itérations de Simplexe Définition : Pour tout problème de PL, deux SBR sont adjacentes si leur ensembles de variables de base ont m 1 variables de base en commun. La question quelle est la variable entrante, et celle sortante? Construction du tableau initial Etape 1 Solution optimale Fin Oui Non Déplacement (pivotage) vers une SBR adjacente Etape 2

58 Chapitre 2 Méthode de simplexe Remarque : Si la SBR est non dégénérée, le déplacement implique un point extrême adjacent ; Si la SBR est dégénérée, la base change mais on reste au même point extrême (une nouvelle variable nulle). Pour se déplacer dune SBR à une autre adjacente, une variable hors base (variable entrante x e ) va prendre la place de lune des variables de base (x s ). Ainsi,

59 Chapitre 2 Méthode de simplexe Variables de basex 1 …x s …x m -z x m+1 … x e … x n Valeurs des var de base x1.xs.xmx1.xs.xm 1 … 0 … 0 0 a 1,m+1 … a 1,e … a 1,n 0 … 1 … 0 0 a s,m+1 … a s,e … a s,n 0 … 0… 1 0 a m,m+1 a m,e … a m,n b 1. b s. b m -z 0 … 0 … 0 1 m+1 … e … n -c B B -1 b = -z Questions : 1.Quelle est la variable entrante? 2.Quelle est la variable sortante?

60 Chapitre 2 Méthode de simplexe 3.1. Choix de la variable entrante Dans une SBR toutes les variables hors base sont nulles (x e =0). Pour faire entrer x e, on augmente sa valeur, par exemple de 0 (x e = x e + ) tout en maintenant à zéro toutes les autres variables hors base. 1 er critère de Dantzig : nous indique le choix de la variable entrante. Ce dernier est basé sur la contribution éventuelle de x e à la fonction objectif. Puisque z(x) = z( x) +. x z(x)/ x j = j = taux de variation de z par rapport x j. Par conséquent on choisit la variable, x e, ayant le taux daugmentation maximal de z(x) (PL de max), c-à-d le j maximal : x e est telle que e = max{ j, où j= m+1, …, n ; j > 0}

61 Chapitre 2 Méthode de simplexe 2 ème critère de Dantzig : nous indique la valeur de la variable entrante ( ). Pb de maximisation : on désire donc augmenter x e le maximum possible, tout en satisfaisant les contraintes. On sait que le PL sous la forme canonique est équivalent au problème de départ. Donc, les valeurs des variables de base doivent changer tout en satisfaisant les contraintes suivantes : x i + a i,m+1 x m+1 + …+ a i,e x e …+ a i,n x n = b i i = 1, …, m Comme x e = x i = b i - a i,e La valeur de doit être choisie telle que : x i = b i - a i,e 0, i = 1, …, m

62 Chapitre 2 Méthode de simplexe Pour tout i tel que a i,e 0, on a bien b i - a i,e 0 et ceci 0 (car b i 0 : puisquon part dune SBR). Pour i tel que a i,e > 0, on doit choisir telle que b i / a i,e La valeur maximale de qui satisfait ces contraintes est max = min { b i / a i,e : i = 1, …, m et a i,e > 0} 2 ème critère de DANTZIG (critère du ratio minimal) On en déduit la variable sortante : x s telle que b s / a s,e = min { b i / a i,e : i = 1, …, m et a i,e > 0} En effet, pour la ligne s : x s = b s - a s,e = b s - a s,e ( b s / a s,e ) = 0

63 Chapitre 2 Méthode de simplexe On appelle : a s,e : élément pivot Ligne s : ligne pivot Colonne e : colonne pivot Maintenant on a donc une nouvelle base B = {1, …, e, …, m} avec x s étant une nouvelle variable hors base. Il faudra ainsi représenter le PL sous la forme canonique associée à B. La colonne de x e doit être transformée afin de conserver la matrice didentité:

64 Chapitre 2 Méthode de simplexe Pour ce faire, on applique les opérations élémentaires suivantes (selon Gauss-Jordan) : Op1 : Division de la ligne pivot par lélément pivot a s,e a sj = a s,j / a s,e j, a se = 1 Var. de base x 1 … x s … x m -z x m+1 …x e … x n Val. des var de base x1. x s. x m 1 … 0 … 0 0 a 1,m+1 …a 1,e …a 1,n 0…1/a s,e … 0 0 a s,m+1 …1 … a s,n 0 … 0 … 1 0 a m,m+1 …a m,e … a m,n b 1 b s / a s,e. b m -z 0 … 0 … 0 1 m+1 … e … n - z

65 Chapitre 2 Méthode de simplexe Op2 : i s, soustraction dun multiple approprié de la ligne pivot pour annuler le coefficient de la ligne i, colonne e. a ij = a ij – a ie a s,j / a s,e j = 1, …, n+1 (n+ dernière ligne du tableau) a ie = 0 j = j - e a s,j / a s,e j = 1, …, n+1 (n var plus - z ) Var. de base x 1 … x s … x m -z x m+1 …x e … x n Val. des var de base x1. x s. x m 1 … 0 … 0 0 a 1,m+1 …a 1,e …a 1,n 0…1/a s,e … 0 0 a s,m+1 …1 … a s,n 0 … 0 … 1 0 a m,m+1 …a m,e … a m,n b 1 b s / a s,e. b m -z 0 … 0 … 0 1 m+1 … e … n - z

66 Chapitre 2 Méthode de simplexe Le nouveau tableau est donc le suivant: Variables de base x 1 … x s … x m -z x m+1 …x e … x n Valeurs des var de base x1. x s. x m 1 … -a 1,e (1/ a s,e ) … 0 0 a 1,m+1 …0 … a 1,n 0 … 1/ a s,e … 0 0 a s,m+1 …1 … a s,n 0 … - a m,e (1/ a s,e )…1 0 a m,m+1 …0 … a m,n b 1 – a 1,e ( b s / a s,e ). b s / a s,e. b m -z 0 … - e (1/ a s,e ) 0 1 m+1 … 0 … n - z - e (b s / a s,e )

67 Chapitre 2 Méthode de simplexe Exemple Soit le PL suivant : max z = 3x1 + 2x2 s.c. x1 + x2 + s1 = 80 2 x1 + x2 + s2 = 100m=3, n=5 ; rang(A)=3 x1 + s3 = 40 x1, x2, s1, s2, s3 0 Une SBR apparaît d'une façon évidente : s1 = 80; s2 = 100; s3 = 40 VB = {s1, s2, s3};alors VHB = {x1, x2}, c-à-d x1 = x2 = 0 z = 0

68 Chapitre 2 Méthode de simplexe Suite exemple à faire

69 Chapitre 2 Méthode de simplexe Cas particuliers PL non borné : Des solutions ont été trouvées mais la valeur de z peut toujours être améliorée. Dans le cadre de Simplexe, ce cas est représenté par le fait que dans chacune de ces colonnes j, aij 0 pour tout i (pas de variables sortantes) doù il est impossible de faire entrer dans la base des variables telles que > 0. Les j > 0 montrent bien qu'il est possible d'augmenter z, mais le fait que tous les aij 0 montre qu'il n'existe pas de SBR susceptible d'augmenter z. PL a une infinité de solutions Exemple: max z = 3x1 + 2x2 s.c. 3x1 + 2x2 120 x1 + 1x2 50 x1, x2 0

70 Chapitre 2 Méthode de simplexe #1x1x1 X2X2 s1s1 s2s2 bibi s1s s2s c j #2x1x1 X2X2 s1s1 s2s2 bibi x1x1 12/31/3040 s2s2 01/3-1/31 10 j

71 Chapitre 2 Méthode de simplexe C'est un tableau optimal, mais on remarque la présence d'une variable hors base à j = 0. Cela veut dire que si on la fait entrer dans la base, on va obtenir une autre SB optimale sans que la valeur de z ne change le segment formé par ces deux SB optimales contient toutes les solutions optimales du problème. Un autre tableau optimal : #3x1x1 X2X2 s1s1 s2s2 bibi x1x x2x j

72 Chapitre 2 Méthode de simplexe 4. Résumé de lalgorithme de simplexe 1.Mettre le PL sous la forme standard. 2.Trouver une solution initiale de base (SBR initiale). 3.Ecrire le PL sous la forme canonique relative à la SBR initiale. 4.Itérations : 4.1. Si le critère d'arrêt est satisfait (Δ 0), donner le résultat final (solution optimale) ; sinon aller à l'étape Déterminer la variable entrante (ou la colonne pivot) selon le 1er critère de DANTZIG 4.3. Déterminer la variable sortante (ou la ligne pivot) selon le 2ème critère de DANTZIG 4.4. Calculer le nouveau tableau en effectuant une opération de pivot. Retour à 4-1.

73 Chapitre 2 Méthode de simplexe IV. Méthode de simplexe à deux phases On a déjà indiqué que la méthode de Simplexe part dun PL sous la forme canonique. Cela suppose quon peut facilement identifier une SBR initiale. Parfois, ceci nest pas évident, par exemple (P)Max z = 4x1 + 3x2 s.c. 2x1 –x2 15 x1 + x2 = 10 2x1 – x2 20 x1, x2 0 En mettant ce PL sous la forme standard, on obtient Max z = 4x1 + 3x2 s.c. 2x1 –x2 –e1 = 15 x1 + x2 = 10 2x1 – x2 + s3= 20 x1, x2, e1, s3 0

74 Chapitre 2 Méthode de simplexe Il est difficile de trouver intuitivement/rapidement une SBR. Alors, quest-ce quon fait ? On introduit encore des variables dites artificielles à chaque contrainte et à chaque contrainte =, on obtient alors (P) : Max z = 4x1 + 3x2 s.c. 2x1 –x2 –e1 + s1= 15 x1 + x2 + s2= 10 2x1 – x2 + s3 = 20 x1, x2, e1, s3, s1, s2 0 Une SBR de P est donnée par VB = { s1, s2, s3}. Cependant, les variables artificielles non seulement ont un effet nul dans la fonction objectif mais aussi doivent être nulles dans une SBR de P. Alors, lorsquune variable artificielle est non nulle, ceci indique que la solution est non réalisable dans P. On doit essayer dannuler les variables artificielles dans P. Ceci est réalisé en appliquant lalgorithme de Simplexe au problème suivant :

75 Chapitre 2 Méthode de simplexe Min z I = si var artificielle s i = s1 + s2 s.c. 2x1 –x2 –e1 + s1= 15 (P I )x1 + x2 + s2= 10 2x1 – x2 + s3= 20 x1, x2, e1, s3, s1, s2 0 Phase I : Résoudre P I par la méthode de Simplexe Résultats possibles de la phase I : Cas 1 : z I 0 au moins une si 0 P non réalisable (DR vide) Cas 2 : z I = 0 et aucune variable artificielle nest une VB. Dans ce cas, on omet toutes les colonnes du tableau optimal de la phase I, qui correspondent aux variables artificielles. On combine la fonction objectif de P avec les autres lignes de ce tableau. On met à jour la dernière ligne de telle manière à avoir j = 0 pour les VB. On obtient ainsi un tableau canonique initial de P. On continue alors la résolution avec la méthode de Simplexe (Phase II).

76 Chapitre 2 Méthode de simplexe Cas 3 : z I = 0 et au moins une si est une VB du tableau optimal de la phase I Le problème original P a au moins une contrainte redondante Eliminer les contraintes redondantes ; réintroduire z(x) et commencer la phase II. Rq : dans le cas 3, on trouve une ou plusieurs lignes où tous les coefficients sont nuls sauf ceux des variables artificielles telles lignes sont redondantes et peuvent être éliminées. Exemple La Ligne 2 peut être éliminée. x1x2x3x4x5 s 2 x s x

77 Chapitre 2 Méthode de simplexe Application à P : Max z I = - s1 - s2 s.c. 2x1 –x2 –e1 + s1= 15 (P I )x1 + x2 + s2= 10 2x1 – x2 + s3= 20 x1, x2, e1, s3, s1, s2 0 # 1x1x1 x2x2 e1e1 s3s3 s 1 s 2 s s s3s

78 Chapitre 2 Méthode de simplexe Variables de base ( s1 et s2) ayant des coûts marginaux non nuls mise à jour du tableau : L4 L4 + L1 + L2 # 1x1x1 x2x2 e1e1 s3s3 s 1 s 2 s s S3S # 2x1x1 x2x2 e1e1 s3s3 s 1 s 2 X1X1 1-1/2 01 /2015/2 s 2 03/21/20-1/215/2 S3S /21/20-3/205/2

79 Chapitre 2 Méthode de simplexe Tableau optimal de la phase I (cas 2) : VB = {x1, x2, s3} Rq: On peut éliminer du tableau la colonne d'une variable artificielle dès que celle-ci sort de la base. # 3x1x1 x2x2 e1e1 s3s3 s 1 s 2 X1X1 10-1/301/3 25/3 X2X2 011/30-1/32/35/3 S3S

80 Chapitre 2 Méthode de simplexe Phase II : # 4x1x1 x2x2 e1e1 s3s3 x1x1 10-1/3025/3 x2x2 011/305/3 s3s L 4 – 4L 1 –3 L 2 001/30-115/3 # 5x1x1 x2x2 e1e1 s3s3 x1x1 1001/310 x2x /30 e1e

81 Chapitre 2 Méthode de simplexe V. Méthode de Big M (phases I et II confondues) Si le PL est tel que des variables artificielles doivent être introduites pour obtenir un tableau canonique, on peut aussi le résoudre avec la méthode de Big-M Principe : introduire les variables artificielles dans la fonction objectif, avec des coefficients arbitrairement larges (M >>0, pour un problème de minimisation), puis résoudre le problème résultant à laide de Simplexe (en une seule phase). En général, Max z M = cx - i M si (P M )s.c. Ax + s = b x 0, s 0

82 Chapitre 2 Méthode de simplexe Exemple : Max z M = 4x1 + 3x2-M s1 -M s2 s.c. 2x1 –x2 –e1 + s1= 15 (P I )x1 + x2 + s2= 10 2x1 – x2 + s3= 20 x1, x2, e1, s3, s1, s2 0 # 1x1x1 x2x2 e1e1 s3s3 s 1 s 2 s s s3s M 0 Mise à jour 4+3M3-M00025M

83 Chapitre 2 Méthode de simplexe # 2X1X1 x2x2 e1e1 s3s3 s 1 s 2 x1x1 1-1/2 01/2015/2 s 2 03/21/20-1/21 5/2 s3s /2M2+1/2M0-2-3/2M0-30+5/2M # 3X1X1 x2x2 e1e1 s3s3 s 1 s 2 x1x1 10-1/301/3 25/3 x2x2 011/30-1/32/35/3 s3s /30-1/3-M0-115/3

84 Chapitre 2 Méthode de simplexe # 4X1X1 x2x2 e1e1 s3s3 s 1 s 2 x1x1 1001/30010 x2x /302/30 e1e /3-M0-40

85 Chapitre 2 Méthode de simplexe Résultats possibles de Big-M : Cas 1 : Simplexe donne une solution optimale (x*, s*) avec s* = 0. Alors x* est optimal pour le problème de départ (P). Cas 2 : Simplexe donne une solution optimale (x*, s*) avec s* 0. Le critère doptimalité étant satisfait M suffisamment large, (P) est donc non-réalisable. Cas 3 : (P M ) est non borné M suffisamment large. Le critère doptimalité étant satisfait M suffisamment large, (P) est non borné sil est réalisable, sinon il est non-réalisable. On doit alors vérifier sil est réalisable: Ceci en continuant lalgorithme après remplacement de la fonction objectif (dans le dernier tableau) par Z M = - i M si (en annulant les constantes dans lexpression ( j + M j*) de la dernière ligne). Si la solution optimale obtenue est telle que s = 0, alors (P) est réalisable donc non-borné, sinon (P) est non-réalisable.

86 Chapitre 2 Méthode de simplexe Exemple Max z M = x1 + x2 - M s1 - M s2 (PM)s.c. x1 + x2 –e1 + s1= 1 x1 - x2 – e2 + s2= 0 x1, x2, e1, e2, s1, s2 0 # 1x1x1 x2x2 e1e1 e2e2 s 1 s 2 s s2s M 0 Mise à jour 1+2M1-M 00M

87 Chapitre 2 Méthode de simplexe # 2x1x1 x2x2 e1e1 e2e2 s 1 s 2 s x1x M-M1+M0-1-2MM # 3x1x1 x2x2 e1e1 e2e2 s 1 s 2 X2X2 01- ½½½ ½ X1X1 10 ½½½ M-M (P M ) non borné car Δ e1 > 0 et tous les a ij < 0 (pas de var sortante)

88 Chapitre 2 Méthode de simplexe # 4x1x1 x2x2 e1e1 e2e2 s 1 s 2 x2x2 01- ½½½ ½ x1x1 10 ½½½ 0000-M 0 Si P est réalisable alors il est non borné sinon il est non réalisable Pour vérifier sil est réalisable ou pas on modifie la ligne des Δj par la fonction objectif Z M = - i M si et on vérifie si tous les si = 0, alors (P) est réalisable Z M = 0 s1* = s2* = 0 (P) réalisable (P) non borné.

89 Chapitre 2 Méthode de simplexe Il est pratiquement impossible de conclure si la méthode de Big-M résout les PL avec moins de calcul que l'approche à deux phases. L'expérience pratique semble indiquer que les deux approches ont approximativement le même effort de calcul. Pour résumer : La résolution d'un PL à l'aide de l'algorithme de simplexe nécessite une SBR initiale. C'est un problème qui peut être résolu de trois manières différentes : 1. Introduction de variables artificielles et l'application de Simplexe à deux phases (phase I trouve une SBR) 2. Introduction de variables artificielles et l'application de la méthode de Big-M (basée sur l'algorithme de Simplexe) 3. Trouver intuitivement une SBR, écrire le PL sous la forme canonique, puis passer directement à la phase II (lapproche la moins pratique).

90 Chapitre 3 Dualité et analyse de sensibilité dans la programmation linéaire

91 Chapitre 3 Dualité et analyse de sensibilité I. Introduction Il est possible à partir dun PL (P) de former un autre programme linéaire quon appelle programme dual (D) associé à (P). Dans ce contexte, on appelle (P) problème primal. (P) :max cx (D) : min w = yb s.c. Ax b s.c. yA c x 0 y 0 La notion de dualité est très importante pour le mathématicien, car dans le cas où le primal a beaucoup de contraintes, le dual peut être plus facile à résoudre que le primal. Pour l'économiste et le gestionnaire, la dualité est très importante. On verra dans la suite son interprétation économique.

92 Chapitre 3 Dualité et analyse de sensibilité II. Interprétation économique de la dualité bi : quantité totale de la ressource i ; aij : quantité de la ressource i consommée pour fabriquer une unité du produit j cj : coût unitaire du produit j yi représente la valeur unitaire de la ressource i. Elle est souvent appelée coût fictif ou prix ombre. Cest le montant maximum que lon sera prêt à payer pour une unité supplémentaire de le ressource i ou encore le prix minimum auquel on serait prêt à vendre une unité de la ressource i.

93 Chapitre 3 Dualité et analyse de sensibilité 1. Le dual d'un problème de maximisation Considérons l'exemple suivant : une usine fabrique des bureaux, des tables et des chaises. La fabrication de chaque type de produit nécessite de la matière première (bois) et deux types dactivités : menuiserie et finition. La quantité requise de chaque ressource est donnée comme suit : Produit Ressource BureauTableChaiseQuantité de ressource disponible Bois (plaque)86148 Menuiserie (heure) Finition (heure) Prix de revient (D)603020

94 Chapitre 3 Dualité et analyse de sensibilité On désire maximiser le revenu. Variables de décision : x1 = nombre de bureaux fabriqués x2 = nombre de tables fabriquées x3 = nombre de chaises fabriquées (P) max z = 60 x x x3 s.c. 8 x1 + 6 x2 + x3 48 (ressource bois) 2 x x x3 8(ressource menuiserie) 4 x1 + 2 x x3 20(ressource finition) x1, x2, x3 0

95 Chapitre 3 Dualité et analyse de sensibilité Supposons qu'un entrepreneur veut acheter toutes les ressources de lusine (bois, heure menuiserie, heure finition). Il veut certainement que le prix total de ces ressources soit minimal. On définit alors : y1 = prix d'une plaque de bois y2 = prix d'une heure de menuiserie y3 = prix d'une heure de finition L'entrepreneur doit payer : w(y) = 48y1 + 8 y y3 et désire minimiser w, mais il doit payer suffisamment pour convaincre lusine de vendre ses ressources.

96 Chapitre 3 Dualité et analyse de sensibilité Par exemple, il doit payer au moins 60D pour une combinaison de : 8 plaques de bois + 2 heures de menuiserie + 4 heures de finition car lusine peut utiliser ces ressources pour fabriquer un bureau et le vendre pour 60D. L'entrepreneur doit payer au moins 60D, sinon lusine ne verra aucune raison de lui vendre ses ressources 8y1 + 2 y2 + 4 y3 60 De même on a : 6y y2 + 2 y3 30 y y y3 20 avec y1, y2, y3 0 coûts fictifs ou prix ombre (resource shadow price)

97 Chapitre 3 Dualité et analyse de sensibilité Le problème dual est ainsi le suivant : (D) min w = 48y1 + 8 y y3 s.c. 8y1 + 2 y2 + 4 y3 60 6y y2 + 2 y3 30 y y y3 20 y1, y2, y3 0

98 Chapitre 3 Dualité et analyse de sensibilité 2. Le dual d'un problème de minimisation Considérons lexemple suivant : Une famille désire préparer un menu équilibré à coût minimal. Ce menu doit être constitué de 6 aliments (notés 1, 2, 3, 4, 5 et 6) et doit contenir au moins 9 unités de vitamine A et 19 unités de vitamine C. Les proportions en vitamine A et C de chaque aliment ainsi que les quantités minimales requises de chaque vitamine et les coûts des différents aliments sont présentés dans le tableau suivant : Proportions vitamine /Kg d'aliment Qté min requises /jour Vitamine A Vitamine C Coût de l'aliment

99 Chapitre 3 Dualité et analyse de sensibilité On définit : xj quantité en kg de l'aliment j, j = 1,..., 6. (P) : min z = 35x x x x x x6 s.c. x1 + 2 x3 + 2 x4 + x5 + 2 x6 9(Vitamine A) x2 + 3 x3 + x4 + 3 x5 + 2 x6 19 (Vitamine C) xj 0 j = 1,..., 6 Un fabriquant compte lancer un projet dans le domaine alimentaire. Il propose de fabriquer des comprimés de chaque vitamine et de les vendre à la famille. Pour que cette affaire se réalise et prospère, le fabricant doit persuader la famille d'obtenir les quantités requises des vitamines en utilisant les comprimés au lieu des aliments. La famille, étant consciente de l'aspect monétaire, n'utilisera les comprimés que si leurs prix sont compétitifs par rapport aux prix des aliments. Ceci impose plusieurs contraintes sur les prix des comprimés que le fabriquant doit fixer.

100 Chapitre 3 Dualité et analyse de sensibilité Soient y1 : prix de la vitamines A y2 : prix de la vitamine C Prenons par exemple l'aliment 5 : Un kg de ce dernier contient 1 unité de A et 3 unités de C. Du point de vue du fabricant, le kg de l'aliment 5 vaut y1 + 3 y2. Or un kg de laliment 5 coûte 27. Il faut donc que y1 + 3 y2 27, sinon la famille réalisera que les prix du fabriquant ne sont pas compétitifs (elle aura intérêt à acheter laliment 5). De l'autre côté, puisque le fabricant veut gagner dans cette affaire, y1 et y2 doivent être 0. De plus, si la famille décide d'utiliser les comprimés, elle en achètera juste le nécessaire (9 et 19 unités), sinon, ça coûtera cher étant donné que y1 et y2 0.

101 Chapitre 3 Dualité et analyse de sensibilité Le revenu du fabricant sera alors w(y) = 9 y y2, et par conséquent, les prix que le fabricant va fixer sont obtenus en trouvant la solution optimale du problème suivant : max w(y) = 9 y y2 s.c.y1 35 y y1 + 3 y y1 + y2 50 y1 + 3 y y1 + 2 y2 22 y1, y2 0

102 Chapitre 3 Dualité et analyse de sensibilité 3. Détermination du dual dun programme linéaire 3.1 Le dual d'un PL sous la forme normale Un PL est dit sous la forme normale si c'est un problème de : max avec des contraintes ; x 0(max x ; s.c. Ax b : infini) ou min avec des contraintes ; x 0(min x ; s.c. Ax b : infini) Soit P un PL sous la forme normale : Le dual D associé à P est : max z = cx min w = yb s.c. Ax bs.c. yA c x 0y 0

103 Chapitre 3 Dualité et analyse de sensibilité 3.2 Le dual d'un PL à contraintes mixtes Si le primal P est sous forme générale, on peut construire son dual D de deux manières possibles : 1/ Mettre P sous la forme normale. Supposons qu'on part d'un problème de maximisation. On peut : - multiplier chaque contrainte par (-1) - remplacer a i x = b i par { a i x b i et -a i x -b i } - remplacer chaque x j 0 par x j + - x j -avec x j + 0 et x j - 0 2/ Appliquer les règles suivantes :

104 Chapitre 3 Dualité et analyse de sensibilité Primal (Dual)Dual (Primal) Fonction à maximiserFonction à minimiser ième contrainte ième variable 0 ième contrainte ième variable 0 ième contrainte =ième variable <> 0 jème variable 0jème contrainte jème variable 0jème contrainte jème variable <> 0jème contrainte =

105 Chapitre 3 Dualité et analyse de sensibilité 3.3. Exemples max z = 2x1 + x2min w = 2y1 + 3 y2 + y3 s.c. x1 + x2 = 2s.c. y1 + 2 y2 + y3 2 2 x1 - x2 3y1 - y2 - y3 = 1 x1 - x2 1 y1<> 0, y2 0, y3 0 x1 0, x2 <>0 min z = 5x1 - 6 x2 + 7 x3 + x4max w = -7y y2 – 3y3 s.c. x1 + 2 x2 - x3 - x4 = -7s.c.y1 + 6y2 – 2y3 5 6 x1 - 3x2 + x3 + 7 x4 142y1 – 3y2 – 17 y x1 -17 x2 + 4 x3 + 2 x4 -3-y1 + y2 + 4y3 = 7 x1 0, x2 0; x3<>0, x4<>0-y1 + 7y2 + 2y3 = 1 y1<>0, y2 0, y3 0

106 Chapitre 3 Dualité et analyse de sensibilité III. Analyse de sensibilité en programmation linéaire Souvent, les coefficients de la fonction objectif c j, le second membre b i ou les coefficients technologiques a ij subissent des changements (fluctuations des prix, disponibilités des ressources,...). Alors on est intéressé par la stabilité de l'optimum par rapport à ces paramètres, afin de savoir dans quels intervalles la solution optimale, la base optimale ou la valeur optimale de la fonction objectif ne changent pas. Dans ce qui suit, nous allons nous intéresser uniquement aux variations des coefficients de la fonction objectif. 1.Variations des coefficients de la fonction objectif Cest létude de l'effet des variations de l'un des cj tout en maintenant les mêmes valeurs pour toutes les autres données du problème. c k c k + λ = c k (λ)

107 Chapitre 3 Dualité et analyse de sensibilité La complexité de cette étude varie selon que la variable x k appartient ou non à la base optimale. On commence par le cas le plus simple : celui où x k est hors base. 1.1 Cas de x k variable hors base Quel sera leffet dun changement de c k sur la solution optimale du problème ? Soit B la base optimale. Pour quelles valeurs de λ cette base reste-elle optimale ? On remarque que dans le tableau optimal, modifié par le nouveau coefficient c k + λ: 1. B -1 b ne change pas 2nd membre est le même 2. Le seul changement possible sera au niveau des coûts marginaux, notamment Δ k

108 Chapitre 3 Dualité et analyse de sensibilité B restera optimale si Δ k ( ) 0 Δ k ( ) = c k + – (c B B -1 ) A k 0 - c k + (c B B -1 ) A k = -Δ k (0) Déf : - j dune variable hors base est le maximum dont on peut augmenter c j avant que la base actuelle ne soit plus optimale. Dans le cas où > -Δ k (0), B nest plus optimale. On peut trouver la nouvelle solution optimale en remplaçant k (0) par Δ k ( ) dans le tableau optimal. Puisque Δ k ( ) > 0, x k va entrer à la base. Alors, on continue lalgorithme de Simplexe.

109 Chapitre 3 Dualité et analyse de sensibilité Exemple : Reprenons l'exemple de MEUBLE. max z = 60 x x x3 (P)s.c.8 x1 + 6 x2 + x3 48 (ressource bois) 2 x x x3 8 (ressource menuiserie) 4 x1 + 2 x x3 20 (ressource finition) x1, x2, x3 0 Le tableau optimal est le suivant : x1x1 X2X2 x3x3 s1s1 s2s2 s3s3 s1s x1x x3x j

110 Chapitre 3 Dualité et analyse de sensibilité x1 bureaux ; x2 tables ; x3 chaises B = {s1, x1, x3} ; x2 variable hors base Considérons : c 2 c 2 +λ Δ 2 = λ - 5 B restera optimale si λ 5 Si λ 5 (ou c 2 ( ) 35): le prix dune table diminue ( < 0) ou augmente dau plus 5 D, la base actuelle reste optimale. De plus, les valeurs des variables ainsi que celle de la valeur de la fonction objectif restent les mêmes (x1 = 2, x3 = 8, x2 = 0, z* = 280). Si λ > 5 (ou c2( ) > 35): B nest plus optimale. Par exemple, = 10. Dans ce cas, on peut trouver la nouvelle solution optimale en remplaçant 2 = -5 par 2 (10)= = 5 Nouveau tableau :

111 Chapitre 3 Dualité et analyse de sensibilité x1x1 x2x2 x3x3 s1s1 s2s2 s3s3 s1s x1x x3x j x 2 entre et x 1 sort. x1x1 x2x2 x3x3 s1s1 s2s2 s3s3 s1s x2x x3x j

112 Chapitre 3 Dualité et analyse de sensibilité 1.2 Cas de x k variable de base Dans ce cas, c B B -1 change Plus quun coefficient dans la dernière ligne peuvent changer. Question : dans quel intervalle peut varier tout en maintenant la même base ? Cet intervalle est donné par le système dinégalités suivant : j ( ) 0 pour toute variable hors base x j. (*) 1.Si vérifie (*), alors B reste optimale ; Dans ce cas B -1 b ne change pas même valeurs des variables. Mais la valeur optimale de z change : z*( ) = c B ( )B -1 b = c B ( )x B * = c B x B + x k = z*(0) + x k

113 Chapitre 3 Dualité et analyse de sensibilité 2. Sinon : lune des variables hors base, x j, aura un coût marginal j ( ) > 0, et B nest plus optimale. Dans ce cas, x j entre et une variable de base sort (pas nécessairement x k ) ; et on continue la résolution. Exemple : c 1 c 1 + λ c B ( )= ( ) ; c B ( )B -1 = ( ) = y*( ) = s1 ( )= 1 ( ) = 3 ( ) = 0

114 Chapitre 3 Dualité et analyse de sensibilité Pour les variables hors base : 2 ( ) = c 2 - y*( ) A 2 = 30 - ( ) = -5 – 1.25 s2 ( ) = - = -10 – 1.5 s3 ( )= - = B reste optimale ssi 2 ( ) 0 -5 – s2 ( ) – /3 s3 ( )

115 Chapitre 3 Dualité et analyse de sensibilité B reste optimale ssi (ou 56 c1( ) 80) Dans ce cas, la nouvelle z*( ) = Si c 1 ( ) 0 x 2 entre à la place de x 1. Si c 1 ( ) > 80 : le prix dun bureau est assez élevé on veut en produire plus. Dans ce cas, x 1 doit rester dans la base. En effet, s2 ( ) > 0, alors s 2 entre et x 3 sort (on ne produit plus de chaises, mais que des bureaux).


Télécharger ppt "Recherche Opérationnelle 2 ème Année Gestion industrielle Année universitaire : 2009 - 2010 Responsable du cours : Rim Larbi"

Présentations similaires


Annonces Google