• Aucun résultat trouvé

Introduction à la dualité

N/A
N/A
Protected

Academic year: 2022

Partager "Introduction à la dualité"

Copied!
40
0
0

Texte intégral

(1)

Introduction à la dualité

Michel Bierlaire

[email protected]

EPFL - Laboratoire Transport et Mobilit ´e - ENAC

Introduction `a la dualit ´e – p. 1/40

(2)

Introduction à la dualité

Comment se débarrasser des contraintes

Permettre la violation des contraintes

Associer une pénalité à cette violation

S’arranger pour que la pénalité n’incite pas à violer la contrainte

Introduction `a la dualit ´e – p. 2/40

(3)

Exemple de l’alpiniste

Un milliardaire offre 1 e à un alpiniste par mètre d’altitude

Contrainte : rester dans les Alpes

Solution optimale : grimper sur le Mont Blanc pour 4807 e

Introduction `a la dualit ´e – p. 3/40

(4)

Exemple de l’alpiniste

Les alpinistes aiment la liberté, pas les contraintes

Si le milliardaire accepte qu’il quitte les Alpes:

Solution optimale : grimper sur l’Everest pour 8848 e

Introduction `a la dualit ´e – p. 4/40

(5)

Exemple de l’alpiniste

Le milliardaire accepte qu’il quitte les Alpes.

Mais en s’acquittant d’une amende de 4041e

Grimper sur l’Everest rapportera donc 8848 e-4041 e=4807e

Même gain que pour grimper sur le Mont Blanc

Il n’y a plus intérêt à quitter les Alpes

Question : comment le milliardaire doit-il calculer le prix ?

Introduction `a la dualit ´e – p. 5/40

(6)

Exemple de l’alpiniste

Modélisation

x est la position (longitude/latitude)

f(x) est l’altitude en x

Premier problème :

maxx f(x) s.c. x Alpes

Amende: a(x), avec a(x) = 0 si x Alpes.

Second problème :

maxx f(x) a(x).

Introduction `a la dualit ´e – p. 6/40

(7)

Exemple d’optimisation

xminR2 2x1 + x2

sous contraintes

1 x1 x2 = 0 x1 0 x2 0 Solution optimale : (0,1) Coût optimal : 1

Relaxons la contrainte 1 x1 x2 = 0

Introduction `a la dualit ´e – p. 7/40

(8)

Exemple d’optimisation

Amende proportionnelle à la violation :

xminR2 2x1 + x2 + λ(1 x1 x2)

sous contraintes

x1 0 x2 0

Quelle valeur donner à λ pour que la solution optimale du problème relaxé ne soit pas meilleure que celle du problème de départ ?

Introduction `a la dualit ´e – p. 8/40

(9)

Exemple d’optimisation

λ = 0

xminR2 2x1 + x2

sous contraintes

x1 0 x2 0

Solution optimale : (0,0) Coût optimal : 0

Violation de la contrainte. Mauvais choix de λ

Introduction `a la dualit ´e – p. 9/40

(10)

Exemple d’optimisation

-10 -5 0 5 10 -10

-5 0

5 -30 10

-20 -10 0 10 20 30

Introduction `a la dualit ´e – p. 10/40

(11)

Exemple d’optimisation

λ = 2

xminR2 2 x2

sous contraintes

x1 0 x2 0

Problème non borné. Mauvais choix de λ

Introduction `a la dualit ´e – p. 11/40

(12)

Exemple d’optimisation

-10 -5 0 5 10 -10

-5 0

5 -30 10

-20 -10 0 10 20 30

Introduction `a la dualit ´e – p. 12/40

(13)

Exemple d’optimisation

λ = 1

xminR2 x1 + 1

sous contraintes

x1 0 x2 0

Solution optimale : (0, x2) Coût optimal : 1

Quel que soit x2, même coût optimal. On choisit donc x2 = 1 pour vérifier la contrainte.

Introduction `a la dualit ´e – p. 13/40

(14)

Exemple d’optimisation

-10 -5 0 5 10 -10

-5 0

5 -30 10

-20 -10 0 10 20 30

Introduction `a la dualit ´e – p. 14/40

(15)

Fonction lagrangienne

Fonction lagrangienne

Soit le problème d’optimisation minf(x) sous contraintes h(x) = 0 et g(x) 0, et soient les vecteurs λ Rm et µ Rp. La fonction

L : Rn+m+p R

L(x, λ, µ) = f(x) + λTh(x) + µTg(x)

= f(x) + Pm

i=1 λihi(x) + Pp

j=1 µjgj(x)

est appelée Lagrangien ou fonction lagrangienne du problème.

Introduction `a la dualit ´e – p. 15/40

(16)

Fonction duale

Comme dans les exemples, pour chaque valeur de λ et µ, on peut minimiser la fonction lagrangienne.

Fonction duale

Soit le problème d’optimisation minf(x) sous contraintes h(x) = 0 et g(x) 0, et sa fonction lagrangienne L(x, λ, µ). La fonction q : Rm+p R définie par

q(λ, µ) = min

xRn L(x, λ, µ)

est la fonction duale du problème. Les paramètres λ et µ sont appelés vari- ables duales.

Introduction `a la dualit ´e – p. 16/40

