0% ont trouvé ce document utile (0 vote)
14 vues30 pages

Dualité en Programmation Linéaire

Transféré par

Mohamed Badache
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
14 vues30 pages

Dualité en Programmation Linéaire

Transféré par

Mohamed Badache
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

DUALITÉ

Outils de Recherche
Opérationnelle en Génie - MTH 8414

Louis-Martin Rousseau
Office: A520.21 Tel.: #4569
Louis-
[Link]@[Link]
Soit un modèle linéaire

Max x1 + x2

x1 + 3x2 £ 3
3x1 + x2 £ 5
x1 ³ 0
x2 ³ 0
max x1 + x2
x1
x1 + 3x2 £ 3
3x1 + x2 £ 5
x1 ³ 0
x2 ³ 0

x2
max x1 + x2
x1
x1 + 3x2 £ 3
3x1 + x2 £ 5
x1 ³ 0
x2 ³ 0

x2
max x1 + x2
x1
x1 + 3x2 £ 3
Solutions
3x1 + x2 £ 5
réalisables
x1 ³ 0
x2 ³ 0

x2
max x1 + x2
x1

Solution
x1 + 3x2 £ 3
optimale 3x1 + x2 £ 5
x1=1/2, x2=3/2 x1 ³ 0
x2 ³ 0

x2
Pouvez-vous prouver l’optimalité ?
max x1 + x2
x1

Solution
x1 + 3x2 £ 3
optimale 3x1 + x2 £ 5
x1=1/2, x2=3/2 x1 ³ 0
x2 ³ 0

x2
Pouvez-vous prouver l’optimalité ?

x1 max x1 + x2
x1 + 3x2 £ 3
Solution 3x1 + x2 £ 5
optimale
x1=1/2, x2=3/2
4x1 + 4x2 £ 8

x2
Pouvez-vous prouver l’optimalité ?

x1 max x1 + x2
x1 + 3x2 £ 3
Solution 3x1 + x2 £ 5
optimale
x1=1/2, x2=3/2
x1 + x2 £ 2

x2
Un autre programme linéaire

max x1 + x2

x1 + 2x2 £ 3
4x1 + x2 £ 5
x1 ³ 0
x2 ³ 0
x1=1, x2=1, Optimale ?
Un autre programme linéaire
max x1 + x2

(x1 + 2x2 £ 3 ) *3
(4x1 + x2 £ 5 ) *1
x1 ³ 0 7x1 + 7x2 £ 14
x2 ³ 0 x1 + x2 £ 2
x1=1, x2=1, Optimale !
Un autre programme linéaire

max x1 + x2 £7x1 + 7x2 £14


La “preuve” est une borne supérieure
x1 + 2x2 £ 3 sur l’objectif.

4x1 + x2 £ 5 On veut donc construire une équation


qui, tout en étant minimale, est
x1 ³ 0 toujours plus grande que n’importe
quelle solution réalisable.
x2 ³ 0
Si la borne = la solution obtenue alors
celle si est optimale.
Recherche de la preuve d’optimalité

max x1 + x2 On cherche la plus petite borne


supérieure pour ce problème

x1 + 2x2 £ 3 * y1 On introduit des


multiplicateurs pour
4x1 + x2 £ 5 * y2 chaque contrainte
du problème
x1 ³ 0
x2 ³ 0
Recherche de la preuve d’optimalité

max x1 + x2 On cherche la plus petite borne


supérieure pour ce problème

x1 + 2x2 £ 3 * y1
4x1 + x2 £ 5 * y2 On définit leur signe:
elles doivent être
x1 ³ 0 y1 ³ 0 positives pour ne pas
changer le sens des
x2 ³ 0 y ³0 inégalités.
2
Recherche de la preuve d’optimalité

max x1 + x2 On cherche la plus petite borne


supérieure pour ce problème

Les coefficients de
x1 + 2x2 £ 3 * y1 l’expression doivent être

4x1 + x2 £ 5 * y2 plus grands que ceux de


l’objectif pour garantir une
x1 ³ 0 y1 ³ 0 valeur toujours supérieure à
celle de la fonction objectif
x2 ³ 0 y2 ³ 0
y1 + 4y2 ³ 1
2y1+y2 ³ 1
Recherche de la preuve d’optimalité

max x1 + x2 On cherche la plus petite borne


supérieure pour ce problème

On minimise la
x1 + 2x2 £ 3 * y1 valeur de la borne.

4x1 + x2 £ 5 * y2
x1 ³ 0 y1 ³ 0 min 3y1+5y2
x2 ³ 0 y2 ³ 0 y1 + 4y2 ³ 1
2y1+y2 ³ 1
L’un est le dual de l’autre

max x1+x2 min 3y1+5y2


x1 + 2x2 £ 3 y1 + 4y2 ³ 1
4x1 + x2 £ 5 Dualité 2y1+y2 ³ 1
x1 ³ 0 y1 ³ 0
x2 ³ 0 y2 ³ 0
Primal Dual
La dualité faible (solutions réalisables)

max x1+x2 £ min 3y1+5y2

x1 + 2x2 £ 3 y1 + 4y2 ³ 1
4x1 + x2 £ 5 2y1+y2 ³ 1
x1 ³ 0 y1 ³ 0
x2 ³ 0 y2 ³ 0
Primal Dual
La dualité forte (solution optimale)

max x1+x2 = min 3y1+5y2

x1 + 2x2 £ 3 y1 + 4y2 ³ 1
4x1 + x2 £ 5 2y1+y2 ³ 1
x1 ³ 0 y1 ³ 0
x2 ³ 0 y2 ³ 0
Primal Dual
Dualité
Soit le problème PRIMAL
Max z = c t x
s.c. Ax ≤ b
x≥0
Alors son DUAL est
, t
Min z = b y
s.c. A t y ≥ c
y≥0
Théorème 1 (dualité faible)

