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

3. Variantes de lalgorithme du simplexe. Les deux phases du simplexe Pour initialiser lalgorithme du simplexe, il faut déterminer une solution de base.

Présentations similaires


Présentation au sujet: "3. Variantes de lalgorithme du simplexe. Les deux phases du simplexe Pour initialiser lalgorithme du simplexe, il faut déterminer une solution de base."— Transcription de la présentation:

1 3. Variantes de lalgorithme du simplexe

2 Les deux phases du simplexe Pour initialiser lalgorithme du simplexe, il faut déterminer une solution de base initiale. Or une telle solution de base initiale nest pas nécessairement disponible. De plus, en général, nous ne savons même pas si le domaine réalisable nest pas vide. La phase I du simplexe: indique si le problème est réalisable (i.e., son domaine réalisable nest pas vide) si oui, fournit linformation pour générer une solution de base initiale.

3 Cas simple Soit le problème de programmation linéaire suivant: En utilisant les variables décart x n+1 x n+2.. x n+m

4 Cas simple Le problème devient Les variables de base de la solution initiale sont x n+1, x n+2,…, x n+m

5 Cas plus compliqué Considérons plutôt le problème suivant: En utilisant les variables décart x n+1 x n+2.. x n+m

6 Cas plus compliqué Alors le problème devient La solution de base où x n+1, x n+2,…, x n+m sont les variables de base nest pas réalisable car les valeurs des variables x n+i = –b i 0 i = 1,2,…,m lorsque les variables hors base sont égales à 0

7 Cas général Dans le cas général où le problème est de la forme Nous utilisons une phase préliminaire (Phase I) Introduisons les variables artificielles t 1 t 2. t m Construisons un problème artificiel

8 Solution de base réalisable initiale Les contraintes deviennent donc Les variables t 1, t 2,…, t m sont les variables de base dune solution de base réalisable de ce système

9 Probème artificiel Dans le cas général où le problème est de la forme Nous utilisons une phase préliminaire (Phase I) Introduisons les variables artificielles t 1 t 2. t m Construisons un problème artificiel Remplaçons la fonction économique par une nouvelle: minimiser la somme des variables artificielles

10 Problème artificiel Le problème artificielle de la phase I est donc de la forme Résolvons ce problème avec lalgorithme du simplexe

11 Problème artificiel Générons un problème équivalent en soustrayant chacune des m premières contraintes de celle associée à la fonction économique Définissons

12 Problème artificiel équivalent Le problème équivalent est donc de la forme

13 Résolution du problème de la phase I Ce problème est résolu avec lalgorithme du simplexe. Les variables artificielles t 1, t 2,…, t m sont les variables de base de la solution initiale puisque leur valeur est non négative lorsque les variables x j du problème original sont fixées à 0.

14 Résultat de la phase I Proposition À la fin de la phase I (i) si la valeur optimale min w de la fonction économique est positive (i.e., min w > 0), alors le domaine réalisable du problème original est vide (i.e., le problème original nest pas réalisable) (ii) si la valeur optimale min w de la fonction économique est nulle (i.e., min w = 0), alors le domaine réalisable du problème original nest pas vide (i.e., le problème original est réalisable).

15 Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original nest pas vide,

16 Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original nest pas vide, substituons ces valeurs des variables x j dans le problème de la phase I

17 Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original nest pas vide, substituons ces valeurs des variables x j dans le problème de la phase I

18 Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original nest pas vide, substituons ces valeurs des variables x j dans le problème de la phase I pour obtenir une solution réalisable où toutes les variables t i sont égales à 0 et où la valeur de la fonction économique w = 0.

19 Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original nest pas vide, substituons ces valeurs des variables x j dans le problème de la phase I pour obtenir une solution réalisable où toutes les variables t i sont égales à 0 et ainsi ayant une valeur de la fonction économique w = 0. Donc si min w > 0, alors le problème original na pas de solution.

20 Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0,

21 Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0, alors il existe une solution réalisable du problème de la phase I où toutes les variables artificielles t i sont égales à 0. Dans ce cas, les valeurs que prennent les variables x j constituent une solution pour le problème original.

22 Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0, alors il existe une solution réalisable du problème de la phase I où toutes les variables artificielles t i sont égales à 0. Dans ce cas, les valeurs que prennent les variables x j constituent une solution pour le problème original.

23 Solution initiale pour poursuivre Dans le cas où min w est égale à 0, nous poursuivons la résolution du problème original avec lalgorithme du simplexe en utilisant linformation du tableau de la dernière itération de la phase I pour construire une solution de base initiale pour le problème original. Considérons le tableau du simplexe de la dernière itération de la phase I

