Sunteți pe pagina 1din 30

PROBLEME REZOLVATE pt OPTIMIZARE

CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 1-1.

(3 puncte)

Dou fabrici F1 i F2
Fabrica
Centrul
Disponibil
aprovizioneaz trei cenC1
C2
C3
tre C1 , C2 , C3 pltindu-se
F1
3
4
3
40
transportul pe tona de
F2
2
3
5
60
marf astfel: De la F1 la
Necesar
20
30
50
100/100
cele trei centre 3, 4 respectiv 3 Euro, iar de la F2 la cele trei centre 2, 3 respectiv 5 Euro. La fabrica
F1 se produce 40 de tone de marf, iar la F2 se produce 60 de tone. Centrele
solicit 20, 30 respectiv 50 de tone de marf. S se ntocmeasc un plan de
transport de cost minim.
Rezolvare. Este o problem de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x23 ) = 3x11 + 4x12 + 3x13 + 2x21 + 3x22 + 5x23 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12 +x13

x21 +x22

x11
+x21

x12
+x22

x13

+x23

+x23

=
=
=
=
=

40
60
20
30
50

unde toate variabilele sunt numere pozitive:


x11 , x12 , x13 , x21 , x22 , x23 0.
Prin urmare se dau comen- >> f=[3 4 3 2 3 5];
zile Matlab:
>> Aeq=[ 1 1 1 0 0 0;
0 0 0 1 1 1;
1 0 0 1 0 0;
0 1 0 0 1 0;
0 0 1 0 0 1];
>> beq=[40 60 20 30 50];
>> lb=zeros(6,1);
>> [xmin fmin]=linprog(f,[],[],Aeq,beq,lb)
xmin =
0.0000
0.0000
40.0000
20.0000
30.0000
10.0000
fmin =
300.0000

Problema 1-2.
S se calculeze minimul funciei:

(3 puncte)

f (x) = x4 3x3 + x2 1,
pe intervalul [2, 3]. S se precizeze att valoarea minim ct i valoarea argumentului n care funcia atinge aceast valoare minim!
Rezolvare.
n editor se editeaz ierul fun0102.m

function y = fun0102(x)
y = x^4-3*x^3+x^2-1;

apoi se d comanda:

>> [xmin fmin] = fminbnd(@fun0102,-2,3)


xmin =
2.0000
fmin =
-5.0000

Problema 1-3.
S se calculeze maximul funciei f , unde

(3 puncte)

f (x, y, z) = 2x + 3y + 4z,
cu urmtoarele restricii asupra

2x
x

variabilelor:
+y
y
+2y

+z
2z
+3z
x, y, z

7
1

3
0.

S se precizeze att aceast valoare maxim ct i valoarea argumentelor n care


funcia atinge aceast valoare!
Rezolvare.
Avem o problem de programare liniar, cu restricii liniare de tip inegalitate.

>> f=-[2; 3; 4];


>> A=[1 1 1; -2 1 2; -1 2 3];
>> b=[ 7; 1; 3];
>> lb=zeros(3,1);
>> [xmax fval] = linprog(f,A,b,[],[],lb);
Optimization terminated.
>> xmax
xmax =
4.5000
0.0000
2.5000
>> -fval
ans =
19.0000

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 2-1.

(3 puncte)

Trei depozite D1 ,
Depozitul
Centrul
Disponibil
D2 i D3 aproviC1
C2
C3
zioneaz trei centre
D1
7
7
8
170
C1 , C2 , C3 pltinduD2
3
4
5
280
se transportul pe
D3
2
2
3
150
tona de marf astfel:
Necesar
120
230
250
600/600
De la D1 la cele trei
centre 7, 7 respectiv 8 Euro, de la D2 la cele trei centre 3, 4 respectiv 5 Euro,
iar de la D3 la cele trei centre 2, 2 respectiv 3 Euro. La depozitul D1 se a 170
de tone de marf, la D2 280, iar la D3 se a 150 de tone. Centrele solicit 120,
230 respectiv 250 de tone de marf. S se ntocmeasc un plan de transport de
cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x33 ) = 7x11 +7x12 +8x13 +3x21 +4x22 +5x23 +2x31 +2x32 +3x33 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12 +x13

x21 +x22 +x23

x11

+x21
x12

+x22
x13

x31
+x31

+x32

+x33

+x32
+x23

