Devoir à la maison corrigé

Exercice 1 - Résolution par la méthode simplexe Partie A - Simplexe primal Le problème à résoudre est le suivant : Maximiser z = 2x₁ + x₂ + 3x₃ Sous les contraintes : -x₁ + 2x₂ + x₃ ≤ 6 x₁ + x₂ ≤ 24 x₁ - x₂ + x₃ ≤ 9 x₁, x₂, x₃ ≥ 0 Nous introduisons les variables d'écart e₁, e₂ et e₃ pour obtenir la forme standard.

D'après le document Devoir à la maison corrigé

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Devoir à la maison corrigé

Document source

Devoir à la maison corrigé

Mathematics, Optimization · PDF · 7 pages

Afficher l'aperçu du document

Consulter le document original →

Exercice 1 - Résolution par la méthode simplexe

Partie A - Simplexe primal

Le problème à résoudre est le suivant : Maximiser z = 2x₁ + x₂ + 3x₃ Sous les contraintes : -x₁ + 2x₂ + x₃ ≤ 6 x₁ + x₂ ≤ 24 x₁ - x₂ + x₃ ≤ 9 x₁, x₂, x₃ ≥ 0

Nous introduisons les variables d'écart e₁, e₂ et e₃ pour obtenir la forme standard.

Tableau 1

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1 2 1 1 0 0 6
e₂ 1 1 0 0 1 0 24
e₃ 1 -1 1 0 0 1 9
z -2 -1 -3 0 0 0 0

x₃ entre dans la base et e₁ sort ⇒ L₁* = L₁ ← L₁ / 1. Ensuite, L₂ ← L₂ - 0 × L₁, L₃ ← L₃ - 1 × L₁, Lz ← Lz + 3 × L₁

Tableau 2

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ -1 2 1 1 0 0 6
e₂ 1 1 0 0 1 0 24
e₃ 2 -3 0 -1 0 1 3
z -5 5 0 3 0 0 18

x₁ entre dans la base et e₃ sort ⇒ L₃* = L₃ ← L₃ / 2. Ensuite, L₁ ← L₁ + 1 × L₃, L₂ ← L₂ - 1 × L₃, Lz ← Lz + 5 × L₃ Note de correction : La source indiquait par erreur Lz ← Lz + 5 × L₁ pour cette itération. La formule exacte utilise la nouvelle ligne pivot L₃.

Tableau 3

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 1/2 1 1/2 0 1/2 15/2
e₂ 0 5/2 0 1/2 1 -1/2 45/2
x₁ 1 -3/2 0 -1/2 0 1/2 3/2
z 0 -5/2 0 1/2 0 5/2 51/2

x₂ entre dans la base et e₂ sort ⇒ L₂* = L₂ ← L₂ × 2/5. Ensuite, L₁ ← L₁ - 1/2 × L₂, L₃ ← L₃ + 3/2 × L₂, Lz ← Lz + 5/2 × L₂

Tableau 4

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 0 1 2/5 -1/5 3/5 3
x₂ 0 1 0 1/5 2/5 -1/5 9
x₁ 1 0 0 -1/5 3/5 1/5 15
z 0 0 0 1 1 2 48

Solution de Base Réalisable (SBR) optimale (car les coefficients de la ligne z sont ≥ 0) : xB = (x₃, x₂, x₁)ᵀ = (3, 9, 15)ᵀ xL = (e₁, e₂, e₃)ᵀ = (0, 0, 0)ᵀ z* = 48

Remarque : L'exactitude du calcul peut être vérifiée en recalculant z* à partir de son expression initiale : z* = 2(15) + 9 + 3(3) = 30 + 9 + 9 = 48 (ok).

Partie B - Simplexe dual et méthode en deux phases

Le problème à résoudre est modélisé par : Maximiser z = 2x₁ - x₂ + x₃ Sous les contraintes : -x₁ + 2x₂ + 2x₃ ≤ 10 -x₁ + 4x₃ ≤ -2 (équivalent à x₁ - 4x₃ ≥ 2) x₁ - x₂ + 2x₃ ≤ 4 x₁, x₂, x₃ ≥ 0

Méthode 1 : Simplexe dual