24 Tableau phase I Solution optimale de la phase I m des colonnes du tableau sont les m vecteurs unitaires où le 1 est la i ième composante

25 Tableau phase I m des colonnes du tableau sont les m vecteurs unitaires où le 1 est la i ième composante La variable sous laquelle nous retrouvons le i ième vecteur unitaire est la variable de base dans la i ième ligne du tableau

26 Solution initiale pour poursuivre Deux cas différents doivent être considérés. Cas 1: Aucune variable artificielle nest variable de base. Donc toutes les variables de base sont des variables originales x j. Considérons le tableau du simplexe de la dernière itération de la phase I

27 Solution initiale pour poursuivre Éliminons les colonnes des variables artificielles Remplaçons la dernière ligne du tableau par la fonction économique du problème original

28 Solution initiale pour poursuivre Dénotant les variables de base par,le tableau devient Pour retrouver le tableau du simplexe associé à cette base, il faut ramener à 0 les coûts relatifs des variables de base

29 Solution initiale pour poursuivre Modifions la dernière ligne de ce tableau en soustrayant chacune des autres lignes i multipliée par De sorte que

30 Solution initiale pour poursuivre Le tableau devient donc Nous avons donc un tableau du simplexe associé à une solution initiale de base pour le problème originale où les variables de base sont

31 Cas 2: Certaines variables de base sont des variables artificielles. Supposons que la variable artificielle t k est variable de base dans la ligne i

32 Solution initiale pour poursuivre Cas 2: Certaines variables de base sont des variables artificielles. Supposons que la variable artificielle t k est variable de base dans la ligne i. Cette ligne du tableau à la dernière itération de la phase I est de la forme Mais min w = 0 => t k = 0. Ainsi Essayons de remplacer t k par une des variables originales x j à titre de variable de base dans la ligne i. Analysons les coefficients des variables x j dans cette ligne.

33 Solution initiale pour poursuivre i)Supposons quil existe un indice s, 1 s n, tel que. Transformons le dernier tableau de la phase I en exécutant un pivot sur lélément pour que x s devienne la variable de base dans la ligne i. Ceci ne modifie en rien la valeur de lobjectif w puisque Ainsi nous obtenons une nouvelle solution de base optimale pour la phase I où la variable x s remplace la variable t k comme variable de base dans le ligne i

34 Solution initiale pour poursuivre ii) Supposons que. On peut alors démontrer que la contrainte i du problème est redondante car elle peut sexprimer comme une combinaison linéaire des autres contraintes. Dans ce cas, la contrainte i peut être éliminée sans modifier le domaine réalisable. Nous éliminons donc la ligne i du tableau. Après avoir traité chaque ligne où la variable de base est une variable artificielle selon i) ou ii), alors nous obtenons une autre solution optimale de la phase I où aucune variable artificielle nest de base. Nous retombons alors sur le Cas 1

35 Notion de multiplicateurs du simplexe Considérons la dernière ligne du tableau du simplexe associé à la base B qui correspond aux vecteurs des coûts relatifs des variables:

36 Notion de multiplicateurs du simplexe Dénotons le vecteur défini par Alors ou où dénote la j ième colonne de la matrice de contrainte A π est le vecteur des multiplicateurs du simplexe associé à la base B.

37 Notion de multiplicateurs du simplexe Le vecteur des multiplicateurs du simplexe π permet de calculer les coûts relatifs directement à partir des données originales du problème. Les composantes π i (i=1,2,…,m) du vecteur des multiplicateurs peuvent être considérés comme des poids associés aux lignes i du tableau (ou aux contraintes i du problème) tel que la soustraction dune combinaison linéaire des lignes avec ces poids de la dernière ligne du tableau permet dannuler les coûts relatifs des variables de base.

38 Sensitivité de la valeur optimale aux modifications des termes de droite Les multiplicateurs du simplexe associés à une base optimale permettent de mesurer leffet de modifier les termes de droite sur la valeur optimale dun problème. Considérons le problème original et un autre où les termes de droite sont modifiés

39 Sensitivité de la valeur optimale aux modifications des termes de droite Dénotons par B* une base optimale du problème original, et la solution de base optimale correspondante dont la valeur (optimale pour le problème) est donnée par

40 Sensitivité de la valeur optimale aux modifications des termes de droite Choisissons la valeur de de telle sorte que Donc B* demeure une base réalisable pour le nouveau problème modifié puisque la solution de base associée est

