Université des Sciences et de la Technologies d’Oran «
Mohamed Boudiaf »
Faculté : Génie Electrique
Département : Automatique
Spécialité : Automatique et Informatique Industriel
Niveau : M1
Compte rendu du tp de Optimisation
Présenté par:
Benyettou Abdenour.
Benettayeb Imene.
Bouberka Abdelkader.
- Responsables : M. A. Meche
Mme H.
BOUSSADIA
Année universitaire : 2020-2021
TP N°1
Opérations sur les vecteurs et les matrices
-Représentation les séquences qui donnée :
>> a=[1 5 9 2 8 3 4 7 6]
a=
1 5 9 2 8 3 4 7 6
>> b=[0:1:9]
b=
0 1 2 3 4 5 6 7 8 9
>> c=[0:1:15,21:1:38]
c=
Columns 1 through 27
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 21 22 23 24 25 26 27
29 30 31
Columns 28 through 34
32 33 34 35 36 37 38
>> d=[0:0.1:12]
d=
Columns 1 through 16
0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1.0000 1.1000
1.2000 1.3000 1.4000 1.5000
Columns 17 through 32
1.6000 1.7000 1.8000 1.9000 2.0000 2.1000 2.2000 2.3000 2.4000 2.5000 2.6000
2.7000 2.8000 2.9000 3.0000 3.1000
Columns 33 through 48
3.2000 3.3000 3.4000 3.5000 3.6000 3.7000 3.8000 3.9000 4.0000 4.1000 4.2000
4.3000 4.4000 4.5000 4.6000 4.7000
Columns 49 through 64
4.8000 4.9000 5.0000 5.1000 5.2000 5.3000 5.4000 5.5000 5.6000 5.7000 5.8000
5.9000 6.0000 6.1000 6.2000 6.3000
Columns 65 through 80
6.4000 6.5000 6.6000 6.7000 6.8000 6.9000 7.0000 7.1000 7.2000 7.3000 7.4000
7.5000 7.6000 7.7000 7.8000 7.9000
Columns 81 through 96
8.0000 8.1000 8.2000 8.3000 8.4000 8.5000 8.6000 8.7000 8.8000 8.9000 9.0000
9.1000 9.2000 9.3000 9.4000 9.5000
Columns 97 through 112
9.6000 9.7000 9.8000 9.9000 10.0000 10.1000 10.2000 10.3000 10.4000 10.5000 10.6000
10.7000 10.8000 10.9000 11.0000 11.1000
Columns 113 through 121
11.2000 11.3000 11.4000 11.5000 11.6000 11.7000 11.8000 11.9000 12.0000
2)programme matlab :
clear all
close all
clc
A=[1 2 3]';
B=[-1 0 4]';
d=A'*B
f=A*B'
m=A*B'*B
-Résulte :
A=
1
2
3
B=
-1
0
4
d=
11
f=
-1 0 4
-2 0 8
-3 0 12
m=
17
34
51
-2)matrice a :
a=[1 5 3;4 2 6;7 8 9]
a=
1 5 3
4 2 6
7 8 9
a) les valeusr propres de la matrice a :
eig(a)
ans =
15.9690
-1.2384
-2.730
-b) Déterminant de la matrice a :
w=det(a)
ans =
54
-l’inverse de la matrice a :
c=a'
c=
1 4 7
5 2 8
3 6 9
-c) programme Matlab permettant de tester la positivité de cette matrice :
a=[1 5 3;4 2 6;7 8 9]
eig(a)
a=
1 5 3
4 2 6
7 8 9
ans =
15.9690
-1.2384
-2.7307
-Les valeurs propres est négative donc la matrice a est négative (n’est pas positive)
TP N°2 :
Optimisation sans contraintes
1- fonction cout f ( X ) quadratique sous la forme :
f ( X )=x 2+ y 2
a) Dessine de cette fonction à l'aide de la fonction mesh. :
-programme en matlab qui donne le dessine :
clear all clc
[x,y]=meshgrid(-8:0.1:8);
f=x.^2+y.^2
figure(1)
mesh(f),grid on
xlabel ( 'x' )
ylabel ( 'y' )
zlabel ( 'z' )
(Dessine de la fonction 1)
b)le point qui minimise cette fonction en utilisant la méthode du gradient
(pas fixe ) :
i=1;
while (f(i)>f(i+1))
i=i+1
end
x(i)
y(i)
-résulte :
ans =
-8
ans =
0
2-)a fonction :
f ( X )=x (2+ x ) + y 2 +4
a) Dessine de cette fonction à l'aide de la fonction mesh. :
-programme en matlab qui donne le dessine :
clear all clc
[x,y]=meshgrid(-8:0.1:8);
f1=x*(2+x)+y.^2+4
figure(2)
mesh(f1);grid on
xlabel ( 'x' )
ylabel ( 'y' )
zlabel ( 'z' )
(Dessine de la fonction 1)
b) le point qui minimise cette fonction en utilisant la méthode du gradient
(pas fixe ) :
i=1;
while (f1(i)>f1(i+1))
i=i+1
end
x(i)
y(i)
-résulte :
ans =
-8
ans =
0
Partie théorique
1-L’énoncé du problème
Un restaurant fabriquer deux type de plat A (big size) et B (normal size) à base de fruit de mer.
Le plat A nécessité 2 kg de fruit de mer et 1000 g de légume . Il est vendu 50 €.
Le plat B nécessite 1 kg de fruit mer et 500 g de légume. Il est vendu 25 €.
Par jour, nous pouvons fournir que 600 kg de poisson et 400 kg de légume.
=> Combien de plat peut-on servir pour un max revenus ?
2- L’identification des variables :
x: la plate grande taille A
y: le plat taille normal B
3-La formulation mathématique :
La somme du fruit mer à utiliser pour le plat x et y ne doit pas dépasser 600 kg par jour :
2x + y ≤ 600
La somme des légumes à utiliser pour le plat x et y ne doit pas dépasser 400 kg par jour :
1x + 0.5y ≤ 400
Le nombre de légumes fournit par jour ne peut pas être négatif :
y≥0
Le nombre de fruit de mer fournit par jour ne peut pas être négatif :
x≥0
Le chef de restaurant veut maximiser ses revenus. Il vend plat x 50 € et plat y 25 € La fonction à optimiser
est donc :
R=50x+25y (R : Revenus)
4- La résolution du problème d’optimisation par la méthode du simplexe :
Notre fonction cout sous la forme canonique :
R=-50X-25Y
2X+Y+Z=600
X+0.5Y+D=400
X, Y, Z, D ≥ 0
/ X Y Z D B B/X
L1 2 1 1 0 600 600/2 =300
L2 1 1/2 0 1 400 400/1 = 400
L3 -50 -25 0 0 0 0
Construction deuxième tableaux :
/ X Y Z D B B/Y
X=L1 1 1/2 1/2 0 300 150
Y=L2 0 0 -1/2 1 100 -50
L3=R 0 0 25 0 15000 0
Lorsque on a tous les éléments de la dernier ligne positive on arrêt est notre solution optimale c’est
X=300
Y=100
Avec un revenus maximal R= 17500 € (par jour)