Tableau 1

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1 2 2 1 0 0 10
e₂ 1 0 -4 0 1 0 -2
e₃ 1 -1 2 0 0 1 4
z -2 1 -1 0 0 0 0

e₂ sort et x₃ entre ⇒ L₂* = L₂ ← L₂ / -4. Ensuite, L₁ ← L₁ - 2 × L₂, L₃ ← L₃ - 2 × L₂, Lz ← Lz + L₂. Note de correction : La source répétait L₁ ← L₁ - 2 × L₂ deux fois au lieu d'indiquer la transformation pour L₃. Le calcul a été correctement appliqué ci-dessous.

Tableau 2

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1/2 2 0 1 1/2 0 9
x₃ -1/4 0 1 0 -1/4 0 1/2
e₃ 3/2 -1 0 0 1/2 1 3
z -9/4 1 0 0 -1/4 0 1/2

Le vecteur b étant devenu positif, nous revenons au simplexe primal. x₁ entre et e₃ sort ⇒ L₃* = L₃ ← L₃ × 2/3. Ensuite, L₁ ← L₁ + 1/2 × L₃, L₂ ← L₂ + 1/4 × L₃, Lz ← Lz + 9/4 × L₃.

Tableau 3

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ 0 5/3 0 1 2/3 1/3 10
x₃ 0 -1/6 1 0 -1/6 1/6 1
x₁ 1 -2/3 0 0 1/3 2/3 2
z 0 -1/2 0 0 1/2 3/2 5

x₂ entre et e₁ sort ⇒ L₁* = L₁ ← L₁ × 3/5. Ensuite, L₂ ← L₂ + 1/6 × L₁, L₃ ← L₃ + 2/3 × L₁, Lz ← Lz + 1/2 × L₁.

Tableau 4

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₂ 0 1 0 3/5 2/5 1/5 6
x₃ 0 0 1 1/10 -1/10 1/5 2
x₁ 1 0 0 2/5 3/5 4/5 6
z 0 0 0 3/10 2/3 8/5 8

Note de correction : Le coefficient de e₁ dans la ligne z de la source indiquait "2/7". Le calcul exact donne (1/2 × 3/5 = 3/10).

Méthode 2 : Simplexe en deux phases

Phase 1

Tableau 1

Base x₁ x₂ x₃ e₁ e₂ e₃ a₁ b
e₁ -1 2 2 1 0 0 0 10
a₁ -1 0 4 0 -1 0 1 2
e₃ 1 -1 2 0 0 1 0 4
z' 1 0 -4 0 1 0 0 -2

Remarque : La ligne z' a été recalculée selon la formule Lz' ← Lz' - L₂ pour que la variable de base a₁ admette une colonne valide. x₃ entre et a₁ sort ⇒ L₂* = L₂ ← L₂ / 4. Ensuite, L₁ ← L₁ - 2 × L₂, L₃ ← L₃ - 2 × L₂, Lz' ← Lz' + 4 × L₂.

Tableau 2

Base x₁ x₂ x₃ e₁ e₂ e₃ a₁ b
e₁ -1/2 2 0 1 1/2 0 - 9
x₃ -1/4 0 1 0 -1/4 0 - 1/2
e₃ 3/2 -1 0 0 1/2 1 - 3
z' 0 0 0 0 0 0 - 0

Phase 2

Tableau 3

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1/2 2 0 1 1/2 0 9
x₃ -1/4 0 1 0 -1/4 0 1/2
e₃ 3/2 -1 0 0 1/2 1 3
z -9/4 1 0 0 -1/4 0 1/2

Remarque : La ligne z a été recalculée avec Lz ← Lz(initiale) + L₂ pour annuler le coefficient de x₃. x₁ entre et e₃ sort ⇒ L₃* = L₃ ← L₃ × 2/3. Ensuite, L₁ ← L₁ + 1/2 × L₃, L₂ ← L₂ + 1/4 × L₃, Lz ← Lz + 9/4 × L₃.

Tableau 4

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ 0 5/3 0 1 2/3 1/3 10
x₃ 0 -1/6 1 0 -1/6 1/6 1
x₁ 1 -2/3 0 0 1/3 2/3 2
z 0 -1/2 0 0 1/2 3/2 5

