optimisation mathématique, Exercises of Optimization Techniques in Engineering

mathématique applique ,recherche

Typology: Exercises

2021/2022

Uploaded on 01/04/2022

unknown user
unknown user 🇲🇦

1 document

1 / 35

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
MATH-F-306 Optimisation
chapitre 3
Algorithme du Simplexe
20 avril 2007
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Partial preview of the text

Download optimisation mathématique and more Exercises Optimization Techniques in Engineering in PDF only on Docsity!

MATH-F-306 – Optimisation

chapitre 3









Algorithme du Simplexe

20 avril 2007

MATH-F-306 3. Algorithme du Simplexe

RAPPEL :

  • Hypoth`eses initiales
    • PL de la forme suivante : max { c

T x : A x = b, x > 0 } (ou min)

  • s’il y a des in´egalit´es, ajouter des variables d’´ecart
  • b > 0 (sinon multiplier une contrainte par −1)
  • A contient une matrice identit´e (sinon voir s´eance suivante)
  • Algorithme du Simplexe

step 0 : (Initialisation)

Soit B un ensemble d’indices de base initiale tel que la solution de base primale

associ´ee x B

est r´ealisable.

Calculer x B

= A

− 1

B

b et y

T = c

T

B

A

− 1

B

step 1 : (Test d’Optimalit´e)

Calculer les coˆuts r´eduits c

T

N

− y

T A N

Si c

T

N

− y

T AN 6 0 alors la solution courante est optimale.

Sinon choisir r /∈ B tel que c r

− y

T a r

(→ xr entre en base)

step 2 : (Pivot)

D´eterminer la variable qui sort de la base (→ x s

S’il n’en existe aucune, alors le probl`eme est non born´e.

Mettre `a jour l’ensemble d’indices de base B

′ et d´eterminer les nouvelles so-

lutions de base x

′ et y

′ .

  • En pratique ...
    • A chaque it´eration, on ´ecrit le dictionnaire correspondant `a la base B :

x i

b i

j∈N

¯a ij

x j

∀ i ∈ B

z =

b 0 +

j∈N

¯cj xj

o`u :

bi =

A

− 1

B

b

i

¯aij =

−A

− 1

B

AN

ij

b 0

= c

T

B

A

− 1

B

b ¯c j

c

T

N

− c

T

B

A

− 1

B

A

N

j

  • on choisit la variable xr qui entre en base telle que ¯cr > 0
  • on d´etermine la variable s qui sort de la base : s = arg min

i:¯a ir

< 0

¯ bi

a ¯ir

  • R`egle de Bland
    • s’il y a deux ou plusieurs variables qui peuvent entrer en base, alors on choisit celle qui

a le plus petit indice ;

  • s’il y a deux ou plusieurs variables qui peuvent sortir de la base, alors on choisit celle

qui a le plus petit indice ;

MATH-F-306 – 3. Algorithme du Simplexe Exercice 3. 1

Exercice 3. 1

On considere le polyedre S de R

5 d´efini par les conditions suivantes :

x 1 + x 3 + x 5 = 2 ,

2 x 2

  • x 3

  • x 4

x 1 + x 2 + x 4 + 2 x 5 = 3 ,

x i

0 , i = 1,... , 5.

a. Le point x

∗ = (1, 1 , 1 , 1 , 0) est-il un point extrˆeme? Pourquoi?

b. Trouver les vecteurs u ∈ R

5 tels que x

∗ ± ε u ∈ S pour ε > 0 assez petit.

c. Trouver tous les points ¯x ∈ S de la forme x

∗ ± ε u qui ont au plus trois coordonn´ees non nulles. Ces points

¯x sont-ils des points extrˆemes? d´eg´en´er´es?

Solution :

a. On v´erifie d’abord que x

∗ appartient bien `a S.

On a que x est un point extrˆeme ⇔ x est un sommet

⇔ x v´erifie 5 in´egalit´es (lin. ind´ep.) `a l’´egalit´e

⇔ au plus 3 coordonn´ees de x sont non nulles

⇒ x

∗ = (1, 1 , 1 , 1 , 0) n’est pas un point extrˆeme (car il a 4 coord. non nulles)

b. x

