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

Optimisation linéaire Recherche opérationnelle GC-SIE.

Présentations similaires


Présentation au sujet: "Optimisation linéaire Recherche opérationnelle GC-SIE."— Transcription de la présentation:

1 Optimisation linéaire Recherche opérationnelle GC-SIE

2 Algorithme du simplexe Phase I

3 Phase I du simplexeMichel Bierlaire3 Introduction n Algorithme du simplexe : – Soit x 0 une solution de base admissible n Comment déterminer x 0 ? n Comment déterminer le tableau initial ? n Cest le rôle de la Phase I. n Cas simple : – problème en forme canonique tel que b 0. n Cas difficile : – problème général en forme standard.

4 Phase I du simplexeMichel Bierlaire4 Forme canonique avec b 0 (hypothèse non générale). On introduit les variables décart y. On obtient un problème en forme standard.

5 Phase I du simplexeMichel Bierlaire5 Forme canonique n Solution de base admissible : – x = 0 – y = b – Matrice de base : B = I

6 Phase I du simplexeMichel Bierlaire6 Forme canonique n Forme canonique : n Forme standard :

7 Phase I du simplexeMichel Bierlaire7 Forme canonique B(1)=4, B(2)=5, B(3)=6 B=B -1 =I c B =0

8 Phase I du simplexeMichel Bierlaire8 Forme canonique B -1 A=A B -1 b=b c T – c T B B -1 A=c T -c T B B -1 b =0 Tableau initial :

9 Phase I du simplexeMichel Bierlaire9 Forme standard On peut supposer, sans perte de généralité, que b 0. n Si b i < 0, on remplace la contrainte a i T x i = b i n par -a i T x i = -b i

10 Phase I du simplexeMichel Bierlaire10 Forme standard Idée : n On résoud un problème auxiliaire tel que : – il soit lié au problème initial, – il soit trivial didentifier une solution de base admissible pour ce problème auxiliaire. n Pour cela, on introduit une variable auxiliaire par contrainte, et on remplace la fonction de coût.

11 Phase I du simplexeMichel Bierlaire11 Forme standard n Solution de base admissible : – x = 0 – y = b – Matrice de base : B = I

12 Phase I du simplexeMichel Bierlaire12 Forme standard n Appelons P1 le problème original n et P2 le problème auxiliaire

13 Phase I du simplexeMichel Bierlaire13 Forme standard n Le coût optimal de P2 ne peut être négatif. n Supposons que x 0 soit une solution admissible de P1. Dans ce cas, Ax 0 =b et x 0 0. n x=x 0 et y=0 est une solution admissible de P2. n Le coût associé est 0. Cest donc une solution optimale.

14 Phase I du simplexeMichel Bierlaire14 Forme standard n Si P1 possède une solution admissible n Alors le coût optimal de P2 est 0. Contraposée : n Si le coût optimal de P2 est strictement positif n Alors P1 ne possède pas de solution admissible.

15 Phase I du simplexeMichel Bierlaire15 Forme standard n Si (x*,y*) est solution optimale de P2. n Si le coût optimal associé est 0. n Alors – y* 1 +y* 2 +…+y* m = 0 – y* 1 =y* 2 =…=y* m = 0 – Donc Ax*=b et x* 0 – x* est solution admissible de P1.

16 Phase I du simplexeMichel Bierlaire16 Format standard Tableau initial du problème auxiliaire : B -1 = I c B =(1,1,1,…) Pour les variables originales i : c i =0 -c T B B -1 bc T – c T B B -1 A B -1 bB -1 A -c T B b– c T B A ¦ 0 bA Somme des colonnes

17 Phase I du simplexeMichel Bierlaire17 Forme standard n Problème initial P1: n Problème auxiliaire P2 :

18 Phase I du simplexeMichel Bierlaire18 Forme standard =1 =1/3 =5/9 =1/3

19 Phase I du simplexeMichel Bierlaire19 Forme standard =1 =0 =1/2 =1 =1/3 =5/9 =1/3

20 Phase I du simplexeMichel Bierlaire20 Forme standard =1/2 =1 =0 =1

21 Phase I du simplexeMichel Bierlaire21 Forme standard =1

22 Phase I du simplexeMichel Bierlaire22 Forme standard n Solution optimale du problème auxiliaire P2: x T =(1 1/2 1/ ) n Coût optimal = 0 n Solution admissible du problème P1 x 0 T = (1 1/2 1/3 0) Attention : n Il reste une variable artificielle en base (x 7 )

23 Phase I du simplexeMichel Bierlaire23 Forme standard n Comment éliminer les variables artificielles hors de la base ? Note : n Si (x*,y*) est solution optimale à coût nul du problème auxiliaire n Alors la variable artificielle en base est forcément nulle n Donc la solution est dégénérée.

24 Phase I du simplexeMichel Bierlaire24 Forme standard n Supposons que la k ième variable de base soit artificielle. n Examinons la k ième ligne du tableau. n Choisir lélément en colonne j de cette ligne tel que – j soit lindice dune variable du problème original – lélément soit non nul. n k sort de base. j rentre en base n Pivotage du tableau.

25 Phase I du simplexeMichel Bierlaire25 Forme standard n Mais… n Que se passe-t-il si aucun élément de la sorte nexiste ?