x₂ entre et e₁ sort ⇒ L₁* = L₁ ← L₁ × 3/5. Ensuite, L₂ ← L₂ + 1/6 × L₁, L₃ ← L₃ + 2/3 × L₁, Lz ← Lz + 1/2 × L₁.

Tableau 5

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₂ 0 1 0 3/5 2/5 1/5 6
x₃ 0 0 1 1/10 -1/10 1/5 2
x₁ 1 0 0 2/5 3/5 4/5 6
z 0 0 0 3/10 2/3 8/5 8

SBR optimale : xB = (x₂, x₃, x₁)ᵀ = (6, 2, 6)ᵀ, avec z* = 8.

Exercice 2 - Simplexe en deux phases

Note de correction : Les valeurs initiales extraites du document source (b = 6, 3, 12) indiquent que le problème résolu dans les tableaux est le suivant : Maximiser z = 2x₁ + x₂ + 3x₃ Sous les contraintes : -x₁ + 2x₂ + x₃ ≤ 6 x₃ ≥ 3 x₁ - x₂ + 2x₃ ≤ 12 x₁, x₂, x₃ ≥ 0

Phase 1

Base x₁ x₂ x₃ e₁ e₂ e₃ a₁ b
e₁ -1 2 1 1 0 0 0 6
a₁ 0 0 1 0 -1 0 1 3
e₃ 1 -1 2 0 0 1 0 12
z' 0 0 -1 0 1 0 0 -3

Pivot sur la ligne a₁, colonne x₃.

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1 2 0 1 1 0 3
x₃ 0 0 1 0 -1 0 3
e₃ 1 -1 0 0 2 1 6
z' 0 0 0 0 0 0 0

Phase 2

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1 2 0 1 1 0 3
x₃ 0 0 1 0 -1 0 3
e₃ 1 -1 0 0 2 1 6
z -2 -1 0 0 -3 0 9

Pivot sur la ligne e₁, colonne e₂.

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₂ -1 2 0 1 1 0 3
x₃ -1 2 1 1 0 0 6
e₃ 3 -5 0 -2 0 1 0
z -5 5 0 3 0 0 18

Pivot sur la ligne e₃, colonne x₁.

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₂ 0 1/3 0 1/3 1 1/3 3
x₃ 0 1/3 1 1/3 0 1/3 6
x₁ 1 -5/3 0 -2/3 0 1/3 0
z 0 -10/3 0 -1/3 0 5/3 18

Pivot sur la ligne e₂, colonne x₂.

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₂ 0 1 0 1 3 1 9
x₃ 0 0 1 0 -1 0 3
x₁ 1 0 0 1 5 2 15
z 0 0 0 3 10 5 48

SBR optimale : xB = (x₂, x₃, x₁)ᵀ = (9, 3, 15)ᵀ et z* = 48.

Exercice 3 - Simplexe primal

Le problème posé : Maximiser z = 3x₁ + 2x₂ + 4x₃ Sous les contraintes : x₁ + x₂ + 2x₃ ≤ 4 2x₁ + 3x₂ + 0x₃ ≤ 7 2x₁ + x₂ + 3x₃ ≤ 7 x₁, x₂, x₃ ≥ 0

Tableau 1

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ 1 1 2 1 0 0 4
e₂ 2 3 0 0 1 0 7
e₃ 2 1 3 0 0 1 7
z -3 -2 -4 0 0 0 0

x₃ entre et e₁ sort ⇒ L₁* = L₁ ← L₁ / 2. Ensuite, L₂ ← L₂ - 0 × L₁, L₃ ← L₃ - 3 × L₁, Lz ← Lz + 4 × L₁

Tableau 2

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 1/2 1/2 1 1/2 0 0 2
e₂ 2 3 0 0 1 0 7
e₃ 1/2 -1/2 0 -3/2 0 1 1
z -1 0 0 2 0 0 8

x₁ entre et e₃ sort ⇒ L₃* = L₃ ← L₃ × 2. Ensuite, L₁ ← L₁ - 1/2 × L₃, L₂ ← L₂ - 2 × L₃, Lz ← Lz + L₃

Tableau 3

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 1 1 2 0 -1 1
e₂ 0 5 0 6 1 -4 3
x₁ 1 -1 0 -3 0 2 2
z 0 -1 0 -1 0 2 10

