Documente Academic
Documente Profesional
Documente Cultură
Elemente de Calcul Numeric Și Optimizari
Elemente de Calcul Numeric Și Optimizari
by Library UTM
Reason: I attest
to the accuracy
and integrity of
this document
ELEMENTE
DE CALCUL NUMERIC I OPTIMIZRI
Conf. univ., dr. Vasile MORARU
Note de curs
ELEMENTE
DE CALCUL NUMERIC I OPTIMIZRI
Note de curs
Chiinu
U.T.M.
Chiinu 2009
2009
38. . .
. .: , 1990 255 p. (traducere Cuprins
din englez Shoup T. E. Applied Numerical Methods for
Microcomputers, Prentice-Hall, 1984). PREFA ....3
39. . , . . NOIUNI INTRODUCTIVE ......6
.: , 1986. - 448 p. (traducere din limba englez I. NUMERE APROXIMATIVE ....13
Hageman L., Young D. Applied iterative methods. 1.1. ERORI ABSOLUTE I ERORI RELATIVE ...13
1.2. PROPAGAREA I SURSELE ERORILOR .....15
Academic Press, 1981). 1.3. NUMERE CU VIRGUL MOBIL.....18
40. ., . . .: , 1989. 1.4. ARITMETICA VIRGULEI MOBILE I ERORILE DE
- 655 p. (traducere din limba englez Horn R., Johnson Ch. ROTUNJIRE......21
Matrix analysis. Cambridje University Press, 1986). 1.5. DETERMINAREA PARAMETRILOR UNUI SISTEM DE
CALCUL....24
1.6. EFECTUL ERORILOR DE ROTUNJIRE26
1.6.1. Calculul mediei aritmetice.27
1.6.2. Evaluarea recurent a unei integrale..28
1.6.3. Exemple de sisteme ru condiionate30
1.7. EXERCIII31
II. REZOLVAREA NUMERIC A ECUAIILOR ALGEBRICE I
TRANSCENDENTE......34
2.1. INTRODUCERE....34
2.2. SEPARAREA RDCINILOR36
2.3. METODA NJUMTIRII INTERVALULUI..43
2.4. METODA APROXIMAIILOR SUCCESIVE.45
2.5. CRITERII DE OPRIRE N METODELE ITERATIVE....51
2.6. METODA LUI NEWTON (METODA TANGENTEI).52
2.7. METODA SECANTEI...58
2.8. REZOLVAREA ECUAIILOR ALGEBRICE.61
2.8.1. Proprietile ecuaiilor algebrice61
2.8.2. Schema lui Horner.63
2.8.3. Metoda lui Newton65
2.9. ALTE METODE NUMERICE..68
2.10. EXERCIII.71
III. METODE NUMERICE N ALGEBRA LINIAR......73
3.1. ELEMENTE DE ANALIZ MATRICEAL...73
3.1.1. Vectori i matrice...73
3.1.2. Norme de vectori i matrice...76
3.1.3. Matrice speciale.79
3.2. SISTEME DE ECUAII ALGEBRICE LINIARE81
300 301
3.3. METODA ELIMINRII A LUI GAUSS......86 4.5.1. Preliminarii..201
3.4. FACTORIZAREA LU...94 4.5.2. Determinarea soluiei iniiale de baz.203
3.5. FACTORIZAREA CHOLESKY.100 4.5.3. Metoda potenialelor209
3.6. PERTURBAII. NUMRUL DE CONDIIONARE103 4.6. PROGRAMAREA LINIAR N NUMERE NTREGI..220
3.7. CALCULUL VALORILOR I VECTORILOR PROPRII...109 4.7. PROGRAMAREA LINIAR-FRACIONAR...229
3.7.1. Formularea problemei. Proprieti fundamentale109 4.8. REOPTIMIZAREA I PARAMETRIZAREA N
3.7.2. Metode bazate pe transformri de asemnare PROGRAMAREA LINIAR..232
ortogonal...115 4.8.1. Modificarea vectorului termenilor liberi .234
3.7.3. Metoda puterii121 4.8.2. Modificarea coeficienilor funciei obiectiv236
3.8. METODE ITERATIVE DE REZOLVARE A SISTEMELOR 4.8.3. Adugarea unui vector coloan n matricea A.238
DE ECUAII LINIARE..126 4.8.4. Modificarea unui vector coloan al matricei A238
3.9. SISTEME LINIARE SUPRADETERMINATE I METODA 4.8.5. Adugarea de noi restricii.......239
CELOR MAI MICI PTRATE..134 4.9. EXERCIII...240
3.9.1. Formularea problemei..134 V. REZOLVAREA SISTEMELOR DE ECUAII NELINIARE I A
3.9.2. Metode bazate pe sisteme normale..135 PROBLEMELOR DE OPTIMIZARE NECONDIIONAT....245
3.9.3. Metode de ortogonalizare137 5.1. INTRODUCERE..245
3.10 EXERCIII...140 5.2. METODA ITERAIEI I METODA GAUSS-SEIDEL
IV. INTRODUCERE N OPTIMIZAREA LINIAR..144 NELINIAR....246
4.1. NOIUNI DESPRE MULIMI I FUNCII CONVEXE..144 5.3. METODA NEWTON PENTRU REZOLVAREA
4.1.1. Mulimi convexe..144 SISTEMELOR DE ECUA?II NELINIARE.....................252
4.1.2. Funcii convexe....149 5.4. CONDIIILE DE EXTREM N OPTIMIZAREA
4.2. FORMULAREA PROBLEMELOR DE PROGRAMARE NECONDIIONAT..256
LINIAR..154 5.5. METODA GRADIENTULUI......261
4.2.1. Problema general de programare liniar155 5.6. METODA NEWTON-RAPHSON...267
4.2.2. Exemple de probleme de programare liniar...157 5.7. METODE CVASI NEWTON...271
4.2.3. Forme ale unei probleme de programare liniar..161 5.8. METODE DE DIRECII CONJUGATE277
4.2.4. Interpretarea geometric a problemelor de programare 5.8.1. Consideraii preliminare..277
liniar cu dou variabile..164 5.8.2. Minimizarea funciilor ptratice i rezolvarea sistemelor
4.3. METODA SIMPLEX...167 de ecuaii liniare. Algoritmul Hestenes Stiefel.279
4.3.1. Soluie admisibil de baz...168 5.8.3. Minimizarea unei funcii strict convexe oarecare.
4.3.2. Criteriul de optimalitate...169 5.8.4. Algoritmul Fletcher-Reevs i versiunea Polak-
4.3.3. Algoritmul simplex..173 Ribiere....286
4.3.4. Tabele simplex.181 5.9. EXERCIII..287
4.3.5. Determinarea soluiei iniiale de baz.187 RSPUNSURI, INDICAII.291
4.4. DUALITATEA N PROGRAMAREA LINIAR..190 BIBLIOGRAFIE...297
4.4.1. Probleme duale simetrice.190
4.4.2. Teoreme duale ale programrii liniare.191
4.4.3. Algoritmul simplex dual..195
4.5. REZOLVAREA PROBLEMELOR DE TRANSPORT..201
302 303
n lucrare sunt prezentate principalele metode de calcul
numeric pentru rezolvarea unor probleme ce pot fi ntlnite
PREFA
frecvent n practic. Ea se adreseaz n primul rnd studenilor
Universitii Tehnice a Moldovei i va constitui un sprijin efectiv Metodele de calcul numeric au ptruns eficient n
la predarea cursurilor Metode numerice, Cercetri operaionale, toate domeniile tiinei, tehnicii i economiei. Cursurile
Matematic de calcul, Programare matematic, Modele corespunztoare se predau studenilor de la instituiile de
matematice i optimizri .a. Cartea ns poate fi folosit i de toi nvmnt superior cu profiluri tehnic i economic,
cei care sunt preocupai de utilizarea metodelor numerice i a matematicienilor i fizicienilor. Lor i le este adresat
mijloacelor electronice de calcul la soluionarea problemelor aceast lucrare, precum i celor care doresc s se iniieze n
practice. aplicarea metodelor numerice i mijloacelor electronice de
calcul la rezolvarea problemelor ce se ntlnesc des n
practic.
Lucrarea este structurat astfel: o introducere, cinci
capitole, o anex i i propune s prezinte principalele
metode numerice de rezolvare a ecuaiilor algebrice i
transcendente.
Autor: conf. univ., dr. Vasile Moraru Un loc important l ocup rezolvarea numeric a
ecuaiilor i a sistemelor de ecuaii neliniare, a sistemelor de
ecuaii liniare i neliniare, a problemelor de optimizare
necondiionat i condiionat. Se propun spre soluionare
exerciii, rezolvate sau nsoite de indicaiile
corespunztoare.
Pentru nelegerea materialului de baz sunt suficiente
Redactor responsabil - prof. univ. dr. habilitat Anatol Popescu cunotinele pe care studenii le-au obinut la cursurile de
matematici i programare.
Recenzent - conf. univ. dr. Mihail Perebinos n Noiuni introductive sunt expuse primele concepii
despre metodele numerice i despre algoritmii de calcul, se
fac estimri privind viteza de convergen a acestora.
Capitolul nti este dedicat aproximrii numerelor
reale prin reprezentri computaionale finite cu ajutorul
virgulei mobile i erorilor care le implic. Prin exemple
simple se arat c erorile de rotunjire, propagndu-se de la o
operaie aritmetic la alta, ne pot conduce la rezultate
U.T.M., 2009 eronate.
n capitolul al doilea se prezint metode numerice de
calcul al rdcinilor ecuaiilor algebrice i transcendente.
3
Este vorba de metoda njumtirii intervalului, metoda trateaz metoda iteraiei, metoda Gauss-Seidel neliniar,
aproximaiilor succesive, metoda tangentei (Newton), metoda Newton care sunt o extindere a metodelor studiate n
metoda secantei i alte metode numerice. Un loc aparte l capitolele doi i trei. Se aduc condiiile necesare i
ocup ecuaiile algebrice, istoria crora ncepe cu Evul suficiente de extrem n optimizarea necondiionat. Se face
Mediu i cu Renaterea. Se expun schema lui Horner i o trecere n revist a metodei gradientului, metodei Newton-
metoda Newton de determinare a tuturor rdcinilor reale ale Raphson, metodelor cvasi-Newton i a metodelor de direcii
ecuaiilor algebrice. conjugate, punndu-se n eviden drept cea mai eficace
Capitolul al treilea, destinat metodelor algebrei metoda Fletcher-Powell n versiunea Polak-Ribiere.
liniare, pune la ndemna cititorului att elemente de analiz Bibliografia include referinele n care cititorul poate
matriceal, ct i algoritmii cei mai reprezentativi ce afla detalii suplimentare asupra metodelor numerice de
intervin n problemele de rezolvare a sistemelor de ecuaii calcul prezentate n lucrare. Unele date bibliografice au fost
liniare i de calcul ai valorilor i vectorilor proprii. Sunt incluse chiar n text. Menionm c din mulimea crilor
expuse metodele directe i iterative de rezolvare a sistemelor scrise n limba romn se fac trimiteri doar la acele surse pe
de ecuaii liniare (metoda Gauss i metoda Cholesky cu care autorul le-a avut la ndemn n timpul scrierii lucrrii.
factorizrile sale triunghiulare, metoda Jacobi, metoda
Gauss-Seidel, metode de ortogonalizare .a.), fcndu-se LISTA DE NOTAII
totodat aprecieri asupra eficacitii i stabilitii numerice a R mulimea numerelor reale
acestora. Se subliniaz faptul c metodele bazate pe
Rn spaiu liniar n-dimensional (3.1.1)
transformri de asemnare ortogonal sunt mai eficace dect
metodele clasice de determinare a valorilor i vectorilor {x ( k ) } ir de vectori; x ( k ) R n
proprii. x* soluia problemei; x* R n
n capitolul al patrulea se trateaz metoda simplex n x norma vectorului x R n
vederea utilizrii acesteia n determinarea soluiilor optime a
problemelor de programare liniar, de programare n numere A norma matricei A (3.1.1)
ntregi, de programare liniar-fracionar. Se prezint AT transpusa matricei A
problema de transport i se abordeaz dualitatea n A 1 inversa matricei A
programarea liniar. Tot aici cititorul este familiarizat cu I matricea unitate
noiunea de funcie convex folosit pe larg n urmtorul (x,y) produsul scalar al vectorilor x,y R n
capitol al lucrrii.
n capitolul al cincilea se prezint principalele {x P } mulimea elementelor x cu
metode numerice de rezolvare a sistemelor de ecuaii proprietatea P
neliniare i a problemelor de optimizare necondiionat. f(x) gradientul funciei f(x).
Problema de optimizare se poate reduce la rezolvarea unui 2 f(x) matricea Hesse a funciei f(x)
sistem de ecuaii i invers. De aceea s-a considerat necesar a
o(x) o(x)/x 0 dac x 0.
expune n cadrul aceluiai capitol metodele menionate. Se
(x ) matricea Jacobi (5.2)
4 5
Generalitate. Prin aceasta se nelege c algoritmul nu
NOIUNI INTRODUCTIVE trebuie s rezolve numai o problem, ci toate
problemele din clasa respectiv de probleme.
Finitudine. Numrul de transformri intermediare,
aplicate datelor de intrare pentru a obine datele de
Metodele de calcul numeric au devenit n zilele noastre ieire, este finit.
deosebit de importante. Ele se aplic aproape peste tot: n inginerie Unicitate. Toate transformrile intermediare trebuie s
i n economie, n matematic i fizic, n medicin, n astronomie, fie determinate univoc de regulile algoritmului.
n chimie, n geologie etc. Acest lucru se datorete att progreselor Dup elaborarea algoritmului metodei numerice de calcul
obinute n domeniul calculatoarelor electronice, ct i se trece la scrierea programului de rezolvare a problemei ntr-un
experimentelor din ce n ce mai complicate n modelarea limbaj de programare. n continuare se trece la testarea i
matematic. verificarea programului. Dup testarea programului din punct de
Prin metode numerice se subneleg metode de rezolvare a vedere sintactic, este necesar ca programul s fie verificat prin
problemelor cu ajutorul operaiilor cu caracter aritmetic logic exemple de probleme concrete (probleme - test) ale cror soluii
asupra numerelor reale, adic cu ajutorul acelor operaii care pot fi sunt cunoscute.
executate n mod automat de un calculator electronic. Prin urmare, rezolvarea unei probleme la calculator
Rezolvarea unei probleme impuse de practic ncepe cu necesit parcurgerea urmtoarelor etape:
construcia modelului matematic. Modelul matematic reprezint
efectiv formularea matematic a problemei enunate, adic I. enunarea problemei i formularea matematic,
constituie exprimarea matematic a relaiilor i restriciilor dintre evideniind ce se d i ce se cere;
parametrii problemei. II. alegerea unei metode numerice pentru obinerea
Dup formularea matematic a problemei se realizeaz soluiei;
alegerea metodei numerice i se elaboreaz algoritmul de calcul. III. elaborarea algoritmului de calcul;
Aceste etape sunt cele mai importante n procesul soluionrii IV. testarea i verificarea programului;
problemelor. La alegerea metodei numerice se ia n consideraie V. analiza rezultatelor obinute.
viteza de convergen, precizia, stabilitatea, timpul de execuie i
necesarul de memorie. Majoritatea metodelor numerice de calcul reprezint n
Algoritmul metodei numerice const dint-un numr finit de esen proceduri iterative. Aceasta nseamn c, plecnd de la un
operaii aritmetice i logice, care trebuie s le efectueze x0 dat, se construiete un ir x0 , x1 ,K , x k , K (notat de obicei prin
calculatorul electronic pentru rezolvarea problemei date. Regulile
de calcul alctuiesc paii algoritmului. {xk } ) care n anumite condiii converge ctre soluia exact x* a
Subliniem faptul c noiunea de algoritm n forma sa problemei considerate. Elementele xk , k = 0,1,2,K pot fi att
general se situeaz printre noiunile fundamentale ale matematicii numere reale ct i vectori sau matrice.
i st la baza programrii calculatoarelor electronice. Orice n metodele numerice drept criteriu de oprire (stopare) al
algoritm este caracterizat prin urmtoarele proprieti: iteraiilor, de obicei, se folosete urmtorul: irul {xn } se
6 7
trunchiaz la un indice m determinat pe parcursul calculului n sau, n cazul vectorilor i matricelor,
funcie de precizia dat astfel nct termenul curent xm constituie o x k +1 x q x k x .
aproximaie satisfctoare a soluiei cutate x* . De aceea un fapt Dac printr-o metod numeric de calcul se obine un ir
esenial n compararea metodelor de calcul numeric l constituie care converge liniar atunci se spune c metoda este de convergen
aprecierea vitezei de convergen a metodelor. n metodele de liniar sau de ordinul nti de convergen. Se mai spune n acest
convergen rapid sunt necesare un numr mai mic de iteraii caz c metoda converge tot att de repede ca i progresia
pentru a atinge precizia prescris dect n metodele cu convergen geometric de raie q sau c converge liniar cu raia q.
lent. Dintre metodele care necesit acelai volum de calcul la Se spune c irul {x k } converge supraliniar ctre x dac
fiecare iteraie n practic se alege metoda cu convergena mai e( x )
rapid. lim k +1 = 0.
k e( x )
De obicei viteza de convergen a irului x k x se k
Cu alte cuvinte, irul este convergent supraliniar dac
stabilete cu ajutorul unei funcii e( x ) , numit funcie de estimare
xk +1 x qk xk x ,
a erorii, care satisface condiiile:
sau, n cazul vectorilor i matricelor,
e( x ) 0, pentru x i e( x ) = 0.
xk +1 x q k xk x ,
n practic se utilizeaz pe larg n calitate de funcie de
estimare a erorii cantitatea unde qk 0 pentru k .
e( x ) = x x , Convergena supraliniar nseamn c e( xk ) 0 mai
n cazul x, x R , sau repede dect orice progresie geometric de raie q, adic converge
e( x ) = x x , mai repede ctre zero dect orice ir de forma cq k , unde c > 0 i
0 < q <1.
dac metoda genereaz un ir de vectori sau matrice. Aici o este
Dac exist o constant C 0 astfel nct
o norm vectorial sau matriceal (vezi 3.1.2). e( xk +1 )
Fie irul {x k } convergegent catre x , adic lim
k [e( x )]
= C,
lim xk = x i lim e( xk ) = 0.
k
k k atunci se spune c irul {x k } are ordinul de convergen. n
Se spune c irul {x k } converge liniar ctre x dac exist o cazul cnd = 2 sau = 3 se spune c irul {x k } este de ordinul
constant q, 0 < q < 1 , astfel nct doi, corespunztor de ordinul trei de convergen. Se mai spune c
e( x k +1 ) metoda numeric cu ajutorul creia se construiete acest ir este cu
lim = q.
k e( x ) convergena ptratic, respectiv cu convergena cubic sau c este
k
Altfel spus, exist un numr ntreg N 0 astfel c pentru o metod de ordinul al doilea, respectiv al treilea.
orice k N avem Prin urmare, irul {x k } are ordinul de convergen dac
x k +1 x q x k x , exist un numr N 0 astfel nct pentru orice k N are loc
8 9
xk +1 x C xk x ,
unde c > 0 i 0 < q < 1 , converg ctre x = 0 liniar cu raia q.
sau, n cazul vectorilor i matricelor, Demonstraia rezult imediat din definiia convergenei liniare:
e( x ) x 0
xk +1 x C xk x . lim k +1 = lim k +1 = q.
k e( x ) k x 0
Evident, cu ct este mai mare cu att irul {x k } converge mai
k k
Exerciii.
repede ctre x . 1. Fie 0 < q1 < q2 < 1 . Definim irul {x k } n modul urmtor:
n cele ced urmeaz vom ilustra prin exemple concrete x0 = c + 1, x1 = c + q1 , x2 = c + q1q2 , x3 = c + q12 q2 ,
definiiile date.
Exemple de convergen liniar. x4 = c + q12 q22 , x5 = c + q13 q22 , K , x2 k = c + q1k q2k , x2 k +1 = c + q1k +1q2k , K
1) irurile unde c > 0 . S se arate c acest ir converge liniar ctre x = c cu
3 5 9 raia q = q1q2 .
x0 = 2, x1 = , x2 = , x3 = ,K xk = 1 + 2 k ,K,
2 4 8
k
2. S se demonstreze c irul {xk } converge liniar cu raia
x0 = 3, x1 = x0 , x2 = x1 , x3 = x2 , K, xk = xk 1 = 32 , K
0 < q < 1 dac i numai dac lim k e( xk ) = lim k xk x = q .
1 k k
converg ctre x = 1 liniar cu raia q = . Exemple de convergen supraliniar. irurile
2
ntr-adevr, 1 1 1
a) x0 = x1 = 1, x2 = , x3 = ,K, xk = k ,K
e( xk +1 ) 1 + 2 (k +1) 1 1 2 27 k
lim = lim = , 1 1 1
k e( x ) k 1 + 2 k 1 2 b) x0 = x1 = 1, x2 = , x3 = ,K, xk = , K
k
2 6 k!
i 2 3
( k +1 ) c c ck
32 1 1 1 c) x0 = x1 = c, x2 = , x3 = ,K, xk = , K
lim 2 k
= lim 2( k +1 )
= . 2 6 k!
3 1
k
3 k
+1 2 converg ctre x = 0 cu viteza supraliniar. Aceasta rezult din
2) irurile
faptul c
a) x0 = c, x1 = cq, x2 = cq 2 , x3 = cq 3 ,K, xk = cq k ,K
e( x ) x 0
lim k +1 = lim k +1 =0.
k e( x )
2 k
1 1 k x 0
b) x0 = c, x1 = c(q + 1), x2 = c q + ,K, xk = c q + , K k k
2 k Exerciiu. S se demonstreze c orice ir de forma
2 k 2 k
10 11
unde constsnta q satisface condiiei 0 q < 1 i c > 0 , este cu CAPITOLUL I
convergena ptratic.
ntr-adevr, avem x = 0 i Numere aproximative
e( x ) x 0 1
lim k +1 = lim k +1 2 = .
k e( x ) k ( x 0 ) c
k k 1.1. Erori absolute i erori relative
2. irul
3 5 17 257 k
Notm cu x* valoarea aproximativ pentru numrul exact x.
x0 = , x1 = , x2 = , x3 = ,K xk = 1 + 2 2 ,K, Dac x*<x, atunci spunem c x* aproximeaz numrul x prin lips,
2 4 16 256
care converge ctre x = 1 , are viteza de convergen ptratic: iar dac x*>x, atunci aproximarea lui x prin x* este prin adaos.
x 1 De obicei, n procesul de calcul se nlocuiete valoarea
lim k +1 2 = 1. exact (care, n caz general, nu este cunoscut) prin valoarea sa
k ( x 1)
k aproximativ. n felul acesta comitem o eroare. Expresia
( x* )=|x-x*|
Exerciiu. S se demonstreze c irul definit prin formula poart numele de eroare absolut.
1 1 Eroarea absolut nu caracterizeaz suficient de bine
xk +1 = xk + , k = o,1,2, K ,
2 xk precizia cu care se obin rezultatele. Astfel, de exemplu, dac x = 1
converge ctre x = 1 x = 1 oricare ar fi x0 i viteza de si x*=2, atunci eroarea absolut ( x* )=1 indic o precizie slab a
convergen este ptratic. msurrii. Dac x = 1010 + 1 iar x* = 1010 , aceeai eroare absolut
( x* )=1 caracterizeaz o precizie remarcabil. Aceasta ne conduce
Alte detalii i aspecte de diferite nuane legate de viteza de la noiunea de eroare relativ ( x* ) care reprezint raportul dintre
convergen a irurilor pot fi studiate de cititor n lucrarea eroarea absolut i valoarea aproximativ, adic
fundamental Ortega J.M.,Rheinboldt W.C. Iterative Solution of |x-x |
Nonlinear Equations in Several Variables. Academic Press, ( x* )= *
|x*|
London and New Zork, 1970. Lucrarea a aprut i n limba rus n
anul 1975 la editura Mir. dac x* 0 .
n exemplele de mai sus erorile relative sunt egale cu 0.5
respectiv cu 10 10 , ceea ce confirm buna precizie a msurrii n
cazul al doilea.
Dac se cunosc numerele x i x*, atunci calculul erorii
absolute i relative este imediat. Dar, de obicei, n majoritatea
cazurilor se cunoate numai aproximarea x* . De aceea se
introduce noiunea de margine (sau limit) a erorii absolute i
relative. Numrul pozitiv este o margine (sau o limit) a erorii
12 13
absolute a numrului aproximativ x* dac corecte i dou cifre semnificative (deoarece valoarea maxim a
|x-x*| , numrului poate fi 0.001240, iar minima 0.001228 i deci ultimele
iar numrul pozitiv r este o limit a erorii relative dac dou zecimale sunt nesigure).
|x-x*| Numrul de zecimale corecte ne permite s ne facem o idee
r. despre mrimea erorii absolute n timp ce numrul de cifre
|x*| semnificative ne d o idee sumar despre mrimea erorii relative.
Notaia x=x* semnific ntotdeauna faptul, c
|x-x*| , adic
x* - x* x+ . 1.2. Propagarea i sursele erorilor
Orice numr aproximativ x* poate fi scris sub forma
n procesul de calcul aproximativ eroarea se propag de la
x* = c110 m + c210 m1 + K + cn10 mn+1 , o operaie la alta. Fie date valorile aproximative x* i y* ale
unde c1 , c2 , K, cn sunt cifrele zecimale ale numrului aproximativ valorilor exacte x i y, afectate de erorile x i y, adic fie
x*. Se tie c zerourile de la nceputul numrului servesc numai x = x* x , y = y* y .
pentru a fixa poziia virgulei zecimale. Cifrele cuprinse intre prima Atunci avem
i ultima cifr diferit de zero sau care indic ordinele pstrate n x* x + y x y x + y x* + x + y x + y
calcule se numesc cifre semnificative.
Exemplu. Numrul aproximativ x* + y* ( x + y ) x + y x* + y* + ( x + y ),
x* = 3 101 + 6 100 + 0 101 + 5 102 + 8 103 sau
are cinci cifre semnificative, iar numrul x + y = x* + y* ( x + y )
y*= -(2 10-3+8 10-4+0 10-5)= -0.00280 n mod analog ca n cazul adunrii, se va obine
are trei cifre semnificative (primele trei zerouri sunt x y = x* y* ( x + y ) .
nesemnificative). Deci, la adunare sau scdere, marginea erorii absolute a
Dac mrimea erorii x* nu depete 0.510-t se spune c rezultatului este dat de suma marginilor pentru erorile absolute
numrul aproximativ x* are t cifre zecimale corecte. ale termenilor.
Dac numrul aproximativ se scrie fr a indica limita Se poate demonstra de asemenea c la nmulire i
erorii absolute, atunci n scrierea lui se consider c toate cifrele mprire marginile erorilor relative ale factorilor se adun.
sunt corecte. n acest caz zerourile de la sfritul numrului nu se Fie acum date dou numere pozitive x* i y* aproximativ
arunc. egale , afectate de erorile absolute (x*) i (y*). Atunci
De pild numerele 0.0345 i 0.034500 sunt diferite; eroarea
( x* y* ) ( x* ) + ( y* )
absolut a primului numr nu depete 0.0001, iar eroarea ( x* y* )=
absolut al celui de-al doilea numr este mai mic ca 10-6. x* y* x* y*
Exemple: 0.0102240.000004 are cinci zecimale corecte i i, deci, eroarea relativ a diferenei poate fi destul de mare, dac
patru cifre semnificative; 0.0012340.000006 are patru zecimale diferena |x* -y*| este foarte mic. Aceasta ne arat c exactitatea
14 15
relativ poate fi foarte slab atunci cnd efectum diferena a dou Dac vom face calculul aceleiai rdcini utiliznd
numere aproximativ egale. formula
Exemplu. Vom considera numerele aproximative 2 2.524315
x1 = = 0.0025245
x=0.12340.510-4 i y=0.12330.510-4 1000.01 + (1000.01) 2 + 4 2.5245315
atunci x-y = 0.00010.0001 i marginea erorii este tot att de
se va obine rezultatul exact.
mare ca i estimarea rezultatului.
Precizia calculelor numerice este criteriul cel mai eficient
Acest fenomen poart denumirea de anulare prin scdere
pentru alegerea metodelor de calcul. Analiza erorii dintr-un
sau de neutralizare a termenilor . Cele mai serioase erori care apar
rezultat numeric este o chestiune esenial n orice calcul, fie c
n calculele efectuate cu ajutorul calculatorului electronic sunt
este executat manual, fie de un calculator. Cu toate performanele
datorate acestui fenomen.
calculatoarelor electronice, precizia rezultatelor este influenat de
De cte ori este posibil neutralizarea termenilor se evit
diferite erori. Se pot distinge trei surse de erori:
prin rescrierea formulelor de calcul sau prin alte schimbri n
1. Erori provenite din simplificarea modelului fizic, pentru a fi
algoritm. De exemplu, o expresie de forma ( + ) 2 2 poate fi descris ntr-un model matematic; erori din msurrile iniiale
scris sub forma ( + 2 ) , sau expresia sau din soluii aproximative ale altor probleme etc. Aceste
+ tipuri de erori se numesc erori inerente. Ele nu pot fi
b influenate de metoda de calcul.
sub forma 2. Erori de metod sau de trunchiere. Majoritatea metodelor
numerice necesit un numr infinit de operaii aritmetice
. pentru a ajunge la soluia exact a problemei. De aceea suntem
b( + + ) nevoii s trunchiem metoda dup un numr finit de operaii.
Vom mai da un exemplu n care se arat cum poate fi Ceea ce omitem constituie eroarea de trunchiere.
evitat anularea prin scdere. Ecuaia de gradul doi 3. Erori de rotunjire n datele de intrare n calcule i n datele de
x2+1000.01 x - 2.5245315=0 ieire. Multe numere nu pot fi reprezentate exact printr-un
are una din rdcini egal cu 0.0025245. Dac calculm numr dat de cifre. Dac n calcule numerice trebuie s folosim
rdcina cu ajutorul formulei numrul , l putem scrie 3.14, 3.14159 sau 3.1415926 etc.
1000.01 + (1000.01) 2 + 4 2.5245315 Nici un numr iraional nu poate fi reprezentat printr-un numr
x1 = , finit de cifre. Chiar i unele numere raionale nu au o
2
reprezentare exact. Numrul 1/3 poate fi scris ca 0.3333..., o
efectund calculele cu opt cifre semnificative, se va obine
succesiune a cifrei 3 la partea zecimal.
Datorit proprietilor constructive ale calculatoarelor
1000.0100 + 1000.0150
x1 = = 0.0025. electronice este necesar limitarea numrului cifrelor
2 semnificative. Un exemplu instructiv este furnizat de numrul
raional 1/10 care se folosete de multe ori ca dimensiune a
Rezultatul obinut are numai dou cifre corecte cu toate c pasului n multe algoritme. n sistemul binar (care folosete
radicalul de gradul doi a fost calculat cu opt cifre semnificative. pentru reprezentarea numerelor cifrele 0 i 1) fracia 1/10 are o
16 17
reprezentare infinit 0.00011001100... . n calcule trebuie s ne numere. n fig.1.1 este reprezentat mulimea F format din 33
mrginim la un numr finit de cifre semnificative. Cnd se adun puncte pentru sistemul de calcul cu virgul mobil, ilustrativ cu
de zece ori numrul care reprezint o aproximaie binar a urmtorii parametri: =2, t=3, L=-1, U=2.
numrului 1/10, rezultatul nu va fi egal exact cu unitatea.
2143+1=25 de numere cu virgul mobil. n sistemul zecimal de sistemului dat, n timp ce ntre i 10 sunt 899999 de numere
numeraie fraciile de mai sus pot fi scrise respectiv 1/2, 5/8, 3/4 i cu virgul mobil.
7/8 (de exemplu, fracia binar 0.101 devine
1 2 1 + 0 2 2 + 1 2 3 = 1 / 2 + 1 / 8 = 5 / 8 ). Prin urmare n sistemul de
calcul F (2,3,-1,1) cel mai mic element pozitiv este egal cu 1.4. Aritmetica virgulei mobile i erorile de rotunjire
= 1 / 2 2 1 = 1 / 4 , iar cel mai mare element =7/821 =7/4. n
Pe mulimea F, care o considerm un model al mulimii
fig.1.2 sunt reprezentate numerele pozitive ale mulimii F.
numerelor reale, se definesc operaiile aritmetice n aa fel nct
ele s reproduc modul de efectuare al acestor operaii de ctre
calculatorul electronic.
Fie x i y F . Atunci suma lor exact nu aparine, ns,
ntotdeauna mulimii F. n exemplul n care F este o mulime
format din 33 de puncte i cu parametrii =2, t=3, L=-1, U=2
(vezi fig.1.1 din 1.3) putem constata aceasta lund x=5/4 i y=3/8,
Fig.1.2. Numerele pozitive ale sistemului de calcul F(2,3, -1, 1). sau x=3/4 i y=7/8. n particular, n cazul al doilea vom avea
24 25
De reinut c i ceilali parametri (, t, U, L, i ) pot fi aritmetic la alta. Felul n care o eroare se propag depinde i de
estimai direct la calculator utiliznd tehnicile de programare algoritmul de calcul. Aducem cteva exemple ilustrative.
(software) ai acesteia. Programele i argumentarea algoritmilor
acestor programe poate fi gsit n [8,15,17,24,33,37], lucrri la
care i-l trimitem pe cititor pentru a afla i alte detalii. 1.6.1. Calculul mediei aritmetice
Trebuie de menionat importana ordinii efecturii
operaiilor aritmetice, deoarece ntr-o aritmetic a virgulei mobile Media aritmetic dintre dou numere a i b poate fi
nu au loc legile asociativ i distributiv. Pentru unele sisteme de calculat prin formulele :
calcul a+b
( A + 1.0) A A + (1.0 A) c= (1.1)
2
ntr-adevr, fie de exemplu t=40 i =2. Atunci (vezi [9], pag.30) ba
n cazul rotunjirii corecte a = a+ (1.2)
2
(240+1.0)-240=2 Formula (1.1) necesit cu o operaie de adunare mai puin
n cazul rotunjirii prin tiere dect formula (1.2) dar din punct de vedere al exactitii nu este
(240+1.0)-240=0, ntotdeauna cea mai bun. ntr-adevr, fie c calculele se
iar dac vom muta parantezele, pentru orice mod de rotunjire, vom efectueaz ntr-o aritmetic zecimal (=10) a virgulei mobile cu
avea trei cifre semnificative (t=3) i fie a=0.596 i b=0.600.
240+(1.0-240)=1. Presupunem de asemenea c are loc rotunjirea corect. Atunci
0.596 + 0.600 1.20
Deci putem sintetiza c operaiile aritmetice +, -, *, / se c= = = 0.600,
realizeaz la calculatoarele numerice dup cum urmeaz (prin x 2 2
este notat rezultatul exact al operaiei aritmetice): cu toate c valoarea corect a lui c este egal cu 0.598. Efectund
calculele dup formula (1.2), vom avea
1) dac x , atunci rezultatul operaiei se rotunjete;
0.600 0.596 0.004
2) dac x < , atunci rezultatul se anuleaz, adic apare c = 0.596 + = 0.596 + = 0.598.
2 2
un zero-main; Este necesar s menionm c n exemplul dat n care nclinm
3) dac x > , atunci calculele se ntrerup i apare un pentru formula (1.2) numerele a i b au acelai semn.
S considerm acum un alt exemplu n care t=4 i se
semnal de depire.
aplic rotunjirea prin tiere. Fie a=-3.483 iar b=8.765. Folosind
formula (1.1) obinem
1.6. Efectul erorilor de rotunjire 3.483 + 8.765 5.282
c= = = 2.641
Erorile introduse de calculator n procesul de calcul sunt 2 2
erorile de rotunjire. Aceste erori se propag de la o operaie i acest rezultat este exact. Calculul dup formula (1.2) ne d:
26 27
c = 3.483 +
8.765 + 3.483
= 3.483 +
12.24
= Dei x n e x 0,x [0,1] se observ c pentru n=9 am obinut In<0,
2 2 evident contradictoriu. Apariia rezultatului eronat se datoreaz
= 3.483 + 6.120 = 2.637. algoritmului utilizat. Pentru explicarea acestui fapt notm cu En
Chiar dac s-ar efectua rotunjirea corect rezultatul obinut prin eroarea din In. Atunci E1 este eroarea din calculul 1/e=0.367879,
formula (1.2) ar fi diferit de valoarea exact, deoarece n acest caz deci E1 4.41210-7. Se vede din formula de recuren c E2= -2E1,
am avea c=2.642. Prin urmare, n exemplul de mai sus, unde a i b E3= -3E2=(-2)(-3)E1=3!E1 .a.m.d. Calculnd En pentru n=9 vom
sunt de semne diferite, vom prefera formula (1.1). gsi E9 9!*4.412*10-7 0.1601, care este n mod evident mai
n concluzie, este necesar de a ne folosi de una din mare dect I9, ntruct valoarea exact I9 (cu trei cifre
formulele (1.1) sau (1.2), n dependen de semnele lui a i b: dac semnificative ) este egal cu -0.06848+0.1601=0.0916. Se spune
sign(a)sign(b) atunci c=(a+b)/2; n caz contrar c=a+(b-a)/2. c algoritmul de calcul folosit este instabil.
Deci, se vede c algoritmul constituie aici sursa erorilor.
Pentru nlturarea acestui neajuns vom rescrie formula de
1.6.2. Evaluarea recurent a unei integrale recuren sub forma
1 In
Ne propunem s calculm urmtoarea integral : I n 1 = ,n = 2,3,K
1
n
I n = x n e x 1dx,n = 1,2,K n acest caz eroarea din In la fiecare pas se nmulete la factorul
0
1/n. Prin urmare, pornind cu IN (N>>1) am obine IN-1, IN-2,..., I3, I2
Integrnd prin pri, obinem| i eroarea de rotunjire s-ar micora la fiecare iteraie. Despre astfel
1 1 1 de algoritme se spune c au o stabilitate numeric. Pentru a
calcula valoarea iniial IN observm c
x e dx = x e nx n1e x1dx,
n x 1 n x 1
1 1
0 0 0 x n+1 1
sau I n x dx =
n
= ,
0
n +1 0 n +1
I n = 1 n I n 1,n = 2,3,K
i deci
Pentru n=1 avem lim I n = 0.
1 n
1
I1 = xe x1dx = . Alegnd I20=0, se admite o eroare ce nu depete 1/21. Atunci
e
0
eroarea n I19 nu va ntrece (1/20)*(1/21) 0.0024. Aceast eroare
Fie aritmetica virgulei mobile cu =10 i t=6. Utiliznd formula se va micora pn la 410-8 n timpul calculului I15 i devine mai
de recurena I n = 1 n I n1 , obinem [29]: mic dect eroarea de rotunjire. Rezultatele obinute prin recuren
I1 0.367879, I6 0.127120, invers sunt urmtoarele [29]:
I2 0.264242, I7 0.110160,
I3 0.207274, I8 0.118720, I20 0.0, I14 0.0627322,
I4 0.170904, I9 -0.068480, I19 0.0500000, I13 0.0669477,
I5 0.145480. I18 0.0500000, I12 0.0717733,
28 29
I17 0.0527778, I11 0.0773523, Soluia exact este x=y=1.0, ceea ce se poate verifica prin
I16 0.0557190, I10 0.0838771, substituire. Dac nlocuim ecuaia a doua a sistemului dat cu
I15 0.0590176, I9 0.0916123. ecuaia 0.5x+1.001y=1.5, atunci soluia devine x=3, y=0.
Sistemul de ecuaii
Deci este important alegerea corect a algoritmului de 14 x + 13 y 66 z = 1,
calcul. Un algoritm de calcul se numete numeric stabil dac
12 x + 11y 13 z = 1,
aplicat unei probleme cu date iniiale uor perturbate produce o 11x + 10 y + 4 z = 1,
soluie care aproape coincide cu soluia exact (soluia problemei
cu datele iniiale neperturbate). admite o soluie unic x=1, y=-1, z=0. nlocuim elementele din
partea dreapt a sistemului (1, 1, 1) cu 1.001, 0.999 i 1.001
respectiv. Atunci, lucrnd doar cu trei cifre semnificative, vom
obine x= -0.683, y=0.843, z=0.006.
1.6.3. Exemple de sisteme ru condiionate n practic soluia exact nu se cunoate, deci nu putem
avea certitudinea c soluia aproximativ calculat este suficient de
Fie sistemul liniar aproape de soluia exact. Acest lucru depinde, dup cum se vede
5 x 331y = 5, din cele cteva exemple de mai sus, att de algoritmul de calcul,
ct i de nsi problema considerat. Prin urmare, rezolvarea
6 x 397 y = 7. numeric a unei probleme nu este o chestiune simpl, adic nu este
Rezolvarea se poate face folosind algoritmul dat de regula lui suficient s facem nite calcule pentru a ajunge la soluia
Cramer problemei. Mai este necesar de a studia i de a face aprecieri,
5 331 5 331 5 5 privind condiionarea problemei i stabilitatea numeric a
= = 1,x = = 332, y = = 5.
6 397 7 397 6 7 algoritmilor de calcul.
Soluia exact a sistemului x=332, y=5. Dac se reia sistemul de
mai sus, admind ns o variaie mic a coeficientului 5 de pe
lng x din prima ecuaie, adic 1.7. Exerciii
5.01x 331y = 5,
6 x 397 y = 7, 1. S se calculeze eroarea absolut i relativ a numrului
acelai procedeu de calcul ne conduce la soluia x= -111.7845..., dac se ia drept numr aproximativ x*=3.1416.
y=-1.7070.... S-a produs o catastrof! Despre un astfel de sistem se
spune c este ru (sau prost) condiionat. 2. Fie aritmetica virgulei mobile cu =10, t=4 i se aplic
Un alt exemplu de sistem ru condiionat : rotunjirea prin tiere. S se determine eroarea relativ a diferenei
x-y, dac
x + 2 y = 3,
a ) x = 0.3258 103 i y = 0.3257 103 ;
0.499 x + 1.001 y = 1.5.
2
b) x = i y = 0.6665.
3
30 31
3. Presupunnd c lucrm ntr-o aritmetic a virgulei reprezint fraciile 1/2, 2/3 i 3/5 n aceste sisteme? Explicai
mobile dat, s se gseasc eroarea relativ n calculul expresiilor rezultatele obinute n urma rulrii programului [37]:
u i v: H=1./2.
1 1 1 X=2./3.-H
a) u = i v = , x 0, x 1;
x x +1 x( x + 1) Y=3./5.-H
E=(X+X+X)-H
b) u = (1 + x) 2 i v = x 2 + 2 x + 1;
F=(Y+Y+Y+Y+Y)-H
x 1 1 Q=F/E
c) u = 4 i v = , x 1.
x 1 ( )
(x + 1) x 2 + 1 WRITE(6,10) Q
ntotdeauna va avea loc u=v ? 10 FORMAT(1X,G20.10)
a3 b STOP
4. S se calculeze x= 2 , unde x=7.450.001, END
c
Pentru o iniiere mai aprofundat n materialul prezentat n
b=50.460.02, c=15.40.03. S se estimeze eroarea absolut i capitolul de fa, recomandm lucrrile [2,15,16,17,22,37].
eroarea relativ.
5. Fie aritmetica virgulei mobile =10, t=3 i rotunjirea
prin tiere. S se calculeze integrala [1]:
1
xn
In = dx
0
x+5
pentru n=1, 2, 3, 4, utiliznd formula de recuren
I n = 1n 5I n1
6. Care va fi rezultatul n urma rulrii urmtoarei secvene
de program [37] ?
X=0.0
H=0.1
DO 10 I=1.10
X=X+H
10 CONTINUE
Y=1.0-X
WRITE (6.20) X,Y
20 FORMAT (2E20.10)
STOP
END
34 35
x* cu proprietatea c f(x*) este aproape de zero, adic fiecare rdcin poate fi indicat un interval n care se afl (fig.2.3).
|f(x*)|<1, 1>0. Adeseori ecuaia dat poate fi prezentat sub forma:
(x)=g(x). Rdcinile ultimei ecuaii sunt abscisele punctelor de
Menionm c aceste dou moduri de definire a rdcinii
intersecie ale curbelor y=(x) i y=g(x) (fig.2.4).
aproximative nu coincid, dup cum se poate vedea din fig.2.1 i
fig.2.2. Ecuaia f(x)=0 este echivalent ecuaiei C f (x ) = 0
oricare ar fi constanta C 0 . De aceea nu se recomand de aplicat
ultima relaie pentru determinarea rdcinii aproximative, deoarece
ea depinde n mare msur de scara funciei f(x).
n fig.2.1 valoarea lui |x*r| este foarte mic, dar |f(x*)| nu
este apropiat de zero. n fig. 2.2 |f(x*)| este un numr foarte mic,
n timp ce |x*r| este un numr mare. n general ar fi bine s fie
satisfcute ambele condiii.
Fig. 2.3
36 37
Observaie. n fig.2.7 este prezentat graficul funciei:
3 2
y=x 1.5x +0.5.
Fig. 2.5
3 2
Astfel ecuaia x 1.5x +0.5=0 are trei rdcini: r1=0.5, r2=r3=1.
n punctul r=1 axa Ox este tangent la graficul funciei date. Se
spune c r=1 este o rdcin dubl a ecuaiei considerate.
n general, dac n descompunerea funciei n factori apare
k
factorul (xr) i nu apare o putere mai mare a lui (xr), se spune
c numrul r este o rdcin multipl de ordinul k. n exemplul de
mai sus avem:
3 2 2
x 1.5x +0.5=(x0.5)(x1) .
3 2
Ecuaia x 3x +3x1=0 are o rdcin tripl r=1
(fig.2.8), deoarece
3 2 3
Fig. 2.6 x 3x +3x1=(x1) .
n cursul de analiz matematic se demonstreaz c un
numr r este o rdcin multipl de ordinul k a unei ecuaii f(x)=0,
dac i numai dac f(r)=0 i primele sale k1 derivate
(k1) (k)
f '(r)=f "(r)==f (r)=0 i f (r) 0.
38 39
O rdcin care nu este multipl se numete rdcin Dac f(a)f(b)>0, adic f(a) i f(b) au acelai semn, aceasta
simpl.
Metoda analitic. Se tie c o funcie continu nu trece de
la o valoare la alta fr s treac prin toate valorile intermediare.
Fie f o funcie continu pe un interval nchis [a, b] i fie valorile
funciei f(x) la capetele acestui interval f(a) i f(b) sunt de semne
contrare (pentru a exprima c valorile f(a) i f(b) sunt de semne
y
Fig. 2.11 Fig. 2.12
f(b)
40 41
Fie a<x1<x2<<xk<b rdcinile ecuaiei f '(x)=0, aezate intervalul (1, 2) situaia este aceeai; la extremitile intervalului
n ordine cresctoare. irul (1, 3/4) i (3/4, 1) funcia are acelai semn, deci n acest interval
f(a), f(x1 ), f(x2 ), , f(xk ), f(b) ecuaia nu are nici o rdcin.
se numete irul lui Rolle. Prin urmare, avem dou variaii de semn, deci ecuaia propus are
Ecuaia f(x)=0 are attea rdcini reale, cte variaii de dou rdcini reale, r1 i r2, i anume:
semn prezint irul lui Rolle. ntr-adevr, n fiecare interval r1(2, 1), r2(1, 2).
(a, x1 ), (x1, x2 ), ,(xk1, xk ), (xk, b), Celelalte dou rdcini sunt complexe.
conform celor enunate mai sus, se afl cel mult o rdcin real a
funciei, numai dac la capetele intervalului funcia ia valori de 2.3. Metoda njumtirii intervalului
semne contrare.
De aici rezult urmtorul procedeu de separare a Fie ecuaia
rdcinilor unei ecuaii f(x)=0. Se scriu n ordine cresctoare f(x)=0, (2.2)
rdcinile derivatei, x1, x2, , xk, precum capetele a i b ale unde funcia f(x) este continu pe [a, b], are o singur rdcin
intervalului dat, iar dedesubt valorile corespunztoare ale funciei. real n acest interval i f(a)f(b)<0.
Metoda const n construirea recurent a unui ir de
x a x1 x2 xk b subintervale [ak, bk] i a unui ir de puncte ck=(ak+bk ) /2, astfel ca
f(ak)f(bk)<0 (2.3)
f(x) f(a) f(x1) f(x2) f(xk) f(b)
i
1
bk ak = (b a). (2.4)
Dac la capetele unuia dintre intervalele (a, x1), (x1, x2), ,(xk, b) 2k
funcia f(x) ia valori de semne contrare (prezint o variaie), Fie a0=a, b0=b i c0=(a0+b0)/2 jumtatea intervalului [a0,
ecuaia are n acel interval o singur rdcin; n caz contrar b0]. Dac f(c0)=0, atunci c0 este chiar rdcina cutat. Dac nu,
ecuaia nu are n acel interval nici o rdcin. atunci rdcina real se gsete ntr-unul din intervalele [a0, c0],
Exemplu. Fie ecuaia algebric: acolo unde funcia ia valori de semne contrare la capetele
4 3 2
f(x)=x x 2x +3x3=0. intervalului. Fie acesta notat cu [a1, b1], unde
3 2 2 2 2
Derivata f'(x)=4x 3x 4x+3=4x(x 1)3(x 1)=(x 1)(4x3) se
anuleaz pentru x1=1, x2=3/4, x3=1. irul lui Rolle este urmtorul c , dac sign f (a0 ) = sign f (c0 )
a1 = 0
a0 , dac sign f (a0 ) sign f (c0 )
x 2 1 3/4 1 2
f(x) 7 6 1.98 2 3 sign f (b0 ) = sign f (c0 )
c , dac
b1 = 0
La extremitile intervalului (2, 1) funcia are valori de semne b0 , dac sign f (b0 ) sign f (c0 )
contrare, deci n acest interval ecuaia are o singur rdcin; n
42 43
Evident c sign f (a1 ) = sign f (a0 ) i sign f (b1 ) = sign f (b0 ) i Dac vrem ca precizia s fie foarte mare (eroarea mic),
prin urmare f(a1)f(b1)<0. Continund, se obine succesiunea de
subintervale
y
[a, b]=[a0, b0][a1, b1][a2, b2] ... [ak, bk]...
la extremitile crora funcia ia valori de semne contrare,
a +b
ck = k k
2
i
c , dac sign f (ak ) = sign f (ck ) a=a0 a1=c 0 c x
ak +1 = k 0 r b1 b=b0
ak , dac sign f (ak ) sign f (ck )
Din punct de vedere geometric, rdcina real r este Fig. 2.18 Fif. 2.19
abscisa punctului de intersecie a curbei y= (x) cu dreapta y=x.
Modul cum irul aproximaiilor succesive
x0, x1, ... , xk, ... conduce spre soluia exact este ilustrat n fig.2.16 Deci irul de iterare poate fi divergent chiar dac x0 se
alege orict de apropiat de rdcin. O condiie suficient de
i 2.17 (n funcie de forma curbei y=(x)).
convergen este dat de urmtoarea teorem.
46 47
Teorem. Fie funcia (x) definit pe intervalul [a, b] i Dar lim xk +1 = ( lim xk ) , ntruct funcia (x) este continu. Prin
k k
(x)[a, b] pentru x[a, b] . Dac funcia este derivabil i
derivata sa ' satisface inegalitatea '(x) <1, oricare ar fi urmare, r=(r).
x[a, b], atunci ecuaia (2) are n [a, b] o singur rdcin real r, S artm c rdcina astfel obinut este unic. ntr-
putem forma irul de iterare x0, x1, ... xk,... dup regula (2.8), astfel adevr, fie s o alt rdcin a ecuaiei (2.7) n intervalul [a, b]
nct xk[a, b] pentru k=0, 1, 2,... i acest ir converge ctre . Atunci s=(s). Evalum diferena:
rs=(r)(s)='()(rs), (r, s)[a, b].
rdcina r. n plus eroarea este evaluat prin
Deci
k
xk r
xk xk 1 x1 x0 , k1. (rs)[1'()]=0,
1 1 de unde rezult c r=s.
Pentru a analiza cum se propag eroarea n calcule vom
Demonstraie. Datorit faptului c (x)[a, b], x[a, b], scrie:
rezult c (a)a i (b)b. Punem g(x)=(x)x. Atunci g(a)0,
g(b)0 i deoarece g(x) este continu, rezult c exist cel puin un xk1r=xk1 xk+(xk1)(r)=xk1xk+'()(xk1r), (xk1, r).
punct r[a, b], astfel nct g(r)=0, adic r este rdcina ecuaiei
iniiale (2.7) n intervalul [a, b] . S considerm acum diferena: Datorit inegalitii din enunul teoremei, se obine:
xk+1r=(xk)(r). xk1rxk1xk+xk1r,
Aplicnd teorema lui Lagrange, se obine: Sau
x k +1 r = ( k )( x k r ), k ( x k ,r ). 1
xk1r x x .
Deoarece 1 k k1
'(x), x[a, b], Prin urmare:
avem:
xkr=(xk1)(r)xk1r xkxk1.
xk+1rxkr. 1
Atunci, pentru orice k0, avem: Teorema este demonstrat.
x1rx0r, Deci, pentru rezolvarea ecuaiei (2.6) prin metoda
2
x2r x0r, aproximaiilor succesive va trebui s o aducem, n prealabil, la
............................ forma (2.7), alegndu-l pe (x) n mod special, ca s se satisfac
condiia de convergen.
k+1
xk+1r x0r.
Exemplu. Fie dat ecuaia:
3
Din ultima relaie rezult ( fiindc 0<1): x 2x9=0.
lim x k = r ,
k
48 49
Prin metoda grafic sau prin metoda analitic se stabilete 2.5. Criterii de oprire n metodele iterative
c ecuaia admite o singur rdcin real n intervalul (2, 3).
Rescriem ecuaia sub forma echivalent: n metodele iterative oprirea procesului de calcul se face
x= 3 2 x + 9 prin trunchierea irului de iterare {xk} la un indice m, astfel nct
Pentru a verifica condiia de convergen, calculm derivata: termenul xm s constituie aproximaia satisfctoare a rdcinii
2 1 exacte. Definirea apropierii rdcinii aproximative x* de rdcina
( x) = .
3 2 exact r este o chestiune delicat i e departe a fi perfect.
3
(2 x + 9) Presupunem c rdcina simpl r a ecuaiei f(x)=0 este
Condiia de convergen ( x) < 1 este ndeplinit izolat ntr-un interval [a, b]. Vom deduce o estimare a erorii, care
s fie independent de metoda de rezolvare a ecuaiei considerate.
pentru intervalul (2, 3) i deci irul de iterare este dat de
Fie funcia f(x) continu i derivabil pe intervalul [a, b] i fie
xk+1= 3 2 x + 9, k=0, 1, 2,
k
m=minf'(x)>0, x(a, b).
cu valoarea iniial (de start) x 0(2, 3). Aplicnd teorema lui Lagrange, se obine:
De remarcat c dac am fi rearanjat ecuaia iniial f(xk)f(r)=(xkr) f'(), (xk, r)[a, b],
3
x 2x9=0 de unde rezult
n felul urmtor: x=x3x9 i deci am fi folosit irul de iterare:
f ( xk )
xk+1 = xk3 xk 9 , atunci metoda aproximaiilor succesive diverge, xkr .
m
condiia suficient de convergen nefiind ndeplinit: Aceast relaie evideniaz, n primul rnd, c dac f'(r)
( x) = 3 x 2 1 > 1 , x (2, 3). este mic, atunci f(xk)/m este mare i perturbaii slabe n xk pot
Din teorema demonstrat mai sus rezult c pentru produce perturbaii mari n rdcin; n acest caz se spune c
determinarea rdcinii aproximative x* cu eroarea >0 procesul de problema determinrii lui r este ru condiionat. Pentru ilustrare a
calcul l vom opri cnd se vedea fig.2.2 din paragraful 2.1. n al doilea rnd, dac dorim s
determinm rdcina r cu eroarea prescris >0 am putea opri
x x <. iteraiile de ndat ce
1 k+1 k
Acest criteriu pentru terminarea calculelor necesit aprecierea f(xk)<m,
parametrului subunitar , care nu se cunoate, n mod general, ceea ce presupune cunoaterea majorantei m a derivatei f'(x).
apriori. n 2.5 ne vom ocupa de examinarea altor criterii de stopare Deoarece derivatele, n caz general, sunt greu de estimat,
n metodele iterative de rezolvare a ecuaiilor algebrice i nclinm s facem cteva iteraii n plus, dect s folosim
transcendente. formulele de mai sus sau alte formule complicate de evaluare a
n ncheiere remarcm c metoda aproximaiilor succesive erorii.
se utilizeaz cu succes i pentru studiul aplicaiilor numite n practic, rezolvnd problema la calculatorul electronic,
contracii n aa-numitele spaii metrice. putem folosi urmtorul criteriu de stopare. Fie
f(xk+1)<1, (2.9)
50 51
unde 1>0 i este suficient de mic; de exemplu, 1= M , singur rdcin real r n intervalul [a, b]. S presupunem n plus
c derivatele f'(x) i f"( x) pstreaz un semn constant pe intervalul
unde M este unitatea de rotunjire a calculatorului. Atunci
[a, b]. Ducem n punctul A0 (fig.2.20) tangenta la curba y=f(x).
putem termina iteraiile i accepta xk+1 ca rdcin Punctul x1 n care tangenta ntretaie axa Ox ne d o valoare
aproximativ, dac aproximativ a rdcinii. Deoarece
xk+1xk<2. (2.10) f ( x0 )
Aici 2>0 i se alege astfel nct 2 1. n cazul cnd se verific x1=x0p i f '(x0)= .
p
inegalitile (2.9) i (2.10) cantitatea xk+1xk este, de regul, o
bun estimare a lui xkr. Menionm c n practic cel mai des vom avea:
este utilizat n calitate de criteriu de oprire a algoritmului cel care f '(x0)p=f(x0).
verific doar inegalitatea (2.10) cu 2>0 i suficient de mic. Pentru
Prin urmare, abscisa punctului de intersecie a acestei
aprofundarea problemelor acestui paragraf recomandm referinele tangente cu axa Ox este
[15,17,20]. f( )
x1 = x 0 x 0 .
f ( x0)
2.6. Metoda lui Newton (metoda tangentei) Considerm punctul de coordonate A1(x1, f(x1)) i
Fie ecuaia algebric sau transcendent f(x)=0 care admite o construim tangenta la curb n acest punct. n mod analog ca i mai
sus se arat c
f( )
x2=x1 x1 .
f ( x1)
Procedeul se va repeta n mod asemntor. Se obine
metoda tangentelor definit de urmtoarea formul de iterare:
f( )
xk+1=xk x k , k=0, 1, 2, ... (2.11)
f ( x k )
Aceast metod se mai numete i metoda lui Newton.
52 53
1 3 estimat de relaia:
xk+1= ( xk + ). 2
2 xk xk+1rCxkr .
Alegnd x0=2, obinem:
x1=1,75; x2=1,732; x3=1,7320508. Demonstraie. Se observ c metoda lui Newton este un
caz particular al metodei aproximaiilor succesive cu funcia:
Se observ c avem o convergen rapid a irului x1, x2, ...
f ( x)
(x)=x .
ctre 3 . Acest lucru nu este ntmpltor. Analizm cazul general. f ( x)
Fie dat a>0 i s se gseasc rdcina ecuaiei: Se verific imediat c r=(r) i '(r)=0. Deci putem afirma c ntr-
2
x a=0. o vecintate a rdcinii r se ndeplinete condiia ( x) < 1 .
Atunci
Rezult c irul (2.11) converge (ctre rdcina r), dac
xk a = xk + a
2
xk +1 = xk aproximaia iniial x0 este aleas suficient de aproape de rdcin.
2 xk 2 2 xk Pentru a analiza viteza de convergen se evalueaz
i diferena:
x a ( xk a )2 f ( xk ) 1
x k +1 a = + a=
k
, xk +1 r = xk r = f ( xk )( xk r ) ( f ( xk ) f (r )) .
2 2 xk 2xk f ( xk ) f ( xk )
ori, utiliznd eroarea relativ: Prin aplicarea repetat a teoremei de medie a lui Lagrange, innd
2
xk +1 a = a x a .
k
seama de condiiile din enun, rezult:
2 xk 1 1
xk+1r (f'(xk)f'(1))(xkr)= f''(2)xk1xkr,
a a m m
Astfel, n cazul rezolvrii ecuaiei x 2 a = 0 , putem spune c unde
fiecare iteraie n metoda lui Newton, n mod aproximativ, ridic 1=r+1(xkr), 2=1+2(xk1), 01, 21 .
eroarea la ptrat. Deci numrul cifrelor zecimale (sau binare) Avem
corecte aproape se dubleaz, la fiecare iteraie. Acest rezultat este 2 (1 1) M
adevrat i n cazul rezolvrii ecuaiilor scrise n forma general. xk+1rCxkr , C =
m
Se mai spune c metoda lui Newton este cu convergenta ptratic i teorema este demonstrat.
sau c este o metod de ordinul al doilea. O dificultate n aplicarea metodei lui Newton (i n general
Teorem. Fie funcia f(x) definit i de dou ori derivabil a unei metode iterative) o reprezint alegerea aproximaiei iniiale
pe [a, b]. Presupunem c exist m>0, M<, astfel nct x0. S presupunem, de exemplu, c se rezolv ecuaia arctg x=0
f'(x)m>0, f''(x)M<, x [a, b]
(fig.2.22).
i r[a, b] este rdcina ecuaiei f(x)=0. Atunci irul de iterare
determinat de relaia (2.11) converge ctre r dac aproximaia
iniial x0 este aleas ntr-o vecintate a rdcinii r. Eroarea este
54 55
aproximaia iniial x0< 3 / 3 , vom vedea c irul iterativ {xk}
tinde ctre rdcina r=1; alegnd x0> 3 / 3 , se asigur
convergena ctre rdcina r=1. n practic se recomand de a
alege valoarea aproximativ iniial x0 astfel ca
f(x0) f''(x0)> 0.
Fig. 2.22
56 57
1 care trece prin punctele (xk1, f(xk1)) i (xk, f(xk)) i Ox (fig.2.24);
xk+1r= xkr.
2 de aici i denumirea metodei.
Dac se cunoate gradul de multiplicitate a rdcinii, atunci
putem accelera convergena irului construit prin metoda lui
Newton. Dac r este o rdcin multipl de gradul p, adic
(p1) (p)
f'(r)=f''(r)= =f (r) = 0, f (r) 0,
se recomand de a efectua calculele conform formulei de iterare:
f ( xk )
xk +1 = xk p , k=0, 1,
f ( xk )
Pentru startul iteraiilor n metoda secantei sunt necesare calculele le vom opri, dac
dou aproximaii iniiale x0 i x1. Valoarea xk+1 este abscisa M
xk +1 xk xk xk 1 < ,
punctului de intersecie dintre secanta 2m
x xk y f ( xk ) ceea ce garanteaz inegalitatea xk+1r<.
= S studiem n continuare viteza de convergen a metodei
xk 1 xk f ( xk 1 ) f ( xk )
secantei, presupunnd c se ndeplinesc condiiile: f(r)=0, f'(r)0,
58 59
1/
iar f"( x) sunt funcii continue i pstreaz un semn constant pe xk+1ra (xkr)
intervalul [a, b]. Pentru aceasta se dezvolt funcia f(x) n serie
1
Taylor n vecintatea punctului x=r: unde = ( 5 + 1) 1.62, 1/0.62.
2 2
(x r)
f ( x) = f (r ) + ( x r ) f (r ) + f (r ) + ... n metoda lui Newton (vezi paragraful 2.6) =2 i deci
2 metoda lui Newton converge mai repede dect metoda secantei. Pe
Notm prin k1=xk1r, k =xkr, k+1=xk+1r. n dezvoltarea Taylor de alt parte, metoda lui Newton reclam necesitatea evalurii
vom pune succesiv x=xk1 i x=xk , apoi o trunchiem dup termenul funciei i a derivatei sale, iar metoda secantei necesit numai
al doilea (innd seama c f(r)=0): calculul funciei. De aceea la aceeai cantitate de operaii n
metoda secantei se poate face de dou ori mai muli "pai" i deci
f ( xk 1) k 1 f (r ) + k 1 f (r ),
2
se poate obine rdcina cu o precizie mai nalt.
2 S observm c la fiecare pas nou n metoda secantei se
f ( xk ) k f (r ) + k f (r ).
2
calculeaz o singur valoare nou pentru funcia f. Formula (2.12)
2 se mai poate pune sub forma:
nlocuind n formula de iterare (2.13), obinem: xk 1 f ( xk ) xk f ( xk 1) ,
xk +1 =
[ k f (r ) + k f (r )]( k k 1)
2
f ( xk ) f ( xk 1)
k +1 k 2 , care nu se recomand la programare, deoarece dac f(xk) f(xk1)>0
k k 1
2 2
( k k 1) f (r ) + f (r ) i xkxk1, atunci poate avea loc o neutralizare a termenilor.
2
sau
1 f (r ) 2.8. Rezolvarea ecuaiilor algebrice
k +1 k k 1.
2 f (r ) Considerm ecuaia algebric
Deci putem scrie: n n1
Pn(x)anx +an1x +...+a1 x +a0=0, (2.15)
1 f (r )
xk +1 r a( xk r )( xk 1 r ), a = . (2.13) unde coeficienii a0, a1, a2, ... , an sunt reali, an>0.
2 f (r )
Relaia de recuren (2.13) o vom pune sub forma:
2.8.1. Proprietile ecuaiilor algebrice
xk+1r=a (xkr) ,
unde i urmeaz a fi determinate. Substituind aceast form n Fr a putea rezolva ecuaia algebric (2.15) se poate stabili
(2.13), vom obine (pentru demonstraie vezi [18,27]): cte rdcini are ecuaia, unele relaii ntre coeficienii polinomului
2 Pn(x) i rdcinile ecuaiei (2.15) etc. n cele ce urmeaz vom
=1, 1=0. (2.14)
Se va lua numai rdcina pozitiv a ecuaiei ptrate (2.14), aduce unele dintre aceste proprieti:
deoarece numai ea garanteaz convergena irului {xk}. Prin 1. O ecuaie algebric (2.15) de gradul n are exact n
rdcini (printre care pot fi att reale, ct i complexe),
urmare, pentru metoda secantei vom avea: fiecare rdcin multipl fiind considerat ca attea
60 61
rdcini confundate ct indic ordinul ei de 1 1
multiplicitate. R1 = 1
; R2 = 1 + max ak .
1+
max ak an 0k n 1
2. ntre coeficienii ecuaiei algebrice (2.15) i
a0 1kn
rdcinile ei r1, r2, ... , rn exist relaiile (formulele
Aceste i alte proprieti ale ecuaiilor algebrice sunt tratate
lui Vite): n manualele de algebr superioar.
r1+r2+...+rn= an1 ,
an 2.8.2. Schema lui Horner
an 2 Schema lui Horner constituie un procedeu efectiv de calcul
r1r2+r1r3+...+rn1rn= ,
an al valorii unui polinom i al derivatelor lui.
Considerm polinomul de gradul n:
n n1
an 3 Pn(x)anx +an1x + ... +a1x+a0 .
r1r2r3+r1r3r4+...+rn2rn1rn= ,
an Pentru stabilirea schemei lui Horner se transcrie polinomul
astfel:
................................................ Pn(x)=a0+x(a1+x(a2+ ... + x((an1+ xan) ... )).
Deci putem afla valoarea acestui polinom n punctul x=,
n a0
r1r2 ... rn=(1) . calculnd succesiv mrimile:
an
bn=an ,
3. Rdcinile complexe ale ecuaiei algebrice (2.15) cu bn1=an1+bn=an1+an ,
coeficieni reali sunt conjugate dou cte dou.
(Numrul aib, i = 1 , se numete conjugatul lui bn2=an2+bn1=an2+(an1+an),
a+ib). ....................................................
4. Dac o ecuaie algebric (2.15) cu coeficieni
raionali admite ca rdcin un iraional ptratic b0=a0+b1=a0+(a1+...+(an1+an)...)=Pn().
m+n p (m, nQ, n0, pN), ea admite i Aceast schem de obinere a irului finit {bi} se numete
conjugatul su, mn p , ca rdcin. schema lui Horner. Ea necesit cel mult 2n operaii aritmetice. Se
5. Ecuaia algebric (2.15) de ordin n par i cu a0<0 demonstreaz c, n cazul general, cnd toi coeficienii
polinomului dat Pn(x) sunt diferii de zero, nu exist o schem mai
are cel puin dou rdcini reale de semne diferite.
6. Rdcinile reale i complexe ale ecuaiei algebrice eficient de calcul, dect cea a lui Horner.
(2.15) sunt situate n inelul circular R1<x<R2, Ctul mpririi lui Pn(x) la x este dat de polinomul
unde Pn1(x) de gradul n1 cu coeficienii b1, b2 , ... , bn:
62 63
n1 n2
Pn1(x)=bnx +bn1x +...+b2x+b1 , Schema concis a lui Horner
adic an an1 an2 ... a2 a1 a0
Pn(x)=(x)Pn1(x)+Pn().
Ultima relaie ne d: (o) bn bn1 ... b3 b2
b1
Pn ( x) Pn ( )
Pn 1 ( x) = .
x
bn bn1 bn2 ... b2 b1 b0=Pn()
Trecnd la limit n aceast identitate, obinem: (o) cn cn1 ... c3 c2
P'n()=Pn1().
cn cn1 cn2 ... c2 c1=1/1!P'
Prin urmare, cu ajutorul lui Pn1(x) putem calcula valoarea . . . . ()
. ... n
derivatei polinomului Pn(x) n punctul x=. Valoarea derivatei de . .
...
.
. . . .
asemenea se obine cu ajutorul schemei lui Horner: sn sn1 1
sn2=
(n 2)!
cn=bn=an, (0) qn (n2)
Pn ()
cn1=bn1+cn=an1+2an,
2
cn2=bn2+cn1=an2+2an1+3an ,
.............................................................. qn 1 (n1)
qn1= Pn ()
n1 (n 1)!
c1=b1+c2=a1+2a2+ ... +nan1 =P'n(). (0)
Procedeul poate fi continuat obinndu-se valorile oricrei derivate
a lui Pn(x) ntr-un punct fixat x=. 1 (n)
rn= P ()
Pentru uurina calculelor coeficienii polinoamelor n! n
64 65
Vom folosi metoda lui Newton pentru a determina o Exemplu [30]. S se calculeze rdcina real a ecuaiei:
3
rdcin real a ecuaiei date. irul de iterare Newton (vezi P3(x)= x x1=0
paagraful 2.6) devine:
utiliznd x0=1.3.
( )
xk +1 = xk P n x k , k=1, 2, 3, Folosind schema concis a lui Horner, se obine:
Pn ( x k )
Valorile lui Pn(x) i Pn' ( x ) n punctele fixate xk, k=0, 1, 2, ... , se + 1 0 1 1
calculeaz cu ajutorul schemei lui Horner (vezi 2.8.2): 0 1.3 1.69 0.897
bn=an , = 1 1.3 0.69 0.103 = b0 = P3(1.3)
+ 0 1.3 3.38
bj=aj+ xkbj+1, j=n1, ... , 0,
= 1 2.6 4.07=c1=P'3(1.3)
Pn(xk)=b0 ,
0.103
cn=bn , x1 = x0 b 0 = 1.3 = 1.325
c1 4.07
cj=bj+ xkcj+1, j=n1,...,1,
+ 1 0 1 1
P'n(xk)=c1. 0 1.325 1.755625 1.001203
Prin urmare, expresia irului de iterare va fi = 1 1.325 0.755625 0.001203 = b0 = P3(1.325)
b + 0 1.325 3.511375
xk+1=xk 0 , k=0, 1, 2, ... (2.16) = 1 2.65 4.267=c1=P'3(1.325)
c1
Cu ajutorul acestei metode pot fi calculate toate rdcinile
0.001203
reale ale ecuaiei algebrice date. ntr-adevr, fie r1 rdcina x2 = x1 b0 = 1.325 = 1.3247181
(simpl) obinut prin metoda lui Newton (2.16). Atunci c1 4.267
Pn(x)=(x r1)Pn1(x).
+ 1 0 1 1
Deci, pentru a gsi o alt rdcin real, avem ecuaia
0 1.32471 1.154878 1.0000004
algebric de gradul n1:
n1 n2 8
Pn1(x)bn x +bn1 x + ... +b2 x +b1=0. = 1 1.32471 0.154878 0.0000004 = b0 =
Ultima ecuaie o rezolvm relund metoda lui Newton i schema 8 P3(1.324718)
lui Horner dup cum s-a artat anterior. Astfel se calculeaz toate
rdcinile reale. + 0 1.32471 4.109756
Aceast metod pentru determinarea rdcinilor reale ale 8
ecuaiilor algebrice se mai numete metoda iterativ Birge-Vite = 1 2.64943 4. 264634 = c1 = P'3(1.324718)
(vezi[16]). 6
66 67
y B
0.0000004 y
x3 = x2 b0 = 1.324718 = 1.3247179 A
c1 4.264634
Exist i alte metode de ordin superior (vezi [36]), adic x cos x =0;
metode n care irul de iterare s tind mai repede ctre rdcina r x3+3x23=0.
dect irul Newton sau Steffensen.
2. Presupunem c exist un interval [a, b], astfel nct f(a)
f(b)<0 i n intervalul [a,b] funcia este continu, iar
ecuaia f(x)=0 admite soluie unic. Care este numrul
70 71
maximal de njumtiri al intervalului dat pentru a CAPITOLUL III
obine soluia cu eroarea dat >0?
3. Considerm ecuaia f(x)=0, unde
METODE NUMERICE N ALGEBRA
( x + 1) 2 1, dac 1 x 0,
f ( x) = LINIAR
( x 1) + 1, dac 0 x 1.
2
M .....
x y
n n
T
Vom nota prin A matricea transpus (matricea obinut
din cea dat, transformnd liniile n coloane i coloanele n linii): x1 y1 x2 y2 ... x1 yn
x1
x2 y1 x2 y2 ... x2 yn
a11 a21 a31 ... am1 x
xyT = 2 ( y1 , y2 ,..., yn ) = x3 y1 x3 y2 ... x3 yn .
a12 a22 a32 ... am 2 .....
.......... .......... ............
AT = a13 a23 a33 ... am 3 x
n
xn y1 xn y2 ... xn yn
................................
a1n a2 n a3n ... amn
xTy se numete produsul scalar al vectorilor x,y R i se
n
x x 1 n x , A 1 = max aij ;
1 j n
i =1
80 81
1. Sistemul de ecuaii are o soluie unic. n acest caz se care are o infinitate de soluii; aceste dou soluii descriu una i
spune c sistemul (3.1) este compatibil determinat. De exemplu, aceeai dreapt x2 = 1 x1 .
sistemul: x2
x1 + x2 = 2
2 x1 x2 = 1
este compatibil determinat cu soluia x1 = x2 = 1. n fig. 3.1 este x1 + x2 = 1
dat interpretarea geometric a sistemului considerat, din care se
vede c dreptele x2 = 2 x1 i x2 = 1 + 2 x1 se intersecteaz
numai ntr-un singur punct.
0 1 x1
x2
86 87
a1(2j ) = a1(1j) , j = 1,2,..., n; ai(,kk11)
i , k 1 = ,
ai(12 ) = 0, i = 2,3,..., n; ak(k11, k) 1
aij(2 ) = aij(1) i1a1(1j) , i, j = 2,3,..., n; iar
(2 ) (1) (2 ) (1) (1) (k )
bi(k 1) , pentru i k 1,
b1 = b1 , bi = bi i1b1 , j = 2,3,..., n. bi = (k 1)
(1) (1) bi i , k 1 bk(k11) , pentru i k .
Mai sus s-a notat aij = aij ; i, j = 1,2,..., n i bi = bi ;. i=1,2,,n.
Prima ecuaie a sistemului (3.4) coincide cu prima ecuaie a
Dup n pai necunoscuta xn 1 va fi eliminat din ultima
sistemului (3.3). n continuare se repet procedeul de mai sus
pentru eliminarea necunoscutei x2 din sistemul (34) .a.m.d. La ecuaie, obinndu-se un sistem cu matricea superior triunghiular:
pasul k se obine sistemul:
a11(1) x1 + a12(1) x2 + K + a1(1k) xk + K + a1(1n) xn = b1(1) ,
A( k ) x = b ( k ) (2 )
unde a22 x2 + K + a2(2k) xk + K + a2(2n) xn = b2(2 ) ,
a11(1) a12(1) K a1(1, k) 1 a1(1k) K a1(1n) b1(1) KKKKKKKKKKKKKKKKKKKKK
0 a22(2 )
K a2(2, k) 1 a2(2k) K a2(2n) b2(2 ) akk(k ) xk + K + akn
(k )
xn = bk(k ) ,
KKKKKKKKKKKKKKKKKKKKK
KKKKKKKKKKKKKKKKKKK M
K ak(k11, k) 1 ak(k11,k) K ak(k11,n) ; b(k ) = bk(k11)
(n )
A(k ) = 0 0 ann xn = bn(n ).
0 0 K 0 (k )
akk K akn (k ) bk(k )
Acest sistem se rezolv ncepnd cu ultima ecuaie cu
KKKKKKKKKKKKKKKKKKK M ajutorul procesului de eliminare invers care se poate descrie
(k ) (n ) b(k )
0 0 K 0 a K a n astfel:
nk nn
bn(n ) bn(n11) an(n11,n) xn
xn = (n ) , xn1 = ,
Elementele aij(k ) ale lui A
(k )
i bi(k ) ale lui b(k ) se calculeaz ann an(n11,n)1
n
recursiv prin formulele: bk(k ) a( )x k
kj j
aij(k 1) , pentru i k 1, xk = j = k +1
, k = n 2, n 3, K,2,1.
a (k )
aij(k ) = 0 , pentru i k , j k 1, kk
(k 1) ( k 1)
aij i ,k 1 ak 1, j pentru i k , j k , Metoda eliminrii a lui Gauss prezentat mai sus presupune
unde c elementele pivot trebuie s fie diferite de zero. Dac la
efectuarea pasului k elementul pivot akk(k ) = 0 , atunci cel puin unul
88 89
din celelalte elemente din coloana k i din liniile k+1,k+2,,n este x1 + x2 = 2 .
nenul; n caz contrar matricea A ar fi singular ( det ( A) = 0 ).
0.000100 x1 + x2 = 1.
Permutnd ecuaiile sistemului putem aduce pe locul (k,k)
i metoda eliminrii lui Gauss l transform n:
elementul nenul i, deci, este posibil s relum eliminarea.
Considerm un exemplu simplu: x1 + x2 = 2 .
x2 = 1.
0 3 x1 0 cu soluia x1 = x2 = 1.00 .
=
2 1 x2 4 Prin urmare, dac un element pivot este exact egal cu zero
sau chiar aproape egal cu zero, din motive de stabilitate numeric,
Evident, nici o multiplicare a primei ecuaii nu poate fi utilizat trebuie s efectum rearanjarea ecuaiilor.
pentru a elimina pe x1 din ecuaia a doua. Schimbnd ecuaiile Exist dou strategii de alegere a elementului pivot pentru a
preveni ca influena erorilor de rotunjire s devin catastrofal.
ntre ele cu locul, obinem:
Prima strategie se numete pivotare parial i const n
2 x1 + x2 = 4 . urmtoarele: la pasul k pivotul se ia egal cu primul element
3 x2 = 0 . maxim n modul din coloana k subdiagonal a lui A(k):
un sistem sub form triunghiular, care se rezolv imediat prin ark(k ) = max aik(k )
k i n
eliminarea invers: x2 = 0, x1 = 2. i se permut liniile k i r.
Analizm un alt exemplu: O alt strategie de permutare const n pivotarea complet
0.000100 x1 + x2 = 1, (total); se schimb liniile k i r (rk) i coloanele k i s, (sk)
astfel nct pivotul akk(k ) obinut dup permutare s coincid cu
x1 + x2 = 2
cu soluia exact x1 = 1.00010, x2 = 0.99990. . Vom utiliza o primul element maxim n modul din submatricea delimitat de
aritmetic a virgulei mobile cu = 10 i t = 3 : se pstreaz n ultimile n-k linii i coloane ale lui A(k ) :
calcule numai trei cifre zecimale semnificative i presupunem c
rezultatul se rotunjete corect. Aplicnd metoda eliminrii a lui ars(k ) = max aij(k ) .
k i , j n
Gauss obinem sistemul: Matricea A se numete diagonal dominant dac
0.000100 x1 + x2 = 1, n
aii > aij , i = 1,2,K, n .
10000 x2 = 10000. j =1
j i
Din ultima ecuaie avem x2 = 1.000 care nlocuit n prima ecuaie
Fie A o matrice simetric i diagonal dominant. Dup primul pas
ne d x1 = 0.000 , evident un rezultat eronat. S-a produs o de eliminare gaussian matricea A(2) devine:
catastrof de calcul! Permutnd ecuaiile ntre ele, avem sistemul: a z
0 A1
90 91
unde submatricea A1 este de asemenea diagonal dominant. Se lui Gauss nu este optim s examinm algoritmul lui Strassen de
poate demonstra c procesul eliminrii n cazul matricelor multiplicare a dou matrice.
diagonal dominante nu depinde de alegerea elementului pivot. Nu Fie de exemplu,
este necesar pivotarea i n cazul cnd matricea A este pozitiv a a b b
A = 11 12 , B = 11 12 .
definit. a21 a22 b21 b22
Putem estima numrul de operaii aritmetice n metoda
Algoritmul lui Strassen (vezi, de exemplu, [18], pag.47) se bazeaz
eliminrii lui Gauss. Procedura de eliminare a necunoscutei x1 pe identitatea matriceal:
cere n(n 1) = n 2 n operaii aritmetice. Eliminarea necunoscutei C D
A B = ,
xk necesit k (k 1) = k 2 k operaii. Prin urmare procedura E F
direct cere urmtorul numr de operaii aritmetice: unde:
N1 = (n 2 n) + K + (k 2 k ) + K + (12 1) = C = (a11 + a22 )(b11 + b22 ) + a22 ( b11 + b21 ) (a11 + a12 )b22 +
n n
n(n + 1)(2n + 1) n(n + 1) n 2 n + (a12 a22 )(b21 + b22 ),
= k2 k = = .
k =1 k =1 6 2 3 F = (a11 + a22 )(b11 + b22 ) + a11 (b12 b22 ) (a21 + a22 )b11 +
Procesul de eliminare invers se efectueaz cu mult mai + ( a11 + a21 )(b11 + b12 ),
repede. Necunoscuta xn se afl cu ajutorul unei singure operaii D = a11 (b12 b22 ) + (a11 + a12 )b22 ,
(mprirea la elementul pivot); calculul xn 1 cere dou operaii E = (a21 + a22 )b11 + a22 ( b11 + b21 ).
(mprire scdere i apoi mprire) .a.m.d.; pasul k necesit Astfel, pentru a obine produsul a dou matrice este
numai k operaii. Prin urmare, eliminarea invers necesit suficient de a efectua apte nmuliri i 18 adunri. Dac am
n
n(n + 1) multiplica matricele n mod tradiional, ne-ar trebui opt nmuliri.
N2 = k =
k =1 2 n exemplul de mai sus nu s-au concretizat elementele matricelor A
de operaii aritmetice. i B i nu s-a utilizat proprietatea de comutativitate a produsului.
Muli ani s-a crezut c metoda eliminrii lui Gauss este Prin urmare, elementele aij , bij pot fi considerate matrice i avem
optim n sensul c orice alt metod direct de rezolvare a o procedur de multiplicare a matricelor de orice dimensiune n. Fie
n3 n = 2 m , m natural; n caz contrar adugm attea linii i coloane
sistemelor din n ecuaii liniare necesit cel puin operaii nule n matricele A i B nct n ar deveni o putere a lui doi. Dac
3
aritmetice. n momentul de fa se cunosc metode n care numrul N(2m) este numrul de operaii efectuate la nmulirea a dou
de operaii este redus la Cn ( 2 < < 3 ). Aceste metode se matrice de dimensiune 2 m , atunci n baza identitii de mai sus
bazeaz pe un rezultat remarcabil obinut n 1971 de ctre A. avem:
Schonhage i V. Strassen care au artat c, teoretic, nmulirea N (2 m ) = 7 N (2 m1 ) + 18 2 2 m2.
poate avea o complexitate numai cu puin superioar adunrii. Nu innd seama c N(2)=7+18, ultima relaie implic
ne vom opri aici asupra acestor metode. Pentru a arta c metoda N (2 m ) = 7 m + 6(7 m + 4 m )
92 93
sau 1 0 0 2 1 1 2 1 1
N (n) = nlog 2 7 + 6(n log 2 7 + nlog 2 4 ) .
M 1 A = 2 1 0 4 1 0 = 0 1 2 = A( 2) ,
Deoarece = log 2 7 2.81 < 3 , algoritmul lui Strassen pentru n 1 0 1 2 2 1 0 3 2
suficient de mare este mai avantajos dect procedeul obinuit de
nmulire a matricelor. 1 0 0 1 1
M 1b = 2 1 0 1 = 4 = b ( 2 ) .
3.4. Factorizarea LU 1 0 1 7 8
n etapa final de transformare, necunoscuta x2 va fi eliminat din
S relum exemplul numeric din paragraful 3.3 de
rezolvare a sistemului Ax = b , cu ultima ecuaie, obinndu-se un sistem sub form triunghiular
Ux = c , unde
2 1 1 1
2 1 1 1
A = 4 1 0 , b = 2 .
2 2 1 7 U = 0 1 2 , c = 4 .
0 0 4 4
n urma procesului de eliminare a necunoscutei x1 se obine
(2 ) (2 )
sistemul A x = b , unde Se observ c U = M 2 A(2 ) i c = M 2b (2 ) , unde
2 1 1 1 1 0 0 1 0 0
(2 )
A = 0 1 2 , b = 4 .
( 2)
M2 = 0 1 0 = 0 1 0 .
0 3 2 8 0
32 0 0 3 1
Notm prin M 1 matricea interior triunghiular: Prin urmare procesul de transformare a sistemului Ax = b , ntr-un
1 0 0 1 0 0 sistem echivalent de form triunghiular Ux = c poate fi
M 1 = 21 1 0 = 2 1 0 , reprezentat ca nmulirea sistemului iniial succesiv la matricele
M1, M 2 :
31 0 1 1 0 1
M 2 M 1 Ax = M 2 M 1b .
care se obine din matricea unitate prin nlocuirea elementelor Relaia M 2 M 1 A = U permite a da o alt interpretare metodei lui
subdiagonale din coloana ntia cu multiplicatorii 21 , 31 . Se Gauss. Multiplicnd aceast relaie la stnga cu matricea inferior
verific uor c triunghiular L = M 11M 21 obinem:
A = LU .
Deci, cu ajutorul metodei eliminrii a lui Gauss matricea A se
descompune n produsul de doi factori L i U, unde L este o
matrice inferior triunghiular, iar U este o matrice superior
94 95
triunghiular. Aceast descompunere se numete factorizarea LU a 1 0 K 0 ... 0
matricei A.
Vom arta c pentru orice matrice nesingular exist o 0 1 ... 0 ... 0
... ... ... ... ... ...
factorizare LU care este echivalent metodei eliminrii lui
Gauss. Pentru nceput presupunem c matricea A este astfel, nct Mk = 0 0 ... 1 ... 0 .
eliminarea s se poat face fr permutri de linii sau de coloane. 0 0 ... k +1, k ... 0
Fie
... ... ... ... ... ...
0 0
0 ... nk
0 0 ... 1
0
M k M
Metoda eliminrii a lui Gauss const (vezi paragraful 3.3) n
mk = 0 , ek = 1 componenta k determinarea irului de matrice A = A(1) , A(2 ) ,K, A(n ) . Se constat
0
k +1,k uor c
M M
A(k +1) = M k M k 1 K M 1 A, k = 1,2, K n 1.
nk 0
Scriind aceast relaie pentru k = n 1 i notnd U = A(n ) ,
unde multiplicatorii ik , i = k + 1, k + 2, K n sunt cei utilizai la obinem:
M n1 M n2 K M 2 M 1 A = U ,
pasul k+1 pentru eliminarea necunoscutei xk +1 (vezi paragraful
sau
3.3).
A = M 11 M 21 K M n11 U .
Definim o matrice M k astfel
Se verific imediat c
M k = I mk ekT . M k1 = I + mk ekT .
Aceast matrice difer de matricea unitate I numai prin elementele De mai sus deducem:
subdiagonale nenule din coloana k: A = L U ,
unde
L = M 11 M 21 K M n11 = I + n 1 mk ekT .
k =1
96 97
Se rezolv mai nti sistemul inferior triunghiular Ly = b
1 0 ... 0 ... 0
printr-o procedur tipic de substituie nainte ncepnd cu
1 ... 0 ... 0
21 prima ecuaie:
... ... ... ... ... ...
L= ,
k1 k 2 .... 1 ... 0 i 1
bi lik yk
k +1,1 k +1, 2 ... k +1,k ... 0 b1
y1 = , yi = k 1
, i = 3,3,K, n.
l11 lii
... ... ... ... ... ...
n2 ... nk ... 1 Aici lik sunt elementele matricei L. Apoi se rezolv sistemul
n1
superior triunghiular Ux = y prin procedura de substituie
a11(1) a12(1) ... a1(1n)
( 2)
napoi, ncepnd cu ultima ecuaie:
0 a22 ... a2( 2n) n
produselor scalare. Pentru o iniiere mai aprofundat n unde m este numrul total de permutri efectuate.
factorizarea lui Crout recomandm lucrrile [2,34,38].
Presupunem c se cunoate o factorizare LU a matricei A.
Atunci sistemul de ecuaii liniare Ax = b este echivalent
cu LUx = b , care se desface n dou sisteme triunghiulare:
Ly = b, Ux = y.
98 99
3.5. Factorizarea Cholesky a12
x = .
Fie A = (aij )nn o matrice simetric i pozitiv definit, adic: a11
Atunci ( Ax, x ) = xT Ax = a112 a22 a122 a11 > 0 fiindc matricea A este
( Ax, x ) > 0, x R n , x 0.
Vom arta c n factorizarea LU a lui A se poate alege pozitiv definit. mprind ultima inegalitate la a112 > 0 obinem
U = L . Descompunerea
T a122
a22 >0.
A = L LT a11
se numete factorizarea Cholesky. Prin urmare, pentru n = 2 descompunerea A = L LT exist
Teorem. Dac matricea A este simetic i pozitiv definit, i este unic. S presupunem teorema adevrat pentru n = k 1 :
atunci exist o matrice inferior triunghiular L, cu elementele A = L LT unde A i L sunt matrice de dimensiune (k 1) (k 1) .
diagonale pozitive, unic, astfel nct A = L LT .
Fie A i L astfel:
Demonstraie. Vom demonstra teorema prin inducie
asupra lui n. Prntru n = 2 avem: A y L 0
A = T , L = T ,
w l
a11 a12 l 0 y akk kk
A = , L = 11 .
unde y i w sunt vectorii coloan ,avnd k 1 componente .
a
21 a 22 l l
21 22
Formm produsul L (L) i-l identificm cu A . Atunci
T
Dac formm produsul L LT i-l identificm cu A,
obinem: obinem:
a11 = l112 , a12 = l11l21 , A = LLT , y = Lw,
a21 = l21l11 , a22 = l212 + l222 . y T = wT LT , akk = lkk2 + wT w.
Deoarece matricea A este pozitiv definit, elementele de
pe diagonal sunt pozitive i deci putem extrage rdcin ptrat: Prin presupunerea de inducie matematic, matricea L
l11 = a11 . Al doilea element l21 se determin din ecuaia ce este determinat n mod unic astfel ca A = LLT . De aici rezult
c vectorul w este i el unic i se calculeaz ca soluie a
conine a21 ( a 21 = a12 pentru c A este o matrice simetric): sistemului y = Lw . Mai departe, elementul lkk se definete din
a
l21 = 21 . formula:
a11
lkk = akk wT w .
n fine, elementul l22 se determin astfel :
Artm, ca i n cazul matricelor de dimensiune 2 2 , c expresia
2
a de sub rdcin este pozitiv. n calitate de vectorul x vom lua :
l22 = a22 l212 = a22 .
12
a11
S artm c extragerea rdcinii ptrate de mai sus este posibil. A1 y
x = .
Intr-adevr, fie vectorul x cu componentele a12 i a11 : 1
100 101
Notm z = A1 y ; atunci diagonale ale matricei A i elementele lij ale matricei L satisfac
( Ax, x ) = xT Ax = z T Az 2 z T y + akk = relaiei:
= z T y + akk = akk y T A1 y = akk y T (LLT ) y =
1 l12k + l22k + K + lkk2 = akk , k = 1,2,K, n.
Astfel avem o limitare a creterii elementelor matricei L: orice
= akk (L1 y ) (L1 y ) = akk wT w > 0.
T
element lij nu depete elementul maxim n modul akk .
Deci matricea L cu proprietatea A = L (L) este unic
T
102 103
innd seama de aceasta, inegalitatea (3.5) implic Subliniem c dimensiunea matricei nu are o influen
~
x x* direct asupra numrului ei de condiionare: dac A=I sau chiar
b
A A1 (3.6) 1
x *
b A = I avem cond ( A) = 1 . Pentru comparaie, determinantul
10
Presupunem acum c perturbm elementele lui A; atunci matricei nu este un indice adecvat al condiionrii, deoarece
soluia perturbat ~
x va verifica egalitatea: valoarea determinantului depinde i de dimensiunea n a matricei.
( A + A)~x = b. Dac A este o matrice aproape singular nc nu nseamn c este
Rezult c: 1
~ prost condiionat. n exemplul A = I avem det ( A) = 10 n ;
x x* = A1A~ x 10
i obinem estimarea: aceast matrice aproape singular este maxim de bine
~
x x * A1 A ~ x. (3.7) condiionat .
Exemplu. Considerm sistemul de ecuaii Ax = b , unde:
Aceast inegalitate o putem pune sub forma:
~ 1 1 1 K 1 1 1
x x* A
~ A A1 (3.8) 0 1 1 K 1 1 1
x A 0 0 1
1 K 1 1
Se observ c att n (3.6) ct i (3.8) numrul A= , b = .
..................................K M
A A estimeaz eroarea relativ n soluie furnizat de b sau
1
0 0 1
0 K 1 1
A . Acest numr se numete numr de condiionare al matricei A 0 0 1
0 K 0 1
n raport cu norm matriceal considerat i se noteaz:
cond ( A) = A A1 . Menionm c det ( A) = 1 0 . Sistemul considerat n form
desfurat este:
Deoarece pentru orice norm matriceal subordonat unei
x1 x2 x3 K xn = 1,
norme vectoriale se ndeplinete egalitatea I = 1 ,avem:
x2 x3 K xn = 1,
1 = I = AA1 A A1 , (3.9)
.....................................
i deci , cond ( A) 1 oricare ar fi matricea A. xn1 xn = 1,
Numrul de condiionare caracterizeaz efectul maximal al
x n = 1.
perturbrilor b i A la rezolvarea sistemului Ax = b . Dac
numrul de condiionare cond (A) este mare, atunci perturbaii
* Sistemul de ecuaii (3.9) admite o soluie exact unic
mici ale lui A i b vor produce perturbaii relativ mari ale lui x ;
n acest caz se spune c matricea A este ru (sau prost) x1 = x2 = K = xn1 = 0, xn = 1 . Presupunem c perturbm vectorul
* * * *
condiionat. Matricele cu numrul de condiionare cond (A) mic liber b cu b = (0,0,K,0, ) . Atunci soluia exact a sistemului
T
104 105
perturbat A~x = b + b devine ~
x = x* + r i eroarea Deoarece A = n , rezult c norma matricei inverse este destul
r = (r1 , r2 , K , rn ) satisface ecuaiile:
T
( )
de mare, cu toate c det A1 =
1
det ( A)
= 1. De exemplu pentru
r1 r2 r3 K rn = 0,
r2 r3 K rn = 0, n = 102 avem:
..................................... A = 102, cond ( A) 2100 > 1030 , iar A1 > 10 27 .
rn 1 rn = 0, n particular, dac = 10 15 (o eroare suficient de mic),
rn = . atunci ~x x * = r > 1015 ; o perturbaie destul de mic a
De unde rezult, c: termenului liber a produs o perturbaie att de mare n soluie!
rn = , Valoarea numrului de condiionare al unei matrice
rn1 = rn = , depinde de norma matriceal ntrebuinat. Presupunem c A este o
matrice simetric i pozitiv definit cu valorile proprii pozitive
rn2 = rn + rn1 = 2 ,
ordonate astfel : 0 < 1 2 K n . n mod analog se arat c
rn3 = rn + rn1 + rn2 = 4 = 2 2 , pentru astfel de matrice numrul de condiionare este:
................................................ n max
cond ( A) = = .
rnk = rn + rn1 + K + rn(k +1) = 2 k 1 , 1 min
Exemplu:Valorile proprii ale matricei:
.................................................
1 1
r1 = rn(n1) = 2(n1)1 = 2 n2 . A =
1 1.0001
1
Astfel ~
xi = 2 ni1 , i = 1,2, K, n 1; ~
xn = 1 + . aproximativ sunt egale cu 1 = 10 4 i 2 = 2 .De aceea numrul
2
S estimm cond(A), lund n calitate de norm . . Vom de condiionare cond ( A) este aproape egal cu 4 10 4 . Ne putem
avea: atepta c perturbaii mici ale datelor iniiale vor produce mari
~
x x* = r = 2 n2 , x* = 1, b = , b = 1. schimbri n soluie. ntr-adevr, fie sistemele de ecuaii Ax = b
i Ax = b + b unde
Prin urmare
2 0
b = , b = .
r b 2.0001 0 .0001
cond ( A) = A A1
= 2 n2.
x *
b Soluia se schimb de la x* = (1 1) pn la ~
T
x = (0 2) :
T
106 107
1 0 w
A 1 .
x ~
*
x 1 2 b 0.0001 10 4 y
2
= =1, 2
= 2
= .
x *
1 b 2 2 2 Deci, se poate alege k vectori yi , apoi se rezolv sistemul de
2 2
1 2 2.0001 ecuaii Awi = yi , i = 1,2,K, k , i se pune
2
wi
A 1 max .
Fie dat un sistem de ecuaii liniare. Reprezentarea cu 1i k yi
virgul mobil a elementelor A i B n calculatorul electronic nu
este exact. Prin urmare, efectiv n memoria mainii electronice de
~ ~ ~ ~ 3.7. Calculul valorilor i vectorilor proprii
calcul vom avea sistemul A x = b unde A i b sunt rotunjirile
corespunztoare. Exist matricele de perturbare P i D ( D este o
matrice diagonal ) astfel nct 3.7.1. Formularea problemei. Proprieti fundamentale
~ ~
A = A( I + P) b = ( I + D)b . Fie A o matrice de dimensiune n n . Numrul (real sau
Dac notm cu M unitatea de rotunjire a mainii (vezi paragraful complex) se numete valoare proprie a matricei A dac exist un
vector nenul x R n , astfel nct
1.3), atunci P M i D M . Astfel obinem: Ax = x (3.10)
~ ~ Vectorul x 0 se numete vector propriu al lui A asociat valorii
A = A A M A , b = b b M b .
proprii .
Ecuaia (3.10) poate fi rescris sub forma Ax x = 0 sau
Din inegalitile de mai sus i din (3.7) rezult c erorile de
rotunjire produc o perturbaie estimat prin:
( A I )x = 0 , (3.11)
unde
~ x cond ( A) .
x x* 2 M ~
0 0 0
Subliniem c determinarea numrului de condiionare 0
cond ( A) este o problem dificil, deoarece conine calculul lui 0 0 0
I = , 0 = 0 .
.. ... .. .. 0
A1 . Calculul matricei inverse i normei sale necesit
.0 0 0
aproximativ n3 + 2n 2 operaii suplimentare i aproape de patru ori Ecuaia (3.11) poate fi scris dezvoltat astfel:
majoreaz cheltuielile necesare pentru rezolvarea sistemului
a11 a12 ... a1n x1 0
Ax = b . Un procedeu practic de calcul aproximativ al lui A1
a21 a22 ... a21 x2 0
const n urmtoarele. Se observ c dac w = A1 y atunci = .
... ... ... ... M M
w A1 y i prin urmare a a ... a 0
n1 n2 nn xn
108 109
Relaia de mai sus este un sistem omogen de ecuaii liniare. A 2 = max = ( A)
( A )
Condiia necesar i suficient ca acest sistem omogen s admit
soluie nenul este ca: i
det ( A I ) = 0 . (3.12) n
spectral ( A) = 2 . Ak = A. A K A .
Subliniem c vectorii proprii ai unei matrice se determin Notm
neunivoc, deoarece dac x este un vector propriu atunci orice Qn ( ) = ( 1) Pn ( ) = n + q1n1 + K + qn1 + qn .
n
vector cx , unde c este un scalar, va fi tot un vector propriu. Polinomul Qn ( ) se numete polinom propriu.
Dm cteva rezultate remarcabile referitor la valorile
proprii ale unor matrice speciale: 8. Formulele lui Newton:
k 1
1. Valorile proprii ale matricelor simetrice sunt reale. k + qi k 1 = kqk , k = 1,2, K, n ,
2. Valorile proprii ale matricelor pozitiv definite sunt i =1
pozitive. unde
3. Valorile proprii ale matricelor diagonale, inferior n
( )
n
valorilor i vectorilor proprii.
4. Matricele asemenea au aceleai valori proprii .
Se observ c k = Tr Ak . Suma
i =1
k
i se mai numete
Demonstraie: Fie matricele A i B sunt asemenea. Aceasta moment de ordinul k al valorilor proprii.
nseamn c exist o matrice nesingular M astfel nct 9. Identitatea lui Cayley - Hamilton. Orice matrice ptrat A
B = M 1 AM . este o rdcin a polinomului su caracteristic:
Dac Ax = x atunci M 1 Ax = M 1 x . Vom nota x = My . ( 1)n An + p1 An1 + K + pn1 A + pn I = 0 .
Rezult c 10. Teorema despre cercurile lui Gershgorin. Orice valoare
M 1 AM = y i By = y. proprie a matricei A = (aij )nn se afl, n planul complex,
Prin urmare, la matricele asemenea valorile proprii coincid.
n reuniunea cercurilor :
n plus, vectorii proprii sunt legai prin relaia x = My.
5. Suma valorilor proprii ale unei matrice A este egal cu n
n
suma elementelor de pe diagonala principal: U=1 z : z aii ri ; ri = aii .
i j =1
1 + 2 + .... + n = a11 + a22 + ... + ann . j i
Aceast sum se numete urma matricei A i se noteaz Tr ( A) 11. Teorema (Rayleigh-Ritz). Fie A o matrice simetric i
sau Sp ( A). valorile proprii ale lui A sunt aezate n ordine cresctoare
min = 1 2 K n1 n = max .
6. Produsul valorilor proprii coincide cu determinantul
matricei: Atunci
112 113
1 x 2 ( Ax, x ) n x 2 , x R n , Fie, de exemplu ,matricea A de forma [2,28] :
2 2
1 = min = min
( Ax, x ) = min( Ax, x ) , 1 0 K
0 0
x 0 ( x, x ) 2
x =1
0 1 K 0 0
n = max = max
( Ax, x ) = max( Ax, x ) . A( ) = 0 0 K 0 0,
x 0 (x, x ) x =1
2
M M M M M M
( Ax, x ) se numete ctul lui Rayleigh. 0 0 K 0
Expresia
( x, x )
Metodele de calcul ale valorilor proprii se mpart n dou grupe: unde este o perturbaie mic, iar valoarea proprie de
multiplicitate n a matricei neperturbate A(0 ). Polinomul
1) metode care determin nti coeficienii polinomului
caracteristic al lui A( ) este
caracteristic i apoi se rezolv ecuaia caracteristic;
Pn ( , ) = ( a ) ( 1) .
n n
2) metode care determin valorile proprii i vectorii proprii Se observ, de exemplu, c dac n = 10, = 0, i '10 10 , atunci
prin procedee iterative fr a calcula coeficienii ( )
practic matricele A(0) i A 10 10 reprezint una i aceeai matrice
polinomului caracteristic . n memoria mainii electronice de calcul, n timp ce polinomul
Se cunosc metode de determinare a coeficienilor polinomului
( )
caracteristic P10 10 10, are rdcina multipl 0,1 . Prin urmare,
valoarea proprie = 0 sufer o deplasare de 109 ori mai mare
caracteristic: metoda lui Krlov ,metoda lui Leverrier ,metoda lui dect o perturbaie care a produs-o.
Fadeev , metoda lui Lanczos (vezi, de exemplu, [12,16,18,27]).
Subliniem c aceste metode sunt recomandabile doar n cazurile
3.7.2. Metode bazate pe transformri de asemnare ortogonal
cnd matricea A este de ordin mic i rdcinile ecuaiei
caracteristice sunt bine separate. Motivul este c numrul de Metodele practice de determinare a valorilor i vectorilor
operaii aritmetice pentru determinarea coeficienilor polinomului proprii constau n proceduri iterative de aducere a matricei
considerate la forma canonic Schur prin transformri de
caracteristic este foarte mare (de exemplu, metoda lui Fadeev asemnare ortogonal.
Dou matrice A i B se numesc ortogonal asemenea dac
necesit n 4 operaii). Pe de alt parte, coeficienii se obin cu erori
exist o matrice ortogonal Q astfel nct
de rotunjire inerente care pot conduce la variaii mari ale B = QT AQ
rdcinilor, deoarece problema rezolvrii ecuaiilor algebrice este Transformarea QT AQ a lui A se numete transformare de
asemnare ortogonal.
ru condiionat .
114 115
Matricele A i QT AQ au aceleai valori proprii, deoarece Metoda lui Householder
QT = Q 1 (vezi proprietatea 4 din 3.7.1.). Dac x este un vector
Reducerea oricrei matrice A la forma Hessenberg se poate
propriu pentru matricea A, atunci QT x este vector propriu pentru face dup un numr finit de rotaii plane printr-un procedeu numit
matricea QT AQ . metoda lui Givens. O alt metod mult mai eficient este metoda
Teorem (Schur). Oricare ar fi matricea A = (aij )nn exist reflexiilor a lui Householder.
Reamintim c matricea
o matrice ortogonal Q de dimensiune n n astfel nct :
vvT
s11 s12 K s1k H = I 2 2
v2
0 s22 K s2 k
Q AQ = S =
T
, se numete reflector sau transformarea lui Householder.
M M M M
Fie z = (1,0,K,0) R n , = x 2 i v = x + z . Atunci
T
0 0 0 s11
Hx = z = ( ,0,K,0 ) .
T
120 121
Vom presupune c c1 0 ; n caz contrar se poate alege alt vector k 1
iniial x (0 ) astfel nct coeficientul corespunztor c1 0 . (Ax ( k 1)
,x ( k 1)
)= 2 k 1
1
c12 + o 2
1
.
Recurent formm irul de vectori:
x (k ) = Ax (k 1) = Ak x (0 ) , k = 1,2,K n mod analog obinem:
Deoarece Aei = i ei putem scrie: k 1
x ,x ( ( k 1) ( k 1) 2
)
= c1 + o 2 . 2 k 2
1
x (1) = Ax (0 ) = A(c1e1 + c2 e2 + Kcn en ) =
1
= c1 Ae1 + c2 Ae2 + K + cn Aen = Prin urmare ctul lui Rayleigh al lui x ( k 1)
= c11e1 + c2 2 e2 + K + cn n en . (Ax (k 1) , x (k 1) ) = + o 2 k 1
n general irul x { }(k )
are reprezentarea: (x (k 1) , x (k 1) ) 1 1
x = c11 e1 + c2 k2 e2 + K + cn kn en = 1k c1e1 + (k ) .
(k ) k
( ) va tinde ctre valoarea proprie (maxim n modul ) 1 .
unde Se observ c
k k
(k ) 2
k
= c2 2 e2 + K + cn n en .
1 1
x (k ) (k ) (k )
= x , x = 1 c1 + o ( k
)
.
2
1
k
(k )
Prin ipotez i < 1 pentru i 2 ; deci (k ) = 0 2 i De aici rezult c pentru 1 > 1 avem x , iar dac 1 < 1
1 2 1 2
atunci x (k )
0 . Rezolvnd problema la maina electronic de
(k )
lim = 0. 2
k 2
calcul, n primul caz putem avea apariia unui semnal de depire,
Calculm produsul scalar:
dup aceea, calculele se ntrerup. n cazul al doilea x (k ) poate
(Ax(k 1) , x(k 1) ) = (x(k ) , x(k 1) ) = 12k 1 (c1e1 + (k ) , c1e1 + (k 1) ) = 2
[ ( ) (
= 12 k 1 c12 (e1 , e1 ) + c1 e1 , (k 1) + c1 (k ) , e1 + (k ) , (k 1) . ) ( )] deveni un zero-main. De aceea, n practic este necesar s
{ } { }
schimbm factorul de scar al irului x (k ) = Ax (k 1) ; n locul
irului {x } se formeaz un alt ir de vector {z ( ) } cu
(k ) k
z (k ) = 1
Deoarece (e1 , e1 ) = e1 2 = 1 i
2
2
i construit astfel:
Az (k 1)
(e , ( ) ) e ( )
k 1 k 1
= (k 1) , z (k ) = , k = 1,2,K ,
Az (k 1)
1 1 2 2 2
( ( ) , e ) ( ) e
k
1
k
2 1 2 = (k )
2
,
de unde
( ( ) , ( ) ) ( )
k k 1 k
( k 1)
, (Az ( k 1)
, z (k 1) ) (
( k ) ( k 1)
1. )
( k 1) = z , z
deducem c
2 2
(z ( k 1)
,z )
122 123
Exemplu: S se calculeze valoarea proprie maxim 1 1 1 1
T
124 125
{ }
n practic n scopul accelerrii convergenei irului z (k ) x = Qx + d, ( 3.15 )
ctre vectorul propriu cea mai bun alegere a deplasrii m pentru
matrice simetrice este ctul Rayleigh: unde: Q = S 1T , d = S 1b . Prin urmare putem construi irul x { ( )}
k
(Az (m ) , z (m ) )
m = (m ) (m ) .
utiliznd relaia recurent:
Sx (k +1) = Tx (k ) + b, k = 0,1,2, K,
(z , z ) sau
(3.16)
Se poate demonstra c { m } converge ctre 1 extrem de rapid
x (k +1) = Qx (k ) + d , k = 0,1,2,K, (3.17)
(cu viteza cubic de convergen). (0 )
Aici ncheiem discutarea metodelor de calcul al valorilor unde x R este o aproximaie iniial a soluiei x * .
n
proprii i vectorilor proprii. Subliniem nc o dat c algoritmul Pentru a reduce sistemul (3.13) la forma (3.14) sau (3.16),
QR este unul dintre cele mai remarcabile metode ale matematicii potrivit pentru iteraie, desfacerea matricei A trebuie s satisfac
aplicate. Cititorului dornic de a-i aprofunda cunotinele n acest condiiile:
domeniu I se recomand lucrrile [2,22,26,28,35,40]. a) Sistemul (3.16) are o soluie unic x (k +1) i se rezolv
uor. De aceea matricea S se alege de o form simpl
i este inversabil. Ea poate fi diagonal sau
3.8. Metode iterative de rezolvare a sistemelor de ecuaii triunghiular.
liniare b) irul {x( )}
k
k =0 converge ctre soluia exact
S considerm sistemul de ecuaii liniare: x * oricare ar fi x (0 ) R n .
Ax = b (3.13) Deoarece x* = Qx* + d avem:
unde b R iar A este o matrice nesingular ( det ( A) 0 ) de
n
( )
x (k +1) x* = Q x (k ) x * , k = 0,1,2,K,
dimensiune n n . Metoda eliminrii a lui Gauss de rezolvare a de unde rezult c:
sistemului liniar (3.13) necesit cel puin n3/3 operaii aritmetice i ( )
x (k +1) x* = Q k x (0 ) x* .
att timp ct acest numr de operaii este acceptabil putem utiliza
Evident c lim x (k ) = x* dac i numai dac
aceast metod. Pe de alt parte, cnd n3/3 este mare, cu ajutorul k
metodelor iterative se poate obine cu aproximaie satisfctoare a lim Q k = O .
soluiei dup efectuarea unui numr mult mai mic de operaii k
Sx = Tx + b, ( 3.14 )
sau
126 127
{x( )}
k
ctre x* , este cu att mai mare cu ct raza spectral (Q )
k =0
Prin urmare
q
este mai mic. Rezult c este adevrat urmtoarea teorem. x * x(k ) x ( k ) x ( k 1) .
Teorema 1. (Condiia necesar i suficient de 1 q
{ }
convergen). irul x (k ) definit prin (5) converge ctre soluia Teorema este demonstrat.
Presupunem c elementele diagonale aii 0, i 1,2,K, n .
unic x* a sistemului (3) pentru orice aproximaie iniial x (0 ) R n
dac i numai dac Atunci n calitate de matrice S se poate lua matricea diagonal
ataat matricei A:
(Q ) = max < 1 . (3.18)
(Q ) S = Diag (a11 , a22 ,K, ann ) .
n practic nu cunoatem valorile proprii ale lui Q, de aceea Avem
teorema 1 este dificil de folosit. n locul teoremei 1 se utilizeaz 1 1 1
urmtoarea teorem. S 1 = Diag ( , , ..... , )
a11 a22 ann
Teorema 2. (Condiia suficient de convergen). Dac
exist o norm matriceal subordonat unei norme vectoriale astfel n acest caz sistemul (3.15) devine:
nct Q q < 1 , atunci sistemul (3.15) are o soluie unic x* , irul
1 n
xi = bi aij x j , i = 1,2,..., n .
{x( ) } definit prin (3.17) converge ctre x oricare ar fi aproximaia
k *
aii j =1
iniial x (0 ) R n i eroarea se evalueaz prin: j i
Procesul iterativ (3.17) este definit prin:
q qk
x (k ) x * x (k ) x (k 1) x (1) x (0 ) .
1 q 1 q 1 n
(k )
xi = bi aij x j , i = 1,2,..., n .
( k +1)
(3.19)
Demonstraie. Condiia Q < 1 implic condiia (3.18) (vezi aii j =1
j i
paragraful 3.2). Pentru a obine o estimare a erorii folosim relaia:
(
x * x (k 1) = x (k ) x (k 1) + Q x* x (k 1) . ) Astfel obinem o metod de rezolvare a sistemului liniar (3.13)
numit metoda lui Jacobi.
Deci
x * x (k 1) x (k ) x (k 1) + Q x* x (k 1) , Exemplu. Fie dat sistemul de ecuaii liniare:
sau 2 x1 x2 = 1,
(3.20)
(1 Q ) x * x ( k 1)
x (k ) x (k 1) . x1 + 2 x2 = 1
Deoarece prin ipotez 1 Q 1 q > 0 avem: Vom avea:
1
x * x ( k 1) x ( k ) x ( k 1) . 2 1 2 0 0 1
1 q A = , S = , T = ,
1 2 0 2 1 0
Pe de alt parte
x * x ( k ) = Q( x * x ( k 1) ) Q x * x ( k 1) .
128 129
1 1 n metoda lui Jacobi este necesar a pstra n memoria
0 calculatorului toate componentele vectorului x (k ) atta timp ct se
Q=S T =
1 2 , d = 2 .
1 0 1 calculeaz vectorul x (k +1) . Putem modifica metoda lui Jacobi astfel
2 2 nct la pasul (k + 1) s folosim n calculul componentei xi(k +1) ,
1 1
Valorile proprii ale matricei Q sunt: 1 = , 2 = . Deci valorile deja calculate la acelai pas: x1(k +1) , x2(k +1) , K , xi(k1+1) . Aceast
2 2
modificare a metodii lui Jacobi se numete metoda lui Gauss -
metoda lui Jacobi:
Seidel, iar irul iterativ (3.19) devine:
1 1
x1( k +1) = x2( k ) + , 1 i 1 n
2 2 xi( h+1) = bi aij x (jh+1) aij x (jh ) , i = 1,2, K , n.
aii j =1 j =i
( k +1) 1 (k ) 1
x2 = x1 + Se observ uor c metodei lui Gauss-Seidel corespunde
2 2
desfacerea A=S-T unde S este matricea subdiagonal ataat lui A,
converge ctre soluia exact x* = (1, 1) oricare ar fi x (0 ) R 2 . n
T
iar T este matricea strict supradiagonal cu elementele aij ataat
particular, pentru x (0 ) = (0, 0) obinem irul:
T
la aceeai matrice A:
T T T T
1 1 3 3 7 7 15 15 a11 0 0 K 0 a12 a13 K a1n
0
x (1) = , , x (2 ) = , , x (3 ) = , , x (4 ) = , ,.
2 2 4 4 8 8 16 16 a21 a22 0 K 0 0 0 a23 K a2 n
Observm c pentru metoda lui Jacobi matricea Q are S = a31 a32 a33 K 0 , T = 0 0 0 K a3n .
elementele
..................................
..............................
0, dac i = j
an1 an 2 an 3 K ann 0 0 0 K 0
qij = aij
a , dac i j S relum exemplul de mai sus cu sistemul de ecuaii (3.20).
ii
Pentru metoda Gauss-Seidel avem:
Utiliznd teorema 2 cu norma obinem:
n n aij 2 1 2 0 0 1
Q = max qij = max <1. A = , S = , T = ,
1i n
j =1
1i n
j =1 aii 1 2 1 2 0 0
j i
Rezult c dac 1 1
n 0
aij > aij , i = 1,2, K , n , Q = S 1T = 2 , d = 2 .
j =1 0 1 1
j i
4 2
adic dac matricea A este diagonal dominant, atunci metoda lui
Jacobi este convergent.
irul Gauss-Seidel arat astfel:
130 131
1 (k ) 1 Este cunoscut c metoda lui Jacobi nu ntotdeauna converge
x1( k +1) = x2 + , pentru matricea A pozitiv definit. De exemplu, dac A este o
2 2
matrice pozitiv definit i nu este diagonal dominant, atunci este
1 1
x2( k +1) = x1( k +1) +
2 2
( )
posibil ca raza spectral S 1T > 1 pentru metoda lui Jacobi.
ori: Dup cum sa vzut mai sus, dac matricea A este diagonal
dominant, atunci metoda lui Jacobi i metoda lui Gauss Seidel
2 0 x1( k +1) 0 1 x1 1
(k )
( k +1) = ( k ) + . vor genera un ir de aproximaii succesive care converge ctre
1 2 x2 0 0 x2 1 (0 )
soluia exact oricare ar fi aproximaia iniial x . Subliniem c
Pentru aproximaia iniial x (0 ) = (0, 0) obinem: aceast condiie este numai suficient i nu necesar. De exemplu
T
T T T pentru matricea
1 1 3 7 15 31
x = , , x ( 2 ) = , , x (3 ) = , , K .
(1)
8 2 1
2 2 4 8 16 32
A = 10 4 1
Se observ c o iteraie Gauss Seidel aici este echivalent cu 50 25 2
dou iteraii Jacobi, deoarece valorile proprii ale matricei Q sunt 0
1
(
1
)
i , deci raza spectral este S 1T = . Aceasta nseamn c
4 4
care nu este diagonal dominant metoda lui Gauss Seidel
converge foarte rapid.
eroarea la fiecare iteraie se mparte la 4; n metoda lui Jacobi Metoda lui Gauss Seidel poate fi modificat pentru
mbuntirea vitezei de convergen a irului aproximaiilor
( ) 1
S 1T = i eroarea se mparte la 2.
2 succesive. Fie ~ x (k ) vectorul obinut la pasul k + 1 prin metoda
Subliniem c metoda lui Gauss Seidel, necesitnd acelai Gauss Seidel. Metoda iterativ definit prin:
numr de operaii aritmetice, este n caz general mai bun ca (
x ( k +1) = x ( k ) + ~ )
x (k ) x ( k )
metoda lui Jacobi. Se poate arta c, dac A este o matrice pozitiv este cunoscut cu numele de metoda suprarelaxrilor succesive.
difinit atunci metoda Gauss Seidel converge de dou ori mai Parametrul de relaxare se alege astfel nct s creasc viteza de
repede ctre soluie dect metoda lui Jacobi. convergen. Pentru = 1 metoda se reduce la metoda lui Gause
Se demonstreaz i aici (vezi, de exemplu, [15], pag.181) c Seidel.
dac matricea A este diagonal dominant atunci metoda Gauss S-a gsit c pentru o alegere potrivit a parametrului
Seidel converge. Se cunosc modele n care metoda lui Gauss convergena metodei suprarelaxrii succesive este net superioar
Seidel converge, iar metoda lui Jacobi nu converge i invers. metodelor Jacobi i Gauss Sedei. De exemplu, n cazul
Pentru ilustrare anunm urmtoarea teorem. sistemului de ecuaii liniare (3.20) o iteraie prin metoda
Teorema (Reich). Dac matrcea A este simetric i are suprarelaxrii succesive este echivalent (vezi [2,35]) cu 30 de
iteraii prin metoda lui Jacobi.
elementele diagonale aii > 0 pentru orice i atunci metoda Gauss
Se poate arta c (0, 2 ) , de regul, n practic:
Seidel converge dac i numai dac A este o matrice pozitiv
definit.
1.8 1.9 .
132 133
Se demonstreaz [39] c metoda suprarelaxrilor succesive 2
Ax * b 2 = minn Ax b
2
( 3.22 )
2
converge pentru toate matricile A simetrice pozitiv definite. Pentru xR
o nelegere mai profund a metodelor iterative recomandm Vectorul x* se mai numete soluie generalizat n sensul
referinele [35,39]. n lucrarea [39] este adus i un subprogram CMMP. Acest vector x* minimizeaz norma euclidian a
Fortran a metodei suprarelaxrii succesive. vectorului rezidual r = Ax b , adic minimizeaz abaterea
ptratic a lui Ax fa de b:
n
r 2 = (r , r ) = ri 2 .
2
E ( x) = Ax b 2 = aij x j bi .
2
unde A este o matrice de dimensiune m n , iar b R este un
m
( 3.23 )
i =1 j =1
vector cu m componente. Dac m > n sistemul (3.21) se numete
sistem supradeterminat. Deoarece sistemul (3.21) conine mai Aceast problem revine la determinarea lui x* cu proprietatea
multe ecuaii dect necunoscute, nu putem gsi, n caz general, o (3.22).
soluie care s verifice exact toate ecuaiile sistemului. De
exemplu, sistemul: 3.9.2. Metode bazate pe sisteme normale
2 x1 = b1 ,
Valoarea minim a sumei (3.23) se obine anulnd derivatele
3x1 = b2 , pariale n raport cu x1 , x2 ,K, xn , adic anulnd gradientul funciei
4 x1 = b3 , E (x ) :
va avea soluie numai n cazul cnd terminii liberi b1 , b2 i b3 se E ( x ) = 2 AT ( Ax b ) = 0 . (3.24)
afl n raportul 2 : 3 : 4 . Din ecuaia (3.24) rezult c orice pseudosoluie x* n sensul
Dei sistemele supradeterminate n majoritatea lor nu sunt CMMP a sistemului (3.21) satisface relaia:
compatibile, ele se ntlnesc des n practic, de exemplu n
probleme de statistic. Una din cile de rezolvare a sistemelor AT ( Ax * b ) = 0 ,
supradeterminate const n a determina pseudosoluia x* care sau
minimizeaz eroarea medie pentru toate cele m ecuaii ale AT Ax* = AT b (3.25)
sistemului. Sistemul de ecuaii (3.25) se numete sistem normal asociat
O pseudosoluie n sensul celor mai mici ptrate (CMMP) problemei (3.21). n acest sistem, C = AT A este o matrice de
pentru sistemul supradeterminat (3.21) este un vector x* R n cu dimensiune n n , simetric cu elementele:
proprietatea:
134 135
cij = aiT a j = (ai , a j ) , matricea AT A este simetric i pozitiv definit putem folosi
unde ai = (a1i , a2i , K , ami )
T
sunt vectorii coloan ai matricei A, factorizarea Cholesky. Pentru calculul lui AT A i AT b sunt
necesare m n(n + 3) 2 operaii aritmetice, iar metoda lui Cholesky
i = 1,2,K, n . Evident, matricea C = AT A este pozitiv semidefinit
de rezolvare a sistemelor cere aproximativ n 3 3 operaii. Astfel
deoarece
2 cea mai mare parte a efortului este cerut de formarea sistemului
(Cx, x) = xT Cx = xT AT Ax = ( Ax)T Ax = Ax 2 0 . normal asociat problemei (3.21).
Dac coloanele a1 , a2 , K , an ale matricei A sunt liniar Numrul de condiionare a matricei ATA este egal cu ptratul
independente, atunci din x 0 rezult c i Ax 0 , deci matricea numrului de condiionare a matricei A:
C = AT A este pozitiv definit. Prin urmare este adevrat ( )
cond AT A = [cond ( A)] .
2
140 141
16. S se arate c cond ( AB ) cond ( A) cond (B ) . ( )
1
24. Matricea A + = AT A AT de dimensiune n m se
17. S se arate c sistemul de ecuaii numete pseudoinversa lui A sau generalizarea matricei inverse a
x1 + 100 x2 = 100 lui More Penrose. S se arate c
x2 = 0 AA+ A = A; A+ AA+ = A+ ;
este ru condiionat. S se calculeze numrul de condiionare. (AA )
+ T
= AA+ ; (A A)+ T
= A+ A.
18. Fie x = (3 4) , z = (1 1) . S se calculeze
T T
25. PA = AA + este proiectorul ortogonal al lui A pe spaiul
= x 2 , v = z + x i matricea corespunztoare Householder. Im A. S se arate c PA2 = PA i PAT = PA , adic matricea PA este
19. S se compare metodele Jacobi, Gauss Seidel i a idempotent i simetric.
suprarelaxrii succesive n cazul matricei A din exerciiul 15, iar
b = (1,0,1) i x (0 ) = (0,0,0 ) .
T T
20. Fie
2 1 0
0.01 0.0001
A = 1 2 1 , b = , b = .
0 0.1 0
1 2
S se calculeze preudosoluia n sensul celor mai mici ptrate a
sistemelor supradeterminate Ax = b, Ax = b + b . S se compare
rezultatul.
21. S se calculeze valorile proprii i vectorii proprii ai
matricei
5 1 1
A = 1 3 1 .
1 1 3
22. S se calculeze valorile proprii ai matricei din exerciiul
nr. 15.
23. Fie sistemul supradeterminat Ax = b, A = (aij )mn ,
142 143
CAPITOLUL IV Se constat cu uurin c intersecia unei familii de
mulimi convexe este o mulime convex.
INTRODUCERE N OPTIMIZAREA LINIAR Fie a,x R n ,a 0 ,b R . Mulimea
{ }
n
= x a T x = b = x ai xi = b
i =1
4.1. Noiuni despre mulimi i funcii convexe formeaz un hiperplan din R . n
144 145
Demonstraie (prin inducie). Fie M o mulime convex, Aducem dou exemple de puncte extreme ale mulimilor
M R n . Deoarece M este o mulime convex, orice combinaie convexe n R 2 . Prin E se noteaz mulimea punctelor extreme ale
convex, construit cu dou elemente din M aparine lui M . S mulimii M .
presupunem c M conine orice combinaie a cel mult
m 1, m 3, elemente din M . Considerm combinaia convex { } {
1. M = x x12 + x22 1 , E = x x12 + x22 = 1 . }
z = 1 x1 + 2 x 2 + m x m , unde x i M , i=1,2,,m, i scalarii 2. M = {x 2 x1 x2 4}, x1 + x2 5, x1 0, x2 0 }. ,
i > 0 , i=1,2,,m, astfel ca 1 + 2 + ... + m = 1. Evident, cel
E = { (0,0)T , (0,5)T , (2,0)T , (3,2) }.
T
146 147
M se poate exprima ca o combinaie convex a punctelor sale 4.1.2. Funcii convexe
extreme. Fie M o mulime convex n R n . Funcia f(x) definit pe
Fie tronsonul mulimea M se numete funcie convex dac
T = {x Ax b}, f (x + (1 ) y f ( x) + (1 ) f ( y ) (4.1)
unde x R n , A este o matrice de dimensiune m n, m n, pentru orice x,y M i orice [0,1]. Dac inegalitatea (4.1) este
b R m . Notm cu A o submatrice de ordinul n n a lui A . strict pentru orice x,y M , x y i orice (0,1), atunci se
()
Presupunem c det A 0. n acest caz sistemul de ecuaii Ax = b ,
spune c funcia f(x) este o funcie strict convex.
Funcia f(x) se numete concav (strict concav) dac
unde b conine elemente din b (dup o eventual renumerotare),
funcia f (x ) este convex (strict convex).
admite o soluie unic x . Dac x T atunci x se numete vrf
Dac exist R, >0, astfel ca pentru orice x,y M i
al tronsonului T .
Se verific imediat c tronsonul T are cel mult orice [0,1], are loc inegalitatea
2
C m = m! / n ! (m n)! vrfuri i aceste vrfuri sunt punctele extreme
n f ( x + (1 ) y ) f ( x) + (1 ) f ( y ) (1 ) x y 2 , (4.2)
ale sale. se spune c funcia f(x) este o funcie tare convex.
Exemplu. Fie tronsonul T definit de Se constat imediat c orice funcie tare convex este
totodat o funcie convex.
2 x1 x2 4, 2
Exemplul 4.1. Funcia f ( x) = ( x, x) = x 2 , x R , este o
x + x 5,
1 2 funcie tare convex. Pentru aceast funcie inegalitatea (4.2) se
x1 0, transform n egalitate cu constanta = 1 :
x2 0. 2 2 2
x + (1 ) y 2 = x 2 + (1 ) y 2 (1 ) x y
2
2
Aici m = 4, n = 2 .Vom avea vrfurile (vezi fig. 4.3) oricare ar fi x, y R n i orice [0,1].
Exemplul 4.2. Orice funcie liniar f(x) = (c,x), x,c R n ,
0 0 3 2
x1 = , x 2 = , x 3 = , x 4 = este o funcie convex i n acelai timp o funcie concav,
0 5 2 0 deoarece
date de sistemul de ecuaii liniare: f (x + (1 ) y ) = f ( x) + (1 ) f ( y ).
Fie funcia f(x),x R n , admite derivate pariale
x1 = 0, x1 + x2 = 5, 2 x1 x2 = 4, 2 x1 x2 = 4,
f ( x) 2 f ( x)
x2 = 0, = 0, , i, j = 1,2,..., n .
x1 x1 + x2 = 5, x2 = 0. xi xi x j
148 149
Vectorul, componentele cruia sunt derivatele pariale, 1
f ( x + y ) = f ( x)(f ( x), y ) + ( 2 f ( x) y, y ) + o( y 2 ) . (4.4)
f ( x) 2
x1 Teorema 4.2. Fie f(x) o funcie care admite derivate
f ( x) pariale de ordinul nti continue n R n . Funcia f(x) este
f ( x) = x2 convex, dac i numai dac are loc
M f ( x + y ) f ( x) + (f ( x), y ), x, y R n .
f ( x) Funcia f(x) este stric convex dac i numai dac
x
n
f ( x + y ) > f ( x) + (f ( x), y ), x, y R n , y 0.
se numete gradientul funciei f . Se mai noteaz prin grad f ( x )
Funcia f(x) este tare convex dac i numai dac
sau f (x ) .
2
Matricea de dimensiunea n n f ( x + y ) f ( x) + (f ( x), y ) + y 2 , x, y R n .
2
Cu alte cuvinte graficul funciei convexe (strict convexe)
f 2 ( x) f 2 ( x) f 2 ( x)
L este situat deasupra (strict deasupra) hiperplanului tangent, iar
x12 x1 x 2 x1 x n pentru funcii tare convexe graficul este situat deasupra unui
f 2 ( x ) 2
f ( x) f 2 ( x ) oarecare paraboloid (fig. 4.4).
L
f ( x ) =
2
x 2 x1 x 22 x 2 x1
L L L L L x2 , dac x > 0
f ( x) = f ( x) = e x f ( x) = x 2
2
f ( x ) 2
f ( x) f 2 ( x) 0, dac x 0
L
x n x1 x n x 2 x n2
a) b) c)
se numete matricea Hesse a funciei f sau matricea hessian. Se
mai noteaz prin H(x) sau f ' ' ( x) . Fig.4.4. Tipurile de convexitate: a) funcie convex;
n cursul de analiz matematic se demonstreaz c, dac b) funcie strict convex; b) funcie tare convex.
funcia f(x) are derivate pariale de ordinul nti continue n R n , Teorema 4.3. Dac funcia f(x), x R n are derivatele
atunci pariale de ordinul doi continue n R n , atunci funcia f(x) este
f ( x + y ) = f ( x) + (f ( x), y ) + o( y ) . (4.3)
convex dac i numai dac matricea Hesse 2 f ( x) este pozitiv
Dac f(x) admite derivate pariale de ordinul doi n R n , atunci semidefinit pentru orice x R n , adic
( 2 f ( x) y, y ) 0 , y R n .
150 151
O condiie necesar i suficient ca funcia f(x) s fie tare 1
f ( x + y ) = f ( x) + ( Ax + b, y ) + ( Ay, y ) , x, y R n . (4.7)
convex este ca s existe m R, m > 0 , astfel nct 2
2
( 2 f ( x) y, y ) m y , x, y R n . 2 1
(4.5) Deoarece ( Ay, y ) A 2 y 2 avem ( Ay, y ) = ( y ) . Prin
2
Demonstraia acestei teoreme poate fi gsit n
urmare putem scrie
[13,14,19,21].
f ( x + y ) = f ( x) + ( Ax + b, y ) + o( y )
Exemplul 4.3. Fie x R 2 i funcia
f ( x) = x12 x1 x2 + 5 x1 8 x2 + 3 . i conform (4.3) gradientul funciei ptratice (4.6) este
f ( x) = Ax + b .
Avem
Acum din (4.4) i (4.7) rezult imediat c matricea Hesse
2x x + 5 2 1
f ( x) = 1 2 , 2 f ( x) = . f ( x) a unei funcii ptratice (4.6) este constant i este egal cu
2
x1 8 1 0 matricea A.
Matricea Hesse f ( x ) este pozitiv semidefinit i deci putem
2
Funciile ptratice joac un rol important n problemele de
afirma c funcia considerat este convex. optimizare. Aceasta se explic prin faptul c n jurul punctelor de
S observm c funcia din exemplul de mai sus 4.3 poate minim (vezi capitolul V) funciile au o comportare ptratic. Mai
fi scris astfel : mult, dezvoltarea unei funcii pn la aproximaii de ordinul doi d
o funcie ptratic.
1 2 1 x1 x
f ( x) = ( x1 , x2 ) + (5,8) 1 + 3 n cele ce urmeaz vom arta, c dac matricea A este
2 1 2 x2 x2 pozitiv definit, atunci funcia ptratic (4.6) este tare convex.
sau ntr-adevr, fie ( Ax,x) > 0 pentru x R n , x 0 . Notm prin
1 1
f ( x) = xT Ax + bT x + c = ( Ax, x) + (b, x) + c,
2 2
{
S = z z Rn , z = 1 . }
Mulimea S este nchis i mrginit (este un compact). Cum
unde A = f ( x) , b = (5,8) i c=3. De asemenea, mai reinem
2 T
1
c suma vectorilor Ax i b ne d gradientul f(x). forma ptratic g ( z ) = ( Az, z ) este continu, exist z*S astfel
2
Fie A o matrice simetric de dimensiune n n , b R n i nct g(z )g(z) pentru orice zS. n ipoteza c matricea A este
*
1 pozitiv definit avem
c R . Funcia f ( x) = ( Ax, x) se numete form ptratic pe
2 1
n = g ( z * ) = ( Az * , z * ) > 0 .
R , iar funcia 2
1 x
f ( x) = ( Ax, x) + (b, x) + c (4.6) Evident oricare ar fi x 0 , x R n rezult c z = S i
2 x
se numete funcie ptratic. Se verific imediat c
152 153
1 x
2
x x 2 1 2
se numesc probleme de decizie. Un rol important n problemele de
( Ax, x) = ( A , ) = x ( Az , z ) x , decizie l ocup problemele de optimizare care constau n aflarea
2 2 x x 2 maximumului sau minimumului unei funcii de mai multe
2 variabile legate ntre ele prin anumite relaii. Un caz particular al
ceea ce arat c matricea Hesse f ( x) = A satisface
problemelor de optimizare este programarea liniar care include
inegalitatea (4.5) cu m=2>0. un sistem de ecuaii i (sau) inecuaii liniare, numite restriciile
Subliniem faptul c atunci cnd matricea Hesse este pozitiv
problemei, precum i o funcie liniar care reprezint scopul dorit,
definit:
scop definit prin valoarea maxim sau minim a acesteia.
2 f ( x) y, y ) > 0, x, y R n , y 0 , (4.8)
putem afirma, n caz general, doar c funcia f (x ) este strict
convex (dar nu i tare convex). Cu alte cuvinte relaiile (4.5) i
(4.8) nu sunt echivalente n cazul funciilor neptratice. Mai mult 4.2.1. Problema general de programare liniar
ca att, condiia (4.8) este numai o condiie suficient ca o funcie
oarecare (neptratic) s fie strict convex. O problem general de programare liniar const n
Exemplul 4.4. Considerm n spaiul bidimensional R 2 determinarea numerelor reale x1,x2 , xn care maximizeaz (sau
funcia strict convex (verificai aceasta !) definit prin minimizeaz) o funcie liniar
f ( x) = x14 + x24 . f = c1 x1 + c2 x2 + L + cn xn
Avem i care verific inegalitile i egalitile liniare:
12 x12 0
f ( x) =
2
a11 x1 + a12 x2 + K + a1n xn b1 ,
0 12 x22 a x +a x +K+a x b ,
Matricea Hesse 2 f ( x) nu satisface condiiei (4.8) n cazul cnd 21 1 22 2 2n n 2
L L L L L L L
x = (0 ,0) .
T
ar1 x1 + ar 2 x2 + K + arn xn br ,
ar +1,1 x1 + ar +1, 2 x2 + K + ar +1,n xn br +1 ,
L L L L L L L
4.2. Formularea problemelor de programare liniar
a s1 x1 + as 2 x2 + K + a sn xn bs ,
n industrie, comer, transport, administraie, economie, n xk 0 , k K,
aproape orice domeniu al activitii umane apar probleme care
conduc la alegerea uneia dintre toate posibilitile de aciune ntr-o
situaie dat i aceast alegere trebuie fcut astfel nct s fie unde c j , aij , bi , i = 1,2,...s,j = 1,2,...,n sunt numere reale date; K
asigurat realizarea unui scop bine determinat. Astfel de probleme este o submulime de indici ai mulimii {1,2,..., n} .
154 155
Cu notaiile matriceale: Funcia f (x ) care se maximizeaz (sau se minimizeaz) se
numete funcie obiectiv, sau funcie criteriu, sau funcie scop, sau
a11 a12 L a1n b1 x1 funcie de eficien.
a a22 L a2 n b x O soluie admisibil x * T pentru care avem
A = 21 , b = 2, x = 2,
L L L L M M f ( x * ) f ( x), x T , n cazul problemei de maxim sau
a ar 2 L arn b x f ( x* ) f ( x), x T , n cazul problemei de minim, se va numi
r1 r n
soluie optim a problemei de programare liniar.
156 157
a11 x1 + a12 x2 + K + a1n xn b1 , cunoatem c fiecare unitate de produs Pi , d un beneficiu egal cu
a x + a x +K+a x b , c i lei. Se cere s se afle cte uniti de fiecare produs sunt
21 1 22 2 2n n 2
necesare pentru a obine un beneficiu maxim. Astfel spus s se
L L L L L L L
a x + a x + K + a x b , determine un plan de producie optim, adic un vector x R n
m1 1 m2 2 mn n m
astfel nct
x1 0, x2 0, K , xn 0. f ( x) = c1 x1 + c2 x2 + K + cn xn max
n
Funcia liniar f ( x) = ci xi reprezint costul total al meniului, al n urmtoarele condiii:
i =1 a11 x1 + a12 x2 + K + a1n xn b1 ,
crui minimum se caut, iar restriciile problemei exprim a x + a x +K+a x b ,
condiiile de satisfacere a nevoilor organismului n substane 21 1 22 2 2n n 2
2. Problema utilizrii optime a resurselor disponibile. ntr- depozite este egal cu cererea total a centrelor de consum. Se cere
o ntreprindere se fac n feluri de produse notate P1 , P2 ,K, Pn , care s se ntocmeasc planul optim de transport, adic s se determine
necesit M feluri de resurse de materie prim R1 , R2 ,K, Rm , avnd cantitile xij de produs transportate de la Ai la B j astfel nct
la dispoziie b i , uniti din Ri, i=1,2,,m. Pentru o unitate de costul total de transport s fie minim.
produs Pi, se consum aij uniti din R j de materie prim. Mai Costul transportului din centrul A i n centrul B j este
cij xij uniti financiare, iar costul total al transportrilor va fi:
158 159
f = c11 x11 + c12 x12 + L + c1n x1n + n modelul de mai sus al problemei s-a presupus c este
m n
+ c21 x21 + c22 x22 + L + c2 n x2 n +
m n
satisfcut condiia ai = b j , numit condiie de echilibru. n
i =1 j =1
+ L + cm1 xm1 + cm 2 xm 2 + L + cmn xmn = cij xij . cazul n care condiia de echilibru nu este realizat, problema
i =1 j =1
respectiv se numete problema de transport neechilibrat care prin
Restriciile problemei se scriu astfel: introducerea unui centru fictiv se poate reduce la o problem de
a)cantitatea transportat din depozitul Ai celor n centre de transport echilibrat.
consum trebuie s fie egal cu disponibilul din Ai , adic
xi1 + xi 2 + K + xin = ai , i = 1,2,...,n; 4.2.3. Forme ale unei probleme de programare liniar
b)cantitatea transportat n centrul de consum Bi din toate Se spune c o problem de programare liniar are forma
centrele de depozitare este egal cu cantitatea de produs b i de care standard dac este de forma
are nevoie, adic: f ( x ) = ( c, x )
max
x1 j + x2 j + K + xmj = b, j = 1,2, K , n; cu restriciile
c)cantitile xij trebuie s fie mrimi nenegative. Ax = b ,
Formularea matematic a problemei de transport poate fi x0,
prezentat astfel: unde x R n , c R n , b R m , A este o matrice de dimensiune
S se determine valoare minim a funciei m n, , rang ( A) = m < n. Deci n problema de programare liniar
sub form standard sistemul de restricii este un sistem de egaliti
m n
f = cij xij . i tuturor necunoscutelor li se impun condiii de nenegativitate.
i =1 j =1 Orice problem de programare liniar poate fi adus la
n condiiile: forma standard. Se verific imediat c
min f ( x) = min ( f ( x)).
xT xT
n
Prin urmare cazul problemei de minimum se reduce la problema
xij = ai , i = 1,2, K , m,
de maximum.
j =1
m Dac Ax b , x 0 , atunci putem scrie
xij = b j , j = 1,2, K , n, Ax + y = b,
i =1
xij 0, i = 1,2, K , m, j = 1,2, K , n. x 0, y 0.
unde y = ( y1 , y2 ,K, ym ) .
T
160 161
Dac Ax b , x 0 , atunci cu restriciile
Ax y = b, 2 x1 + x2 + x4 x5 + x6 = 8,
x 0, y 0. x1 3 x2 + x4 x5 + x7 = 1,
Variabilele y1 , y2 , K, ym se numesc variabile de compensare sau x 0 , i = 1,2,4,5,6,7.
i
variabile ecart. Menionm c variabilele de compensare nu apar O alt form de prezentare a problemelor de programare
n funcia obiectiv. liniar este forma canonic. Dac toate restriciile sunt inegaliti
Dac uneia din variabile xi nu i se impune condiia de de acelai sens i toate necunoscutele sunt nenegative, atunci se
nenegativitate atunci putem nlocui n problema spune c problema de programare liniar are forma canonic:
considerat xi = ui vi , unde ui i vi sunt alte dou variabile noi max (sau min )
f ( x ) = ( c, x )
astfel ca u i 0, vi 0. cu restriciile
Exemplu. Fie problema de programare liniar:
f ( x ) = x1 2 x 2 + x3 min Ax b,
sau
Ax b,
cu restriciile x o, x o.
2 x1 + x 2 + x3 8,
Subliniem c, dac sensul inegalitii este "" , funcia
x1 3 x 2 + x3 1, obiectiv se maximizeaz, iar pentru "" funcia obiectiv se
x 0 , x 0.
1 2 minimizeaz.
S aducem aceast problem la forma standard. S observm c orice restricie de forma
1. Minimizarea funciei f este echivalent maximizrii lui
g ( x) = f ( x) = x1 + 2 x2 x3 . ai1 x1 + ai 2 x2 + K + ain xn = bi
2. Substituim x3 = x4 x5 , unde x4 0 , x5 0.
este echivalent cu sistemul de dou restricii
3. Introducem variabilele de compensare x6 0 i x7 0
pentru a transforma restriciile inecuaii n restricii ecuaii:
ai1 x1 + ai 2 x2 + K + ain xn bi ,
2 x1 + x2 + x3 + x6 = 8,
x1 3x2 + x3 x7 = 1, ai1 x1 ai 2 x2 K ain xn bi .
x6 0 , x7 0. Constatm c orice problem de programare liniar poate fi
Deci problema considerat se reduce la urmtoarea adus la forma standard, sau la forma canonic.
problem de programare liniar sub forma standard:
g ( x) = x1 + 2 x2 x4 + x5 max
162 163
4.2.4. Interpretarea geometric a problemelor de Deoarece M ( x1 , x2 ) trebuie s aparin mulimii T, rezult
programare liniar cu dou variabile
x
Considerm o problem de programare liniar de form x
E
canonic n spaiul bidimensional cu funcia obiectiv F
f = c1 x1 + c2 x2 i sistemul de restricii:
a11 x1 + a12 x2 b1 , A
a x +a x b ,
21 1 22 2 2
D
L L L L
a x + a x b ,
m1 1 m2 2 m
x1 0, x2 0 0. n n
C x O x
S desenm n sistemul cartezian de coordonate x1ox2 O
dreptele di, ecuaiile crora sunt dm
a11 x1 + a12 x2 = bi , i = 1,2,K, m do
Notm prin T domeniul din plan pentru care sunt Fig. 4.6
Fig. 4.5
satisfcute restriciile problemei considerate de programare liniar
i fie acest domeniu, poligonul ABCDEF (fig. 4.5). Dup cum am
vzut n paragraful 4.1.1 T este un poligon convex (tronson). c maximumul funciei f = c1 x1 + c2 x2 se atinge n vrful E a lui T.
Pentru a rezolva problema de programare liniar trebuie s ntr-adevr, vectorul n arat direcia n care trebuie s deplasm
cutm punctele M ( x1 , x2 ) , aparinnd mulimii T, pentru care dreapta d 0 , pentru ca s majorm valoarea funciei obiectiv,
funcia f = c1 x1 + c2 x2 ia cea mai mare valoare. deoarece funcia liniar f = c1 x1 + c2 x2 este cresctoare n
S reprezentm dreapta d 0 de ecuaie c1 x1 + c2 x2 = 0. direcia lui n. Deci valoarea maxim se obine pentru coordonatele
Aceast dreapt trece prin origine i este perpendicular vectorului punctului E care se afl la intersecia dreptelor d 2 i d 3 (vezi
n = (c1c2 )T . Dup cum se tie, vectorul n este ndreptat n sensul fig.4.5). Din fig. 4.5 se vede de asemenea c minimumul funciei
cresctor al valorilor funcie f. Fie v o valoare oarecare a funciei obiectiv se atinge n vrful B al poligonului T. Dac dreapta d 0 nu
obiectiv f = c1 x1 + c2 x2 . Atunci ecuaia c1 x1 + c2 x2 = v reprezint este paralel cu nici o latura a poligonului soluiilor admisibile
o familie de drepte paralele cu dreapta d 0 ; cnd mrimea v variaz atunci exist o singur soluie optim
n intervalul (, ) dreapta c1 x1 + c2 x2 = v se deplaseaz, n cazul cnd una din laturile poligonului soluiilor
rmnnd perpendicular pe vectorul n. admisibile este paralel cu dreapta d 0 , atunci problema admite o
164 165
infinitate de soluii optime care vor fi date de coordonatele tuturor punctului C realizeaz maximumul funciei liniare f = x1 + x2 .
punctelor situate pe aceast latur. Determinm coordonatele acestui punct, care este intersecia
O alt situaie care poate aprea n problema de dreptelor d 3 i d 4 , rezolvnd sistemul:
programare, este aceea cnd funcia obiectiv nu are maximum (sau
minimum) finit (vezi fig. 4.6). Acest lucru se ntmpl atunci cnd 3 x1 + x2 = 9,
tronsonul T nu este mrginit. x 2 = 3.
Exemplu. S se determine valorile lui x1 i x2 astfel nct Avem x1* = 2, x2* = 3 i max f=2+3=5. Rezult c soluia optim a
funcia f = x1 + x2 s fie maxim n urmtoarele condiii: unei probleme de programare liniar cu dou variabile se atinge
x1 + 2 x 2 4, ntr-unul din vrfurile tronsonului T. Aceste vrfuri, dup cum am
x + x 2, vzut n paragraful 4.1, nu sunt altceva dect punctele extreme ale
1 2
mulimii T.
3 x1 + x 2 3, Fenomenul acesta este general: orice soluie optim a unei
x 2 3, probleme de programare liniar cu un numr oarecare de variabile
x1 x 2 0. i restricii corespunde unui punct extrem al tronsonului soluiilor
admisibile.
Pentru aceasta reprezentm grafic dreptele:
d1 : x1 + 2 x2 = 4,
4.3. Metoda Simplex
d 2 : x1 + x2 = 2,
d3 : 3x1 + x2 = 9, Aa cum s-a constatat n paragraful 4.2, problema de
x2 programare liniar revine la determinarea punctelor extreme
d 4 : x2 = 3, B C
d4 (vrfurilor) ale poliedrului convex i alegerea vrfului pentru care
d 0 : x1 + x2 = 0. funcia obiectiv ia valoarea optim. Metoda simplex a fost
Se obine un A elaborat n anul 1947 de B. G. Dantzing i const n parcurgerea
poligon convex vrfurilor poliedrului convex n aa fel nct funcia obiectiv are o
ABCD (fig. 4.7). valoare mai bun n sensul optimului dect n anterior de fiecare
d2
Dnd dreptei d 0 de dat. Cnd mbuntirea funciei obiectiv nu mai este posibil, se
ecuaie x1 + x2 = 0 ajunge la o soluie optim. Metoda simplex se poate prezenta sub
o deplasare n D diverse forme (vezi, de exemplu, [6,13,14,19,21,31,36]). n toate
paralel cu ea cazurile metoda simplex se desfoar n urmtoarele etape:
o x1 - se determin o soluie iniial de baz;
nsi n direcia n
d1 - printr-un procedeu iterativ se nlocuiete soluia de baz
se obine c
coordonatele d0 iniial cu alte soluii de baz, pn se ajunge la situaia c
d3
166 167
Fig .4.7
valoarea funciei obiectiv nu mai crete sau la concluzia c x B = B 1b B 1 Nx N . (4.10)
problema nu admite un optim finit.
Componentele vectorului x B se numesc variabile bazice
Vom da n continuare descrierea metodei simplex [31]. S
considerm problema de programare liniar dat sub forma (sau de baz), iar componentele vectorului x N sunt numite
standard: variabile nebazice.
max
f = ( c, x ) Un sistem de ecuaii de forma (4.10) se spune c este un
sistem sub form explicit. Soluia acestui sistem dat prin
Ax = b, (4.9)
xB = B 1b, xN = 0
x 0,
se numete soluie de baz a sistemului Ax = b.
unde c = (c1 , c2 ,K, cn )T , x = ( x1 , x2 ,K, xn )T , b = (b1 , b2 ,K, bn )T , iar Dac B 1b 0 atunci soluia de baz verific condiiile de
A este o matrice de dimensiunea m n cu m < n . Presupunem c nenegativitate:
liniile matricei A sunt liniar independente, adic rang ( A) = m . x ( 0)
x= B 0
x N ( = 0)
4.3.1. Soluie admisibil de baz
i se numete soluie de baz admisibil a problemei de
programare (4.9).
Notm cu B submatricea matricei A constituit din m
O soluie de baz admisibil pentru problema (4.9) se
coloane astfel c B este o matrice nesingular (det B 0) de
numete nedegenerat, dac numrul componentelor sale nenule
ordinul m m iar cu N submatricea de ordinul m (n m) ce este egal cu numrul ecuaiilor sistemului Ax = b , adic B 1b > 0 .
conine restul coloanelor din A . Deci avem desfacerea Se demonstreaz (vezi, de exemplu, [13,14]) c soluia de
A = [B N ] . baz admisibil nu este altceva dect un punct extrem al mulimii
Matricea B se numete matrice bazic, iar N-matrice nebazic. { }
T = x x R n , Ax = b, x 0
n mod analog se separ vectorii c i x: i reciproc.
c x
c= B , x= B
cN cN 4.3.2. Criteriul de optimalitate
unde c B i xB se compun din acele m componente ce determin
desfacerea matricei A . Atunci sistemul Ax = b devine
[ ]
Fie B o matrice bazic i respectiv c T = c BT c TN . Atunci
Bx B + Nx N = b . funcia obiectiv f = (c, x) devine
Acest sistem poate fi scris sub forma
BxB = b Nx N ,
sau
168 169
[ ]
x
f = cT x = cBT cTN B = cBT xB + cTN xN =
Astfel, dac avem o soluie de baz admisibil pentru care
j 0, j = 1,2, K , n m,
xN
atunci ea este o soluie optim.
= cBT ( B 1b B 1 NxN ) + cTN xN = cBT B 1b (cBT B 1 N cTN ) xN .
Vom nota prin aj, j = 1,2, K , n m, coloana
Problema de programare liniar (4.9) poate fi scris sub forma
corespunztoare din matricea N. Se observ c z j = aTj = (a j , ).
max
f = (c B , B 1b) ( N T ( B T ) 1 c B c N , x N ) Dac exist j astfel nct j < 0 iar vectorul j = B 1a j are toate
x N = B 1b B 1 Nx N , (4.11) componentele mai mici sau egale cu zero ( ( j )i 0 pentru
x N 0, x B 0. j = 1,2, K , m) atunci funcia obiectiv f nu este mrginit superior
Aceast form se numete form explicit a problemei de pe mulimea soluiilor admisibile. ntr-adevr, se verific imediat
programare liniar (4.9). c pentru orice t T , t 0 , vectorul
Notm = B 1b i = ( B T ) 1 c B . Atunci forma explicit x
x = B
poate fi scris n felul urmtor xN
max
f = (cB , ) ( N T c N , x N ) definit prin
x B = t j , ( x N ) j = t , ( x N ) i = 0, i j , i = 1,2, K , m,
xN = B NxN ,
1
este de asemenea o soluie admisibil a problemei de programare
xN 0, xB 0. liniar considerat. Alegnd un t suficient de mare, constatm c
Vectorul = N T c N reprezint criteriul de optimalitate, problema are soluii admisibile nemrginite ( Ax = b, x 0
deoarece ne spune dac soluia de baz admisibil este o soluie oricare ar fi t 0 i x dac t ), deci nu admite un
optim de programare liniar (4.9). maxim finit:
Fie z j , (cN )j i ( xN ) j j = 1,2, ,n m , componentele f = (c, x) = (cB , ) t j pentru t .
vectorilor z = N T , cN i respectiv x N . Constatm c dac Este posibil i urmtorul caz. Printre componentele
vectorului j = B 1a j (corespunztor diferenei j < 0 ) sunt
j = z j (cN ) j 0 , j = 1,2, ,n m maximul funciei obiectiv
mrimi pozitive. Fie s < 0 i ( s ) i > 0 , unde i este un numr
f = (c B , ) 1 ( x N )1 2 ( x N ) 2 K nm ( x N ) nm
natural, egal cu unul din numerele 1,2,, m . n acest caz ( x N ) s nu
se atinge pentru x N = 0 . Pentru orice alt soluie admisibil x cel
poate lua valori arbitrare, deoarece pentru i s avem ( x N ) i = 0 i
puin o component ( xN ) j > 0 i la trecerea de la o soluie
x B = s ( x N ) s iar f = (c B , ) s ( x N ) s .
admisibil de baz la alta valoarea funciei obiectiv devine mai
mic. Din condiia de admisibilitate xB 0 rezult
170 171
i 1. Dac j 0, j = 1,2, K , n m, atunci soluia de baz
( xN ) s , i .
( s ) i admisibil dat prin x B = , x N = 0 este o soluie
Alegnd optim a problemei (4.11).
i k
( x N ) s = min = 2. Dac exist un indice j astfel nct j < 0 i toate
i ( a ) >0 ( s ) i ( s ) k , (4.12)
elementele de pe coloana lui j = B 1a j sunt mai mici
s
vom obine o alt soluie admisibil cu sau egale cu zero, atunci problema de programare
liniar (4.11) nu admite un maxim finit.
( xB ) s = 0, ( xN ) s = k > 0 .
( s ) k 3. Dac exist cel puin un s pentru care s < 0 i
Se poate demonstra (vezi, de exemplu, [13,14]) c aceast soluie vectorii s au componente pozitive, se va determina o
evideniaz o soluie de baz admisibil corespunztoare unei noi
nou soluie admisibil de baz cu ajutorul formulei
matrice bazice B . Matricea B se obine din matricea precedent
(4.13).
B prin nlocuirea coloanei sale k prin vectorul as . Pentru soluia
admisibil de baz obinut, valoarea funciei obiectiv devine mai
4.3.3. Algoritmul simplex
mare dect valoarea n soluia precedent.
Aceast operaie de trecere la o soluie admisibil de baz n cele demonstrate mai sus, n paragraful 4.3.2, organizarea
la alta se numete pivotare sau iteraie simplex, iar elementul calculelor se poate face n diferite moduri. Astfel se obin diverse
( s ) k > 0 se numete pivot. La aceast etap se exclude variabila variante ale metodei simplex. Ne vom opri asupra uneia din ele
( xB ) s din mulimea de variabile de baz, introducnd n locul ei [31]. Aceast variant a algoritmului simplex, descris mai jos, se
utilizeaz n majoritatea programelor speciale pentru rezolvarea
variabila ( xN ) s . Avnd o nou matrice bazic B , obinem o alt problemelor de programare liniar cu ajutorul mijloacelor tehnice
form explicit a sistemului Ax = b : de calcul. n practic problemele cu caracter concret au un numr,
n general, destul de mare de variabile i de restricii i pot fi
xB = ( B) 1 b ( B) 1 N xN . rezolvate numai cu ajutorul calculatoarelor electronice.
Alegerea (4.12) ne asigur c soluia de baz Fie problema de programare liniar n form explicit (4.11),
adic se cunoate o matrice bazic B astfel nct vectorul
x B ( B) 1 b
x = = (4.13) B 1b
xN 0 x=
0
este o soluie de baz admisibil, adic ( B) 1 b 0 .
este o soluie de baz admisibil a problemei de programare liniar
Prin urmare, sunt posibile urmtoarele cazuri: dat. Atunci paii algoritmului simplex sunt urmtorii:
172 173
Pasul 1. Se determin vectorul i se trece la pasul 6 al algoritmului.
= ( BT ) 1 cB Pasul 6. Se formeaz o nou matrice bazic B astfel nct
Calculul acestui vector este echivalent cu rezolvarea sistemului de n locul coloanei k a matricei B s apar coloana a s a matricei N
ecuaii liniare i se calculeaz soluia de baz admisibil corespunztoare noii
( B T ) 1 = C B . matrice bazice B , n care
Pasul 2. Se calculeaz produsul scalar k
( xN ) s = i ( x B ) s = 0 .
z j = (a j , ) ( s ) k
i diferenele Se revine la primul pas al algoritmului. Algoritmul se
j = z j (c N ) j repet pn cnd se obine o soluie optim (Pasul 3) sau se
stabilete c funcia obiectiv nu este mrginit superior pe
pentru j = 1,2, K , n m . Aici a j este coloana j din mulimea soluiilor admisibile (pasul 5, a).
matricea N. Exemplu. S folosim algoritmul simplex pentru rezolvarea
Pasul 3. Se cerceteaz semnele diferenelor j . problemei de programare liniar
Dac pentru toi j , avem j 0 , atunci soluia de g = x2 x1 min
baz disponibil este o soluie optim. STOP. n condiiile urmtoare:
Dac exist cel puin un j pentru care j < 0 , atunci 2 x1 + x2 2
se calculeaz s = min j i se trece la pasul x1 2 x2 2
j <0
x1 + x2 5
urmtor. x1 0, x2 0.
Pasul 4. Se determin vectorul s = B 1as , adic se
n prealabil aducem aceast problem la forma standard,
rezolv sistemul de ecuaii liniare adic:
B s = a s . f = x1 x2 min
Pasul 5. Se studiaz componentele vectorului s . 2 x1 + x2 + x3 = 2,
Dac ( s )i 0, i = 1,2, K , m, atunci problema dat x1 2 x2 + x4 = 2,
are funcia obiectiv nemrginit superior pe
x1 + x2 + x5 = 5,
mulimea soluiilor sale admisibile. STOP.
xi 0, i = 1,2,3,4,5.
n caz contrar se determin
k
= min i
( s ) k i ( s ) i > 0 ( s )i
174 175
Matricea sistemului de ecuaii este Pasul 2.
2 1 1 0 0 z1 = z 2 = 0, 1 = (c N )1 = 1, 2 = (c N ) 2 = 1.
A = 1 2 0 1 0 Pasul 3. Aadar 1 < 0 i deci soluia de baz admisibil
1 1 0 0 1 x (1) = (0,0,2,2,5)T nu este optim. Ea se poate mbunti prin
i are rang ( A) = 3 . schimbarea matricei bazice B.
Alegem Pasul 4.
1 0 0 2 1 1 0 0 2 2
B = 0 1 0 , N = 1 2 , 1 = B 1a1 = 0 1 0 1 = 1 .
0 0 1 1 0 0 1 1 1
1
deoarece det( B) = 1 0 i deci B este o matrice bazic. Subliniem Pasul 5.
i 2 5 2
faptul c B 1b = b 0 . min = min , = .
i ( 1 ) i > 0 ( ) 1 1 (1 ) 2
innd cont de aceasta, vom avea 1 i
0 x1 2 Pasul 6.
cB = 0 , xB = x2 = 2 = . 1 2 0 1 0
0 x 5 B = 0 1 0 , N = 2 1 .
3
0 1 1 1 0
1 x 0 Matricea B se obine din B, nlocuind coloana a doua cu
cN = , xN = 1 = ,
1
vectorul a1 .
x2 0
Se calculeaz
2 1 1 2 0 6 x3
1 = 1 , 2 = 2 . ( B) = 0
1
1 0 , = 2 = x B = x1 ,
1 1 0 1 1 3 x
5
x 0 1
Pasul 1. x N = 4 = , c N = ,
x2 0 0
1 0 0 0 0
= ( B ) cB = 0 1 0 0 = 0 .
T 1
0 0 1 0 0
176 177
0 1 0 Se obin datele
c B = 1 , a1 = 2 , a2 = 1 1 1 1 9 x3
0 1 0 ( B) = 0 1 / 3 2 / 3 ,
1
= 4 = xB = x1 ,
0 1/ 3 1/ 3 1 x
i se revine la primul pas cu B = B . 2
Pasul 1.
1 0 0 0 0 x 0 0
xN = 4 = , cN = , ,
= ( B ) cB = 2 1 1 1 = 1 .
T 1
x5 0 0
0 0 1 0 0
Pasul 2. 0 0 0
z1 = (a1 , ) = 2, z 2 = (a2 , ) = 1, cB = 1 , a1 = 0 , a2 = 1 .
1 1 0
1 = z1 (c N )1 = 2 (1) = 1 ,
2 = z 2 (c N ) 2 = 1 0 = 1 .
Relund algoritmul simplex cu B = B avem
Pasul 3. Deoarece 1 < 0 , soluia de baz admisibil Pasul 1.
x( 2) = (2,0,6,0,3)T nu este optim. 1 0 0 0 0
Pasul 4.
= ( B ) cB = 1 1 / 3 1 / 3 1 = 2 / 3 .
T 1
1 2 0 1 3 1 2 / 3 1 / 3 1 1 / 3
1 = B a1 = 0 1 0 2 = 2 .
1
Pasul 2.
0 1 1 1 3
1 2
z1 = (a1 , ) = , z 2 = (a2 , ) = ,
Pasul 5. Se calculeaz 3 3
3
min i = = 3 . 1 1
i ( 1 ) i > 0 ( )
1 i 3 (1 )3 1 = z1 (cN )1 = 0= ,
3 3
Pasul 6. n locul coloanei a treia a matricei B apare
vectorul 1 2 2
2 = z 2 (c N ) 2 = 0= .
1 2 1 0 0 3 3
B = 0 1 2 , N = 0 1 .
0 1 1 1
0
178 179
Pasul 3. Deoarece 1 > 0, 2 > 0 , soluia de baz 4.3.4. Tabele simplex
admisibil obinut x ( 3) = (4,1,9,0,0)T este optim. Avem Dac problema de programare liniar nu este mare, se pot
max( f ) = 3 pentru x1* = 4, x2* = 1 i deci min(g) = -3. organiza calculele dup algoritmul simplex cu ajutorul unor tabele
numite tabele simplex.
Observaia 1. Dac n cursul aplicrii algoritmului simplex Fie dat o problem de programare liniar n forma explicit
soluia de baz admisibil obinut este degenerat (conine (vezi paragraful 4.3.2.):
componente nenule mai puine dect numrul restriciilor), atunci f = (cB , ( N T cN , xN ) max
este posibil o ciclare; se poate reveni la o soluie de baz gsit
xB = B 1 NxN
anterior. Subliniem faptul c degenerarea nu implic neaprat
ciclarea. Pentru nlturarea ciclrii se procedeaz ntr-un mod xB 0, xN 0
special (se aplic tehnica de perturbaie sau metoda lexicografic; unde matricea bazic B se presupune egal cu matricea unitate I.
vezi lucrrile [13,14,21,31,36]). Dei multe probleme practice sunt Vom mai presupune c termenii liberi b1 , b2 ,..., bm sunt negativi. In
degenerate, puine din ele cicleaz. n literatura de specialitate se
cunosc exemple de ciclare, dar ele se construiesc cu dificultate. cazul de fa = b 0, 1 = a , 2 = a2 ,..., n m = an m , soluia
admisibil de baz este ( xB )1 = b1 , ( xB ) 2 = b2 , ... , ( xB ) m = bm ,
Observaia 2. Algoritmul simplex asigur convergena ctre ( x N )1 = 0 , ( xN ) 2 = 0 , ..., ( x N ) n m = 0 , iar funcia obiectiv va
soluia optim ntr-un numr finit de pai. ntr-adevr, din faptul c
o problem de programare liniar are numai un numr finit de avea valoarea f = (cB , ) . Cu aceste date putem construi un tabel
soluii de baz admisibile nedegenerate dup un numr finit de care se numete tabel simplex (vezi Tabelul 4.1. din pagina 182).
iteraii se va ajunge fie la o soluie optim, fie la concluzia c Fiecare linie a acestui tabel corespunde ecuaiei care
funcia obiectiv nu este mrginit superior pe mulimea soluiilor reprezint variabilele de baz ( x B )1 , ..., ( xB ) m n raport cu
sale admisibile. variabilele ( x N )1 , ( x N ) 2 , ..., ( x N ) n m . Ultima linie corespunde
diferenelor j = z j c j , unde z j = (cB , a j ) , j = 1, 2, ..., n-m.
Observaia 3. n momentul n care j 0, j , rezult c
Pentru fiecare coloan din matricea bazic vom avea j = 0 .
funcia obiectiv nu mai poate crete. Dac pentru o variabil
nebazic xk avem k = 0 , atunci n cazul cnd pe coloana k este Dac toate diferenele j sunt nenegative, soluia de baz
posibil s alegem un pivot ( s )i > 0 la pasul urmtor vom obine o xB va fi o soluie optim. n caz contrar se alege drept coloan
nou soluie optim care d aceeai valoare pentru funcia obiectiv. pivot coloana s a variabilei nebazice ( x N ) s pentru care s este
Fcnd o combinaie liniar convex a soluiilor optime gsite, se cea mai mic:
obine mulimea tuturor soluiilor optime. s = min j .
j ( j <0
180 181
Tabelul 4.1. Tabelul simplex La aceast etap se exclude variabila (xB )k din mulimea
de variabile de baz, introducnd n locul ei variabila ( x N )s i
Varia i
bile ( xB ) 2 L L (xN )s L ( x N ) nm
( s )i
de ( x B )1 ( xB ) m ( x N )1
se trece la tabelul urmtor. Trecerea de la un tabel la altul
baz
const n calculul componentelor vectorilor care nu fac parte
L (1 )1 L ( s )1 L ( n m )1
( x B )1 1 0 0
din baz i a diferenelor corespunztoare j = z j (cN ) j .
b 1
( xB ) 2 b2 0 1 L 0 ( 1 )2 L ( ) L ( n m )2
s 2
Notm elementele din tabelul urmtor cu bi' , f ' , 'j i , ' j . ( )
Aceste elemente pot fi obinute uor dup aa-numita regul a
M M M M M M M M M M M dreptunghiului: se formeaz un dreptunghi, avnd un vrf n
elementul care se calculeaz, iar elementul pivot este situat n
( xB ) k bk 0 0 L 0 (1 )k ( s )k L ( nm )
k vrful diametral opus.
( nm )k
(ai)j (as)j
M M M M M M M M M M M
( xB ) m bm 1 0 L 1 ( 1 )m L ( s )m L ( nm )m
j = f 0 0 L 0 1 L L (ai)k (as)k
s n m
zj cj
Valoarea nou a elementului calculat va fi egal cu produsul dintre
valoarea veche i elementul pivot, din care se scade produsul
celorlalte vrfuri ale dreptunghiului, rezultatul mprindu-se la
Se studiaz componentele vectorului s . Dac ( s )i 0 pentru pivot:
i = 1,2,..., m, atunci problema de programare liniar nu admite un ( i ) j .( s )k ( i )k .( s ) j ( i )k .( s ) j
maxim finit. Dac vectorul s are componente pozitive, se va
( )
i' j =
( s )k
= ( i ) j
( s )k
.
alctui raportul i ( s )i , cu acei i care ( s )i > 0 . Vom alege ca Elementele de pe linia pivot se mpart cu coeficientul ( s )k , iar
element pivot ( s )k (n tabel este notat [( s )k ]) dac pentru elementele situate pe coloana pivotului avem s' i = 0 ( )
k
= min i .
( )
pentru i k i = 1 .'
s k
( S ) k i ( ) i
s > 0
( s )i Exemplu. Considerm urmtoarea problem de
Linia k se va numi linie pivot. Dac valoarea minim este programare liniar
atins pentru civa indici k, atunci se alege unul din ei. f = x1 + x2 + 3x3 max
182 183
cu restriciile n acest tabel ultima linie conine dou diferene negative:
2 x1 x2 + x3 1, 2 = 1 < 0 i 3 = 3 < 0. Aceasta nseamn c soluia iniial
4 x1 2 x2 + x3 2, de baz x4 = 1, x5 = 2, x6 = 5, x1 = x2 = x3 = 0 nu este optim.
Se alege drept coloan pivot, coloana format din
3 x1 + x3 5,
xi 0; i = 1,2,3 coeficienii (1 )1 = 1, (1 )2 = 1, (1 )3 = 1 ai variabilei
Utiliznd variabilele de compensare nebazice x3 , pentru care 3 = 3 este cea mai mic. Alctuim
x4 0, x5 0, x6 0, problema de programare liniar o aducem rapoartele i / (1 )i pentru care (1 )i > 0 : 1 / (1 )1 = 1 ,
la forma standard cu termenii liberi nenegativi: 3 / (1 )3 = 5. Prin urmare elementul pivot va fi (1 )1 = 1 .
f = x1 + x2 + 3 x3 + 0 x4 + 0 x5 + 0 x6 max Aplicnd metoda descris mai sus vom obine n
2 x1 x2 + x3 + x4 = 1, continuare urmtoarea succesiune de trei tabele simplex.
Eta- i
4 x1 + 2 x2 x3 + x5 = 2, pa x2 x3 x5 x6
VB x1 x4 ( s ) i
3 x1 + x3 x6 = 5,
xi 0, i = 1,2, K ,6. x3
1 2 -1 1 1 0 0
x6 5 3 0 1 0 0 1 5 :1 x3
III 4 0 0 1 2 1 0 -
j 0 1 -1 3 0 0 0 x2
3 -2 1 0 1 1 0 -
184 185
1 ce se presupune nedegenerarea n aplicarea algoritmului simplex.
x6
1
[3] 0 0 -2
-
1 Finitudinea algoritmului simplex este asigurat pentru probleme de
1 3
programare liniar nedegenerat (avnd toate soluiile de baz
j nedegenerate). Subliniem nc o dat faptul c degenerarea
15 -1 0 0 7 4 0 (existena a cel puin unei soluii de baz degenerate) nu implic
neaprat ciclarea. Dei multe probleme practice sunt degenerate,
x3 nici una nu a ciclat pn acum i exemplele de ciclare au fost
4 0 0 1 2 1 0
construite cu dificultate. n cazul degenerrii se procedeaz ntr-un
x2 mod special pentru a evita fenomenul de ciclare, utiliznd fie
11/3 0 1 0 -1/3 1/3 2/3 tehnica de perturbare, fie metoda lexicografic (vezi de exemplu
IV [13,21,31,36]).
x1
1/3 1 0 0 -1/2 -1/3 1/3
j
46/3 0 0 0 19/3 11/3 1/3 4.3.5. Determinarea soluiei iniiale de baz
Dup cum s-a stabilit n paragraful 4.3.3, pentru rezolvarea
Toate diferenele j ale ultimului tabel sunt nenegative, fapt ce unei probleme de programare liniar se pleac de la o soluie de
baz iniial i folosind algoritmul simplex, se ajunge la o soluie
semnaleaz c algoritmul simplex a ajuns la etapa final. Prin optim. Nu orice matrice B din desfacerea A = [B N ] ne asigur c
urmare, avem soluia optim x1* = 1 / 3, x2* = 11 / 3, x3* = 4 i
xB = B 1b 0 i prin urmare trebuie s continum cu alt matrice
valoarea optim a funciei obiectiv f max = 46 / 3 . B. Numrul de probe poate fi destul de mare. Mai mult, n cazul
Observaie. Dac exist mai mult de un raport minim cnd mulimea soluiilor admisibile este vid nu exist matricea B
ce ne-ar da o soluie de baz admisibil.
k r
= = min i Considerm o problem de programare liniar n form
( s )k ( s ) r i ( as )i >0 ( s )i standard
atunci putem alege ca element pivot ( s ) k sau ( s ) r . Alegnd f = (c, x) max
elementul pivot ( s ) k vom obine ( xB ) r = 0 . Soluia de baz Ax = b,
(4.14)
obinut va fi degenerat. n acest caz este posibil ca valoarea x0
funciei obiectiv s nu se modifice n cursul ctorva etape unde A este o matrice de dimensiune m n, x R n , c R n , b R m .
succesive i s revenim la una din soluiile de baz admisibile prin Vom presupune c b 0 ; n caz contrar putem nmuli linia i n
care am trecut deja. Aceast situaie se numete ciclare; algoritmul
simplex poarte continua la infinit fr a conduce la soluii. Iat de
186 187
care bi < 0 cu 1. Asociem problemei (4.14) urmtoarea problem rang ( A) = r < m , pot rmne printre variabilele bazice
de programare liniar yi = 0 , dar liniile lor se exclud din sistem fr a se
g = y1 + y2 + ... + ym min modifica mulimea soluiilor admisibile pentru problema
Ax + y = b, (4.14).
(4.15) n acest mod se pot elimina succesiv dintre variabilele bazice
x 0, y 0
din tabelul simplex final toate variabilele artificiale, dup care se
Variabilele y1 , y2 ,..., ym se numesc variabile artificiale. poate continua algoritmul simplex cu soluia de baz admisibil x*
Problema (4.15) are forma explicit cu matricea B=I unde I este pentru problema (4.14).
matricea unitate de dimensiune m m i cu soluia de baz Dac min( g ) > 0 , n acest caz cel puin un yi* > 0 i, deci,
admisibil y1 = b1 0,..., ym = bm 0 , x1 = x2 = ... = xn = 0 . Prin problema (4.14) nu are soluii admisibile i deci nici soluie
urmare, putem aplica algoritmul simplex pentru rezolvarea optim.
problemei (4.15). Aceast metod se mai numete metoda celor dou faze. O alt
Dac problema (4.15) are o soluie optim ( x* , y * ) i metod este metoda lui M mare (metoda penalizrii), care
min( g ) = 0 , cum yi* 0 , rezult c toi yi* = 0 . const n rezolvarea urmtoarei probleme
m
Sunt posibile dou cazuri [13, 14]: f = (c, x) M yi max
1. n urma aplicrii algoritmului simplex nici una din i =1
190 191
de unde rezult c g ( y ) f ( x ) i teorema este demonstrat. n care 0 = (0,0,...,0 ) R m , xs R m , iar I este matricea unitate de
T
192 193
Dar x * este o soluie admisibil (chiar optim) a problemei (P ) , i (x*, AT y * c ) = 0 , cum avem (AT y*, x *) = ( y*, Ax *) , rezult
iar y * este o soluie admisibil a problemei (D ) i totui folosind (b, y *) = (c, x *) . Adic x * este o soluie optim a problemei
teorema 4.1 constatm c primale (P ) iar y * soluie optim a problemei duale (D ) .
(b, y ) (c, x *) = (b, y *) Teorema este demonstrat.
pentru orice soluie admisibil y, adic y * este o soluie optim a
problemei (D ) . Teorema este demonstrat. 4.4.3. Algoritmul simplex dual
Problema primal (P ) poate fi considerat ca duala Aplicarea algoritmului simplex la rezolvarea problemei
problemei (D ) i atunci din teorema 4.3 rezult imediat c i n duale ne conduce la un algoritm nou de rezolvare a problemelor de
cazul cnd problema dual (D ) are o soluie optim urmeaz c programare liniar, numit algoritmul simplex dual. Algoritmul
problema primal (P ) are de asemenea soluie optim i valorile simplex dual construiete o succesiune de soluii de baz ale
problemei primale astfel nct prima soluie de baz admisibil
optime ale funciilor obiectiv sunt egale.
este o soluie optim a problemei. Pentru nceput vom descrie
Teorema 4.4 (Teorema ecarturilor complementare).
procedeul de aflare a soluiei optime cu ajutorul metodei simplex,
Pentru ca dou soluii admisibile x * i y * ale problemelor duale
corespunztoare soluiei optime a problemei primale.
(P ) i respectiv (D ) s fie soluii optime este necesar i suficient Fie x * soluia optim a problemei primale
ca aceste soluii s verifice relaiile: f ( x ) = (c, x ) max
( y*, Ax * b ) = 0 , Ax b, y 0.
(x*, AT
y * c ) = 0 . Din demonstraia teoremei dualitii (vezi paragraful 4.4.2.)
Demonstraie. Necesitatea. Fie x * i y * soluii optime se deduce imediat c vectorul
ale problemei duale (P ) i respectiv (D ) . Putem scrie y* = (B 1 ) c B
T
(b, y *) = (c, x *) i ( y*, Ax *) = (AT y*, x *). este o soluie optim a problemei duale
De unde g ( y ) = (b, y ) min
( y*, b Ax *) + (x*, AT y * c ) = 0 . AT y c, y 0 .
innd cont de faptul c y* 0, x* 0, b Ax * i AtT y* c , din n limbajul tabelelor simplex aceasta nseamn c coordonatele
relaia de mai sus rezult vectorului y * sunt situate n ultima linie a tabelului simplex
( y*, b Ax *) = 0 , corespunztor vectorului unitate.
(x*, AT y * c ) = 0 . Exemplu. Fiind dat problema primal:
f ( x ) = x1 + x2 + 2 x3 max
Suficiena. Reciproc, dac x * este admisibil pentru
problema primal, iar y * pentru cea dual, din ( y*, b Ax *) = 0
194 195
cu restriciile: x4 1/2 1 1/4 0 3/2 -1/2
1 III x4 1/2 0 7/12 1 -1/2 1/2
x1 + x2 + x3 1,
2 j 3/2 0 7/12 0 1/2 1/2
x1 + 2 x2 + 3 x3 2, ,
x1 0, x2 0, x3 0 Soluia optim a problemei primale este x1* = 1 / 2,
x2* = 0, x3* = 1 / 2 . Conform celor spuse mai sus, soluia optim a
problema dual va fi:
g ( y ) = y1 + 2 y2 min problemei duale se gsete pe ultima linie a tabelelor simplex:
y1* = 1 / 2, y2* = 1 / 2 . Pentru ambele probleme, funcia de eficien
cu restriciile:
y1 + y2 1, are valoarea
f max = g min = 3 / 2 .
1
y1 + 2 y2 1, S trecem acum la descrierea algoritmului simplex dual.
2 . Considerm o problem de programare liniar n form explicit (
y1 + 3 y2 2, cu notaiile precedente): s se determine valoarea maxim a
y1 0, y2 0 funciei
Aplicm algoritmul simplex la problema primal adus la f (x ) = (cB , ) 1 (x N )1 2 (xN )2 L nm (x N )nm n
forma standard i obinem urmtoarea succesiune de tabele urmtoarele condiii
simplex: x B = 1 (x N )1 2 (x N )2 L nm ( x N )nm
xN 0, xB 0 .
Eta- Variabil i
pa e de x1 x2 x3 x4 x4 Se spune c problema de programare liniar este dual
baz ( s ) i admisibil dac este n form explicit i diferenele
x4 1 1 1/2 1 1 0 1:1 1 , 2 ,..., n m sunt negative. Atunci cnd matricea bazic B
x5 2 1 2 [3] 0 1 2:3 coincide cu matricea unitate I , problema este dual admisibil dac
I
coeficienii funciei obiectiv sunt nepozitivi.
j 0 -1 -1 -2 0 0 S presupunem c j 0 pentru orice j = 1,2,..., n m .
x4 1/3 [2/3] 1/6 0 1 -1/3 1: 3 Soluia de baz
x4 2/3 1/3 2/3 1 0 1/3 2 x
II x = B =
j 4/3 - 1/2 0 0 2/3 0 0
1/3 se va numi soluie dual admisibil a problemei.
196 197
Algoritmul simplex dual este algoritmul simplex aplicat Aducnd aceast problem la forma standard obinem
dualei fr ns a construi problema dual. Acest algoritm execut problema de programare liniar
ciclic urmtoarea succesiune de pai. f ( x ) = x1 3x2 x3 max
Pasul 1. Alegerea liniei pivot p. n condiiile
Se determin indicele p astfel nct p = min i . 2 x1 x2 x3 + x4 = 1,
i i <0
x1 + x2 + x5 = 2,
n cazul c i 0, i , atunci soluia de baz disponibil este
soluie optim a problemei de programare liniar. STOP. 3 x1 x3 + x6 = 0,
Pasul 2. Alegerea coloanei pivot. x2 2 x3 + x7 = 1,
Pe linia p se caut elementele ( j ) p < 0 i se determin
xi 0, i = 1,2,...,7.
acel indice q pentru care
q j Aceast problem este sub form dual admisibil i
= min aplicndu-i algoritmul simplex dual obinem urmtoarea
( q ) p j ( j ) p < 0 ( j ) p succesiune de tabele simplex:
i se decide eliminarea dintre componentele soluiei de baz a
necunoscutei x p i nlocuirea acesteia cu variabila xq . Eta- Variabi min
pa le de x1 x2 x3 x4 x5 x6 x7 i
Dac toi ( j ) p 0, j , atunci problema considerat nu baz
x4 -1 -2 -1 1 1 0 0 0
are soluie admisibil. STOP.
Pasul 3. Se execut transformrile elementare necesare n x5 -2 [-1] 1 0 0 1 0 0 2
tabelul simplex asociat problemei, cu pivotul ( q )p , dup regulile
x6 0 -3 0 -1 0 0 1 0
de la algoritmul simplex i se revine la pasul 1. I x7 -1 0 -1 -2 0 0 0 1
Exemplu. Fie problema de programare liniar
x1 + 3 x2 + x3 min j 0 1 3 1 0 0 0 0
cu restriciile j / ( j )p 1
2 x1 + x2 x3 1,
x1 x2 2, II x4 3 0 -3 1 1 -2 0 0
3 x1 + x3 0, x1 2 1 -1 0 0 -1 0 0
x2 + 2 x3 1, x6 6 0 -3 -1 0 -3 1 0
xi 0, i = 1,2,3 x7 -1 0 -1 [-2] 0 0 0 1 1
198 199
j -2 0 4 1 0 1 0 0 considerabil ntrece prin rapiditate metodele vechi. Strategia lui
j / ( j )p 4 1/2
Karmarkar const n reformularea problemei de fiecare dat astfel
nct se obine un ir finit de puncte situate n centrul poliedrelor
x4 5/2 0 5/2 0 1 -2 0 1/2 soluiilor admisibile. Pentru detalii privind metodele lui Khachian
x1 2 1 -1 0 0 -1 0 0 i Karmarkar recomandm cititorului monografia [36], precum i
13/ 0 7/2 0 0 -3 1 -1/2 lucrarea lui Karmarkar N.A. New Polinomial-Time Algorithm for
III x6
2 Linear Programming. Bell AT&T Laboratories 1984, 38 p.
x3 1/2 0 1/2 1 0 0 0 -1/2
4.5. Rezolvarea problemelor de transport
j -5/2 0 7/2 0 0 1 0 1/2
4.5.1. Preliminarii
Primele aplicaii ale metodei programrii liniare n
Prin urmare soluia optim a problemei considerate este rezolvarea problemelor de planificare le-au constituit problemele
x = 2, x2* = 0, x3* = 1 / 2 iar f max = 5 / 2 . Soluia optim a
*
1
de transport. n paragraful 4.2.2. a fost expus problema de
transport ca un exemplu de programare liniar. Astfel de probleme
problemei duale este y1* = 0, y2* = 1, y3* = 1 / 2 .
se ntlnesc foarte des n practic cu ocazia distribuirii mrfurilor,
nainte de a ncheia acest paragraf, vom sublinia faptul c a repartiiei ntre diveri consumatori etc. Se spune c o problem
algoritmul simplex sau algoritmul simplex dual nu constituie de optimizare este o problem de tip transport, dac modelul su
unicele metode de rezolvare a problemelor de programare liniar. matematic poate fi prezentat astfel: s se determine valoarea
Cu alte metode de rezolvare putei lua cunotin n lucrrile m n
[13,14,19,21,24,25,31,33,36]. minim a funciei f = cij xij n condiiile:
Algoritmul simplex a fost creat n anul 1947 de George i =1 j =1
Dantzing (S.U.A.) i dup cum s-a vzut const n parcurgerea
n
vrfurilor poliedrului soluiilor admisibile, apropiindu-se mereu de xij =ai , i = 1,2,..., m;
soluia optim, pn o atinge ntr-un vrf al poliedrului. Prin anii j =1
aptezeci s-a constatat c n anumite cazuri algoritmul simplex m
lucreaz n timp nepolinomial (timpul de calcul nu este o funcie xij =b j , j = 1,2,..., n;
polinomial). n anul 1979 savantul L. G. Khachian a propus un i =1
algoritm numit metoda elipsoidului. n acest algoritm se parcurge x 0, i = 1,2,..., m; j = 1,2,..., n;
un ir finit de elipsoizi, astfel nct centrul ultimului elipsoid ij
corespunde unei soluii optime i timpul su de calcul este m n
forma urmtorului tabel numit matrice de transport: Atunci introducem o linie (m + 1) cu am+1 = b j ai i
j =1 i =1
x1 j :
202 203
m
Costul transporturilor de la centrele Ai la B j sunt prezentate n
x1 j = b j xij , j = 2,3,..., n.
i=2 matricea de transport.
Din primele ecuaii ale sistemelor menionate avem
n Bj
x11 = a1 x1 j , B1 B2 B3 B4 ai
j =2 Ai
m
2 1 3 2 90
x11 = b1 xi1 , A1
i =2
80 10 - -
sau 2 3 3 1 70
A2
m - 50 20 -
n
m
n
x11 = a1 b j xij = b1 ai xij , A3 3 3 2 1 50
j =2 i=2 i=2 j =2 - - 20 30
de unde conchidem c bj 80 60 40 30 210
n m
a1 b j = b1 ai ,
j =2 i=2 Procedeul colului nord-vest de determinare a soluiei
adic obinem condiia de echilibru. iniiale de baz const n urmtoarele. n ptratul, cruia i se mai
Prin urmare, din condiia de echilibru rezult c sistemul de spune csu, (1,1) din colul nord-vest al matricei de transport se
ecuaii restricii poate fi rezolvat n raport cu m + n-1 variabile. trece valoarea 80 egal cu cel mai mic dintre a1 i b1 adic
Aadar o soluie de baz are cel mult m + n-1 componente xij > 0 , x11 = min(80,90) . Deoarece avem repartizat o cantitate de produs
celelalte fiind nule. Dac avem mai puin de m + n-1 componente necesar, n prima coloan se trec x21 = 0, x31 = 0 . n matricea de
pozitive, soluia de baz este degenerat. transport n aceste csue vom scrie simbolul "-". Csuele n care
Pentru determinarea unei soluii iniiale de baz pe lng este trecut acest simbol se numesc csue libere.
metodele cunoscute din programarea liniar, se cunosc i metode n continuare ne fixm atenia asupra lui x12 din colul din
specifice: procedeul colului nord-vest, procedeul elementului
minim (din tabel, linie sau coloan). Aceste procedee nu cer o stnga de sus al tabelului format cu coloanele B2 i B3 i
teoretizare special i le vom ilustra cu aplicarea lor n cazul procedm n mod analog ca i pentru x11 , adic vom lua
rezolvrii problemei concrete de transport cu trei centre de x12 = min{b2 , a1 b1} = min{60,10} = 10 . Deoarece ntreaga cantitate
producie A1 , A2 i A3 n care se gsesc cantitile 90 t, 70 t i a1 = 90 a fost repartizat centrelor B1 i B2 vom avea
respectiv 50 t i care trebuie transportate la patru centre de consum x13 = 0, x14 = 0 .
B1 , B2 , B3 i B4 n cantitile 80t, 60 t, 40 t i respectiv 30 t.
Rmne un tabel format din liniile A2, A3 i coloanele B2,
B3 i B4. Pentru acest tabel se aplic din nou procedeul descris:
204 205
x22 = min{50,70} = 50, x32 = 0 . Se trece la x23 = min{20,40} = x12 = min{a1 , b2 } = min{90,60} = 60 .
= 20, x24 = 0 .
n fine x33 = min{50,20} = 20 , x34 = min{30,30} = 30 . Deci x22 = 0 , x32 = 0 . n A1 au mai rmas 90-60-30 t. Vom
Soluia iniial de baz este x11 = 80 , x12 = 10 , x22 = 50 , cuta n valoarea lui c1 j imediat superioar lui c12 . Aceast
x23 = 20 , x33 = 20 , x34 = 30 . Valoarea funciei de eficien este: valoare este dat de c11 = c14 = 2 . Constatm c putem lua arbitrar
f1 = 2 80 + 1 10 + 3 50 + 3 20 + 2 20 + 1 30 = 450 . oricare din ele. De exemplu, dac alegem csua (1,1), atunci se va
Determinarea soluiei iniiale de baz cu ajutorul destina pentru x11 valoarea 30 egal cu min{90 60,80} .
procedeului elementului minim (din tabel, linie sau coloan ) se n continuare se procedeaz n mod similar cu celelalte linii
face n mod asemntor, numai c valorile nu se mai trec n colul rmase. Se obine urmtoarea soluie iniial de baz: x11 = 30 ,
nord-vest, ci n csuele cu cost minim de fiecare dat (din tabel, x12 = 60 , x21 = 40 , x24 = 30 , x31 = 10 , x33 = 40 . Valoarea funciei
linie corespunztor coloan). devine:
De exemplu, folosind procedeul elementului minim pe linie f 2 = 2 30 + 1 60 + 2 40 + 1 30 + 3 10 + 2 40 = 340 .
n problema de transport precedent, obinem urmtorul tabel:
Procedeul elementului minim pe coloan este asemntor
Bj procedeului elementului minim pe linie, dar valorile
Ai
B1 B2 B3 B4 ai xij = min{ai , b j } se determin inndu-se cont de valoarea minimal
2 1 3 2 90 a elementelor cij aflate n fiecare coloan. Rezultatul aplicrii
A1
30 60 - - acestui procedeu duce la soluia de baz iniial artat n tabelul
2 3 3 1 70 urmtor:
A2
40 - - 30
A3 3 3 2 1 50
Bj
10 - 40 - B1 B2 B3 B4 ai
bj 80 60 40 30 210 Ai
2 1 3 2 90
A1
Se alege n fiecare linie elementul cij cel mai mic i se 80 10 - -
2 3 3 1 70
repartizeaz n csua corespunztoare cea mai mic cantitate A2
- 50 - 20
dintre cantitile disponibile ai i cele necesare
3 3 2 1 50
b j : xij = min{ai , b j }. n linia nti elementul cel mai mic este A3
- - 40 -
c12 = 1 . Se va destina pentru bj 80 60 40 30 210
206 207
cu zero. Se demonstreaz ( vezi, de exemplu, [14] ) c, n caz
Valoarea funciei de eficien este: general, pentru m centre de depozitare i n centre de destinaie cu
f 3 = 2 80 + 1 10 + 3 50 + 1 20 + 2 40 + 1 10 = 430 . ajutorul procedeelor descrise mai sus putem determina cel mult m
Procedeul elementului minim din tabel const n + n 1 valori ale necunoscutelor xij strict mai mare dect zero.
repartizarea cantitilor destinatarilor dup criteriul elementului cij Aceste variabile se numesc variabile bazice i determin o soluie
minim din tabel. Aplicarea acestui procedeu ne d o soluie de iniial de baz. De la aceast soluie iniial de baz stabilit prin
baz iniial care coincide cu cea obinut prin procedeul unul din procedeele prezentate se poate trece la o alt soluie de
elementului minim pe linie sau cu cea indicat n tabelul urmtor: baz i aa mai departe pn vom obine soluia optim. n
continuare vom descrie metoda numit metoda potenialelor i
Bj care este o variant a algoritmului simplex.
B1 B2 B3 B4 ai
Ai
4.5.3. Metoda potenialelor
2 1 3 2 90
A1
30 60 - - Teorema 4.5. Fie xij* , i = 1,2,K, m; j = 1,2,K n o soluie
2 3 3 1 70 optim a problemei de transport. Fiecrei linii i a matricei de
A2
50 - 20 - transport i corespunde un numr ui* i fiecrei coloane j - un
A3 3 3 2 1 50
- - 20 30 numr v*j astfel, nct se satisfac relaiile:
bj 80 60 40 30 210 ui* + v *j = cij pentru xij* > 0,
ui* + v *j cij pentru xij* = 0,
Valoarea funciei de eficien va fi:
i = 1,2,..., m; j = 1,2,..., n.
4 = 230 + 160 + 250 + 320 + 220 + 130 = 350.
Soluiile de baz iniiale obinute prin cele patru procedee Demonstraie. Problema de transport poate fi considerat
nu coincid i ca o problem dual a urmtoarei probleme de programare liniar:
m n
f1 = 450, f 2 = 340, f 3 = 430, f 4 = 350 . g = ai ui + b j v j max
Rezultatele obinute pentru problema considerat nu pot i =1 j =1
x11 = 30 , x12 = 20 , x23= 40, f = 370. Valoarea lui este egal cu min{30,40}=30. Se obine
astfel tabelul:
Pentru a determina potenialele ui ,vj , rezolvm sistemul de
ecuaii: Bj
u1 + v1 = 3, B1 B2 B3 ai
Ai
u1 + v2 = 2, A1 3 2 1
u1 + v3 = 1, 30 20 0 50
u 2 + v3 = 6. A2 3 5 6
Obinem 40 40
u1 =0, u2=5, v1=3, v2=2, v3=1. bj 30 20 40 90
Calculnd ui+vj-cij pentru csuele libere, avem: x12 = 20 , x13 = 30 , x21 = 30 , x23 = 10, f = 220.
Continuarea calculelor o lsm pentru cititor, indicndu-i
u2 + v1-3 = 8-3 = 5 > 0 ,
c soluia optim este
u2 + v2 - 5 = 7-5 = 2. x12* = 10, x13* = 40 , x21
*
= 30, x22
*
= 10 i fmin=200.
Mai subliniem aici, c daca n cercetarea unei soluii
Pentru csua (2,1) construim ciclul de recalculare cu csuele
optime gsim una sau mai multe diferene nule pentru csuele
vrfuri (1,1), (1,3), (2,3), (2,1):
libere:
218 219
ui + v j -cij = 0, i=1,2,...,m; j=1,2,...,n, iar bi, i=1,2,...,m sunt volumul, greutatea
atunci putem afirma c exist i alte soluii optime de baz care .a.m.d. Notm cu xj numrul de obiecte de tipul j planificate de a
dau aceeai valoare pentru funcia obiectiv. Daca dorim s le fi puse n rucsac, j=1,2,...,n. Se consider c se cunoate valoarea
determinm, putem continua aplicarea metodei potenialelor, util cj a unui obiect de tipul j. Atunci modelul matematic al
ocupnd csua libera, pentru care diferena respectiva este nula. problemei rucsacului are forma:
n
Cu alte metode de rezolvare a problemelor de transport putei
lua cunotin n lucrarea [14].
c j x j max
j =1
cu restriciile
4.6. Programarea liniar n numere ntregi n
a
j =1
ij x j bi ,i = 1,2, K , m,
S considerm o problem de programare liniar:
f(x) = (c,x) max x j 0, x j - numere ntregi, j = 1,2, K , n.
Multe probleme practice se reduc la problema rucsacului.
x = b,
De exemplu, n calitate de rucsac poate fi considerat un vapor sau
x 0, un avion de bombardament, iar rolul obiectelor l preia o anumit
n care toate sau o parte dintre variabilele x1,x2,,...,xn sunt numere marf ambalat n lzi sau bombe de volume i greuti date.
ntregi. Dac toate variabilele trebuie s ia valori ntregi, atunci
problema considerat se va numi problem de programare liniar Problema de afectare. Fie c trebuie executate m lucrri de
total n numere ntregi; n caz contrar se va numi problem de ctre n persoane, fiecare dintre aceste persoane urmnd a executa
programare liniar parial n numere ntregi. exact una din cele n lucrri. Se cunoate beneficiul cij obinut n
Astfel de probleme apar n cazul multor modele
matematice n care variabilele xi reprezint mrimi fizice ce nu pot urma execuiei lucrrii j de ctre persoana i. Se pune problema
lua dect valori ntregi. Multe probleme de extrem cu caracter determinrii unei repartizri a celor n persoane pentru execuia al
combinatoric pot fi de asemenea modelate ca probleme de celor n lucrri, astfel nct beneficiul realizat s fie maxim.
programare liniar n numere ntregi (n majoritatea cazurilor
variabilele pot lua una din valorile 0,1 ). Vom da n continuare Dac notm cu xij , i,j = 1,2,...,n astfel nct xij = 1 , atunci
cteva exemple de probleme de programare n numere ntregi. cnd persoana i este repartizat s execute lucrarea j i xij = 0 n
Problema rucsacului(raniei). Un cltor care urmeaz s caz contrar, atunci putem scrie
plece ntr-o excursie intenioneaz s ia ntr-un rucsac n obiecte n n
utile. S presupunem c exist m restricii asupra rucsacului i c ij xij max
obiectelor n discuie, de exemplu volumul rucsacului, greutatea i =1 j =1
220 221
6
3 2
x
i =1
ij = 1, j = 1,2, K , n, 0 1 4 5
n
x
j =1
ij = 1, i = 1,2, K , n, S-a constatat c condiiile problemei nu garanteaz n
totdeauna conexiunea drumului, de exemplu, drumul ilustrat n
xij = 0 sau 1, i, j = 1,2, K , n. desenul de mai sus satisface relaiilor menionate mai sus, dar nu i
Restriciile acestei probleme determin ca fiecare persoan problemei voiajorului comercial.
s execute o singur lucrare i ca fiecare lucrare s fie efectuat de Se demonstreaz (vezi, de exemplu, lucrarea
o singur persoan. .. . .: ,1981,.240 - 242)
c, pentru a garanta conexiunea drumului, este necesar a aduga la
Problema voiajorului comercial. S presupunem c avem restriciile deja menionate urmtoarele inegaliti:
oraele notate cu numerele 0,1,2,...,n. Voiajorul comercial trebuie ui u j + nxij n 1, i, j = 1,2, K , n,
s treac o singur dat prin fiecare ora i s se ntoarc acas, n unde ui sunt variabile suplimentare, care nu particip n funcia
oraul 0, astfel nct tot drumul s aib cost minim. obiectiv.
Fie variabilele xij , i, j = 1,2, K , n. astfel nct Problema de afectare i problema voiajorului comercial au
1, dac drumul trece din diverse aplicaii n probleme de organizare, dispecerate, relee de
televiziune etc.
xij = orasul i n orasul j, i j , Faptul c ntr-o problem de programare liniar unele sau
0, n caz contrar. toate variabilele trebuie s fie ntregi, implic mari greuti n
Dac cij este costul drumului din oraul i n oraul j, atunci rezolvarea acestor probleme. Se disting dou categorii de metode
de rezolvare a problemelor de programare liniar n numere
problema voiajorului comercial se reduce la rezolvarea problemei ntregi:
de programare liniar cu variabile ntregi:
n n
metode secionare;
c ij xij min metode de ramificare i mrginire (branch and bound).
i = 0 j =o Orice metod de secionare const n urmtoarele:
astfel nct s fie ndeplinite condiiile 1. Se rezolv problema de programare liniar obinut din
n problema dat prin renunarea la restriciile de integritate
x
i =0
ij = 1, j = 1,2, K , n, (numit problema relaxat );
n 2. Dac soluia optim a problemei relaxate are componentele
x
j =0
ij = 1, i = 1,2, K , n, ntregi, atunci ea este soluia optim ntreag cutat;
j 63 0 0 28 / 11 15 / 11 j 59 0 0 0 1 8
226 227
standard, s fie ntr-o form dual admisibil. n acest mod putem
Deoarece soluia optim x = 32 7 , x = 3, nu este total
*
1
*
2
aplica algoritmul simplex dual. n aceasta i const partea
ntreag, vom continua procesul de secionare. Variabilei x1 i important a algoritmului Gomory.
Primul algoritm al lui Gomory, descris mai sus, rezolv
corespunde secionarea generat de restricia
problema de programare liniar total n numere ntregi. Cel de-al
{1 7}x4 + { 1 7}x5 x1* { } doilea algoritm al lui Gomory poate fi utilizat att pentru
sau, cum partea fracionar rezolvarea problemelor total n numere ntregi, ct i pentru
{ 1 / 7} = 1 / 7 [ 1 / 7] = 1 / 7 + 1 = 6 / 7, rezolvarea problemelor de programare liniar parial n numere
1 6 4 ntregi. Descrierea acestui algoritm i a altor metode de rezolvare a
x4 + x5 . problemelor de programare liniar n numere ntregi (metode de
7 7 7
Formm o nou problem de programare liniar dual ramificare i mrginire ) poate fi gsit n lucrrile [13,14,36], la
admisibil creia - i aplicm n continuare algoritmul simplex dual. care i-l trimitem pe cititorul dornic de a face cunotin cu ele.
Obinem urmtorul tabel
228 229
exemplu, lucrarea [19]). Procedeul ce-l vom descrie mai jos a fost Dac (q, x) + < 0 pentru x D, notnd
propus n anul 1962 de ctre Charnes i Cooper. 1
S presupunem c domeniul soluiilor admisibile z= i y = z x,
( q, x ) +
{ }
D = x R n : Ax b, x 0 obinem urmtoarea problem de programare liniar:
este o mulime mrginit (adic un poliedru) i (q, x) + > 0 f = ( p, y ) z max
pentru orice soluie admisibil x D. n condiiile
Dac notm Ay bz 0,
1
z= i y = z x, (q, y ) z = 1,
( q, x ) +
y 0, z 0.
i inem cont de faptul c z>0, atunci problema se reduce la
urmtoarea problem de programare liniar: n mod similar se arat c, dac y* ,z* este o soluie optim
f = ( p, y ) + z max a acestei probleme, atunci x* = y * / z * este o soluie optim a
n condiiile problemei de programare liniar-fracionar considerat.
Ay bz 0, Prin urmare, n situaia cnd D este o mulime mrginit i
(q, x) + > 0 sau (q, x) + < 0 pentru x D, putem construi o
(q, y ) + z = 1,
problem liniar, care fiind rezolvat cu ajutorul algoritmului
y 0, z 0. simplex ne d soluia optim a problemei de programare liniar-
Rezolvnd aceast problem, obinem soluia optim y*, z* . Atunci fracionar.
x* =y*/z* va fi o soluie optim a problemei de programare liniar- Dac ns exist punctele admisibile x1 , x 2 D astfel nct
fracionar. ntr-adevr, imediat se constat c (q, x1 ) + > 0 i (q, x 2 ) + < 0,
Ax * b si x * 0, atunci funcia obiectiv din problema de programare liniar-
adic x* este o soluie admisibil. Putem scrie fracionar este nemrginit pe mulimea D.
( )
p , y * + z * ( p , y ) + z Exemplu. Fie problema de programare liniar-fracionar
pentru orice 2 x1 x 2
f = max
x 1 x1 + 2 x 2 + 1
y= i z =
( q, x ) + (q, x) + cu restriciile
i orice x D, ceea ce este echivalent cu 2 x1 + x2 6,
( p, x*) + ( p, x) +
, x D x1 2 x2 2,
(q, x*) + (q, x) + x1 0, x 0.
deoarece (q, y*) + z* = 1.
230 231
Se observ c x1 + 2 x2 + 1 > 0 pentru x1 0, x2 0. Notnd modificarea vectorului termenilor liberi;
1 modificarea coeficienilor funciei obiectiv;
z= , y1 = zx1 , y2 = zx2 , modificarea unui vector linie din A;
x1 + 2 x2 + 1
modificarea numrului restriciilor sistemului;
reducem aceast problem la problema de programare liniar:
modificarea numrului de variabile.
f = 2 y1 y2 max
cu restriciile Reoptimizarea se efectueaz parcurgnd urmtorii pai:
2 y1 + y 2 6 z 0,
y1 2 y 2 2 z 0, 1. Verificarea optimalitii soluiei n condiiile
modificrii datelor problemei;
y1 + 2 y 2 + z = 1, 2. Aflarea optimului problemei modificate (n cazul cnd
y1 0, y 2 0, z 0. soluia problemei iniiale nu mai este optim).
Aplicnd algoritmul simplex, se obine soluia optim
y1* = 2 / 3, y2* = 0, z * = 1 / 3. Prin parametrizarea unei probleme de programare se urmrete
Prin urmare x1* = 2, x2* = 0 i f max = 4/3 . aflarea variantelor posibile de soluii optime n cazul cnd unele
dintre constantele modelului variaz liniar sau neliniar n funcie
de unul sau mai muli parametri dai.
Principalele cazuri de programare parametric sunt:
parametrizarea vectorului termenilor liberi;
4.8. Reoptimizarea i parametrizarea n programarea liniar parametrizarea vectorului coeficienilor funciei
obiectiv;
Problemele de programare liniar au un caracter static, parametrizarea vectorului coloan sau linie din
ns reoptimizarea i parametrizarea acestor probleme permit matricea A.
abordarea dinamic a fenomenelor economice, elementelor ataate Soluia problemelor de acest tip cunoate urmtorii pai:
fenomenelor economice.
Reoptimizarea sau postoptimizarea const n recalcularea 1. Aflarea soluiei optime pentru o valoare determinat a
soluiei optime a unei probleme de programare liniar n cazul parametrului.
cnd se schimb condiiile iniiale ale acesteia. Importana unui 2. Odat aflat soluia optim pentru o valoare fixat a
astfel de studiu duce la economisirea timpului, deoarece se parametrului, se face studiul sensibilitii soluiei
utilizeaz informaia de care se dispune adic soluia optim optime la variaia parametrului.
cunoscut.
n procesul de reoptimizare se pot aborda situaiile
urmtoare:
232 233
Soluia optim este f ( x) = 6, x* = (1,2,0)T , iar
234 235
Remarc. Reoptimizarea vectorului c se poate realiza de
VB x1 x2 x3 x4 x5 x6 asemenea prin scrierea dualei problemei date; caz n care
vectorul c devine b i se procedeaz aa cum s-a artat n
x1 0 1 0 2 1 1 0 paragraful anterior.
x2 4 0 1 1 1 2 0 Vom analiza pe baza aceluiai exemplu ambele cazuri:
x6 3 0 2 3 I. Fie coeficienii funciei obiectiv au devenit respectiv
0 1 1
c = (3 2 1) .
T
x1 + 2 x2 + 2 x3 5,
x1 0, x2 0, x3 0.
Am obinut soluia optim: xB* = (1,2,0) i f ( xB* ) = 6 . Observm c s-a modificat numai prima component a
funciei scop, care corespunde x1 i care nu aparine bazei B,
4.8.2. Modificarea coeficienilor funciei obiectiv deci soluia rmne optim, j nu-i schimb semnul. Deci
avem x* = (1,2,0)T , iar f ( x* ) = 3 1 + 2 2 = 7
Reoptimizarea funciei obiectiv se face pe baza analizei
noilor diferene, deosebindu-se 2 cazuri:
II. Fie c avem modelul
f ( x) = 2 x1 + 2 x2 + 3x 3 max
1) Dac diferenele j = z j -c j corespunztoare vectorilor,
cu restriciile
care nu aparin bazei B, pstreaz semnul pe care l-au avut
nainte de modificarea vectorului c, atunci nseamn c 2 x1 + x2 + 3 x3 4,
x + x + x 3,
noua soluie va fi de asemenea optim. 1 2 3
2) Dac cel puin una din diferenele j = z j -c j , care
x1 + 2 x2 + 2 x3 5,
corespund unui vector ce nu aparine bazei, este pozitiv, n x1 0, x2 0, x3 0.
cazul problemei de minimum i negativ, n cazul problemei
Aici observm c s-a schimbat componenta lui x3,
de maximum, atunci se vor continua iteraiile prin aplicarea
vectorul cruia intr n baza B, deci vom continua iteraiile
algoritmului simplex primar pornind de la ultimul simplex.
pornind de la soluia obinut n paragraful 4.8.1.
236 237
4.8.3. Adugarea unui vector coloan n matricea A n cazul algoritmului simplex primal i dual, poate s se
~
ntmple ca unele componente ale vectorului X B~ s aib
n cazul extinderii matricei A cu unul sau mai muli vectori
coloane este necesar de asemenea s se verifice criteriul de componente negative, astfel s nu verifice testul de
optimalitate, adic diferenele j = z j -c j , care corespund optimalitate. n asemenea cazuri se reia problema de la iteraia
anterioar intrrii vectorului aj n baz sau se mrete matricea
vectorilor introdui. Se distring 2 cazuri: A cu o coloan, caz analizat n punctul precedent.
1) Dac condiiile de optimalitate se verific, atunci soluia
rmne optim i pentru matricea extins. 4.8.5. Adugarea de noi restricii
2) Dac exist cel puin un vector am, m unul din
mulimea indicilor introdui, care nu verific criteriul Fie c dup determinarea soluiei optime xB se adaug noi
de optimalitate, atunci se continu iteraiile pn la restricii (linii) la sistemul Ax = b . Vom obine problema de
determinarea soluiei optime. programare liniar:
4.8.4. Modificarea unui vector coloan al matricei A A b
x = ; A1 (1, n); b(1,1); x 0; max f ( x) = (c, x ).
A1 b1
Vom presupune c vectorul a1 din matricea A s-a schimbat,
dup ce s-a aflat soluia optim xB. Vom avea de studiat 2 Vom alctui extins:
cazuri, n dependen de aparinerea sau nu a acestui vector
bazei B: A O x b
= ; I (l , n); x 0, x1 0
1. Dac a1 nu aparine bazei B, atunci se verific testul de A1 I x1 b1
optimalitate j = z j -c j 0 . n cazul n care soluia nu este
max g ( x) = (c, x ) xl
optim se continu iteraiile. l =1
2. Dac a1 aparine bazei optime B, atunci el capt forma aj. Dac B1 este baza optim pentru problema de
Deci, se modific chiar o coloan a matricei B, ceea ce programare liniar iniial i B11 inversa ei, atunci matricea
duce i la schimbarea lui B-1, care va trebui recalculat. Fie
~ B O
noua invers notat cu B 1. Cu ajutorul ei se reface B = 1
coloan cu coloan tot tabelul final, folosind formulele: B2 I
~ ~ ~ este nesingular ( B2 este matricea format din componentele
X B~ = B 1 b; a~l = B 1 al , l = 1,2,.., m restriciilor suplimentare corespunztoare bazei B1 n soluia
optim iniial).
238 239
Dac notm cu b1 vectorul termenilor liberi ai sunt convexe. Care din ele sunt strict convexe i care sunt tare
problemei extinse, atunci: convexe?
x1opt = B 1 b 5. Fie f ( x), x R n , o funcie convex. S se arate c dac
f ( x) 0, x R n i p 1, p R atunci funcia
g ( x) = [ f ( x)] p
4.9. Exerciii este o funcie convex.
6. Fie
2
1. S se arate c, dac X i Y sunt mulimi convexe atunci f ( x) = Ax b 2 , x R n ,
mulimea Y = X Y de asemenea este convex.
2. S se demonstreze c vrfurile tronsonului unde A este o matrice de dimensiuni m n, b R m . S se arate
T = {x Ax b} n care A este o matrice de dimensiuni sunt c funcia f(x) este convex n R n .
7. S se arate c dac funciile f i ( x), i = 1,2,..., m, R n sunt
puncte extreme ale sale.
3. S se determine punctele extreme ale tronsonului T definit convexe atunci va fi convex i funcia
de g ( x) = max f i ( x).
1i m
x1 + 2 x2 12, 8. S se arate c pentru orice funcie f ( x), x R n , care are
x + x 18,
1 2 un punct de minim global n T R n , are loc
x1 12, min f ( x) = max( f ( x)).
xT xT
x2 9, 9. S se aduc la forma standard urmtoarea problem de
x1 0, programare liniar:
f ( x) = 3x1 2 x2 + 4 x3 min
x2 0.
4. S se arate c funciile n condiiile
n 3 x1 6 x2 + 9 x3 4,
f1 ( x) = xk , x R n
k =1
2 x1 + x2 + 3 x3 5,
f 2 ( x) = x , x 0, x R1 , x1 4 x2 + 5 x3 = 2,
x1 0, x3 0.
f 3 ( x) = 2 x12 + x22 2 x1 x2 , x R 2 ,
10. S se rezolve cu ajutorul metodei grafice problema de
f 4 ( x) = x14 + 2 x22 + 3x32 4 x1 4 x2 x3 , x R 3
programare liniar
240 241
f ( x) = 4 x1 + 6 x2 min b) f ( x) = x1 + x2 max
n urmtoarele condiii x1 + 3 x2 6,
x1 + 2 x2 8,
3 x1 x2 6,
x1 + 6 x2 12, x1 0, x2 0;
3 x1 + x2 9,
x1 0, x2 0. c) f ( x) = 2 x1 + x2 max
11. Se d sistemul de ecuaii liniare x1 + 3 x2 2,
x1 + 3 x2 x3 = 4,
2 x1 + x2 2,
2 x1 + x2 x4 = 3, x1 0, x2 0.
xi 0, i = 1,2,3,4.
a) S se scrie acest sistem sub forma explicit; 15. S se demonstreze c dac problema primal are funcia
b) S se determine o soluie de baz; obiectiv nemrginit pe mulimea soluiilor admisibile,
c) S se determine o soluie admisibil de baz. atunci problema dual nu are soluii admisibile.
12. S se rezolve problema de programare liniar 16. Folosind algoritmul simplex dual, s se rezolve problema
f ( x) = x1 2 x2 2 x3 min de programare liniar
f ( x) = x1 + 2 x2 + 3x3 min
x1 + x2 + 5 x3 = 2,
n condiiile
x1 x2 + 2 x2 = 0, x1 + x2 + 4 x3 3,
x1 0, x2 0, x3 0 x1 + x2 2 x3 6,
utiliznd algoritmul simplex.
2 x1 + 2 x2 x3 2,
13. S se demonstreze c duala unei probleme duale de
programare liniar este problema iniial. 2 x1 + x2 2 x3 3.
14. S se rezolve att problema primal, ct i problema x1 0, x2 0, x3 0.
dual. S se aduc interpretarea geometric. 17. S se rezolve problema de transport cu urmtoarele date
a) f ( x) = 2 x1 + x2 min
x1 + 3 x2 5,
3 x1 x2 1,
x1 0, x2 0;
242 243
Bj B1 B2 B3 B4 B4 ai
Aj
A1 1 3 2 4 5 50
A2 3 1 5 3 2 40
A3 4 2 1 5 1 60
A4 2 3 1 2 4 21
bj 15 25 36 10 85 171
244
CAPITOLUL V n
i =1
NELINIARE I A PROBLEMELOR DE i izriif u nci ei (x) p o art denu
Pr obl em a m inm m irea de
OPTIMIZARE NECONDIIONAT problem neliniar a celor mai mici ptrate i est e un caz
particul ar dem inm
i izare necondii onat . n general, o pr obl em de
5.1. Introducere m inm
i izare necondii onat se consi der de form :a
min ( x) , (5. 3)
Fi e un sist em de necuaii neli ni are cu n necunoscut e xR n
n
f1 ( x1, x2 ,..., xn ) = 0, unde (x) este o funcie cu valori reale, : R R.
e a(5. 3) n care e st e
f 2 ( x1, x2 ,..., xn ) = 0,
Dup cu m vo m vedea n5. 4, pentru pr obl m
n
o funci e convex i are deri vat e parial e conti nuie n R, un punct
.................................... . (5. 1) n
x* R est e o sol ui e opt m
i a acest ei pr obl m
e e, dac i num ai dac
f n ( x1, x2 ,..., xn ) = 0, ( x*) = 0 . Cu alt e cuvi nt e, x* est e o sol uie a sist me ului de
Dac not m ecuaii (5. 1) n care
x1 f1 f i = (x1 , x2 ,..., xn ) = i ( x1 , x2 ,..., xn ) .
x
x2 f
x= i F = 2 , Pri n urm are, rezol varea sist m e elor de ecuaii neli ni are i
pr obl m
e ele de optim izare necondiionat sunt strns legat e nt re
x f el e. Pentru det erm inarea sol ui ei sist em elor neli niare pot fi folosit e
n n
atunci putem scrie sistemul (1) sub forma vectorial: i m etoded e rezol vare a pr obl m e elord e m inim izare
F ( x) = 0 . (5.2) necondii onat i i nvers.
n n capit ol ul d e fa sev or prezenta pri nci palel e m etode
A rezol va sistem ul (5. 2) nseam n a gsi x R , astfel nct num erice der ezol vare as i st m e elor neli ni are i a pr obl m e elor de
F ( x ) 0 . De exem plu, dac m inm i izare necondii onat .
5.2. Metoda iteraiei i metoda Gauss-Seidel neliniar
x2 ( x1 1) + 4
f ( x1, x2 ) = 2 2
,
x
1 x + 3
2 M etoda iterai ei reprezi nt oe x t i nderea m etodei
avem F ( x) = 0 pentru x = ( 1,2 ) .
T
apr oxim aiilor succesi vef ol osit e n cazul ecuaiil or cu o singur
necunoscut ( v ezi 2. 4) i m etodei Jacobi pentru rezolvarea
Se observ c soluia x a sistemului de ecuaii (5.2) va fi un punct
sist em elor de ecuaii li niare. M etoda perm ite rezol varea sist em elor
de minim global pentru funcia:
de ecuaii neli ni are de form a:
245 246
n (0) n
x1 = g 1 ( x1 , x 2 ,..., x n) Teorema 5.1. F i e S={xE: ||x- x ||r}o sfer n R c u
(0)
x 2 = g 1 ( x1 , x 2 ,..., x n) (5.4) centrul n punct ul x i de raz r>0. Dac
.................................... ||
( x) | q< 1, xS ( 5. 6)
i
x n = g n ( x1 , x 2 ,..., x n), (0) (0)
||G(x )-x || (1-q)r, (5.7)
Fi e x1( 0) , x2( 0) ,..., xn( 0) o aproxim aie as ol ui ei x1* , x2* ,..., xn* a atunci sistemul de ecuaii (5.4) are soluie unic x = ( x1 , x2 ,.., xn* )T
* * *
.......... .......... .......... .......... . Metoda Gauss-Seidel-Newton folosete componentele de ndat ce
( k +1) (k )
f n ( x1 , x 2 ,..., x n ) = 0.
( k +1)
ele sunt calculate, accelernd astfel convergena procesului.
(k) (k) (k) (k+1) Menionm c metodele considerate, n caz general, au vitez
M ai sus x1 , x2 , . .., xn s u nt cunoscut e, iar vari abil a xi nceat (liniar) de convergen. Se demonstreaz c eroarea n
urm eaz a fic al cul at , rezol vnd urm toarea ecuai e cu o singur vecintatea soluiei este evaluat prin
necunoscut z: (k+1) (k)
||x - x*|| q ||x - x*||,
f i ( x1 , x2 ,..., xi 1 , z , xi +1 ,..., xn ) = 0 . (5. 10)
(k ) (k ) (k ) (k ) (k )
unde q este o constant i 0<q<1.
Aceast ecuai e poat e fir ezol vat utiliznd m etodel e st udi ate n
capit ol ul II, d e exem plu, m etoda tangent ei ( Ne wt on). Pr ocedeul
descris i nclude n si ne un pr oces iterati v dubl u: n cadr ul ori crei 5.3. Metoda Newton pentru rezolvarea
iteraii (5. 9) s e va rezolva o ecuaie neli ni ar (5. 10) cu ajut or ul sistemelor de ecuaii neliniare
m etodei Ne wt on, care est e de asem ne ea iterati v. M etoda tangent ei
are o vit ez m are dec o nver gen i anu m e ptrati c( v ezi Una di n cel e m ai rspndit e met ode de rezol vare a
paragraf ul 2. 6). De aceea n ptratic se va face o iterai e, dou sau sist m
e elor de ecuaii neli ni are est e m etoda l ui Ne wt on. Ac east
251 252
(k+1) (k)
m etod est eo generalizare a m etodei tangent ei ( vezi paragr af ul Dac || x - x || = ||d||< , unde > 0 i destul de m ic,
2. 6), pr opus de nsui Ne wt on ca oa pli cai e practi c a noiunii de (k+1)
at unci se accept x ca rdci n a sistem ului consi derat.
deri vat . Met oda Ne wt on a devenit, de-a l ungul anil or, foart e M eni onm c trecerea de l a x(k) l a aproxim aia x(k+1) poat e fi scris
popul ar, dat orit f apt ul ui c est e cu conver gen ptrati c.
Efi cacit at ea acest ei m etode s-a dovedit n speci al n pr obl m
e lee de sub form a:
(k+1) (k) (k) -1 (k)
optim izare de ceam ai variat form . x = x - [
( x] F ( x ). (5. 12)
n
Consi derm pr obl m e acal cul ul ui solui ei x* R si st em ului
de ecuaii dat n form vect ori al : Se obi ne astfel o extindere a m etodei tangentei de rezolvare a
( x) =0,
F ecuaiil or algebri ce i transcendent e. n practic form ula (5. 12)
T est e greu apli cabil ,(k) deoarece la fiecare pas t r ebui e i nversat
unde F=(f1, f2, ..., fn) , iar funciile fi admit derivate pariale de
m atricea Jacobi ( x ).
ordinul nti continue i mrginite.
(0)
Fi e x o aproxim aie i niial al easa r bitrar n veci nt at ea n m od analog cu cazul 1- dim ensi onal trat at np ar agraf ul
(k)
sol ui ei x* , n preal abil locali zat . Tr ecerea de la apr oxim aia x l a 2. 6 se dem nostreaz urm toarea teorem :
(k+1) Teorema 5.2.F i e funciile f,1 f,2 ..., fna m d itd e ri vat e
x , k= 0 , 1, 2,... im plic n m etoda Ne wt on parcur gerea etapel or
urm toare: parial e de prim ulor di n i
n
de or di nul d oi conti nue i m rgi nite pe o
cal cul ulm atricei Jacobi m ulim edeschi s D R. Pr esupunem c exi st x* D,astfel nct
( x*) =0 i
F
(k )
f i ( x (k ) ) -1
|| [( x* ) ] || m , 0 < m< .
( x )=
x j nn At unci exi st o sfer S={x: | x- x* | r}c e ntrat n x* i de raz r> 0,
(0) (k)
astfel nct p e nt r u orice x S irul {x } defi nit de (5. 12)
rezol varea sistem ului de ecuaii lini are n raport cu conver ge ctre x* i
vect or ul d
:
(k) (k)
( x ) d =- F
( x ); (5. 11) || x
(k+1) (k)
- x* | C | x - x* | ,
2
<
0< C.
(k+1)
det erm inarea l ui x cu aj ut or ul form ulei:
(k+1) (k)
x =x + d . Exemplu
. Consi derm sist m
e ul de ecuaii neli ni are:
Se vede cm etoda Ne wt on revi ne la rezol varea succesi v a
sist me ului de ecuaii li niare (5. 11). Est e necesar ca det (
(k)
( x ) 0, f 1 ( x1 , x 2) x 2 ( x1 1) 1 = 0,
.
k=0 , 1, 2,.... . f 2 ( x1 , x 2) x12 ( x 22 1) 1 = 0
Rezol varea ecuai ei m atriceal e (5. 11) se va face cu aj ut or ul
unei a di n met odel e al gebrei li ni are. De obi cei npr acti c se apli c Se vede din fig.5.2 c sistemul are dou soluii reale.
m etoda Ga uss a elim ni rii cu pi vot area parial sau pi vot area
t ot al .
253 254
(k)
(F x ). De aceea n unel e cazuri se consi derm etoda Ne wt on
m odificat , n care se pstreaz m taricea l ui Jacobi neschim bat
pentrum ai m uli pai (sconsecuti
)
vi:(k)
( x ) d =-F ( x ), k=s, s+
1 , ..., s+m.
Put me evit ac al cul ul deri vat el or parial e, apr oxim ndu-l e
pri n diferene:
(k ) (k ) (k ) (k ) (k )
f i ( x ) f i ( x1 ,..., x j + h,..., x n ) f i ( x1 ,..., x n ) ,
(k )
xj h
unde h este un numr suficient de mic. n asemenea cazuri fiecare
2
pas necesit calculul a n valori ale funciilor fi n locul a n derivate
pariale. ns convergena metodei discrete a lui Newton este doar
liniar.
Fig. 5.2
M ult m ai eficace (ksunt
)
m etodel e num ite cvasi-Ne wt on, n
S precizm soluia situat n care m atricea Jacobi ( x ) se nl ocui et e pri n m atricea A,k i ar Ak
D={( x1,x2 ): 1.5 x1 2; 1 x2 1.5}. se defi nesc, astfel nct:
Avem: k
( )
lim Ak x * = 0 .
255 256
efi ci en s au funci e obiecti v. De rei nut c pr obl m e am axim izrii
funci ei f( x) est e echi valent m inm i zi rii funci ei - f( x).
n
Punct ul x* R, pentru care exist > 0 nct s avem
f( x*) f( x) (5.13)
pentru orice x S = {x:||x-x*|| } se numete punct de minim
n
local al funciei f:R R.
n
Dac (5. 13) are l oc pentru ori ce xR , se num ete punct de
m inmi gl obal. Dac n (5. 13) sem nul se schim b n , at unci
x* est e punct dem axm i local, respecti v gl obal.
Condiia necesar de ordnul nti. F i e x* unp u nct de
m inmi pent ru f( x) i fie funci a f( x) ad m ite deri vat e parial e de
or di nul nt i conti nue n x* . At unci
f ( x* )
0
x1 Fig. 5.3
M
M
*
f ( x ) =
= ,
f ( x)
0
xn
adic gradientul funciei se anuleaz.
Demonstraie. Pr esupunem contrari ul : f( x*) 0. At unci
f( x*- f( x*)) =f( x*) + ( f( x*), - f( x*)) + ( || f( x*) |=
= f(x*) -|| f(x*)||2 + () < f(x*)
pentru orice > 0 suficient de mic. Rezult c exist punctul
z=x*- f(x*),
n care f(z) < f(x*), ceea ce infirm faptului c x* este un punct de
minim local.
Punct ul x* n care f( x*) =0 se num ete punct st ai onar al
funci ei f. Nu ori ce punct st ai onar est e un punct de m inm i l ocal.
Punct ul st aionar poat e fi i un punct d e m axm i local sau punct de
a ( vezi fi g.5. 3- 5. 4).
Fig. 5.4
257 258
2 2 2 2
Condiia suficient de ordinul nti.D a c f( x) est e o (f x* + y) =f( x*) + ( f( x*) y, y) / 2 + ( | y|| ).
funci e convex i adm ite deri vate parial ed e or di nul nt i Deoarece m atricea Hesse n x* e s t e poziti v defi nit , e xi st
conti nue, atunci un punct stai onar est e punct de m inm i gl obal. const ant a m>0, astfel nct
Demonstraie.F i e f( x* ) =0. Cu m f( x) este convex, 2 2 n
( f( x*) y, y) m| y|| , yR .
n
ori ce ar fi xR rezult (vezi 4. 1. 2): Fi e yun sector arbitrar i | y|| =1. At unci put m
e scrie:
f( x) f( x*) +( f( x*), x- x*) =f( x*). f( x* + y) f( x*) + m
2 2
/ 2 + ( r) ,
Pri n urm are, dac f(x) este o funcie convex i are derivate 2
pariale continue, un punct x* este punct de minim global dac i unde funcia (r ) nu depinde de y. De aceea exist 0 >0,
2 2
numai dac f(x*) = 0 . astfel c pentru 0 0 avem m/2 (r ) i prin urmare:
Condiia necesar de ordinul doi.F i e x* unp u nct de
f(x* + y) f(x*),
m inmi pentru f( x) i f unci a f( x) ad
m ite deri vat e pari al e de ordi nul
adic x* este un punct de minim local.
doi conti nue n x*. At unci m atricea Hesse est e sem ipoziti v defi nit
Exemplu. Fi e
n x*, adi c:
2 1
( f( x*) y, y) 0 , y Rn . f ( x) = x12 + x 22 + x32 x1 2 x 2 4 x3 , x R3 .
2
Demonstraie.S pr esupunem c x* est e unp u nct de
n Avem f( x) = 0 dac i num ai dac
m inmi . Avem f( x*) =0 i pentru s ufi ci ent dem ic i y R:
2 2 2 2 f ( x)
f( x*) f( x* + y) =f( x*) + ( f( x*) y, y) + ( ||y|| ), = x1 1= 0,
de unde x1
2
( 2 y ) f ( x)
( f ( x ) y, y )
2
. = 2 x2 2 = 0,
2 x2
Aa cum
f ( x)
( 2 y )
2
= 2 x3 4 = 0,
lim = 0, x3
2
de unde soluia x1* = 1, x2* = 1 , x3* = 2.
( ( ) )
rezult c oricare ar fi y R n avem 2 f x* y, y 0.
M atricea Hesse
Condiia suficient de ordinul doi.F i e x* un punct
st ai onar i funci a f( x) are deri vat e parial e de ordi nul doi conti nue
1 0 0
( )
n x*. Dac m atricea Hesse 2 f x* est e poziti v defi nit, adi c f ( x ) = 0 2 0
2
2 n
( f( x*) y, y) > 0, yR, y 0, 0 0 2
atunci x* este punct de minim local. este pozitiv definit. Rezult c punctul staionar x* = (1,1,2) este
T
2 2
Demonstraie.C u m f( x*) =0 i ( f( x*) y, y) > 0 un punct de minim.
ori care ar fi y 0, rezult c pentru sufi ci ent dem ic
259 260
(k) n
Un punct stai onar x* est e un punct d e m axim local, dac Fi e x R u n punct a r bitrar. A a su m am vzut n
m atricea Hesse n x* e s t e negati v defi nit . D a c n punct ul (k)
paragraf ul 5. 4, dac x e st e punct de m inm i (local), at unci e st e
st ai onar x* m atricea Hesse est e nedefi nit , a t unci x* nue st e
ndepli nit condiia:
extrem local, dar est e un punct a. (k)
1 1 f( x ) =0.
Exemplu. Fi e f ( x) = x13 + x1 x 2 + x32 , x R 2 . n cazul cnd f( x )
(k)
0 ne punem p r obl m
e adet erm inrii
3 3 (k) n
Avem : unei direcii d R ndrept at ns e ns ul descret erii val oril or
x12+ x 2 0 funci ei f( x), a st fel nct, a vansnd de-a l ungul acest ei direcii, s
f ( x) = = , (k+1) (k)
= x + d ,
(k)
> 0, pentru care
2 0 obi nem unp u nct x
+
1 2
x x (k+1) (k) (k)
f( x ) < f( x ). Pe de alt part e, vect or ul gr adient f( x ) e st e
de unde obinem dou puncte staionare: ndrept at n sensul cresct or al val oril or funci ei f. Pri n urm rae, ca
(1) T (2) T
x = (0,0) i x = (-1,-1) . (k)
direci a d sa fie direcie de descretere a funciei f( x) di n punct ul
Cu
m (k) (k)
x e st e necesar s form eze cu gradi ent ul f( x ) un unghi m ai
2 x1 1 m are de / 2 (vezi fi g. 5. 5).
2 f ( x ) = ,
1 2 x 2
rezult c
0 1 2 1
2 f ( x(1) ) = , f ( x )=
2 (2)
.
1 0 1 2
(1)
M atricea 2 f ( x (1) ) este nedefi nit , adi c x nu est e punct de
extrem , dar un punct de a. ns 2 f ( x ( 2 ) ) est e negati v definit ,
(2)
deci x est e un punct dem axm
i local.
261 262
(k)
Cu alt e cuvi nt e, direci a de descret ere d , care pl eac di n se numete metoda celei mai rapide descreteri.
(k)
punct ul x , trebui e s satisfac condi ia: Dac funcia f( x) est e convex, at unci funci a ( ) est e de
(k) (k) asem enea convex, ceea ce nseam n c l ungim ea pasul ui k
( f( x , d ) < 0. (5. 14)
M ajoritat eam etodel or d e rezol vare a pr oblem elor de trebui e al eas astfel nct ( k ) = 0 , deci det erm inarea pasul ui n
(k)
optim izare necondii onat const au nc onstr uirea unui ir {x }d e m etoda cel or m ai rapi ded escret eri se reduce lac al cul ul solui ei
(0)
punct e (por ni nd de l a un punct i niial x ) conf orm relaiei: ecuai ei ( ) = 0 ,care poat e fi sol ui onat cu aj ut or ul m etodel or
(k+1) (k) (k)
x = x + kd , de rezol varea ecuaiil oral gebri ce i t r anscendente (vezi capit ol ul
(k) II). Sunt cunoscut e i m teode direct e de apr oxim rae a punct ului de
unde direciile d sunt alese, astfel nct are loc (5.14), iar k este m inmi pentru o funci e de o si ngurv ari abil : metoda seciunii de
lungimea pasului de-a lungul acestor direcii. aur, metoda lui Fibonacci, metoda parabolei i alt el e. na c est e
(k)
Di ferite pr ocedee de al egere a direciei d i pasul ui kn e m etode nus e cere eval uarea deri vat ei funci ei consi derat e.
M etodel e dem inm i izare pentru funcii de o si ngur vari abil pot fi
conduc l a diferitem etode de optim izare. (k) gsit e n [37].
Cel m ai sim pl u m od dea l egere a direciei d est e form a Se fol osesc i alt e pr ocedee de al egere a l ungim ii pasul ui.
(k) (k) (k)
d =- f( x ) : se satisface condiia (5. 14) i d est e o direcie de De exem plu, k poat e fi cal cul at conform procedurii urm toare:
(k)
descret ere m axm i a funci ei fdi n punct ul x . Acest mod de se al ege o val oare arbitrar (una i aceeai la fiecare
(k) (k) (k)
al egere al direci ei d genereaz metodele de gradient. iteraie), se det erm in punct ul z = x - f( x ) i se
O m are m i port an are i m odul (k)n care sed e fi net e cal cul eaz f(z) ;
l ungim ea pasul ui kd e- a l ungul direci ei d . Cel m ai uor e de -se verific condiia (k) (k) 2
al es k p entru ori ce k. n acest caz avem m etoda: f( z) - f( x ) - || f( x ) | , (5. 15)
(k+1) (k) (k) unde este o constant arbitrar n intervalul (0,1);
x = x - f( x ), k=
1 , 2,...,
numit metoda gradientului cu pasul constant. dac est e ndepli nit i negalitat ea (5.15), at unci val oarea
e st e accept at i se va l ua k= . n caz contrar se
O alt al egere est e ca l ungim ea pasul ui ks se det erm ine
fraci oneaz p r i n nm ulirea l ui c u un nu m r
astfel nct s se (obi n" cea m ai mare" descretere posi bil de-a
k) ar bitrar poziti v i < 1. Pr ocesul se conti nu pn cnd
l ungul direciei d . Aceast det erm ni are se reduce la gsireau nui
est e satisfcut condiia (5. 15).
punct de m ni mi gl obal pentru funcia de o si ngur vari abil real A adar k = t r ebuie astfel determ inat nct s fi e
:
(
(k) (k)
) =f( x + d ). asi gurat descret erea funci ei obi ecti v conf orm condiiei (5. 15).
M etoda gradi ent ul ui n care ks e det erm in prin pr ocedeul
M etoda de gradi ent n care l ungim ea pasul ui ks e al ege
descris se num ete metoda gradientului cu fracionarea pasului.
astfel nct
n i pot eze dest ul de slabe avem asi gurat conver gen a
( k ) = min ( )
0 m etodei gradi ent ul ui.
263 264
n 2
Teorema 5.3.Fi e funcia f( x), x R a r e derivat e parial e 1 2
n f ( x ( 3) ) = < f ( x ( 2) ) .
de or di nul doi conti nue pe Rim ulim ea 9 27
n (0)
S={xR: f(x) f( x ) } n fi g. 5. 6 este il ustrat m doul n care se construi esc succesi v
est(ke) m rgi nit. At unci nm etoda gradi ent ul ui se construi et e un ir acest e apr oxim ri.
{x }, k 0 , n aa fel nct
lim f ( x ( k )) = 0.
k
(k)
M ai m ult, orice punct de acu m ulareal irul ui {x }e st e unp unct
st ai onar pentru funci a f( x), adi c exi st subirul x ( ki ) al irul ui
(k)
{ }
( ki ) *
{x }, astfel nct lim x = x i f(x* ) =
0.
i
Demonstraia acest ei teorem epoat e fi gsit n [33].
Exemplu. Fi e pr obl m e adem inm i izare necondiionat :
1
f ( x1 , x 2) = x12 + x 22 min .
2
S apli cm m (0)etoda cel eiT m ai rapi de descret eri, considernd
punct ul i niial x = = ( 1,1) . Avem :
x 1 Fig.5.6
f ( x) = 1 , d ( 0) = f ( x ( 0)) = ,
2 x2 2
Est e de dorit s conti num procesul pn cnd
3 1 || f( x(k)) | < , (5. 16)
f ( x ) = , ( ) = (1 ) 2 + (1 2 ) 2 .
(0)
2 2 unde >0 este precizia de atingire a minimului.
Condiia ( ) = 0 implic 0 = 5/9. Constatm c M eni onm ,c n general, at unci cnd ne apr opiem de un
x(1) = x (0) + 0 d 0) = ( )
4 1
,
9 9
T
i f ( x (1) ) =
1 3
< = f ( x ( 0) ).
9 2
punct de m ni m i l ocal al f unci ei f, m etoda gr adient ul ui conver ge
lent. Se const at cu uuri n c n m etoda cel ei m ai rapi de
(k+1) (k)
descret eri (d , d ) =
(k+1) (k)
0, adi c f( x ) f( x ) (vezi exercii ul
Urmtoarele dou aproximri vor fi:
( ) ( )
8). Acest l ucr u nseam n c pentruf uncii cu pant m are,a di c
2 2 T ( 3) 2 4 1 T pentru funcii suprafa ac r ora reprezi nt o"rp", m etoda cel ei
x ( 2)
= , ,x = , .
27 27 27 9 9 m ai rapi de descret eri conver ge foarte lent (vezi fi g. 5. 7); di n acest
Pentru ele avem: m otiv i negalitat ea (5. 16) est e greu de asi gurat.
2 1 n practi c m etoda gradient ul ui est eo prit chi ar d a c nu a
f ( x ( 2) ) = < = f ( x (1) ) , fost ati ns condiia (5. 16), dar se const at variaii nesem nifi cati ve
243 9
265 266
n val orilef u nci ei obi ecti v corespunzt oare ct or va iteraii M etoda
(k+1) (k) (k)
consecuti ve. x =x + kd , k =0, 1, 2,..., (5. 18)
(k)
unde direcia d este definit prin (5.17) se numete metoda
Newton-Raphson.
(k)
Lungim ea pasul ui k n ( 2) pe direci a d s e poat e al ege
utiliznd pr ocedeel e descrise n paragraful 5. 5. De e xem plu, put m
e
al ege ,k astfel nct:
( k ) = min ( ) = min f ( x ( k ) + d ( k )). (5. 19)
0 0
Se poat e determ ina l ungim ea pasul ui ,k fraci onnd unit at ea =1
pn cnd se va satisface
(k)
i negalitat
(k) (k)
ea: (k) (k)
f( x +d ) - f( x ) (
f( x ), d ), (5. 20)
unde 0 < <1/2, un numr fixat.
Reinei! n metoda gradientului numrul (0,1), aici
(k)
(0,1/2) i direcia d se determin prin (5.17).
Dac n (5. 18) se va l ua k 1 pentru ori ce k
0 , obi nem
267 268
(k)
M eni onm ,c n pr actic direci a de depl asare di n x n u 2 x1 + x 2 3 2 1
se defi net epr i n form ula (5. 17), care necesit inversarea matri cei f ( x ) = , 2 f ( x ) = .
Hesse, dar se 2det er(k)
m in ca sol(k)ui e a sist m
e ului de ecuaii li niare n +
1 x2
x 2 1 1
2
raport cu d: f( x ) d =- f( x ). Cum m atricea Hesse f( x) este poziti vd e f i nit , funci a
Teorema 5.4.Fi e funcia f( x) est e tare convex, are deri vat e consi derat est e tare convex. (0)
n
parial e de ordunul doi conti nue pe R i exi st o const ant poziti v Det erm inm di r eci a d d e depl asare di n x(0)c a s ol ui e a
> 0, astfel nct :
L sist m
e ului:
2 2 n 2 (0)
|| f( x) - f( y) | L| x- y||, x, yR. (5. 21) f( x(0)) d =- f( x ),
(k)
At unci irul {x } c onstruit pri nm etoda Ne wt on - Raphson: adic a sistemului:
(k+1)
2 1 d 1
(k) 2 (k) -1 (k)
x = x - k[ f( x ) ] f( x ), k =0, 1, 2,...., 1 1
= ,d (0) = .
unde lungimea pasului k se determin din condiia (5.19) sau 1 1 d 2 1 1
din condiia (5.20), converge la soluia optim x*, oricare ar fi Avem :
(0) n
aproximarea iniial x R i viteza de convergen este 0 1 1
x(1) = x( 0) + d ( 0) = + =
ptratic: 2 0 1
(k+1) (k) 2 (1) T
||x -x*|| C||x -x*|| , 0<C<. (5.22) i f(x ) = (0,0) . Prin urmare, s-a obinut soluia optim
T
Demonstraia acest ei teorem epoat e fi aflat n referi n el e [25, 33 ]. x* = (1,1) .
Observaii.1 . Teor em a est e adevrat i at unci cnd M eni onm ,c n cazul m inm i izrii funciil or ptratice
condiiile di n enun ul t e or me ei sunt ndepl i nit e nu m ai nt r- o 1
veci nt at e ap u nct ul ui de m inmi pentru funcia f. n acest caz f ( x) = ( Ax, x) + (b, x) + c
(0)
2
apr oxim aia i niial x se va l ua di n veci nt at ea punct ul ui x*. cu ajutorul metodei Newton se obine soluia optim ntr-o
2. Condiiilet eor me ei garant eaz exi st en a unui nu m r N = (0)
singur iteraie, indiferent de alegerea punctului x . ntr-
= N ( ), astfel nct pent ru kNa vem k 1, adi c rel aiile( 5. 19) adevr, putem scrie:
i (5. 20) dea l egere a lungim ii pasul ui kd e- a l ungul direci ei f ( x) = Ax + b, 2 f ( x) = A,x = A1 b,
(5. 17) se ndepli nesc cu k 1. Cu alt e cuvi nt e, n vecint at ea sau cum
sol ui ei optim em etoda Ne wt on- Raphson se transf orm n met oda x(1) = x ( 0) A1( A x ( 0) + b) = A1 b,
cl asi c Ne wt on. (1)
1 rezult x = x*.
Exemplu. Fi e f ( x1 , x 2) = x12 + x1 x 2 + x 22 3 x1 2 x 2 .
2 Pri
(k)
n urm are,di r eci a de descret ere (5. 17) cal culat n ori ce
S(0)apli cm Tm etoda cl asic Ne wt on, a l egnd aproxim aia punct x nt ot deauna coi nci de cu direcia sprep unct ul de m inm i
i niial : x =( 0, 2) . Avem x* . n fi g. 5.8 est e il ustrat acest l ucr u pentru funci a ptrati c
269 270
1 2 2 reguli prestabilite. Ele reprezint aproximri ale matricelor
f ( x1 , x 2) =
x1 + x 2 , rel uat di n 2. 5, i c a r e a servit dr ept 2 (k) -1
2 [ f(x )] , k=0,1,2...., astfel nct
exem plu pentru il ustraream etodei cel eim ai rapide descret eri. 1
lim H k [ 2 f ( x (k )] =0. (5.24)
k
H1g(1)(g(1))TH1=H1g(1)(H1g(1))T=
1
(d (0)
, g ) = (1 0 )
(0)
= 1;
1 / 2
275 276
1/ 5 1 / 25 2 / 25 prezent at n paragraf ul 5. 6 est e o metod de ordinul al doilea ,
(1 / 5 2 / 5) = ;
2 / 5 2 / 25 4 / 25 deoarece necesit cal cul ul m atricei H e s se, adic a deri vatel or
parial e de ordi nul doi.
0 1 M etodel e dedi r ecii conj ugat e au o conver gen m ult m ai
(d (1) , g (1)) = (1 / 5 2 / 5) = ; rapi d dect m etodel e de gradi ent. n cazul m inm i izrii funciil or
1/ 2 5 ptratice, met odel e m eni onat e det erm in punct ul de m inm i ntr-un
n
num r fi nit de pai (egal cel m ult cu dim ensi unea spai ul ui R ) .
0 1
( H1 g (1) , g (1) ) = (1/5 2 /5) = ;
M ai m ult dect at t, m ajoritat ea m etodel or cvasi - Ne wt on
1/ 2 5 genereaz o m ulim ede direcii conj ugat e i deci p ot fi considerat e
m etode de direcii conj ugat e.
Fi e Ao m tarice sim etric poziti v defi nit de dim ensi une
7 / 10 2 / 5 5 1 / 25 2 / 25 n
nn. Vect orii nenuli u i v R s e num esc conjugai n raport cu
H 2 = + 5
2 / 5 4 / 5 2 2 / 25 4 / 25 m atricea A , dac
1 / 25 2 / 25 1 1 ( Au, v) =0.
5 = . Vect orii conj ugai sem ai nu m esc A- ortogonali.
2 / 25 4 / 25 1 2
n exem pluld e m ai j oss e va il ustra noi unea de vect ori
2 -1 conj ugai i s e va evi deni a m i portan a direciil or conj ugate la
Pri n urm are, H2 = [ f( x*) ]. M ai subli ni m
e nco dat , n cut area punct ul ui dem ni im pentru funciile ptrati ce.
cazul funciilor ptratice matricele Hk converg ntr-un numr finit Exemplu. Fi e
2 -1
de pai ctre [ f( x*) ] i soluia optim x* este atins n cel mult f ( x1 , x 2) = x12 x1 x 2 + x 22 3 x 2 .
(1) (2) (n)
n pai x , x , ..., x . Avem :
2 x1 x2 2 2 1
5.8. Metode de direcii conjugate f ( x1 , x 2) = , f ( x1 , x 2) = .
x1 + 2 x2 3 1 2
Vom construi doi vect ori u i vc o nj ugai n raport cu m taricea
5.8.1. Consideraii preliminare 2
Hesse f. Adm item c n calitat e de prim ul vect or s-a al es
T
n acest paragraf se descri u m etode de m inim izare a u =(1 0) .
funciil or convexe, care utilizeaz noi unea de(k)direcii conj ugat e. T
n m etodel ed e direciic o nj ugat e vect or ul d d e descretere a At unci vector ul v =( v1 v)2 satisface rel aia
2
funci ei fdi ntr-un punct x(k)s e det erm i n num ai pe baza deri vat el or 0 =( f( x,1 x)2 u
, v) =2 v1- v.2
parial e de ordi nul nt i. Astfel de met ode n care se utilizeaz doar e al ege v1=
n particul ar, put m 1 , v2=2 , aa c v=
T
( 1, 2) . M eni onm
i nform aia despre gradient ul funciei obi ecti vs e m ai nu m esc
metode de ordinul nti. M etodele de gradient pr ezent at e n c vect orii conj ugai sed et erm in neuni voc. Dac Tm inim izm
paragraf ul 5. 5 i m etodel e cvasi - Ne wt on descrise n paragraf ul funci a consi derat de-a l ungul direciei u =( 1 0) , pl ecnd cu
(0) T
5. 7 sunt m etode deo r di nul nt i. M etoda Ne wt on-Raphson x =(-1/ 2 1/ 2) T, obi nem punct ul x(1) =(1/ 4 1/ 2) .
277 278
ntr-adevr,
(1)
x =x +
(0)
0u i m inm
i m
u ul funci ei nxn, iar c - o constant. Se pune problema determinrii punctului
(0) 2 x*, care minimizeaz funcia de mai sus.
(
) =f( x +u) =
(
- 1/ 2) - 1/ 2(
- 1/ 2)-5/ 4 se ati nge pentru 0= 3/ 4. Gr adi ent ul lui f( x) est e dat de
Acum ,m inim iznd funcia f de-a l ungul direci ei v car e pl eac di n f( x) =Ax+b
(2) T
punct ul x(1), obi nem x = ( 1 2) care est e sol uia optim . i unde prin anularea acestuia rezult:
-1
Ax*=-b sau x*=-A b.
Deci cal cul ulm inm i m u luui revi ne la rezol varea sist m e ului de
ecuaii li ni are:
Ax= - b .
(0) (1) (n-1) (i)
Fi e {d , d ,..., d }, d 0 , un sistem de vect ori m utual
conj ugai n raport cum taricea A , adic se satisfac rel aiile:
(i) (j)
( Ad , d) =0 ij.
Vect orii recipr oc Ac onj ugai sunt lini ar i ndependeni. ntr-adevr,
fie ,0 ,...,
1
n-1, astfel nct
(0) (1) (n-1)
0d + 1d .... + n-1d
+ =0,
de unde rezult imediat c
(i) (i)
i(Ad ,d ) = 0 sau i = 0, i=0,1,...,n-1.
Fig. 5.9 Deoarece vect orii mn utual conj ugai sunt lini ar ni ndependeni
(0)
e scrie pentru un x R dat:
(form eaz o baz n R), put m
n fi g. 5. 9 sunt reprezent at e direciile conj ugate u i v i n 1
m odul n care se obi ne punct ul optim .
x x (0)
= i d (i ).
Subli ni(0)m
e fapt ul, c n exem plul de m ai sus, pl ecnd di n i =0
ori ce punct x i utiliznd direciile conj ugat e, s ol ui a optim se Avnd n vedere c (0) (0) (0)
det erm in celm ult n doi pai. ( x* - x ) = f( x*)- f( x ) =- f( x ),
A
obinem:
(0) (i) (0) (i) (i) (i)
(A(x* - x ),d ) = -(f(x ),d ) = i(Ad ,d ),
5.8.2. Minimizarea funciilor ptratice i rezolvarea de unde
sistemelor de ecuaii liniare Algoritmul Hestenes - Stiefel
(f ( x ( 0) ), d (i ) )
i = .
( Ad (i ) , d (i ) )
S consi derm o funci e ptratic:
f( x) =1/ 2 ( A
x, x) +( b, x) + c,
n
unde b, xR , A o matrice simetric pozitiv definit de dimensiune
279 280
Pri n urm are, fii nd dat eo apr oxim ai e i niial x i nd irecii
(0)
iar direciile d(k) se aleg de forma:
(0) (1) (n-1) (k) (k) (k-1)
m utual conj ugat e d , d , ..., d , sol uia optim x* se poat es cri e d = -f(x ) + k-1d , k = 1,2,...,n-1 (5.33)
(0) (1) (k)
sub form a: cu numrul k-1 determinat, astfel nct direciile d ,d ,...,d s
n 1
(f ( x ( 0) ), d (i ) ) (i )
x* = x (0) (i ) (i )
d . (5. 29) fie mutual conjugate n raport cu matricea A.
i = 0 ( Ad , d ) Det erm inarea l ui k di n (5. 32) n cazul funciil or ptratice
(0)
Lund n particul ar x =0, avem : est e sim pl:
(k+1) (k) (k) (k) (k)
n 1
(b, d (i ) ) 0 =( Ax +b , d ) =( A x + b + Ad , d) =
x * = d (i ) , (k) (k)
k
(k) (k)
(i )
i = 0 ( Ad , d )
(i )
= ( f( x ), d) + (k Ad , d ),
sau de unde
n 1
d (d ) (i ) (i ) T
(f ( x ( k ) ), d ( k ) )
x =
*
b , (5.30) k = . (5.34)
i = 0 ( Ad (i ) ,d (i ) ) ( Ad ( k ) , d ( k ) )
(0) (1) (k)
-1
adic inversa A se poate calcula cu expresia: i nnd cont d e fapt ul c vect orii d , d ,..., d s unt c onj ugai,
n 1 m erele k-1, k =1 , 2,..., n- 1 , trebui e al ese ca s se satisfac
nu
d (i ) (d (i ) )T
A 1 = (i ) (i )
. (5.31) rel aiile:
i = 0 ( Ad , d ) (k-1) (k-1) (k-1) (k-1) (k-1) (k-1)
(0) (1) (n-1) 0 =( Ax , d ) =-( dA , f( x ) ) +k-1( Ad , d ),
Astfel, dac vectorii {d , d ,..., d } sunt mutual de unde
conjugai, atunci soluia optim x* este dat de formulele( 5. 29)
-1 ( Ad ( k 1) , f ( x ( k 1) ))
sau ( 5. 30), iar inversa A - de formula ( 5. 31). k 1 = . (5.35)
(0) (1) (n-1) ( Ad ( k 1) , d ( k 1) )
n metoda lui Hestenes-Stiefelv ect orii {d , d ,..., d }s e (k) (k+1)
construi esc pri ntr-un procedeu iterati v sugerat de metoda Gram- Lema 5.1: Gr adi enii f( x ) i f( x ) sunt o r t ogonali
Schmidt de ort ogonali zare di n al gebra li ni ar. ntre ei, adi c
(0) n (0) (0) (0) (k) (k+1)
Fi e x R u n punct ar bitrar i d = - f( x ) =b- Ax . ( f( x ) , f( x )) =0.
(0) (0) (1) (n-1)
Pr esupunem c d 0 ; n caz contrar x(0)e st e o sol ui e optim . n Teorema 5.5.Di r eciile d , d ,..., d c onstruite conf orm
al goritm ul lui Hest enes-Sti efel m odul de cut are al m inm i m u ului rel aiil or (5.33) ,(5. 35) sunt
(0)
m utual conj
(1)
ugat e (n-1)
n raport cu m atri cea
est e descris de ,
A iar gradi enii f( x ), f( x ),..., f( x ) sunt mut uali
(k+1) (k) (k)
x = x + kd , k=0, 1,..., ort ogonali.
unde k este ntotdeauna ales, astfel nct s minimizeze f n Demonstraie.V o m dem onstra teorem a pri ni n duci e.
(0) (1)
(k) Pentru k= 1 teorem aeste adevrat , d e oar ece vect orii d i d
direcia d , adic
d sunt conj ugai dat orit al egerii num rul ui 0 conf orm form ulei
( k ) = f ( x ( k ) + d ( k ) ) = k = (f ( x ( k +1) ), d ( k ) ) = 0 , (5.32) (0)
(5. 35). Di n lem a5. 1 avem c gradi enii n punctel e x i x s unt
(1)
d
281 282
(0) (1) (k-1) (i)
ort ogonali. Pr esupunem c pentru k 2 vect orii d , d , ..., d s unt nl ocui nd Ad n rel aia ant eri oar i i nndc o nt de (5. 37),
(0)
m utual conj ugai. Pr esupunem de asem enea c gradi enii f( x ), obi nem :
(1) (k-1) ( i +1)
f( x ),..., f( x ) sunt m utual ort ogonali, adi c (k ) (i ) ( k ) f ( x ) f ( x ( i ) )
(i) (j) (d , Ad ) = (f ( x ), )=0,
( f( x ) , f( x )) =0. ij, i, j = 0, 1,..., k- 1. i
(k) (k) (i)
Vom dem nostra c vect or ul d e st e conj ugat d i r eciil or adic vectorul d este conjugat vectorilor d , i=0,1,...,k-1.
(0) (1) (k-1) (k)
d , d ,..., d , iar gradi ent ul f( x ) est e ort ogonal celorl ali Teorema este demonstrat.
(0) (1) (k-1)
gradi eni f( x ), f( x ),..., f( x ). i nnd cont de lem a5. 1 i M ai obser vm , c condiia de al egere a l ui k-1p oat e fi
de presupunerea dem ai sus avem : scris (dem nostrai!; a se vedea exercii ul 12):
(k) (k-1) 2
( f( x ) , f( x )) =0, (f ( x ( k ) ), f ( x ( k ) )) f ( x ( k ) )
(k-1) (i)
(f(x ) ,f(x )) = 0. , i=0,1,...,k-2. k 1 = = . (5. 39)
(f ( x ( k 1) ), f ( x ( k 1) )) f ( x ( k 1) ) 2
Atunci n concl uzie, algoritmul lui Hestenes - Stiefel pentru
(k) (i) (k) (k-1) (i)
(f(x ) ,f(x )) =(f(x )+k-1Ad ,(f (x ))= minimizarea unei funcii ptratice (i rezolvarea unui sistem de
(k-1) (i) (k-1) (i) (k-1) (i) ecuaii liniare cu matricea pozitiv definit) este urmtorul:
=(f(x ), f(x )) + k-1(Ad , f(x )) = k-1(Ad , f(x )). (0) n (0)
Pasul .1 Se a l ege ar bitrar x R i s e det erm n
i f( x ).
(0) (0)
Din (5) urmeaz: Dac f( x ) = 0, at unci x e st e o sol ui e optim . STOP. nc a z
(i) (i) (i-1) (0)
f(x ) = -d + i-1d . (5.36) contrar se consi der d =- f( x(0)), k= 0 i se trece lap a s ul
Deci urm tor.
(k) (i) (k-1) (i) (i-1) Pasul 2.S e d et erm in l ungim ea pasul ui kd e-a l ungul
(f(x ) , f(x )) = k-1(Ad , -d + i-1d ) = 0, (5.37) (k) (k)
(i) direci ei d c ar e pl eacdi n x , ceea ce revi ne la m inm
i izarea n
adic gradienii f(x )) = 0. , i =0,1,...,k-1 sunt mutual ortogonali. raport cu param etrul scalar a funciei:
(k)
Consi derm a c m u vector ul d d ef i nit pri n (5), (7). Cu
m (
(k)
) =f( x +d ).
(k)
(k) (k-1)
( Ad , d ) = 0 , urm eaz Determinarea lui k poate fi efectuat prin formula (5.34) sau
(k) (i) (k) (i) (k) (k-1) (i)
( Ad , d) = (d , Ad ) =(-f( x ) +k-1d , Ad ) = printr-o procedur de aproximare a punctelor de extrem pentru
(k) (i)
= - ( f( x ), Ad ), i =0,1, 2,..., k- 2. funcii de o singur variabil.
e fapt ul c i = 0 at unci i nu
Subli ni m
(i)
m ai at unci cnd f( x) =0. Pasul .3 Se construi et e o apr oxim aie nou:
(k+1) (k) (k)
x =x + kd ,
Deci put m
e scri e rel aia: (k+1) (k+1) (k+1)
(i ) f ( x (i +1) ) + f ( x (i ) ) i se calculeaz f(x ) i f(x ). Dac f(x )=0, atunci
Ad = . (5. 38) (k+1)
i x*=x este o soluie optim . STOP. Altminteri se trece la pasul
urmtor.
283 284
(k+1)
Pasul 4. Se construi et e direci a d conf orm relaiei: 5.8.3. Minimizarea unei funcii strict convexe oarecare.
Algoritmul Fletcher-Reevs i versiunea Polak-Ribiere
(f ( x ( k +1) ), f ( x ( k +1) )) ( k )
d ( k +1) = f ( x ( k +1) ) + d ,
(f ( x ( k ) ), f ( x ( k ) )) M etoda l ui H e st enes - Sti efel prezent at np a r agr af ul
dup care se reia pasul 2 cu k=k+1. ant eri or (5.8. 2) poat e fi fol osit i p e nt r u m inim izarea funciil or
neptratice (funciil or oarecare). Est ee vi dent dac funci a f( x) nu
i nnd cont d e lem a5. 1 i teorem a 5. 5, rezult c, dac m ai est e ptratic, at unci nu m ai avem asi gurat conver gena ntr-
apr oxim aiai nii al x(0) est e dat , atunci acest al goritm det erm in
punct ul de m inm i x* al f unci ei ptratice consi derat e dup cal cul ul un num r finit de pai. De aceea, algoritm ul descris n paragr(0)af ul
5. 8. 2 se va rel ua ci clic dup iterai a cu nu m rul n, nl ocui nd x c u
a celm ult n direcii conjugat e. (n) (k)
Exemplu. S rel um funci a di n paragraf ul 5. 7: x , at t tim p ct | d || , unde > 0 est e er oarea adm is n
1 2 cut area punct ul ui de m inm i m u . Astfel obi nem o m etod nu m it
f ( x1 , x 2) = x12 + x1 x 2 +
x 2 3 x1 2 x 2 , metoda gradientului conjugat sau metoda lui Fletcher-Reevs:
2 (k+1) (k) (k) (0) (0)
x = x + kd , d =- f( x ),
Aceast funcie se poate scrie sub forma : (k) (k) (k-1)
f( x1,x2 ) = 1/2 (Ax,x) +(b,x), d - f( x ) +k-1d
= , k
1,
T (k) (k) (k) (k)
unde b = (-3 -2) , iar matricea A se definete prin : f(x + kd ) = min f(x + d ).
0
2 1
A = . .
1 1 M etodel e dedi r ecii conj ugat e se di sti ng pri n m doul n care
(0) T se defi nesc coefi ci enii ,k k 0 . n m etoda gradient ul ui conj ugat,
Lund aproximaia iniial x = (0 2) , vom obine succesiv:
ori gi nal , aa cum a fost pr opusd e Fletcher i Reevs aceti
1 1
d ( 0) = (1 0)T , 0 = , x (1) = ( 2)T , coefi ci eni se det erm in pri n:
2 2
(f ( x ( k ) ), f ( x ( k ) ))
1 1 , k I,
d (1) = ( )T , 1 = 2, x ( 2) = (1 1)T = x*. k 1 = (f ( x ( k 1) ), f ( x ( k 1) ))
4 2
M eni onm c al goritm lu consi derat m ai sus a fost el aborat 0 , k I,
n anul 1952d e ctre Hestenesi Stiefel. Pr ocedura de al egere a l ui unde I este o mulime de indici I={0,n,2n,3n,...}, adic algoritmul
kc onf orm rel aiei (5. 39) a fost propus de Fletcher i Reevs n se rennoiete peste fiecare n pai.
anul 1964. Ei au i extins acest al goritm n cazul funciil or s t ri ct O alt vari ant a m etodei gradi ent ului conj ugat, pr opus n
convexe oarecare. anul 1969 de Polak i Ribiere, const n determ inarea lui k-1
conf orm form ulei:
(f ( x ( k ) ), f ( x ( k ) ) f ( x ( k 1) ))
, k I,
k 1 = (f ( x ( k 1) ), f ( x ( k 1) ))
0 , k I.
285 286
n cazul funciil or ptrati ce acest e dou m oduri de 2 x1 x2 6 lg x1 3 = 0,
det erm inarea coefi ci enil or kc oi nci d (vezi 5. 8. 2). nc a z ul
15 x1 10 x2 60 lg x2 6 = 0.
m inmi izrii funciil or convexe oarecare al goritm ul Fletcher- Reevs
folosind metoda iteraiei, metoda Gauss-Seidel neliniar i
are pr opri eti de convergen m ai sl abe i est ed e pr eferat s se metoda Newton. S se compare rezultatele.
apli ce al goritm ul Polak - Ribiere.
Teorema 5.6.Da c funci a f( x) este convex, are deri vat e 3. Fi e ndepli nit e condiiile teorem ei 5. 1. S se arat ec
n
parial e de or di nul nt i c onti nue pe R, est e m rgi nit i e xi st er oarea est e defi nit de inegalitile:
const ant a L> 0, astfel nct a) estim area a pri ori:
|| f( x) - f(y) | L| x- y|,
n
x, yR, x ( k ) x* q k r ;
atunci n metoda gradientului conjugat (Fletcher-Reevs sau b) estim area a post eri ori:
Polak-Rebiere) avem: q
(k)
lim || f(x )|| = 0,
x ( k ) x* x ( k ) x ( k 1) .
k 1 q
(k)
iar orice punct de acumulare al irului {x } este un punct de Fi e funci a ptratic
minimum pentru funcia dat. 1
f ( x) = ( Ax, x) + (b, x) + c,
n condiiim ai restricti ve est e adevrat urm toarea 2
teorem . unde A este o matrice simetric de dimensiune nn;
Teorema 5.7.Fi e funcia f( x) ad m ti e deri vat e pari al e de x, b R n , x R. S se demonstreze c f ( x ) admite un punct de
n
or di nul al treil ea conti nue n R i fie f( x) o funci e tare convex. minimum atunci i numai atunci cnd matricea A este pozitiv
A*t unci m etoda gradi ent ul ui conj ugat conver ge ctre sol uia optim definit.
x i eroarea est e eval uat pri n:
5. S se determ ine punctel e st ai onare pentru funciile:
|| x(k+n) - x* | C| x(k)- x* |2 (5. 40) 1 2 2
pentru orice kI, kN, 0<C< , iar N suficient de mare. a) f ( x) = x1 x1 x2 + x2 x1 ;
n cazul cnd are l oc (5. 40), se spune c irul { x(k)}e st e 2
3 3 2
ptratic conver gent n np a i ctre x* . Pri n urm are, np a i n b) f ( x ) = x1 5 x1 x 2 + 2 x1 x 2 + x 2 .
m etoda gradient ul ui conj ugat apr oxim ativ sunt egali cu un pas n Verifi cai condiiile sufi cient e.
m etoda l ui Ne wt on- Raphson (vezi paragraf ul 5. 6). Consi derm pr obl m e am ni im izrii funci ei:
2
f ( x) = Ax b 2 ,
5.9. Exerciii unde A este o matrice de dimensiune mn, bRm. Utiliznd
{ }
1. S se reprezi nt e n R2sfera S= x : x x ( o ) r , l und n condiiile necesare i suficiente, s se arate c soluia x satisface
relaia: ATAx*=ATb.
calitat e de norm vect orial norm ele x 2
i x
.
S se rezol ve sist m
e ul de ecuaii nelini are:
287 288
Fi e funci a f ( x), x R n , c onvex i a m
d ite derivat e parial e S se dem nostreze c matri cel e H k , c onstruit e pri n pr ocedeel e
de or di nul nt i conti nue. S se dem onstreze c funci a de DFP , BFGSs a u Broydenc onver g ntr-un nu m r fi nit de
o si ngur variabil (1)
pai n cazul funciil or ptratice ctre A .
( ) = f ( x + d ) , S se dem onstreze c n m etoda Hestenes - Stiefele s te
n
unde x ,d R , vectori fixai, este convex i difereniabil. adevrat form ula (vezi 5. 8. 2):
S se arate c n m etoda celei m ai rapi de descreteri k 1 =
( ( ) ( ))
f x ( k ) , f x ( k )
d ( k +1) d ( ) , a d i c gradi enii n
k
dou punct e ( ( ) ( ))
f x (k 1) , f x (k 1)
.
289 290
m 1 m 1
4. xk +1 = xk + m 1 .
m mxk
RSPUNSURI, INDICAII 5. a) r 0.380 .
b) r 0.230 .
6. 4 p 3 + 27q 2 = 0, p 0 .
Capitolul I 7. xk +1 = xk + xk (1 axk ) = xk (2 axk ), k = 1,2,K .
1 1
2. a) ( x ) = 10 1 , ( y ) = 10 1 , ( x y ) = 10 1 , ( x y ) = 1
2 2 Capitolul III
3
(o er oare relati v de 0. 01 % n dat e duce la o eroare rel ati vd e 1. A =I.
100% n rezult at!). 2. ( )
( AB ) B 1 A1 = ABB 1 A1 = AIA1 = AA1 = I ;
b) ( x ) = 0.0001, ( y ) = 0, ( x y ) = 0.6
(B A )( AB ) = B A AB = B IB = B B = I ;
1 1 1 1 1 1
4.
1
( x ) = 3 (a ) + (b ) + 2 (c ) 0.009 = 0.9%;
(AA ) = (A ) A = I sau (A ) = (A ) .
1 T 1 T T 1 T T 1
2 2
Ax
( x ) = 12.4 0.009 0.12; 10. = = 1.
2
x 2
x = 12.4 0.12.
5. Avem : 11. u = (1 2 ) , v = (1 3)T .
T
291 292
21. 1 = 6, 2 = 3, 3 = 2; Rezult
x p = (2,1,1) , x p = ( 1,1,1) x p = (0,1,1) .
(1) T (2 ) T (3 ) T f ( x) = 2 AT ( Ax b), 2 f ( x) = 2 AT A
Dar
22. 1 = 2 + 2 , 2 = 2, 3 = 2 2 . 2
( 2 f ( x)v, v) = 2( AT Av, v) = 2( Av, Av) = 2 Av 2 0, v R n ,
( )
2 3. Di n ecuai a AT Ax* b = 0 r ezult c pent ru ori ce vect or
adi c m atricea Hesse este poziti v sem idefi nit i d eci funci a f(x)
n
x R avem est e convex.
( )
xT AT Ax* b = 0 sau ( Ax ) Ax* b = 0.
T
( ) 7. g (x + (1 ) y ) = max fi (x + (1 ) y )
1 i m
Rezult c r Im( A) .
max [ f i ( x ) + (1 ) f i ( y )]
25. P 2 = A AT A ( )
1
(
AT A AT A ) A = A(A A) A = P;
1 T T 1 T 1 i m
max f i ( x ) + (1 ) max f i ( y ) = g ( x ) + (1 ) g ( y ).
( ) (A A) = A (A A) A = A(A A) A
1 T 1
T T T T T T T T T 1 T 1 i m 1 i m
P = A A = P.
10. x1* = 2, x3* , f min = 26.
Capitolul IV 11. Pentrum atricea
1. Fi e 1 2
z , z Z . R ezult c 1 2 1
z , z X i z , z Y . 2 1 3 1 0
A =
Consi derm p u n ct ul z ( ) = z1 + (1 ) z 2 ,0 1. 2 1 0 1
Deoarece m ulim ile X i s u nt convexe, avem
Y dac al egem
z ( ) X i z ( ) Y p e nt r u ori ce ,0 1. A c e ast a 1 0 1 3
nseam n c i z ( ) Z . B = i N =
0 1 2 1
2. Fi e x u n vrf al tronsonul ui Tdat de sist m
e ul Ax = b, u n de
obi nem sistem ul expli cit
A e s t e o m tarice n n , nesingul ar, i fi e y, z T dou
x3 = 4 + x1 + 3 x2
punct e ar bitrare. Dac x = y + (1 ) z ,0 < < 1, r e z ult
x4 = 3 + 2 x1 + x2
b = Ax = Ay + (1 ) Az < b + (1 )b = b, contradi cie.
0 0 6 12 12 O sol ui e de baz est e x1 = 0, x2 = 0, x3 = 4, x4 = 3, care nu est e
3. x1 = , x 2 = , x3 = , x 4 = , x 5 = .
0 9 9 6 0 ad
m isibil, deoarece nu se verific condiiile de nenegati vitate.
6. Im ediat se verifi c c ( Ax, y ) = ( x, A y ), x R , y R . Pri n T n m Dac vom alege
urm are 1 3 1 0
B = i N =
1 2 1 0 1
f ( x + y ) + f ( x) + 2( AT ( Ax b), y ) + (2 AT Ay, y ), x, y R n .
2
se obi ne expli cit
293 294
x B = B 1b B 1 Nx N x
= max{ x1 , x2 } - ptrat ul din fi g. 2.
Capitolul V De unde
2
Pentru x = x12 + x22 avem cercul di n fi g. 1, iar pentru (f ( x ( k ) ), d ( k ) ) d (k )
2 k = = .
( Ad ( k ) , d ( k ) ) ( Ad ( k ) , d ( k ) )
x2 10. Indi caie. Cal cul ai v al oarea k ,u t i li znd pr ocedeul di n
x2
exerci iul 9.
12. Ut iliznd form ulele (5. 35) i (5.38) di n paragraf ul 5. 8. 2., vo m
obi ne
r (f ( x ( k ) ), Ad ( k ) ) (f ( x ( k ) ), f ( x ( k ) ) f ( x ( k 1) ))
r k 1 = ( k 1) = =
x0 x0 (d , Ad ( k 1) ) (d ( k 1) , f ( x ( k ) ) f ( x ( k 1) ))
x1 (f ( x ( k ) ), f ( x ( k ) )) (f ( x ( k ) ), f ( x ( k ) ))
x1
= = .
(d ( k 1) , f ( x ( k 1) )) (f ( x ( k 1) ), f ( x ( k 1) ))
14. a) x*=( 1 1) T. b) x*= (1 1 1 1) T. c) x*=( 0 0 0 0) T.
Fig. 1 Fig. 2
295 296
15. abac I. Ch. , Cocrl an P., St nil O. , Topal A. M atem atici
speci al e. Vol.II. Edit ura di dacti c i pedagogi c, Bucureti,
BIBLIOGRAFIE 1983. -224 p.
16. To
m aM ., Odgescu I. M etode num erice i subr uti ne. Editur a
1. Br ti anu C. , Bost an V., Coj oci a L., Ne gr eanu G. M etode Tehni c, Bucureti, 1980. 215 p.
num erice. Edit ura tehni c, Bucureti, 1996. -212 p. 17. http://www.amath.unc.edu/Faculty/mitran/papers/metodenumerice.pdf
2. Bucur C. M ., PopeeaC. A. , Si m ion Gh. Gh. M atem ati ci 18. . . . .: ,
speci al e. Calcul nu m eric. Edit urad i dacti c i pedagogi c, 1986. 744 p.
Bucur eti, 1983. -232 p. 19. ., . .
3. Buzur ni uc t., M oraruV. Inf orm ati ca: El m e ent e de calcul . .: , 1982. -583. (traducere di n lim ab
num eric. Edit ura Evri ca, Chi i nu, 2000. -114p. engl ez Bazaraa M.S., Shetty C.M. Nonlinear programming.
4. Di nu M ., Li nga Gh. Al goritm i i tem e speci ale de anali z Theory and algorithms. New York, 1979) .
num eric. Edit uraM atrixRo m , Bucureti, 1999. -246p. 20. . . , . . , .
5. Ior ga V. , Jora B. , Ni col escu Cr., Lopt an I., Ft u I. Pr ogram are . .: , 1987. 600 p.
num eric. Edit ura Teora, Bucureti, 1996. -256p. 21. . .
6. Lari onescu D. M etode nu m erice. Edit ura tehnic, Bucureti, . . :, 1980.-518 .
1989. -224. 22. . .
7. M arinescu Gh., Ri zzoli I . , PopescuI . , t efan C. Pr obl m e e de . .: , 1977. 303 p.
anali z num eri c rezol vat e cu cal culat or ul. Editura Academ iei 23. . . . .: , 1982. 254 p.
Republi cii Ro m nia, Bucureti, 1987. 264 p. 24. ., . , . .
8. M oraru V. N um ere cu virgul m obil. M ateri al di dactic. . : , 1985. -509. ( t raducere di n lim ba engl ez Gill Ph.,
U. T.M ., Chii nu, 1998. 28p. Murraz M., Wright M. Practical optimization. Academic
9. M oraru V. M etode nu m erice na l gebr a lini ar. Ci cl ud e Press,1981) .
prel egeri. U.T.M ., Chi i nu, 1995. 80 p. 25. ., .
10. M oraru V. , P o pescu A. Rezol varea nu m eric a ecuaiil or . : ,
neli ni are i a pr obl m
e elor de optim zi are necondii onat . Ci cl u 1988. -440. ( t r aducered i n lim ab engl ez Dennis J.E.,
de prel egeri. U. T.M ., Chii nu, 1997. 88p. Schnabel R.B. Numerical methods for un constrained
11. M oraruV., Pr achi I.,Ber zan R. Introducere n optim izarea optimization and nonlinear equations. Prentice-Hall, 1983) .
li ni ar. Editura A. S. E.M ., 1997.-110 p. 26. . . .
12. Secrieru G. V., Secrieru I. V., Analiz numeric. Editura .: , 1984. 190 p.
tiina, Chiinu, 1985. 206 p. 27. . . . .: , 1978.
13. S
m adici C. Cer cet are operai onal . Uni versitat ea Al. I. Cuza, 512 p.
Iai, Facult atea dem atem atic, 1985. - 654p. 28. . . .: , 1978. 280 p.
14. Strave P. Mat m e atici speci al e cu aplicaii n econom ie. Scrisul (traducere di n lim ba engl ez Lankaster P. Theory of matrices.
rom nesc, Crai ova, 1982.- 547 p. Academic Press, New-York-London, 1969)
297 298
29. ., . 38. . .
. .: , 1986. 232 p. . .: , 1990 255 p. ( t raducere di n
(traducere di n lim ba engl ez Lawson Ch., Hanson R. Solving engl ez Shoup T. E. Applied Numerical Methods for
least squares problems. Prentice Hall, 1974 ). Microcomputers, Prentice-Hall, 1984).
30. - . , . 39. . , . .
. .: , 1977. 587p. .: , 1986. - 448 p. (traducere di n lim ba engl ez
(traducere di n lim bae nl ez McCracken D., Dorn W. Hageman L., Young D. Applied iterative methods. Academic
Numerical Methods and Fortran Programming, 1965 ). Press, 1981) .
31. . . 40. ., . . .: , 1989. -
. .: , 1984. - 224. ( t r aducered i n 655 p. (traducere di n lim ba engl ez Horn R., Johnson Ch.
lim ba engl ez Murtagh B. Advanced linear programming: Matrix analysis. Cambridje University Press, 1986
).
computation and practice, 1981) .
32. .
. . .: , 1983. 384 p.
(traducere di n lim bae n gl ez Parlett B. The symmetric
eigenvalue problem, 1980 ).
33. . . . .: , 1983. -
384p.
34. .
. .: ,1 984. 264 p. (traducere di n lim ba
engl ez Rice John. Matrix computations and mathematical
software, 1981) .
35. . . .: ,
1980. 454 p. (traducere di n lim ab engl ez Strang Gilbert.
Linear algebra and its applications,Academic Press, 1976 ).
36. .
. .: , 1991. -360. (traducere di n lim ba
engl ez Schrijver A. Theory of linear and integer programming
1990 ).
37. . , ., .
. .: , 1980. - 279
p. (traduceredi n lim ba engl ez Fosythe G., Malcolm M., Moler
C. Computer Methods for Mathematical Computations,
Prentice-Hall, 1982) .
299 300