+x33

=
=
=
=
=
=

170
280
150
120
230
250

unde variabilele sunt pozitive: x11 , x12 , x13 , x21 , x22 , x23 , x31 , x32 , x33 0.
Prin urmare se dau comen- >> f=[7 7 8 3 4 5 2 2 3];
zile Matlab:
>> Aeq=[ 1 1 1 0 0 0 0 0 0;
0 0 0 1 1 1 0 0 0;
0 0 0 0 0 0 1 1 1;
1 0 0 1 0 0 1 0 0;
0 1 0 0 1 0 0 1 0;
0 0 1 0 0 1 0 0 1];
>> beq=[170 280 150 120 230 250];
>> lb=zeros(9,1);
>> [xmin fmin]=linprog(f,[],[],Aeq,beq,lb)
xmin =
0.0000
80.6441
89.3559
120.0000
79.5772
80.4228
0.0000
69.7787
80.2213
fmin =
2.7400e+003

Problema 2-2.
S se calculeze maximul funciei:

(3 puncte)

f (x) = x4 3x3 + x2 1,
pe intervalul [2, 3]. S se precizeze att valoarea maxim ct i valoarea argumentului n care funcia atinge aceast valoare maxim!
Rezolvare.
n editor se editeaz ierul fun0202.m

function y = fun0202(x)
y = -(-x^4-3*x^3+x^2-1);

apoi se d comanda:

>> [xmax, fval] = fminbnd(@fun0202,-2,3);


>> xmax
xmax =
-2.0000
>> -fval
ans =
10.9996

Problema 2-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (0, 0, 1), unde
f (x, y, z) = cos(x2 2xy yz + 2z 2 4z),
cu urmtoarele restricii asupra variabilelor:

z
x +y
x +2y
+z

2x y 3z

2
3
4.

S se precizeze att aceast valoare minim ct i valoarea argumentelor n care


funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar cu restricii liniare de tip
inegalitate.
n editor se editeaz i- function f = fun0203(x)
erul fun0203.m, funcia f=cos(x(1)^2-2*x(1)*x(2)-x(2)*x(3)
+2*x(3)^2-4*x(3));
obiectiv (de optimizat)
Apoi se dau comenzile:

>> x0=[0 0 -1];


>> A=[ 1 1 -1;
-1 2 1;
2 -1 -3];
>> b=[2 3 4];
>> [xmin fmin]=fmincon(@fun0203,x0,A,b)
xmin =
0.1625
0.8746
1.0106
fmin =
-1.0000

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 3-1.

(3 puncte)

Dou fabrici F1 i F2 aprovizioneaFabrica


Centrul
Disponibil
z dou centre C1 , C2 pltindu-se
C1
C2
transportul pe tona de marf astF1
5
6
40
fel: De la F1 la cele dou centre
F2
7
8
60
5 respectiv 6 Euro, iar de la F2 la
Necesar
20
80
100/100
cele dou centre 7 respectiv 8 Euro.
La fabrica F1 se produce 40 de tone de marf, iar la F2 se produce 60 de tone.
Centrele solicit 20 respectiv 80 de tone de marf. S se ntocmeasc un plan
de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x33 ) = 5x11 + 6x12 + 7x21 + 8x22 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12

x21 +x22
x
+x

11
21

x12
+x22

=
=
=
=

40
60
20
80

unde toate variabilele sunt numere pozitive:


x11 , x12 , x21 , x22 0.
Prin urmare se dau comen- >> f=[5 6 7 8];
zile Matlab:
>> Aeq=[ 1 1 0 0;
0 0 1 1;
1 0 1 0;
0 1 0 1];
>> beq=[40 60 20 80];
>> lb=zeros(4,1);
>> [xmin fmin]=linprog(f,[],[],Aeq,beq,lb)
Optimization terminated.
xmin =
3.5545
36.4455
16.4455
43.5545
fmin =
700

Problema 3-2.
S se calculeze minimul funciei f , n jurul lui (0, 0) unde

(3 puncte)

f (x, y) = x2 + 2xy + 2y 2 4x 3y,