41 Sensitivité de la valeur optimale aux modifications des termes de droite Donc B* demeure une base réalisable pour le nouveau problème modifié puisque la solution de base associée est De plus, puisque ni les coûts c j ni la matrice A nont pas été modifiés, alors le vecteur des multiplicateur π* reste inchangé. Par conséquent les coûts relatifs demeurent inchangés et donc non négatifs pour le nouveau problème. La solution précédente est donc optimale pour le nouveau problème.

42 Sensitivité de la valeur optimale aux modifications des termes de droite Cette solution est optimale pour le nouveau problème. Évaluons la valeur optimale du nouveau problème:.

43 Sensitivité de la valeur optimale aux modifications des termes de droite Évaluons la valeur optimale du nouveau problème:. Ainsi, indique la taux de variation unitaire de la fonction économique lorsque le terme de droite b i de la contrainte i est modifié dune quantité choisie de telle sorte que la base demeure réalisable pour le nouveau problème.

44 Domaine réalisable Lensemble des points réalisables pour le système 5x + 3y 30 2x + 3y 24 1x + 3y 18 x,y0

45 Domaine réalisable Lensemble des points réalisables pour le système 5x + 3y 30 2x + 3y 24 1x + 3y 18 x,y0

46 Forme révisée du simplexe Dans cette variante de lalgorithme du simplexe, nous exploitons les multiplicateurs du simplexe pour permettre de faire le pivot sur un tableau de dimension réduite. Nous considérons le problème de programmation linéaire sous sa forme standard

47 Forme révisée du simplexe Les données du problème peuvent être résumées dans le tableau suivant

48 Construisons un nouveau tableau à partir de ce dernier en ajoutant une matrice identité mxm à côté de la matrice A des contraintes et en lui associant un vecteur de m composantes égales à 0 dans la dernière ligne du tableau

49 Supposons que nous résolvions le problème avec lalgorithme du simplexe et que nous fassions également les pivots sur la partie additionnelle du tableau à chaque itération. Considérons une solution de base réalisable dont la base B est constituée des m premières colonnes de A. Pour faciliter la présentation représentons le tableau augmenté sous une forme matricielle équivalente:

50

51 Le tableau du simplexe associé à la base B peut être retrouvé en multipliant les m premières lignes du tableau par B -1 et en ramenant les coûts relatifs des variables de base à 0 B -1 0

52 Considérant maintenant la représentation explicite du tableau augmenté à cette itération La matrice B -1 se retrouve à lendroit où était la matrice identité dans le tableau des données originales

53 Dénotons par π = [π 1, π 2,…, π m ] T le vecteur des multiplicateurs associés à la base B. Alors En particulier, pour i = 1,2,…,m, puisque c n+i = 0 et

54 Ce tableau sécrit donc sous la forme B -1 inverse de la base Multiplicateurs changés de signe

55 Comporte toute linformation nécessaire pour compléter une itération du simplexe. La partie suivante de ce tableau

56 Critère dentrée: Pour déterminer la variable dentrée ou vérifier si la solution actuelle est optimale, il faut déterminer les coûts relatifs

57 Critère de sortie: Pour compléter cette étape, il faut connaître Or

58 Pivot: Il suffit de compléter le pivot uniquement sur les colonnes du tableau précédent. En effet nous aurons alors toute linformation nécessaire pour compléter la prochaine itération. En pivotant sur lélément

59

60 Variante du simplexe pour problème avec variables bornées Considérons le problème de programmation linéaire avec variables bornées suivant Ramenons à 0 les bornes inférieures en faisant le changement de variables suivant x j = g j – l j (i.e., g j = x j + l j )

61 Variante du simplexe pour problème avec variables bornées le problème devient et en remplaçant: u j = q j – l j et b = h – Al

62 Dans ce problème puisque c T l représente une constante, nous pouvons éliminer ce terme de la fonction économique sans changer la solution optimale et dans la suite de la présentation considérer ce problème sans perte de généralité. Variante du simplexe pour problème avec variables bornées

63 Considérons la formulation explicite du problème Une façon de le résoudre est de le ramener sous une forme standard en introduisant des variables décart y j, et densuite utiliser lalgorithme du simplexe

64 Considérons une solution de base réalisable de ce problème. La présence des contraintes x j + y j = u j implique quau moins une des deux variables x j ou y j est variable de base, j = 1,2,…,n. Donc une des trois situations suivantes prévaut pour chaque j = 1,2,…,n: a) x j = u j est variable de base et y j = 0 est variable hors base b) x j = 0 est variable hors base et y j = u j est variable de base c) 0 < x j < u j est variable de base et 0 < y j < u j est variable de base Non dégénérescence: toutes les variables de base sont positives à chaque itération