(17)

Fonction duale

Borne sur la fonction duale Soit x solution du problème d’optimisation

minf(x) sous contraintes h(x) = 0 et g(x) 0, et soit q(λ, µ) la fonction duale du même problème. Soit λ Rm et µ Rp, µ 0. Alors,

q(λ, µ) f(x),

et la fonction duale fournit des bornes inférieures sur la valeur optimale du problème.

(p.113)

Introduction `a la dualit ´e – p. 17/40

(18)

Problème dual

Comment choisir λ et µ ?

Eviter que le problème relaxé (i.e. le calcul de la fonction duale) soit non borné.

Eviter, dans la mesure du possible, que

q(λ, µ) < f(x)

avec x solution du problème de départ.

Introduction `a la dualit ´e – p. 18/40

(19)

Problème dual

Problème dual

Soit le problème d’optimisation minf(x) sous contraintes h(x) = 0 et g(x) 0 et sa fonction duale q(λ, µ). Soit Xq Rm+p le domaine de

q, c’est-à-dire

Xq = {λ, µ|q(λ, µ) > −∞}

Le problème d’optimisation

maxλ,µ q(λ, µ) s.c. µ 0 et (λ, µ) Xq

est le problème dual du problème d’optimisation. Dans ce contexte, le prob- lème de départ s’appelle problème primal.

Introduction `a la dualit ´e – p. 19/40

(20)

Exemple

xminR2 2x1 + x2

sous contraintes

h1(x) = 1 x1 x2 = 0 (λ) g1(x) = −x1 0 1) g2(x) = −x2 0 2)

Fonction lagrangienne :

L(x1, x2, λ, µ1, µ2)

= 2x1 + x2 + λ(1 x1 x2) µ1x1 µ2x2

= (2 λ µ1)x1 + (1 λ µ2)x2 + λ

Introduction `a la dualit ´e – p. 20/40

(21)

Exemple

Pour que la fonction duale soit bornée, il faut que les coefficients de x1 et x2 soient nuls, et donc

2 λ µ1 = 0, 1 λ µ2 = 0, ou encore

µ1 = 2 λ, µ2 = 1 λ.

Comme µ1 0, il faut que λ 2. Comme µ2 0, il faut que λ 1.

Introduction `a la dualit ´e – p. 21/40

(22)

Exemple

Ainsi,

Xq = {λ, µ1, µ2 1, µ1 0, µ2 0}

et la fonction duale devient

q(λ, µ1, µ2) = λ.

Introduction `a la dualit ´e – p. 22/40

(23)

Exemple

Le problème dual s’écrit

maxλ s.c. λ 1, µ1 0, µ2 0, dont la solution optimale est λ = 1. Comme

µ1 = 2 λ, µ2 = 1 λ.

on a µ1 = 1 et µ2 = 0.

Introduction `a la dualit ´e – p. 23/40

(24)

Dualité faible

Dualité faible Soit x solution du problème primal et soit , µ) solution

optimale du problème dual associé. Alors

q(λ, µ) f(x)

(Corollaire de la borne duale – p.116)

Introduction `a la dualit ´e – p. 24/40

(25)

Problème dual

Concavité-convexité du problème dual Soit le problème dual

maxλ,µ q(λ, µ) s.c. µ 0 et (λ, µ) Xq d’un problème d’optimisation. Alors, la fonction objectif est concave, et le domaine de la fonction duale est convexe.

(p. 116)

Introduction `a la dualit ´e – p. 25/40

(26)

Dualité en optimisation linéaire

minx cTx

sous contraintes

Ax = b x 0 et donc, nous avons

h(x) = b Ax et

g(x) = −x.

Introduction `a la dualit ´e – p. 26/40

(27)

Dualité en optimisation linéaire

Fonction lagrangienne :

L(x, λ, µ) = cTx + λT(b Ax) µTx

= (c ATλ µ)Tx + λTb.

Pour qu’elle soit bornée, il faut

c ATλ µ = 0.

Ainsi,

L(x, λ, µ) = λTb ∀x, µ et donc

q(λ, µ) = min

x L(x, λ, µ) = λTb.

Introduction `a la dualit ´e – p. 27/40

(28)

Dualité en optimisation linéaire

Le problème dual s’écrit

maxλ,µ λTb

sous contraintes

µ 0

µ = c ATλ.

Eliminer µ

Renommer λ en x

Changer la maximisation en minimisation.

Introduction `a la dualit ´e – p. 28/40

(29)

Dualité en optimisation linéaire

On obtient

minx −bTx sous contraintes

ATx c.

C’est aussi un problème d’optimisation linéaire Calculons son dual...

Fonction Lagrangienne :

L(x, µ) = −bTx + µT(ATx c)

= (−b + Aµ)Tx µTc