cu urmtoarele restricii asupra variabilelor:
{
2
+y 20
x
3 x +2y
1
{
0 x 5
0 y 6.
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia atinge aceast valoare!
Rezolvare. Este o problem de optimizare neliniar cu restricii neliniare de
tip inegalitate.
n editor se editeaz i- function f = fun0302(x)
erul fun0302.m, funcia f=x(1)^2+2*x(1)*x(2)+2*x(2)^2
-4*x(1)-3*x(2);
obiectiv (de optimizat)
n editor se editeaz ie- function [c ceq] = con0302( x )
rul con0302.m, al restrici- c =[x(1)^2+x(2)-20;
-3*sqrt(x(1))-2*x(2)+1];
ilor neliniare:
ceq=[];
Apoi se dau comenzile:

>>
>>
>>
>>

x0=[0
lb=[0
ub=[5
[xmin

0];
0];
6];
fmin]=fmincon(@fun0302,x0,[],[],
[],[],lb,ub,@con0302)

xmin =
2.0000
0
fmin =
-4.0000

Problema 3-3.
(3 puncte)
S se calculeze minimul funciei q, n vecintatea punctului (0, 0, 0), unde
q(x, y, z) = x2 3xy yz + 2z 2 4z,
cu urmtoarele restricii asupra variabilelor:

z
x +y
x +2y
+z

2x y 3z

2
3
4.

S se precizeze att aceast valoare minim ct i valoarea argumentelor n care


funcia f atinge valoare sa minim!
Rezolvare. Avem o problem de programare ptratic cu restricii liniare de
tip inegalitate. Avem

1(
x y
x2 3xy yz + 2z 2 =
2

2
3
0

x
3
0
0 1 y
1
4
z

Prin urmare se dau comen- >> H=[ 2 -3 0;


zile:
-3 0 -1;
0 -1 2];
>> f=[0 0 -4];
>> A=[ 1 1 -1;
-1 2 1;
2 -1 -3];
>> b=[2 3 4];
>> x0=[0 0 0];
>> [xmin qmin]=quadprog(H,f,A,b,
[],[],[],[],x0)
xmin =
2.8333
1.6667
2.5000
qmin =
-14.0556

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 4-1.

(3 puncte)

Trei depozite D1 , D2 i D3
Depozitul
Centrul
Disponibil
aprovizioneaz dou centre
C1
C2
C1 , C2 pltindu-se transportul
D1
8
8
170
pe tona de marf astfel: De
D2
7
6
280
la D1 la cele dou centre 8
D3
3
4
150
respectiv 8 Euro, de la D2 la
Necesar
370
230
600/600
cele dou centre 7 respectiv 6
Euro, iar de la D3 la cele dou centre 3 respectiv 4 Euro. La depozitul D1 se
a 170 de tone de marf, la D2 280, iar la D3 se a 150 de tone. Centrele
solicit 170, 280 respectiv 150 de tone de marf. S se ntocmeasc un plan de
transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x32 ) = 8x11 + 8x12 + 7x21 + 6x22 + 3x31 + 4x32 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12

x21 +x22

x11

x31
+x31

+x21
x12

+x22

+x32
+x32

=
=
=
=
=

170
280
150
370
230

unde variabilele sunt pozitive: x11 , x12 , x21 , x22 , x31 , x32 , 0.
Prin urmare se dau comen- >> f=[8 8 7 6 3 4];
zile Matlab:
>> Aeq=[ 1 1 0 0 0 0;
0 0 1 1 0 0;
0 0 0 0 1 1;
1 0 1 0 1 0;
0 1 0 1 0 1];
>> beq=[170 280 150 370 230];
>> lb=zeros(6,1);
>> [xmin fmin]=linprog(f,[],[],Aeq,beq,lb)
Optimization terminated.
xmin =
170.0000
0.0000
50.0000
230.0000
150.0000
0.0000
fmin =
3.5400e+003

Problema 4-2.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (5, 0, 1), unde
f (x, y, z) = sin(x3 + 2xz) + cos(xy + y 2 ).
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar fr restricii.
Se
editeaz
ierul function f = fun0402(x)
fun0402.m, funcia obiec- f=sin(x(1)^3 + 2*x(1)*x(3))
tiv (de optimizat)
+ cos(x(1)*x(2) + x(2)^2);
Apoi se dau comenzile:

>> x0=[5 0 -1];


>> [xmin fmin]=fminunc(@fun0402,x0)
xmin =
6.0012
0.0000
-0.8629
fmin =
-6.5059e-014

Observaie. Eroare de Matlab. Minimul corect este 2. Acest fapt se vede


imediat dac lansm comanda cu x0 = (5, , 1).

Problema 4-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (0, 0, 0), unde
f (x, y, z) = x + y + z,
cu urmtoarele restricii asupra variabilelor:
2
x +y 2 +z 2 100
x +2y
+z
3

2x y 3z
4.
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Avem o problem de optimizare cu restricii neliniare de tip inegalitate i cu restricii liniare de tip inegalitate.
n editor se editeaz i- function f = fun0403(x)
erul fun0403.m, funcia f=x(1)+x(2)+x(3);
obiectiv (de optimizat)
n editor se editeaz ie- function [c ceq] = con0403( x )
rul con0403.m, al restrici- c =[x(1)^2+x(2)^2+x(3)^2-100];
ceq=[];
ilor neliniare:

Apoi se dau comenzile:

>> x0=[0 0 0];


>> A=[-1 2 1;
2 -1 -3];
>> b=[3 4];
>> [xmin fmin]=fmincon(@fun0403,x0,A,b,
[],[],[],[],@con0403)
xmin =
-7.1878
-5.4586
-4.3057
fmin =
-16.9521

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 5-1.

(3 puncte)

Dou fabrici F1 i F2
Fabrica
Centrul
Disponibil
aprovizioneaz trei cenC1
C2
C3
tre C1 , C2 , C3 pltindu-se
F1
2
3
4
45
transportul pe tona de
F2
5
6
7
55
marf astfel: De la F1 la
Necesar
20
30
40
90/100
cele trei centre 2, 3 respectiv 4 Euro, iar de la F2 la cele trei centre 5, 6 respectiv 7 Euro. La fabrica
F1 se produce 45 de tone de marf, iar la F2 se produce 55 de tone. Centrele
solicit doar 20, 30 respectiv 40 de tone de marf. S se ntocmeasc un plan
de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x23 ) = 2x11 + 3x12 + 4x13 + 5x21 + 6x22 + 7x23 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12 +x13

x21 +x22

x11
+x21

x12
+x22

x13

+x23

+x23

=
=
=

45
55
20
30
40

unde toate variabilele sunt numere pozitive:


x11 , x12 , x13 , x21 , x22 , x23 0.
Prin urmare se dau comen- >> f=[2 3 4 5 6 7];
zile Matlab:
>> A =[ 1 1 1 0 0 0;
0 0 0 1 1 1];
>> b =[45 55];
>> Aeq=[ 1 0 0 1 0 0;
0 1 0 0 1 0;
0 0 1 0 0 1];
>> beq=[20 30 40];
>> lb=zeros(6,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
Optimization terminated.
xmin =
9.1317
15.0570
20.8113
10.8683
14.9430
19.1887
fmin =
425.0000

Problema 5-2.
S se calculeze maximul funciei:

(3 puncte)

f (x) =

1 x4
,
x4 x2 + 1

pe intervalul [2, 3]. S se precizeze att valoarea maxim ct i valoarea argumentului n care funcia atinge aceast valoare maxim!
Rezolvare.
n editor se editeaz ierul fun0502.m

function y = fun0502(x)
y = -(1-x^4)/(x^4-x^2+1);

apoi se d comanda:

>> [xmin fval] = fminbnd(@fun0502,-2,3);


xmin =
-0.5176
>> -fval
ans =
1.1547

Problema 5-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (0, 1, 1), unde
f (x, y, z) = x + 3y + 4z,
cu urmtoarele restricii asupra variabilelor:
2
x +y 2 +z 2 100
x +2y
+z
3

2x +y +3z =
4.
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Avem o problem de optimizare cu restricii neliniare de tip inegalitate i cu restricii liniare de tip inegalitate i egalitate.
n editor se editeaz i- function f = fun0503(x)
erul fun0503.m, funcia f=x(1)+3*x(2)+4*x(3);
obiectiv (de optimizat)
n editor se editeaz ie- function [c ceq] = con0503( x )
rul con0503.m, al restrici- c =[x(1)^2+x(2)^2+x(3)^2-100];
ceq=[];
ilor neliniare:

Apoi se dau comenzile:

>>
>>
>>
>>
>>
>>

x0=[0 1 1];
A=[-1 2 1];
b=[3];
Aeq= [2 1 3];
beq=[4];
[xmin fmin]=fmincon(@fun0503,x0,A,b,
Aeq,beq,[],[],@con0503)
xmin =
6.7082
-7.3852
-0.6770

fmin =
-18.1557

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 6-1.

(3 puncte)

Dou fabrici F1 i F2
Fabrica
Centrul
Disponibil
aprovizioneaz
trei
C1
C2
C3
centre
C1 , C2 , C3
F1
5
7
8
450
pltindu-se transporF2
9
4
6
600
tul pe tona de marf
Necesar
250
300
400
950/1050
astfel: De la F1 la cele
trei centre 5, 7 respectiv 8 Euro, iar de la F2 la cele trei centre 9, 4 respectiv 6
Euro. La fabrica F1 se produce 450 de tone de marf, iar la F2 se produce 600
de tone. Centrele solicit doar 250, 300 respectiv 400 de tone de marf. S se
ntocmeasc un plan de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x23 ) = 5x11 + 7x12 + 8x13 + 9x21 + 4x22 + 6x23 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12 +x13

x21 +x22

x11
+x21

x12
+x22

x13

+x23

+x23

=
=
=

450
600
250
300
400

unde toate variabilele sunt numere pozitive:


x11 , x12 , x13 , x21 , x22 , x23 0.
Prin urmare se dau comen- >> f=[5 7 8 9 4 6];
zile Matlab:
>> A =[ 1 1 1 0 0 0;
0 0 0 1 1 1];
>> b =[450 600];
>> Aeq=[ 1 0 0 1 0 0;
0 1 0 0 1 0;
0 0 1 0 0 1];
>> beq=[250 300 400];
>> lb=zeros(6,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
Optimization terminated.
xmin =
250.0000
0.0000
100.0000
0.0000
300.0000
300.0000
fmin =
5.0500e+003

Problema 6-2.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (5, 5, 1), unde
f (x, y, z) = sin(x3 + 2xz) + cos(xy + y 2 ).
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar fr restricii.
Se
editeaz
ierul function f = fun0602(x)
fun0602.m, funcia obiec- f=sin(x(1)^3+2*x(1)*x(3))
tiv (de optimizat)
+ cos(x(1)*x(2)+x(2)^2);
Apoi se dau comenzile:

>> x0=[-5 5 -1];


>> [xmin fmin]=fminunc(@fun0602,x0)
xmin =
-4.8837
6.3645
-0.8287
fmin =
-2.0000

Problema 6-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (0, 0, 1), unde
f (x, y, z) = x2 y 3 + z 4 ,
cu urmtoarele restricii asupra variabilelor:
{
2x2 + xy 5
3
x +yz = 1
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar cu restricii neliniare de
tip inegalitate i egalitate.
n editor se editeaz i- function f = fun0603(x)
erul fun0603.m, funcia f=x(1)^2 - x(2)^3 + x(3)^4;
obiectiv (de optimizat)
n editor se editeaz ie- function [c ceq] = con0603( x )
rul con0603.m, al restrici- c =[2*x(1)^2 + x(1)*x(2)-5];
ceq =[x(1)^3 + x(2) - x(3) - 1];
ilor neliniare:

Apoi se dau comenzile:

>> x0=[0 0 -1];


>> [xmin fmin]=fmincon(@fun0603,x0,[],[],
[],[],[],[],@con0603)
xmin =
0.0000
2.8086
1.8086

fmin =
-11.4552

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 7-1.

(3 puncte)

Trei fabrici F1 , F2 i F3 aproFabrica


Centrul
Disponibil
vizioneaz dou centre C1 , C2
C1
C2
pltindu-se transportul pe tona
F1
5
7
350
de marf astfel: De la F1 la cele
F2
8
9
300
dou centre 5 respectiv 7 Euro,
F3
4
6
550
de la F2 la cele dou centre 8
Necesar
550
500 1050/1200
respectiv 9 Euro, iar de la F3 la
cele dou centre 4 respectiv 6 Euro. La fabrica F1 se produce 350 de tone de
marf, la F2 se produce 300 de tone de marf, iar la F3 se produce 550 de tone.
Centrele solicit doar 550 respectiv 500 de tone de marf. S se ntocmeasc un
plan de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x32 ) = 5x11 + 7x12 + 8x21 + 9x22 + 4x31 + 6x32 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12

x21 +x22

x11

x31
+x31

+x21
x12

+x22

+x32
+x32

=
=

350
300
550
550
500

unde variabilele sunt pozitive: x11 , x12 , x21 , x22 , x31 , x32 , 0.
Prin urmare se dau comen- >> f=[5 7 8 9 4 6];
zile Matlab:
>> A =[ 1 1 0 0 0 0;
0 0 1 1 0 0;
0 0 0 0 1 1];
>> b =[350 300 550];
>> Aeq=[ 1 0 1 0 1 0;
0 1 0 1 0 1];
>> beq=[550 500];
>> lb=zeros(6,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
Optimization terminated.
xmin =
206.2053
143.7947
0.0000
150.0000
343.7947
206.2053
fmin =
6.0000e+003

Problema 7-2.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (2, 2, 2), unde
f (x, y, z) = cos(x4 + 2yz) + cos(xy + y 2 ).
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar fr restricii.
Se
editeaz
ierul function f = fun0702(x)
fun0702.m, funcia obiec- f=cos(x(1)^4 + 2*x(2)*x(3))
tiv (de optimizat)
+ cos(x(1)*x(2) + x(2)^2);
Apoi se dau comenzile:

>> x0=[2 2 2];


>> [xmin fmin]=fminunc(@fun0702,x0)
xmin =
1.6035
2.3712
1.9183
fmin =
-2.0000

Problema 7-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (0, 0, 0), unde
f (x, y, z) = 3x + 2y + z,
cu urmtoarele restricii asupra
4
x
x

2x

variabilelor:
+y 2
+2y
y

+2z 2
+z
3z

100

4.

S se precizeze att aceast valoare minim ct i valoarea argumentelor n care


funcia f atinge valoare sa minim!
Rezolvare. Avem o problem de optimizare cu restricii neliniare de tip inegalitate i cu restricii liniare de tip inegalitate.
n editor se editeaz i- function f = fun0703(x)
erul fun0703.m, funcia f=3*x(1)+2*x(2)+x(3);
obiectiv (de optimizat)
n editor se editeaz ie- function [c ceq] = con0703( x )
rul con0703.m, al restrici- c =[x(1)^4+x(2)^2+2*x(3)^2-100];
ceq=[];
ilor neliniare:

Apoi se dau comenzile:

>> x0=[0 0 0];


>> A=[-1 2 1;
2 -1 -3];
>> b=[3 4];
>> [xmin fmin]=fmincon(@fun0703,x0,A,b,
[],[],[],[],@con0703)
xmin =
-2.1541
-8.8546
0.1821
fmin =
-23.9893

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 8-1.

(3 puncte)

Trei fabrici F1 , F2
Fabrica
Centrul
Disponibil
i F3 aprovizioneaz
C1
C2
C3
trei centre C1 , C2 , C3
F1
5
7
8
450
pltindu-se transporF2
9
4
6
600
tul pe tona de marf
F3
7
6
7
550
astfel: De la F1 la
Necesar
350
300
500 1150/1600
cele trei centre 5, 7
respectiv 8 Euro, de la F2 la cele trei centre 9, 4 respectiv 6 Euro, iar de la
F3 la cele trei centre 7, 6 respectiv 7 Euro. La fabrica F1 se produce 450 de tone
de marf, la fabrica F2 se produce 600 de tone de marf, iar la F3 se produce
550 de tone. Centrele solicit doar 350, 300 respectiv 500 de tone de marf. S
se ntocmeasc un plan de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde

f (x11 , x12 , . . . , x33 ) = 5x11 +7x12 +8x13 +9x21 +4x22 +6x23 +7x31 +6x32 +7x33 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12 +x13

x21 +x22 +x23

x11

+x21
x12

+x22
x13

x31
+x31

+x32

+x33

+x32
+x23

+x33

=
=
=

450
600
550
350
300
500

unde variabilele sunt pozitive: x11 , x12 , x13 , x21 , x22 , x23 , x31 , x32 , x33 0.
Prin urmare se dau comen- >> f=[5 7 8 9 4 6 7 6 7];
zile Matlab:
>> A =[ 1 1 1 0 0 0 0 0 0;
0 0 0 1 1 1 0 0 0;
0 0 0 0 0 0 1 1 1];
>> b =[450 600 550];
>> Aeq=[ 1 0 0 1 0 0 1 0 0;
0 1 0 0 1 0 0 1 0;
0 0 1 0 0 1 0 0 1];
>> beq=[350 300 500];
>> lb=zeros(9,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
xmin =
350.0000
0.0000
0.0000
0.0000
300.0000
300.0000
0.0000
0.0000
200.0000
fmin =
6.1500e+003

Problema 8-2.
S se calculeze minimul funciei:

(3 puncte)

f (x) = x4 2x2 + x 15,


pe intervalul [3, 2]. S se precizeze att valoarea minim ct i valoarea argumentului n care funcia atinge aceast valoare minim!
Rezolvare.
n editor se editeaz ierul fun0802.m

function y = fun0802(x)
y = x^4-2*x^2+x-15;

apoi se d comanda:

>> [xmin fmin] = fminbnd(@fun0802,-3,2)


xmin =
-1.1072
fmin =
-17.0562

Problema 8-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (1, 1, 0), unde
f (x, y, z) = sin(x2 2xy yz + 2z 2 4z),
cu urmtoarele restricii asupra variabilelor:

z
x +y
x +2y
+z

2x y 3z

= 2
3
4.

S se precizeze att aceast valoare minim ct i valoarea argumentelor n care


funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar cu restricii liniare de tip
inegalitate i egalitate.
n editor se editeaz i- function f = fun0803(x)
erul fun0803.m, funcia f=sin(x(1)^2-2*x(1)*x(2)-x(2)*x(3)
+2*x(3)^2-4*x(3));
obiectiv (de optimizat)
Apoi se dau comenzile:

>> x0=[ 1 1 0];


>> A=[-1 2 1;
2 -1 -3];
>> b=[3 4];
>> Aeq=[ 1 1 -1];
>> beq=[2];
>> [xmin fmin]=fmincon(@fun0803,x0,A,b,
Aeq,beq)
xmin =
1.0663
1.0365
0.1028
fmin =
-1.0000

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

AUT+ISE 3, CALC 4

Problema 9-1.

(3 puncte)

Dou fabrici F1 i F2 aproFabrica


Centrul
Disponibil
vizioneaz dou centre C1 , C2
C1
C2
pltindu-se transportul pe tona
F1
5
7
450
de marf astfel: De la F1 la cele
F2
8
6
300
dou centre 5 respectiv 7 Euro,
Necesar
250
300
550/750
iar de la F2 la cele dou centre
8 respectiv 6 Euro. La fabrica F1 se produce 450 de tone de marf, iar la F2 se
produce 300 de tone. Centrele solicit doar 250 respectiv 300 de tone de marf.
S se ntocmeasc un plan de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x22 ) = 5x11 + 7x12 + 8x21 + 6x22 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12

x21 +x22
x
+x

11
21

x12
+x22

=
=

450
300
250
300

unde toate variabilele sunt numere pozitive:


x11 , x12 , x21 , x22 0.
Prin urmare se dau comen- >> f=[5 7 8 6];
zile Matlab:
>> A =[ 1 1 0 0;
0 0 1 1];
>> b =[450 300];
>> Aeq=[ 1 0 1 0;
0 1 0 1];
>> beq=[250 300];
>> lb=zeros(4,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
Optimization terminated.
xmin =
250.0000
0.0000
0.0000
300.0000
fmin =
3.0500e+003

Problema 9-2.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (2, 5, 1), unde
f (x, y, z) = sin(x3 2xz) + cos(xy y 2 ).
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar fr restricii.
Se
editeaz
ierul function f = fun0902(x)
fun0902.m, funcia obiec- f=sin(x(1)^3 - 2*x(2)*x(3))
tiv (de optimizat)
+ cos(x(1)*x(2) - x(2)^2);
Apoi se dau comenzile:

>> x0=[2 5 -1];


>> [xmin fmin]=fminunc(@fun0902,x0)
xmin =
1.9436
5.0525
-0.9833
fmin =
-2.0000

Problema 9-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (1, 0, 2), unde
f (x, y, z) = cos(x2 + 2xy + 2yz + 2z 2 ),
cu urmtoarele restricii asupra variabilelor:

z
2
x +y
x +2y
+z =
1

2x y 3z = 4.
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar cu restricii liniare de tip
inegalitate i egalitate.
n editor se editeaz i- function f = fun0903(x)
erul fun0903.m, funcia f=cos(x(1)^2 + 2*x(1)*x(2) + 2*x(2)*x(3)
+ 2*x(3)^2);
obiectiv (de optimizat)
Apoi se dau comenzile:

>>
>>
>>
>>

x0=[ 1 0 2];
A=[ 1 1 -1];
b=[2];
Aeq=[-1 2 1;
2 -1 -3];
>> beq=[1 -4];
>> [xmin fmin]=fmincon(@fun0803,x0,A,b,
Aeq,beq)
xmin =
-0.1719
-0.2344
1.2969
fmin =
-1.0000

PROBLEME REZOLVATE pt OPTIMIZARE


CATEDRA DE ING. EL.

SETUL

10

AUT+ISE 3, CALC 4

Problema 10-1.

(3 puncte)

Dou fabrici F1 i F2 aproFabrica


Centrul
Disponibil
vizioneaz dou centre C1 , C2
C1
C2
pltindu-se transportul pe tona
F1
3
3
450
de marf astfel: De la F1 la cele
F2
5
7
400
dou centre 3 respectiv 3 Euro,
Necesar
400
300
700/850
iar de la F2 la cele dou centre
5 respectiv 7 Euro. La fabrica F1 se produce 450 de tone de marf, iar la F2 se
produce 400 de tone. Centrele solicit doar 400 respectiv 300 de tone de marf.
S se ntocmeasc un plan de transport de cost minim.
Rezolvare. Este o problema de optimizare a transportului. Avem nevoie de
minimul funciei f , unde
f (x11 , x12 , . . . , x22 ) = 3x11 + 3x12 + 5x21 + 7x22 ,
cu urmtoarele restricii asupra variabilelor:

x11 +x12

x21 +x22
x
+x

11
21

x12
+x22

=
=

450
400
400
300

unde toate variabilele sunt numere pozitive:


x11 , x12 , x21 , x22 0.
Prin urmare se dau comen- >> f=[3 3 5 7];
zile Matlab:
>> A =[ 1 1 0 0;
0 0 1 1];
>> b =[450 400];
>> Aeq=[ 1 0 1 0;
0 1 0 1];
>> beq=[400 300];
>> lb=zeros(4,1);
>> [xmin fmin]=linprog(f,A,b,Aeq,beq,lb)
Optimization terminated.
xmin =
150.0000
300.0000
250.0000
0.0000
fmin =
2.6000e+003

Problema 10-2.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (5, 0, 1), unde
f (x, y, z) = sin(x3 + 2xz) + cos(xy + y 2 ).
S se precizeze att aceast valoare minim ct i valoarea argumentelor n care
funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar fr restricii.
Se
editeaz
ierul function f = fun1002(x)
fun1002.m, funcia obiec- f=sin(x(1)^3 + 2*x(1)*x(3))
tiv (de optimizat)
+ cos(x(1)*x(2) + x(2)^2);
Apoi se dau comenzile:

>> x0=[5 0 -1];


>> [xmin fmin]=fminunc(@fun1002,x0)
xmin =
6.0012
0.0000
-0.8629
fmin =
-6.5059e-014

Observaie. Eroare de Matlab. Minimul corect este 2. Acest fapt se vede


imediat dac lansm comanda cu x0 = (5, , 1).

Problema 10-3.
(3 puncte)
S se calculeze minimul funciei f , n vecintatea punctului (2, 1, 0), unde
f (x, y, z) = cos(x + yz + 2z 2 + z),
cu urmtoarele restricii asupra variabilelor:

z
x +y
x +2y
+z

2x y 3z

= 3
3
= 3.

S se precizeze att aceast valoare minim ct i valoarea argumentelor n care


funcia f atinge valoare sa minim!
Rezolvare. Este o problem de optimizare neliniar cu restricii liniare de tip
inegalitate i egalitate.
n editor se editeaz i- function f = fun1003(x)
erul fun1003.m, funcia f=cos(x(1) + x(2)*x(3) + 2*x(3)^2 + x(3));
obiectiv (de optimizat)
Apoi se dau comenzile:

>>
>>
>>
>>

x0=[2 1 0];
A=[ -1 2 1];
b=[3];
Aeq=[1 1 -1;
2 -1 -3];
>> beq=[3 3];
>> [xmin fmin]=fmincon(@fun0803,x0,A,b,
Aeq,beq)
xmin =
2.1333
0.9667
0.1000
fmin =
-0.0500

S-ar putea să vă placă și