Université Paris Institut Galilée INFO - MI Année - Devoir de vacances de Programmation Linéaire Correction À faire pour le Janvier Soit le programme linéaire : P max 6x + x s.c x + x x + x x + x x + x x, x Les exercices se rapportent tous au programme linéaire P Néanmoins ils sont indépendants et peuvent être traités dans n importe quel ordre. Exercice Forme canonique, forme standard et dual points. Mettre le programme linéaire sous forme canonique.. Mettre le programme linéaire sous forme standard.. Donner le dual D du programme linéaire P.. Sous forme canonique : P c max 6x + x s.c x + x x x x + x x x x, x. Sous forme standard : max 6x + x s.c x + x + x = P s x x + x = x + x + x = x x + x 6 = x, x, x, x, x, x 6. Le dual D de P. D min y + y + y + y s.c y + y + y + y 6 y + y + y + y y, y, y, y
ou D min y y + y y s.c y y + y y 6 y y + y y y, y, y, y Exercice Résolution graphique points Faire la résolution graphique du programme linéaire P pour déterminer sa solution optimale et sa valeur vp. x x +x obj x x = 6, x x +x x +x x +x x { x : intersection entre et x +x = x +x = x = d où x = 6, = 6 = 6 et x = pour une valeur de 9. = 6 = Exercice Solutions de base et algorithme primal du simplexe sous forme tableau points Soient x, x, x et x 6 les variables d écart associées aux contraintes,, et.. Expliciter la solution de base x définie par x = et x = i.e. donner les valeurs de x, x, x et x 6. À quelle base cette solution correspond-t-elle?
contraintes variables en base parmi 6. C6 = solutions de base potentielles. x vérifie à l égalité la contrainte x +x donc x =. x correspond à la solution de base associée à x = x = c est-à-dire l intersection entre les contraintes x = et x =. Cette solution correspond à la base B = {x,x,x,x 6 }. x doit vérifier toutes les contraintes? On peut donc se servir de cette propriété pour trouver la valeur de x, x et x 6. x + x + x = x = = x + x + x = x = = x x + x 6 = x 6 = + = donc x =,,,,,.. x est-elle une solution de base réalisable? Réalisabilité de x? x = x = x = x = x = mais x 6 = < donc x n est pas réalisable.. x est-elle une solution de base optimale? Non réalisable donc non optimale.. Expliciter la solution de base x définie par x = et x = i.e. donner les valeurs de x, x, x et x 6. À quelle base cette solution correspond-t-elle? contraintes variables en base parmi 6. C6 = solutions de base potentielles. x vérifie à l égalité la contrainte x +x donc x =. x correspond à la solution de base associée à x = x = c est-à-dire l intersection entre les contraintes x = et x =. Cette solution correspond à la base B = {x,x,x,x 6 }. x doit vérifier toutes les contraintes? On peut donc se servir de cette propriété pour trouver la valeur de x, x et x 6. x + x + x = x = = x + x + x = x = = x x + x 6 = x 6 = + = donc x =,,,,,.. x est-elle une solution de base réalisable? Réalisabilité de x? x = x = x = x = x = x 6 = x, x, x, x 6 donc x est réalisable.
6. x est-elle une solution de base optimale? Optimalité de x? x correspond à la base B = {x,x,x,x 6 }. on note B à la place de B par abus de langage. Il faut calculer les coûts réduits des variables hors base c N c B B Ñ B = B = Ñ =, det B = B Ñ = c B = 6 et c N = c N c B B Ñ = = c x > donc x n est pas optimale. =, com B =. Donner une représentation du programme linéaire sous forme tableau associée à l une des bases précédentes. x B x N B b I B Ñ B = b = c B = 6 c B B b = c B B b c N c B B Ñ B b =
Base b x x x x 6 x x x x x x 6 z c. Trouver la solution de base optimale. Pour ce faire, appliquer l algorithme primal du simplexe en utilisant la forme tableau à partir de la base de la question précédente. > donc x entre en base. donc x sort de base. Base b x x x x x x 6 x x x x 6 z c > donc x entre en base. donc x sort de base. Base b x x x x x x 6 x / / x x / / / x 6 / / z c / / Base b x x x x x x 6 x /6 /6 /6 x / / / x / / / x 6 / / / z c 9/ / / tous les c N < donc optimalité. x = 6,,,,, et z = 9. cohérent avec exercice Exercice Forme révisée de l algorithme primal du simplexe points Appliquer l algorithme du simplexe sous forme révisée pour résoudre le programme linéaire P. Soient x, x, x et x 6 les variables d écart associées aux contraintes,, et. Utiliser B = {x,x,x,x 6 } comme base réalisable de départ.
Sous forme standard : max 6x + x s.c x + x + x = P s x x + x = x + x + x = x x + x 6 = x, x, x, x, x, x 6 Base de départ : B = {,,,6} et N = {,}. Calcul des coûts réduits : B = det B = B = ΠB = c B Π = c B B = 6 c N = c N ΠN = = = x entre en base. = comb = = Choix de la variable sortante : Bd = N x d = B N x = Calcul des x de départ : x B = B b = = =
min {, } = x sort de base. Changement de base : B = {,,,6} et N = {,} x = x x x x d x = = x x x d x = = x 6 x 6 x d x6 = = Calcul des coûts réduits : B = detb = B = = comb = ΠB = c B Π = c B B = 6 c N = c N ΠN = = = x entre en base. = Choix de la variable sortante : Bd = N x d = B N x = } min{, = x sort de base. Changement de base : B = {,,,6} et N = {,} x x x x x d x = = 6 =
x x x d x = = x 6 x 6 x d x6 = = Calcul des coûts réduits : B = B = 6 6 detb = ΠB = c B Π = c B B = 6 c N = c N ΠN = = = = 6 comb = 6 6 = 6 6 6 c N < donc STOP "optimalité". x = 6,,,,, 9 et z =. cohérent avec exercice et. Exercice Phase de l algorithme primal du simplexe Bonus : points Appliquer l algorithme primal du simplexe pour résoudre le programme linéaire P en utilisant un programme linéaire auxilliaire P phase du simplexe. forme standard de P : max x s.c x + x + x = P x x + x x = x + x + x = x x + x 6 x = x, x, x, x, x, x 6, x x =,,,,,, B = {,,,} et N = {,,6} forme dictionnaire : x = x x
x = x x x = x x +x 6 x = +x + x +x = +x x +x 6 + x +x = x +x 6 w = x = +x +x x 6 forme tableau : x entre en base. min{,,, } = Base b x x x x x x 6 x x x x / x w c x sort de base. x entre en base. min{,, } = x sort de base. Base b x x x x x x 6 x x / / / x / / / x / / / x / / / w c / / / B = {,,,} et N = {,,6} w = optimalité de P. On a x hors base et w = solution réalisable de base pour P. Phase pour P Base b x x x x x x 6 x x / / / x 9 x / / / x 6/ / / w c expression des variables en base en fonction des variables hors base x = x + x 6 x = + x x 6 x = 9x x 6 x = 6 + x x 6 expression de z en fonction des variables hors base z = 6x +x
= 6 x + x 6+ + x x 6 = + x + x 6 x 6 entre en base. min{, 9, 6 } = Base b x x x x x x 6 x / / / x 9 x / / / x 6/ / / z c / / / = x sort de base. Base b x x x x x x 6 x 6 x x x z c La suite est similaire à l exercice question. > donc x entre en base. donc x sort de base. Base b x x x x x x 6 x 6 / / x x / / x / / / z c / / > donc x entre en base. donc x sort de base. Base b x x x x x x 6 x 6 / / / x / / / x /6 /6 /6 x / / / z c 9/ / / tous les c N < donc optimalité. x = 6,,,,, et z = 9. cohérent avec les exercices précédents
Exercice 6 Algorithme dual du simplexe Bonus : points Si c est possible, appliquer l algorithme dual du simplexe pour résoudre le programme linéaire P. Sous forme standard : max 6x + x s.c x + x + x = P s x x + x = x + x + x = x x + x 6 = x, x, x, x, x, x 6 Base b x x x x x x 6 x x / x x 6 z c 6 Question : Peut-on lancer l algorithme dual du simplexe à partir du tableau précédent? Réponse : Non. Question : Pourquoi? Réponse : La condition pour pouvoir utiliser l algo dual du simplexe est de disposer d une base initiale duale-réalisable. Dans le cas d une maximisation, une base correspond à une solution duale-réalisable i.e. réalisable pour D si : toutes les variables duales sont nulles toutes les contraintes duales sont satisfaites Dans le tableau primal associé à P, ces deux conditions se traduisent par : des coûts réduits non positifs pour les variables d origine, des coûts réduits non positifs pour les variables d écart. Ici la base formée par les variables d écarts n est pas duale-réalisable. En effet, les coûts réduits sont >.