Sunteți pe pagina 1din 8

10.

Optimizarea func\iilor de mai multe variabile


10.1.Optimizarea func\ieri polinom

Pentru optimizarea func\iei polinom, [n prezen\a restric\iilor


liniare, se folo]este metoda Beale, care are la baz` extinderea
metodei simplex utilizat` [n rezolvarea problemelor de programare
liniar`.
Func\ia obiectiv, [n raport cu trei variabile independente
este:
y  a o  a1 x1  a 2 x 2  a 3 x 3  a11 x12  a 22 x 22  a 33 x 33  a12 x1 x 2  (4.130)
 a 13 x1 x 3  a 23 x 2 x 3
Deoarece variabilele independente au valori cuprinse [ntre o
valoare minim` ]i o valoare maxim` restric\iile vor fi:
x1 min  x1  x1 max
x 2 min  x 2  x 2 max (4.131)
x 3 min  x 3  x 3 max
Func\ia obiectiv se poate scrie sub forma:
a1 a a a a a
y  (a o  x1  2 x 2  3 x 3 )  ( 1  a11 x1  12 x 2  13 x 3 )x1  (4.132)
2 2 2 2 2 2
a a a a a a
 ( 2  a 22 x 2  12 x1  23 x 3 )x 2  ( 3  a 33 x 3  13 x1  23 x 2 )x 3
2 2 2 2 2 2
Prin introducerea unor variabile auxiliare, sistemul restric\iilor se
transform` din inegalit`\i [n egalit`\i:
x 4  x1  x1 min x 7  x1 max  x1
x 5  x 2  x 2 min x 8  x 2 max  x 2 (4.133)
x 6  x 3  x 3 min x 9  x 3 max  x 3
Pentru aflarea valorii minime a func\iei se alege ca prim`
solu\ie admisibil` de baz` punctul:
x1  x 2  x 3  0 (4.134)
Restric\iile vor fi:
x 4   x1 min x 7  x1 max
x 5   x 2 min x 8  x 2 max (4.135)
x 6   x 3 min x 9  x 3 max
{n acest punct exist` egalit`\ile:
1 y
 ai i = 1, 2, 3
2 x i
(4.136)
Dac` pentru acest punct este [ndeplinit` condi\ia:
y
0 i = 1, 2, 3
x i
(4.137)
Punctul respectiv reprezint` solu\ia de minim c`utat`, deoarece
orice cre]tere a valorii unei variabile independente conduce la
cre]terea lui y.
Calculele necesare trecerii de la un punct de testare la altul
se face prin [ntocmirea unui tabel care cuprinde:
- o parte simplex;
- o parte obiectiv.
Partea simplex a tabelului cuprinde un num`r de coloane
mai mare cu o unitate dec@t num`rul variabilelor (m+1). Primele
m linii (m = num`rul variabilelor independente) corespund
variabilelor independente iar celelalte variabilelor auxiliare. Pentru
fiecare variabil` independent` tabelul are coeficientii 0 ]i un singur
coeficient egal cu 1 aflat la intersec\ia liniei cu coloana
corespunz`toare variabilei respective:
cij = 0 i j i = 2, 3, ....., m+1
(4.138)
cij = 1 i=j j = 1, 2, ....., m+1
Coeficien\ii p`r\ii simplex a tabelului corespunz`toare
variabilelor auxiliare se calculeaz` cu rela\iile:
i = m+2, ...... , 2 m+1; j = 1, ......, m+1
cij = 0
cij = 1 pentru j = i - m
(4.139)
cij = - xi-m-1, min pentru j = 1

i = 2 m +2, ....., 3 m+1 ; j = 1, ......, m+1


cij = 0
cij = -1 pentru j = i - 2m
(4.140)
cij = - xi-2m-1, max pentru j = 1

Tabelul 4.14
j 1 2 3 ....... m+1
.
i 1 x1 x2 ....... xm
.
2 x1 c21 c22 c23 ....... c2, m+1
3 x2 c31 c32 c33 . c3, m+1
........ ....... ........ ........ ........ ....... ..........
i . ci1 ci2 ci3 . ci, m+1
........ xi ........ ........ ........ ....... ..........
m+1 ....... cm+1,1 cm+1, 2 cm+1, 3 . cm+1,
. ....... m+1
xm .
.......
.
.......
.
m+2 xm+1 cm+2, 1 cm+2, 2 cm+2, 3 ....... cm+2,
........ ....... ........ ......... ......... . m+1
2m+ . .. . . ....... ...........
1 x2m c2m+1, c2m+1, c2m+1, . ..
1 2 3 ....... c2m+1,
. m+1
2m+ x2m+ c2m+2, c2m+2, c2m+2, ....... c2m+2,
2 1 1 2 3 . m+1
........ ....... ........ ......... ......... ....... ...........
3m+ . .. . . . ...
1 x3m c3m+1, c3m+1, c3m+1, ....... c3m+1,
1 2 3 . m+1

Partea simplex a tabelului se completeaz` cu o parte obiectiv


care con\ine coeficien\ii Fij defini\i cu rela\iile:
F21 = ao
F31 = F22 = a1 /2
F32 = a11
Fi1 = ai-2 /2 i = 4, 5, ......., m+2
Fi2 = a1, I-2 /2 i = 4, 5, ......., m+2
(4.141)
F2j = aj-1 /2 j = 2, 3, ......., m+1
F3j = a1, j-1 /2 j = 2, 3, ........, m+1
Fij = a23 / 2 i = 4, 5, ....., m+2; j =
3, 4, ..., m+1
Fij = aj-1, j-1 j=i-1
Tabelul 4.15
i j 1 2 ...... m+1
..
2 1 F21 F22 ...... F2, m+1
..
3 x1 F31 F32 ...... F3, m+2
..
...... .... ..... ..... ...... ........
. .. .
m+ xn Fm1 Fm2 ...... Fm,
2 .. m+2

Pentru verificarea condi\iei de optimalitate se analizeaz`


coeficien\ii primei linii a p`r\ii obiectiv, cu excep\ia elementului F 21.
Un tabel este optim c@nd elementele acestei linii corespunz`toare
coloanei xi sunt pozitive ]i elementul corespunz`tor coloanei u
(linia de interschimb apar\ine p`r\ii obiectiv) con\ine valori zero:
F2u = 0 (4.142)
F2j  0 pentru j = 2, 3, ......, m+1
Dac` prima linie a p`r\ii obiectiv con\ine [n coloana u
elemente diferite de zero, se alege pentru interschimb elementul
cu cea mai mare valoare absolut`. Dac` toate elementele coloanei
u sunt nule, sau nu exist` coloane u dar exist` elemente negative
[n coloana x, se alege pentru interschimb elementul negativ cu
cea mai mare valoare absolut`. Not`m cu p coloana care
corespunde elementului primei linii a p`r\ii obiectiv ce [ndepline]te
condi\iile de mai sus (aceast` coloan` corespunde variabilei x p-1) ]i
deci elementul care se afl` la intersec\ia dintre coloana de
interschimb ]i prima linie a p`r\ii obiectiv va fi F 2p. Coloana de
interschimb stabile]te variabila care intr` [n baz`.
Pentru determinarea liniei de interschimb ]i a elementului
pivot se [mparte valoarea absolut` a elementului F 2p la elementul
Fpp dac` acesta este pozitiv. Apoi se [mpart coeficien\ii C i1 (i = 2, 3,
......, 3 m+1) ai primei coloane din partea simplex cu valoarea
absolut` ai coeficien\ilor corespunz`tori C ip (i = 2, 3, ......, 3 m+1)
afla\i pe coloana de interschimb numai dac` ace]tia din urm` au
acela]i semn cu F2p.
Dac` Fp+1, p > 0 se calculeaz`  F2p / Fp+1, p. Dac` Cip are acela]i
semn cu F2p se calculeaz`:
Ci 1
Cip pentru i = 2, 3, ......., 3 m+1
(4.143)
Cea mai mic` valoare ob\inut` determin` linia de interschimb
q. Elementul aflat la intersec\ia dintre linia ]i coloana de
interschimb Cpq sau Fpq reprezint` elementul pivot Q2p.
Trecerea la tabelul urm`torului punct de testare (k) se face
prin construc\ia unui tabel intermediar, a c`rui parte simplex
con\ine coeficien\ii urm`torului punct de testare ce sunt calcula\i
astfel:
a. se [mpart to\i coeficien\ii coloanei de interschimb p cu
elementul pivot:
Cip( k 1)
C (k )
ip  i = 2, 3, ......, 3m+1
Q2 p
(4.144)
Fip( k 1)
C (k )
3 m i , p  i = 2, 3, ......, 3m+1
Q2 p
(4.145)
b. se atribuie variabilei Q2j valorile:
( k  1)
q < 3m+1 Q2 j  Cqj j = 1, 2, ......, m+1
(4.146)
q > 3m+1 Q2 j  Fq(k3m1), j
(4.147)
c. celelalte elemente ale tabelului intermediar se calculeaz`
cu rela\iile:
Cij( k )  Cij( k 1)  Cip( k )  Q2 j i = 2, 3, ..., 3m+1; j = 1, 2, ....., m+1 pentru j p
(4.148)
C3(mk ) i , j  Fij( k  1)  C3(mk ) i , p  Q2 j j = 1, 2,...., m+1;j p; i = 2, 3, ....., m+2
(4.149)
Partea simplex a tabelului urm`torului punct de testare este
identic` cu aceea din tabelul intermediar. Partea obiectiv se
calculeaz` cu rela\iile:
C3(mk ) p 1, j
Fp9k1), j  j = 1, 2, ......, m+1
Q2 p
(4.150)
Fij( k )  C3(mk ) i , j  Fp(k1), j  Q2 ,i 1 j = 1, 2, ....., m+1
(4.151)
i = 2,
3, ........, m+2; ip+1
Se verific` dac` a fost atins optimul ]i dac` nu se reiau
calculele. Pentru calculul valorii maxime se face y = - y. Valoarea
minima sau maxim` a func\iei este:
ymin = F21; ymax = - F21
(4.152)

Valorile variabilelor xi (i = 2, 3, ......, 3m+1) pentru care s-a


atins valoarea optim` se afl` [n coloana 1 al ultimului tabel de
testare.
Utiliz@nd acest algoritm de calcul a fost realizat un program
[n limbajul de programare Turbo Pascal prezentat [n Anexa 5.

Exemplu 10.1

S` se afle valoarea minim` a func\iei:


y  0.4837  0.446x1  0.3454x 2  0.2262x 3  0.015x12  0.0146x 22 
0.0047x 32  0.0038x1 x 2  0.0014 x1 x 3  0.00127x 2 x 3
[n prezen\a restric\iilor:
9  x1  17
5  x1  15
16  x1  34
Tabelul pentru primul punct de testare este:

0 1 0 0
0 0 1 0
0 0 0 1
-9 1 0 0
-5 0 1 0
-16 0 0 1
17 -1 0 0
15 0 -1 0
34 0 0 -1
0.483 0.223 0.1727 -0.1131
7 0 0.0019 0.0007
0.223 - -0.0146 2
0 0.015 0.0006 0.0006
0.172 0.001 3
7 9 0.0047
0.113 0.000 6
1 7
Coloana de schimb este a 4-a iar linia de schimb este a 3-a. Tabelul
pentru al doilea punct de testare este:
0 1 0 0
0 0 1 0
23.725 -0.1529 -0.1339 209.71
-9 1 0 0
-5 0 1 0
7.725 -0.1529 -0.1339 209.71
17 -1 0 0
15 0 -1 0
10.274 0.1529 0.1339 209.71
-2.2 0.2403 0.1878 0
0.2403 -0.0151 0.0018 0
0.1878 0.0018 -0.0147 0
0 0 0 209.71

Coloana de schimb este a 2-a iar linia de schimb este a 4-a. Tabelul
pentru al treilea punct de testare este:
9 1 0 0
0 0 1 0
22.349 -0.1529 -0.1339 209.71
0 1 0 0
-5 0 1 0
6.349 -0.1529 -0.1339 209.71
8 -1 0 0
15 0 -1 0
11.65 0.1529 0.1339 -209.71
0.9012 0.1043 0.2044 0
0.1043 -0.0151 0.018 0
0.2044 0.0018 -0.0147 0
0 0 0 209.71

Coloana de schimb este a 3-a iar linia de schimb este a 5-a. Tabelul
pentru al patrulea punct de testare este:

9 1 0 0
5 0 1 0
21.679 -0.1529 -0.1339 209.71
0 1 0 0
0 0 1 0
5.679 -0.1529 -0.1339 209.71
8 -1 0 0
10 0 -1 0
12.32 0.1529 0.1339 -209.71
2.5761 0.1135 0.1305 0
0.1135 -0.015 0.0018 0
0.1305 0.0018 -0.0147 0
0 0 0 209.71

Valoarea minim` a func\iei este:


y = 2.5761
pentru:
x1 = 9
x2 = 5
x3 = 21.679

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