• Soient 𝐸 l’ensemble des solutions réalisables du primal et 𝐸 ! l’ensemble des solutions réalisables du dual.
Alors:

∀𝑥 ∈ 𝐸 et ∀𝑦 ∈ 𝐸 !
On a 𝑐 " 𝑥 ≤ 𝑏 " 𝑦
(i.e. 𝑧 ≤ 𝑧 ! )

Corollaire du théorème 1
• Si un P.L. n’admet pas de solution optimale finie (il est non borné), alors son dual n’admet aucune
solution réalisable (la réciproque est fausse).
Théorème 2 (dualité forte)

• S’il existe une solution 𝑥 ∗ du primal et une solution 𝑦 ∗ du dual telles que
𝑐 " 𝑥 ∗ = 𝑏 " 𝑦 ∗ alors ces solutions sont optimales pour leurs problèmes respectifs.

Théorème de dualité forte


• Si le problème primal et son dual admettent chacun au moins une solution réalisable, soit 𝑧 la valeur
de l’objectif du primal et 𝑧 ! la valeur de l’objectif du dual, alors :
a) 𝑧 et 𝑧 ! ont une valeur optimale finie
b) max 𝑧 = min 𝑧 !
Exemple

Primal Dual
𝑀𝑎𝑥 𝑧 = 2𝑥! + 3𝑥" 𝑀𝑖𝑛 𝑧′ = 3𝑦! + 8𝑦" + 4𝑦#
s.c. s.c.
𝑥! + 𝑥" ≤ 3 𝑦! − 𝑦" + 2𝑦# ≥ 2
− 𝑥! + 𝑥" ≤ 8 𝑦! + 𝑦" + 𝑦# ≥ 3
2𝑥! + 𝑥" ≤ 4 𝑦! , 𝑦" , 𝑦# ≥ 0
𝑥! , 𝑥" ≥ 0
Exemple (suite)
Si on regarde la forme matricielle

Primal Dual
1 1 3 1 -1 2 2

-1 1 8
1 1 1 3
2 1 4 3 8 4

2 3
Exemple

Primal Dual
𝑀𝑎𝑥 2400𝑥# + 4000𝑥$ 𝑀𝑖𝑛 4000𝑦# + 2600𝑦$ + 2700𝑦%
s.c. s.c.
10𝑥# + 40𝑥$ ≤ 4000 10𝑦# + 20𝑦$ + 30𝑦% ≥ 2400
20𝑥# + 20𝑥$ ≤ 2600 40𝑦# + 20𝑦$ + 10𝑦% ≥ 4000
30𝑥# + 10𝑥$ ≤ 2700
Résultats

Primal Dual
Valeur Coût réduit Valeur Coût réduit
X1 40 0 Y1 53.3 0
X2 90 0 Y2 93.3 0
Contrainte Écart Coût Marg. Y3 0 600
1 0 53.3 Contrainte Écart Coût Marg.
2 0 93.3 1 0 -40
3 600 0 2 0 -90

Que remarquez-vous ? Le dual du dual = …


La Dualité
• Le concept de la dualité est FONDAMENTAL en PL

• Il permet entre autres:


• de réduire le nombre de contraintes;
• l’obtention d’une structure plus efficace pour la résolution du problème;
• de concevoir des méthodes de décomposition performantes.

• Il fournit essentiellement l’information sur la sensibilité de la solution optimale par rapport aux
changements dans:
• l’objectif,
• les coefficients des contraintes,
• les constantes du terme de droite,
• l’addition de nouvelles variables,
• l’addition de nouvelles contraintes.
Variables duales et coûts réduits

Le prix (ou variable) dual pour chaque contrainte:


• indique l’effet sur l’objectif si on augmente d’une unité le côté droit de la contrainte.
• est aussi appelé coût marginal (shadow price) pour indiquer le montant que l’on serait prêt à payer pour une
unité additionnelle de la ressource correspondante.
• équivaut à la valeur optimale donnée à la variable associé à cette contrainte dans le problème dual.

Le coût réduit pour chaque variable.


• indique de combien on devrait augmenter le coefficient d’une variable pour qu’il devienne profitable de
rendre cette variable positive.
• indique la pénalité (par unité) à payer pour forcer la variable dans la solution.
• équivaux à l’écart de la contrainte dual associé à cette variable.

Les coûts réduits ne sont valables que dans un intervalle spécifié dans l’analyse de sensibilité (range analysis).
Transformation

Primal Dual
Max 𝑏! 𝜆
Min 𝑐!𝑥
s.t.:
s.t.:
𝐴! 𝜆 ≤ 𝑐
𝐴𝑥 ≥ 𝑏
𝜆 ≥ 0
𝑥 ≥ 0

Min 𝑐 ! 𝑥 Max 𝑏! 𝜆
s.t.: s.t.:
𝐴𝑥 = 𝑏 𝐴! 𝜆 ≤ 𝑐
𝑥 ≥ 0 𝜆 (libre)
Transformation
Résumé

max min
𝑖 12 contrainte = 𝑦3 ∈ ℝ
𝑥4 ∈ ℝ 𝑗12 contrainte =
𝑥4 ≥ 0 𝑗12 contrainte ≥
𝑥4 ≤ 0 𝑗12 contrainte ≤
𝑖 12 contrainte ≤ 𝑦3 ≥ 0
𝑖 12 contrainte ≥ 𝑦3 ≤ 0

Vous aimerez peut-être aussi