26 Phase I du simplexeMichel Bierlaire26 Forme standard Cela signifie que n la matrice A nest pas de rang plein n la ligne en question correspond à une contrainte redondante n elle peut être supprimée. 5=9x 3 +4x 2 2=6x 3 +2x 2 +-x 1 3=3x 3 +2x 2 +x1x1

27 Phase I du simplexeMichel Bierlaire27 Forme standard n Une fois que le tableau optimal du problème auxilaire est obtenu, n et que toutes les variables artificielles ont quitté la base, n on obtient le tableau initial du problème P1 en – supprimant les colonnes relatives aux variables artificielles; – calculant les coûts réduits initiaux.

28 Exemple P1 P2

29 Dernière ligne = -somme des colonnes P2 : tableau initial =2 =1

30 Solution optimale de P2 Coût nul Mais x7 est dans la base

31 P2 : tableau final P1 : tableau initial c T – c T B B -1 A -c T B B -1 b

32 P1 : tableau initial =2 =3 =0.4 =0 P1 : tableau final

33 Phase I du simplexeMichel Bierlaire33 Algorithme du simplexe n Nous avons maintenant un algorithme complet pour résoudre tout programme linéaire en forme standard Phase I 1. En multipliant certaines contraintes par –1, modifier le problème pour que b 0.

34 Phase I du simplexeMichel Bierlaire34 Algorithme complet du simplexe Phase I (suite) 2. Introduire les variables artificielles y 1,…,y m, et appliquer la méthode du simplexe au problème auxiliaire

35 Phase I du simplexeMichel Bierlaire35 Algorithme complet du simplexe Phase I (suite) 3. Si le coût optimal est strictement positif, le problème original nest pas admissible. STOP. 4. Si la k ième variable de base est une variable artificielle, examiner la ligne k du tableau. Choisir lélément en colonne j de cette ligne tel que – j soit lindice dune variable du problème original – lélément soit non nul. Pivoter le tableau autour de cet élément.

36 Phase I du simplexeMichel Bierlaire36 Algorithme complet du simplexe Phase I (suite) 4. (suite) Si tous ces éléments sont nuls, la ligne correspond à une contrainte redondante et peut être supprimée. Répéter le point 4 jusquà ce quaucune des variables artificielles ne soient en base.

37 Phase I du simplexeMichel Bierlaire37 Algorithme complet du simplexe Phase II n Les variables artificielles et les colonnes correspondantes sont supprimées du tableau. n La ligne des coûts est calculée. n Appliquer la méthode du simplexe au tableau obtenu.

38 Phase I du simplexeMichel Bierlaire38 Algorithme complet du simplexe Notes : n Complet car il peut gérer toutes les issues possibles. n Si le cyclage est empêché (par la règle de Bland), une des 4 possibilités suivantes se passera : – Le problème nest pas admissible. Détecté à la fin de la phase I. – Le problème est admissible, mais A nest pas de rang plein. Les contraintes redondantes sont éliminées lors de la phase I.

39 Phase I du simplexeMichel Bierlaire39 Algorithme complet du simplexe – Le coût optimal est -. Détecté lors de la phase II. – La phase II se termine avec une solution optimale.

40 Phase I du simplexeMichel Bierlaire40 Méthode du grand M Motivation : n Combiner les deux phases en une seule en – utilisant les variables artificielles y – remplaçant la fonction objectif par où M est une constante positive très grande.

41 Phase I du simplexeMichel Bierlaire41 Méthode du grand M n Si la méthode du simplexe se termine avec une solution (x*,y*) telle que y*=0, alors x* est une solution optimale du problème original. n Si la méthode du simplexe se termine avec une solution (x*,y*) telle que y* 0, alors le problème original est non admissible.

42 Phase I du simplexeMichel Bierlaire42 Méthode du grand M n Si la méthode du simplexe identifie que le problème auxiliaire est non borné, le problème initial est non admissible ou non borné (ou les deux). n En pratique, on nest pas obligé de donner une valeur à M. n Chaque fois que M est comparé à un nombre, il sera toujours considéré comme plus grand.

43 Phase I du simplexeMichel Bierlaire43 -c T B B -1 bc T – c T B B -1 A B -1 bB -1 A Exemple

44 =1 =2 =1

45 Phase I du simplexeMichel Bierlaire45 Terminologie Quest-ce quun simplexe ? Un ensemble de vecteurs y 1,…,y k+1 dans IR n (k n) est indépendant au sens affine si les vecteurs y 1 -y k+1,y 2 -y k+1 …,y k -y k+1 sont linéairement indépendants. n Lenveloppe convexe de k+1 vecteurs de IR n indépendants au sens affine est appelée un simplexe à k dimensions.

46 Phase I du simplexeMichel Bierlaire46 Terminologie n 3 points sont soit – colinéaires – indépendants au sens affine n Le triangle est un simplexe à deux dimensions. n La pyramide est un simplexe à 3 dimensions

47 Phase I du simplexeMichel Bierlaire47 Terminologie n Géométriquement, on peut associer un simplexe à chaque base. n On peut interpréter un pivotage (au sens de lalgorithme) comme le pivotage « physique » de ce simplexe. n Cest de cette interprétation géométrique que viennent les termes simplexe et pivotage.


Télécharger ppt "Optimisation linéaire Recherche opérationnelle GC-SIE."

Présentations similaires


Annonces Google