65 m + n variables de base requises il y a n variables y j Il y a au moins m variables x j dans la base Exactement m variables x j satisfont 0 < x j < u j. En effet, si m 0 m variables x j satisfaisaient la relation, alors les m 0 variables y j correspondantes seraient également dans la base. De plus, pour les n – m 0 autres indices j x j = u j (cas a) ou bien y j = u j (cas b) serait vérifié. Alors le nombre de variables de base serait égal à 2m 0 + (n – m 0 ) = n + m 0 n + m

66 La base a donc la forme suivante m n 0 < x j < u j 0 < y j < u j xj=ujxj=uj yj=ujyj=uj

67 La base a donc la forme suivante m n 0 < x j < u j 0 < y j < u j xj=ujxj=uj yj=ujyj=uj Base de A Les colonnes de la base B de A correspondent aux variables 0

68 Ainsi, nous pouvons développer une variante du simplexe pour résoudre directement le problème en traitant implicitement les bornes supérieures u j. À chaque itération, nous allons considérer une solution (de base) associée à une base B de A ayant m variables de base n – m variables hors base

69 À chaque itération, nous allons considérer une solution (de base) associée à une base B de A ayant m variables de base n – m variables hors base. Si on dénote les indices des variables de base IB = {j 1, j 2, …, j m } où j i est lindice de la variable de base dans la i ième ligne, alors La valeur de la fonction économique est Nous retrouvons les mêmes expressions que pour les problèmes sans bornes sauf que les variables hors base

70 Il suffit dajuster les critères dentrée et de sortie en conséquence pour retrouver la variante du simplexe. Nous retrouvons les même expressions que pour les problèmes sans bornes sauf que les variables hors base

71 Étape 1: Choix de la variable dentrée Le critère pour choisir la variable dentrée est modifié pour tenir compte des variables hors base x j à leur borne supérieure u j qui peuvent diminuer. Ainsi, pour un indice si, il est avantageux daugmenter x j si, il est avantageux de diminuer x j Déterminons et Soit Si, alors la solution est optimale et lalgorithme sarrête. Si, alors la variable x s augmente; aller à létape 2.1. Si, alors la variable x s diminue; aller à létape 2.2

72 Étape 2.1: Choix de la variable de sortie Laugmentation de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne sup. u s ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ =, alors le problème nest pas borné inférieurement et lalgorithme sarrête.

73 Étape 2.1: Choix de la variable de sortie Laugmentation de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne sup. u s ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ = u s, alors lensemble des variables de base reste le même et la même base est utilisée à la prochaine itération. La variable x s demeure hors base hors et sa valeur passe de 0 à u s. Retourner à létape 1.

74 Étape 2.1: Choix de la variable de sortie Laugmentation de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne sup. u s ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable dentrée x s augmente à θ. La variable dentrée x s devient variable de base à la place de la variable de sortie. Pivoter sur et retourner à létape 1

75 Étape 2.1: Choix de la variable de sortie Laugmentation de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne sup. u s ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable dentrée x s augmente à θ. La variable dentrée x s devient variable de base à la place de la variable de sortie. Pivoter sur et retourner à létape 1

76 Étape 2.2: Choix de la variable de sortie La réduction de la valeur de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ = u s, alors lensemble des variables de base reste le même et la même base est utilisée à la prochaine itération. La variable x s demeure hors base hors et sa valeur passe de u s à 0. Retourner à létape 1.

77 Étape 2.2: Choix de la variable de sortie La réduction de la valeur de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable dentrée x s est réduite de θ (i.e., x s u s – θ). La variable dentrée x s devient variable de base à la place de la variable de sortie. Pivoter sur et retourner à létape 1

78 Étape 2.2: Choix de la variable de sortie La réduction de la valeur de la variable dentrée x s est limitée par la première des trois situations suivantes qui se produit: i) x s atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable dentrée x s et réduite de θ (i.e., x s u s – θ). La variable dentrée x s devient variable de base à la place de la variable de sortie. Pivoter sur et retourner à létape 1

79 Domaine réalisable Lensemble des points réalisables pour le système 5x + 3y 30 2x + 3y 24 1x + 3y 18 x,y0 x 4


Télécharger ppt "3. Variantes de lalgorithme du simplexe. Les deux phases du simplexe Pour initialiser lalgorithme du simplexe, il faut déterminer une solution de base."

Présentations similaires


Annonces Google