∗ ± ε u ∈ S

1 + 1 + 0 ± ε · ( u 1

  • u 3

  • u 5

2 + 1 + 1 ± ε · ( 2 u 2

  • u 3

  • u 4

1 + 1 + 1 + 0 ± ε · ( u 1

  • u 2

  • u 4

  • 2 u 5

1 ± ε · ( u 1

1 ± ε · ( u 2

1 ± ε · ( u 3

1 ± ε · ( u 4

0 ± ε · ( u 5

u 1

  • u 3

  • u 5

2 u 2 + u 3 + u 4 = 0

u 1

  • u 2

  • u 4

  • 2 u 5

u 5 = 0

  • 2 u 5 = 0

u 3

= − u 1

2 u 2 − u 1 + u 4 = 0

u 1

  • u 2

  • u 4

Exercice 3. 1 3. Algorithme du Simplexe – MATH-F-

u 1 + 2 u 5 = 0

u 3

= − u 1

u 4

= − u 1

− u 2

2 u 2 − u 1 − u 1 − u 2 = 0

u 1

  • 2 u 2

      • 2 u 5

u 3 = − u 1

u 2

= 2 u 1

u 4 = − 3 u 1

⇔ u =

α

2 α

− α

− 3 α

o`u α ∈ R

c. On obtient les points x¯ suivants :

  • α = − 1 ⇒ ¯x =

0

B

B

B

B

@

1

1

1

1

0

1

C

C

C

C

A

0

B

B

B

B

@

− 1

− 2

1

3

0

1

C

C

C

C

A

=

0

B

B

B

B

@

0

− 1

2

4

0

1

C

C

C

C

A

→ pas bon (x /¯∈ S)

  • α = −

1

2

⇒ ¯x =

0

B

B

B

B

@

1

1

1

1

0

1

C

C

C

C

A

0

B

B

B

B

@

− 0. 5

− 1

  1. 5

  2. 5

0

1

C

C

C

C

A

=

0

B

B

B

B

@

  1. 5

0

  1. 5

  2. 5

0

1

C

C

C

C

A

→ OK

  • α = 1 ⇒ x¯ =

0

B

B

B

B

@

1

1

1

1

0

1

C

C

C

C

A

0

B

B

B

B

@

1

2

− 1

− 3

0

1

C

C

C

C

A

=

0

B

B

B

B

@

2

3

0

− 2

0

1

C

C

C

C

A

→ pas bon (x /¯∈ S)

  • α =

1

3

⇒ x¯ =

0

B

B

B

B

@

1

1

1

1

0

1

C

C

C

C

A

0

B

B

B

B

@

1 / 3

2 / 3

− 1 / 3

− 1

0

1

C

C

C

C

A

=

0

B

B

B

B

@

4 / 3

5 / 3

2 / 3

0

0

1

C

C

C

C

A

→ OK

On obtient donc 2 points extrˆemes qui sont tous les deux non d´eg´en´er´es (comme ils ont m = 3 ccoordonn´ees

MATH-F-306 – 3. Algorithme du Simplexe Exercice 3. 3

Exercice 3. 3

Soit le programme lin´eaire suivant :

min z = x 2

− 3 x 3

  • 2 x 5

s.t. : x 1

  • 3 x 2

− x 3

  • 2 x 5

− 2 x 2

  • 4 x 3

  • x 4

− 4 x 2 + 3 x 3 + 8 x 5 + x 6 = 10

x j

0 ∀ j = 1,... , 6.

La solution optimale de ce probl`eme est x = (0, 4 , 5 , 0 , 0 , 11).

a. Donner l’ensemble des indices de base B associ´e `a la solution optimale.

b. Quelle est la solution de base duale y associ´ee `a B?

c. Prouver l’optimalit´e des solutions x et y.

d. Calculer les coˆuts r´eduits des variables primales hors base.

Solution :

a. B = { 2 , 3 , 6 }

b. On prend y

T = c

T

B

A

− 1

B

A

B

⇒ A

− 1

B

det (A B

c 11

−c 21

c 31

−c 12 c 22 −c 32

c 13

−c 23

c 33

⇒ y

T

=

c. • On v´erifie bien que x est primal-r´ealisable → OK

  • Par construction on sait d´ej`a que c

T x = y

T b.

En effet c

T x = 4 − 15 = − 11

y

T b = −

7

5

48

5

55

5

= − 11 → OK

MATH-F-306 – 3. Algorithme du Simplexe Exercice 3. 4

Exercice 3. 4

R´esoudre le programme lin´eaire suivant en utilisant l’algorithme du simplexe :

max z = 5 x 2 + 4 x 3 + 3 x 6

s.t. : x 1

  • 2 x 2

  • 3 x 3

  • x 6

4 x 2

  • x 3

  • x 5

  • 2 x 6

3 x 2

  • 4 x 3

  • x 4

  • 2 x 6

x j

0 ∀ j = 1,... , 6

R´eponse : solution optimale x

∗ = ( 0, 2 , 0 , 0 , 1 , 1 ) de valeur z

∗ = 13

Solution :

On voit qu’une premi`ere base est : B = { x 1

, x 4

, x 5

Premi`ere solution de base r´ealisable :

x 1

= 5 − 2 x 2

− 3 x 3

− x 6

x 4

= 8 − 3 x 2

− 4 x 3

− 2 x 6

x 5 = 11 − 4 x 2 − x 3 − 2 x 6

z = 0 + 5 x 2 + 4 x 3 + 3 x 6

It´eration 1 :

x 2

5

2

1

2

x 1

3

2

x 3

1

2

x 6

x 4 =

1

2

3

2

x 1 +

1

2

x 3 −

1

2

x 6

x 5

= 1 + 2 x 1

  • 5 x 3

z =

25

2

5

2

x 1

7

2

x 3

1

2

x 6

It´eration 2 :

x 2

= 2 − 2 x 1

− 2 x 3

  • x 4

x 6 = 1 + 3 x 1 + x 3 − 2 x 4

x 5

= 1 + 2 x 1

  • 5 x 3

z = 13 − x 1

− 3 x 3

− x 4

Tous les coˆuts r´eduits sont n´egatifs ou nuls.

⇒ solution optimale x

∗ = ( 0, 2 , 0 , 0 , 1 , 1 ) de valeur z

∗ = 13

  • Optimisation – MATH-F-
    1. Algorithme du Simplexe MATH-F-
  • Exercice 3 2 3. Algorithme du Simplexe – MATH-F-
  • Exercice 3 4 3. Algorithme du Simplexe – MATH-F-

Exercice 3. 5 3. Algorithme du Simplexe – MATH-F-

It´eration 2 :

t 1 = 1 −

7

2

x 2 +

1

2

t 3

t 2

4

3

29

6

x 2

5

6

t 3

4

3

t 4

x 3 =

2

3

4

3

x 2 −

1

3

t 3 +

1

3

t 4

x 1

4

3

5

6

x 2

1

6

t 3

1

3

t 4

z =

26

3

29

6

x 2

11

6

t 3

2

3

t 4

It´eration 3 :

t 1 =

1

29

21

29

t 2 −

3

29

t 3 +

28

29

t 4

x 2

8

29

6

29

t 2

5

29

t 3

8

29

t 4

x 3

30

29

8

29

t 2

3

29

t 3

1

29

t 4

x 1 =

32

29

5

29

t 2 −

9

29

t 3 −

3

29

t 4

z = 10 − t 2

− t 3

4

Tous les coˆuts r´eduits sont n´egatifs ou nuls.

⇒ solution optimale x

∗ = (

32

29

8

29

30

29

) de valeur z

∗ = 10

MATH-F-306 – 3. Algorithme du Simplexe Exercice 3. 6

Exercice 3. 6

R´esoudre le programme lin´eaire suivant en utilisant l’algorithme du simplexe :

min z = 2 x 1

− 3 x 2

− 4 x 3

  • x 4

s.t. : x 1

  • 3 x 2

− x 3

− 3 x 4

2 x 1

  • x 2

  • x 3

  • 3 x 4

− 4 x 2 + 2 x 3 + 6 x 4 6 4

x j

0 ∀ j = 1,... , 4

R´eponse : solution optimale x

∗ = ( 0, 2 , 6 , 0 ) de valeur z

∗ = − 30

Solution :

On ajoute les variables d’´ecart t 1

, t 2

, t 3

afin d’obtenir le programme lin´eaire :

min z = 2 x 1 − 3 x 2 − 4 x 3 + x 4

s.t. : x 1

  • 3 x 2

− x 3

− 3 x 4

− t 1

2 x 1 + x 2 + x 3 + 3 x 4 + t 2 = 8

− 4 x 2

  • 2 x 3

  • 6 x 4

  • t 3

xj > 0 ∀ j = 1,... , 4

t i

0 ∀ i = 1,... , 3

Le terme de droite de la premi`ere contrainte est n´egatif, multiplions cette contrainte par (−1) :

min z = 2 x 1

− 3 x 2

− 4 x 3

  • x 4

s.t. : − x 1

− 3 x 2

  • x 3

  • 3 x 4

  • t 1

2 x 1 + x 2 + x 3 + 3 x 4 + t 2 = 8

− 4 x 2

  • 2 x 3

  • 6 x 4

  • t 3

x j

0 ∀ j = 1,... , 4

ti > 0 ∀ i = 1,... , 3

On voit qu’une premi`ere base est : B = { t 1 , t 2 , t 3 }

Premi`ere solution de base r´ealisable :

t 1 = 2 + x 1 + 3 x 2 − x 3 − 3 x 4

t 2

= 8 − 2 x 1

− x 2

− x 3

− 3 x 4

t 3 = 4 + 4 x 2 − 2 x 3 − 6 x 4

z = 0 + 2 x 1 − 3 x 2 − 4 x 3 + x 4

MATH-F-306 – 3. Algorithme du Simplexe Exercice 3. 7

Exercice 3. 7

R´esoudre le programme lin´eaire suivant en utilisant l’algorithme du simplexe :

max z = x 1 + 3 x 2 − x 3

s.t. : 2 x 1

  • 2 x 2

− x 3

3 x 1 − 2 x 2 + x 3 6 10

x 1

− 3 x 2

  • x 3

xj > 0 ∀ j = 1,... , 3

Solution :

On ajoute les variables d’´ecart t 1

, t 2

et t 3

afin d’obtenir le programme lin´eaire :

max z = x 1

  • 3 x 2

− x 3

s.t. : 2 x 1

  • 2 x 2

− x 3

  • t 1

3 x 1

− 2 x 2

  • x 3

  • t 2

x 1 − 3 x 2 + x 3 + t 3 = 10

x j

0 ∀ j = 1,... , 3

ti > 0 ∀ i = 1,... , 3

On voit qu’une premi`ere base est : B = { t 1

, t 2

, t 3

Premi`ere solution de base r´ealisable :

t 1

= 10 − 2 x 1

− 2 x 2

  • x 3

t 2

= 10 − 3 x 1

  • 2 x 2

− x 3

t 3

= 10 − x 1

  • 3 x 2

− x 3

z = 0 + x 1

  • 3 x 2

− x 3

It´eration 1 :

t 1

10

3

10

3

x 2

5

3

x 3

2

3

t 2

x 1 =

10

3

2

3

x 2 −

1

3

x 3 −

1

3

t 2

t 3

20

3

7

3

x 2

2

3

x 3

1

3

t 2

z =

10

3

11

3

x 2

4

3

x 3

1

3

t 2

It´eration 2 :

x 2 = 1 +

1

2

x 3 −

3

10

t 1 +

1

5

t 2

x 1

1

5

t 1

1

5

t 2

t 3

1

2

x 3

7

10

t 1

4

5

t 2

z = 7 +

1

2

x 3 −

11

10

t 1 +

2

5

t 2

Exercice 3. 7 3. Algorithme du Simplexe – MATH-F-

La variable qui devrait entrer en base est x 3

, mais on peut augmenter x 3

→ ∞ tout en restant r´ealisable.

⇒ le probl`eme est non born´e

En effet, on v´erifie que :

x (λ) =

  • λ ·

1

2

est r´ealisable pour tout λ ∈ R.

Et la valeur de la fonction objective : c

T x (λ) = 7 +

1

2

· λ → ∞ si λ → ∞

Donc r = ( 0,

1

2

, 1 ) est un rayon tel que c

T r > 0!