Introduction `a la dualit ´e – p. 29/40

(30)

Dualité en optimisation linéaire

Pour qu’elle soit bornée, il faut

−b + = 0

Introduction `a la dualit ´e – p. 30/40

(31)

Dualité en optimisation linéaire

Ainsi,

L(x, µ) = −µTc ∀x et donc

q(µ) = −µTc.

Le problème dual s’écrit

maxµ −µTc

sous contraintes

µ 0 = b.

Introduction `a la dualit ´e – p. 31/40

(32)

Dualité en optimisation linéaire

ou encore

minx xTc

sous contraintes

x 0 Ax = b.

C’est le problème de départ

Introduction `a la dualit ´e – p. 32/40

(33)

Dualité en optimisation linéaire

Soit le programme linéaire suivant

minx cT1 x1 + cT2 x2 + cT3 x3

sous contraintes

A1x1 + B1x2 + C1x3 = b1

A2x1 + B2x2 + C2x3 b2

A3x1 + B3x2 + C3x3 b3

x1 0 x2 0 x3 Rn3

Introduction `a la dualit ´e – p. 33/40

(34)

Dualité en optimisation linéaire

Le dual de ce problème est

maxγ γTb = γ1Tb1 + γ2Tb2 + γ3Tb3

γ1 Rm γ2 0 γ3 0 1TA1 + γ2TA2 + γ3TA3 =) γTA c1

1TB1 + γ2TB2 + γ3TB3 =) γTB c2

1TC1 + γ2TC2 + γ3TC3 =) γTC = c3

avec γ = (γ1T γ2T γ3T)T et A = (AT1 AT2 AT3 )T

Introduction `a la dualit ´e – p. 34/40

(35)

Dualité en optimisation linéaire

A chaque contrainte du primal correspond une variable duale Contrainte = variable duale libre

Contrainte variable duale 0 Contrainte variable duale 0

A chaque variable primale correspond une contrainte duale variable primale 0 contrainte

variable primale 0 contrainte variable primale libre contrainte =

Introduction `a la dualit ´e – p. 35/40

(36)

Dualité en optimisation linéaire

Le dual du dual est le primal Soit un problème (primal) d’optimisation linéaire. Si l’on transforme son dual en un problème de minimisation, et que l’on calcule le dual de celui-ci, on obtient un problème équivalent au problème primal

(p. 121)

Introduction `a la dualit ´e – p. 36/40

(37)

Dualité en optimisation linéaire

minx1 + 2x2 + 3x3

sous contraintes

−x1 + 3x2 = 5 2x1 x2 + 3x3 6 x3 4

x1 0

x2 0

x3 R

Introduction `a la dualit ´e – p. 37/40

(38)

Dualité en optimisation linéaire

Le problème dual est

max 5γ1 + 6γ2 + 4γ3

sous contraintes

γ1 R

γ2 0

γ3 0

−γ1 + 2 1

1 γ2 2

2 + γ3 = 3

C’est également un problème linéaire.

Introduction `a la dualit ´e – p. 38/40

(39)

Dualité en optimisation linéaire

Ecrivons-le comme un problème de minimisation, et renommons les variables x.

min−5x1 6x2 4x3

x1 R

x2 0

x3 0

x1 2x2 −1

−3x1 + x2 −2

−3x2 x3 = −3 On peut donc calculer sont dual.

Introduction `a la dualit ´e – p. 39/40

(40)

Dualité en optimisation linéaire

max−γ1 2 3

sous contraintes

γ1 2 = −5

−2γ1 + γ2 3 −6

γ3 −4

γ1 0

γ2 0

γ3 R C’est le problème de départ

Introduction `a la dualit ´e – p. 40/40

Références

Documents relatifs

Quel est le critère que la solution soit admissible pendant les transformations de Jordan dans l’algorithme du simplex..

Nous retombons donc sur le même résultat que plus haut : l u ^é. Il suffit donc d'avoir constaté l'exis- tence d'un polygone P„ {véritable) inscrit à C o , cir- conscrit à Ci

En prolongeant les deux grands cercles diago- naux, qui sont côtés de ce triangle, au delà du sommet A, cl prenant sur chacun d'eux le sommet de l'octaèdre le plus voisin qu'on

Mémento Pratique de Certificat d’Études Primaires 1886 Mémento Pratique de Certificat d’Études Primaires 1886 Mémento Pratique de Certificat d’Études Primaires 1886

Nous démontrons des résultats d’existence et de régularité de la solution de ( PR ) , ensuite moyennant la mesure de Young nous donnons une condition suffisante pour que le

(2006) Introduction à l’optimisation différentiable. Presses Polytech- niques et Universitaires romandes.. Les quantités que l’on peut produire sur les sites A et B peuvent

2°) Dans cette question, on va s’intéresser au signe de f. 4°) Le but de cette question est d’étudier les variations de f. En déduire le signe de f ' sur cet intervalle. 5°)

Borne inférieure de la longueur moyenne Le questionnaire de Fano est-il optimal.