x₂ entre et e₂ sort ⇒ L₂* = L₂ ← L₂ / 5. Ensuite, L₁ ← L₁ - 1 × L₂, L₃ ← L₃ + 1 × L₂, Lz ← Lz + L₂

Tableau 4

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 0 1 4/5 -1/5 -1/5 2/5
x₂ 0 1 0 6/5 1/5 -4/5 3/5
x₁ 1 0 0 -9/5 1/5 6/5 13/5
z 0 0 0 1/5 1/5 6/5 53/5

SBR optimale (la ligne z est positive ou nulle) : xB = (x₃, x₂, x₁)ᵀ = (2/5, 3/5, 13/5)ᵀ xL = (e₁, e₂, e₃)ᵀ = (0, 0, 0)ᵀ z* = 53/5 = 10,6.

Note de correction : Le résultat imprimé dans la source indiquait "z = 53 = 6,105" ce qui constituait une erreur d'impression. La valeur exacte calculée est bien 53/5 soit 10,6.*

Exercice 4 - Simplexe primal

Le problème posé : Maximiser z = 2x₁ + x₂ + 3x₃ Sous les contraintes : -x₁ + 2x₂ + x₃ ≤ 6 x₁ + x₂ ≤ 24 x₁ - x₂ + 2x₃ ≤ 12 x₁, x₂, x₃ ≥ 0

Tableau 1

Base x₁ x₂ x₃ e₁ e₂ e₃ b
e₁ -1 2 1 1 0 0 6
e₂ 1 1 0 0 1 0 24
e₃ 1 -1 2 0 0 1 12
z -2 -1 -3 0 0 0 0

Tableau 2

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ -1 2 1 1 0 0 6
e₂ 1 1 0 0 1 0 24
e₃ 3 -5 0 -2 0 1 0
z -5 5 0 3 0 0 18

Tableau 3

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 1/3 1 1/3 0 1/3 6
e₂ 0 8/3 0 2/3 1 -1/3 24
x₁ 1 -5/3 0 -2/3 0 1/3 0
z 0 -10/3 0 -1/3 0 5/3 18

Tableau 4

Base x₁ x₂ x₃ e₁ e₂ e₃ b
x₃ 0 0 1 1/4 -1/8 3/8 3
x₂ 0 1 0 1/4 3/8 -1/8 9
x₁ 1 0 0 -1/4 5/8 1/8 15
z 0 0 0 1/2 5/4 5/4 48

SBR optimale : xB = (x₃, x₂, x₁)ᵀ = (3, 9, 15)ᵀ et z* = 48.

Méthode

Voici les étapes clés pour réussir ce type d'examen portant sur la méthode du simplexe :

  1. La mise en forme standard : Identifiez bien le sens de l'inégalité. Introduisez des variables d'écart (slack variables) de signe positif pour transformer des inégalités "≤" en égalités. Si l'inégalité est de type "≥", introduisez une variable d'excédent (négative) accompagnée d'une variable artificielle, puis utilisez la méthode en deux phases.
  2. Choix de la méthode :
    • Primal : Le vecteur b est entièrement positif (b ≥ 0). L'objectif est de chasser les négatifs de la ligne z.
    • Dual : Utile si la ligne z satisfait déjà la condition d'optimalité (coefficients non négatifs pour un problème de maximisation) mais que le vecteur b contient des termes négatifs.
    • Deux phases : Indispensable lorsque des variables artificielles sont introduites. La première phase minimise la somme des variables artificielles pour trouver une base de départ valide, puis la deuxième phase optimise la vraie fonction objectif.
  3. Opérations sur les lignes (Pivots) : La rigueur arithmétique est essentielle. Ne sautez aucune étape intermédiaire et calculez toujours vos fractions de manière exacte sans les arrondir. Un tableau erroné fausse inévitablement tous les calculs suivants.
  4. Vérification du résultat final : Prenez toujours une minute pour injecter votre solution de base finale (les valeurs de x₁, x₂, etc.) dans la fonction objectif z de départ. Si le résultat obtenu ne correspond pas au z* de votre dernier tableau, c'est le signe immédiat qu'une erreur de calcul s'est glissée dans vos pivots.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions