Metode de optimizare

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Metode de optimizare"

Transcript

1 Metode de optimizare numerică Ion Necoară Departamentul de Automatică şi Ingineria Sistemelor Universitatea Politehnica din Bucureşti

2

3

4

5 Prefaţă Lucrarea de faţă este o sinteză, care tratează în mod concis, dar şi riguros din punct de vedere matematic, principalele metode numerice de rezolvare a problemelor de optimizare neliniară. Optimizarea este un proces de minimizare sau maximizare a unei funcţii obiectiv şi, în acelaşi timp, de satisfacere a unor constrângeri. Natura abundă de exemple unde un nivel optim este dorit şi în multe aplicaţii din inginerie, economie, biologie şi numeroase alte ramuri ale ştiinţei se caută regulatorul, portofoliul sau compoziţia optim(ă). Lucrarea este construită pe structura cursului de Tehnici de Optimizare, predat de autor la Facultatea de Automatică şi Calculatoare a Universităţii Politehnica din Bucureşti. Lucrarea se adresează studenţilor din facultăţile cu profil tehnic sau economic, dar în aceeaşi măsură şi celor de la programele de master şi doctorat cu tematici adiacente. Studenţii ce urmează acest curs necesită cunoştinţe de algebră liniară (teoria matricelor, concepte din teoria spaţiilor vectoriale) şi analiză matematică (noţiuni de funcţii diferenţiabile, convergenţa şirurilor). Sco- pul lucrării este prezentarea unei introduceri în metodele numerice de rezolvare a problemelor de optimizare care serveşte la pregătirea studenţilor pentru dezvoltarea şi adaptarea acestor metode la aplicaţii specifice ingineriei şi altor domenii. Tematica include elemente de optimizare continuă ce se concentrează în special peprogramarea neliniară. Înacest sens, structura lucrării este divizată în trei părţi majore: Partea I: Introducere - se prezintă formularea matematică a unei probleme generale de optimizare cu noţiunile asociate şi se introduc principalele concepte legate de convexitate (caracterizări şi proprietăţi ale mulţimilor şi funcţiilor convexe). Partea II: Optimizare fără constrângeri - se prezintă proprietăţile de bază ale soluţiilor şi metodelor numerice, condiţiile necesare şi suficiente de optimalitate pentru o soluţie în cazul problemelor convexe şi nonconvexe, analiza metodelor de căutare de-a lungul unei direcţii de descreştere (metoda gradient, Newton), reguli de selectare a mărimii pasului (condiţiile Wolfe, algoritmul de backtracking), aplicaţii în estimare şi metoda celor mai mici pătrate.

6 6 Partea III: Optimizare cu constrângeri - se prezintă condiţiile necesare şi suficiente de optimalitate pentru o soluţie în cazul problemelor convexe şi nonconvexe având constrângeri (condiţiile de tip Karush-Kuhn-Tucker). Se analizează metode bazate pe funcţii de penalitate şi barieră, metode de punct interior şi metode de programare pătratică secvenţială pentru probleme generale de optimizare cu constrângeri sub formă de egalităţi şi inegalităţi. În final, se prezintă formularea sub forma unei probleme de optimizare a unei probleme de control optimal cu orizont finit şi rezolvarea numerică cu metodele prezentate. Prin teoria şi exemplele expuse în această lucrare se urmăreşte familiarizarea studenţilor cu formularea corectă a unei probleme de optimizare, identificarea tipului unei probleme (convexă sau nonconvexă, cu sau fără constrângeri) şi rezolvarea numerică a unei probleme. Sunt descrişi principalii algoritmi numerici de optimizare (algoritmi de tip direcţie de descreştere, e.g. gradient sau Newton, de punct interior) pentru care se analizează convergenţa şi necesarul de calcul. Algoritmii prezentaţi sunt apoi testaţi pe aplicaţii practice, în particular din inginerie. Pe tot parcursul cărţii se prezintă multe exemple de aplicaţii şi exerciţii rezolvate, tratate amănunţit, pentru a face mai accesibilă înţelegerea teoriei şi a conceptelor introduse, şi pentru a ajuta studentul să înţeleagă subtilităţile inerente unei discipline avându-şi originea în matematica aplicată. Deşi lucrarea de faţă adresează technici şi algoritmi de optimizare standard, regăsiţi în majoritatea literaturii de specialitate [2, 9, 11, 13], amintenţionat deasemenea ca ea să reflecte punctul de vedere modernîn acest domeniu. În acest sens, unul din principalele aporturi îl reprezintă conexiunea dintre caracterul analitic al unei probleme de optimizare, exprimat prin condiţiile de optimalitate, şi analiza algoritmilor numerici de optimizare folosiţi pentru rezolvarea problemei. Mai mult, condiţiile de optimalitate şi algoritmii numerici corespunzători problemelor de optimizare constrânse sunt prezentate ca o generalizare a condiţiilor de optimalitate şi respectiv a algoritmilor numerici dezvoltaţi pentru probleme de optimizare fără constrângeri. Această abordare oferă lucrării o structură simplă care facilitează înţelegerea teoriei prezentate dar şi posibilitatea dezvoltării de noi rezultate în acest domeniu. Ca o concluzie, lucrarea de faţă reprezintă un mixt reuşit între rigurozitatea matematică şi practicalitatea inginerească ce conduce la

7 insuşirea cu uşurinţă şi manipularea eficace a unor tehnici de optimizare neliniară moderne. De aceea, considerăm că apariţia aceastei cărţi este extrem de utilă, în primul rând studenţilor, datorită conţinutului şi stilului adecvat acestei audienţe. Autorul le este recunoscător referenţilor ştiinţifici prof. univ. dr. C. Oară şi prof. univ. dr. B. Dumitrescu pentru sugestiile şi observaţiile extrem de valoroase pe care le-au oferit pe parcursul conceperii acestui material. Mulţumiri sunt aduse şi studenţilor care de-a lungul timpului au contribuit cu observaţii pertinente la îmbunătăţirea expunerii acestei lucrări. 7 Ion Necoară mai 2013

8 8 Listă de notaţii Vectori R mulţimea numerelor reale; R = R { } R n spaţiul Euclidian n dimensional al vectorilor coloană x cu n componente reale x i R pentru orice i = 1,...,n Span(S) subspaţiul liniar generat de vectorii din mulţimea S R n e i, cu i = 1,...,n, baza standard a lui R n şi e vectorul din R n cu toate intrările 1, anume e = n i=1 e i x,y = x T y = n i=1 x iy i produsul scalar a doi vectori x,y R n x = x,y 1/2 = ( n i=1 x2 i )1/2 norma Euclidiană a vectorului x R n x p = ( n i=1 x i p ) 1/p norma p a vectorului x R n, unde p 1; în calcule se utilizează în special normele x 1 = n i=1 x i, x 2 = x şi x = max i=1,...,n x i oricare ar fi şi există Matrice R m n spaţiul Euclidian al matricelor cu m linii şi n coloane cu elemente a ij R pentru orice i = 1,...,m şi j = 1,...,n S n spaţiul matricelor simetrice cu n linii şi coloane A 0 (A 0) matrice pozitiv (semi)definită S n + spaţiul matricelor pozitiv semidefinite I n matricea identitate de ordinul n a ij sau A ij elementul matricei A situat în linia i şi coloana j A T transpusa matricei A, iar A 1 /A + inversa/pseudoinversa matricei A; A T = (A 1 ) T = (A T ) 1 Tr(A) urma matricei pătrate A, anume suma elementelor de pe diagonala principală

9 9 det(a) determinantul matricei pătrate A λ i (A) valorile proprii ale unei matrice simetrice de dimensiune n ordonate crescător; λ min = λ 1 şi λ max = λ n σ i (A) valorile singulare ale matricei A ordonate crescător rang(a) rangul matricei A (numărul valorilor singulare nenule) kern(a) nucleul matricei A A,B = Tr(A T B) produsul scalar a două matrice reale A F = A,A 1/2 norma Frobenius; avem relaţia A F = ( r σi 2)1/2, unde r este rangul lui A i=1 Funcţii C k clasa funcţiilor diferenţiabile de k ori, cu derivata de ordinul k continuă funcţia scalară f : R R are domeniul efectiv domf = {x R n : f(x) < } inf x X f(x) = inf{f(x) : x X} infimul funcţiei f peste mulţimea X; când infimul se atinge, atunci folosim min în loc de inf f(x) R n gradientul funcţiei f, anume ( f(x)) i = f x i (x) pentru orice i = 1,...,n matricea simetrică 2 f(x) S n este Hessiana funcţiei f, anume ( 2 f(x)) ij = 2 f x i x j (x) pentru orice i,j = 1,...,n h(x) R p n Jacobianul funcţiei vectoriale h : R n R p cu h = [h 1...h p ] T, anume ( h(x)) ij = h i x j (x) pentru orice i = 1,...,p şi j = 1,...,n L(x,λ,µ) Lagrangianul şi x L(x,λ,µ) = L (x,λ,µ) derivata x parţială în raport cu x q(λ, µ) funcţia duală

10 10 Prescurtări e.g. de exemplu (exempli gratia) i.e. adică (id est) NLP programare neliniară (NonLinear Programming) UNLP programare neliniară fără constrângeri (Unconstrained NonLinear Programming) QP programare pătratică (Quadratic Programming) LP programare liniară (Linear Programming) CP programare convexă (Convex Programming) KKT Karush-Kuhn-Tucker DVS descompunerea valorilor singulare

11 Cuprins Prefaţă I Introducere 15 1 Teorie convexă Teoria mulţimilor convexe Mulţimi convexe Conuri Operaţii ce conservă convexitatea mulţimilor Teoria funcţiilor convexe Funcţii convexe Condiţii de ordinul I pentru funcţii convexe Condiţii de ordinul II pentru funcţii convexe Operaţii ce conservă convexitatea funcţiilor Concepte fundamentale din teoria optimizării Evoluţia teoriei optimizării Caracteristicile unei probleme de optimizare Tipuri de probleme de optimizare Programare neliniară (NLP) Programare liniară (LP) Programare pătratică (QP) Optimizare convexă (CP) Probleme de optimizare neconstrânsă (UNLP) Programare mixtă cu întregi (MIP) II Optimizare fără constrângeri 51 3 Metode de optimizare unidimensională 53

12 12 Cuprins 3.1 Metoda forward-backward pentru funcţii unimodale Metode de căutare Metoda secţiunii de aur Metoda lui Fibonacci Metode de interpolare Metode de interpolare pătratică Metode de interpolare cubică Condiţii de optimalitate pentru (UNLP) Condiţii de ordinul I pentru (UNLP) Condiţii de ordinul II pentru (UNLP) Condiţii de optimalitate pentru probleme convexe Analiza perturbaţiilor Convergenţa metodelor de descreştere Metode numerice de optimizare Convergenţa metodelor numerice Metode de descreştere Strategii de alegere a lungimii pasului Convergenţa metodelor de descreştere Metode de ordinul I pentru (UNLP) Metoda gradient Convergenţa globală a metodei gradient Rata de convergenţă globală a metodei gradient Rata de convergenţă locală a metodei gradient Metoda direcţiilor conjugate Metoda direcţiilor conjugate pentru QP Metoda gradienţilor conjugaţi pentru QP Metoda gradienţilor conjugaţi pentru UNLP Metode de ordinul II pentru (UNLP) Metoda Newton Rata de convergenţă locală a metodei Newton Convergenţa globală a metodei Newton Metode quasi-newton Actualizări de rang unu Actualizări de rang doi Convergenţa locală a metodelor quasi-newton.. 121

13 Cuprins 13 8 Probleme de estimare şi fitting Problema celor mai mici pătrate: cazul liniar Probleme CMMP liniare prost condiţionate Formularea statistică a problemelor CMMP liniare Problema celor mai mici pătrate: cazul neliniar Metoda Gauss-Newton (GN) Metoda Levenberg-Marquardt Aplicaţie: identificarea unui sistem Hammerstein III Optimizare cu constrângeri Teoria dualităţii Funcţia Lagrange Problema duală Programare liniară (LP) Condiţii de optimalitate pentru (NLP) Condiţii de ordinul I pentru (NLP) având constrângeri de egalitate Condiţii de ordinul II pentru (NLP) având constrângeri de egalitate Condiţii de ordinul I pentru (NLP) generale Condiţii de ordinul II pentru (NLP) generale Metode de ordinul I şi II pentru (NLP) având constrângeri convexe Metode de direcţii de descreştere Metoda gradient condiţional Metoda gradient proiectat Metoda Newton proiectat Metode de optimizare pentru (NLP) având constrângeri de egalitate Metode pentru QP cu constrângeri de egalitate Metode Lagrange Metoda Lagrange de ordinul I Metoda Lagrange-Newton Metoda Newton pentru probleme convexe având constrângeri de egalitate

14 14 Cuprins 13 Metode de optimizare pentru (NLP) generale Metoda mulţimilor active Metoda mulţimilor active pentru (QP) Metoda pătratică secvenţială Metode de penalitate şi barieră Metode de penalitate Metode de barieră Metode de punct interior Metode de punct interior pentru probleme convexe Metode de punct interior pentru probleme neconvexe Studii de caz din inginerie Control optimal liniar Formularea (QP) rară fără eliminarea stărilor Formularea (QP) densă cu eliminarea stărilor Control optimal pentru urmărirea traiectoriei cu un robot E-Puck Control optimal pentru pendulul invers Control optimal neliniar Formularea (NLP) rară şi densă Control optimal aplicat unei instalaţii cu patru rezervoare Stabilitatea sistemelor dinamice Calcularea valorilor proprii ale unei matrice Problema Google (ierarhizarea paginilor web) Învăţare automată şi clasificare A Noţiuni de algebră liniară şi analiză matematică 265 A.1 Noţiuni de analiză matriceală A.2 Noţiuni de analiză matematică Bibliografie 275

15 Partea I Introducere

16

17 Capitolul 1 Teorie convexă În acest capitol vom prezenta noţiunile de bază din teoria mulţimilor convexe şi a funcţiilor convexe. Aceste noţiuni vor fi utilizate deseori în capitolele următoare. Prezentarea realizată în acest capitol este foarte concisă, dar în acelaşi timp suficientă pentru scopul declarat al lucrării. O detaliere a teoriei convexităţii poate fi găsită în cartea clasică a lui R.T. Rockafellar, Convex Theory [14]. Definim mai întâi conceptele algebrice de bază, cum ar fi mulţimile convexe, hiperplane, conuri, inegalităţi de matrice, dar şi concepte topologice cu privire la conservarea convexităţii sau separarea prin hiperplane. Apoi continuăm cu teoria funcţiilor convexe şi în special cu acele condiţii de caracterizare a funcţiilor convexe. În cadrul acestei lucrări fixăm simpla convenţie de a considera vectorii x R n vectori coloană, adică x = [x 1...x n ] T R n. În spaţiul Euclidian R n produsul scalar este definit după cum urmează: x,y = x T y = n x i y i. i=1 Unde nu se specifică, norma considerată pe spaţiul Euclidian R n este norma Euclidiană standard (adică norma indusă de acest produs scalar): x = x,x = n x 2 i. Conceptele standard din algebra liniară şi analiza matematică folosite sunt prezentate în Apendice. i=1

18 18 Capitolul 1. Teorie convexă 1.1 Teoria mulţimilor convexe Mulţimi convexe Mulţimile convexe au un rol important în teoria optimizării. Începem acest capitol cu prezentarea noţiunilor fundamentale din teoria mulţimilor convexe. Definiţia O mulţime S R n este afină dacă pentru oricare doi vectori x 1,x 2 S şi orice scalar α R avem αx 1 +(1 α)x 2 S (i.e. dreapta generată de oricare două puncte din S este inclusă în S) α=1.5 x1(0.5,4) α= α=0.5 α=0 x2(5,3) α= Figura 1.1: Mulţime afină (dreapta) generată de două puncte x 1 = [0.5 4] T şi x 2 = [5 3] T. De exemplu, dreapta generată de două puncte este mulţime afină (vezi Fig. 1.1). MulţimeasoluţiilorunuisistemliniarAx = b, undea R m n şi b R m, este mulţime afină, i.e. mulţimea {x R n : Ax = b} este afină. O combinaţie afină de p vectori {x 1,...,x p } R n este definită astfel: p α i x i, unde i=1 p α i = 1,α i R. Acoperirea afină a mulţimii S R n, notată Aff(S), reprezintă mulţimea ce conţine toate combinaţiile afine finite posibile ale punctelor din S: { } Aff(S) = α i = 1, α i R. i=1 i I, I finităα i x i : x i S, i I

19 1.1. Teoria mulţimilor convexe 19 Cu alte cuvinte, Aff(S) este mulţimea afină cea mai mică ce o conţine pe mulţimea dată S. Definiţia Mulţimea S R n se numeşte convexă dacă pentru oricare două puncte x 1,x 2 S şi un scalar α [0, 1] avem αx 1 + (1 α)x 2 S (i.e. segmentul generat de oricare două puncte din S este inclus în S, vezi Fig. 1.2). x 1 x 2 x 1 x 2 Figura 1.2: Exemplu de mulţime convexă (stânga) şi mulţime neconvexă (dreapta). Rezultă imediat că orice mulţime afină este mulţime convexă. Mai departe, o combinaţie convexă de p vectori {x 1,,x p } R n este definită de expresia: p α i x i, unde i=1 p α i = 1, α i 0. i=1 Acoperirea convexă a mulţimii S, notată Conv(S), reprezintă mulţimea ce conţine toate combinaţiile convexe finite posibile ale punctelor mulţimii S, i.e. mulţimea: { } Conv(S) = α i = 1,α i 0. i I,I finitα i x i : x i S, i I Se observă că acoperirea convexă a unei mulţimi este cea mai mică mulţime convexă ce conţine mulţimea dată (vezi Fig. 1.3). Rezultă că dacă S este convexă, atunci acoperirea convexă a lui S coincide cu S. Teorema (Teorema lui Caratheodory) Dacă S R n este o mulţime convexă, atunci orice element din S este o combinaţie convexă de cel mult n+1 vectori din S.

20 20 Capitolul 1. Teorie convexă Figura 1.3: Acoperirea convexă a unei mulţimi neconvexe S. Un hiperplan este o mulţime convexă definită de relaţia (vezi Fig. 1.4): { x R n : a T x = b } a 0,a R n,b R. Un semiplan este mulţimea convexă definită de relaţia (vezi Fig. 1.4): { x R n : a T x b } { sau x R n : a T x b }, în care a 0,a R n şi b R. a x 0 a T x b a T x b a T x=b Figura 1.4: Hiperplanul definit de a T x = b şi semiplanele corespunzătoare. Un poliedru este mulţimea convexă definită de un număr p de hiperplane şi/sau un număr m de semiplane: { x R n : a T i x = b i i = 1,...,p, c T j x d j j = 1,...,m }, sau într-o formă compactă {x R n : Ax = b, Cx d}.

21 1.1. Teoria mulţimilor convexe 21 O altă reprezentare a poliedrului poate fi dată de vârfurile (punctele de extrem) sale: { n1 } n 2 n 1 α i v i + β j r j : α i = 1, α i 0,β j 0 i,j, i=1 j=1 i=1 unde v i se numesc vârfuri (numite şi noduri), iar r j sunt raze afine. Un politop reprezintă un poliedru mărginit şi în acest caz el este definit numai de vârfuri (vezi Fig. 1.5). a 5 a 1 a 4 a 2 a 3 Figura 1.5: Poliedru nemărginit generat de trei vârfuri şi două raze afine (stânga); poliedru mărginit (politop) format din intersecţia a cinci semiplane (dreapta). O bilă cu centrul în punctul x 0 R n şi raza r > 0 definită de norma Euclidiană este o mulţime convexă dată de relaţia: B(x 0,r) = {x R n : x x 0 r} sau, în mod echivalent: B(x 0,r) = {x R n : x = x 0 +ru, u 1}. Un elipsoid este mulţimea convexă definită astfel: { x R n : (x x 0 ) T Q 1 (x x 0 ) 1} = {x 0 +Lu : u 1 }, unde Q este o matrice simetrică pozitiv definită (notaţie Q 0) şi Q = L T L, pentru o anumită matrice L.

22 22 Capitolul 1. Teorie convexă Conuri Definiţia O mulţime K se numeşte con dacă pentru orice x K şi α R + avem αx K. Conul K se numeşte con convex dacă în plus K este mulţime convexă. Combinaţia conică de p vectori {x 1,,x p } R n este definită în felul următor: p α i x i, unde α i 0 i. i=1 Acoperirea conică a unei mulţimi S, notată Con(S), reprezintă mulţimea ce contine toate combinaţiile conice finite posibile cu elemente din S: { } Con(S) = α i x i : x i S,α i 0. i I,I finit Se observă că acoperirea conică a unei mulţimi reprezintă cel mai mic con ce conţine mulţimea dată (vezi Fig. 1.6). Pentru un con K Figura 1.6: Acoperirea conică generată de doi vectori x 1 şi x 2 (stânga); acoperirea conică generată de mulţimea S (dreapta). dintr-un spaţiu Euclidian înzestrat cu un produs scalar,, conul dual corespunzător, notat K, este definit astfel: K = {y : x,y 0 x K}. Observăm că conul dual este întotdeauna o mulţime închisă. Folosind relaţia x,y = x y cos (x,y), ajungem la concluzia că unghiul

23 1.1. Teoria mulţimilor convexe 23 dintre un vector ce aparţine conului K şi unul ce aparţine conului K este mai mic decât π 2. Dacă conul K satisface condiţia K = K, atunci mulţimea K se numeşte con auto-dual. Exemplul Prezentăm în cele ce urmează câteva exemple de conuri: 1. Mulţimea R n este un con, iar conul său dual este (R n ) = {0}. 2. R n + = {x Rn : x 0} se numeşte conul orthant şi este auto-dual în raport cu produsul scalar uzual x,y = x T y, i.e. (R n +) = R n L n = { [x T t] T R n+1 : x t } se numeşte conul Lorentz sau conul de îngheţată şi este, de asemenea, auto-dual în raport cu produsul scalar [x T t] T,[y T v] T = x T y +tv, i.e. (L n ) = L n (vezi Fig. 1.7). 4. S n + = {X S n : X 0} reprezintă conul semidefinit şi este auto-dual în raport cu produsul scalar X,Y = Tr(XY), i.e. (S n + ) = S n +. Figura 1.7: Conul Lorentz pentru n = 2.

24 24 Capitolul 1. Teorie convexă Operaţii ce conservă convexitatea mulţimilor Enumerăm câteva operaţii pe mulţimi care conservă proprietatea de convexitate: 1. Intersecţia de mulţimi convexe este o mulţime convexă, i.e. dacă familia de mulţimi {S i } i I este convexă, atunci şi i I S i este convexă. 2. Suma a două mulţimi convexe S 1 şi S 2 este de asemenea convexă, i.e. mulţimea S 1 +S 2 = {x+y : x S 1,y S 2 } este convexă. Mai mult, mulţimea αs = {αx : x S} este convexă dacă mulţimea S este convexă şi α R. 3. Translaţia unei mulţimi convexe S este de asemenea convexă, i.e. fie o funcţie afină f(x) = Ax+b, atunci imaginea lui S prin f, f(s) = {f(x) : x S}, este convexă. Similar, preimaginea: f 1 (S) = {x : f(x) S} este şi ea convexă. 4. Definim o funcţie p: R n+1 R n, cu dom p = R n R ++ prin p(z, t) = z/t, numită şi funcţie de perspectivă. Această funcţie scalează (normalizează) vectorii astfel încât ultima componentă să fie 1, care apoi este eliminată (funcţia returnează doar primele n componente din vectorul normalizat). Dacă C dom p este o mulţime convexă, atunci imaginea sa prin p, p(c) = {p(x) : x C} este o mulţime convexă. 5. O funcţie liniar-fracţională este formată prin compunerea funcţiei perspectivă cu o funcţie afină. Fie o funcţie afină g: R n R m+1, anume: g(x) = [ ] A c T x+ [ ] b d unde A R m n, b R m, c R n şi d R. Funcţia f: R n R m dată de f = p g, i.e. f(x) = (Ax+b)/(c T x+d), dom f = { x R n : c T x+d > 0 } se numeşte funcţie liniar-fracţională. Astfel, dacă mulţimea C este convexă şi aparţine domeniului lui f, i.e. c T x+d > 0 pentru x C, atunci imaginea sa prin f, f(c), este convexă.

25 1.1. Teoria mulţimilor convexe 25 Inegalităţi Matriceale Liniare (Linear Matrix Inequalities (LMI)): Se poate arăta uşor că mulţimea matricelor pozitiv semidefinite (notaţie S+ n ) este convexă. Considerăm o funcţie G : Rm S+, n G(x) = A 0 + m i=1 x ia i, unde x i sunt componentele unui vector x R m, iar matricele A 0,,A m S n sunt simetrice. Expresia G(x) 0 se numeşte inegalitate matriceala liniară (LMI). Aceasta defineşte o mulţi- me convexă {x R m : G(x) 0}, cu rolul de preimagine a lui S+ n prin G(x). Stabilitatea sistemelor: Fie un sistem liniar discret invariant în timp z t+1 = Az t, unde A R nz nz şi z t reprezintă starea sistemului la pasul t. Acest sistem este asimptotic stabil (adică lim z t = 0 pentru orice stare iniţială t z 0 R n ) dacă şi numai dacă există o funcţie Lyapunov pătratică V(z) = z T Pz astfel încât: V(z) > 0 z R n şi V(z t+1 ) V(z t ) < 0 t 0. Aceste inegalităţi de matrice pot fi exprimate ca (LMI): A T PA P 0 şi P 0. În mod echivalent, sistemul este asimptotic stabil dacă max i=1,...,n λ i(a) < 1 (i.e. toate valorile proprii ale matricei A sunt incluse strict în cercul unitate). În reglarea automată (control) întâlnim adesea şi inegalităţi matriceale cu necunoscutele P şi R, de forma: P A T R 1 A 0, P 0 ce pot fi scrise (prin folosirea complementului Schur), în mod echivalent ca un LMI: [ ] P A T 0. A R Teorema (Teorema de separare cu hiperplane) Fie S 1 şi S 2 două mulţimi convexe astfel încâts 1 S 2 =. Atunci, există un hiperplan ce separă aceste mulţimi, i.e. există a 0,a R n şi b R astfel încât a T x b oricare ar fi x S 1 şi a T x b oricare ar fi x S 2.

26 26 Capitolul 1. Teorie convexă Figura 1.8: Teorema de separare cu hiperplane. În Fig. 1.8 putem observa că pentru exemplul din dreapta mulţimea S 1 nu poate satisface teorema de separare cu hiperplane deoarece nu este convexă. Teorema (Teorema de suport cu un hiperplan) Fie o mulţime convexă S şi x 0 bd(s) = cl(s) int(s). Atunci, există un hiperplan de suport pentru S în punctul x 0, adică există a 0,a R n astfel încât a T x a T x 0 oricare ar fi x S. 1.2 Teoria funcţiilor convexe Funcţii convexe În cadrul acestei lucrări ne vom concentra atenţia preponderent asupra conceptelor, relaţiilor şi rezultatelor ce implică funcţii al căror codomeniu este inclus în R = R {+ }. Pentru început, o observaţie importantă pentru rigurozitatea rezultatelor ce urmează este aceea că domeniul efectiv al unei funcţii scalare f se poate extinde (prin echivalenţă) la întreg spaţiul R n prinatribuirea valorii + funcţiei în toatepunctele din afara domeniului său. În cele ce urmează considerăm că toate funcţiile sunt extinse implicit. O funcţie scalară f : R n R are domeniul efectiv descris de mulţimea: domf = {x R n : f(x) < + }.

27 1.2. Teoria funcţiilor convexe 27 Definiţia Funcţia f se numeşte convexă dacă domeniul său efectiv domf este o mulţime convexă şi următoarea relaţie are loc: f(αx 1 +(1 α)x 2 ) αf(x 1 )+(1 α)f(x 2 ), pentru orice x 1,x 2 domf şi α [0, 1]. Dacă în plus f(αx 1 +(1 α)x 2 ) < αf(x 1 )+(1 α)f(x 2 ), pentru orice x 1 x 2 domf şi α (0, 1), atunci f se numeşte funcţie strict convexă. Dacă există o constantă σ > 0 astfel încât f(αx 1 +(1 α)x 2 ) αf(x 1 )+(1 α)f(x 2 ) σ 2 α(1 α) x 1 x 2 2, pentru orice x 1,x 2 domf şi α [0, 1], atunci f se numeşte funcţie tare convexă. O funcţie f se numeşte concavă dacă f este convexă. f(x)=x α f(x 1 )+(1 α) f(x 2 ) 0.4 f(x 2 ) f(x 1 ) 0.1 f(α x 1 +(1 α)x 2 ) x x 2 1 Figura 1.9: Exemplu de funcţie convexă f(x) = x 2. Exemplul Dăm în continuare câteva exemple de funcţii convexe: 1. Funcţia definită de orice normă este convexă, i.e. f(x) = x este convexă pe R n.

28 28 Capitolul 1. Teorie convexă 2. Funcţia max definită astfel f(x) = max{x 1,...,x n } este convexă pe R n. 3. Funcţia f(x) = log det(x) este convexă pe spaţiul matricelor pozitiv definite S n Funcţia dată de media geometrică f(x) = ( n i=1 x i) 1/n este concavă pe R n ++. Inegalitatea lui Jensen este o generalizare a definiţiei anterioare şi ne spune că f este o funcţie convexă dacă şi numai dacă domf este mulţime convexă şi ( p ) p f α i x i α i f(x i ) i=1 pentru orice x i domf şi p i=1 α i = 1 cu α i [0, 1] pentru orice i = 1,..., p. Interpretarea geometrică a convexităţii este foarte simplă. Pentru o funcţie convexă, fie două puncte din domeniul său x 1,x 2 domf, atunci valorile funcţiei evaluate în punctele din intervalul [x 1, x 2 ] sunt mai mici decât cele de pe segmentul cu capetele (x 1,f(x 1 )) şi (x 2,f(x 2 )). Cu alte cuvinte, valorile funcţiei (convexe) în punctele αx 1 +(1 α)x 2, pentru α [0, 1], sunt mai mici sau egale cu înalţimea corzii ce uneşte coordonatele (x 1,f(x 1 )) şi (x 2,f(x 2 )) (vezi Fig. 1.9). Remarca O funcţie f : R n R este convexă dacă şi numai dacă restricţia domeniului său la o dreaptă (care intersectează domeniul) este, de asemenea, convexă. Cu alte cuvinte, f este convexă dacă şi numai dacă oricare ar fi x domf şi o direcţie d R n, funcţia scalară g(t) = f(x + td) este convexă pe domeniul {t R : x + td domf}. Această proprietate este utilă în anumite probleme în care se doreşte să se arate convexitatea unei funcţii Condiţii de ordinul I pentru funcţii convexe În această secţiune prezentăm condiţiile de convexitate de ordinul întâi pentru funcţii diferenţiabile: Teorema (Convexitatea funcţiilor de clasă C 1 ) Presupunem că funcţia f : R n R este continuu diferenţiabilă şi domf este o mulţime convexă. Atunci, f este convexă dacă şi numai dacă: i=1 f(x 2 ) f(x 1 )+ f(x 1 ) T (x 2 x 1 ) x 1,x 2 domf. (1.1)

29 1.2. Teoria funcţiilor convexe 29 Demonstraţie: Mai întâi demonstrăm că dacă funcţia este convexă atunci inegalitatea precedentă are loc. Din convexitatea lui f rezultă că pentru orice x 1,x 2 domf şi oricare α [0, 1] avem: f(x 1 +α(x 2 x 1 )) f(x 1 ) α(f(x 2 ) f(x 1 )). Pe de altă parte, avem că: f(x 1 ) T f(x 1 +α(x 2 x 1 )) f(x 1 ) (x 2 x 1 ) = lim f(x 2 ) f(x 1 ). α +0 α de unde rezultă inegalitatea (1.1). Pentruimplicaţiainversă, seobservăcăpentruoricez = x 1 +α(x 2 x 1 ) = (1 α)x 1 +αx 2 sesatisfacerelaţiaf(z) (1 α)f(x 1 )+αf(x 2 ). Deaceea, prin aplicarea relaţiei (1.1) de două ori în punctul z se obţin următoarele inegalităţi: f(x 1 ) f(z)+ f(z) T (x 1 z) şi f(x 2 ) f(z)+ f(z) T (x 2 z). Prin înmulţirea cu ponderile (1 α) şi α şi apoi, însumarea celor două relaţii avem: (1 α)f(x 1 )+αf(x 2 ) f(z)+ f(z) T [(1 α)(x 1 z)+α(x 2 z)]. }{{} =(1 α)x 1 +αx 2 z=0 Interpretarea relaţiei anterioare este foarte simplă: tangenta la graficul unei funcţii convexe în orice punct se află sub grafic. O consecinţă imediată a acestei teoreme este următoarea inegalitate: fie f : R n R o funcţie convexă de clasă C 1, atunci f(x 1 ) f(x 2 ),x 1 x 2 0 x 1,x 2 domf Condiţii de ordinul II pentru funcţii convexe Teorema (Convexitatea funcţiilor de clasă C 2 ) Fie o funcţie f : R n R de două ori continuu diferenţiabilă şi presupunem că domf este mulţime convexă. Atunci f este convexă dacă şi numai dacă pentru orice x domf matricea Hessiană este pozitiv semidefinită, adică: 2 f(x) 0 x domf. (1.2)

30 30 Capitolul 1. Teorie convexă Demonstraţie: Mai întâi arătăm că dacă funcţia este convexă atunci inegalitatea anterioară are loc. Folosim aproximarea Taylor de ordin II a lui f în punctul x într-o direcţie arbitrară d R n : f(x+td) = f(x)+t f(x) T d+ 1 2 t2 d T 2 f(x)d+r(t 2 d 2 ). De aici obţinem: d T 2 2 ( f(x)d = lim f(x+td) f(x) t f(x) T d ) R(t 2 d 2 ) +lim t 0 t 2 }{{}} t 0 {{ t 2 } 0, datorită (1.1). =0 0, şi deci f(x) 2 0. Pe de altă parte, pentru demonstraţia implicaţiei inverse, folosim expresia restului Taylor pentru un parametru α [0, 1]: f(x 2 ) = f(x 1 )+ f(x 1 ) T (x 2 x 1 ) (x 2 x 1 ) T 2 f(x 1 +α(x 2 x 1 ))(x 2 x 1 ) }{{} 0, datorita (1.2). f(x 1 )+ f(x 1 ) T (x 2 x 1 ) şi apoi utilizăm condiţiile de ordinul I pentru funcţii convexe. Exemplul Funcţia f(x) = log(x) este convexă pe R ++ = {x R : x > 0} deoarece 2 f(x) = 1 x 2 > 0 oricare ar fi x > Funcţia pătratică f(x) = 1 2 xt Qx + q T x + r este convexă pe R n dacă şi numai dacă Q 0, deoarece pentru orice x R n Hessiana 2 f(x) = Q (dacă Q este simetrică). 3. Se observă că orice funcţie afină este convexă şi, de asemenea, concavă. 4. Funcţia f(x,t) = xt x este convexăpe R n (0, ) deoarecematricea t Hessiană [ 2 2 f(x,t) = I ] t n 2 x t 2 2 x T 2 x T x t 2 t 3 este pozitiv definită pe această mulţime. Pentru a scoate în evidenţă acest lucru, se înmulţeşte la dreapta şi la stânga cu un vector v = [z T s] T R n+1 de unde rezultă v T 2 f(x,t)v = 2 tz sx 2 0 t 3 dacă t > 0.

31 1.2. Teoria funcţiilor convexe Condiţia domf mulţime convexă impusă în toate teoremele precedente este necesară. De exemplu, considerăm funcţia f(x) = 1/x 2 având domf = R \ {0} mulţime neconvexă. Observăm că Hessiana 2 f(x) = 6 x 4 0, dar funcţia nu este convexă. Teorema (Convexitatea mulţimilor subnivel) Pentru un scalar c R, mulţimea subnivel {x domf : f(x) c} a unei funcţii convexe f : R n R este convexă. Demonstraţie: Dacă f(x 1 ) c si f(x 2 ) c atunci pentru orice α [0, 1] funcţia f satisface de asemenea: f((1 α)x 1 +αx 2 ) (1 α)f(x 1 )+αf(x 2 ) (1 α)c+αc = c. Mulţimile izonivel (contururile) unei funcţii f : R n R sunt mulţimile de forma {x R n : f(x) = c}. Epigraful funcţiei: Fie o funcţie f : R n R, atunci epigraful (numit şi supragrafic) funcţiei este definit ca fiind următoarea mulţime: epif = { [x T t] T R n+1 : x domf, f(x) t }. Teorema (Proprietatea de convexitate a epigrafului) O funcţie f : R n R este convexă dacă şi numai dacă epigraful său este o mulţime convexă Operaţii ce conservă convexitatea funcţiilor În cele ce urmează prezentăm câteva operaţii pe funcţii convexe care conservă proprietatea de convexitate: 1. Dacă f 1 şi f 2 sunt funcţii convexe şi α 1,α 2 0 atunci α 1 f 1 +α 2 f 2 este de asemenea convexă. 2. Dacă f este convexă atunci g(x) = f(ax + b) (adică compunerea unei funcţii convexe cu o funcţie afină) este de asemenea convexă. 3. Fief : R n R m R astfel încât funcţia f(,y)este convexă pentru orice y S R m. Atunci următoarea funcţie este convexă: g(x) = supf(x,y). y S

32 32 Capitolul 1. Teorie convexă 4. Compunerea cu o funcţie convexă monotonă unidimensională: dacă f : R n R este convexă şi g : R R este convexă şi monoton crescătoare, atuncifuncţiag f : R n Restedeasemeneaconvexă. 5. Dacă g şi f sunt multidimensionale, i.e. g: R k R, iar f: R n R k, atunci pentru funcţia h: R n R, h = g f, i.e. h(x) = g(f(x)) = g(f 1 (x),...,f k (x)), unde f i : R n R, putem afirma: (i) h este convexă dacă g este convexă, g este monoton crescătoare, în fiecare argument, iar toate funcţiile f i sunt convexe (ii) h este convexă dacă g este convexă, g este monoton crescătoare în fiecare argument, iar toate funcţiile f i sunt concave. Funcţii conjugate: Fie funcţia f : R n R, atunci funcţia conjugată, notată cu f, se defineşte prin f (y) = sup y T x f(x). x dom f}{{} F(x,y) Din discuţia precedentă rezultă că funcţia conjugată f este convexă indiferent de proprietăţile lui f. Mai mult, domf = {y R n : f (y) finit}. O altă consecinţă evidentă a definiţiei este inegalitatea Fenchel: f(x)+f (y) y T x x domf, y domf. Exemplul Pentru funcţia pătratică convexă f(x) = 1 2 xt Qx, unde Q 0, funcţia conjugată are expresia: f (y) = 1 2 yt Q 1 y. Pentru funcţia f(x) = logx, conjugata sa este dată de expresia: { f 1 log( y) dacă y < 0 (y) = sup(xy +logx) = x>0 altfel.

33 Capitolul 2 Concepte fundamentale din teoria optimizării În cadrul acestui capitol prezentăm o scurtă istorie a evoluţiei optimizării şi apoi introducem conceptele fundamentale ale unei probleme de optimizare (valoarea optimă, puncte de extrem, mulţimea fezabilă) împreună cu principalele clase de probleme de optimizare (probleme de optimizare neliniare, liniare, convexe, pătratice). 2.1 Evoluţia teoriei optimizării Optimizarea are aplicaţii în extrem de numeroase domenii, dintre care putem aminti următoarele (aplicaţii concrete din inginerie sunt prezentate în Capitolul 14): - economie: alocarea resurselor în logistică, investiţii, calcularea unui portofoliu optim; - ştiinţele exacte: estimarea şi proiectarea de modele pentru seturi de date măsurate, proiectarea de experimente; - inginerie: proiectarea şi operarea în domeniul sistemelor tehnologice (poduri, autovehicule, dispozitive electronice), optimizarea motoarelor de căutare, control optimal, procesarea de semnale. Apariţia teoriei optimizării în problemele de extrem (minimum/maximum) datează cu câteva secole înaintea lui Hristos.

34 34 Capitolul 2. Concepte fundamentale din teoria optimizării Matematicienii din Antichitate manifestau interes pentru un număr de probleme de tip izoperimetric: de exemplu care este curba închisă de lungime fixată ce înconjoară suprafaţa de arie maximă? În această perioadă au fost folosite abordări geometrice pentru rezolvarea problemelor de optimizare şi determinarea punctului de optim. Cu toate acestea, o soluţie riguroasă pentru aceste tipuri de probleme nu a fost găsită până în secolul al XIX-lea. Problema izoperimetrică îşi are originile în legenda reginei Dido, descrisă de Virgil în Eneida. În primul capitol, Virgil ne povesteşte cum, ţinută în captivitate de propriul său frate, regina evadează şi stabileşte fundaţia viitorului oraş al Cartaginei prin delimitarea sa cu fâşii din piele de bizon. În acest fel ia naştere problema înconjurării unei suprafeţe de arie maximă având constrângerea ca perimetrul figurii rezultate să fie constant. Legenda spune că fenicienii au tăiat pielea de bizon în fâşii subţiri şi, în acest fel, au reuşit să îngrădească o suprafaţă foarte mare. Nu este exclus faptul ca supuşii reginei să fi rezolvat o versiune practică a problemei. Fundaţia Cartaginei datează din secolul al IX-lea î.h. când nu exista nici o urmă a geometriei Euclidiene. Problema reginei Dido are o soluţie unică în clasa figurilor convexe cu condiţia ca partea fixată a frontierei să fie o linie convexă poligonală. Figura 2.1: Problema reginei Dido (problema izoperimetrică). Există şi alte metode pe care matematicienii din perioada ce precedă calculul diferenţial le foloseau pentru a rezolva probleme de optimizare, şi anume abordările algebrice. Una dintre cele mai elegante este inegalitatea mediilor: x 1 + +x n n (x 1 x n ) 1/n x i 0, n 1, satisfăcută ca egalitate dacă şi numai dacă x 1 = = x n. O simplă aplicaţie este următoarea: pentru a arăta că din mulţimea tuturor dreptunghiurilor cu arie fixă, pătratul are cel mai mic perimetru, putem

35 2.1. Evoluţia teoriei optimizării 35 folosi această simplă inegalitate algebrică: dacă notăm cu x şi y laturile dreptunghiului, atunci problema se reduce la a determina anumite valori pentru x şi y astfel încât să se minimizeze perimetrul 2(x + y) cu constrângerea xy = A, unde A este aria dată. Din inegalitatea mediilor avem x+y xy = A, 2 cu egalitate dacă x = y = A, adică figura este un pătrat. Optimizarea deciziilor a devenit o ştiinţă începând cu a doua jumătate a secolului XIX-lea, perioadă în care calculul diferenţial a fost puternic dezvoltat. Folosirea metodei gradient (adică utilizarea derivatei funcţiei obiectiv) pentru minimizare a fost prezentată de Cauchy în Metodele de optimizare moderne au fost pentru prima dată propuse într-o lucrare de Courant (1943) unde a fost introdusă noţiunea de funcţie penalitate, în lucrarea lui Dantzig (1951) unde a fost prezentată metoda simplex pentru programare liniară şi la Karush-Kuhn-Tucker care derivează condiţiile de optimalitate KKT pentru probleme de optimizare constrânsă (1939,1951). Apoi, în anii 1960 au fost propuse foarte multe metode pentru a rezolva probleme de optimizare neliniară: metode pentru optimizare fără constrângeri, cum ar fi metoda gradienţilor conjugaţi dată de Fletcher şi Reeves (1964), metode de tip quasi-newton dată de Davidon-Fletcher-Powell (1959). Metode de optimizare cu constrângeri au fost propuse de Rosen (metoda gradientului proiectat), Zoutendijk a propus metoda direcţiilor fezabile (1960), Fiacco şi McCcormick propun încă din anii 1970 metodele de punct interior şi exterior. Metodele de programare pătratică secvenţială (SQP) au fost de asemenea propuse în anii Dezvoltarea de metode de punct interior pentru programarea liniară a început cu lucrarea lui Karmarkar (1984). Această lucrare şi brevetarea ei ulterioară au determinat comunitatea academică să se reorienteze iarăşi în direcţia metodelor de punct interior, culminând cu apariţia cărţii lui Nesterov şi Nemirovski în Pe lângă metodele de tip gradient, au fost dezvoltate şi alte tipuri de metode care nu se bazau pe informaţia de gradient. În această direcţie putem aminti metoda simplex a lui Nelder şi Meade (1965). Metode speciale care exploatează structura particulară a unei probleme au fost de asemenea dezvoltate încă din anii A apărut şi programarea dinamică, ce se baza pe rezultatele lui Bellman (1952). Lasdon a atras atenţia asupra problemelor de dimensiuni mari prin cartea publicată în Optimalitatea Pareto a fost dezvoltată

36 36 Capitolul 2. Concepte fundamentale din teoria optimizării pentru optimizarea multiobiectiv. Totodata, au fost dezvoltate şi metode heuristice: algoritmii genetici (1975). Un exemplu de problemă simplă de inginerie civilă ce poate fi rezolvată folosind calculul diferenţial este prezentat în cele ce urmează. Fie două oraşe localizate pe maluri diferite ale unui râu cu lăţime constantă w; oraşele se află la distanţa a şi respectiv b de râu, cu o separare laterală d (Fig. 2.2). Problema constă în a afla locul de construcţie a unui pod pentru a face cât mai scurtă posibil călătoria între cele două oraşe. Această problemă se poate pune ca o problemă de optimizare: min x f(x), unde f(x) = x 2 +a 2 +w+ b 2 +(d x) 2. Considerând condiţiile de optimalitate prezentate ulterior, impunem derivata f (x) = 0 şi obţinem locaţia optimă: x = a a+b d. Figura 2.2: Aplicaţie a localizării optime. 2.2 Caracteristicile unei probleme de optimizare O problemă de optimizare conţine următoarele trei ingrediente: (i) o funcţie obiectiv, f(x), ce va fi minimizată sau maximizată; (ii) variabile de decizie, x, care se pot alege dintr-o anumită mulţime;

37 2.2. Caracteristicile unei probleme de optimizare 37 (iii) constrângeri (numite şi restricţii) ce vor fi respectate, de forma g(x) 0(constrângeri de inegalitate) şi/sau h(x) = 0(constrângeri de egalitate). Formularea matematică standard a unei probleme de optimizare este următoarea: min x R n f(x) s.l.: g 1 (x) 0,...,g m (x) 0 h 1 (x) = 0,...,h p (x) = 0. Dacă introducem notaţiile compacte g(x) = [g 1 (x)...g m (x)] T şi h(x) = [h 1 (x)...h p (x)] T, atunci în forma compactă problema de optimizare anterioară se scrie ca: (NLP) : min x R n f(x) s.l.: g(x) 0, h(x) = 0. În această problemă, funcţia obiectiv f : R n R, funcţia vectorială ce defineşte constrângerile de inegalitate g : R n R m şi funcţia vectorială ce defineşte constrângerile deegalitate h : R n R p se presupun de obicei a fi diferenţiabile. Observăm că o problemă de maxim se poate reduce la una de minim datorită echivalenţei maxf(x) = min f(x). x x Exemplul Considerăm următoarea problemă de optimizare: În acest exemplu avem: min x R 2 x 2 1 +x2 2 s.l.: x 0, x 2 1 +x x 1 x 2 1 = 0. - variabila de decizie este x = [x 1 x 2 ] T R 2 şi funcţia obiectiv f(x) = x 2 1 +x 2 2 este funcţie pătratică convexă;

38 38 Capitolul 2. Concepte fundamentale din teoria optimizării - avem trei constrângeri de inegalitate: g : R 2 R 3, unde g 1 (x) = x 1, g 2 (x) = x 2 şi g 3 (x) = x x 2 1. Observăm că funcţia g are toate cele trei componente funcţii convexe; - o singură constrângere de egalitate definită de funcţia h(x) = x 1 x 2 1. Observăm că funcţia h nu este convexă. Definiţia Mulţimea {x R n : f(x) = c} este mulţimea nivel (conturul) a funcţiei f pentru valoarea c R. 2. Mulţimea fezabilă a problemei de optimizare (NLP) este: X = {x R n : g(x) 0, h(x) = 0}. 3. Punctul x R n este un punct de minim global (adesea denumit minim global) dacă şi numai dacă x X şi f(x ) f(x) oricare ar fi x X. 4. Punctul x R n este un punct strict de minim global dacă şi numai dacă x X şi f(x ) < f(x) oricare ar fi x X \{x }. 5. Punctul x R n este minim local dacă şi numai dacă x X. şi există o vecinătate N a lui x (e.g. o bilă deschisă cu centrul în x ) astfel încât f(x ) f(x) oricare ar fi x X N. 6. Punctul x R n este un punct strict de minim local dacă şi numai dacă x X şi există o vecinătate N a lui x astfel încât f(x ) < f(x) oricare ar fi x (X N)\{x }. Exemplul Pentru următoarea problemă unidimensională având constrângeri de tip box (vezi Fig. 2.3) cos 5πx min x R x s.l.: x 0.1, x funcţia obiectiv este f(x) = cos5πx, iar mulţimea fezabilă este un x politop (interval) X = {x R : x 0.1, x 1.1} = [0.1, 1.1];

39 2.2. Caracteristicile unei probleme de optimizare Punct de maxim global Punct de maxim local Punct de minim local x * L Punct de minim global x * G Punct de minim local x * L Figura 2.3: Puncte de minim local (x L ) şi punctul de minim global (x G ) pentru f(x) = cos(5πx)/x în intervalul [0.1, 1.1]. - reprezentând grafic funcţia în Matlab (Fig. 2.3) putem identifica trei puncte de minim local, dintre care unul singur este de minim global. Exemplul Considerăm următoarea problemă de optimizare: min x R 2(x 1 3) 2 +(x 2 2) 2 s.l.: x 2 1 x 2 3 0, x 2 1 0, x 1 0. Funcţia obiectiv şi cele trei constrângeri de inegalitate sunt: f(x 1,x 2 ) = (x 1 3) 2 + (x 2 2) 2 şi respectiv g 1 (x 1,x 2 ) = x 2 1 x 2 3, g 2 (x 1,x 2 ) = x 2 1, g 3 (x 1,x 2 ) = x 1. Fig 2.4 ilustrează mulţimea fezabilă şi contururile funcţiei obiectiv. Problema se reduce la a găsi un punct în mulţimea fezabilă în care funcţia obiectiv, (x 1 3) 2 + (x 2 2) 2, ia cea mai mică valoare. Observăm că punctele [x 1 x 2 ] T cu (x 1 3) 2 + (x 2 2) 2 = c sunt cercuri de rază c şi centru în [3 2] T. Aceste cercuri se numesc contururile funcţiei obiectiv având valoarea c. Pentru a minimiza f trebuie să găsim cercul cu cea mai mică rază c care intersectează mulţimea fezabilă. După cum se observă din Fig. 2.4, cel mai mic cerc corespunde lui c = 2 şi intersectează mulţimea fezabilă în punctul de optim x = [2 1] T.

40 40 Capitolul 2. Concepte fundamentale din teoria optimiza rii 5 g g1 4 3 contururi functie obiectiv 3 2 * (3,2) 1 0 g 2 1 punct optim (2,1) 2 zona fezabila Figura 2.4: Solut ia grafica a problemei de optimizare. I n teoria optimiza rii, un aspect important ı l reprezinta existent a punctelor de minim. Urma toarea teorema ne arata ca nd astfel de puncte de optim exista : Teorema (Weierstrass) Daca mult imea fezabila X Rn este compacta (adica ma rginita s i ı nchisa ) s i f : X R este continua atunci exista un punct de minim global pentru problema de minimizare minx X f (x). Demonstrat ie: Observa m ca graficul funct iei f poate fi reprezentat prin G = {(x, t) Rn R : x X, f (x) = t}. Mult imea G este o mult ime compacta s i proiect ia lui G pe ultima sa coordonata este de asemenea compacta. Mai exact, mult imea ProjR G = {t R : x Rn astfel ı nca t (x, t) G} este un interval compact [fmin, fmax ] R. Prin construct ie, exista cel put in un x X astfel ı nca t (x, fmin) G. Din teorema anterioara concluziona m ca punctele de minim exista ı n condit ii relativ generale, de aceea ı n aceasta lucrare utiliza m min ı n loc de inf. Cu toate ca demonstrat ia a fost constructiva, nu conduce ca tre un algoritm eficient pentru a ga si punctul de minim. Scopul acestei lucra ri este de a prezenta principalii algoritmi numerici de optimizare care determina punctele de optim.

41 2.3. Tipuri de probleme de optimizare Tipuri de probleme de optimizare Pentru alegerea algoritmului potrivit pentru o problemă practică, avem nevoie de o clasificare a algoritmilor existenţi şi informaţii despre structurile matematice exploatate de ei. Înlocuirea unui algoritm inadecvat cu unul eficient poate scurta găsirea soluţiei cu mai multe ordine de magnitudine în ceea ce priveşte complexitatea aritmetică (numărul total de flopi) Programare neliniară (NLP) Acest curs tratează în principal algoritmi proiectaţi pentru rezolvarea de probleme generale de Programare Neliniară (NLP - NonLinear Programming) de forma: (NLP) : min f(x) (2.1) x Rn s.l.: g(x) 0, h(x) = 0, în care funcţiile f : R n R, g : R n R m şi h : R n R p se presupun a fi continuu diferenţiabile cel puţin o dată, iar în unele cazuri de două sau de mai multe ori diferenţiabile. L y 1 l x 1 Figura 2.5: Problema de împachetare.

42 42 Capitolul 2. Concepte fundamentale din teoria optimizării Minimizarea dimensiunii unui pachet - Care sunt dimensiunile celui mai mic pachet ce conţine trei obiecte rotunde, de raze r 1,r 2 şi r 3 date? Considerăm problema în R 2, extensia în R 3 este imediată. Notăm cu (x i,y i ) coordonatele plane ale celor trei obiecte şi cu l şi L laturile pachetului. Dorim să minimizăm aria l L astfel încât au loc următoarele constrângeri: - fiecare obiect se află în pachet: x i r i, y i r i, x i l r i, y i L r i i = 1,2,3 - dimensiunile sunt numere pozitive: - cele trei obiecte nu se suprapun: x i 0,y i 0,l 0,L 0 i = 1,2,3 (x i x j ) 2 +(y i y j ) 2 (r i +r j ) 2 i j = 1,2,3. În acest caz, problema precedentă se poate pune ca o problemă de optimizare (NLP) unde variabila de decizie este x = [x 1 y 1 x 2 y 2 x 3 y 3 l L] T : min x R 8 l L s.l.: x 0, x i r i, y i r i, x i l r i, y i L r i (x i x j ) 2 +(y i y j ) 2 (r i +r j ) 2 i j = 1,2,3. Observăm că în problema anterioară funcţia obiectiv f(x) = l L nu este convexă. În anumite situaţii însă, multe dintre probleme prezintă structuri particulare, care pot fi exploatate pentru o rezolvare mai rapidă a acestora. În cele ce urmează enumerăm cele mai importante clase de probleme de optimizare cu structură specială Programare liniară (LP) Încazul încarefuncţiile f,g şi hdinformularea generală (2.1)sunt afine, problema (NLP) devine un Program Liniar (LP - Linear Program). Mai exact, un (LP) poate fi definit ca: (LP) : min x R n ct x (2.2) s.l.: Cx d 0, Ax b = 0.

43 2.3. Tipuri de probleme de optimizare 43 Datele problemei sunt: c R n,a R p n,b R p,c R m n şi d R m. Se observă că putem adăuga o constantă la funcţia obiectiv, adică f(x) = c T x+c 0, însă aceasta nu schimbă punctul de minim x. Aplicaţie financiară: Considerăm un număr n de active financiare şi x i reprezintăsumainvestităînactivuli. Notămcur i (t)rataderentabilitate într-un an, iar cu c i rata de rentabilitate medie peste o perioadă de T ani a produsului i (i.e. c i = 1 T T t=1 r i(t)). Dorim să maximizăm profitul: max x R n n c i x i i=1 s.l.: x 0, n x i = 1. LP-urile pot fi rezolvate foarte eficient. Încă din anii 1940 aceste probleme au putut fi rezolvate cu succes, odată cu apariţia metodei simplex dezvoltată de G. Dantzig. Metoda simplex este o metodă de tip mulţime activă şi care este în competiţie cu o clasă la fel de eficientă de algoritmi numiţi algoritmi de punct interior. În zilele noastre se pot rezolva LP-uri chiar şi cu milioane de variabile şi constrângeri, orice student din domeniul finanţelor având în curriculum principalele metode de rezolvare a acestora. Algoritmii specializaţi pentru LP nu sunt trataţi în detaliu în acest curs, însă trebuie recunoscuţi atunci când sunt întâlniţi în practică având la dispoziţie mai multe produse software: CPLEX, SOPLEX, lp solve, lingo, MATLAB (linprog), SeDuMi, YALMIP, CVX. i= Programare pătratică (QP) Dacă în formularea generală (NLP) dată în (2.1) constrângerile g şi h suntafine(caşiîncazulproblemeilp),însăfuncţiaobiectivesteofuncţie pătratică, problema care rezultă se numeşte Problemă de Programare Pătratică (QP - Quadratic Program). O problemă generală QP poate fi formulată după cum urmează: (QP) : 1 min x R n 2 xt Qx+q T x+r (2.3) s.l.: Cx d 0, Ax b = 0. Aici, în plus faţă de datele problemei LP, dacă Q = Q T, avem matricea Hessiană Q R n n. Numele său provine din relaţia 2 f(x) = Q, unde f(x) = 1 2 xt Qx+q T x+r.

44 44 Capitolul 2. Concepte fundamentale din teoria optimizării Dacă matricea Hessiană Q este pozitiv semidefinită (i.e. Q 0) atunci numim problema QP (2.3) o problemă QP convexă. QP-urile convexe sunt cu mult mai uşor de rezolvat global decât QP-urile neconvexe (i.e. unde matricea Hessiană Q este indefinită). După cum vom arăta în capitolele următoare, o problemă convexă are numai minime globale în timp ce una neconvexă poate avea multe minime locale. Dacă matricea Hessiană Q este pozitiv definită (i.e. Q 0) numim problema QP (2.3) o problemă QP strict convexă. QP-urile strict convexe sunt o subclasă a problemelor QP convexe, dar de cele mai multe ori mai uşor de rezolvat decât QP-urile care nu sunt strict convexe. Exemplul Exemplu de QP care nu este convex: [ ] min x R 2 2 xt x+ 0 1 [ ] T 0 x 2 s.l.: 1 x 1 1, 1 x Această problemă are minime locale în x 1 = [0 1]T şi x 2 = [0 10]T, însă doar x 2 este punct de minim global pentru această problemă. Exemplu de QP strict convex: 1 min x R 2 2 xt [ ] [ ] T x+ x s.l.: 1 x 1 1, 1 x Problema anterioară are un punct de minim local (strict) unic în x = [0 1] T care este de asemenea minimglobal deoarece Hessiana este pozitiv definită. Aplicaţie financiară - continuare: Observăm că în problema considerată în secţiunea nu s-a luat în considerare riscul. Riscul este dat de fluctuaţia ratei de rentabilitate r i (t) de-a lungul celor T ani. Minimizarea riscului este echivalentă cu minimizarea varianţei investiţiei (risk averse). În acest caz, matricea de covarianţă Q se exprimă astfel: Q ij = σ 2 ij = 1 T T (r i (t) c i )(r j (t) c j ) i,j = 1,...,n. i=1

45 2.3. Tipuri de probleme de optimizare 45 Problema minimizării riscului poate fi formulată ca o problemă QP: 1 min x R n 2 xt Qx s.l.: x 0, n c i x i R, i=1 n x i = 1. Constrângerea n i=1 c ix i R se impune pentru a asigura cel puţin un profit R. În practică avem la dispoziţie mai multe produse software pentru rezolvarea de probleme QP: MOSEK, MATLAB (quadprog), SeDuMi, CVX, YALMIP Optimizare convexă (CP) Ambele tipuri de probleme LP şi QP aparţin unei clase mai largi de probleme de optimizare, şi anume probleme de optimizare convexe. O problemă de optimizare cu o mulţime fezabilă X convexă şi o funcţie obiectiv f convexă se numeşte problemă de optimizare convexă (CP - Convex Programming), i.e. i=1 (CP) : min f(x) (2.4) x Rn s.l.: g(x) 0, Ax b = 0, unde f : R n R şi componentele lui g : R n R m sunt funcţii convexe şi constrângerile de egalitate sunt descrise de funcţii afine h(x) = Ax b, unde A R p n şi b R p. Rezultă deci că mulţimea fezabilă asociată X = {x R n : g(x) 0, Ax = b} este mulţime convexă. Exemplul Programare pătratică cu constrângeri pătratice (QCQP - Quadratically Constrained Quadratic Program): O problemă de optimizare convexă de forma (2.4) cu funcţiile f şi componentele lui g pătratice convexe se numeşte problemă pătratică cu constrângeri pătratice: (QCQP) : 1 min x R n 2 xt Qx+q T x+r 1 s.l.: 2 xt Q i x+qi T x+r i 0 i = 1,...,m Ax b = 0.

46 46 Capitolul 2. Concepte fundamentale din teoria optimizării Alegând Q 1 = = Q m = 0 obţinem o problemă uzuală QP, iar dacă în plus alegem Q = 0 obţinem un LP. De aceea, clasa problemelor QCQP conţine şi clasa LP-urilor şi pe cea a QP-urilor. Dacă matricele Q şi Q i cu i = 1,...,m sunt pozitiv semidefinite atunci problema (QCQP) este convexă Figura 2.6: Analiza statistică a datelor. Analiza statistică: Analiza datelor şi interpretarea acestora într-un sens cât mai corect este una din preocupările principale din domeniul statisticii. Problema se formulează în următorul mod: pe baza unei colecţii de date cunoscute (reprezentate în Fig. 2.6 prin puncte), să se realizeze predicţia cu o eroare cât mai mică a unui alt set de date parţial cunoscut. În termeni matematici, această problemă presupune determinarea unei direcţii de-a lungul căreia elementele date (punctele) tind să se alinieze, astfel încât să se poată prezice zona de apariţie a punctelor viitoare. S-a constatat că direcţia de căutare este dată de vectorul singular corespunzător celei mai mici valori singulare al matricei formate din colecţia de puncte date, ce poate fi găsit prin intermediul unei probleme de optimizare convexă: 1 min x R n 2 xt A T Ax s.l.: x T x 1, unde A R m n reprezintă matricea ale cărei coloane sunt vectorii (punctele) cunoscute iniţial a 1,...,a n.

47 2.3. Tipuri de probleme de optimizare 47 Exemplul Programare semidefinită (SDP - SemiDefinite Programming) O clasă importantă de probleme de optimizare convexă foloseşte inegalităţi liniare matriceale (LMI) pentru a descrie mulţimea fezabilă. Datorită naturii constrângerilor ce impun ca anumite matrice să rămână pozitiv semidefinite, această clasă de probleme se numeşte programare semidefinită (SDP). O problemă generală SDP poate fi formulată după cum urmează: (SDP) : min x R n ct x s.l.: A 0 + n A i x i 0, Ax b = 0, i=1 unde matricele A i S m oricare ar fi i = 0,...,n. Remarcăm că problemele LP, QP, şi QCQP pot fi de asemenea formulate ca probleme SDP. Programarea Semidefinită este un instrument des utilizat în teoria sistemelor şi reglare (control). Minimizarea valorii proprii maxime: a unei matrice poate fi formulată ca o problemă SDP. Avem o matrice simetrică G(x) care depinde afin de anumite variabile structurale x R n, i.e. G(x) = A 0 + n i=1 A ix i cu A i S m oricare ar fi i = 0,,n. Dacă dorim să minimizăm valoarea proprie maximă a lui G(x) în funcţie de x, i.e. să rezolvăm min x R nλ max(g(x)) putem formula această problemă ca un SDP, după cum urmează: adăugând o variabilă auxiliară t R şi ţinând cont că t λ max (G(x)) este echivalent cu un LMI ti m G(x), obţinem: min t t R,x R n s.l.: ti m n A i x i A 0 0. i=1 Două produse software excelente pentru formularea şi rezolvarea problemelor de optimizare convexă în mediul de programare MATLAB sunt YALMIP şi CVX, ce se pot găsi open-source şi sunt foarte uşor de instalat. Un software comercial des utilizat este MOSEK.

48 48 Capitolul 2. Concepte fundamentale din teoria optimizării Probleme de optimizare neconstrânsă (UNLP) Orice problemă NLP fără constrângeri se numeşte problemă de optimizare neconstrânsă (UNLP - Unconstrained NonLinear Programming). Are forma generală: (UNLP) : min x Rnf(x). (2.5) Metodele numerice de optimizare neliniară fără constrângeri vor forma subiectul Părţii a II-a a acestei lucrări, în timp ce algoritmii pentru probleme generale constrânse vor fi studiaţi în Partea a III-a. Cel mai utilizat software pentru programare neconstrânsă este programul Matlab cu funcţiile incluse fminunc şi fminsearch. Probleme de optimizare nediferenţiabilă: dacă una sau mai multe funcţii f, g şi h din structura problemei NLP (2.1) nu sunt diferenţiabile, atunci avem o problemă de optimizare nediferenţiabilă. Problemele de optimizare nediferenţiabilă sunt mult mai greu de rezolvat decât problemele NLP generale. Există un număr mai redus de algoritmi pentru a rezolva astfel de probleme: metoda subgradient, metoda Nelder-Mead, căutare aleatorie, algoritmi genetici, etc. De obicei, aceşti algoritmi sunt mult mai slabi din punct de vedere numeric decât algoritmii bazaţi pe informaţie de tip gradient şi Hessiană, şi care sunt subiectul acestei lucrări Programare mixtă cu întregi (MIP) O problemă de programare mixtă cu întregi este o problemă în care anumite variabile de decizie sunt constrânse la o mulţime de numere întregi. Un MIP poate fi formulat după cum urmează: (MIP) : min x R n,z Z m f(x,z) s.l.: g(x,z) 0, h(x,z) = 0. În general, aceste probleme sunt foarte greu de rezolvat, datorită naturii combinatoriale a variabilei z. Cu toate acestea, dacă problema relaxată, undevariabilelez numaisuntrestrânselaîntregi,cilamulţimidenumere reale, este convexă, de regulă există algoritmi eficienţi pentru rezolvarea lor. Algoritmii eficienţi de găsire a soluţiei sunt adesea bazaţi pe tehnica branch-and-bound, care foloseşte probleme parţial relaxate unde unele

49 2.3. Tipuri de probleme de optimizare 49 variabile din z sunt fixate la anumite valori întregi şi altele sunt relaxate exploatând proprietatea că soluţia problemelor relaxate este întotdeauna mai bună decât orice soluţie cu componente întregi. În acest fel, căutarea poate avea loc mult mai eficient decât o pură verificare a elementelor mulţimii fezabile. Două exemple importante de asemenea probleme sunt date în cele ce urmează: (i) Program liniar mixt cu întregi (MILP - Mixed Integer Linear Programming): dacă funcţiile f, g şi h sunt afine în ambele variabile x şi z obţinem un program liniar mixt cu întregi. O problemă faimoasă din această clasă este problema comis-voiajorului. (ii) Program pătratic mixt cu întregi (MIQP - Mixed Integer Quadratic Programming): dacă g şi h sunt funcţii afine şi f pătratică convexă în ambele variabile x şi z rezultă un program pătratic mixt cu întregi (MIQP). Probleme (MILP)/(MIQP) de dimensiuni mici/medii (i.e. dimensiunea variabilei n, m < 100) pot fi rezolvate eficient de pachete de software comerciale CPLEX, TOMLAB sau lp_solve.

50

51 Partea II Optimizare fără constrângeri

52

53 Capitolul 3 Metode de optimizare unidimensională După cum vom vedea în capitolele următoare, metodele bazate pe direcţii de descreştere presupun găsirea unui pas care, ideal, trebuie ales optim. Astfel de metode se mai numesc şi metode de căutare exactă. În această situaţie, trebuie să calculăm parametrul optim α ce determină valoarea minimă a funcţiei obiectiv f în direcţia d, cu alte cuvinte minimizarea funcţiei φ(α) = f(x + αd). Din acest motiv, în acest capitol analizăm metode numerice de optimizare unidimensională, adică pentru funcţii de o singură variabilă f : R R: min α R f(α). (3.1) Metodele de optimizare unidimensională se bazează fie pe căutare directă fie pe aproximarea funcţiei f cu un polinom ce se determină prin interpolare folosind valorile funcţiei şi/sau derivatele funcţiei obiectiv în anumite puncte. În metodele de căutare principiul de bază este următorul: se identifică intervalul [a, b] R ce include punctul de minim α, numit şi intervalul de căutare sau intervalul de incertitudine, urmat apoi de o reducere iterativă a lungimii acestuia pana la o valoare ce coboară sub toleranţa impusă pentru a localiza α. Eficienţa acestei abordăridepindedestrategia deconstrucţieaşirului deintervale[a k, b k ], k = 1,2,..., ce îl conţin pe α. Cele mai renumite metode de căutare unidimensională sunt: metoda secţiunii de aur şi metoda lui Fibonacci, pe care le vom prezenta în acest capitol. Metoda clasică Newton-Raphson şi metoda secantei sunt de asemenea considerate membre ale aceleiaşi clase. Pe de altă parte, metodele de interpolare găsesc o aproximare a lui

54 54 Capitolul 3. Metode de optimizare unidimensională α folosind valori ale funcţiei obiectiv f(α) înpuncte din intervalul iniţial de căutare [a, b], sau pot folosi valoarea funcţiei obiectiv şi derivata sa f (α) în anumite puncte din [a b]. Prin intermediul acestor valori se formează polinomul de interpolare de gradul doi sau mai mare, q(α), al funcţiei f(α) şi este determinat punctul de minim ˆα al funcţiei q(α). Printre cele mai renumite metode de interpolare se numără cea pătratică (în două sau trei puncte) şi cea cubică. 3.1 Metoda forward-backward pentru funcţii unimodale O metodă simplă de determinare a unui interval iniţial de căutare, adică determinarea unui interval care conţine punctul de optim α, este dată de metoda forward-backward. Ideea de bază este următoarea: dânduse un punct iniţial şi o lungime a pasului, se încearcă determinarea a două puncte pentru care funcţia are o formă geometrică convexă pe acel interval cu capetele în cele două puncte. Metoda presupune următorii paşi: fie un punct iniţial α 0 şi lungimea pasului h 0 > 0 - dacă f(α 0 + h 0 ) < f(α 0 ), atunci se începe din punctul α 0 + h 0 şi se continuă cu o lungime a pasului mai mare cât timp valoarea funcţiei creşte; - dacă f(α 0 +h 0 ) > f(α 0 ), atunci ne deplasăm din α 0 înapoi până când valoarea funcţiei creşte. În acest fel vom obţine un interval iniţial ce conţine valoarea optimă α. Metoda forward-backward se bazează pe proprietăţile de unimodalitate ale funcţiilor. Definiţia Fie funcţia f: R R şi un interval [a, b] R. Dacă există α [a, b] astfel încât f este strict descrescătoare pe intervalul [a, α ] şi strict crescătoare pe intervalul [α, b], atunci f se numeşte funcţie unimodală pe intervalul [a, b]. Intervalul [a, b] se numeşte interval de unimodalitate pentru f. Se observă imediat că funcţiile unimodale nu implică continuitate şi diferenţiabilitate. Următoarea teoremă arată că dacă f este unimodală, atunci intervalul de incertitudine poate fi redus comparând valorile lui f în doar două puncte ale intervalului. Teorema Fie funcţia unimodală f : R R pe intervalul [a, b] şi α 1,α 2 [a, b] cu α 1 < α 2. În acest caz:

55 3.2. Metode de căutare 55 (i) dacă f(α 1 ) f(α 2 ), atunci [a, α 2 ] este interval de unimodalitate pentru f. (ii) dacă f(α 1 ) f(α 2 ), atunci [α 1, b] este interval de unimodalitate pentru f. Pentru o expunere mai uşoară presupunem că punctul de minim se găseşte în R +. Metoda forward-backward presupune următorii paşi: Pas 1. Fie un α 0 [0, ), h 0 > 0 şi coeficientul multiplicativ t > 1 (adesea se alege t = 2). Evaluăm f(α 0 ) = f 0 şi k = 0. Pas 2. Comparăm valorile funcţiei obiectiv. Actualizăm α k+1 = α k +h k şi evaluăm f k+1 = f(α k+1 ). Dacă f k+1 < f k, sărim la Pas 3; altfel, sărim la Pas 4. Pas 3. Pas forward. Actualizăm h k+1 = th k, α = α k, α k = α k+1, f k = f k+1 şi k = k +1, sărim la Pas 2. Pas 4. Pas backward. Dacă k = 0, inversăm direcţia de căutare. Luăm h k = h k, α k = α k+1, sărim la Pas 2; altfel, considerăm a = min{α,α k+1 }, b = max{α,α k+1 }, returnăm intervalul [a, b] ce conţine punctul de minim α şi ne oprim. 3.2 Metode de căutare Metoda secţiunii de aur şi metoda lui Fibonacci sunt metode de tip partiţionare. Ideea din spatele acestor metode de minimizare a funcţiilor unimodale pe intervalul [a, b] R constă în reducerea iterativă a intervalului de incertitudine doar prin compararea valorilor luate de funcţia obiectiv. Odată ce lungimea intervalului de incertitudine este mai mică decât o acurateţe prestabilită, atunci punctele din acest interval pot fi considerate aproximări ale valorii minime a funcţiei. Această clasă de metode foloseşte doar valoarea funcţiei obiectiv şi are un rol important în algoritmii de optimizare, în special când ne confruntăm cu funcţii obiectiv nediferenţiabile sau funcţii obiectiv ale căror derivate prezintă forme complicate.

56 56 Capitolul 3. Metode de optimizare unidimensională Metoda secţiunii de aur Considerăm funcţia f unimodală pe intervalul [a, b] şi definim a 1 = a şi b 1 = b. La iteraţia k, metoda secţiunii de aur determină intervalul [a k+1, b k+1 ] astfel încât α [a k+1, b k+1 ]. În acest moment considerăm două puncte λ k, µ k [a k, b k ] unde λ k < µ k şi calculăm f(λ k ) şi f(µ k ) (vezi Fig. 5.2). Din teorema precedentă rezultă: (i) Dacă f(λ k ) f(µ k ) atunci a k+1 = a k şi b k+1 = µ k. (ii) Dacă f(λ k ) > f(µ k ) atunci a k+1 = λ k şi b k+1 = b k. f(α) f(µ k )>f(λ k ) µ k a k =b k λ k f(µ k ) b k λ k f(λ k ) µ k a k a k λ k α µ k b k Figura 3.1: Exemplu de pas pentru metoda secţiunii de aur Rămâne să discutăm alegerea punctelor λ k şi µ k. următoarele trei condiţii: În acest scop impunem 1. distanţele de la λ k şi respectiv µ k la capetele intervalului [a k, b k ] sunt egale: b k λ k = µ k a k. (3.2) 2. rata de micşorare a lungimii intervalelor de incertitudine la fiecare iteraţie este aceeaşi, rezultând b k+1 a k+1 = τ(b k a k ), unde τ (0, 1). (3.3)

57 3.2. Metode de căutare este necesară o singură evaluare a funcţiei obiectiv pentru o nouă iteraţie. Dacă substituim valorile ce constituie cazul (i) în (3.3) obţinem µ k a k = τ(b k a k ) şi prin combinarea cu (3.2) avem b k λ k = µ k a k. Prin rearanjarea acestor egalităţi avem: λ k = a k +(1 τ)(b k a k ) (3.4) µ k = a k +τ(b k a k ). (3.5) În acest caz, noul interval este [a k+1, b k+1 ] = [a k, µ k ]. Pentru a reduce intervalul de incertitudine este necesară selecţia parametrilor λ k+1 şi µ k+1. Din (3.5) rezultă Considerând rezultă µ k+1 = a k+1 +τ(b k+1 a k+1 ) = a k +τ(µ k a k ) = a k +τ(a k +τ(b k a k ) a k ) = a k +τ 2 (b k a k ). (3.6) τ 2 = 1 τ (3.7) µ k+1 = a k +(1 τ)(b k a k ) = λ k. Astfel, µ k+1 coincide cu λ k şi funcţia obiectiv nu necesită o evaluare deoarece valoarea sa este stocată în λ k. Cazul (ii) poate fi demonstrat într-o manieră similară, din care rezultă λ k+1 = µ k astfel încât nu este necesară evaluarea funcţiei obiectiv. Metoda secţiunii de aur constă în următorii paşi: Pas 1. Determinăm intervalul iniţial [a 1, b 1 ] şi alegem precizia δ > 0. Calculăm primele două puncte λ 1 şi µ 1 : λ 1 = a (b 1 a 1 ) µ 1 = a (b 1 a 1 ) şi evaluăm f(λ 1 ) şi f(µ 1 ), iniţializăm k = 1. Pas 2. Comparăm valorile funcţiilor. Dacă f(λ k ) > f(µ k ), trecem la Pas 3; dacă f(λ k ) f(µ k ), trecem la Pas 4. Pas 3. Dacă b k λ k δ, ne oprim şi returnăm µ k ; altfel iterăm: a k+1 = λ k, b k+1 = b k, λ k+1 = µ k f(λ k+1 ) = f(µ k ), µ k+1 = a k (b k+1 a k+1 ). Evaluăm f(µ k+1 ) şi trecem la Pas 5.

58 58 Capitolul 3. Metode de optimizare unidimensională Pas 4. Dacă µ k a k δ, ne oprim şi returnăm λ k ; altfel iterăm: a k+1 = a k, b k+1 = µ k, µ k+1 = λ k, f(µ k+1 ) = f(λ k ), λ k+1 = a k (b k+1 a k+1 ). Evaluăm f(λ k+1 ) şi trecem la Pas 5. Pas 5. Iterăm k = k +1, revenim la Pas 2. Observăm că acest algoritm produce un şir de intervale [a k, b k ] astfel încât punctul de minim α al funcţiei f se află în fiecare din aceste intervale. Mai departe ne concentrăm spre analiza ratei de reducţie a intervalului de incertitudine. Rezolvând ecuaţia (3.7) obţinem: Deoarece τ > 0 considerăm τ = 1± 5. 2 τ = b k+1 a k+1 b k a k = = Înlocuind valoarea lui τ în (3.4) şi (3.5) avem λ k = a k (b k a k ) µ k = a k (b k a k ). Deoarece rata de reducţie este fixă la fiecare iteraţie, τ = 0.618, considerând un interval iniţial [a 1, b 1 ], după k iteraţii lungimea intervalului este τ k 1 (b 1 a 1 ), ceea ce arată că rata de convergenţă a metodei secţiunii de aur este liniară Metoda lui Fibonacci În metoda lui Fibonacci principala diferentă faţă de metoda secţiunii de aur constă în definiţia legii de reducţie a intervalului de incertitudine în acord cu şirul lui Fibonacci. Cu alte cuvinte, rata de reducţie nu este fixă în această metodă, ci variază de la un interval la altul. Şirul lui Fibonacci F k este definit de următoarea lege: F 0 = F 1 = 1 F k+1 = F k +F k 1 k = 1,2,...

59 3.2. Metode de căutare 59 Dacă în (3.4) şi (3.5) înlocuim τ cu F k j F k j+1 atunci ( λ j = a j + 1 F ) k j (b j a j ) = a j + F k j 1 j = 1,...,k 1 F k j+1 F k j+1 µ j = a j + F k j F k j+1 (b j a j ) j = 1,,k 1. (3.8) Dacă f(λ j ) f(µ j ) atunci noul interval de incertitudine este dat de [a j+1, b j+1 ] = [a j, µ j ]. Astfel, prin (3.8) obţinem: b j+1 a j+1 = F k j F k j+1 (b j a j ), ceea ce arată reducţia la fiecare iteraţie. Poate fi uşor de observat că această ecuaţie este de asemenea valabilă pentru f(λ j ) > f(µ j ). Mai departe, impunem ca lungimea intervalului final de incertitudine să nu depăşească o toleranţă dată δ > 0, adică b k a k δ. Luând în considerare: b k a k = F 1 F 2 (b k 1 a k 1 ) = F 1 F 2 F 2 F 3 Fk 1 F k (b 1 a 1 ) = 1 F k (b 1 a 1 ), avem F k b 1 a 1. (3.9) δ De aceea, având intervalul iniţial [a 1, b 1 ] şi marginea superioară δ putem calcula numărul Fibonacci F k şi valoarea k din (3.9). Căutarea are loc până la iteraţia k. O observaţie importantă în legătură cu ratele de convergenţă ale metodelor studiate este că odată ce k metoda Fibonacci şi metoda secţiunii de aur au aceeaşi rată de reducere a intervalului de incertitudine. Considerând F k = r k, atunci din definiţia şirului Fibonacci avem r 2 r +1 = 0 cu rădăcinile: r 1 = ,r 2 = Soluţia generală a ecuaţiei F k+1 = F k +F k 1 este F k = Ar1 k + Brk 2. De aceea, din condiţiile iniţiale F 0 = F 1 = 1 avem A = 1/ 5, B = 1/ 5 şi F k = 1 5 ( 1+ ) k 5 ( 2 1 ) k 5 2.

60 60 Capitolul 3. Metode de optimizare unidimensională Cu aceste relaţii deducem că: F k 1 lim = k F k = τ. (3.10) De aceea, ambele metode împărtăşesc aceeaşi rată de convergenţă când k, însă metoda lui Fibonacci este optimă în clasa metodelor de căutare. 3.3 Metode de interpolare Metodele de interpolare pentru minimizare unidimensională sunt o alternativă foarte eficientă la metoda secţiunii de aur şi cea a lui Fibonacci. Cea mai importantă din această clasă de metode aproximează funcţia f cu un polinom de ordin doi sau trei, ce are valori identice cu derivatele funcţiei în anumite puncte şi în final, calculează valoarea α ce minimizează polinomul. În cazul general în care funcţia obiectiv prezintă proprietăţi analitice bune, cum ar fi diferenţiabilitatea continuă, atunci metodele de interpolare sunt cu mult superioare metodei secţiunii de aur şi celei a lui Fibonacci Metode de interpolare pătratică Metoda de interpolare în două puncte (prima variantă): Fie două puncte α 1 şi α 2. Presupunem cunoscute valorile funcţiei f în punctele corespunzătoare f(α 1 ) şi f(α 2 ) şi derivatele de ordinul I în aceleaşi puncte: f (α 1 ) şi f (α 2 ). Construim polinomul de interpolare de ordinul II: q(α) = aα 2 +bα+c, ce satisface următoarele condiţii: q(α 1 ) = aα 2 1 +bα 1 +c = f(α 1 ) q(α 2 ) = aα 2 2 +bα 2 +c = f(α 2 ) (3.11) q (α 1 ) = 2aα 1 +b = f (α 1 ). Dacă notăm f 1 = f(α 1 ), f 2 = f(α 2 ), f 1 = f (α 1 ) şi f 2 = f(α 2), atunci din (3.11) avem: a = f 1 f 2 f 1 (α 1 α 2 ) (α 1 α 2 ) 2

61 3.3. Metode de interpolare 61 b = f 1 +2α 1 f 1 f 2 f 1 (α 1 α 2 ) (α 1 α 2 ) 2. Mai departe, rezultă că punctul de minim al polinomului de interpolare este: ᾱ = b 2a = α f 1 (α 1 α 2 ) 2 2α 1 α 2 f 1(α 1 α 2 ) = α 1 1 f 1(α 1 α 2 ) 2 f 1 f 1 f 2. (3.12) α 1 α 2 Şi în final, obţinem formula de interpolare pătratică: α k+1 = α k 1 f k (α k α k 1 ) 2 f k f k f k 1, (3.13) α k α k 1 unde f k = f(α k ), f k 1 = f(α k 1 ) f k = f (α k ). Algoritmul este foarte simplu: cât timp α k+1 este determinat, se compară cu α k şi α k 1, rezultând o reducere a lungimii intervalului de incertitudine. Acest proces se repetă până când lungimea intervalului scade sub un anumit prag. Metoda de interpolare în două puncte (a doua variantă): Fie două puncte α 1 şi α 2, evaluările funcţiei f în punctele corespunzătoare f(α 1 )şi f(α 2 )şi derivatele de ordinul Iîn aceleaşi puncte f (α 1 )şi f (α 2 ). Construim polinomul de interpolare ce satisface următoarele condiţii: De aici se obţine: q(α) = aα 2 +bα+c, q(α 1 ) = aα 2 1 +bα 1 +c = f(α 1 ) q (α 1 ) = 2aα 1 +b = f (α 1 ) (3.14) q (α 2 ) = 2aα 2 +b = f (α 2 ). ᾱ = b 2a = α 1 1 α 1 α 2 f 2 f 1 f 2 1 (3.15)

62 62 Capitolul 3. Metode de optimizare unidimensională şi formula iterativă: α k+1 = α k 1 2 α k α k 1 f f k f k. (3.16) k 1 Teorema următoare ilustrează rata de convergenţă foarte rapidă a acestei metode: Teorema Dacă f: R R este de trei ori continuu diferenţiabilă şi există un α astfel încât f (α ) = 0 şi f (α ) 0, atunci şirul α k generat de iteraţia (3.16) converge la α cu rata (1 + 5)/2 = 1.618, α adică lim k+1 α = ρ cu ρ > 0. k α k α (1+ 5)/2 Demonstraţie: Relaţia(3.15) poate fi scrisă şi prin intermediul formulei de interpolare Lagrange: L(α) = (α α 1)f 2 (α α 2 )f 1 α 2 α 1, dacă luăm L(α) = 0. Acum, termenul rezidual al formulei de interpolare Lagrange se consideră ca fiind: f (α) L(α) = 1 2 f (ξ)(α α k )(α α k 1 ) cu ξ {α,α k 1,α k }. Dacă luăm α = α k+1 şi observând că L(α k+1 ) = 0, avem: f (α k+1 ) = 1 2 (α k+1 α k )(α k+1 α k 1 ) cu ξ {α k 1,α k,α k+1 }, (3.17) Înlocuind (3.16) in (3.17) avem: f (α k+1 ) = 1 2 f (ξ)f k (α k α k 1 ) 2 f k 1 (f. k f k 1 )2 Din teorema valorii medii ştim că: iar drept urmare: (f k f k 1 ) α k αk 1 = f (ξ 0 ) cu ξ 0 [α k 1, α k ], f i = f i f (α ) = (α i α )f (ξ i ), unde ξ i [α i, α ],i = k 1,k,k+1.

63 3.3. Metode de interpolare 63 Astfel, din ultimele trei ecuaţii rezultă: α k+1 α = 1 f (ξ)f (ξ k )f (ξ k 1 ) (α 2 f (ξ k+1 )f (ξ 0 ) 2 k α )(α k 1 α ). Dacă notăm distanţele de la α i la punctul optim α prin e i = α i α, cu i = k 1,k,k,+1 şi considerăm valorile m 1,M 1,m 2,M 2 şi K 1,K astfel încât Atunci: 0 < m 2 f (α) M 2, 0 < m 1 f (α) M 1 K 1 = m 2 m 2 1/(2M 3 1), K = M 2 M 2 1/(2m 3 1). K 1 e k e k 1 e k+1 Ke k e k 1. Observând că f (α) şi f (α) sunt continue în α, avem: α k+1 α (α k α )(α k 1 α ) 1 f (α ) 2 f (α ) şi obţinem următoarea relaţie între distanţele până la punctul de optim: e k+1 = Me k e k 1, unde M = f (η 1 )/2f (η 2 ), iar η 1 {α k 1,α k,α } şi η 2 {α k 1,α k }. Dacă există o precizie δ > 0 astfel încât punctele iniţiale α 0,α 1 (α δ, α +δ) şi α 0 α 1, atunci se poate observa din relaţiile anterioare că şirul α k va converge către α. Am demonstrat că α k converge la α şi ne mai rămâne să demonstrăm rata de convergenţă. În acest scop notăm ǫ i = Me i, y i = ln(ǫ i ), i = k 1,k,k+1, iar conform relaţiilor anterioare avem: ǫ k+1 = ǫ k ǫ k 1, y k+1 = y k +y k 1. (3.18) Este evident că ecuaţia (3.18) reprezintă o secvenţă Fibonacci. Ecuaţia caracteristică a secvenţei Fibonacci şi rădăcinile aferente sunt: r 2 r 1 = 0, r 1 = (1+ 5)/2,r 2 = (1 5)/2, Astfel, secvenţa Fibonacci y k poate fi scrisă ca: y k = Ar k 1 +Brk 2 k = 0,1,...,

64 64 Capitolul 3. Metode de optimizare unidimensională unde A şi B sunt coeficienţi ce pot fi determinaţi. Din moment ce progresăm cu algoritmul şi k atunci evident y k = ln(ǫ k ) At k 1, de unde rezultă că: şi e k+1 /e t 1 k M t 1 1, i.e: ǫ k+1 ǫ t 1 k şi demonstraţia este completă. e(at k+1 1 ) ( e (At k)) t 1 = 1 1 α k+1 α lim k α k α = t Mt Metoda de interpolare în trei puncte: Această metodă presupune cunoaşterea a trei puncte α i, i = 1,2,3şi de asemenea, evaluarea funcţiei f în aceste puncte. Condiţiile de interpolare sunt: q(α i ) = aα 2 i +bα i +c = f(α i ) = f i i = 1,2,3. (3.19) Rezolvând acest sistem avem: De aici rezultă: a = (α 2 α 3 )f 1 +(α 3 α 1 )f 2 +(α 1 α 2 )f 3 (α 1 α 2 )(α 2 α 3 )(α 3 α 1 ) b = (α2 2 α2 3 )f 1 +(α3 2 α2 1 )f 2 +(α1 2 α2 2 )f 3. (α 1 α 2 )(α 2 α 3 )(α 3 α 1 ) ᾱ = b 2a = 1 (α2 2 α3)f 2 1 +(α3 2 α1)f 2 2 +(α1 2 α2)f (α 2 α 3 )f 1 +(α 3 α 1 )f 2 +(α 1 α 2 )f 3 (3.20) = 1 2 (α 1 +α 2 )+ 1 (f 1 f 2 )(α 2 α 3 )(α 3 α 1 ) 2(α 2 α 3 )f 1 +(α 3 α 1 )f 2 +(α 1 α 2 )f 3 (3.21) şi formula iterativă: α k+1 = 1 2 (α k +α k 1 )+ (3.22) 1 (f k f k 1 )(α k 1 α k 2 )(α k 2 α k ). 2(α k 1 α k 2 )f k +(α k 2 α k )f k 1 +(α k α k 1 )f k 2 Metoda interpolării în trei puncte are următorii paşi:

65 3.3. Metode de interpolare 65 Pas 1. Fie o toleranţă dată ǫ. Găseşte un interval de căutare {α 1,α 2,α 3 } astfel încât să-l conţină pe α ; Calculează f(α i ), i = 1,2,3. Pas 2. Utilizează formula (3.20) pentru a calcula ᾱ. Pas 3. Dacă (ᾱ α 1 )(ᾱ α 3 ) 0, trecem la Pas 4.; altfel, trecem la Pas 5. Pas 4. Construim un nou interval de căutare {α 1,α 2,α 3 } utilizând α 1,α 2,α 3 şi ᾱ. Revenim la Pas 2. Pas 5. Dacă ᾱ α 2 < ǫ, ne oprim; altfel, trecem la Pas 4. Teorema Fie o funcţie f care este de cel puţin patru ori continuu diferenţiabilă şi α astfel încât f(α ) = 0 şi f (α ) 0. Atunci şirul {α k } generat de (3.22) converge la α cu rata de ordinul Observămcămetodacelortreipuncteareoratădeconvergenţămaimică decât cea a metodelor ce folosesc formula secantei. Explicaţia constă în faptul că metoda celor trei puncte nu foloseşte informaţie dată de derivatele funcţiei f în punctele intervalului de căutare. Cu alte cuvinte, metoda nu ţine cont de curbura funcţiei f. În general, implementările avansate folosesc informaţie de secantă Metode de interpolare cubică Aceste metode aproximează funcţia obiectiv f(α) cu un polinom cubic. Procedura de aproximare implică patru condiţii de interpolare. În cazul general, interpolarea cubică are o rată de convergenţă mai bună decât interpolarea pătratică, însă presupune evaluarea derivatelor funcţiei şi de aceea este mai costisitoare din punctul de vedere al complexităţii. Mai pe larg, fie două puncte α 1 şi α 2 pentru care cunoaştem valorile funcţieiobiectiv, f(α 1 )şif(α 2 )şideasemenea, derivatelef (α 1 )şif (α 2 ). Construim polinomul de interpolare cubică: p(α) = c 1 (α α 1 ) 3 +c 2 (α α 1 ) 2 +c 3 (α α 1 )+c 4, (3.23)

66 66 Capitolul 3. Metode de optimizare unidimensională unde c i, i = 1,2,3,4, sunt coeficienţii determinaţi din următoarele condiţii: p(α 1 ) = c 4 = f(α 1 ) p(α 2 ) = c 1 (α 2 α 1 ) 3 +c 2 (α 2 α 1 ) 2 +c 3 (α 2 α 1 )+c 4 = f(α 2 ) p (α 1 ) = c 3 = f (α 1 ) p (α 2 ) = 3c 1 (α 2 α 1 ) 2 +2c 2 (α 2 α 1 )+c 3 = f (α 2 ). După cum ştim, condiţiile de optimalitate suficiente sunt: p (α) = 3c 1 (α α 1 ) 2 +2c 2 (α α 1 )+c 3 = 0 (3.24) şi p (α) = 6c 1 (α α 1 )+2c 2 > 0. (3.25) Rezolvând (3.24) avem: α = α 1 + c 2 ± c 2 2 3c 1 c 3 3c 1, dacă c 1 0 (3.26) α = α 1 c 3 2c 2, dacă c 1 = 0. (3.27) Pentru a satisface (3.25) considerăm rădăcina corespunzătoare semnului + din (3.26), care împreună cu (3.27) conduce la: α α 1 = c 2 + c 2 2 3c 1 c 3 3c 1 = c 3 c 2 + c 2 3c 1 c 3. (3.28) În cazul în care c 1 = 0, (3.28) se transformă în (3.27). Atunci valoarea minimă a lui p(α) este: ᾱ = α 1 c 3 c 2 + c 2 2 3c 1c 3, (3.29) exprimată în funcţie de c 1, c 2 şi c 3. Problema se reduce la exprimarea sa în funcţie de f(α 1 ), f(α 2 ), f (α 2 ) şi f (α 2 ). Pentru aceasta notăm: s = 3 f(α 2) f(α 1 ) α 2 α 1,z = s f (α 1 ) f (α 2 ),w 2 = z 2 f (α 1 )f (α 2 ). Din condiţiile de interpolare avem: s = 3[c 1 (α 2 α 1 ) 2 +c 2 (α 2 α 1 )+c 3 ]

67 3.3. Metode de interpolare 67 Deci rezultă: şi z = c 2 (α 2 α 1 )+c 3 w 2 = (α 2 α 1 ) 2 (c 2 2 3c 1 c 3 ). (α 2 α 1 )c 2 = z c 3, w c 2 3c 1 c 3 = α 2 α 1 c 2 + c 2 2 3c 1 c 3 = z +w c 3 α 2 α 1. (3.30) Însă c 3 = f (α) şi substituind (3.30) în (3.29) avem relaţia ᾱ α 1 = (α 2 α 1 )f (α 1 ) z +w f (α 1 ), ce poate fi rescrisă în următoarea formă: ᾱ α 1 = (α 2 α 1 )f (α 1 )f (α 2 ) (z +w f (α 1 ))f (α 2 ) = (α 2 α 1 )(z 2 w 2 ) f (α 2 )(z +w) (z 2 w 2 ) = (α 2 α 1 )(w z) f (α 2 ) z +w. Această relaţie este lipsită de utilitate pentru calcularea lui ᾱ deoarece numitorul este foarte mic sau chiar se poate anula. De aceea, considerăm o formă alternativă favorabilă: sau ᾱ α 1 = (α 2 α 1 )f (α 1 ) z +w f (α 1 ) = (α 2 α 1 )(w z) f (α 2 ) z +w = (α 2 α 1 )( f (α 1 )+w z) f (α 2 ) f (α 1 )+2w ( = (α 2 α 1 ) 1 f (α 2 )+z +w f (α 2 ) f (α 1 )+2w ), (3.31) w f (α 1 ) z ᾱ = α 1 +(α 2 α 1 ) f (α 2 ) f (α 1 )+2w. (3.32) În (3.31) sau (3.32) numitorul f (α 2 ) f (α 1 ) + 2w 0. De fapt, din moment ce f (α 1 ) < 0 şi f (α 2 ) > 0, atunci w 2 = z 2 f (α 1 )f (α 2 ) > 0 şi dacă luăm w > 0, atunci f (α 2 ) f (α 1 )+2w > 0. Se poate arăta de asemenea că această metodă produce un şir α k ce converge cu rată de ordinul 2 la α α, adică lim k+1 α k α k = ρ cu ρ > 0. α 2

68 Capitolul 4 Condiţii de optimalitate pentru (UNLP) Multe probleme din inginerie, economie sau fizică se formulează ca probleme de optimizare fără constrângeri. Astfel de probleme apar în găsirea punctului de echilibru al unui sistem prin minimizarea energiei acestuia, potrivirea unei funcţii la un set de date folosind cele mai mici pătrate sau determinarea parametrilor unei distribuţii de probabilitate corespunzătoare unui set de date. Probleme de optimizare fără constrângeri apar de asemenea când constrângerile sunt eliminate sau mutate în cost prin folosirea unei funcţii de penalitate adecvate, după cum vom vedea în Partea a III-a a acestei lucrări. În concluzie, în această parte a lucrării ne concentrăm analiza asupra problemelor de optimizare neconstrânsă de forma: (UNLP) : min x Rnf(x). (4.1) În acest capitol discutăm condiţiile necesare şi suficiente de optimalitate pentru problema generală (UNLP) şi apoi particularizăm la cazul problemelor convexe, adică atunci când funcţia obiectiv f este convexă. Pentru o expunere mai uşoară presupunem că funcţia obiectiv f : R n R are domeniul efectiv domf R n mulţime deschisă. După cum am precizat şi în capitolele anterioare, în această lucrare considerăm extensia funcţiei f la întreg spaţiul R n atribuindu-i valoarea + în punctele din afara domeniului efectiv. De aceea, căutăm punctele de minim ce fac parte din mulţimea deschisă domf. Putem avea domf = R n, dar de cele mai multe ori nu este cazul, la fel ca în următorul exemplu unde considerăm domf = (0, ) şi presupunem că în afara mulţimii domf

69 funcţia ia valoarea + : 1 min x R x +x, Reamintim că un punct x se numeşte punct de minim global pentru problema (UNLP) precedentă dacă f(x ) f(x) pentru orice x domf. Mai, mult, f = f(x ) se numeşte valoarea optimă a problemei de optimizare (UNLP). De asemenea, x este punct de minim local dacă există un δ > 0 astfel încât f(x ) f(x) pentru orice x domf cu x x δ. 69 Figura 4.1: Funcţia Rosenbrock. Exemplul În optimizarea fără constrângeri o funcţie obiectiv des utilizată pentru a testa performanţa algoritmilor este funcţia Rosenbrock. Aceasta este o funcţie neconvexă având următoarea formă: f(x) = (1 x 1 ) (x 2 x 2 1 )2. Se poate observa uşor că punctul de minim global este x = [1 1] T unde funcţia ia valoarea optimă f = f(1,1) = 0. Acest punct de minim se găseşte într-o vale lungă dar îngustă (vezi Fig. 4.1), ceea ce face dificilă determinarea acestui punct de minim cu algoritmi numerici de optimizare.

70 70 Capitolul 4. Condiţii de optimalitate pentru (UNLP) Figura 4.2: Un sistem neliniar cu două resorturi. Exemplul Considerăm un sistem neliniar compus din două resorturi (Fig. 4.2). Dislocarea x 1 şi x 2 sub o anumită greutate aplicată poate fi obţinută prin minimizarea energiei potenţiale dată de expresia: f(x 1,x 2 ) = 1 2 k 1E 2 1 (x 1,x 2 )+ 1 2 k 2E 2 2 (x 1,x 2 ) F 1 x 1 F 2 x 2, în care extensiile resorturilor ca funcţie de dislocările lor au următoarele expresii: E 1 (x 1,x 2 ) = (x 1 +10) 2 +(x 2 10) E 2 (x 1,x 2 ) = (x 1 10) 2 +(x 2 10) Problema se reduce la a găsi (x 1,x 2 ) ce minimizează min x R 2f(x 1,x 2 ). Folosind tehnici numerice de optimizare ce vor fi discutate în capitolele următoare, obţinem că pentru k 1 = k 2 = 1 şi F 1 = 0,F 2 = 2, soluţia optimă este x 1 = 0 şi x 2 = Condiţii de ordinul I pentru (UNLP) Mai întâi definim noţiunea de direcţie de descreştere. O direcţie d R n se numeşte direcţie de descreştere pentru funcţia f C 1 în punctul x domf dacă f(x) T d < 0.

71 4.1. Condiţii de ordinul I pentru (UNLP) x 2 3 d f x Figura 4.3: Mulţimile nivel (contururile) şi o direcţie de descreştere pentru funcţia f(x) = x 3 1 2x 1x 2 2. De exemplu, o direcţie de descreştere este dată de următoarea expresie: d = B f(x), unde matricea B este pozitiv definită, adică B 0 (vezi Fig. 4.3). Avem următoarea interpretare: dacă d este direcţie de descreştere în x domf atunci funcţia obiectiv descreşte în vecinătatea lui x. Într-adevăr, mulţimea domf fiind deschisă, putem găsi un t > 0 suficient de mic astfel încât oricare ar fi τ [0, t] avem x+τd domf şi f(x+τd) T d < 0 (datorită continuităţii lui f( ) într-o vecinătate a lui x). Din teorema lui Taylor, există un θ [0, t] astfel încât f(x+td) = f(x)+t f(x +θd) T d < f(x). }{{} <0 Teorema (Condiţii necesare de ordinul I) Fie f o funcţie diferenţiabilă cu gradientul continuu (i.e. f C 1 ) şi x domf un punct de minim local al problemei de optimizare (UNLP). Atunci gradientul funcţiei satisface relaţia: f(x ) = 0. (4.2) Demonstraţie: Presupunem prin contradicţie că f(x ) 0. Atunci putem arăta că d = f(x ) este o direcţie de descreştere, i.e. funcţia obiectiv poate lua o valoare mai mică în jurul lui x. Într-adevăr, putem găsi un t > 0 suficient de mic astfel încât oricare ar fi τ [0, t] avem

72 72 Capitolul 4. Condiţii de optimalitate pentru (UNLP) f(x +τd) T d = f(x τ f(x )) T f(x ) < 0. Mai mult, există un θ [0, t] ce satisface: f(x t f(x )) = f(x ) t f(x +θ f(x )) T f(x ) < f(x ). Aceasta este ocontradicţie cuipoteza că x este un punct de minim local. Figura 4.4: Exemple de puncte staţionare. Orice punct x domf ce satisface condiţiile necesare de ordinul întâi f(x ) = 0 se numeşte punct staţionar al problemei de optimizare fără constrângeri (UNLP). În Fig. 4.4 distingem mai multe tipuri de puncte staţionare: puncte de minim, puncte de maxim şi puncte şa. Din condiţiile necesare de ordinul I concluzionăm că pentru a găsi punctele staţionare ale unei probleme (UNLP) trebuie să rezolvăm un sistem neliniar f(x) = 0 de n ecuaţii cu n necunoscute. Acest sistem va fi rezolvat în capitolele următoare cu metode numerice (algoritmi iterativi). Exemplul Considerăm problema de optimizare (vezi Fig. 4.3) min f(x) (= x3 x R 2 1 2x 1 x 2 2). Pentru a găsi punctele staţionare rezolvăm sistemul neliniar de două ecuaţii f(x) = 0, i.e.: 3x 2 1 2x2 2 = 0 şi 4x 1x 2 = 0.

73 4.2. Condiţii de ordinul II pentru (UNLP) 73 Singura soluţie a acestui sistem este x 1 = 0 şi x 2 = 0. Soluţia x = [0 0] T nu este punct de minim sau maxim, este punct şa pentru funcţia f(x) = x 3 1 2x 1x 2 2. Într-adevăr, dacă luăm x 1 = x 2 observăm că funcţia obiectiv evaluată în f(x 1,x 1 ) = x 3 1 poate lua atât valori pozitive cât şi valori negative în orice vecinătate a lui Condiţii de ordinul II pentru (UNLP) Pentru a arăta că un punct staţionar este punct de extrem (minim sau maxim local) trebuie să folosim informaţie despre Hessiana funcţiei obiectiv. În cele ce urmează dăm condiţii necesare şi suficiente pentru caracterizarea punctelor de minim local utilizând Hessiana. Teorema (Condiţii necesare de ordinul II) Fie f o funcţie diferenţiabilă de două ori cu Hessiana continuă (i.e. f C 2 ) şi x domf un punct de minim local al problemei (UNLP). Atunci Hessiana în x este pozitiv semidefinită, i.e.: 2 f(x ) 0. (4.3) Demonstraţie: Dacă condiţia (4.3) nu este satisfacută, atunci există o direcţie d R n astfel încât d T 2 f(x )d < 0. Atunci, datorită continuităţii lui 2 f( ) înjurul lui x putem alege un parametru suficient de mic t > 0 astfel încât oricare ar fi τ [0, t] următoarea relaţie are loc: d T 2 f(x +τd)d < 0. Din teorema lui Taylor rezultă că există un θ [0, t] astfel încât: f(x +td) = f(x )+t f(x ) T d+ 1 }{{} 2 t2 d T 2 f(x +θd)d < f(x ), }{{} =0 <0 ceea ce intră în contradicţie cu faptul că x este un punct de minim local. Condiţia necesară de ordinul II (4.3) nu este suficientă pentru ca un punct staţionar x să fie punct de minim. Acest lucru este ilustrat de funcţia f(x) = x 3 pentru care punctul staţionar x = 0 satisface condiţiile necesare de ordinul doi, dar nu este punct de minim/maxim local. Observăm că x = 0 este punct şa. În secţiunea următoare enunţăm condiţiile suficiente de optimalitate.

74 74 Capitolul 4. Condiţii de optimalitate pentru (UNLP) Teorema (Condiţii suficiente de ordinul II) Fie f o funcţie diferenţiabilă de două ori cu Hessiana continuă (i.e. f C 2 ) şi x domf un punct staţionar (i.e. f(x ) = 0) astfel încât Hessiana este pozitiv definită (i.e. 2 f(x ) 0). Atunci x este un punct strict de minim local al problemei (UNLP). Demonstraţie: Fie λ min valoarea proprie minimă a matricei 2 f(x ). Evident, λ min > 0 din moment ce este satisfacută relaţia 2 f(x ) 0 şi mai mult, d T 2 f(x )d λ min d 2 d R n. Din aproximarea Taylor avem: f(x +d) f(x ) = f(x ) T d+ 1 2 dt 2 f(x )d+r( d 2 ) λ min 2 d 2 +R( d 2 ) = ( λmin 2 + R( d 2 ) d 2 ) d 2. Ştiind că λ min > 0 atunci există ǫ > 0 şi δ > 0 astfel încât λ min+ R( d 2 ) 2 d 2 δ pentru orice d ǫ, ceea ce conduce la concluzia că x este un punct strict de minim local. Exemplul Considerăm următoarea problemă de optimizare min x R 2f(x) (= x3 1 x 2 1x 2 +2x 2 2). Punctele staţionare sunt soluţiile sistemului neliniar f(x) = 0, i.e.: 3x 2 1 2x 1x 2 = 0 şi x x 2 = 0. Acest sistem are două soluţii [0 0] T şi [6 9] T. Hessiana are expresia: 2 f(x) = [ ] 6x1 2x 2 2x 1. 2x 1 4 Această matrice este pozitiv semidefinită în [0 0] T şi indefinită în [6 9] T. În concluzie, punctul staţionar [6 9] T nu este punct de extrem (minim sau maximm local).

75 4.3. Condiţii de optimalitate pentru probleme convexe Condiţii de optimalitate pentru probleme convexe În acest subcapitol discutăm condiţiile suficiente de optimalitate în cazul convex, adică funcţia obiectiv f în problema de optimizare (UNLP) este convexă. Primul rezultat se referă la următoarea problemă de optimizare constrânsă: Teorema (Condiţii de optimalitate generale) Fie o mulţime convexă X şi funcţia f C 1 (nu neapărat convexă). Pentru problema de optimizare constrânsă min x X f(x) următoarele condiţii sunt satisfăcute: (i) dacă x este minim local, atunci f(x ) T (x x ) 0 x X; (ii) dacă f este funcţie convexă, atunci x este punct de minim dacă şi numai dacă f(x ) T (x x ) 0 x X. Demonstraţie: (i) Presupunem că există un y X astfel încât f(x ) T (y x ) < 0. Din teorema lui Taylor rezultă că pentru un t > 0 există un θ [0, 1] astfel încât: f(x +t(y x )) = f(x )+t f(x +θt(y x )) T (y x ). Din continuitatea lui f, alegând un t suficient de mic avem f(x + θt(y x )) T (y x ) < 0 şi de aceea f(x +t(y x )) < f(x ) care este în contradicţie cu faptul că x este minim local al problemei de optimizare cu constrângeri din enunţul teoremei. (ii) Dacă f este convexă, utilizând condiţiile de convexitate de ordinul întâi avem: f(x) f(x )+ f(x ) T (x x ) pentru orice x X. Întrucât f(x )(x x ) 0 rezultă că f(x) f(x ) pentru orice x X, adică x este punct de minim global. Teorema Pentru o problemă de optimizare convexă min x X f(x) (adică X este mulţime convexă şi f funcţie convexă), orice minim local este de asemenea minim global.

76 76 Capitolul 4. Condiţii de optimalitate pentru (UNLP) Demonstraţie: Fie x un minim local pentru problema de optimizare convexă precedentă. Arătăm că pentru orice punct y X dat avem f(y) f(x ). Într-adevăr, întrucât x este minim local, există o vecinătate N a lui x astfel încât pentru orice x X N avem f( x) f(x ). Considerând segmentul cu capetele în x şi y. Acest segment este conţinut în X datorită proprietăţii de convexitate a lui X. Mai departe, alegem un x pe acest segment în vecinătatea N, însă diferit de x, adică alegem x = x + t(y x ), unde t (0, 1) astfel încât x X N. Datorită optimalităţii locale, avem f(x ) f( x), şi datorită convexităţii lui f avem: f( x) = f(x +t(y x )) f(x )+t(f(y) f(x )). Rezultă că t(f(y) f(x )) 0, implicând f(y) f(x ) 0 ceea ce conduce la concluzia că x este punct de minim global. Teorema (Condiţii suficiente de ordinul întâi pentru cazul convex) Fie f C 1 o funcţie convexă. Dacă x este punct staţionar al lui f (i.e. f(x ) = 0), atunci x este punct de minim global al problemei de optimizare convexe fără constrângeri min x R nf(x). Demonstraţie: Întrucât f este convexă avem: f(x) f(x )+ f(x )(x x ) = f(x ) x R n }{{} =0 ceea ce arată că x este minim global. În concluzie, pentru o problemă de optimizare neconstrânsă min x R nf(x), unde f C 1, o condiţie necesară pentru ca punctul x să fie punct de extrem local este: f(x ) = 0. (4.4) În general, dacă funcţia obiectiv nu este convexă, se rezolvă sistemul neliniar de ecuaţii f(x ) = 0 şi se verifică dacă soluţia este punct de minim local sau nu, folosind condiţiile de optimalitate suficiente de ordinul doi. Pentru problemele convexe neconstrânse, adică f este convexă, o condiţie necesară şi suficientă pentru ca punctul x să fie minim global este dată de relaţia f(x ) = 0.

77 4.4. Analiza perturbaţiilor Analiza perturbaţiilor În domeniile numerice ale matematicii nu există posibilitatea de a evalua o funcţie cu o precizie mai mare decât cea oferită de maşinile de calcul. De aceea, de cele mai multe ori se calculează doar soluţii pentru probleme ale căror date sunt perturbate, iar interesul se îndreaptă către minimele stabile la apariţia perturbaţiilor. Acesta este cazul punctelor de minim strict locale ce satisfac condiţiile suficiente de ordinul doi. Considerăm funcţii obiectiv de forma f(x,a) ce depind nu doar de variabiladedeciziex R n, darşi deunparametru de perturbaţie a R m. Suntem interesaţi de familia parametrică de probleme: min x R nf(x,a) ce produce minime de forma x (a) ce depind de parametrul a. Teorema (Stabilitatea soluţiilor parametrice) Presupunem că funcţia f : R n R m R este de clasă C 2 şi considerăm minimizarea funcţiei f(, ā) pentru o valoare fixată a parametrului ā R m. Dacă punctul de minim corespunzător x satisface condiţiile suficiente de ordinul doi, i.e. x f( x,ā) = 0 şi 2 xf( x,ā) 0, atunci există o vecinătate N R m în jurul lui ā astfel încât funcţia parametrică de minim x (a) este bine definită pentru orice a N, este diferenţiabilă pe N şi x (ā) = x. Derivata sa în punctul ā este dată de: (x (ā)) a = ( ( ) xf( x,ā)) 1. 2 x a f( x,ā) (4.5) Mai mult, fiecare x (a) cu a N satisface condiţiile suficiente de ordinul doi şi deci este un punct de minim strict local. Demonstraţie: Existenţa funcţiei diferenţiabile x : N R n rezultă din teorema funcţiilor implicite (dată în Apendice) aplicată condiţiei de staţionaritate x f(x (ā),ā) = 0. Pentru derivarea ecuaţiei (4.5) se folosesc regulile standard de diferenţiere: 0 = ( xf(x (a),a)) a = x (a) a ( xf(x (a),a)) x } {{ } = 2 xf + ( xf(x (a),a)). a

78 78 Capitolul 4. Condiţii de optimalitate pentru (UNLP) Pentru a arăta că punctele de minim x (a) satisfac condiţiile suficiente de ordinul doi, se observă că Hessiana este continuă şi se ţine seama de faptul că 2 x f( x,ā) 0. O analiză extinsă a senzitivităţii soluţiilor la perturbaţii şi o prezentare detaliată a teoriei optimizării parametrice se poate găsi în [6].

79 Capitolul 5 Convergenţa metodelor de descreştere În Capitolul 4 s-a demonstrat că pentru aflarea unui punct de minim local/global corespunzător unei probleme de optimizare neconstrânsă: (UNLP) : f = min x Rnf(x), (5.1) este nevoie de rezolvarea unui sistem neliniar de n ecuaţii cu n necunoscute: f(x) = 0. În unele cazuri acest sistem poate fi rezolvat analitic: Exemplul (QP neconstrâns) Considerăm următoarea problemă de tip QP neconstrânsă: min x R nf(x) ( = 1 ) 2 xt Qx q T x, (5.2) unde matricea Q este inversabilă (de exemplu, dacă Q 0 atunci funcţia obiectiv este convexă şi deci problema de optimizare este convexă). Din condiţia 0 = f(x) = Qx q, unicul punct staţionar este x = Q 1 q. Dacă Q 0, atunci x = Q 1 q este punct de minim global şi valoarea optimă a problemei (5.2) este dată de următoarea expresie: f = min x R n 1 2 xt Qx q T x = 1 2 qt Q 1 q.

80 80 Capitolul 5. Convergenţa metodelor de descreştere Cu toate acestea, în majoritatea cazurilor f(x) = 0 este un sistem de ecuaţii neliniare ce nu poate fi rezolvat analitic, ci este nevoie de metode iterative pentru rezolvarea lui. Cea mai mare parte a acestei lucrări este dedicată prezentării şi analizei diferiţilor algoritmi pentru rezolvarea problemelor de optimizare (UNLP) sau a sistemului neliniar f(x) = 0. Toţi algoritmii prezentaţi în această lucrare sunt iterativi. Prin iterativ înţelegem că aceşti algoritmi generează un şir de puncte, fiecare punct fiind calculat pe baza punctelor găsite anterior. De asemenea, majoritatea algoritmilor sunt de descreştere, adică în fiecare punct nou generat de către algoritm valoarea funcţiei obiectiv este mai mică decât în punctul generat anterior. În cele mai multe cazuri, vom arăta că şirul de puncte generate în acest mod de către algoritm converge într-un număr finit sau infinit de paşi la o soluţie a problemei originale. Un algoritm iterativ porneşte de la un punct iniţial. Dacă pentru orice punct iniţial putem garanta că algoritmul produce un şir de puncte convergente la o soluţie, atunci pentru acel algoritm spunem că este convergent global. În multe situaţii, algoritmii dezvoltaţi nu pot garanta convergenţa globală şi numai iniţializaţi în apropierea unui punct de optim vor produce un şir de puncte convergente la acel punct de optim. Atunci spunem că algoritmul este convergent local. În general, convergenţa algoritmilor de optimizare poate fi tratată printr-o analiză a unei teorii generale a algoritmilor dezvoltată în anii 1960 de Zangwill. Vom prezenta această teorie în cele ce urmează. 5.1 Metode numerice de optimizare Considerăm problema de optimizare fără constrângeri (5.1). Există diferite metode iterative pentru rezolvarea unei astfel de probleme, iar în capitolele următoare vom discuta despre cele mai importante dintre ele. Presupunem că o problemă de optimizare aparţine unei anumite clase de probleme F. În general, o metodă numerică este dezvoltată în scopul rezolvării diferitelor probleme ce împărtăşesc caracteristici similare (e.g. continuitate, convexitate, etc.). Datele cunoscute din structura problemei se regăsesc sub numele de model (i.e. formularea problemei, funcţiile ce descriu problema, etc.). Pentru rezolvarea problemei, o metodă numerică va trebui să colecteze informaţia specifică, iar procesul de colectare a datelor se realizează cu ajutorul unui oracol (i.e. unitate de calcul ce returnează date sub forma unor răspunsuri la

81 5.1. Metode numerice de optimizare 81 întrebări succesive din partea metodei). În concluzie, metoda numerică rezolvă problema prin colectarea datelor şi manipularea răspunsurilor oracolului. Există diferite tipuri de oracole: 0. oracole de ordinul zero O 0 ce furnizează informaţie bazată doar pe evaluarea funcţiei obiectiv, i.e. f(x); 1. oracole de ordinul întâi O 1 ce furnizează informaţie bazată pe evaluarea funcţiei şi gradientului său, i.e. f(x) şi f(x); 2. oracole de ordinul doi O 2 ce furnizează informaţie bazată pe evaluarea funcţiei, gradientului şi Hessianei, i.e. f(x), f(x) şi 2 f(x). Eficienţa unei metode numerice constă în efortul numeric necesar metodei pentru rezolvarea unei anumite clase de probleme. Rezolvarea unei probleme, în unele cazuri, constă în aflarea unei soluţii exacte, însă în cele mai multe dintre cazuri este posibilă doar aproximarea soluţiei. De aceea, pentru rezolvare este suficientă aflarea unei soluţii aproximative cu o acurateţe prestabilită ǫ. În general, această acurateţe reprezintă de asemenea criteriul de oprire pentru metoda numerică aleasă. Pentru cazul particular al problemelor de optimizare neconstrânse (UNLP), adică (5.1), criteriul de oprire în general utilizat este următorul: f(x) ǫ. Pe lângă acest criteriu, se mai foloseşte şi criteriul referitor la apropierea valorii funcţiei de minimizat faţă de valoarea sa optimă: f(x) f ǫ. Anumite implementări utilizează şi alte criterii de oprire a iteraţiilor, cum ar fi de exemplu distanţa dintre estimaţiile variabilelor: x k+1 x k ǫ. Schema generală a unui algoritm numeric de optimizare iterativ constă în următorii paşi: O metodă generică de optimizare numerică: 1. se începe cu un punct iniţial dat x 0, acurateţea ǫ > 0 şi contorul k = 0;

82 82 Capitolul 5. Convergenţa metodelor de descreştere 2. la pasul k notăm cu I k mulţimea ce conţine toată informaţia acumulată de la oracol până la iteraţia k: 2.1 se apelează oracolul O în punctul x k ; 2.2 se actualizează informaţia I k+1 = I k O(x k ); 2.3 se aplică regulile metodei numerice folosind ultimele informaţii I k+1 pentru calculul următorului punct x k+1 ; 3. se verifică criteriul de oprire; dacă criteriul de oprire nu este satisfăcut, se repetă pasul 2. Complexitatea unei metode numerice poate fi exprimată în următoarele forme: (i) complexitate analitică, dată de numărul total de apeluri ale oracolului; (ii) complexitate aritmetică, dată de numărul total de operaţii aritmetice. Rata de convergenţă se referă la viteza cu care şirul x k se apropie de soluţie x. Ordinul de convergenţă este cel mai mare număr pozitiv q ce satisface următoarea relaţie: 0 lim k x k+1 x x k x q <, în care precizăm că limita superioară a unui şir z k sup lim este definită de: lim z k = lim y n, unde y n = supz k. k n Presupunând că limita şirului x k există, atunci q indică comportamentul şirului. Când q este mare, atunci rata de convergenţă este mare, deoarece distanţa până la x este redusă cu q zecimale într-un singur pas: x k+1 x β x k x q. k n Convergenţă liniară: dacă există β (0, 1) şi q = 1 astfel încât x k+1 x β x k x şi deci x k x cβ k, unde c = x 0 x. De exemplu, şirul x k = β k, unde β (0, 1), converge liniar la x = 0.

83 5.1. Metode numerice de optimizare 83 x k+1 x Convergenţă superliniară: dacă lim k x k x q = 1, sau echivalent = 0, aici de asemenea x k+1 x β k x k x cu β k 0. De exemplu, şirul x k = 1 k! converge superliniar la x = 0, întrucât x k+1 1. k+1 x k = x k+1 x Convergenţă pătratică: dacă lim = β, unde β (0, ) si k x k x 2 q = 2, sau echivalent x k+1 x β x k x 2. De exemplu şirul x k = 1 converge pătratic la x = 0, deoarece 2 2k x k+1 (x k = 22 k+1 ) 2 = 1 <. Pentru k = 6, x k = 1 0, de aceea, în (2 2k ) practică, convergenţa la acurateţea maşinii de calcul se realizează după aproximativ şase iteraţii. Întâlnim adesea şi convergenţă subliniară definită astfel: x k x β k q, unde q > 0. R-convergenţă: Dacă şirul de norme x k x este mărginit superior de şirul y k 0, adică x k x y k şi dacă y k converge cu o rată dată, i.e. liniară, superliniară sau pătratică, atunci x k converge R- liniar, R-superliniar saur-pătratic lax. Aici, R indicăroot, deoarece convergenţa R-liniară poate fi de asemenea definită prin criteriul rădăcinii lim k k x k x < 1. Exemplul Considerăm şirul de numere reale convergent la zero: { 1 dacă k este par x k = 2 k 0 altfel. Acest şir are o convergenţă R-liniară, dar nu regulată ca a unui şir ce converge liniar. Remarca Cele trei convergenţe şi ratele de R-convergenţă corespunzătoare satisfac anumite relaţii între ele. În continuare, X Y

84 84 Capitolul 5. Convergenţa metodelor de descreştere are semnificaţia: dacă şirul converge cu rata X, atunci aceasta implică că şirul de asemenea converge cu rata Y. patratic superliniar liniar R patratic R superliniar R liniar Se observă că rata pătratică asigură cea mai rapidă convergenţă. 5.2 Convergenţa metodelor numerice Considerând spaţiul metric (X, ρ), o metodă numerică poate fi privită ca o aplicaţie punct-mulţime M : X 2 X, definită de x k+1 M(x k ). Modul cum se alege x k+1 M(x k ) este dat de metoda dezvoltată. Cu toate acestea, o metodă numerică nu este un proces aleatoriu deoarece aceasta generează acelaşi şir x k când se porneşte din acelaşi punct iniţial x 0. Definiţia metodei în această manieră oferă posibilitatea analizării ei cu instrumente matematice mai laborioase. Exemplul Considerăm următoarea aplicaţie punct-mulţime [ x k+1 x ] k n, x k, n pentru care o instanţă particulară este definită de un punct iniţial x 0 şi iteraţia x k+1 = x k n. Definiţia Fie spaţiul metric (X, ρ), o submulţime S X şi o metodă descrisă de aplicaţia punct-mulţime M : X 2 X. Definim funcţia descrescătoare φ : X R pentru perechea (S,M), o funcţie ce satisface următoarele condiţii: (i) pentru orice x S şi y M(x) avem φ(y) φ(x); (ii) pentru orice x S şi y M(x) avem φ(y) < φ(x). Exemplul Fie problema de optimizare min x X f(x), unde X este o mulţime convexă şi f este o funcţie diferenţiabilă. Definim S = {x R n : f(x ),x x 0 x X} mulţimea punctelor staţionare (adică mulţimea tuturor soluţiilor posibile minime locale, maxime locale, puncte şa). Se observă de asemenea că în general alegem φ = f, adică metoda alege x k+1 astfel încât f(x k+1 ) f(x k ).

85 5.3. Metode de descreştere 85 Definiţia O aplicaţie punct-mulţime M : X 2 X este închisă în punctul x 0 dacă pentru orice două şiruri x k x 0 şi y k y 0 cu y k M(x k ), avem y 0 M(x 0 ). Aplicaţia M este închisă dacă este închisă în toate punctele din X. Teorema (Teorema de convergenţa generală) Fie o metodă numerică M pe spaţiul metric (X,ρ), şirul x k+1 M(x k ), iar S mulţimea soluţiilor. Presupunem următoarele condiţii satisfăcute: (i) şirul x k se află într-o mulţime compactă; (ii) M este o aplicaţie punct-mulţime închisă pe X\S; (iii) există o funcţie continuă φ decrescătoare pentru perechea (M, S). Atunci toate punctele limită ale şirului x k aparţin mulţimii S. 5.3 Metode de descreştere În continuare, considerăm o metodă iterativă de optimizare de forma: x k+1 = x k +α k d k, în care presupunem că d k este o direcţie de descreştere pentru f în x k, iar α k (0, 1] este lungimea pasului (vezi Fig. 5.1). Precizăm că dacă d k este o direcţie de descreştere pentru f în x k atunci există α k > 0 suficient de mic astfel încât f(x k+1 ) < f(x k ). În cele ce urmează vom analiza felul cum putem alege pasul α k şi direcţia de descreştere d k astfel încât metoda respectivă să producă un şir de puncte convergente la un punct staţionar al problemei (UNLP) Strategii de alegere a lungimii pasului Prezentăm în această secţiune cele mai des întâlnite proceduri de alegere a lungimii pasului α k (0, 1]. Ideea de bază constă în alegerea adecvată a pasului α k astfel încât să garantăm o descreştere suficientă în funcţia obiectiv, adică f(x k+1 ) < f(x k ), şi în acelaşi timp să şi facem avans sensibil către soluţia problemei, adică lim k x k = x. Încalcularealungimii pasului trebuie să facem un compromis între o reducere substanţială a funcţiei obiectiv f şi calculul numeric necesar determinării pasului.

86 86 Capitolul 5. Convergenţa metodelor de descreştere d x 2 x+α d x f(x) x 1 Figura 5.1: Metoda direcţiilor de descreştere. În cazul ideal alegem lungimea pasului după următoarea relaţie: α k = arg min 0 α 1 φ(α) (= f(x k +αd k )). După cum am menţionat, există diferite metode eficiente pentru determinarea unui punct de optim al unei probleme de optimizare unidimensională. În cele ce urmează numim această procedură metoda ideală de alegere a lungimii pasului. Cu toate acestea, în multe situaţii problema de optimizare unidimensională corespunzătoare alegerii ideale a lungimii pasului este foarte dificil de rezolvat. De aceea, alte modalităţi de alegere a lungimii pasului α k au fost dezvoltate, iar printre acestea cea mai cunoscută este definită de condiţiile Wolfe: se caută α k astfel încât următoarele două condiţii sunt satisfăcute (vezi Fig. 5.2) (W1) f(x k +α k d k ) f(x k )+c 1 α k f(x k ) T d k, unde c 1 (0, 1) (W2) f(x k +α k d k ) T d k c 2 f(x k ) T d k, unde 0 < c 1 < c 2 < 1. În general, condiţia (W1) de una singură nu este suficientă pentru a garanta că algoritmul de optimizare face un progres rezonabil de-a lungul direcţiei de căutare. Însă dacă lungimea pasului se alege în mod

87 5.3. Metode de descreştere 87 φ(α)=f(x k +α d k ) Conditiile Wolfe: panta dorita: c 2 f(x k ) T d k f(x k +α k d k ) f(x k )+c 1 α k f(x k ) T d k f(x k +α k d k ) T d k c 2 f(x k ) T d k 0<c 1 <c 2 <1 f(x k )+c 1 α f(x k ) T d k α acceptabil α Figura 5.2: Condiţiile Wolfe. adecvat astfel încât să nu fie prea scurt, condiţia (W1) este suficientă. De aceea, definim o a treia posibilitate de căutare a pasului α k, mai puţin costisitoare decât primele două metode prezentate anterior, care se bazează pe backtracking: 0. se alege α > 0 şi ρ,c 1 (0, 1) 1. cât timp se actualizează α = ρα 2. ieşirea: α k = α. f(x k +αd k ) > f(x k )+c 1 α k f(x k ) T d k În general, se consideră valoarea iniţială α = 1, dar în alte cazuri această valoare trebuie aleasă cu grijă. Se observă că prin tehnica backtracking putemgăsiα k într-unnumărfinitdepaşi. Maimult, α k găsitprinaceastă metodănuestepreamicîntrucâtα k areovaloareapropiatăde α k ρ,valoare respinsă la iteraţia precedentă datorită faptului că inegalitatea (W1) nu avea loc deoarece pasul era prea lung Convergenţa metodelor de descreştere În această secţiune analizăm convergenţa globală a metodelor de descreştere.

88 88 Capitolul 5. Convergenţa metodelor de descreştere Teorema (Convergenţa metodelor de descreştere) Fie problema de optimizare fără constrângeri min x Rnf(x), unde f C1 este funcţie mărginită inferior şi gradientul f este Lipschitz continuu. Considerăm metoda iterativă x k+1 = x k + α k d k, unde d k este o direcţie de descreştere pentru orice k 0 şi pasul α k este ales astfel încât cele două condiţii Wolfe (W1)-(W2) sunt satisfăcute. Atunci cos 2 θ k f(x k ) 2 <, k=0 unde θ k este unghiul făcut de direcţia d k cu gradientul f(x k ). Demonstraţie: Din condiţia Wolfe (W2) avem: ( f(x k+1 ) f(x k )) T d k (c 2 1) f(x k ) T d k. Utilizând inegalitatea Cauchy-Schwartz obţinem: f(x k+1 ) f(x k ) d k (c 2 1) f(x k ) T d k. Mai departe, din proprietatea de Lipschitz a gradientului avem că există constanta Lipschitz L > 0 astfel încât are loc următoarea inegalitate: f(x k+1 ) f(x k ) L x k+1 x k = Lα k d k care, înlocuită în relaţia anterioară conduce la adică: Lα k d k 2 (c 2 1) f(x k ) T d k α k c 2 1 L f(x k) T d k d k 2. Pe de altă parte, din condiţia Wolfe (W1) avem: f(x k+1 ) f(x k )+c 1 ( f(x k ) T d k ) 2 d k 2 c2 1 L ce conduce la: f(x k+1 ) f(x k ) c 1 1 c 2 L ( f(x k) T d k ) 2 f(x k ) 2 d k 2 f(x k ) 2.

89 5.3. Metode de descreştere 89 În concluzie, notând c = c 1 1 c 2 L obţinem: f(x k+1 ) f(x k ) ccos 2 θ k f(x k ) 2 şi deci însumând aceste inegalităţi de la k = 0,...,N 1 avem: N 1 f(x N ) f(x 0 ) c cos 2 θ j f(x j ) 2. j=0 Întrucât f este marginită inferior, pentru N cos 2 θ k f(x k ) 2 <. k=0 Se observă de asemenea că şirul cos 2 θ k f(x k ) 2 0. Dacă în metoda direcţiilor de descreştere alegem direcţia d k astfel încât θ k [ π + δ, 3π δ], cu δ > 0 pentru orice k 0, atunci 2 2 cos2 θ k 0 şi deci f(x k ) 0, adică şirul x k converge la un punct staţionar al problemei de optimizare (UNLP).

90 Capitolul 6 Metode de ordinul I pentru (UNLP) În acest capitol prezentăm metodele numerice de optimizare de ordinul întâi (i.e. metode bazate pe informaţia provenită din evaluarea funcţiei şi a gradientului său) pentru rezolvarea problemei neconstrânse de optimizare: (UNLP) : f = min x R nf(x), unde presupunem că funcţia obiectiv f C 1. În particular, ne concentrăm pe două metode clasice: metoda gradient şi metoda direcţiilor conjugate. În general, orice metodă de minimizare a funcţiilor diferenţia- bile îşi are originea în metoda gradient. Aceasta are caracteristici care sunt de dorit în cadrul oricărui algoritm de optimizare, cum ar fi simplitatea ei şi memoria utilizată foarte redusă (această metodă presupune o singură evaluare a gradientului funcţiei la fiecare iteraţie şi constă doar în operaţii cu vectori). Din aceste considerente, de cele mai multe ori noii algoritmi dezvoltaţi încearcă să modifice această metodă în aşa fel încât să posede rate de convergenţă superioare. De aceea, prezentarea şi studiul metodei gradient constituie o cale ideală de ilustrare a metodelor moderne de minimizare fără restricţii. O altă metodă importantă care foloseşte numai informaţia de gradient este metoda direcţiilor conjugate. Această metodă este de asemenea foarte simplă, bazându-se pe modificarea (devierea) direcţiei antigradientului cu direcţia precedentă şi, totodată, cere memorie redusă (de exemplu, în anumite implementări discutate în acest capitol este nevoie doar de memorarea a trei vectori).

91 6.1. Metoda gradient Metoda gradient Metoda gradient este una din cele mai vechi şi mai cunoscute metode iterative în optimizare, fiind propusă pentru prima dată de Cauchy în Metoda gradient mai este cunoscută şi sub numele de metoda celei mai abrupte descreşteri. Ea este foarte importantă din punct de vedere teoretic, deoarece este una din cele mai simple metode pentru care există o analiză satisfăcătoare cu privire la convergenţă x x 1 Figura 6.1: Metoda gradient aplicată funcţiei f(x 1,x 2 ) = (x 1 2) 4 +(x 1 2x 2 ) 2 cu alegerea pasului prin metoda ideală. Metoda gradient se bazează pe următoarea iteraţie: x k+1 = x k α k f(x k ), unde lungimea pasului α k 0 se poate alege în funcţie de una dintre cele trei proceduri prezentate în capitolul precedent: cea ideală, condiţiile Wolfe sau backtracking (vezi Fig. 6.1 şi 6.2). Cu alte cuvinte, din punctul x k căutăm de-a lungul direcţiei opuse gradientului un punct de minim, iar acest punct de minim este x k+1. Metoda gradient are diferite interpretări pe care le enumerăm în continuare: 1. direcţia în metoda gradient (numită adesea şi antigradientul) d = f(x) este o direcţie de descreştere întrucât expresia f(x) T d = f(x) 2 < 0 pentru orice x care nu este punct staţionar, i.e. orice punct ce satisface f(x) 0;

92 92 Capitolul 6. Metode de ordinul I pentru (UNLP) 0.35 f(x k ) f * k 1.8 f(x k ) k Figura 6.2: Metoda gradient aplicată funcţiei f(x 1,x 2 ) = (x 1 2) 4 +(x 1 2x 2 ) 2 cu alegerea pasului prin metoda ideală (linie continuă) şi backtracking (linie punctată). Evoluţia de-a lungul iteraţiilor a lui f(x k ) f (stânga) şi f(x k ) (dreapta). 2. iteraţia x k+1 se obţine prin rezolvarea următoarei probleme pătratice (QP) convexe: x k+1 = argmin y R nf(x k)+ f(x k ) T (y x k )+ 1 2α k y x k 2, adică aproximăm local funcţia obiectiv f în jurul lui x k printr-un model pătratic cu Hessiana 2 f(x) = 1 α k I n şi apoi următoarea iteraţie este dată de punctul optim al aproximării pătratice (vezi Fig. 6.3); 3. metoda gradient prezintă cea mai rapidă descreştere locală, motiv pentru care aceasta se mai numeşte şi metoda celei mai abrupte pante: într-adevăr pentru orice direcţie d cu d = 1 avem f(x+αd) = f(x)+α f(x) T d+r(α). Din inegalitatea Cauchy-Schwartz obţinem: f(x) T d f(x) d = f(x) ceea ce conduce la următoarea inegalitate: f(x+αd) f(x) α f(x) +R(α). Pe de altă parte, considerând următoarea direcţie particulară d = f(x) f(x) obţinem: f(x+α d) = f(x) α f(x) +R(α).

93 6.1. Metoda gradient 93 f(x) x k+1 x k x Figura 6.3: Iteraţia metodei gradient folosind aproximarea pătratică în x k pentru funcţia f(x) = x 3 x 2 6x+exp( x)/2. Ultimele două relaţii ne permit să concluzionăm că cea mai mare descreştere se obţine pentru direcţia antigradient d Convergenţa globală a metodei gradient În cele ce urmează analizăm proprietăţile de convergenţă globală şi locală a metodei gradient. Mai întâi prezentăm un rezultat general de convergenţă globală pentru metoda gradient aplicată unei probleme (UNLP) pentru care funcţia obiectiv trebuie să fie doar de clasă C 1. Teorema Dacă următoarele condiţii sunt satisfăcute: (i) f este diferenţiabilă cu f continuu (i.e. f C 1 ); (ii) mulţimea subnivel S f(x0 ) = {x R n : f(x) f(x 0 )} este compactă pentru orice punct iniţial x 0 ; (iii) lungimea pasului α k satisface prima condiţie Wolfe (W1). Atunci orice punct limită al şirului x k generat de metoda gradient este punct staţionar pentru problema (UNLP). Demonstraţie: Demonstraţia se bazează pe teorema de convergenţă generală prezentată în capitolul precedent (vezi Teorema 5.2.1). Definim aplicaţia: M(x) = x α f(x).

94 94 Capitolul 6. Metode de ordinul I pentru (UNLP) Întrucât funcţia obiectiv f este diferenţiabilă cu gradientul f continuu rezultă că M(x) este o aplicaţie continuă punct-punct şi deci închisă. Definim S = {x R n : f(x ) = 0}, mulţimea soluţiilor (adică mulţimea punctelor staţionare). Mai mult, şirul {x k } k 0 S f (x 0 ), adică şirul generat de metoda gradient este inclus într-o mulţime compactă. De asemenea, definim φ = f o funcţie descrescătoare întrucât prima condiţie Wolfe este satisfacută, ceea ce implică faptul că funcţia obiectiv descreşte strict de-a lungul iteraţiilor generate de metoda gradient. În concluzie, teorema de convergenţă generală poate fi aplicată şi deci orice punct limită al şirului se va regăsi în S. Mai mult, se observă că din condiţia ca şirul x k să fie mărginit, rezultă că există cel puţin un subşir convergent. Acum prezentăm o analiză a convergenţei metodei gradient pentru funcţii obiectiv f ce posedă în plus faţă de ipotezele teoremei precedente, proprietatea că gradientul f este Lipschitz continuu. Teorema Fie f o funcţie diferenţiabilă cu gradientul Liptschitz (constanta Lipschitz L > 0) şi mărginită inferior. Mai mult, lungimea pasului α k se alege pentru a satisface cele două condiţii Wolfe. Atunci şirul x k generat de metoda gradient satisface proprietatea: lim f(x k) = 0. k Demonstraţie: Se observă că în acest caz particular unghiul dintre gradient şi direcţia considerată în metoda gradient (antigradientul) este θ k = π. În concluzie, din teorema de convergenţă pentru metodele de descreştere (vezi Teorema 5.3.1) avem: cos 2 θ k f(x k ) 2 = k ) k 0 f(x 2 <. k 0 Rezultă că şirul x k satisface proprietatea: f(x k ) 0 când k. Remarca Remarcăm faptul că din prima teoremă de convergenţă a metodei gradient (vezi Teorema 6.1.1) am obţinut că un subşir al şirului x k converge la punctul staţionar x, în timp ce din a doua teoremă (vezi Teorema 6.1.2) avem rezultatul mai conservativ că f(x k ) 0.

95 6.1. Metoda gradient Rata de convergenţă globală a metodei gradient În cazul în care lungimea pasului este constantă pentru toate iteraţiile, adică alegem un α astfel încât x k+1 = x k α f(x k ), suntem interesaţi în aflarea unui α optim ce garantează cea mai rapidă convergenţă. Presupunem că funcţia obiectiv are gradientul f Lipschitz cu constanta Lipschitz L > 0. Avem atunci următoarea relaţie (vezi Apendice): f(y) f(x)+ f(x) T (y x)+ L 2 x y 2 x,y domf. Mai departe, aplicând această inegalitate iteraţiei de gradient, i.e. y = x k+1, rezultă: f(x k+1 ) f(x k ) α f(x k ) 2 + L 2 α2 f(x k ) 2 = f(x k ) α(1 L 2 α) f(x k) 2. Lungimea pasului ce garantează cea mai mare descreştere per iteraţie se obţine din condiţia: adică: max α>0 α(1 L 2 α) α = 1 L. Metodei gradient cu pas constant îi corespunde o lungime optimală a pasului dată de α = 1. În acest caz, descreşterea la fiecare pas este L ilustrată de relaţia: f(x k+1 ) f(x k ) 1 2L f(x k) 2, iar dacă însumăm aceste inegalităţi de la k = 0 la k = N 1 obţinem: adică: f(x N ) f(x 0 ) 1 N 1 f(x k ) 2 2L k=0 N 1 1 f(x k ) 2 f(x 0 ) f(x N ) f(x 0 ) f. (6.1) 2L k=0

96 96 Capitolul 6. Metode de ordinul I pentru (UNLP) În continuare definim: f N = arg min k=0,,n 1 f(x k). Din inegalitatea (6.1) şi inegalitatea precedentă rezultă: 1 2L N f N 2 f(x 0 ) f. În concluzie, după N = k paşi se obţine următoarea rată de convergenţă: f k 1 k 2L(f(x0 ) f ), adică metoda gradient are, în acest caz, o rată de convergenţă subliniară. Din demonstraţia teoremei se observă că orice pas α pentru metoda gradient în intervalul ( ) 2 α 0, L asigură descreşterea funcţiei obiectiv şi, în consecinţă, o rată de convergenţă subliniară. Mai mult, pentru N în inegalitatea (6.1) obţinem că f(x k ) 0 când k. Observăm că nu se poate spune nimic în acest caz despre convergenţa şirului x k la punctul staţionar x sau al lui f(x k ) la valoarea optimă f. Acest tip de convergenţă poate fi derivată în cazul convex. Mai departe considerăm problema de optimizare convexă neconstrânsă min x R nf(x), unde funcţia obiectiv f F 1,1 L (Rn ) (F 1,1 L (Rn ) reprezintă clasa de funcţii diferenţiabile, convexe, cu gradient Lipschitz de constantă L) pentru care avem inegalitatea (vezi Apendice): 1 L f(x) f(y) 2 f(x) f(y),x y x,y domf. De asemenea, pentru un punct de optim global x notăm R k = x k x distanţa de la punctul x k la punctul de optim x. Atunci, din relaţia precedentă şi f(x ) = 0 obţinem: R 2 k+1 = x k x α f(x k ) 2 = R 2 k 2α f(x k),x k x +α 2 f(x k ) 2 R 2 k α( 2 L α) f(x k) 2.

97 6.1. Metoda gradient 97 Observăm că pentru pas constant α (0 2 L ) avem R k R 0 pentru orice k 0. Notând k = f(x k ) f, din convexitatea lui f şi inegalitatea Cauchy-Schwartz, avem: k f(x k ),x k x R k f(x k ) R 0 f(x k ). (6.2) Din proprietatea Lipschitz avem: f(x k+1 ) f(x k ) α(1 L 2 α) f(x k) 2, de unde scăzând în ambele părţi f şi combinând cu inegalitatea (6.2) obţinem: k+1 k ω R k, unde ω = α(1 L α). Deci, ω k 1 + ω. k+1 k R0 2 k+1 k R0 2 Prin însumarea acestor inegalităţi de la k = 0 la k = N 1 rezultă următoarea inegalitate: ω N. N 0 R0 2 Mai departe, dacă alegem α = α = 1 L convergenţă: obţinem următoarea rată de f(x N ) f 2L(f(x 0) f ) x 0 x 2 2L x 0 x 2 +N(f(x 0 ) f ). Din proprietatea de Lipschitz avem: f(x 0 ) f + f(x ),x 0 x + L 2 x 0 x 2 = f + L 2 x 0 x 2. Obţinem atunci (înlocuind N = k) următoarea rată de convergenţă subliniară a metodei gradient pentru probleme de optimizare convexe neconstrânse: f(x k ) f 2L x 0 x 2. k +4

98 98 Capitolul 6. Metode de ordinul I pentru (UNLP) Rata de convergenţă locală a metodei gradient În acest a subcapitol analizăm rata de convergenţă locală a metodei gradient. Pentru simplitatea expunerii studiem mai întâi cazul problemelor pătratice: ( f = min x R nf(x) = 1 ) 2 xt Qx q T x, unde Q este matrice simetrică pozitiv definită. În acest caz problema de optimizare pătratică convexă precedentă are un singur punct de minim global x ce satisface relaţia Qx q = 0. De asemenea, dând x k la iteraţia k, definim reziduul r k = Qx k q = f(x k ). Atunci, pasul optim (obţinut prin metoda ideală de alegere a pasului) se obţine explicit din minimizarea funcţiei pătratice unidimensionale în α (0, ): φ(α) = f(x k αr k ): α k = rt k r k rk TQr. k Astfel, metoda gradient are următoarea iteraţie pentru cazul pătratic convex: x k+1 = x k rt k r k rk TQr f(x k ). k Ca să evaluăm rata de convergenţă, introducem următoarea funcţie ce măsoară eroarea: e(x) = 1 2 (x x ) T Q(x x ) = f(x) f, unde am folosit ca Qx q = 0 şi f = f(x ). Observăm că eroarea e(x) este zero dacă şi numai dacă x = x. Prin calcule simple se poate arăta că e(x k ) e(x k+1 ) e(x k ) = 2α krk TQy k αk 2rT k Qr k yk TQy, k unde y k = x k x. Ţinând cont că Qy k = r k, obţinem: ( e(x k+1 ) = 1 (r T k r k) 2 (r T k Qr k)(r T k Q 1 r k ) ) e(x k ). Putem arăta uşor utilizând inegalitatea lui Kantorovich: min y 0 (y T y) 2 (y T Qy)(y T Q 1 y) = 4λ minλ max (λ min +λ max ) 2

99 6.2. Metoda direcţiilor conjugate 99 că următoarea relaţie are loc: e(x k+1 ) (κ 1)2 (κ+1) 2e(x k), unde κ este numărul de condiţionare al matricei Q, adică κ = λ max /λ min, cu λ min > 0 valoarea proprie minimă, iar λ max valoarea proprie maximă a matricei pozitivdefiniteq. Dinaceastărelaţierezultă căe(x k ) = f(x k ) f 0 cu o rată liniară mărginită de constanta β = (κ 1) 2 /(κ+1) 2. Observăm că rata de convergenţă este lentă dacă numărul de condiţionare κ este mare şi depinde de punctul de pornire x 0. Acest rezultat pentru probleme QP strict convexe, unde pasul se alege cu metoda ideală, ne arată că valorile funcţiei f(x k ) converg la valoarea optimă f cu o rată liniară. Pentru funcţii diferenţiabile nepătratice rezultate similare au loc: Teorema Presupunem că funcţia f C 2 şi că iteraţiile metodei gradient generate cu procedura de căutare ideală a pasului converge la un punct x pentru care 2 f(x ) este matrice pozitiv definită. Fie un scalar β ((κ 1) 2 /(κ+1) 2 1), unde κ este numărul de condiţionare al matricei 2 f(x ). Atunci, pentru k suficient de mare avem că: f(x k+1 ) f(x ) β(f(x k ) f(x )). Demonstraţia se bazează pe folosirea Hessianei funcţiei obiectiv în punctul x în locul matricei Q corespunzătoare cazului pătratic. În acest caz, dacă x este un punct de minim local astfel încât Hessiana 2 f(x ) este pozitiv definită cu un număr de condiţionare κ, putem arăta că şirul x k convergent la x produs de metoda gradient satisface următoarea proprietate: f(x k ) f(x ) cu o rată de convergenţă liniară al cărei coeficient este mărginit inferior de (κ 1) 2 /(κ+1) 2. Observăm că în cazul neconvex şirul x k generat de metoda gradient converge către x dacă punctul de pornire x 0 este suficient de aproape de x, adică avem convergenţă locală. 6.2 Metoda direcţiilor conjugate Metoda direcţiilor conjugate poate fi privită ca o metodă intermediară între metoda gradient (ce foloseşte informaţie de ordinul întâi) şi metoda Newton (ce foloseşte informaţie de ordinul doi). Această metodă este

100 100 Capitolul 6. Metode de ordinul I pentru (UNLP) motivată de dorinţa de a accelera rata de convergenţă lentă a metodei gradient şi în acelaşi timp de a evita folosirea Hessianei precum se întâmplă în metoda Newton. Un caz particular al metodei direcţiilor conjugate este metoda gradienţilor conjugaţi, care a fost iniţial dezvoltată pentru probleme pătratice. Această tehnică a fost extinsă la probleme de optimizare generale, prin aproximare, deoarece se poate argumenta că în apropierea unui punct de minim local funcţia obiectiv este aproximativ pătratică Metoda direcţiilor conjugate pentru QP Metoda direcţiilor conjugate este de asemenea o metodă de ordinul întâi, adică foloseşte informaţia extrasă din valoarea funcţiei şi a gradientului acesteia (oracol de ordinul întâi), însă prezintă o rată de convergenţă mai bună decât a metodei gradient cel puţin pentru cazul pătratic. Să presupunem următoarea problemă pătratică (QP) strict convexă: 1 min x R n 2 xt Qx q T x, unde Q 0 (i.e. matrice pozitiv definită). Soluţia optimă a acestei probleme de optimizare este echivalentă cu rezolvarea următorului sistem de ecuaţii liniare Qx = q. Întrucât Q este inversabilă, soluţia problemei de optimizare sau soluţia sistemului liniar este x = Q 1 q. În cele mai multe cazuri, calculul inversei este foarte costisitor, şi, de obicei, complexitatea aritmetică a unei metode de calcul numeric matriceal pentru găsirea soluţiei este de ordinul O(n 3 ). În cele ce urmează vom prezenta o metodă numerică de optimizare mai simplă şi de obicei mai puţin costisitoare numeric pentru calculul soluţiei x. Definiţia Doi vectori d 1 şi d 2 se numesc Q-ortogonali dacă satisfac condiţia d T 1 Qd 2 = 0. O mulţime de vectori {d 1,d 2,,d k } se numeşte Q-ortogonală dacă d T i Qd j = 0 pentru orice i j. Se observă că dacă matricea Q 0 şi dacă mulţimea {d 1,d 2,,d k } este Q-ortogonală, iar vectorii sunt nenuli, atunci aceşti vectori sunt liniar independenţi. Mai mult, în cazul în care k = n, vectorii formează o bază pentru R n. În concluzie, dacă {d 1,d 2,,d n } este Q-ortogonală,

101 6.2. Metoda direcţiilor conjugate 101 iar vectorii sunt nenuli, există α 1,,α n R astfel încât x = α 1 d 1 + α 2 d α n d n (adică x este combinaţie liniară a vectorilor bazei). Pentru aflarea parametrilor α i avem relaţia: α i = dt i Qx d T i Qd i = dt i q d T i Qd. i Concluzionăm că: x = n d T i q d T i Qd d i i i=1 şi deci x poate fi obţinut printr-un proces iterativ în care la pasul i adăugăm termenul α i d i. Teorema Fie {d 0,d 1,,d n 1 } o mulţime Q-ortogonală de vectori cu elemente nenule. Pentru orice x 0 R n şirul x k generat de metoda iterativă: x k+1 = x k +α k d k α k = rt k d k d T k Qd, r k = Qx k q k converge la x după n paşi, adică x n = x. Demonstraţie: Deoarece vectorii {d 0,d 2,,d n 1 } sunt liniar indepen- denţi putem scrie: x x 0 = α 0 d 0 +α 1 d 1 + +α n 1 d n 1 pentruanumiţiscalariα k. MultiplicândaceastărelaţiecuQşi apoiluând produsul scalar cu d k obţinem: α k = dt k Q(x x 0 ) d T k Qd. k Folosind iteraţia precedentă pentru calcularea lui x k+1 obţinem: x k x 0 = α 0 d 0 +α 1 d 1 + +α k 1 d k 1 şi din Q-ortogonalitatea lui d k derivăm următoarea relaţie: d T k Q(x k x 0 ) = 0.

102 102 Capitolul 6. Metode de ordinul I pentru (UNLP) În concluzie, α k = dt k Q(x x k ) d T k Qd k = rt k d k d T k Qd k coincide cu α k. De aici rezultă că x n x 0 = x x 0 şi deci x n = x. Se observă că reziduul r k = Qx k q coincide cu gradientul funcţiei obiectiv pătratice. Folosind argumente similare teoremei precedente se poate arăta următorul rezultat: Teorema Fie {d 0,d 1,,d n 1 } o mulţime Q-ortogonală de vectori cu elemente nenule, definim subspaţiul S k = Span{d 0,d 1,,d k }. Atunci pentru orice x 0 R n şirul x k+1 = x k +α k d k, unde α k = rt k d k d T k Qd k are următoarele proprietăţi: 1 (i) x k+1 = arg min x x 0 +S k 2 xt Qx q T x; (ii) reziduul la pasul k este ortogonal cu toate direcţiile precedente, adică: r T k d i = 0 i < k. Din teorema precedentă, proprietatea (ii), avem că gradientul este ortogonal pe subspaţiul S k 1 : f(x k ) S k 1. Această teoremă se mai numeşte şi minimizarea peste subspaţiul de extindere Metoda gradienţilor conjugaţi pentru QP Metoda gradienţilor conjugaţi aparţine clasei de metode de direcţii conjugate cu o proprietate specială: în generarea mulţimii de vectori conjugaţi, noul vector d k poate fi calculat folosind numai direcţia anterioară d k 1. În această metodă, pentru a calcula d k nu trebuie să ştim toate direcţiile conjugate anterioare d 0,d 1,,d k 1. Din construcţie, noua direcţie d k va fi automat ortogonală pe aceste direcţii anterioare. Această proprietate a metodei gradienţilor conjugaţi este foarte importantă, deoarece necesită puţină memorie şi calcule. Metoda gradienţilor conjugaţi pentru rezolvarea unui QP strict convex cuprinde următorii paşi:

103 6.2. Metoda direcţiilor conjugate 103 x 2 d 1 x 1 f(x 1 ) d 0 x 0 Figura 6.4: Metoda gradienţilor conjugaţi. 1. Fie vectorul x 0 R n dat, definim d 0 = f(x 0 ) = r 0 = (Qx 0 q); 2. actualizăm iteraţia x k+1 = x k +α k d k, unde α k = rt k d k ; d T k Qd k 3. actualizăm direcţia d k+1 = r k+1 +β k d k, unde β k = rt k+1 Qd k. d T k Qd k Am utilizat notaţia r k = f(x k ). Se observă că la fiecare pas o nouă direcţie este aleasă ca o combinaţie liniară între gradientul curent şi direcţia precedentă. Metoda gradienţilor conjugaţi are o complexitate scăzută întrucât foloseşte formule de actualizare simple (adică operaţii cu vectori). Teorema (Proprietăţi ale metodei gradienţilor conjugaţi) Metoda gradienţilor conjugaţi satisface următoarele proprietăţi: (i) Span{d 0,...,d k } = Span{r 0,...,r k } = Span{r 0,Qr 0,...,Q k r 0 }; (ii) d T k Qd i = 0 pentru orice i < k; (iii) α k = rt k r k d T k Qd k; (iv) β k = rt k+1 r k+1. rk Tr k

104 104 Capitolul 6. Metode de ordinul I pentru (UNLP) Demonstraţie: Relaţia (i) se poate demonstra prin inducţie. Este evident că (i) este adevărată la pasul k = 0. Presupunem acum că egalităţile de mulţimi sunt valide la pasul k şi demonstrăm relaţia pentru k + 1. Din iteraţia metodei gradienţilor conjugaţi se observă: r k+1 = r k +α k Qd k. Din ipoteza de inducţie avem că r k,qd k Span{r 0,Qr 0,,Q k+1 r 0 }. Drept urmare, r k+1 Span{r 0,Qr 0,,Q k+1 r 0 }. Considerând acest rezultat şi iteraţia: d k+1 = r k+1 +β k d k, rezultă de asemenea că d k+1 Span{r 0,Qr 0,,Q k+1 r 0 }. Pentru a demonstra (ii) folosim iarăşi inducţia şi luăm în considerare faptul că: d T k+1 Qd i = r T k+1 Qd i +β k d T k Qd i. Pentru i = k, membrul drept este zero datorită definiţiei lui β k. Pentru i < k, ambii termeni dispar. Primul termen dispare datorită faptului că Qd i Span{d 0,d 1,,d i+1 }, a inducţiei ce garantează că metoda este o metodă de direcţii conjugate până la pasul x k+1, şi datorită Teoremei 6.2.2, ce garantează că r k+1 este ortogonal pe Span{d 0,d 1,,d i+1 }. Al doilea termen dispare prin aplicarea inducţiei asupra relaţiei (ii). Pentru a demonstra (iii) observăm că: r T k d k = r T k r k β k 1 r T k d k 1 şi apoi utilizăm relaţia α k = rt k d k, iar al doilea termen este zero, d T k Qd k conform Teoremei În final, pentru a demonstra (iv) observăm că rk+1 T r k = 0, deoarece r k Span{d 0,d 1,,d k } şi r k+1 este ortogonal pe Span{d 0,d 1,,d k }. Mai mult, din relaţia avem că r T k+1 Qd k = 1 α k r T k+1 r k+1. Qd k = 1 α k (r k+1 r k ) Din proprietatea (ii) a teoremei precedente se observă că metoda gradienţilor conjugaţi produce direcţiile {d 0,d 1,,d n 1 }, care sunt direcţii Q-ortogonale şi deci metoda converge la soluţia optimă x în exact n paşi, conform Teoremei

105 6.2. Metoda direcţiilor conjugate Metoda gradienţilor conjugaţi pentru UNLP Pentru o problemă generală neconstrânsă min x Rnf(x), putemaplicametoda gradienţilor conjugaţi folosind aproximări adecvate. Prezentăm în cele ce urmează câteva abordări în această direcţie. În abordarea aproximării pătratice se repetă aceleaşi iteraţii ca şi în cazul pătratic, folosindu-se o aproximare pătratică cu următoarele identificări: Q = 2 f(x k ), r k = f(x k ). Aceste asocieri sunt reevaluate la fiecare pas al metodei. Dacă funcţia f este pătratică, atunci aceste asocieri sunt identităţi, şi deci algoritmul este o generalizare la cazul pătratic neconvex. Când o aplicăm la probleme nepătratice, atunci metoda gradienţilor conjugaţi nu va produce o soluţie în n paşi. În acest caz se continuă procedura, găsind noi direcţii şi terminând atunci când un anumit criteriu este satisfăcut (de exemplu, f(x k ) ǫ). Este, de asemenea, posibil ca după n sau n+1 paşi să reiniţializăm algoritmul cu x 0 = x n şi să începem metoda gradienţilor conjugaţi cu un pas de gradient. Metoda gradienţilor conjugaţi pentru probleme UNLP generale constă în următorii paşi: 1. r 0 = f(x 0 ) şi d 0 = f(x 0 ); 2. x k+1 = x k + α k d k pentru orice k = 0,1,,n 1, unde α k = rt k d k d T k 2 f(x k )d k ; 3. d k+1 = f(x k+1 )+β k d k, unde β k = rt k+1 2 f(x k )d k d T k 2 f(x k )d k ; 4. după n iteraţii înlocuim x 0 cu x n şi repetăm întregul proces. O proprietate atractivă a metodei gradienţilor conjugaţi este aceea că nu este nevoie de căutarea pe o direcţie, adică nu trebuie să găsim o lungime a pasului. Pe de altă parte, această abordare are dezavantajul că necesită evaluarea Hessianei funcţiei obiectiv la fiecare pas, care de obicei este costisitoare. De asemenea, se observă că în cazul general această metodă nu este convergentă. Se poate evita însă folosirea directă a Hessianei 2 f(x). De exemplu, în locul formulei pentru α k dat mai sus, putem găsi lungimea pasului α k prin metoda de căutare ideală. Expresia corespunzătoare va coincide cu cea anterioară în cazul pătratic. De asemenea, algoritmul

106 106 Capitolul 6. Metode de ordinul I pentru (UNLP) se poate transforma într-unul convergent prin modificarea adecvată a parametrului β k. Avem la dispoziţie următoarele reguli de actualizare: Fletcher Reeves : β k = rt k+1 r k+1 rk Tr ; k Polak Ribiere : β k = (r k+1 r k ) T r k+1 rk Tr. k Observăm că aceste formule coincid cu β k dat în algoritmul precedent în cazul pătratic. Din simulări s-a observat că de obicei metoda Polak-Ribiere are un comportament mai bun faţă de metoda Fletcher-Reeves. Obţinem următoarea metodă modificată a gradienţilor conjugaţi pentru probleme UNLP ce constă în următorii paşi: 1. r 0 = f(x 0 ) şi d 0 = f(x 0 ); 2. x k+1 = x k + α k d k pentru orice k = 0,1,,n 1, unde α k minimizează funcţia unidimensională f(x k +αd k ); 3. d k+1 = f(x k+1 )+β k d k, unde β k este ales cu una din cele două formule anterioare; 4. după n iteraţii înlocuim x 0 cu x n şi repetăm întregul proces. Convergenţa globală a metodei gradienţilor conjugaţi modificată se poate demonstra din simpla observaţie că la fiecare n paşi a acestei metode se realizează o iteraţie de gradient pur şi că la ceilalţi paşi funcţia obiectiv nu creşte, ci de fapt se speră să descrească strict. De aceea, repornirea algoritmului este importantă pentru analiza convergenţei globale a metodei, deoarece pentru direcţiile d k produse de metodă nu putem garanta că sunt direcţii de descreştere. Proprietăţile de convergenţă locală a metodei descrise anterior pot fi arătate folosindu-ne iarăşi de analiza cazului pătratic. Presupunând că la soluţia x Hessiana este pozitiv definită, ne aşteptăm la o rată de convergenţă cel puţin la fel de bună ca a metodei gradient. Mai mult, în general metoda converge pătratic în raport cu fiecare ciclu de n paşi. Cu alte cuvinte, observăm că în fiecare ciclu se rezolvă o problemă pătratică la fel cum metoda Newton rezolvă într-un pas această problemă pătratică şi deci ne aşteptăm ca x k+n x c x k x 2

107 6.2. Metoda direcţiilor conjugate 107 pentru o anumită constantă c > 0 şi k = 1, n, 2n,... În concluzie, metoda gradienţilor conjugaţi modificată posedă o convergenţă superioară metodei gradient, iar pe de altă parte are o implementare simplă. De aceea, este adesea preferată în favoarea metodei gradient pentru rezolvarea problemelor de optimizare fără constrângeri.

108 Capitolul 7 Metode de ordinul II pentru (UNLP) Metodele de ordinul doi sunt cele mai complexe metode numerice de optimizare, deoarece folosesc informaţie despre curbura funcţiei obiectiv sau matricea Hessiană. De obicei, aceste metode converg mult mai rapid decât metodele de ordinul întâi, dar sunt în general dificil de implementat deoarece calcularea şi memorarea matricei Hessiane poate fi costisitoare din punct de vedere numeric. Metoda Newton este un exemplu de metodă de ordinul doi care constă în devierea direcţiei antigradientului prin premultiplicarea lui cu inversa matricei Hessiane. Această operaţie este motivată prin găsirea unei direcţii adecvate pentru aproximarea Taylor de ordinul doi afuncţiei obiectiv. Îngeneral, pentru problemede dimensiuni mari, se preferă implementarea unei metode de ordinul întâi care ia în calcul structura funcţiei obiectiv. Adesea un şir de gradienţi pot fi folosiţi la aproximarea curburii de ordinul doi a funcţiei obiectiv. Metode ce se bazează pe această procedură se numesc metode quasi-newton. În acest capitol ne ocupăm de rezolvarea unei probleme generale neliniare de optimizare neconstrânsă (UNLP) cu metode numerice ce utilizează informaţie furnizată de gradient şi Hessiană (informaţie de ordin doi) sau o aproximare a acesteia (adică ce se bazează pe informaţie de ordinul întâi): (UNLP) : f = min x R n f(x), (7.1) unde funcţia obiectiv este de două ori diferenţiabilă cu Hessiana continuă (i.e. f C 2 ).

109 7.1. Metoda Newton Metoda Newton În analiza numerică şi optimizare, metoda lui Newton (sau cunoscută şi sub numele de metoda Newton-Raphson) este o metodă de calcul al rădăcinilor unui sistem de ecuaţii. Considerăm sistemul neliniar: F(y) = 0, unde y R n şi F : R n R n o funcţie diferenţiabilă. Acest sistem poate fi rezolvat prin metoda Newton care constă în liniarizarea ecuaţiei în punctul curent y k : F(y k )+ F y (y k)(y y k ) = 0. (7.2) Această procedură, ce constă în rezolvarea sistemului liniar în y, conduce la următoarea iteraţie Newton, sub ipoteza că Jacobianul (notat F(y k ) = F y (y k)) este matrice inversabilă: y k+1 = y k ( ) 1 F y (y k) F(y k ). Considerăm acum condiţiile necesare de optimalitate de ordinul întâi pentru probleme UNLP, ce se reduc la un sistem de ecuaţii neliniare: f(x) = 0, cu gradientul f : R n R n. Acest sistem are numarul de ecuaţii egale cu numărul de variabile. Metoda Newton va liniariza sistemul neliniar în punctul x k pentru a găsi următorul punct x k+1 : f(x k )+ 2 f(x k )(x k+1 x k ) = 0, iar din această relaţie putem deriva metoda Newton care constă in următoarea iteraţie (vezi Fig. 7.1): x k+1 = x k ( 2 f(x k )) 1 f(x k ). Direcţia în metoda Newton este dată de expresia d k = ( 2 f(x k )) 1 f(x k ),

110 110 Capitolul 7. Metode de ordinul II pentru (UNLP) x x 1 Figura 7.1: Metoda Newton aplicată funcţiei f(x 1,x 2 ) = (x 1 x 3 2 )2 +3(x 1 x 2 ) 4. numită şi direcţia Newton. Observăm că dacă 2 f(x k ) 0, atunci direcţia Newton d k este direcţie de descreştere. Reamintim că direcţia în metoda gradient este dată de antigradientul f(x k ), adică în locul matricei( 2 f(x k )) 1 dinmetodanewton, înmetodagradientsefoloseşte matricea identitate I n. O altă interpretare a metodei numerice de optimizare Newton poate fi obţinută din aproximarea Taylor de ordinul doi a funcţiei obiectiv f. Reamintim condiţiile de optimalitate suficiente de ordinul doi ce se definesc astfel: dacă există un x ce satisface: f(x ) = 0 şi 2 f(x ) 0 atunci x este un minim local. Dacă punctul x satisface condiţiile precedente, atunci există o vecinătate a lui x notată N astfel încât pentru orice x N avem 2 f(x) 0. Din aproximarea Taylor obţinem că (Fig. 7.2): f(x k+1 ) f(x k )+ f(x k ) T (x k+1 x k )+ 1 2 (x k+1 x k ) T 2 f(x k )(x k+1 x k ) şi deci iteraţia Newton este dată de (vezi Fig. 7.2): x k+1 = argmin y f(x k )+ f(x k ) T (y x k )+ 1 2 (y x k) T 2 f(x k )(y x k ). Se observă că dacă x k este suficient de aproape de x atunci 2 f(x k ) 0 şi din condiţiile de optimalitate corespunzătoare unei probleme QP

111 7.1. Metoda Newton 111 f(x) x k+1 x k x Figura 7.2: Iteraţia metodei Newton folosind aproximarea pătratică Taylor în x k pentru funcţia f(x) = x 3 x 2 6x+exp( x)/2. strict convexe obţinem din nou x k+1 = x k ( 2 f(x k )) 1 f(x k ), adică aceeaşi formu lă, însă cu o interpretare diferită. Făcând analogia cu interpretarea metodei gradient, observăm că în ambele metode iteraţia x k+1 se generează din rezolvarea unei aproximări pătratice în care termenul liniar este acelaşi, dar termenul pătratic în metoda gradient este (y x k ) T I n (y x k )întimpceînmetodanewtoneste(y x k ) T 2 f(x k )(y x k ). Este clar că aproximarea pătratică a funcţiei f folosită în metoda Newton este mai bună decât cea folosită în metoda gradient şi deci ne aşteptăm ca metoda Newton să performeze mai bine faţă de metoda gradient. Putem într-o manieră similară celei anterioare să interpretăm derivarea direcţiei Newton, şi anume din aproximarea Taylor avem: f(x k +d) f(x k )+ f(x k ) T d+ 1 2 dt 2 f(x k )d şi deci definim direcţia Newton: d k = argmin d f(x k )+ f(x k ) T d+ 1 2 dt 2 f(x k )d. Se observă că dacă 2 f(x k ) 0, din condiţiile de optimalitate corespunzatoare unei probleme QP strict convexe obţinem din nou direcţia Newton d k = 2 f(x k ) 1 f(x k ).

112 112 Capitolul 7. Metode de ordinul II pentru (UNLP) Rata de convergenţă locală a metodei Newton În acest subcapitol vom analiza convergenţa locală a metodei Newton în forma standard (adică pasul α k = 1): x k+1 = x k ( 2 f(x k )) 1 f(x k ). Vom arăta în următoarea teoremă că această metodă converge local cu rata pătratică, adică există β > 0 astfel încât x k+1 x β x k x 2 pentru orice k 0, sub ipoteza că x 0 este suficient de aproape de x. Teorema (Convergenţa locală pătratică a metodei Newton) Fie f C 2 şi x un minim local ce satisface condiţiile suficiente de ordinul II (i.e. f(x ) = 0 şi 2 f(x ) 0). Fie o constantă l > 0 astfel încât: 2 f(x ) li n. Mai mult, presupunem că 2 f(x) este Lipschitz, i.e. 2 f(x) 2 f(y) M x y x,y domf, unde M > 0. Dacă x 0 este suficient de aproape de x, adică: x 0 x 2 3 l M, atunci iteraţia Newton x k+1 = x k ( 2 f(x k )) 1 f(x k ) are proprietatea că şirul x k generat converge la x cu rata pătratică, adică x k+1 x 3M x 2l k x 2 pentru orice k 0. Demonstraţie: Întrucât x este un minim local atunci f(x ) = 0. Mai mult, din teorema lui Taylor în forma integrală avem: Se obţine: f(x k ) = f(x )+ 1 x k+1 x = x k x ( 2 f(x k )) 1 f(x k ) 0 2 f(x +τ(x k x ))(x k x )dτ. = ( 2 f(x k )) 1 [ 2 f(x k )(x k x ) f(x k )+ f(x )] = ( 2 f(x k )) 1 [ 2 f(x k )(x k x ) f(x +τ(x k x ))(x k x )dτ] 1 = ( 2 f(x k )) 1 [ 2 f(x k )(x k x ) 2 f(x +τ(x k x ))(x k x )dτ] 0 1 = ( 2 f(x k )) 1 [ 2 f(x k ) 2 f(x +τ(x k x ))](x k x )dτ. 0

113 7.1. Metoda Newton 113 Întrucât rezultă că (vezi Apendice): 2 f(x k ) 2 f(x ) M x k x M x k x I n 2 f(x k ) 2 f(x ) M x k x I n. Mai mult, vom avea: 2 f(x k ) 2 f(x ) M x k x I n li n M x k x I n 0, sub ipoteza că x k x 2 3 l M 0 ( 2 f(x k )) 1 Concluzionăm următoarele: x k+1 x = ( 2 f(x k )) 1 1 l M x k x 1 l M x k x 1 l M x k x , de unde rezultă: 1 l M x k x I n. 2 f(x k ) 2 f(x +τ(x k x ))dτ x k x M(1 τ) x k x dτ x k x M(1 τ)dτ x k x 2 M 2 x k x 2. Prininducţiesearatăuşorcădacă x 0 x 2l/3M, atunci x k x 1 M 2l/3M pentru orice k 0. Observăm că 3M l M x k < şi deci x 2 2l x k+1 x 3M x 2l k x 2. Remarca Din teorema anterioară putem concluziona că metoda Newton are o rată de convergenţă foarte rapidă în apropierea punctului de optim local. Mai mult, observăm că metoda Newton converge într-un singur pas pentru probleme pătratice convexe. Deci în comparaţie cu metodele de ordinul întâi unde în cel mai bun caz convergenţa se atinge în n paşi, în metoda Newton obţinem convergenţa în exact un pas pentru problemele pătratice convexe. Principalul dezavantaj al acestei metode este necesitatea de a calcula Hessiana funcţiei f şi inversarea acestei matrice. Aceste operaţii sunt costisitoare, complexitatea fiind de ordinul O(n 3 ), şi deci pentrudimensiuni mariale problemei de optimizare (UNLP), de exemplu n > 10 3, aceste operaţii sunt foarte greu de realizat pe un calculator obişnuit.

114 114 Capitolul 7. Metode de ordinul II pentru (UNLP) Convergenţa globală a metodei Newton Dacăpornimdintr-unpunctx 0 cenuesteintr-ovecinătatealuix,atunci metoda Newton va trebui modificată pentru a garanta convergenţa ei către un punct staţionar. Modificarea constă în alegerea dimensiunii pasului α k 1, astfel încât de exemplu condiţia Wolfe (W1) să fie satisfăcută. În acest caz, metoda Newton (numită şi metoda Newton cu pas variabil) devine: x k+1 = x k α k ( 2 f(x k )) 1 f(x k ). În general, lungimea pasului α k se alege cu procedura ideală (adică se obţinedinminimizareafuncţieiunidimensionalemin α 0 f(x k +αd k ),unde d k = ( 2 f(x k )) 1 f(x k )) sau cu procedura backtracking. Bazat pe una din aceste proceduri, observăm că dacă x k este suficient de apropiat de x, pasul α k va deveni 1 (vezi Fig. 7.3). f(x k ) f * f(x k ) k k Figura 7.3: Metoda Newton aplicată funcţiei f(x 1,x 2 ) = (x 1 x 3 2 )2 +3(x 1 x 2 ) 4 cu alegerea pasului prin metoda ideală (linie continuă), backtracking (linie întreruptă-punctată) şi α k = 1 (linie întreruptă). Evoluţia de-a lungul iteraţiilor f(x k ) f (stânga) şi a f(x k ) (dreapta). Următoarea teroemă furnizează o serie de condiţii suficiente ce garantează convergenţa globală a metodei Newton către un punct staţionar. Teorema (Convergenţa globală a metodei Newton) Fie funcţia obiectiv f C 2 cu gradientul f Lipschitz. Considerăm metoda Newton cu pas variabil x k+1 = x k α k ( 2 f(x k )) 1 f(x k ), unde α k se alege folosind backtracking. Mai departe presupunem că Hessiana

115 7.1. Metoda Newton 115 satisface condiţia β 1 I n ( 2 f(x k )) 1 β 2 I n pentru orice k 0, unde 0 < β 1 β 2. Atunci, metoda Newton produce un şir x k cu proprietatea că fie f(x k ) 0, ori f(x k ) (adică funcţia f nu este marginită inferior). Demonstraţie: Presupunem că algoritmul Newton produce un şir x k astfel încât şirul f(x k ) este mărginit inferior. Din moment ce alegem α k cu metoda backtracking, avem că condiţia Wolfe (W1) este satisfacută şi deci f(x k+1 ) f(x k ). Ştim că un şir descrescător şi mărginit inferior este convergent, deci există f astfel încât f(x k ) f. Aceasta implică de asemenea că [f(x k ) f(x k+1 )] 0. Din condiţia Wolfe (W1) avem că: f(x k ) f(x k+1 ) c 1 α k f(x k ) T d k = c 1 α k f(x k ) T ( 2 f(x k )) 1 f(x k ) c 1 α k β 1 f(x k ) 2. Trecând la limita pentru k obţinem că: c 1 α k β 1 f(x k ) 2 0. (7.3) Este suficient să arătăm că α k α min > 0 pentru orice k 0. Vom arăta în cele ce urmează că atunci când lungimea pasului α k este aleasă conform procedurii backtracking avem că α k α min, unde α min = min{1, (1 c 1)ρ Lβ 2 } > 0şiLesteconstantaLipschitzpentrugradientul f, adică f(x) f(y) L x y. Pentru pas complet α k = 1 avem în mod evident satisfăcută relaţia α k α min. În celălat caz, datorită procedurii de backtracking pentru alegerea lungimii pasului, avem că pasul anterior α = α k ρ nu satisface condiţia Wolfe (W1), pentru că în caz contrar ar fi fost folosit acest pas, şi deci: f(x k + α k ρ d k) > f(x k )+c 1 α k ρ f(x k) T d k f(x k + α k ρ d k) f(x k ) > c 1 α k ρ f(x k) T d k. α Folosind Taylor avem că există τ (0, k ρ ) astfel încât f(x k + α k ρ d k ) f(x k ) = α k ρ f(x k +τd k ) T d k. Mai departe, obţinem: f(x k +τd k ) T d k > c 1 f(x k ) T d k ( f(x k +τd k ) f(x k )) T d }{{} k > (1 c 1 )( f(x k ) T d k ) }{{} τl d k 2 =d k T 2 f(x k )d k.

116 116 Capitolul 7. Metode de ordinul II pentru (UNLP) În concluzie, ţinând seama că τ α k ρ, avem: α k ρ L d k 2 > (1 c 1 )d T k 2 f(x k )d k 1 c 1 β 2 d k 2, ceea ce conduce la α k > (1 c 1)ρ β 2 L > 0, adică şirul α k este mărginit inferior de o constantă pozitivă α min = (1 c 1)ρ β 2. Am folosit faptul că valorile L 1 proprii ale matricei Hessiane satisfac condiţia: β 1 λ( 2 f(x k )) 1 β 2. Din faptul că α k α min > 0 şi relaţia (7.3) obţinem că f(x k ) 0 pentru k. O observaţie importantă legată de această metodă ţine de faptul că direcţia Newton este direcţie de descreştere dacă 2 f(x k ) 0. Dacă această condiţie nu este satisfăcută, atunci în locul matricei 2 f(x k ) vom considera matricea ǫ k I n + 2 f(x k ) pentru o valoare adecvată ǫ k > 0 astfel încât noua matrice să devină pozitiv definită. În acest caz, metoda Newton cu pas variabil devine: x k+1 = x k α k ( ǫk I n + 2 f(x k ) ) 1 f(xk ), (7.4) unde ca şi mai înainte lungimea pasului α k se alege prin metoda ideală sau backtracking. În cele ce urmează definim o procedură de alegere a constantei ǫ k. Observăm că dacă alegem ǫ k prea mic pentru ca iteraţia anterioară să fie aproximativ similară cu cea a metodei Newton (care are rată de convergenţă pătratică locală), atunci putem avea probleme numerice datorită faptului că Hessiana este prost condiţionată când este aproape singulară. Pe de altă parte, dacă ǫ k este foarte mare atunci matricea ǫ k I n + 2 f(x k ) este diagonal dominantă şi deci metoda va avea un comportament similar cu algoritmul gradient (care are rată de convergenţă liniară). Dând o iteraţie x k şi ǫ k > 0, încercăm să calculăm factorizarea Cholesky LL T a matricei ǫ k I n + 2 f(x k ). Dacă această factorizare nu este posibilă atunci multiplicăm ǫ k cu un factor β (de exemplu, putem alege β = 4) şi repetăm până când această factorizare este posibilă. Odată ce această factorizare este posibilă, o folosim în aflarea direcţiei Newton, adică o folosim în rezolvarea sistemului LL T d k = f(x k ). Convergenţa globală a metodei Newton modificată (7.4) se demonstrează în aceeaşi manieră ca în Teorema

117 7.2. Metode quasi-newton Metode quasi-newton După cum am menţionat anterior, principalul dezavantaj al metodei Newton constă în faptul că la fiecare iteraţie este nevoie să calculăm Hessiana şi inversa sa, operaţii costisitoare, in general de ordinul O(n 3 ). Metodele quasi-newton au scopul de a înlocui inversa Hessianei 2 f(x k ) 1 cu o matrice H k ce poate fi calculată mult mai uşor dar in acelaşi timp de a păstra rata de convergenţă rapidă a metodei Newton. În metodele quasi-newton se construieşte de asemenea o aproximare pătratică a funcţiei obiectiv unde Hessiana funcţiei pătratice se aproximează pe baza diferenţelor de gradient, deci aceste metode folosesc numai informaţie de ordinul întâi. Mai mult, costul per iteraţie la metodele quasi-newton este de ordinul O(n 2 ). Considerăm următoarea iteraţie: x k+1 = x k α k H k f(x k ). Se observă că direcţia d k = H k f(x k ) este una de descreştere dacă matricea H k 0: f(x k ) T d k = f(x k ) T H k f(x k ) < 0. În metoda quasi-newton pasul α k se alege de obicei cu procedura ideală sau pe bază de backtracking. În general, ca şi în cazul metodei Newton, dacă x k este suficient de apropiat de soluţia x alegem α k = 1. Obiectivul nostru este de a găsi reguli de actualizare pentru matricea H k astfel încât aceasta să conveargă asimptotic la adevărata inversă a Hessianei, adică: H k 2 f(x ) 1. Din aproximarea Taylor avem: f(x k+1 ) f(x k )+ 2 f(x k )(x k+1 x k ). În concluzie, din aproximarea adevăratei Hessiane 2 f(x k ) cu matricea B k+1 obţinem următoarea relaţie: f(x k+1 ) f(x k ) = B k+1 (x k+1 x k ) (7.5) sau echivalent, notând H k+1 = B 1 k+1 obţinem: H k+1 ( f(x k+1 ) f(x k )) = x k+1 x k. (7.6) Ecuaţia (7.5) sau (7.6) este cunoscută sub numele de ecuaţia secantei.

118 118 Capitolul 7. Metode de ordinul II pentru (UNLP) Pentru H 1 k+1 = 2 f(x k ) recuperăm metoda Newton. Se observă că avem o interpretare similară celei a metodei Newton, şi anume că la fiecare iteraţie considerăm o aproximare pătratică convexă a funcţiei obiectiv (i.e. B k 0) şi o minimizăm pentru a obţine direcţia de la următorul pas: d k = argmin d R nf(x k)+ f(x k ) T d+ 1 2 dt B k d. (7.7) Întrucât Hessiana este simetrică este necesar ca matricele B k+1 şi H k+1 să fie simetrice de asemenea. În concluzie avem n ecuaţii (din relaţia (7.6)) cu n(n+1) necunoscute (prin impunerea simetriei asupra matricei 2 H k+1 ) şi deci se obţine un număr infinit de soluţii. În continuare vom enunţa diferite reguli de actualizare a matricei B k+1 sau H k+1 ce satisfac ecuaţia secantei (7.5) sau (7.6) şi simetria Actualizări de rang unu Cea mai simplă actualizare posibilă pentru matricea B k sau echivalent pentru matricea H k este cea de rang unu. În acest caz considerăm o matrice simetrică pozitiv definită iniţială B 0 dată şi apoi actualizăm matricea B k+1 prin următoarea formulă: B k+1 = B k +β k u k u T k, în care β k R şi u k R n sunt alese astfel încât ecuaţia secantei (7.5) să fie satisfacută. Observăm că dacă matricea simetrică B 0 0 şi β k 0 atunci matricele B k sunt simetrice şi pozitiv definite pentru orice k 0. Introducem acum următoarele notaţii: k = x k+1 x k and δ k = f(x k+1 ) f(x k ). Impunem asupra matricei B k+1 condiţia (7.5): Aceasta conduce la B k+1 k = δ k. δ k = B k k +β k (u T k k )u k. Concluzionăm că u k = γ(δ k B k k ) pentru un anumit scalar γ şi înlocuind această expresie în egalitatea precedentă obţinem: δ k B k k = β k γ 2 [(δ k B k k ) T k ](δ k B k k ).

119 7.2. Metode quasi-newton 119 Din această relaţie rezultă că β k şi γ trebuie alese astfel încât: β k = sgn((δ k B k k ) T k ), γ = ± (δ k B k k ) T k 1/2. În concluzie, obţinem următoarea formulă pentru actualizarea lui B k+1 : B k+1 = B k + 1 (δ k B k k ) T k (δ k B k k )(δ k B k k ) T. AplicândformulaSherman-MorrisonpentruH k+1 = B 1 k+1 obţinemurmătoarea actualizare pentru H k+1 : H k+1 = H k + 1 δ T k ( k H k δ k ) ( k H k δ k )( k H k δ k ) T. Pentru a garanta că H k+1 0, este necesară satisfacerea următoarei inegalităţi: δ T k( k H k δ k ) > 0. Însă în practică se poate observa că există şi cazuri când δ T k ( k H k δ k ) = 0. Ostrategiefolosităînaceastăsituaţieesteurmătoarea: dacă δ T k ( k H k δ k )estemic, deexemplu δ T k ( k H k δ k ) < r δ k k H k δ k, pentru un r < 1 suficient de mic, atunci considerăm H k+1 = H k Actualizări de rang doi În actualizările de rang doi pornim de asemenea de la ecuaţia secantei (7.5). Din moment ce avem o infinitate de matrice simetrice ce satisfac această ecuaţie, determinăm B k+1 în mod unic prin impunerea condiţiei caaceastămatricesăfiecâtmai aproapeposibil dematricea delaiteraţia precedentă B k : B k+1 = arg min B B k, B=B T, B k =δ k unde este o anumită normă pe matrice. Pentru o rezolvare explicită a problemei de optimizare anterioare putem considera norma: A W = W 1/2 AW 1/2 F, adică norma Frobenius, unde matricea W este aleasă astfel încât să fie pozitivdefinităsatisfăcândcondiţiawδ k = k. Înacestcaz, soluţiab k+1 a problemei de optimizare anterioare este dată de următoarea formulă: B k+1 = (I n β k δ k T k )B k(i n β k k δ T k )+β kδ k δ T k,

120 120 Capitolul 7. Metode de ordinul II pentru (UNLP) în care β k = 1. Folosind formula Sherman-Morrison-Woodbury T k δ k obţinem că actualizarea pentru H k+1 = B 1 k+1 este dată de expresia: H k+1 = H k + 1 T k δ k T 1 k k δk TH (H k δ k )(H k δ k ) T. kδ k Metoda de optimizare quasi-newton bazată pe această actualizare a matricei H k+1 sa numeşte metoda Davidon-Fletcher-Powell (DFP). Ca şi mai înainte, alegem matricea iniţială H 0 0. Metoda (DFP) satisface următoarele proprietăţi (i) toate matricele H k 0 pentru orice k 0; (ii) dacă f(x) = 1 2 xt Qx q T x este pătratică şi strict convexă atunci metoda (DFP) furnizează direcţii conjugate, adică vectorii d k = H k f(x k ) sunt direcţii Q-conjugate. Mai mult, H n = Q 1 şi în particular dacă H 0 = I n atunci direcţiile d k coincid cu direcţiile din metoda gradienţilor conjugaţi. De aceea, putem găsi soluţia unei probleme de optimizare pătratice în maximum n paşi cu ajutorul metodei quasi-newton (DFP). Dacă în locul problemei de optimizare anterioare considerăm problema: H k+1 = arg min H H k, H=H T, Hδ k = k unde folosim aceeaşi normă pe matrice ca şi înainte, dar de data aceasta matricea pozitiv definită W satisface condiţia W k = δ k. Obţinem următoarea soluţie, numită şi metoda Broyden-Fletcher-Goldfarb-Shanno (BFGS): H k+1 = H k 1 ( T k δ (Hk δ k ) T k + k(h k δ k ) T) +β k ( k T k ) k β k = 1 [ T k δ 1+ δt k δ ] k k T k δ. k Aceleaşi proprietăţi sunt valide şi pentru metoda (BFGS) ca şi în cazul metodei (DFP). Cu toate acestea, din punct de vedere numeric, (BFGS) este considerată cea mai stabilă metodă. Se observă că metodele quasi-newton necesită doar informaţie de ordinul întâi (adică avem nevoie de informaţie de tip gradient). Observăm de asemenea că numărul de operaţii aritmetice pentru actualizarea matricelor H k+1 şi apoi pentru

121 7.2. Metode quasi-newton 121 calcularea noului punct x k+1 este de ordinul O(n 2 ), mult mai mic decât în cazul metodei Newton care are complexitate de ordinul O(n 3 ). Mai mult, direcţiile generate de metodele quasi-newton sunt direcţii de descreştere dacă asigurăm satisfacerea condiţiei H k 0. În general, H k ( 2 f(x )) 1 pentru k, iar în anumite condiţii vom arăta că aceste metode au rată de convergenţă superliniară Convergenţa locală a metodelor quasi-newton În acest subcapitol analizăm rata de convergenţă locală a metodelor quasi-newton, în particular arătăm convergenţa superliniară pentru aceste metode: Teorema Fie x un punct ce satisface condiţiile suficiente de optimalitate de ordinul II. Presupunem iteraţia quasi-newton de forma x k+1 = x k H k f(x k ), unde H k este inversabilă pentru orice k 0 şi satisface următoarea condiţie Lipschitz: H k ( 2 f(x k ) 2 f(y)) M x k y y R n, şi condiţia de compatibilitate: H k ( 2 f(x k ) H 1 k ) γ k (7.8) cu 0 < M < şi γ k γ < 1. De asemenea, presupunem că: x 0 x 2(1 γ) M. (7.9) Atunci x k converge la x cu rată superliniară sub ipoteza că γ k 0 sau rată liniară dacă γ k > γ > 0. Demonstraţie: Arătăm că x k+1 x β k x k x, unde β k <. În acest scop, avem următoarele relaţii: x k+1 x = x k x H k f(x k ) = x k x H k ( f(x k ) f(x )) 1 = H k (H 1 k (x k x )) H k 2 f(x +τ(x k x ))(x k x )dτ 0 = H k (H 1 k 2 f(x k ))(x k x ) 1 [ ] H k 2 f(x +τ(x k x )) 2 f(x k ) (x k x )dτ. 0

122 122 Capitolul 7. Metode de ordinul II pentru (UNLP) Aplicând norma în ambele părţi, rezultă: x k+1 x γ k x k x + = = ( γ k +M M x +τ(x k x ) x k dτ x k x ) (1 τ)dτ x k x x k x ( γ k + M ) 2 x k x x k x. Avem următoarea rată de convergenţă: x k+1 x β k x k x, unde β k = γ k + M x 2 k x. Observăm că obţinem rată de convergenţă superliniară dacă β k 0, care are loc când γ k 0. Convergenţa globală a metodelor quasi-newton se poate arăta în aceeaşi manieră ca în Teorema corespunzătoare cazului metodei Newton. Metodele quasi-newton care se bazează pe aproximarea inversei Hessianei reprezintă clasa de metode cea mai sofisticată pentru rezolvarea problemelor de optimizare fără constrângeri şi constituie punctul culminant în dezvoltarea de algoritmi eficienţi pentru aceste tipuri de probleme. Deşi folosesc numai informaţie de gradient, în special prin măsurarea schimbărilor în gradienţi, metodele quasi-newton construiesc o aproximare pătratică a funcţiei obiectiv suficient de bună pentru a produce convergenţă superliniară. Aceste metode sunt implementate în majoritatea pachetelor software existente: Matlab, IPOPT, etc.

123 Capitolul 8 Probleme de estimare şi fitting Problemele de estimare şi fitting sunt probleme de optimizare având funcţii obiectiv cu structura specială, şi anume de tipul celor mai mici pătrate: 1 min x R n 2 η M(x) 2. (8.1) În această problemă de optimizare, η R m sunt m măsuratori şi M : R n R m este un model, iar x R n se numesc parametrii modelului. Dacă adevărata valoare a lui x ar fi cunoscută, am putea evalua modelul M(x) pentru a obţine predicţiile corespunzătoare măsurătorilor. Calculul lui M(x), ce poate reprezenta o funcţie foarte complexă şi de exemplu include în structura sa soluţia unei ecuaţii diferenţiale, se numeşte uneori problema forward: pentru intrări date ale modelului, se determină ieşirile corespunzătoare. În problemele de estimare şi fitting se caută setul de parametri ai modelului x ce realizează o predicţie M(x) cât mai exactă pentru măsurătorile η date. Această problemă este denumită uzual problemă inversă: pentru un vector de ieşiri ale modelului η, se caută intrările corespunzătoare folosind un model ce depinde de setul de parametri x R n. Această clasă de probleme de optimizare (8.1) este frecvent intâlnită în cadrul unor aplicaţii cum ar fi: - aproximare de funcţii şi estimare de parametri; - estimare online pentru controlul proceselor dinamice; - prognoză meteo (asimilare de date meteorologice).

124 124 Capitolul 8. Probleme de estimare şi fitting Figura 8.1: Aproximarea funcţiei sin(x) cu polinoame de grad unu până la gradul patru. 8.1 Problema celor mai mici pătrate: cazul liniar Reamintim mai întâi definiţia pseudo-inversei unei matrice: Definiţia (Pseudo-Inversa Moore-Penrose) Fie matricea J R m n cu rang(j) = r, iar descompunerea valorilor singulare (DVS) corespunzătoare lui J dată de J = UΣV T. Atunci, pseudo-inversa Moore-Penrose J + are expresia: J + = VΣ + U T, în care σ 1,...,σ r sunt valorile singulare ale matricei J şi pentru σ 1 σ Σ = σ r, definim... Σ+ = σr 1 0 Teorema Dacă rang(j) = n, atunci Dacă rang(j) = m, atunci J + = (J T J) 1 J T. J + = J T (JJ T ) 1. 0.

125 8.1. Problema celor mai mici pătrate: cazul liniar 125 Demonstraţie: Observăm următoarele relaţii: (J T J) 1 J T = (VΣ T U T UΣV T ) 1 VΣ T U T = V(Σ T Σ) 1 V T VΣ T U T = V(Σ T Σ) 1 Σ T U T = VΣ + U T. Se urmează un raţionament similar şi în cel de-al doilea caz. Se observă că dacă rang(j) = n, i.e. coloanele lui J sunt liniar independente atunci J T J este inversabilă. Întâlnim frecvent în aplicaţii de estimare şi fitting modele descrise de funcţii liniare în x. Dacă M este liniar, adică M(x) = Jx, atunci funcţia obiectiv devine f(x) = 1 η 2 Jx 2, ceea ce reprezintă o funcţie convexă pătratică datorită faptului ca Hessiana 2 f(x) = J T J 0. În acest caz definim problema celor mai mici pătrate (CMMP) liniară ca: (= 12 ) η Jx 2. min f(x) x R n Deoarece în problema CMMP liniară funcţia obiectiv f este pătratică convexă, condiţiile de optimalitate de ordinul întâi f(x) = 0 sunt suficiente pentru determinarea unui punct de optim global. În concluzie, orice soluţie a sistemului J T Jx J T η = 0 este punct de minim global al problemei CMMP. Presupunând că rang(j) = n, punctul de minim global este unic şi se determină prin următoarea relaţie: J T Jx J T η = 0 x = (J T J) 1 J T η = J + η. (8.2) Exemplul [Problema mediei]: Fie următoarea problemă simplă de optimizare: 1 m min (η i x) 2. x R 2 i=1 Observăm că ea se încadrează în clasa de probleme liniare de tip CMMP, unde vectorul η şi matricea J R m 1 sunt date de η 1 η =. η m, J = Deoarece J T J = m, se observă uşor că: J + = (J T J) 1 J T = 1 m 1.. (8.3) 1 [ ]

126 126 Capitolul 8. Probleme de estimare şi fitting şi din acest motiv concluzionăm că punctul de minim este egal cu media ˆη a punctelor date η i, adică: x = J + η = 1 m η i = ˆη. m Exemplul [Regresie liniară]: Se dă setul de date {t 1,...,t m } cu valorile corespunzătoare {η 1,...,η m }. Dorim să determinăm vectorul parame- trilor x = (x 1,x 2 ), astfel încât polinomul de ordinul întâi p(t;x) = x 1 + x 2 t realizează predicţia lui η la momentul t. Problema de optimizare se prezintă sub forma: 1 min x R 2 2 m i=1 i=1 (η i p(t i ;x)) 2 1 = min x R 2 2 [ η J x1 x 2 ] 2, în care η este acelaşi vector ca şi în cazul (8.3), iar matricea J are forma: 1 t 1 J =... 1 t n Punctul de minim local este determinat de ecuaţia (8.2), unde calculul matricei (J T J) este trivial: [ ] [ ] m J T ti 1 ˆt J = ti t 2 = m. i ˆt ˆt2 Pentru a obţine x, în primul rând se calculează (J T J) 1 : [ ] (J T J) 1 1 ˆt2 ˆt =. (8.4) m(ˆt 2 (ˆt) 2 ) ˆt 1 În al doilea rând, calculăm J T η după cum urmează: [ ] η 1 [ ] [ˆηˆηt] 1 1 J T ηi η = t 1 t. = ηi = m. (8.5) m t i η m Deci, punctul de minim local este determinat de combinarea expresiilor (8.4) şi (8.5). Se observă că: ˆt 2 (ˆt) 2 = 1 m (ti ˆt) 2 = σ 2 t,

127 8.1. Problema celor mai mici pătrate: cazul liniar 127 unde ultima relaţie rezultă din definiţia standard a variantei σ t. Coeficientul de corelaţie ρ este definit similar de expresia: ρ = (ηi ˆη)(t i ˆt) mσ t σ η tη = ˆ ˆηˆt. σ t σ η Vectorul parametrilor x = (x 1,x 2 ) este determinat de: x = 1 σ 2 t ] [ˆt2 ˆη ˆt ˆηt = ˆt ˆη + ˆηt [ˆη ˆt ση σ t ρ σ η σ t ρ În final, expresia poate fi formulată ca un polinom de gradul întâi: p(t;x ) = ˆη +(t ˆt) σ η σ t ρ Probleme CMMP liniare prost condiţionate Dacă J T J este inversabilă, mulţimea soluţiilor optime X conţine un singur punct de optim x, determinat de ecuaţia (8.2): X = {(J T J) 1 Jη}. Dacă J T J nu este inversabilă, mulţimea soluţiilor X este dată de: ]. X = {x R n : f(x) = 0} = {x R n : J T Jx J T η = 0}. Pentru alegerea celei mai bune soluţii din această mulţime, se caută soluţia cu norma minimă, adică vectorul x cunormaminimă cesatisface condiţia x X. 1 min x X 2 x 2. (8.6) Arătăm mai departe că această soluţie cu normă minimă este dată de pseudo-inversa Moore-Penrose, adică soluţia optimă a problemei de optimizare (8.6) este dată de x = J + η. Soluţia cu norma minimă, adică soluţia problemei de optimizare (8.6), poate fi determinată dintr-o problemă regularizată CMMP liniară, şi anume: min f(x) x R n (= 12 η Jx 2 + β2 x 2 ), (8.7) cu o constantă β > 0 suficient de mică. Seştie că problema de optimizare (8.7) este echivalentă cu problema de optimizare (8.6) cu condiţia că β

128 128 Capitolul 8. Probleme de estimare şi fitting suficient de mic este ales în mod adecvat. Condiţiile de optimalitate pentru problema pătratică convexă (8.7) sunt: q f(x) = J T Jx J T η +βx = (J T J +βi n )x J T η = 0 x = (J T J +βi n ) 1 J T η. (8.8) Lema Următoarea relaţie are loc pentru o matrice J R m n : lim β 0 (JT J +βi n ) 1 J T = J +. Demonstraţie: Din descompunerea DVS corespunzătoare matricei J = UΣV T avem că matricea (J T J +βi n ) 1 J T poate fi scrisă în forma: (J T J +βi n ) 1 J T = (VΣ T U T UΣV T +β I }{{} n VV T ) 1 = V(Σ T Σ+βI n ) 1 V T VΣ T U T = V(Σ T Σ+βI n ) 1 Σ T U T. Partea dreaptă a ecuaţiei are expresia: σ1 2 +β... V σr 2 +β β 1 σ 1... σ r 0 J T }{{} UΣ T V T UT Calcularea produsului de matrice conduce la: σ 1 σ1 2+β... V UT. σ r σ 2 r +β 0 β Se observă uşor că pentru β 0 fiecare element diagonal are forma: { σ 1 i lim β 0 σi 2 +β = σ i daca σ i 0 0 daca σ i = 0. Am arătat ca pseudo-inversa Moore-Penrose J + rezolvă problema (8.7) pentruoconstantăsuficient demicăβ > 0. Dinacest motiv, serealizează selecţia unei soluţii x X cu norma minimă.

129 8.1. Problema celor mai mici pătrate: cazul liniar Formularea statistică a problemelor CMMP liniare O problemă CMMP liniară (8.1) poate fi interpretată în sensul determinării unui set de parametri x R n ce explică măsurătorile perturbate η în cel mai bun mod. Fie η 1,...,η m valorile observate ale unei variabile aleatorii având densitatea P(η x) ce depinde de setul de parametri x. Presupunem η i = M i (x) + β i, cu x valoarea adevărată a parametrului şi β i zgomot Gaussian cu media E(β i ) = 0 şi varianta E(β i β i ) = σ 2 i. Mai mult, presupunem că β i şi β j sunt independente. Atunci definim funcţia de verosimilitate: P(η x) = m P(η i x) = i=1 m ( ) (ηi M i (x)) 2 exp. (8.9) i=1 2σ 2 i Metoda verosimilităţii maxime (introdusă de Fischer in 1912) presupune că estimatorul x al adevăratului set de parametri x este egal cu valoarea optimă ce maximizează funcţia de verosimilitate. Estimatorul astfel obţinut se numeşte estimator de verosimilitate maximă. În general, funcţiile P(η x) şi logp(η x) îşi ating maximul în acelaşi punct x. Pentru a determina deci punctul de maxim al funcţiei de verosimilitate P(η x) determinăm punctul de maxim al funcţiei logp(η x): logp(η x) = m i=1 (η i M i (x)) 2. 2σi 2 Deci parametrul ce maximizează P(η x) este dat de: x = argmax x RnP(η x) = arg min x R n = arg min x R n m (η i M i (x)) 2 i=1 2σ 2 log(p(η x)) 1 = arg min x R n 2 S 1 (η M(x)) 2, unde S = diag(σ 2 1,...,σ2 m ). Deci, concluzionăm că problema CMMP are o interpretare statistică. Se observă că datorită faptului că putem avea diferite deviaţii standard σ i pentru diferite măsurători η i, se recomandă scalarea măsurătorilor şi funcţiilor modelului pentru a obţine o funcţie

130 130 Capitolul 8. Probleme de estimare şi fitting obiectiv în formă uzuală CMMP ˆη ˆM(x) 2 2, după cum urmează: 1 n ( ) 2 ηi M i (x) 1 min = min x 2 x 2 S 1 (η M(x)) 2 i=1 σ i 1 = min x 2 S 1 η S 1 M(x) Problema celor mai mici pătrate: cazul neliniar Problemele CMMP liniare se pot rezolva uşor folosind metode numerice matriceale clasice, cum ar fi factorizarea QR. Pe de altă parte, rezolvarea globală a problemelor neliniare CMMP este în general NP-hard, dar pentru determinarea unui minim local se poate realiza iterativ. Principiul de bază constă în faptul că la fiecare iteraţie aproximăm problema originală cu propria liniarizare în punctul curent. În acest fel se obţine o apreciere mai bună pentru următoarea iteraţie, folosind acelaşi procedeu prin care metoda Newton determină rădăcinile unui polinom dat. În mod uzual, pentru probleme neliniare CMMP de forma: min η M(x) 2 2 x R n 1 se aplică metoda Gauss-Newton sau metoda Levenberg-Marquardt. Pentru a descrie aceste metode, introducem mai întâi câteva notaţii convenabile: şi redefinim funcţia obiectiv prin: F(x) = η M(x) f(x) = 1 2 F(x) 2, unde F(x) este o funcţie neliniară F : R n R m, cu m > n (adică considerăm un număr mai mare de măsurători decât parametri) Metoda Gauss-Newton (GN) Metoda Gauss-Newton este o metodă specializată pentru a rezolva problema CMMP neliniară: min (= 12 ) x R nf(x) F(x) 2. (8.10)

131 8.2. Problema celor mai mici pătrate: cazul neliniar 131 Într-un punct dat x k la iteraţia k, F(x) este liniarizat: F(x) F(x k )+J(x k )(x x k ), unde J(x) este Jacobianul lui F(x) definit de: J(x) = F(x) x, iar următoarea iteraţie x k+1 se obţine prin rezolvarea unei probleme liniare CMMP. În concluzie, x k+1 poate fi determinat ca o soluţie a următoarei probleme liniare CMMP: 1 x k+1 = arg min x R n 2 F(x k)+j(x k )(x x k ) 2. Pentru simplitate, în locul notaţiei J(x k ) folosimj k, iar în locul lui F(x k ) folosim F k şi dacă presupunem că J T k J k este inversabilă atunci: 1 x k+1 = arg min x R n 2 F k +J k (x x k ) 2 1 = x k +argmin d R n 2 F k +J k d 2 = x k (Jk T J k ) 1 Jk T F k. Observăm că în iteraţia metodei Gauss-Newton direcţia ( F(xk ) x d k = (Jk T J k) 1 Jk T F k = J + k F 1 k = argmin d R n 2 F k +J k d 2 este o direcţie de descreştere pentru funcţia f, deoarece gradientul f(x k ) ) T = F(xk ) = Jk TF k şi matriceajk TJ k estepozitivdefinită. Pentru a asigura convergenţa metodei Gauss-Newton, de obicei introducem şi un pas de lungime α k, adică: x k+1 = x k α k (J T k J k) 1 J T k F k, unde α k se alege cu una din procedurile descrise în capitolele anterioare (ideală, satisfăcând condiţiile Wolfe sau backtracking). Se poate observa că în apropierea punctului de minim local lungimea pasului devine 1, adică α k = 1.

132 132 Capitolul 8. Probleme de estimare şi fitting Metoda Levenberg-Marquardt Această metodă reprezintă generalizarea metodei Gauss-Newton, ce se aplică în cazurile particulare când J T k J k nu este inversabilă şi poate conduce la o convergenţă mai robustă pornind dintr-o regiune îndepărtată faţă de soluţie. Metoda Levenberg-Marquardt realizează un avans mai redus prin penalizarea normei acestuia. Direcţia în această metodă este dată de următoarea expresie: 1 d k = argmin d 2 F k +J k d β k 2 d 2 2 = (Jk T J k +β k I n ) 1 Jk T F k cu scalarul β k > 0 ales astfel încât matricea Jk TJ k + β k I n este pozitiv definită. Utilizând această direcţie, iteraţia în metoda Levenberg-Marquardt este dată de următoarea expresie: x k+1 = x k α k (J T k J k +β k I n ) 1 J T k F k, în care α k se alege iarăşi cu una din procedurile descrise în capitolele anterioare. În mod similar, în apropierea punctului de minim local lungimea pasului devine 1, adică α k = 1. Observăm că dacă valoarea scalarului β k se consideră foarte mare, nu aplicăm nici o corecţie punctului curent x k pentru că dacă β k atunci direcţia în metoda Levenberg-Marquardt satisface d k 0. Mai precis, în acest caz d k 1 β k Jk TF k 0. Pe de altă parte, pentru valori mici ale lui β k, adică pentru β k 0 avem că direcţia în metoda Levenberg-Marquardt satisface d k J + k F k (conform Lemmei 8.1.1) şi deci coincide cu direcţia din metoda Gauss-Newton. În cele ce urmează arătăm că aceste două metode au legătură strânsă cu metoda Newton. Este interesant de observat că gradientul funcţiei obiectiv aferent problemei CMMP neliniare f(x) = 1 2 F(x) 2 2 este dat de relaţia: f(x) = J(x) T F(x), unde reamintim că J(x) este Jacobianul funcţiei F(x). În mod evident acest gradient se regăseşte în iteraţiile metodelor Gauss-Newton sau Levenberg-Marquardt. Deci, dacă gradientul este nul, atunci direcţiile în cele două metode sunt de asemenea nule. Aceasta este o condiţie necesară pentru convergenţa la puncte staţionare a unei metode: ambele

133 8.2. Problema celor mai mici pătrate: cazul neliniar 133 metode Gauss-Newton şi Levenberg-Marquardt nu avansează dintr-un punct staţionar x k cu f(x k ) = 0. Mai departe notămcu F i componenta i a funcţiei multivectoriale F. Utilizând calculul diferenţial standard observăm că Hessiana funcţiei obiectiv f este dată de următoarea expresie: m 2 f(x) = J(x) T J(x)+ F i (x) 2 F i (x). În concluzie, în cele două metode Gauss-Newton şi Levenberg-Marquardt neglijăm cel de-al doilea termen al Hessianei funcţiei obiectiv f, adică termenul m i=1 F i(x) 2 F i (x). Deci în aceste metode salvăm calcule prin neluarea în calcul a acestui termen m i=1 F i(x) 2 F i (x), ceea ce în principiu conduce la o deteriorare a ratei de convergenţă a acestor metode faţă de rata de convergenţă a metodei Newton. Pe de altă parte, dacă acest termen m i=1 F i(x) 2 F i (x) este mic în apropierea unei soluţii locale, atunci rata de convergenţă a acestor două metode este comparabilă cu cea a metodei Newton. Observăm că acest termen este mic în apropierea unei soluţii dacă funcţia F(x) este aproape liniară sau dacă componentele F i (x) sunt mici în apropiere de soluţie. De exemplu, dacă se caută o soluţie a sistemului neliniar F(x) = 0, cu m = n, atunci termenul neglijat este nul la soluţie. Mai mult, dacă matricea J k = J(x k ) R n n este inversabilă, atunci direcţia în metoda Gauss-Newton este dată de: i=1 (J T k J k) 1 J T k F k = J 1 k F k. Deci iteraţia în această metodă devine: x k+1 = x k (J(x k )) 1 F(x k ), şi deci coincide cu iteraţia din metoda Newton standard pentru rezolvarea sistemului F(x) = 0. În acest caz, de obicei rata de convergenţă este superliniară. Convergenţa globală şi locală a metodelor Gauss-Newton şi Levenberg-Marquardt poate fi derivată utilizând argumente similare celor din capitolul precedent pentru metoda (quasi-) Newton. Pentru convergenţă locală avem următorul rezultat: Teorema Fie x un punct ce satisface condiţiile suficiente de ordinul doi. Iteraţia metodelor Gauss-Newton sau Levenberg-Marquardt în apropierea punctului x are forma x k+1 = x k H k f(x k ), unde

134 134 Capitolul 8. Probleme de estimare şi fitting matricea H k este dată fie de H k = (J T k J k) 1 fie de H k = (J T k J k+β k I n ) 1. Pentru matricea inversabilă pozitiv definită H k presupunem satisfăcută următoarea condiţie Lipschitz: H k ( 2 f(x k ) 2 f(y)) M x k y k N, y R n şi, de asemenea, condiţia de compatibilitate: H k ( 2 f(x k ) H 1 k ) γ k k N (8.11) cu 0 < M < şi γ k γ < 1. Presupunem de asemenea că x 0 x 2(1 γ) M. (8.12) Atunci x k converge la x cu rata liniară dacă γ k > γ > 0. Demonstraţie: Vezi demonstraţia Teoremei Aplicaţie: identificarea unui sistem Hammerstein Un sistem dinamic Hammerstein este un sistem discret de tip cascadă format dintr-o componentă neliniară, urmată de o dinamică liniară (vezi Fig. 8.2). Multe sisteme practice pot fi modelate folosindu-se acest tip de dinamică neliniară, e.g. modelarea liniilor de transmisie sau amplificatoarelor de putere înaltă, etc. Componenta statică neliniară este reprezentată de o funcţie neliniară G( ), în timp ce componenta dinamică liniară este descrisă de o funcţie de transfer H(q) = q 1 A p(q 1 ), unde A B p(q 1 ) p şi B p sunt polinoame. Problema constă în găsirea coeficienţilor a i şi b j pentru orice i = 1,...,n A şi j = 0,...,n B, unde n A şi n B sunt gradele polinoamelor A p (q 1 ) şi B p (q 1 ) şi aproximarea componentei neliniare G( ), folosind numai date de intrări, u t, şi ieşiri, y t. Considerăm de asemenea că e t reprezintă erori de măsurare. Principala caracteristică a acestei probleme este aceea că semnalul intermediar, x t, nu este accesibil pentru măsurători, şi deci componenta neliniară G( ) nu se poate determina direct din teoria de aproximare a funcţiilor.

135 8.3. Aplicaţie: identificarea unui sistem Hammerstein 135 Figura 8.2: Sistem dinamic discret Hammerstein. Ecuaţiile ce descriu sistemul Hammerstein sunt următoarele: A(q 1 )y t = B(q 1 ) x t 1 +A(q 1 )e t x t = G(u t ) A(q 1 ) = 1+a 1 q 1 +a 2 q 2 + +a na q n A B(q 1 ) = b 0 +b 1 q 1 +b 2 q 2 + +b nb q n B. (8.13) Pentru problema aproximării componentei neliniare G( ) utilizăm aproximarea bazată pe funcţii de bază: G(u t ) = i Γ γ i f i (u t )+ǫ t, (8.14) unde f i ( ) sunt funcţii de bază (e.g. funcţii polinomiale) şi ǫ t reprezintă eroarea de aproximare. Înlocuind ecuaţia (8.14) în (8.13), obţinem: y t = a 1 y t 1 a 2 y t 2 a na y t na (8.15) +b 0 γ i f i (u t 1 )+ +b nb γ i f i (u t nb 1)+v t, i Γ pentru orice t = N 0,,N max, unde v t = A p (q 1 )e t + B p (q 1 )ǫ t 1 reprezintă eroarea de aproximare totală. Suntem interesaţi în găsirea coeficienţilor polinoamelor A p şi B p şi a ponderilor γ i corespunzătoare funcţiilor debază f i folosindmetodacelor maimici pătratepentru relaţia (8.15). Introducem următoarele notaţii: i Γ x a = [a 1 a 2 a na ] T x b = [b 0 b 1 b nb ] T x γ = [γ 1 γ 2 γ n ] T, (8.16) unde pentu consistenţă notăm γ i pentru i Γ cu γ 1,γ 2,,γ m (m reprezintă cardinalitatea mulţimii Γ) şi cu f i, funcţiile de bază

136 136 Capitolul 8. Probleme de estimare şi fitting corespunzătoare ponderilor γ i pentru orice i = 1,,m. Ecuaţia (8.15) ne conduce la forma vectorială clasică a problemei celor mai mici pătrate: y t = ϕ T (t)x+v t, (8.17) unde vectorii din ecuaţia (8.17) au următoarele expresii: x = [x T a θ T γ 1 θ T γ 2 θ T γ m ] T, θ γj = [b 0 γ j b 1 γ j b nb γ j ] T ϕ(t) = [ϕ T a (t) ϕt 1 (t) ϕt 2 (t) ϕt m (t)]t (8.18) ϕ a (t) = [ y t 1 y t 2 y t na ] T ϕ i (t) = [f i (u t 1 ) f i (u t nb 1)] T pentru orice i = 1,,m şi t = N 0,,N max. Dorim să găsim parametrii x a,x b şi x γ prin rezolvarea unei probleme de tipul celor mai mici pătrate ce rezultă din relaţia (8.15) cu metoda Gauss-Newton. Ecuaţia (8.15) poate fi scrisă compact, după cum urmează: unde matricea Q t este dată de: y t = ϕ a (t) T x a +x T b Q tx γ, (8.19) Q t = [ ϕ 1 (t) ϕ m (t) ], pentru toţi t = N 0,,N max. Definim funcţia biliniară: y N0 ϕ a (N 0 ) T x a x T b Q N 0 x γ F(x a,x b,x γ )= y Nmax ϕ a (N max ) T x a x T b Q N max x γ Atunci, putem estima parametrii x a,x b şi x γ prin rezolvarea unei probleme de tipul celor mai mici pătrate neliniare în forma: (x a,x b,x γ ) = arg min F(x a,x b,x γ ) 2, (8.20) x a,x b,x γ unde F are o structură biliniară, x = [ x T a x T b xγ] T T Rn şi n = n A + n B +m. Observăm că funcţia F(x a,x b,x γ ) este diferenţiabilă: ϕ a (N 0 ) T x T γ BT N 0 x T b B N 0 F(x a,x b,x γ ) =. ϕ a (N max ) T x T γbn T max x T b B N max Din Fig. 8.3 se observă o urmărire foarte bună a traiectoriei măsurate y m de către sistemul Hammerstein ai cărui parametri au fost obţinuţi ca soluţie a problemei celor mai mici pătrate neliniare rezolvată cu metoda Gauss-Newton.

137 8.3. Aplicaţie: identificarea unui sistem Hammerstein y estimat y m masurat y, y m masuratori Figura 8.3: Pentru N max = 300 date de intrare şi iesire reprezentăm ieşirea y m măsurată şi ieşirea y produsă de sistemul Hammerstein ai cărui parametri au fost identificaţi prin procedura descrisă anterior. Comentarii finale: Cu aceste două metode prezentate în acest capitol, Gauss-Newton şi Levenberg-Marquardt, încheiem Partea a II-a a acestei lucrări dedicate metodelor numerice de optimizare pentru probleme fără constrângeri (UNLP): min x Rnf(x). Mai multe detalii despre metodele prezentate aici cât şi alte metode care nu au fost abordate se pot găsi în cărţile clasice de optimizare neliniară ale lui Bertsekas [2], Luenberger [9], Nesterov [11] şi Nocedal şi Wright [13]. Teoria optimizării dezvoltată aici urmează în linii mari prezentarea din [9]. Pentru cazul convex, o analiză completă a metodelor de optimizare existente se găseşte în [11]. Dintre cărţile dedicate implementării numerice a acestor metode de optimizare amintim de exemplu lucrarea lui Gill, Murray şi Wright [7]. O descriere detaliată a pachetelor software existente pe piaţă este dată în More şi Wright [10].

138 Partea III Optimizare cu constrângeri

139

140 Capitolul 9 Teoria dualităţii În această parte finală a lucrării ne îndreptăm din nou atenţia asupra problemelor de optimizare cu constrângeri (NLP). Expunerea noastră va prezenta cazul constrâns ca o generalizare a cazului neconstrâns: vom defini condiţiile de optimalitate pentru cazul constrâns (de ordinul întâi şi doi), apoi vom arăta cum metodele numerice de optimizare de ordinul întâi şi doi pentru probleme de optimizare neconstrânse pot fi extinse la cazul în care avem constrângeri. În final vom discuta algoritmi specializaţi pentru cazul particular al problemelor convexe constrânse. Începem expunerea noastră cu teoria dualităţii, fundamentală în înţelegerea algoritmilor de optimizare prezentaţi ulterior. Reamintim că o problemă neliniară cu constrângeri (NLP) (NonLinear Programming) în forma standard este descrisă de: min x R n f(x) s.l.: g 1 (x) 0,...,g m (x) 0 h 1 (x) = 0,...,h p (x) = 0. Dacă introducem următoarele notaţii g(x) = [g 1 (x)...g m (x)] T şi h(x) = [h 1 (x)...h p (x)] T, atunci în formă compactă problema de optimizare amintita se rescrie astfel: (NLP) : min x R n f(x) s.l.: g(x) 0, h(x) = 0, unde funcţia obiectiv f : R n R, funcţia vectorială ce defineşte constrângerile de inegalitate g : R n R m şi funcţia vectorială ce

141 141 defineşte constrângerile de egalitate h : R n R p se presupune a fi de douăoridiferenţiabile. Înacestcaz, mulţimeafezabilăasociatăproblemei (NLP) este: X = {x R n : g(x) 0, h(x) = 0} şi astfel putem rescrie problema (NLP) şi sub forma: min f(x). x X Exemplul (Optimizarea rutării în reţea de comunicaţie) În cele ce urmează considerăm o reţea de comunicaţie a datelor, modelată de un graf direcţionat G = (V,E), unde V este mulţimea nodurilor şi E mulţimea perechilor ordonate e = (i,j) (vezi Fig. 9.1). Nodul i se numeşte origine şi nodul j destinaţie. Pentru orice pereche e considerăm Figura 9.1: Optimizare în reţeaua de comunicaţie. scalarul r e reprezentând traficul de intrare în e. În contextul rutării de date într-o reţea, r e este rata de trafic ce intră şi iese din reţea prin originea şi destinaţia lui e (măsurată în unităţi de date pe secundă). Obiectivul de rutare este acela de a împărţi fiecare trafic r e între diferitele rute existente de la originea i la destinaţia j în aşa fel încât fluxul total rezultat minimizează o funcţie cost adecvată. Notăm cu P e mulţimea tuturor rutelor existente între originea i şi destinaţia j a lui e şi cu x c partea de trafic din r e atribuită rutei c P e, numită de asemenea fluxul rutei c. Colecţia tuturor fluxurilor de date {x c : c P e, e E} trebuie să satisfacă următoarea constrângere: c P e x c = r e e E

142 142 Capitolul 9. Teoria dualităţii şi de asemenea x c 0 pentru orice c P e şi e E. Fluxul total t ij corespunzător arcului (i, j) este suma tuturor fluxurilor traversând arcul: t ij = x c. c: (i,j) c Putem defini o funcţie cost de forma: (i,j) E f ij(t ij ). Problema este să găsim toate fluxurile x c care minimizează această funcţie cost cu constrângerile anterioare: min f ij (t ij ) x c, t ij (i,j) E s.l. : x c 0 c P e, e E c P e x c = r e e E, t ij = c: (i,j) c x c (i,j) E. Se observă că putem elimina variabila t ij din problema precedentă folosind egalitatea t ij = x c, adică putem obţine o problemă de c: (i,j) c optimizare doar în variabila x c şi cu mai puţine constrângeri de egalitate, dar în acest caz funcţia obiectiv nu mai are structura separabilă de mai sus (e.g. după eliminare, Hessiana funcţiei obiectiv nu mai este diagonală). Exemplul (Proiecţia Euclideană) O noţiune fundamentală în geometrie şi optimizare este proiecţia Euclideană a unui vector x 0 R n pe multimea X R n definită de vectorul din X aflat la cea mai mică distanţă Euclidiană de x 0 (vezi Fig. 9.2). Matematic, această problemă se formulează sub forma unei probleme de optimizare constrânsă: min x x 0 2. x X Se observă că funcţia obiectiv pentru problema proiecţiei Euclidiene este pătratică, convexă, iar Hessiana este definită de matricea identitate. Când mulţimea X este nevidă, convexă şi închisă, se poate arăta că există o singură soluţie a problemei de optimizare anterioare, i.e. proiecţia este unică. Mai mult, dacă X este convexă, atunci problema precedentă este problemă de optimizare convexă. În particular, dacă mulţimea X este un poliedru, adică X = {x R n : Ax = b, Cx d} atunci proiecţia este o problemă de optimizare QP strict convexă. De exemplu, dacă presupunem

143 143 Figura 9.2: Proiecţia vectorului x 0 = [1 1 1] T pe politopul X = {x R 3 : x 0, x 1 +x 2 +x 3 1} (stânga) şi a originii (x 0 = 0) pe un hiperplan X = {x R 3 : a T x = b} (dreapta). că mulţimea X este un hiperplan X = {x R n : a T x = b}, unde b 0, atunci proiecţia originii x 0 = 0 devine o problemă pătratică cu o formă simplă: min x 2. x {x R n : a T x=b} Se ştie că vectorul a este perpendicular pe hiperplan, deci proiecţia lui x 0 = 0 pe X este coliniară cu a, adică x = ta pentru un scalar t (vezi Fig. 9.2). Înlocuind x = ta în ecuaţia ce defineşte hiperplanul şi rezolvând pentru scalarul t obţinem t = b/(a T a), iar proiecţia este dată de expresia: x = b a T a a. Exemplul (Problema localizării) Problema localizării are foarte multe aplicaţii în inginerie, cum ar fi localizarea unei ţinte, localizarea unui robot, etc. Considerăm că avem un număr m de senzori având locaţiile cunoscute s i R 3 şi cunoaştem, de asemenea, distanţele R i de la aceşti senzori la obiectul necunoscut a cărui poziţie trebuie determinată. Geometric (vezi Fig. 9.3), din datele cunoscute avem că obiectul se găseşte la intersecţia a m sfere de centre s i şi raze R i. Dorim să estimăm poziţia obiectului şi de asemenea să măsurăm mărimea/volumul intersecţiei acestor sfere. Putem considera problema găsirii celei mai mari sfere incluse în această intersecţie. Este uşor de observat că o sferă de centru x şi rază R este conţinută într-o sferă de centru s i şi rază R i dacă şi numai dacă diferenţa dintre raze este mai

144 144 Capitolul 9. Teoria dualităţii mare decât distanţa dintre centre. Putem atunci formula următoarea problemă de optimizare convexă cu constrângeri pătratice: max x R 3, R>0 R s.l. : R i R+ s i x i = 1,...,m. Figura 9.3: Problema localizării. 9.1 Funcţia Lagrange Funcţia Lagrange, denumită astfel după matematicianul Joseph Louis Lagrange, este foarte importantă în teoria dualităţii. Începem prin a defini noţiuni standard din teoria dualităţii. Definiţia (Problema de optimizare primală) Vom nota valoarea optimă globală a problemei de optimizare (NLP) cu f şi o vom numi valoarea optimă primală: { } f = min f(x) : g(x) 0, h(x) = 0. (9.1) x Rn Vom numi problema de optimizare (NLP) ca problema de optimizare primală, iar variabila de decizie x variabila primală. Notăm de asemenea cu X = {x R n : g(x) 0, h(x) = 0}

145 9.1. Funcţia Lagrange 145 mulţimea fezabilă primală a problemei (NLP). În concluzie, problema de optimizare primală este definită astfel: (NLP) : f = min x X f(x). Se observă că putem determina relativ uşor o margine superioară pentru valoareaoptimă f : selectăm unpunct fezabil x X şi atunci avem f f( x). Desigur, ne putem întreba cum se determină o margine inferioară pentru f. Vom arăta în cele ce urmează că această margine inferioară se poate determina folosind teoria dualităţii. Vom vedea de asemenea, că anumite probleme de optimizare pot fi rezolvate folosind teoria dualităţii. Cea mai populară formă a dualităţii pentru problemele de optimizare constrânse este dualitatea Lagrange. Deşi dualitatea Lagrange poate fi dezvoltată pentru probleme generale de optimizare constrânsă, cele mai interesante rezultate se dau pentru cazul problemelor convexe constrânse. Reamintim că problema (NLP) precedentă este problemă de optimizare convexă dacă funcţiile f şi g 1,,g m sunt funcţii convexe, iar funcţiile h 1,...,h p sunt funcţii affine. Începem prin a defini funcţia Lagrange(sau Lagrangianul): Definiţia (Funcţia Lagrange şi multiplicatorii Lagrange) Definim funcţia Lagrange sau Lagrangianul, L : R n R m R p R, ca fiind: L(x,λ,µ) = f(x)+λ T g(x)+µ T h(x). (9.2) În această funcţie am introdus două variabile noi, vectorii λ R m şi µ R p, numiţi multiplicatorii Lagrange sau variabile duale. Funcţia Lagrange joacă un rol principal atât în optimizarea convexă cât şi în cea neconvexă. În mod obişnuit, se impune ca multiplicatorii pentru constrângerile de inegalitate λ să nu fie negativi, adică λ 0, în timp ce multiplicatorii de egalitate µ sunt arbitrari. Aceste cerinţe sunt motivate de următoarea lemă: Lema (Mărginirea superioară a funcţiei Lagrange) Pentru orice variabilă primală x fezabilă pentru problema de optimizare (NLP) (i.e. g( x) 0 şi h( x) = 0) şi pentru orice variabilă duală ( λ, µ) R m R p satisfăcând λ 0, următoarea inegalitate are loc: L( x, λ, µ) f( x). (9.3)

146 146 Capitolul 9. Teoria dualităţii Demonstraţie: Demonstraţia urmează imediat din definiţia funcţiei Lagrange şi din faptul că λ 0, g( x) 0 şi h( x) = 0: L( x, λ, µ) = f( x)+ λ T g( x)+ µ T h( x) f( x). 9.2 Problema duală Din lema precedentă se observă că putem determina o margine inferioară pentru valoarea optimă primală a problemei (NLP). Mai mult, suntem interesaţi în determinarea celei mai bune margini inferioare pentru f. Pentru aceasta introducem mai întâi funcţia duală. Definiţia (Funcţia duală) Definim funcţia duală q : R m R p R ca infimul neconstrâns al Lagrangianului în funcţie de variabila x, pentru multiplicatorii λ şi µ fixaţi: q(λ,µ) = inf x RnL(x,λ,µ). (9.4) Această funcţie va lua adesea valoarea, caz în care spunem că perechea (λ, µ) este dual infezabilă. Funcţia duală are proprietăţi foarte interesante, pe care le demonstrăm în cele ce urmează: Lema (Mărginirea superioară a funcţiei duale) Pentru orice pereche duală ( λ, µ) fezabilă, adică λ 0 şi µ R p, următoarea inegalitate are loc: q( λ, µ) f. (9.5) Demonstraţie: Această lemă este o consecinţă directă a ecuaţiei (9.3) şi a definiţiei funcţiei duale: pentru x fezabil (i.e. g( x) 0 şi h( x) = 0) avem q( λ, µ) L( x, λ, µ) f( x) x X, λ R m +, µ Rp. Această inegalitate este satisfăcută în particular pentru punctul de minim global x (care este de asemenea fezabil, adică x X), ceea ce conduce la: q( λ, µ) f(x ) = f. Teorema (Concavitatea funcţiei duale) Funcţia duală q : R m R p R este întotdeauna funcţie concavă.

147 9.2. Problema duală 147 Demonstraţie: Se observă că Lagrangianul L(x,, ) este o funcţie afină în multiplicatorii (λ,µ) pentru x fixat. Fie α [0, 1], atunci pentru (λ 1,µ 1 ) şi (λ 2,µ 2 ) avem: q(αλ 1 +(1 α)λ 2,α 1 µ 1 +(1 α)µ 2 ) = inf x R nl(x,αλ 1 +(1 α)λ 2,α 1 µ 1 +(1 α)µ 2 ) = inf x R nαl(x,λ 1,µ 1 )+(1 α)l(x,λ 2,µ 2 ) α inf x R nl(x,λ 1,µ 1 )+(1 α) inf x R nl(x,λ 2,µ 2 ) = αq(λ 1,µ 1 )+(1 α)q(λ 2,µ 2 ). Din definiţia concavităţii rezultă că funcţia duală q este concavă. O întrebare naturală ar fi următoarea: care este cea mai bună margine inferioară ce poate fi obţinută dintr-o funcţie duală? Răspunsul este simplu: se obţine prin maximizarea dualei după toate valorile fezabile ale multiplicatorilor, rezultând astfel aşa-numita problemă duală. Definiţia (Problema duală) Problema duală este definită ca fiind problema de maximizare concavă a funcţiei duale: unde notăm cu q valoarea optimă duală. q = max q(λ,µ), (9.6) λ 0, µ Rp Este interesant de observat că problema duală este întotdeauna problemă convexă chiar dacă problema primală (UNLP) nu este convexă. Definim mulţimea fezabilă duală Ω = R m + R p. Ca o consecinţă imediată a ultimei leme, obţinem următorul rezultat fundamental numit dualitatea slabă: Teorema (Dualitate slabă) Următoarea inegalitate are loc pentru orice problemă de optimizare (NLP): q f. (9.7) Se observă că dacă există x fezabil pentru problema primală şi (λ,µ ) fezabilpentruproblemadualăastfelîncâtq(λ,µ ) = f(x )atuncix este punct de minim global pentru problema primală şi (λ,µ ) este punct de maxim global pentru problema duală. Mai mult, dacă problema primală este nemărginită inferior (adică f = ), atunci q(λ,µ) = pentru orice(λ, µ) Ω(adică pentru orice pereche duală fezabilă). De asemenea, dacă q =, atunci problema primală este infezabilă.

148 148 Capitolul 9. Teoria dualităţii Interpretarea geometrică: Dăm o interpretare simplă a funcţiei duale şi a dualităţii slabe în termeni geometrici. Pentru a vizualiza grafic, considerăm un caz particular al problemei (NLP) de forma min x R n{f(x) : g(x) 0}, având o singură constrângere de inegalitate. Definim mulţimea S = {(u,t) : x R n, f(x) = t, g(x) = u}. Deoarece fezabilitatea cere ca g(x) 0, problema primală presupune găsirea celui mai de jos punct al lui S situat în partea stângă a axei verticale (vezi Fig. 9.4). Figura 9.4: Interpretarea geometrică a dualităţii: dualitatea slabă (stânga) şi dualitatea puternică (dreapta). Esteclarcăpentruunscalarλdatfuncţiadualăseobţinedinurmătoarea problemă de minimizare: q(λ) = min (u,t) S λu+t. În concluzie, observăm că inegalitatea: λ T u+t q(λ) defineşteunhiperplansuportpentrumulţimeas definitdevectorul[λ 1] T şi mai mult, intersecţia acestui hiperplan cu axa verticală (i.e. pentru u = 0) dă q(λ).

149 9.2. Problema duală 149 Diferenţa f q se numeşte duality gap. Se observă că dualitatea slabă este valabilă pentru orice problemă de optimizare (NLP), însă în anumite cazuri (e.g. optimizarea convexă în care mulţimea fezabilă îndeplineşte condiţii speciale) există o versiune mai puternică a dualităţii, numită dualitatea puternică. Pentru a obţine dualitatea puternică avem nevoie de anumite proprietăţi de convexitate pentru problema (NLP): Condiţia Slater: Presupunem că problema (NLP) este convexă (i.e. f şi g 1,,g m sunt funcţii convexe, iar h 1,...,h p sunt funcţii afine) şi că există x R n fezabil astfel încât g( x) < 0 şi h( x) = 0. Pentru a demonstra dualitatea puternică vom utiliza teorema de separare prin hiperplane: Teorema (Dualitatea puternică) Dacă problema de optimizare convexă primală (NLP) satisface condi tia Slater, atunci valorile optime pentru problemele primale şi duale sunt egale, adică: q = f (9.8) şi mai mult (λ ) T g(x ) = 0, unde x este punct de minim global pentru problema primală şi (λ,µ ) este punct de maxim global pentru problema duală. Demonstraţie: Introducem următoarea mulţime convexă S 1 R m R p R definită explicit sub forma: S 1 = {(u,v,t) : x R n, g i (x) u i i, h j (x) = v j j, f(x) t}. Deoarece h este funcţie afină există matricea A R p n şi b R p astfel încât h(x) = Ax b. Presupunem de asemenea că rang(a) = p şi că f este finit. Definim o a doua mulţime convexă: S 2 = {(0,0,s) R m R p R : s < f }. Se observă imediat că mulţimile S 1 şi S 2 sunt convexe şi nu se intersectează. Din teorema de separare prin hiperplane avem că există ( λ, µ,ν) 0 şi α R astfel încât: λ T u+ µ T v+νt α (u,v,t) S 1

150 150 Capitolul 9. Teoria dualităţii şi λ T u+ µ T v +νt α (u,v,t) S 2. Din prima inegalitate se observă că λ 0 şi ν 0 (altfel λ T u + νt este nemărginită inferior peste mulţimea S 1 ). A doua inegalitate implică νt α pentru orice t < f şi deci νf α. Din această discuţie putem concluziona că pentru orice x R n : νf(x)+ λ T g(x)+ µ T (Ax b) α νf. Presupunem că ν > 0. În acest caz, impărţind ultima inegalitate prin ν obţinem: L(x, λ/ν, µ/ν) f x R n. Introducând notaţiile λ = λ/ν,µ = µ/ν şi minimizând după x în inegalitatea precedentă obţinem q(λ,µ) f, ceea ce implică q(λ,µ) = f, adică dualitatea puternică are loc în acest caz. Dacă ν = 0 avem că pentru orice x R n : λ T g(x)+ µ T (Ax b) 0. Aplicând această relaţie pentru vectorul Slater x avem: λ T g( x) 0. Dar ştim că g i ( x) < 0 şi λ 0, ceea ce conduce la λ = 0. Dar avem ( λ, µ,ν) 0, ceea ce implică µ 0. În concluzie, obţinem că pentru orice x R n avem µ T (Ax b) 0. Dar pentru vectorul Slater x avem µ T (A x b) = 0 şi deci există vectori x R n astfel încât µ T (Ax b) < 0, excepţie făcând cazul în care A T µ = 0. Dar A T µ = 0 nu este posibil deoarece rang(a) = p şi µ 0. În concluzie, cazul ν = 0 nu poate avea loc. Condiţia Slater poate fi relaxată când anumite constrângeri de inegalitate g i sunt funcţii afine. De exemplu, dacă primele r m constrângeri de inegalitate sunt descrise de funcţiile g 1,...,g r afine, atunci dualitatea puternică are loc dacă următoarea condiţie Slater relaxată este satisfacută: funcţiile f şi g r+1,,g m sunt funcţii convexe, iar funcţiile g 1,...,g r şi h 1,...,h p sunt funcţii afine şi există x astfel încât g l ( x) 0 pentru l = 1,...,r, g l ( x) < 0 pentru l = r +1,...,m şi h( x) = 0.

151 9.2. Problema duală 151 Interpretarea minimax: Se observă că dualitatea puternică poate fi prezentată utilizând teorema minimax (vezi Apendice): dacă următoarea relaţie are loc inf x R nsup λ 0 L(x,λ,µ) = sup λ 0 inf x R nl(x,λ,µ), atunci q = f. Într-adevăr, observăm că partea dreaptă a acestei relaţii este problema duală. Pe de altă parte, expresia din stânga, la prima vedere, nu are legătură cu problema primală. Dar se observă că funcţia în xdefinităcavaloareaoptimăaproblemeidemaximizaresup λ 0 L(x,λ,µ) este finită dacă g(x) 0 şi h(x) = 0, iar în acest caz sup λ 0 L(x,λ,µ) = f(x), ceea ce ne conduce la problema primală. În concluzie, dacă relaţia minimax anterioară este validă avem dualitate puternică. Deci dualitatea puternică poate avea loc şi pentru probleme(nlp) neconvexe care satifac egalitatea minimax precedentă. Exemplul Un exemplu de problema de optimizare neconvexă, des întâlnită în teoria sistemelor şi control, pentru care dualitatea puternică are loc este următorul: 1 min x R n 2 xt Qx+q T x+r 1 s.l.: 2 xt Q 1 x+q1 T x+r 1 0, unde matricele simetrice Q şi Q 1 nu sunt pozitiv semidefinite. Deci această problemă de optimizare cu funcţie obiectiv pătratică şi o singură constrângere de inegalitate descrisă de asemenea de o funcţie pătratică nu este convexă. Se poate arăta că dualitatea puternică are loc pentru această problemă sub ipoteza că există x pentru care inegalitatea este strictă, adică 1 2 xt Q 1 x+q T 1 x+r 1 < 0. În concluzie, dualitatea puternică are loc şi pentru probleme particulare neconvexe (NLP). În toate aceste situaţii, dualitatea puternică ne permite să reformulăm o problemă de optimizare (NLP) într-o problemă echivalentă duală, dar care este întotdeauna problemă convexă (deoarece duala este funcţie concavă). Pentru a înţelege mai bine reformularea duală a unei probleme (NLP), vom prezenta următorul exemplu:

152 152 Capitolul 9. Teoria dualităţii Exemplul (Duala unei probleme QP strict convexă) Fie problema QP strict convexă de forma: f 1 =min x R n 2 xt Qx+q T x s.l.: Cx d 0, Ax b = 0. Presupunem că Q 0 şi că mulţimea fezabilă X = {x R n : Cx d 0, Ax b = 0} este nevidă. Din expunerea anterioară avem că în acest caz dualitatea puternică are loc. Lagrangianul este dat de următoarea expresie: L(x,λ,µ) = 1 2 xt Qx+q T x+λ T (Cx d)+µ T (Ax b) = λ T d µ T b+ 1 2 xt Qx+ ( q +C T λ+a T µ ) T x. Funcţia duală este infimumul neconstrâns al Lagrangianului în funcţie de variabila x, Lagrangian ce este o funcţie pătratică de x. Obţinem că duala are forma: ( 1 q(λ,µ) = λ T d µ T b+ inf x R n 2 xt Qx+ ( q +C T λ+a T µ ) ) T x = λ T d µ T b 1 ( q +C T λ+a T µ ) T ( Q 1 q +C T λ+a T µ ), 2 unde în ultima egalitate am utilizat rezultate de bază pentru optimizarea neconstrânsă convexă pătratică. Se observă că funcţia duală este de asemenea pătratică în variabilele duale (λ,µ). Mai mult, funcţia duală este concavă deoarece Hessiana este negativ semidefinită. Astfel, problema de optimizare duală a unui QP strict convex este dată de expresia: q = max λ 0, µ R p 1 2 [ ] T [ λ C µ A [ d+cq 1 q b+aq 1 q ] T [ ] λ µ ] T [ ] λ 1 µ 2 qt Q 1 q. ] Q 1 [ C A (9.9) Datorită faptului că funcţia obiectiv este concavă, această problemă duală este ea însăşi un QP convex, dar în general nu este strict convex (adică Hessiana nu mai este pozitiv definită). Însă formularea QP duală dată

153 9.3. Programare liniară (LP) 153 de (9.9) are constrângeri mult mai simple, adică mulţimea fezabilă este descrisă de constrângeri foarte simple: λ 0 şi µ R p. Observăm că ultimul termen în funcţia duală este o constantă, care trebuie însă păstrată pentru ca q = f, adică dualitatea puternică să fie menţinută. 9.3 Programare liniară (LP) Programarea liniară ocupă un loc deosebit de important, atât în teorie cât şi în aplicaţiile practice din inginerie, economie, etc. Reamintim că o problemă de programare liniară (LP) are următoarea formă: f =min x R n ct x s.l.: Cx d 0, Ax b = 0. Exemplul (Dieta economică) Dorim să determinăm o dietă cât mai puţin costisitoare care să acopere însă în totalitate substanţele nutritive necesare organismului uman (această aplicaţie aparţine clasei de probleme de alocare a resurselor, de exemplu dieta unei armate). Presupunem că există pe piaţă n alimente care se vând la preţul c i pe bucată şi, de asemenea, există m ingrediente nutriţionale de bază pe care fiecare om trebuie să le consume într-o cantitate de minim d j unităţi. Mai ştim, de asemenea, că fiecare aliment i conţine c ji unităţi din elementul nutriţional j. Problema este să se determine numărul de unităţi din alimentul i, notat x i, care să minimizeze costul total şi în acelaşi timp să satisfacă constrângerile nutriţionale, adică avem următoarea problemă de optimizare (LP): min x R n c 1x 1 + +c n x n s.l.: c 11 x 1 + +c 1n x n d 1... c m1 x 1 + +c mn x n d m x i 0 i = 1,...,n. Exemplul La o problemă de programare operativă a producţiei restricţiile se referă la o serie de maşini (utilaje) cu care se execută produsele dorite, d i fiind timpul disponibil utilajului i pe perioada analizată, iar c ij timpul necesar prelucrării unui produs de tipul j pe

154 154 Capitolul 9. Teoria dualităţii utilajul i, scopul fiind maximizarea producţiei. Ca urmare, problema se pune ca un (LP), unde x i reprezintă numărul de unităţi de produs i pe perioada analizată: min x x R n 1 + +x n s.l.: c j1 x 1 + +c jn x n d j x i 0 i = 1,...,n. j = 1,...,m Ideea de bază în programarea liniară este că trebuie să căutăm soluţia problemei într-o mulţime cu un număr finit de soluţii de bază care sunt punctele de extrem (vârfurile) ale poliedrului ce defineşte mulţimea fezabilă: X = {x R n : Cx d 0, Ax b = 0}. Enunţăm această teoremă pentru cazul în care mulţimea fezabilă este mărginită, adică este un politop: Teorema Presupunem că mulţimea fezabi lă X este un politop, atunci există un punct de minim al problemei (LP) într-unul din vârfurile politopului. Demonstraţie: Dacă mulţimea fezabilă X este politop, atunci X este acoperirea convexă generată de vârfurile politopului: X = Conv({v 1,...,v q }). Mai mult, din faptul că X este mărginită avem că un punct de minim x există pentru problema (LP). Deoarece x este fezabil avem: x = q α i v i, i=1 unde α i 0 şi q i=1 α i = 1. Este clar că c T v i f, deoarece v i este fezabil pentru orice i. Notăm cu I mulţimea de indecşi definită astfel: I = {i : α i > 0}. Dacă există i 0 I astfel încât c T v i0 > f, atunci: f = c T x = α i0 c T v i0 + α i f = f i I\{i 0 }α i c T v i > i I şi deci obţinem o contradicţie. Aceasta implică că orice vârf pentru care α i > 0 este un punct de minim.

155 9.3. Programare liniară (LP) 155 Figura 9.5: Soluţia unui LP. Din teorema anterioară se poate observa că pentru a găsi o soluţie optimă pentru problema (LP) este suficient să determinăm vârfurile politopului ce descriu mulţimea fezabilă X, să evaluăm apoi funcţia obiectiv în aceste vârfuri şi să considerăm soluţia corespunzătoare celei mai mici valori(vezi Fig. 9.5). Se poate observa că în anumite cazuri această metodă nu este eficientă, deoarece există multe clase de mulţimi de tip politop des întâlnite în aplicaţii pentru care numărul de vârfuri este exponenţial, de exemplu politopul X = {x R n : x 1} are 2 n vârfuri. Pentru o astfel de problemă, la n = 100 de variabile, avem nevoie să căutăm soluţia printre vârfuri, ceea ce presupune un efort de calcul aproape imposibil de realizat de către calculatoarele actuale. Există însă metode alternative mai eficiente pentru rezolvarea unui (LP). O metodă modernă fundamentală de rezolvare a problemelor de optimizare (LP) este algoritmul simplex. Acest algoritm a fost introdus pentru prima dată de către matematicianul George B. Dantzig, în Algoritmul se bazează pe noţiunea de soluţie fundamentală a unui sistem de ecuaţii. Se poate arăta că un (LP) general poate fi întotdeauna scris în forma standard: min x : Ax = b, x 0}, x R n{ct prin folosirea de variabile suplimentare (numite şi variabile artificiale). Într-adevar, observăm următoarele: (i) orice restricţie de inegalitate poate fi transformată în egalitate, prin introducerea unei variabile suplimentare care nu este negativă şi folosind relaţiile: x d x+y = d, y 0 şi x d x y = d, y 0.

156 156 Capitolul 9. Teoria dualităţii (ii) orice variabilă fără restricţie de semn poate fi înlocuită cu două variabile cu restricţie de semn pozitiv, folosind relaţia: x oarecare x = y z, y 0, z 0. Folosind aceste două transformări putem aduce orice problemă (LP) în forma (LP) standard anterioară. Pentru problema (LP) standard presupunem că matricea A R p n are rangul p < n (adică numărul de ecuaţii este mai mic decât numărul de variabile şi deci avem suficiente grade de libertate pentru a optimiza). Fie o matrice B R p p nesingulară (numită şi matrice de bază) formată din coloanele lui A şi fie x k soluţia unică a sistemului de ecuaţii Bx k = d. Definim soluţia fundamentală a sistemului Ax = b, vectorul x k R n obţinut extinzând x k cu zerourile corespunzătoare componentelor ce nu sunt asociate coloanelor lui B. Definim de asemenea soluţiile fundamentale fezabile, adică soluţiile fundamentale x k care satisfac în plus constrângerea x k 0. Observăm că vârfurile mulţimii fezabile pentru problema (LP) standard, adică vârfurile poliedrului X = {x : R n : Ax = b, x 0}, sunt de fapt soluţiile fundamentale fezabile şi reciproc. Exemplul Considerăm politopul (numit adesea şi simplex) X = {x R 3 : x 0, x 1 + x 2 + x 3 = 1}. Observăm că vârfurile acestui politop coincid cu cele trei soluţii de bază ale ecuaţiei x 1 + x 2 + x 3 = 1 (vezi Fig. 9.6). Figura 9.6: Vârfurile unui simplex in R 3. Se poate arăta că o soluţie optimală a problemei (LP) în forma standard (în cazul în care aceasta există) se găseşte printre soluţiile fundamentale

157 9.3. Programare liniară (LP) 157 fezabile. Acest rezultat este consecinţa Teoremei 9.3.1, observând că vârfurile mulţimii fezabile X = {x : R n : Ax = b, x 0} coincid cu soluţiile fundamentale fezabile. Aceasta ne permite să căutăm soluţia optimă a problemei (LP) în submulţimea soluţiilor fundamentale care n! sunt cel mult la număr (corespunzătoare diverselor modalităţi p!(n p)! de a alege p coloane din n coloane). Ideea de bază în metoda simplex este următoarea: pornind de la o soluţie fundamentală fezabilă găsim o nouă soluţie fundamentală fezabilă în care funcţia obiectiv să descrească şi această căutare se face folosind tabelul simplex, care deşi necesită o matematică extrem de simplă nu se poate exprima uşor într-o formă matriceală compactă. A durat mult timp până s-a demonstrat că algoritmul simplex standard nu are complexitate polinomială. Un exemplu fiind clasa de probleme de mai jos, găsită de Klee şi Minty în 1972, în care algoritmul trebuie să analizeze 2 n baze (n numărul de necunoscute) până la găsirea celei optime: min x R n s.l.: n 10 n i x i i=1 i 1 ( 2 10 i j x j )+x i 100 i 1 i = 1,...,n j=1 x i 0 i = 1,...,n. Pentru oastfel deproblemă, la100devariabile, algoritmul vaavea iteraţii, şi chiar la o viteză de un miliard iteraţii pe secundă (mult peste puterea unui calculator actual) va termina în ani. Nu se ştie încă dacă există sau nu o altă modalitate de trecere de la o bază la alta, folosind tabelele simplex, prin care algoritmul simplex standard să devină polinomial. Au fost însă găsiţi algoritmi alternativi care nu se bazează pe tabele simplex, primul de acest gen fiind algoritmul de punct interior al lui Karmakar, despre care s-a demonstrat că are complexitate polinomială. În ciuda dezavantajelor amintite, algoritmul simplex rămâne şi în zilele noastre cel mai eficient algoritm în ceea ce priveşte viteza de lucru, simplitatea şi implementarea pe calculator. Mai mult, folosirea acestuia aduce informaţii mult mai ample decât găsirea soluţiei propriu-zise, este mult mai maleabil în cazul modificărilor ulterioare ale datelor problemei şi se pretează mult mai bine la interpretări economice. Un argument

158 158 Capitolul 9. Teoria dualităţii în plus în favoarea acestui algoritm este acela că încă nu a apărut o problemă practică în faţa căruia să clacheze. Algoritmii de punct interior rămân doar ca alternative teoretice sau pentru cazurile în care algoritmul simplex este lent, dar ei nu-l pot înlocui complet. Funcţia Lagrange asociată unui (LP) general este dată de expresia: L(x,λ,µ) = c T x+λ T (Cx d)+µ T (Ax b) = λ T d µ T b+ ( c+c T λ+a T µ ) T x. Observăm că Lagrangianul este de asemenea liniar în variabila x. Atunci funcţia duală corespunzătoare este dată de expresia: ( q(λ,µ) = λ T d µ T b+ inf c+c T λ+a T µ ) T x x R { n 0 dacă c+c = λ T d µ T b+ T λ+a T µ = 0 altfel. Astfel, funcţia obiectiv duală q(λ, µ) este de asemenea liniară şi ia valoarea în toate punctele ce nu satisfac egalitatea liniară c+c T λ+ A T µ = 0. Din moment ce vrem să maximizăm funcţia duală, aceste puncte pot fi privite ca puncte nefezabile a problemei duale (de aceea, le numim dual nefezabile), şi putem scrie în mod explicit duala LP-ului precedent ca: q = max λ R m, µ R p [ d b ] T [ ] λ µ s.l.: λ 0, c+c T λ+a T µ = 0. Se observă că problema duală este de asemenea un (LP). În anumite situaţii, problema (LP) duală este mai simplă decât problema (LP) primală (e.g. constrângerile problemei duale sunt mai simple decât ale problemei primale) şi deci în acest caz este de preferat rezolvarea dualei. Raţionând ca mai înainte, problema primală şi duală (LP) standard au următoarea formă: Primala: min x R n{ct x : Ax = b, x 0} Din dualitatea slabă avem valabilă inegalitatea: b T µ c T x Duala: max µ R n{bt µ : A T µ c} pentru orice x şi µ fezabile pentru problema primală şi respectiv duală. De asemenea, se poate arăta următoarea teoremă, cunoscută sub numele de teorema de dualitate pentru programarea liniară:

159 9.3. Programare liniară (LP) 159 Teorema (Teorema de dualitate pentru (LP)) Dacă una dintre problemele (LP), primală sau duală, are soluţie optimă atunci şi cealaltă problemă are soluţie optimă şi valorile optime corespunzătoare sunt egale. Mai mult, dacă una dintre probleme, primală sau duală, are funcţie obiectiv nemărginită atunci cealaltă problemă nu are puncte fezabile. O consecinţă imediată a acestei teoreme şi dualitatea slabă este lema Farkas (sau alternativei): fie A R p n şi b R p, atunci una şi numai una din următoarele relaţii are loc: (i) există x R n astfel încât Ax = b şi x 0; (ii) există µ R p astfel încât A T µ 0 şi b T µ < 0. Lema Farkas are foarte multe aplicaţii, e.g. poate fi folosită în programarea liniară, în teoria jocurilor sau în derivarea condiţiilor de optimalitate de ordinul întâi pentru probleme de optimizare (NLP) generale.

160 Capitolul 10 Condiţii de optimalitate pentru (NLP) În acest capitol vom defini condiţiile necesare şi suficiente de optimalitate pentru cazul problemelor constrânse. Vom arăta că aceste condiţii de optimalitate pot fi privite ca o generalizare a cazului neconstrâns la cel constrâns în care în locul funcţiei obiectiv folosim Lagrangianul. Reamintim problema (NLP) în forma standard: (NLP) : min x Rnf(x) (10.1) s.l.: g(x) 0, h(x) = 0, în care funcţiile f : R n R, g : R n R m si h : R n R p sunt funcţii diferenţiabile de două ori. Mulţimea fezabilă a problemei (NLP) este mulţimea punctelor ce satisfac contrângerile aferente, adică X = {x R n : g(x) 0, h(x) = 0}. Cu aceste notaţii, putem rescrie problema (NLP) într-o formă compactă: min f(x). x X Pentru această problemă constrânsă (NLP) vom defini condiţiile necesare şi suficiente de optimalitate. Primul rezultat se referă la următoarea problemă de optimizare constrânsa (demonstraţia acestui rezultat a fost dată în Capitolul 4, Teorema 4.3.1): Teorema (Condiţii de ordinul I pentru (NLP) având constrângeri convexe) Fie X o mulţime convexă şi o funcţie f C 1 (nu neapărat convexă). Pentru problema de optimizare constrânsă

161 161 min x X f(x) următoarele condiţii de optimalitate sunt satisfăcute: dacă x este minim local atunci: f(x ) T (x x ) 0 x X. Dacă în plus f este funcţie convexă atunci x este punct de minim dacă şi numai dacă: f(x ) T (x x ) 0 x X. Punctele x ce satisfac inegalitatea anterioară se numesc puncte staţionare pentru problema (NLP) cu constrângeri convexe. Înainte să continuăm cu definirea altor condiţii de optimalitate mai generale, vom avea nevoie să introducem noţiunea de constrângere activă/inactivă. Definiţia (Constrâgere activă/inactivă) O constrângere de inegalitate g i (x) 0 se numeşte activă în punctul fezabil x X dacă şi numai dacă g i (x) = 0, altfel ea se numeşte inactivă. Desigur, orice constrângere de egalitate h i (x) = 0 este activă într-un punct fezabil. Definiţia (Mulţimea activă) Mulţimea de indecşi, notată A(x) {1,..., m}, corespunzătoare constrângerilor active este numită mulţimea activă în punctul x X. Considerarea constrângerilor active este esenţială deoarece într-un punct fezabil x acestea restricţionează domeniul de fezabilitate aflat într-o vecină- tate a lui x, în timp ce constrângerile inactive nu influenţează această vecinătate. În particular, se poate observa uşor că dacă x este un punct de minim local al problemei (NLP), atunci x este de asemenea minim local pentru probleme de optimizare numai cu constrângeri de egalitate: min x R n f(x) s.l.: g i (x) = 0 i A(x ), h(x) = 0. Astfel, pentru studierea proprietăţilor unui punct de minim local ne putem rezuma la studierea constrângerilor active. Prezentăm mai întâi condiţiile de optimalitate de ordinul întâi şi doi pentru cazul când problema (NLP) are numai constrângeri de egalitate şi apoi extindem aceste condiţii la cazul general.

162 162 Capitolul 10. Condiţii de optimalitate pentru (NLP) 10.1 Condiţii de ordinul I pentru (NLP) având constrângeri de egalitate Pentru a defini condiţiile de optimalitate necesare şi suficiente de ordinul I şi II pentru probleme NLP generale, mai întâi studiem condiţiile de optimalitate pentru probleme NLP care au doar constrângeri de egalitate: (NLPe) : min f(x) (10.2) x R n s.l.: h(x) = 0. Observaţiile obţinute din această categorie de probleme, în care toate constrângerile sunt considerate active, vor fi utilizate ulterior pentru problemele (NLP) generale. Mai întâi însă, trebuie să definim anumite noţiuni ce se vor dovedi esenţiale în analiza noastră. O curbă pe o suprafaţă S este o mulţime de puncte x(t) S continuu parametrizate în t, pentru a t b. O curbă este diferenţiabilă dacă ẋ(t) = dx(t) există dt şi este de două ori diferenţiabilă dacă ẍ(t) există. O curbă x(t) trece prin punctul x dacă x = x(t ) pentru un t ce satisface a t b. Derivata curbei în x este desigur definită ca ẋ(t ). Acum, considerăm toate curbele diferenţiabile aflate pe suprafaţa S, ce trec printr-un punct x. Planul tangent i n x S este definit ca mulţimea tuturor derivatelor acestor curbe diferenţiabile in t, adică mulţimea tuturor vectorilor de forma ẋ(t ) definite de curbele x(t) S. Pentru o funcţie h: R n R p, cu h(x) = [h 1 (x)...h p (x)] T notăm Jacobianul sau prin h(x), unde reamintim că h(x) este o matrice p n cu elementul h i(x) x j pe poziţia (i,j): h 1 (x) x 1... h(x) =.. h p(x) x 1... Introducem acum un subspaţiu: h 1 (x) x n. h p(x) x n M = {d R n : h(x )d = 0} h 1 (x) T =. (10.3) h p (x) T şi investigăm acum sub ce condiţii acest subspaţiu M este egal cu planul tangent în x la suprafaţa S = {x R n : h(x) = 0}. În acest scop trebuie să introducem noţiunea de punct regulat.

163 10.1. Condiţii de ordinul I pentru (NLP) având constrângeri de egalitate163 Definiţia (Punct regulat) Un punct x ce satisface contrângerea h(x ) = 0 se numeşte punct regulat dacă gradienţii componentelor lui h, h 1 (x ),..., h p (x ), sunt liniar independenţi. De exemplu, dacă h(x) este afină, adică h(x) = Ax b cu A R p n, atunci condiţia de regularitate este echivalentă cu matricea A să aibă rangul egal cu p. Teorema Într-un punct regulat x al suprafeţei S definită de constrângerile de egalitate h(x) = 0, planul tangent este egal cu: M = {d R n : h(x )d = 0}. Demonstraţie: Notăm prin T planul tangent în x. Pentru ca T = M trebuie să demonstrăm incluziunea dublă T M şi M T. Este clar că T M, chiar dacă x este regulat sau nu, deoarece orice curbă x(t) ce trece prin x la t = t, având derivata ẋ(t ) astfel încât h(x )ẋ(t ) 0 nu ar fi în S (ţinem seama că h(x(t)) = 0 pentru orice a t b). Pentru a demonstra că M T, trebuie să arătăm că pentru un d M există o curbă în S ce trece prin x cu derivata d în t. Pentru a construi o asemenea curbă, considerăm ecuaţia: h(x +td+ h(x ) T u(t)) = 0 în care pentru un t fixat, considerăm u(t) R p ca fiind necunoscută. Această ecuaţie este un sistem de p ecuaţii şi p necunoscute, parametrizat în mod continuu prin t. La t = 0 avem soluţia u(0) = 0. Jacobianul sistemului în funcţie de u la t = 0 este matricea: h(x ) h(x ) T R p p, ce este nesingulară din moment ce x este un punct regulat şi astfel h(x ) este de rang maxim. Ca urmare, prin teorema funcţie implicite (vezi Apendice), există o soluţie continuu diferenţiabilă u(t) într-o regiune a t a. Curba x(t) = x +td+ h(x ) T u(t) este astfel, prin construcţie, o curbă in S. Prin derivarea sistemului la t = 0 avem: 0 = d dt h(x(t)) t=0 = h(x )d+ h(x ) h(x ) T u(0). Din definiţia lui d avem h(x )d = 0 şi astfel, din moment ce matricea h(x ) h(x ) T este nesingulară, tragem concluzia că ẋ(0) = 0. Astfel ẋ(0) = d+ h(x ) T ẋ(0) = d

164 164 Capitolul 10. Condiţii de optimalitate pentru (NLP) iar curba construită are în x derivata d. Exemplul (Plan tangent) Fie constrângerea dată de funcţia h : R 3 R, h(x) = x 2 1 +x2 2 +3x 1+3x 2 +x 3 1 şi punctul x = [0 0 1] T astfel încât h(x ) = 0. Jacobianul lui h(x) va fi: h(x) = [ 2x x ] iar h(x ) = [3 3 1], ceea ce arată că x este punct regulat. Astfel, din definiţia planului tangent (conform teoremei anterioare), orice direcţie tangentă d = [d 1 d 2 d 3 ] T va trebui să satisfacă h(x )d = 0, şi anume 3d 1 + 3d 2 + d 3 = 0. În Fig am reprezentat suprafaţa definită de h(x) = 0 şi planul tangent în punctul x = [0 0 1] T. 50 x x x 1 10 Figura 10.1: Suprafaţa pentru h(x) = 0 şi planul tangent aferent punctului x = [0 0 1] T. Prin cunoaşterea reprezentării planului tangent, derivarea condiţiilor necesare şi suficiente pentru ca un punct să fie un punct de minim local pentru probleme cu constrângeri de egalitate este destul de simplă. Lema Fie x un punct regulat al constrângerilor h(x) = 0 şi punct de extrem local (minim sau maxim local) al problemei de optimizare (NLPe). Atunci, orice d R n ce satisface: trebuie să satisfacă şi: h(x )d = 0 f(x ) T d = 0.

165 10.1. Condiţii de ordinul I pentru (NLP) având constrângeri de egalitate165 Demonstraţie: Fie un vector d în planul tangent în x şi x(t) fie orice curbă netedă pe suprafaţa de constrângere ce trece prin x cu derivata d, i.e. x(0) = x, ẋ(0) = d şi h(x(t)) = 0, cu a t a pentru un a > 0. Din moment ce x este un punct regulat, planul tangent este identic cu mulţimea de d-uri ce satisfac h(x )d = 0. Astfel, din moment ce x este punct de extrem local constrâns al lui f avem: sau, în mod echivalent d dt f(x(t)) t=0 = 0, f(x ) T d = 0. Teorema (Condiţii necesare de ordinul I pentru NLPe) Fie x un punct de extrem al funcţiei obiectiv f supusă la constrângerile h(x) = 0, i.e. al problemei de optimizare (NLPe), şi presupunem că x este un punct regulat pentru aceste constrângeri. Atunci, există un multiplicator Lagrange µ R p astfel încât: (KKT - NLPe) : f(x )+ h(x ) T µ = 0 şi h(x ) = 0. Demonstraţie: Din Lema tragem concluzia că valoarea optimă a LP-ului: max d R f(x ) T d n s.l.: h(x )d = 0 este zero. Astfel, din moment ce LP-ul are o valoare optimă finită, atunci din teorema dualităţii pentru LP, duala ei va fi fezabilă. În particular, există un µ R p astfel încât f(x )+ h(x ) T µ = 0. Punctele x pentru care există µ astfel încât condiţiile (KKT-NLPe) sunt satisfăcute se numesc puncte staţionare pentru problema (NLPe). Observăm că dacă exprimăm Lagrangianul asociat problemei constrânse: L(x,µ) = f(x)+µ T h(x) atunci condiţiile necesare de ordinul I pot fi rescrise sub forma: x L(x,µ ) = 0 µ L(x,µ ) = 0

166 166 Capitolul 10. Condiţii de optimalitate pentru (NLP) sau echivalent sub forma: L(x,µ ) = 0. După cum observăm, aceste condiţii seamănă foarte mult cu condiţiile de optimalitate de ordinul I pentru cazul neconstrâns (i.e. f(x ) = 0). Pentru cazul constrâns, în locul funcţiei obiectiv f se considerâ Lagrangianul L. Condiţiile de ordinul I se reduc la rezolvarea unui sistem L(x,µ ) = 0 de n + p ecuaţii (de obicei neliniare) cu n + p necunoscute. Deci, acest sistem de ecuaţii ar trebui să permită, cel puţin local, determinarea unei soluţii. Dar ca şi în cazul neconstrâns, o soluţie a sistemului dat de condiţiile necesare de ordinul I nu este neapărat un minim(local)alproblemei deoptimizare; poatefilafeldebineunmaxim (local) sau un punct şa. Exemplul Considerăm problema: min x 1 +x 2. x R 2 : h(x)=x 2 1 +x2 2 2=0 Mai întâi observăm că orice punct fezabil este regulat (punctul x = [0 0] T nu este fezabil). În concluzie, orice minim local al acestei probleme satisface sistemul L(x, µ) = 0 care se poate scrie explicit astfel: 2µx 1 = 1 2µx 2 = 1 x 2 1 +x2 2 = 2. Aceste sistem de trei ecuaţii cu trei necunoscute x 1,x 2 şi µ are următoarele două soluţii: (x 1,x 2,µ ) = ( 1, 1,1/2) si (x 1,x 2,µ ) = (1,1, 1/2). Se poate observa (vezi Fig. 10.2) că prima soluţie este un minim local, în timp ce cealaltă soluţie este un maxim local. Este important să observăm că pentru ca un punct de minim să satisfacă condiţiile de ordinul I este necesar să avem regularitate. Cu alte cuvinte, condiţiile de optimalitate de ordinul I pot să nu aibă loc la un punct de minim local care nu este regulat. Exemplul Considerăm problema: min x R 2 x 1 s.l.: h 1 (x) = (1 x 1 ) 3 +x 2 = 0, h 2 (x) = (1 x 1 ) 3 x 2 = 0.

167 10.2. Condiţii de ordinul II pentru (NLP) având constrângeri de egalitate167 Figura 10.2: Condiţiile de ordinul I. Se observă că această problemă are un singur punct fezabil x = [1 0] T care este de asemenea şi minimul global. Pe de altă parte avem că f(x ) = [ 1 0] T, h 1 (x ) = [0 1] T şi h 2 (x ) = [0 1] T şi deci x nu este punct regulat. Se observă că în acest caz condiţiile de optimalitate de ordinul I nu pot fi satisfăcute, adică nu există µ 1 şi µ 2 astfel încât: [ ] [ ] 0 0 µ 1 +µ 1 2 = 1 [ ] 1. 0 Acest exemplu ilustrează că un punct de minim e posibil să nu satisfacă condiţiile de staţionaritate pentru Lagrangian dacă punctul nu este regulat Condiţii de ordinul II pentru (NLP) având constrângeri de egalitate În mod asemănător condiţiilor de optimalitate de ordinul II definite pentru probleme de optimizare fără constrângeri, putem deriva condiţiile corespunzătoare pentru probleme constrânse. Considerăm din nou probleme având constrângeri de tip egalitate (10.2):

168 168 Capitolul 10. Condiţii de optimalitate pentru (NLP) Teorema (Condiţii necesare de ordinul II pentru NLPe) Presupunem că x este un punct de minim local al problemei (NLPe) definită în (10.2) şi un punct regulat pentru constrângerile aferente. Atunci există un µ R P astfel încât f(x )+ h(x ) T µ = 0 si h(x ) = 0. În plus, dacă notăm prin M planul tangent în x M = {d R n : h(x )d = 0}, atunci matricea Hessiană a Lagrangianului în raport cu x 2 x L(x,µ ) = 2 f(x )+ p µ i 2 h i (x ) i=1 este pozitiv semidefinită pe M, adică d T 2 xl(x,µ )d 0 pentru orice d M. Demonstraţie Este clar că pentru orice curbă de două ori diferenţiabilă pe suprafaţa de constrângeri S ce trece prin x (cu x(0) = x ) avem: d 2 dt 2f(x(t)) t=0 0. (10.4) Prin definiţie avem: d 2 dt 2f(x(t)) t=0 = ẋ(0) T 2 f(x )ẋ(0)+ f(x ) T ẍ(0). (10.5) Mai mult, dacă derivăm relaţia h(x(t)) T µ = 0 de două ori, obţinem: ẋ(0) T ( p i=1 µ i 2 h i (x ) ) ẋ(0)+(µ ) T h(x )ẍ(0) = 0. (10.6) Adăugând (10.6) la (10.5) şi ţinând cont de (10.4), obţinem: d 2 dt 2f(x(t)) t=0 = ẋ(0) T 2 x L(x,µ)ẋ(0) 0. Din moment ce ẋ(0) este arbitrar în M, atunci demonstraţia este completă.

169 10.2. Condiţii de ordinul II pentru (NLP) având constrângeri de egalitate169 Exemplul Considerăm problema de optimizare dată în Exemplul Se observă că matricea Hessiană a funcţiei Lagrange în variabilă x este: [ ] xl(x,µ) = 2 f(x)+µ 2 h(x) = µ, 0 2 şi o bază a planului tangent la un punct x 0 este de forma D(x) = [ x 2 x 1 ] T. Atunci, avem relaţia: D(x) T 2 xl(x,µ)d(x) = 2µ(x 2 1 +x 2 2). Pentru prima soluţie a sistemului rezultat din condiţia de staţionaritate a Lagrangianului avem d T 1 2 x L( 1, 1,1/2)d 1 = 2 > 0, unde d 1 = D( 1, 1), şi deci această soluţie satisface condiţiile necesare de ordinul II. Pe de altă parte, pentru cea de-a doua soluţie avem expresia d T 2 2 x L(1,1, 1/2)d 2 = 2 < 0, unde d 2 = D(1,1), şi deci această soluţie nu poate fi minim local. Teorema (Condiţii suficiente de ordinul II pentru NLPe) Presupunem un punct x R n şi un µ R p astfel încât: f(x )+ h(x ) T µ = 0 şi h(x ) = 0. (10.7) Presupunem de asemenea că matricea dată de Hessiana Lagrangianului 2 x L(x,µ ) = 2 f(x )+ p i=1 µ i 2 h i (x ) este pozitiv definită pe planul tangent M = {d : h(x )d = 0}. Atunci x este punct de minim local strict al problemei având constrângeri de egalitate (NLPe) definită în (10.2). Demonstraţie: Dacă x nu ar fi un punct de minim local strict, atunci ar exista un şir de puncte fezabile z k ce converge către x astfel încât f(z k ) f(x ). Putem scrie z k = x + δ k s k, unde s k R n, s k = 1, şi δ k > 0. În mod clar δ k 0, iar şirul s k fiind mărginit, va trebui să conveargăcătreuns 0. Avemdeasemenea căh(z k ) h(x ) = 0şiprin împărţirea cu δ k vom observa, pentru k, că h(x )s = 0, adică s este vector tangent. Acum, prin Teorema lui Taylor, avem pentru orice j: şi 0 = h j (z k ) = h j (x )+δ k h j (x )s k + δ2 k 2 st k 2 h j (η j )s k (10.8) 0 f(z k ) f(x ) = δ k f(x )s k + δ2 k 2 st k 2 f(η 0 )s k, (10.9)

170 170 Capitolul 10. Condiţii de optimalitate pentru (NLP) unde η j sunt puncte pe segmentul de dreaptă dintre x şi z k, si deci converge la x. Înmulţind acum ecuaţiile (10.8) cu µ j, adăugându-le la (10.9), şi ţinând cont de (10.7), obţinem: ( ) p 2 f(η 0 )+ µ i 2 h i (η i ) s k 0, s T k i=1 relaţie contradictorie pentru k, deoarece s k converge la vectorul tangent s 0. Am ţinut cont de faptul că η j sunt convergente la x. Putem iarăşi concluziona că aceste condiţii de ordinul II pentru cazul constrâns sunt similare celor corespunzătoare cazului neconstrâns. În cazul problemelor constrânse însă, în locul funcţiei obiectiv se foloseşte Lagrangianul. Exemplul Considerăm problema: min x R 3 : x 1 +x 2 +x 3 =3 x 1 x 2 x 1 x 3 x 2 x 3. Condiţiile de ordinul I conduc la un sistem liniar de patru ecuaţii cu patru necunoscute: (x 2 +x 3 )+µ = 0 (x 1 +x 3 )+µ = 0 (x 1 +x 2 )+µ = 0 x 1 +x 2 +x 3 = 3. Se poate observa uşor că x 1 = x 2 = x 3 = 1 şi µ = 2 satisface acest sistem. Mai mult Hessiana Lagrangianului în orice punct x are forma: x L(x,µ) = 2 f(x) = 1 0 1, şi o bază a planului tangent la suprafaţa definită de constrângerea h(x) = x 1 +x 2 +x 3 3 = 0 în orice punct x fezabil este: 0 2 D(x) =

171 10.2. Condiţii de ordinul II pentru (NLP) având constrângeri de egalitate171 Obţinem: D(x ) T 2 x L(x,µ )D(x ) = [ ] 2 0 0, 0 2 adică este pozitiv definită. În concluzie punctul x este punct de minim strict local. Interesant de observat este faptul că Hessiana funcţiei obiectiv evaluată în x este matrice indefinită. Interpretarea multiplicatorilor Lagrange folosind senzitivitatea: După cum am văzut, cu ajutorul multiplicatorilor Lagrange putem muta constrângerile in funcţia obiectiv. O interpretare interesantă a multiplicatorilor Lagrange este dată cu ajutorul senzitivităţii (pentru mai multe detalii se poate consulta cartea clasică [5]). Pentru simplitate, considerăm o problemă (NLP) definită numai de egalităţi: min x Rn{f(x) : h(x) = 0} şi apoi asociem acesteia problema perturbată: v(y) = min x Rn{f(x) : h(x) = y}. Fie x soluţia optimă a problemei originale şi fie χ(y) soluţia optimă a problemei perturbate. Atunci avem că v(0) = f(x ) şi χ(0) = x. Mai mult, din identitatea h(χ(y)) = y pentru orice y, avem : y h(χ(y)) = I p = x h(χ(y)) T y χ(y). Fie µ multiplicatorul Lagrange optim (soluţia optimă duală) pentru problema originală neperturbată. Atunci, y v(0) = x f(x ) y χ(0) = µ x h(x ) T y χ(0) = µ. În concluzie, multiplicatorul Lagrange optim µ poate fi interpretat ca senzitivitatea funcţiei obiectiv f în raport cu constrângerea h(x) = 0. Altfel spus, µ indică cât de mult valoarea optimă s-ar schimba dacă constrângerea ar fi perturbată. Această interpretare poate fi extinsă la probleme generale (NLP) definite şi de constrângeri de inegalitate. Multiplicatorii Lagrange optimi λ corespunzători unei constrângeri activeg(x) 0potfiinterpretaţicasenzitivitatea luif(x )înraportcuo perturbaţie în constrângeri de forma g(x) y. În acest caz, pozitivitatea multiplicatorilor Lagrange urmează din faptul că prin creşterea lui y,

172 172 Capitolul 10. Condiţii de optimalitate pentru (NLP) mulţimea fezabilă este relaxată şi deci valoarea optimă nu poate creşte. Pentru inegalităţile inactive, interpretarea în termeni de senzitivitate explică de asemenea de ce multiplicatorii Lagrange sunt zero, pentru că o perturbaţie foarte mică în aceste constrângeri lasă valoarea optimă neschimbată Condiţii de ordinul I pentru (NLP) generale În această secţiune extindem condiţiile de optimalitate de la cazul problemelor având constrângeri de egalitate la cel al problemelor de optimizare generale: (NLP) : min x R n f(x) s.l.: g(x) 0, h(x) = 0. Definiţia Fie un punct x ce satisface constrângerile problemei (NLP), adică avem h(x ) = 0, g(x ) 0 şi A(x ) mulţimea constrângerilor active. Numim punctul x punct regulat dacă gradienţii funcţiilor de constrângere, h i (x ) pentru i = 1,...,p, si g j (x ) pentru j A(x ) sunt liniari independenţi. Teorema (Condiţii necesare de ordinul I pentru NLP) Fie x un punct de minim local pentru problema NLP generală şi presupunem că x este şi regulat. Atunci există un vector λ R m şi un vector µ R p astfel încât condiţiile Karush-Kuhn-Tucker (KKT) au loc: (KKT) : f(x )+ h(x ) T µ + g(x ) T λ = 0 (10.10) g(x ) T λ = 0 (10.11) g(x ) 0, h(x ) = 0 µ R p, λ 0. Demonstraţie: Observăm mai întâi, că din moment ce λ 0 şi g(x ) 0, relaţia (10.11) este echivalentă cu a spune că o componentă λ i a vectorului λ poate fi nenulă doar dacă constrângerea sa corespunzătoare g i (x ) este activă. Astfel, faptul că g i (x ) < 0

173 10.3. Condiţii de ordinul I pentru (NLP) generale 173 implică λ i = 0, iar λ i > 0 implică g i (x ) = 0. Din moment ce x este punct de minim pentru problema (NLP) definită de mulţimea de constrângeri X = {x : g(x) 0, h(x) = 0}, atunci este un punct de minim şi pentru problema de optimizare având submulţimea mulţimii X de constrângeri definită prin setarea constrângerilor active la zero. Drept urmare, pentru problema având constrângeri de egalitate ce ar rezulta, definită pentru o vecinătate a lui x, există multiplicatori Lagrange. Astfel, tragem concluzia că relaţia (10.10) este satisfăcută pentru λ i = 0 dacă g i (x ) 0, iar drept urmare şi relaţia (10.11) este satisfăcută. Mai trebuie să arătămcă λ i 0 pentru constrângerile active g i (x ) = 0. Presupunem o componentă λ k < 0. Fie S k şi M k suprafaţa şi respectiv planul tangent definit de toate celelalte constrângeri active în x cu excepţia constrângerii active g k (x ) = 0. Din moment ce am presupus că x este un punct regulat, atunci există un d M k astfel încât g k (x )d < 0. Fie x(t) o curbă în S k ce trece prin x la t = 0, cu ẋ(0) = d. Atunci, pentru un t 0 suficient de mic, x(t) este fezabil şi folosind prima relaţie (KKT) obţinem: df(x(t)) dt = f(x )d < 0 t=0 ce ar contrazice minimalitatea lui x. Punctele x ce satisfac condiţiile (KKT) se numesc puncte staţionare pentru problema (NLP) generală. Observăm că prima relaţie din condiţiile (KKT) exprimă că x este punct staţionar pentru funcţia Lagrange, adică condiţia de optimalitate de ordinul I: x L(x,λ,µ ) = 0. Cea dea două relaţie din condiţiile (KKT) este complementaritatea: deoarece λ 0 şi g(x ) 0, atunci g(x ) T λ = 0 implică că dacă g i (x ) < 0 atunci λ i = 0, iar dacă λ i > 0 atunci g i (x ) = 0. Ultimele două relaţii din condiţiile (KKT) exprimă fezabilitatea primală şi duală, adică x este fezabil pentru problema primală şi perechea (λ,µ ) este fezabilă pentru problema duală. Condiţiile (KKT) sunt numite după Karush, a cărui teză de master nepublicată din 1939 a fost introdusă în cartea publicată de Kuhn şi Tucker în 1951.

174 174 Capitolul 10. Condiţii de optimalitate pentru (NLP) Exemplul Considerăm problema de optimizare min x R 3 f(x) = 1 2 (x2 1 +x 2 2 +x 2 3) s.l.: g 1 (x) = x 1 +x 2 +x , g 2 (x) = x 1 0. Dorim să calculăm punctele KKT asociate problemei. Evident, vom avea λ R 2. Observăm că orice punct fezabil pentru această problemă este un punctregulat, iar din condiţia deoptimalitate f(x )+ 2 i=1 λ i g i(x ) = 0 avem: x 1 +λ 1 +λ 2 = 0 x 2 +λ 1 = 0 x 3 +λ 1 = 0. Din condiţia de complementaritate putem distinge patru cazuri: 1. presupunem constrângerile g 1 si g 2 sunt amândouă inactive, adică x 1 +x 2 +x 3 < 3 şi x 1 < 0, de unde rezultă că λ 1 = 0 si λ 2 = 0. Din condiţiile de optimalitate avem x 1 = x 2 = x 3 = 0, ceea ce contrazice faptul că g 1 si g 2 ar fi inactive; 2. presupunem g 1 inactivă iar g 2 activă, adică x 1 + x 2 + x 3 < 3 şi x 1 = 0, iar λ 1 = 0, λ 2 0. Din condiţiile de optimalitate avem că λ 1 = λ 2 = 0, iar implicit x 2 = x 3 = 0 ce conduce din nou la o contradicţie; 3. presupunem g 1 activă şi g 2 inactivă, adică x 1 + x 2 + x 3 = 3 şi x 1 < 0, iar λ 1 0 şi λ 2 = 0, Astfel, putem lua x 1 = x 2 = x 3 = 1 şi λ 1 = 1 ce satisfac condiţiile KKT, deci această soluţie este un punct KKT; 4. preuspunem că ambele constrângeri sunt active, adică x 1+x 2+x 3 = 3 şi x 1 = 0, iar λ 1,λ 2 0. Atunci obţinem x 2 = x 3 = 3 2, iar λ 1 = 3 2 şi λ 2 = 3 2, ce contrazice condiţia λ 2 0. Exemplul Considerăm problema de optimizare: min x R 2 2x2 1 +2x 1 x 2 +x x 1 10x 2 s.l: x 2 1 +x2 2 5, 3x 1 +x 2 6.

175 10.4. Condiţii de ordinul II pentru (NLP) generale 175 Condiţiile (KKT) sunt în acest caz următoarele: 4x 1 +2x λ 1 x 1 +3λ 2 = 0, 2x 1 +2x λ 1 x 2 +λ 2 = 0 λ 1 (x 2 1 +x2 2 5) = 0, λ 2(3x 1 +x 2 6) = 0 x 2 1 +x2 2 5, 3x 1 +x 2 6, λ 1 0, λ 2 0. Pentru a găsi o soluţie încercăm diferite combinaţii de constrângeri active şi verificăm semnul multiplicatorilor Lagrange rezultaţi. Pentru acest exemplu putem considera două constrângeri active, una sau nici una. Presupunem că prima constrângere este activă şi a doua este inactivă şi rezolvăm sistemul de trei ecuaţii corespunzător: 4x 1 +2x λ 1 x 1 = 0 2x 1 +2x λ 1 x 2 = 0 x 2 1 +x2 2 5 = 0. Obţinem soluţia: x 1 = 1,x 2 = 2 şi λ 1 = 1,λ 2 = 0. Observăm că această soluţie verifică 3x 1 +x 2 6 şi µ 1 0 şi deci satisface condiţiile (KKT) Condiţii de ordinul II pentru (NLP) generale Condiţiile de optimalitate de ordinul II, atât necesare cât şi suficiente pentru probleme (NLP) generale, sunt derivate în mod esenţial prin considerarea doar a problemei având constrângeri de egalitate echivalentă ce este implicată de constrângerile active. Planul tangent în x corespunzător pentru aceste probleme generale(nlp) este planul tangent pentru constrângerile active: M = {d : g j (x ) T d = 0 j A(x ), h i (x ) T d = 0 i = 1,...,p}. Teorema (Condiţii necesare de ordinul II pentru NLP) Fie f,g si h funcţii continuu diferenţiable de două ori şi un punct x punct regulat pentru constrângerile din problema (NLP) generală. Dacă x este un punct de minim local pentru problema (NLP), atunci există un λ R m şi un µ R p, astfel încât condiţiile (KKT) sunt satisfăcute, iar în plus Hessiana Lagrangianului în raport cu x: p m 2 xl(x,λ,µ ) = 2 f(x )+ µ i 2 h i (x )+ λ i 2 g i (x ) i=1 i=1

176 176 Capitolul 10. Condiţii de optimalitate pentru (NLP) este pozitiv semidefinită pe subspaţiul tangent al constrângerilor active în x, adică avem d T 2 xl(x,λ,µ )d 0 pentru orice d M. Demonstraţie: Din moment ce x este punct de minim pentru constrângerile din problema (NLP) generală, atunci este punct de minim şi pentru problema în care constrângerile active sunt luate drept constrângeri de egalitate şi neglijate constrângerile inactive. În acest fel, demonstraţia urmează imediat din condiţiile necesare de ordinul II pentru probleme având constrângeri numai de egalitate. Ca şi în teoria minimizării neconstrânse, putem formula pentru problema (NLP) generală în mod asemănător condiţii suficiente de ordinul II. Prin analogie cu rezultatul din cazul neconstrâns, condiţia necesară este ca matricea 2 x L(x,λ,µ ) să fie pozitiv definită pe planul tangent M corespunzător constrângerilor active. Acest fapt este într-adevăr suficient în majoritatea cazurilor, mai exact în cazurile nedegenerate. Teorema (Condiţii suficiente de ordinul II pentru NLP) Fie f,g şi h funcţii continuu diferenţiabile de două ori. Fie de asemenea un punct regulat x R n şi variabilele duale λ R m şi µ R p pentru care condiţiile (KKT) sunt satisfăcute şi pentru care nu avem constrângeri de inegalitate degenerate, adică λ j > 0 pentru orice j A(x ). Dacă, de asemenea, Hessiana Lagrangianului 2 x L(x,λ,µ ) este pozitiv definită pe subspaţiul tangent: M = { d : h(x )d = 0, g j (x ) T d = 0 j A(x ) }, atunci x este un punct de minim local strict pentru problema (NLP) generală. Demonstraţie: Similar cu demonstraţia din cazul problemelor având constrângeri de egalitate, presupunem că x nu este un punct de minim strict. Fie astfel un şir de puncte fezabile z k ce converge la x şi pentru care f(z k ) f(x ). Putem scrie z k = x +δ k s k, cu s k = 1 şi δ k > 0. Putem presupune că δ k 0 şi s k converge către un punct finit, adică s k s. Vom avea astfel f(x ) T s 0 şi h i (x ) T s = 0 pentru toţi i = 1,...,p. De asemenea, pentru fiecare constrângere activă g j avem g j (z k ) g j (x ) 0, iar drept urmare: g j (x ) T s 0,

177 10.4. Condiţii de ordinul II pentru (NLP) generale 177 dacă g j (x ) T s = 0 pentru toţi j A(x ). Atunci, demonstraţia ar continua ca şi în cazul problemelor doar cu constrângeri de egalitate. În schimb, dacă g j (x ) T s < 0 pentru cel puţin un j A(x ), atunci: 0 f(x ) T s = (s ) T g(x ) T λ (s ) T h(x ) T µ > 0, relaţie de altfel contradictorie. De remarcat este faptul că dacă avem constrângeri de inegalitate degenerate, adică constrângeri de inegalitate active g i (x ) = 0 cu multiplicatorul Lagrange asociat λ i = 0, atunci în teorema precedentă trebuiesăceremcahessianalagrangianului 2 x L(x,λ,µ )săfiepozitiv definită pe un subspaţiu mai mare decât M, şi anume pe subspaţiul: { M = d : h(x )d = 0, g j (x ) T d = 0 j A + (x ), } g j (x ) T d 0 j A 0 (x ), unde am definit mulţimile de indecşi A + (x ) = { j : g j (x ) = 0,λ j > 0} şi A 0 (x ) = { j : g j (x ) = 0,λ j = 0 }. Exemplul Considerăm problema: min x 2. x R 2 : x 2 1 +x În mod evident, punctul de minim global al acestei probleme este x = [0 1] T. Vom arăta că acesta este de fapt punct de minim strict. Pentru aceasta observăm că prima condiţie (KKT) are forma: 2λx 1 = 0, 1+2λx 2 = 0, de unde rezultă că λ > 0 şi deci constrângerea este activă. Din sistemul de trei ecuaţii dat de cele două ecuaţii de mai sus şi x x2 2 1 = 0 obţinem soluţia x = [0 1] T şi λ = 1/2. Mai departe, planul tangent în x este dat de M = {d : [0 2]d = 0} = {d : d 2 = 0}. Observăm de asemenea că Hessiana Lagrangianului este 2 x L(x,λ ) = 2λ I 2, care bineînţeles este pozitiv definită pe M. Aceasta arată că x este punct de minim strict. În final, analizăm condiţiile de optimalitate pentru cazul convex. Reamintim că problema (NLP) generală este o problemă convexă (CP)

178 178 Capitolul 10. Condiţii de optimalitate pentru (NLP) dacă funcţiile f şi g 1,,g m sunt funcţii convexe, iar funcţiile h 1,...,h p sunt funcţii afine. Dacă funcţia h este afină atunci există A R p n şi b R p astfel încât h(x) = Ax b. În acest caz, condiţiile de ordinul I (KKT) sunt necesare si suficiente. De remarcat este faptul că în cazul convex condiţiile necesare de ordinul I au loc sub condiţia: x punct de minim global şi regulat. Teorema (Condiţii suficiente de ordinul I pentru probleme convexe) Fie o problema convexă (CP) de forma: (CP) : f =min x R nf(x) s.l: g(x) 0, Ax = b, în care funcţiile f şi g 1,,g m sunt funcţii convexe. Dacă următoarele condiţii (KKT) sunt satisfăcute pentru tripletul (x,λ,µ ): (KKT-CP) : f(x )+ g(x ) T λ +A T µ = 0 g(x ) T λ = 0 g(x ) 0, Ax = b µ R p,λ 0, atunci x este punct de minim global pentru problema convexă (CP), (λ,µ ) este punct de maxim global pentru problema duală şi strong dualitatea are loc, adică f = q. Demonstraţie: Deoarece funcţia Lagrange este convexă în variabila x şi ţinând cont că prima relaţie din condiţiile (KKT-CP) înseamnă x L(x,λ,µ ) = 0, implică x = argmin x R nl(x,λ,µ ) şi q(λ,µ ) = L(x,λ,µ ). Combinând proprietăţile funcţiei duale cu aceste condiţii (KKT-CP) avem: f q(λ,µ ) = L(x,λ,µ ) = f(x )+g(x ) T λ +(Ax b) T µ = f(x ) f. În concluzie, avem f(x ) = f şi cum x este fezabil pentru problema convexă (CP) atunci este punct de minim global pentru această problemă. Mai departe, din dualitatea slabă şi faptul că f = q(λ,µ ) obţinem f = q.

179 10.4. Condiţii de ordinul II pentru (NLP) generale 179 Exemplul Considerăm problema proiecţiei originii x 0 = 0 pe subspaţiul X = {x R n : Ax = b}, unde A R p n şi are rangul p cu p < n. Această problemă se formulează ca o problema convexă (CP): min x: Ax=b x 2. Condiţiile (KKT-CP) pentru această problemă devin: x +A T µ = 0, Ax = b. De aici obţinem AA T µ = b şi ţinând seama că AA T este matrice inversabilă, ajungem la x = A T (AA T ) 1 b = A + b, unde A + = A T (AA T ) 1 este pseudoinversa lui A. Acest raţionament poate fi extins la funcţii pătratice convexe generale: 1 min x: Ax=b 2 xt Qx+q T x, unde Q 0. Pentru această problemă convexă condiţiile (KKT-CP) devin: Qx +q +A T µ = 0, Ax = b. Într-o manieră similară obţinem că soluţiile optime primale şi duale sunt date de expresiile: µ = (AQ 1 A T ) 1 [AQ 1 q +b] şi x = Q 1 A T µ Q 1 q. Exemplul Considerăm următoarea problemă convexă: min (x 1 5) 2 +(x 2 5) 2 x R 2 s.l.: g 1 (x) = x 2 1 +x , g 2(x) = x 1 +2x (10.12) g 3 (x) = x 1 0, g 4 (x) = x 4 0. Condiţiile (KKT-CP) devin: [ ] [ ] 2(x 1 5) 2x 2(x 2 5) + 1 1/ x λ = g i (x ) 0, λ i 0, λ i g i(x ) = 0 i = 1,...,4.

180 180 Capitolul 10. Condiţii de optimalitate pentru (NLP) Figura 10.3: Condiţiile KKT pentru problemă convexă definită în (10.12). Presupunem (vezi Fig. 10.3) că primele două inegalităţi sunt active. Atunci avem λ 3 = λ 4 = 0 şi deci condiţiile (KKT-CP) se reduc la un sistem de patru ecuaţii cu patru necunoscute: [ ] [ ][ ] 2(x 1 5) 2x 2(x 2 5) + 1 1/2 λ 1 2x = λ 2 (x 1 )2 +(x 2 )2 5 = 0, x 1 +2x 2 4 = 0, care are soluţia x = [2 1] T, şi deci x este punct de minim global pentru problema convexă considerată.

181 Capitolul 11 Metode de ordinul I şi II pentru (NLP) având constrângeri convexe În acest capitol vom analiza metode numerice de optimizare pentru probleme (NLP) unde mulţimea fezabilă este convexă, adică: min x X f(x), (11.1) unde f este o funcţie diferenţibilă (nu neapărat convexă), dar mulţimea X este nevidă, închisă şi convexă. Reamintim un rezultat fundamental, condiţiile de optimalitate necesare de ordinul I, pentru problema de optimizare de forma (11.1) (vezi Teorema (10.0.3)): dacă x este punct de minim local atunci: f(x ) T (x x ) 0 x X. Reamintim că un punct x satisfăcând relaţia precedentă se numeşte punct staţionar pentru problema de optimizare (11.1). Exemplul (Proiecţia Euclideană) Revenim la problema proiecţiei unui vector x 0 R n pe mulţimea convexă X R n ce se formulează matematic astfel: min x x 0 2. x X Notăm cu [x 0 ] (In,X) soluţia optimă a acestei probleme, adică proiecţia [x 0 ] (In,X) este acel vector din X care se află la cea mai mică distanţă de

182 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 182 convexe x 0. Din condiţiile de optimalitate ale problemei precedente avem relaţia: ([x 0 ] (In,X) x 0 ) T (x [x 0 ] (In,X)) 0 x X. (11.2) O altă proprietate importantă a proiecţiei este cea de nonexpansivitate: [x 0 ] (In,X) [y 0 ] (In,X) x 0 y 0 x 0,y 0 R n. (11.3) Această proprietate se derivează uşor din condiţiile de optimalitate. Într-adevăr, aplicând condiţia de optimalitate pentru x 0 cu x = [y 0 ] (In,X) X obţinem: ([x 0 ] (In,X) x 0 ) T ([y 0 ] (In,X) [x 0 ] (In,X)) 0. Aplicând acelaşi procedeu pentru y 0 cu x = [x 0 ] (In,X) X obţinem: ([y 0 ] (In,X) y 0 ) T ([x 0 ] (In,X) [y 0 ] (In,X)) 0. Adunând aceste două relaţii, aranjând termenii şi apoi aplicând inegalitatea Caucly-Schwartz obţinem rezultatul dorit. Metodele prezentate în acest capitol vor fi generalizarea la cazul constrâns al metodelor direcţiilor de descreştere (de exemplu gradient şi Newton) dezvoltate pentru cazul problemelor neconstrânse. Algoritmii ce vor fi analizaţi în această parte a lucrării aparţin clasei de metode bazate pe direcţii fezabile Metode de direcţii de descreştere Pentru un punct fezabil x X, o direcţie fezabilă la x este un vector d pentru care x+αd este fezabil pentru orice α suficient de mic. O metodă a direcţiilor fezabile porneşte dintr-un punct fezabil x 0 X şi generează un şir de vectori pe baza următoarei iteraţii: x k+1 = x k +α k d k, unde, dacă x k nu este punct staţionar, d k este o direcţie fezabilă la x k, adică: f(x k ) T d k < 0

183 11.1. Metode de direcţii de descreştere 183 şi pasul α k > 0 este ales astfel încât x k + α k d k X. În particular considerăm metode de direcţii fezabile care sunt şi metode de descreştere, adică pasul α k se alege astfel încât: f(x k +α k d k ) < f(x k ) k. Deoarece X este mulţime convexă, atunci direcţiile fezabile la x k sunt vectori de forma d k = γ( x k x k ), în care γ > 0 si x k este un vector fezabil. x k+1 = x k +α k ( x k x k ), În acest caz avem iteraţia: unde α k [0, 1] şi dacă x k nu este punct staţionar atunci ştim că există x k X astfelîncât f(x k ) T ( x k x k ) < 0. Esteevident cădacămulţimea fezabilă X este convexă atunci x k +α k ( x k x k ) X pentru orice α k [0, 1]. Procedurile de alegere a pasului α k sunt aceleaşi ca şi în cazul neconstrâns: putem alege α k prin procedura ideală, prin backtracking sau pas constant α k = 1. Observăm că dacă x k este punct staţionar, atunci metoda se opreşte, adică x k+1 = x k. În concluzie, un posibil criteriu de oprire pentru aceste metode de direcţii de descreştere ce vor fi prezentate în acest capitol este următorul: x k+1 x k ǫ, pentru o acurateţe fixată ǫ > 0. În cele ce urmează presupunem că direcţiile d k sunt alese astfel încât ele sunt conectate prin gradient la x k : adică pentru orice şir x k care converge la un punct nestaţionar, şirul corespunzător d k este mărginit şi satisface: lim sup f(x k ) T d k < 0. k k 0 Teorema Fie un şir x k generat de metoda direcţiilor fezabile x k+1 = x k + α k d k. Presupunem că direcţiile d k sunt conectate prin gradient la x k şi pasul α k este ales prin metoda ideală sau backtracking. Atunci orice punct limită al şirului x k este punct staţionar. Demonstraţie: Folosim metoda reducerii la absurd pentru a demonstra această teoremă. Considerăm cazul când alegem α k prin backtracking (cazul când se alege prin metoda ideală se tratează într-o

184 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 184 convexe manieră similară). Pentru simplitate presupunem că întreg şirul x k este convergent la x care nu este punct staţionar. Deoarece şirul f(x k ) este descrescător, atunci el este convergent şi datorită continuităţii lui f converge la f( x). Din această relaţie avem: f(x k ) f(x k+1 ) 0. Conform strategiei de backtracking pentru alegerea pasului, avem f(x k ) f(x k+1 ) c 1 α k f(x k ) T d k. Deci şi α k f(x k ) T d k 0. Pe de altă parte, am presupus că d k sunt conectate prin gradient la x k şi deci d k sunt mărginite şi următoarea relaţie are loc lim k sup k 0 f(x k ) T d k < 0, ceea ce implică: α k 0. Din această relaţie şi din definiţia procedurii de backtracking, rezultă că există un index k suficient de mare astfel încât: f(x k ) f(x k +(α k /ρ)d k ) < c 1 (α k /ρ) f(x k ) T d k k k. Din mărginirea şirului d k, înseamnă că există un subşir convergent. Pentru simplitate presupunem că întreg şirul d k este convergent şi are punctul limită d. Din inegalitarea precedentă avem: f(x k ) f(x k +ᾱ k d k ) ᾱ k < c 1 f(x k ) T d k k k, unde ᾱ k = α k /ρ. Din teorema valorii medii avem că există scalarul α k [0, ᾱ k ] astfel încât f(x k + α k d k ) T d k < c 1 f(x k ) T d k Evaluând limita în ambele părţi obţinem: sau echivalent Dar c 1 < 1 şi deci f( x) T d c1 f( x) T d 0 (1 c 1 ) f( x) T d. 0 f( x) T d, k k. ceea ce contrazice presupunerea noastră că d k este conectat prin gradient la x k. În cele ce urmează vom da câteva metode de a alege direcţiile fezabile d k = γ( x k x k ), unde x k X.

185 11.1. Metode de direcţii de descreştere Metoda gradient condiţional Cea mai evidentă modalitate de a alege o direcţie fezabilă este următoarea: alegem x k ca fiind soluţia optimă a subproblemei de optimizare: x k = argmin x X f(x k) T (x x k ). Metoda direcţiilor de descreştere corespunzătoare acestei alegeri a direcţiei fezabile se numeşte metoda gradient condiţional. Observăm că problema de optimizare ce trebuie să fie rezolvată la fiecare pas este o problemă convexă (funcţia obiectiv este liniară). Bineînţeles că această metodă face sens atâta timp cât costul pe iteraţie (complexitatea numerică pentru rezolvarea subproblemei) este mult mai mic decât costul total pentru rezolvarea problemei originale (11.1). Acest lucru se întâmplă de exemplu atunci când funcţia obiectiv f este neconvexă şi mulţimea fezabilă este simplă (e.g. dacă X este un hipercub în R n sau simplex atunci subproblema devine un (LP) ce poate fi rezolvat eficient). Figura 11.1: Iteratiile metodei gradient condiţional. Folosind teoria anterioară de convergenţă, putem arăta că metoda gradient condiţional are convergenţă asimptotică. Presupunem că X este mulţime compactă. Într-adevăr este suficient să arătăm că această metodă produce direcţii conectate prin gradient. Presupunem că şirul x k este convergent la un punct x care nu este punct staţionar. Atunci

186 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 186 convexe trebuie să arătăm că: lim sup f(x k ) T ( x k x k ) < 0, lim k k 0 sup k k 0 x k x k <. Deoarece X este compactă, atunci este evident că cea de-a doua relaţie are loc. Pentru a demonstra prima relaţie, observăm mai întâi f(x k ) T ( x k x k ) f(x k ) T (x x k ) x X şi evaluând limita obţinem: lim sup f(x k ) T ( x k x k ) f( x) T (x x) x X. k k 0 Evaluând minimum peste x X şi ţinând cont de faptul că x nu este punct staţionar obţinem: lim sup k k 0 f(x k ) T ( x k x k ) min x X f( x)t (x x) < 0 ceea ce ne conduce la prima relaţie care trebuia demonstrată. În ceea ce priveşte rata de convergenţă, metoda gradientului condiţional are o rată de convergenţă slabă. De exemplu, se poate arăta că pentru anumite tipuri de mulţimi X (e.g. politop) şirul f(x k ) f sau x k x nu converge liniar. Explicaţia este următoarea: vectorul x k folosit în algoritm coincide de obicei cu vârfurile politopului X şi astfel direcţiile fezabile folosite de acest algoritm pot să fie ortogonale pe direcţia ce conduce la punctul de minim (conform Fig. 11.1) Metoda gradient proiectat Metoda gradient condiţional foloseşte o direcţie fezabilă obţinută prin rezolvarea unei subprobleme cu funcţie obiectiv liniară. Metoda gradientului proiectat foloseşte în locul acesteia o subproblemă cu funcţie obiectiv pătratică. Deşi în general această subproblemă poate fi mai complexă, rata de convergenţă va fi mai bună, după cum vom arăta în cele ce urmează. Metoda gradientului proiectat aparţine de asemenea clasei de metode de direcţii de descreştere de forma: x k+1 = x k +α k ( x k x k ), în care x k = [x k s k f(x k )] (In,X).

187 11.1. Metode de direcţii de descreştere 187 În această metodă, paşii sunt aleşi astfel: α k (0, 1] şi s k > 0. Reamintim că notaţia [z] (In,X) reprezintă proiecţia Euclideană pe mulţimea X a vectorului z. Deci pentru a obţine x k luăm un pas s k în direcţia antigradientului f(x k ), ca în metoda gradient pentru cazul neconstrâns, apoi proiectăm (folosind norma Euclidiană) pe X vectorul x k s k f(x k ). Putem vedea s k de asemenea ca un pas: de exemplu, dacă luăm α k = 1 pentru orice k, atunci x k+1 = x k, ceea ce conduce la gradientul proiectat clasic (vezi Fig. 11.2): sau astfel spus: x k+1 = [x k s k f(x k )] (In,X), x k+1 = argmin x X x x k +s k f(x k ) 2 = argmin x X f(x k) T (x x k )+ 1 2s k (x x k ) T I n (x x k ). Observăm că dacă x k α k f(x k ) X atunci iteraţia acestei metode coincide cu iteraţia metodei gradient pentru cazul neconstrâns. Mai mult, avemx = [x s f(x )] (In,X) dacăşi numai dacăx estepunct staţionar pentru problema (11.1). În mod evident, metoda gradient proiectat este eficientă dacă proiecţia se calculeză uşor (e.g. când mulţimea X este un hipercub sau hiperplan). Figura 11.2: Iteraţiile metodei gradient proiectat. Avem diferite posibilităţi de alegere a pasului α k şi s k :

188 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 188 convexe (i) fixăm s k = s constant şi α k este ales cu metoda ideală pe baza direcţiei fezabile d k = x k x k, adică: α k = arg min α [0, 1] f(x k +α( x k x k )) (ii) fixăm s k = s constant şi α k este ales cu procedura de backtracking pe baza direcţiei fezabile d k = x k x k. În particular alegem c 1 > 0 şi ρ (0, 1) şi apoi luăm α k = ρ m k, unde mk este primul număr natural pentru care: f(x k +ρ m ( x k x k )) f(x k )+c 1 ρ m f(x k ) T ( x k x k ) (iii) fixăm α k = 1 constant şi alegem s k cu procedura de backtracking. În particular, definim x k (s) = [x k s f(x k )] (In,X) şi alegem s > 0, c 1 > şi ρ (0, 1). Atunci definim s k = ρ m k s, unde mk este primul număr natural pentru care: f(x k (ρ m s)) f(x k )+c 1 f(x k ) T (x k x k (ρ m s)) (iv) fixăm α k = 1 şi s k = s constante (v) fixăm α k = 1 şi alegem s k 0 astfel încât k=0 s k =, de exemplu s k = 1/k. Rezultatele de convergenţă pentru metoda gradient proiectat sunt similare celor corespunzătoare metodei gradient pentru cazul neconstrâns. În cele ce urmează enunţăm câteva teoreme de convergenţă corespunzătoare diferitelor posibilităţi de alegere a paşilor. Teorema Fie x k şirul generat de metoda gradient proiectat cu pasul s k constant şi α k ales prin metoda ideală sau backtracking de-a lungul direcţiilor fezabile. Atunci orice punct limită al şirului x k este punct staţionar. Demonstraţie: Vom arăta că direcţiile x k x k sunt conectate prin gradient la x k. Într-adevăr, presupunem că şirul x k este convergent la un punct x care nu este punct staţionar. Trebuie să arătăm că: lim sup f(x k ) T ( x k x k ) < 0, lim k k 0 sup k k 0 x k x k <.

189 11.1. Metode de direcţii de descreştere 189 Folosind continuitatea proiecţiei avem lim k x k = [ x s f( x)] (In,X) şi deci cea de-a doua relaţie are loc deoarece x k x k converge la [ x s f( x)] (In,X) x. Pentru a arăta şi prima relaţie folosim proprietăţile proiecţiei, şi anume condiţiile de optimalitate pentru proiecţie implică: (x k s f(x k ) x k ) T (x x k ) 0 x X. Luând în această relaţie x = x k oţinem: f(x k ) T ( x k x k ) 1 s x k x k 2. (11.4) Aplicând limita în relaţia anterioară obţinem: lim sup f(x k ) T ( x k x k ) 1 k s x [ x s f( x)] (I n,x) 2. k 0 Deoarece x nu este punct staţionar, partea dreaptă a acestei inegalităţi este strict negativă ceea ce implică lim k sup k 0 f(x k ) T ( x k x k ) < 0, adică prima relaţie care trebuia demonstrată. Teorema Fie x k şirul generat de metoda gradient proiectat cu pasul s k = s constant şi α k = 1. Presupunem de asemenea că funcţia obiectiv are gradientul Lipschitz (i.e. există L > 0 astfel încât f(x) f(y) L x y pentru orice x,y X). Dacă s (0, 2/L), atunci orice punct limită al şirului x k este punct staţionar. Demonstraţie: Din proprietatea de Lipschitz avem: f(x k+1 ) f(x k ) = f( x k ) f(x k ) f(x k ) T ( x k x k )+ L 2 x k x k 2. Folosind această relaţie şi inegalitatea (11.4) obţinem: f(x k+1 ) f(x k ) ( L 2 1 s ) x k x k 2. Dacă s (0, 2/L), partea dreaptă a acestei relaţii este negativă şi deci dacă şirul x k este convergent, partea stângă tinde la 0. În concluzie, şirul

190 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 190 convexe x k x k tinde la 0 şi deci pentru orice punct limită x al şirului x k avem x = [ x s f( x)] (In,X), i.e. x este punct staţionar. Rata de convergenţă a metodei gradient proiectat este în esenţă similară celei corespunzătoare cazului neconstrâns. De exemplu, considerăm cazul pătratic: f(x) = 1 2 xt Qx q T x, unde Q este matrice pozitiv definită. Fie x unicul punct de minim al lui f peste mulţimea fezabilă X. Considerăm cazul când α k = 1 şi s k = s. Folosind proprietăţile proiecţiei (în particular proprietatea de nonexpansiune) avem: x k+1 x = [x k s f(x k )] (In,X) [x s f(x )] (In,X) x k s f(x k ) (x s f(x )) = (I n sq)(x k x ) max{ 1 sλ min, 1 sλ max } x k x, adică rată de convergenţă liniară. De aceea, în partea finală a acestui capitol vom considera metode bazate pe scalare, adică aplicarea metodei gradient proiectat într-un sistem de coordonate diferit. Un caz particular al acestor metode este metoda Newton Metoda Newton proiectat Presupunem că f este de două ori diferenţiabilă şi Hessiana 2 f(x) este pozitiv definită pentru orice x X. Considerăm următoarea iteraţie pentru metoda Newton proiectat: unde x k+1 = x k +α k ( x k x k ), x k = argmin x X f(x k) T (x x k )+ 1 2s k (x x k ) T 2 f(x k )(x x k ). (11.5) Putem interpreta problema de optimizare (11.5) ca o problemă de proiecţie generalizată. În particular, x k este vectorul din X care se află la distanţa minimă de vectorul x k s k ( 2 f(x k )) 1 f(x k ), dar cu distanţa măsurată în funcţie de norma z 2 2 f(x k ) = zt 2 f(x k )z, după cum vom

191 11.2. Metoda Newton proiectat 191 arăta încele ce urmează. Într-adevăr, pentru cazul când α k = 1, obţinem următoarea iteraţie: x k+1 = x k = argmin x X f(x k) T (x x k )+ 1 2s k (x x k ) T 2 f(x k )(x x k ) = argmin x X x x k +s k ( 2 f(x k )) 1 f(x k ) 2 2 f(x k ) = [x k s k ( 2 f(x k )) 1 f(x k )] ( 2 f(x k ),X), unde am considerat norma z 2 2 f(x k ) = z T 2 f(x k )z şi [y] ( 2 f(x k ),X) reprezintă proiecţia vectorului y pe mulţimea X în raport cu această normă. Putem interpreta această iteraţie şi în felul următor: metoda Newton proiectat se obţine prin aplicarea metodei gradient proiectat într-un alt sistem de coordonate. Într-adevar, la iteratia k fie matricea pozitiv definită H k şi considerăm următoarea schimbare de variabilă: x = H 1/2 k y. Atunci, problema originală (11.1) se rescrie în variabila y astfel: ( ) minf k (y) = f(h 1/2 k y), y Y k unde mulţimea Y k este definită în felul următor: Y k = {y : H 1/2 k y X}. Aplicăm metoda gradient proiectat pentru această nouă problemă de optimizare: y k+1 = y k +α k (ȳ k y k ), ȳ k = [y k s k f k (y k )] (In,Y k ). Atunci, ȳ k este soluţia problemei pătratice: ȳ k = argmin y Y k f k (y k ) T (y y k )+ 1 2s k y y k 2. Folosind schimbarea de variabilă precedentă avem: x k = H 1/2 k y k, x k = H 1/2 k ȳ k, f k (y k ) = H 1/2 k f(x k ). Pebazaiteraţieigradientproiectatpentruy k obţinemurmătoareaiteraţie în x k : x k+1 = x k +α k ( x k x k ),

192 Capitolul 11. Metode de ordinul I şi II pentru (NLP) având constrângeri 192 convexe unde x k se obţine din: x k = argmin x X f(x k) T (x x k )+ 1 2s k (x x k ) T H k (x x k ) (11.6) = [x k s k H 1 k f(x k)] (Hk,X). De obicei, ne referim la această iteraţie, ce depinde de felul cum alegem matricea H k, prin metoda gradient scalat proiectat. Metoda Newton proiectat se obţine pentru H k = 2 f(x k ). Observăm că dacă s k = 1 atunci funcţia pătratică din (11.5) este aproximarea Taylor de ordinul II în jurul lui x k a lui f. În particular, dacă α k = 1 şi s k = 1, atuncix k+1 estevectorul careminimizează aproximarea Taylordeordinul II în jurul lui x k al funcţiei f supus la constrângerea x X. În concluzie, ne aşteptăm la următorul comportament pentru această metodă: dacă punctul de pornire x 0 este suficient de aproape de punctul de minim local, atunci metoda Newton proiectat cu paşii α k = s k = 1 converge la x superliniar. Principala dificultate în folosirea metodei Newton proiectat constă în faptul că subproblema ce trebuie rezolvată la fiecare pas este complexă. De aceea, au fost dezvoltate metode care să păstreze rata de convergenţă rapidă a metodei Newton proiectat, dar care în acelaşi timp să aibă o iteraţie mai puţin costisitoare numeric. De exemplu, putem înlocui Hessiana 2 f(x k ) cu o matrice pozitiv definită H k, aşa cum am arătat mai înainte, adică metoda gradient scalat proiectat, unde direcţia se calculează pe baza relaţiei (11.6). O posibilă alegere pentru H k este matricea diagonală cu elementele diagonale identice cu cele ale matricei Hessiane 2 f(x k ). Proprietatea de convergenţă asimptotică a metodei Newton proiectat este prezentată în următoarea teoremă a cărei demonstraţie este aproape identică cu cea a Teoremei Teorema Fie x k şirul generat de metoda Newton proiectat cu pasul s k constant şi α k ales prin metoda ideală sau backtracking de-a lungul direcţiilor fezabile. Presupunem de asemenea că există scalarii pozitivi β 1 şi β 2 astfel încât: β 1 I n 2 f(x) β 2 I n x X. Atunci orice punct limită al şirului x k este punct staţionar. În ceea ce priveşte rata de convergenţă locală a metodei Newton proiectat, avem următorul rezultat:

193 11.2. Metoda Newton proiectat 193 Teorema Fie f de două ori diferenţiabilă cu Hessiana pozitiv definită şi Lipschitz continuă. Fie, de asemenea, x un punct de minim local pentru problema (11.1). Atunci există γ > 0 astfel încât dacă x 0 x < γ, şirul x k produs de metoda Newton proiectat cu α k = s k = 1 satisface x k x < γ şi x k converge la x cu rată de convergenţă superliniară. Demonstraţie: Pentru simplitate, notăm cu H k = 2 f(x k ) şi considerăm norma vectorială z 2 H k = z T H k z pentru orice z R n. Pe baza acestei norme definim şi norma indusă pentru matrice: A Hk = sup z 0 Az Hk / z Hk pentru orice matrice A R n n. Folosind proprietăţile proiecţiei putem deriva următorul şir de inegalităţi: x k+1 x Hk = [x k α k ( 2 f(x k )) 1 f(x k )] (Hk,X) x Hk x k α k ( 2 f(x k )) 1 f(x k ) x Hk. Folosind aceleaşi argumente ca în demonstraţia convergenţei metodei Newton pentru cazul neconstrâns, putem arăta inegalitatea: x k+1 x Hk M f(x k ) 2 f(x +τ(x k x )) Hk dτ x k x Hk, pentru un M > 0. Datorită continuităţii lui 2 f putem alege γ > 0 suficient de mic pentru a asigura x k x Hk < γ şi termenul de sub integrală devine arbitrar de mic. Din această proprietate, convergenţa superliniară a lui x k la x rezultă imediat.

194 Capitolul 12 Metode de optimizare pentru (NLP) având constrângeri de egalitate În acest capitol considerăm metode numerice de optimizare pentru problema (NLP) având constrângeri de tip egalitate: (NLPe) : min f(x) x Rn (12.1) s.l.: h(x) = 0, (12.2) unde f : R n R şi h : R n R p sunt funcţii de două ori diferenţiabile. Reamintim condiţiile de optimalitate de ordinul I pentru această problemă (condiţiile KKT): fie x punct de minim atunci există µ R p astfel încât (KKT NLPe) : x L(x,µ ) = 0 h(x ) = 0, unde L(x,µ) = f(x) +µ T h(x) este Lagrangianul. Reamintim că aceste condiţii de optimalitateau locsub presupunerea că x este punct regulat: adică rangul matricei h(x ) este p. Observăm că h(x) = µ L(x,µ), deci condiţiile precedente de optimalitate se pot scrie compact în forma: L(x,µ ) = 0. Avem un sistem neliniar de n+p ecuaţii cu n+p necunoscute formate din x şi µ. Acest sistem se numeşte sistemul Lagrange.

195 Exemplul (Control optimal) Considerăm sistemul dinamic liniar discret: z t+1 = A t z t +B t u t t 0, 195 unde z t R nz este starea şi u t R nu intrarea sistemului. De exemplu considerăm un rezervor cu apă ce este folosit la fabricarea unui produs. Notăm cu z t volumul de apă din rezervor şi cu u t apa utilizată în perioada t. Atunci volumul de apă din rezervor evoluează astfel: z t+1 = z t u t. Presupunem de asemenea un cost pe etapă asociat stărilor l z t(z t ) şi intrări- lor l u t (u t), unde l z t : R nz R şi l u t : R nu R. De exemplu, putem considera l z t (z t) = 1/2 z t z ref t 2 Q t şi l u t (u t) = 1/2 u t u ref t 2 R t, unde z ref t şi u ref t sunt referinţe dorite pentru nivelul rezervorului şi pentru volumul de apă utilizat în perioada t. De asemenea, introducem un orizont de control (predicţie) N pentru sistemul dinamic dat. Atunci problema de control optimal devine: min z t,u t N l z t (z t)+ t=1 N 1 t=0 l u t (u t) (12.3) s.l.: z t+1 = A t z t +B t u t t = 0,...,N 1. Problema de control optimal (12.3) se reduce la o problemă de optimizare cu constrângeri de egalitate în forma (NLPe). Într-adevăr, definim variabila de optimizare: şi funcţia obiectiv x = [u T 0 zt 1 ut 1...uT N 1 zt N ]T R N(nz+nu) f(x) = N l z t(z t )+ t=1 N 1 t=0 l u t(u t ). Observăm că funcţia obiectiv este bloc separabilă şi deci Hessiana lui f este bloc diagonală: 2 f(x) = diag(r 0 (x),q 1 (x),...,r N 1 (x),q N (x)), unde R t (x) = 2 l u t(u t ) şi Q t (x) = 2 l z t(z t ). Colectăm toate constrângerile de egalitate date de dinamici pentru t = 0,...,N 1 în

196 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 196 egalitate Ax = b (i.e. h(x) = Ax b), unde A R Nnz N(nz+nu) şi b R Nnz sunt date de următoarele expresii: B 0 I nz A 0 z 0 0 A 1 B 1 I nz A= şi b= A N 1 B N 1 I nz Metode pentru QP cu constrângeri de egalitate Fie problema de optimizare pătratică: 1 (QPe) : min x R n 2 xt Qx q T x s.l.: Ax = b, unde matricea Q R n n este simetrică (posibil indefinită) şi A R p n. Condiţiile KKT conduc la sistemul de ecuaţii liniare (sistemul Lagrange): Qx q +A T µ = 0 Ax = b, sau în notaţie matriceală: [ ][ [ Q A T x q =. A 0 µ] b] [ ] Q A T Definim matricea K = numită matricea (KKT). A 0 Lema Observăm că matricea (KKT) este întotdeauna indefinită. Dacă matricea A R p n are rangul p şi pentru orice d kernel(a) cu d 0 avem d T Qd > 0, atunci matricea (KKT) este inversabilă. Demonstraţie: Reamintim definiţia subspaţiului kernel(a) = {x R n : Ax = 0}. O formulare echivalentă a proprietăţii de inversabilitate pentru o matrice pătratică implică faptul că singură soluţie a sistemului: [ ] Q A T y = 0, (12.4) A 0

197 12.1. Metode pentru QP cu constrângeri de egalitate 197 este vectorul 0. Dacă partiţionăm soluţiile sistemului astfel: y = [ u v], rămâne de arătat că singurele instanţe ale vectorilor u şi v care satisfac sistemul (12.4) sunt nule. Din (12.4) avem: Qu+A T v = 0 şi Au = 0. A doua ecuaţie indică u kernel(a). Înmulţind la stânga în prima ecuaţie cu u T obţinem: u T Qu+u T A T v = 0. (12.5) Ţinând cont că u kernel(a), iar în enunţ am presupus că u T Qu > 0, concluzionăm că relaţia (12.5) este imposibil de satisfăcut pentru orice u 0. Pe de altă parte, considerând u = 0 şi v 0, prima ecuaţie a sistemului (12.4) devine A T v = 0. Deoarece matricea A are rang maxim pe linii, matricea A T are rang maxim pe coloane, şi deci singurul vector ce satisface A T v = 0 este v = 0. În final, am arătat că unicul vector ce satisface sistemul (12.4) este vectorul nul. Dacă A are rang p, atunci condiţia de regularitate este îndeplinită pentru orice punct x R n în problema (QPe) precedentă. Mai departe, dacă pentru orice d kernel(a) cu d 0 avem d T Qd > 0, atunci condiţiile suficiente de ordinul II sunt satisfăcute pentru (QPe). În concluzie, pentru o problemă pătratică cu constrângeri de egalitate în forma (QPe), existenţa unui minim local este echivalentă cu inversabilitatea matricei(kkt). Există multe modalităţi de rezolvare a sistemului (KKT) anterior. Dintre aceste metode, enumerăm: (i) metoda factorizării LU se bazează pe factorizarea LU a matricei KKT şi apoi rezolvarea celor două sisteme triunghiulare. Datorită faptului că K este matrice indefinită, nu putem folosi factorizare Cholesky. În schimb, putem utiliza eliminarea gaussiană cu pivotare parţială pentru a obţine factorii L şi U. În această factorizare nu luăm în calcul simetria. De aceea, în general se utilizează o factorizare Cholesky indefinită: P T KP = LDL T, unde P este o matrice de permutare, L este inferior triunghiulară şi D este o matrice bloc diagonală cu blocuri de dimensiune 1 sau 2. Putem de asemenea utiliza metode iterative din algebra liniară sau optimizare(e.g. metoda gradienţilor conjugaţi sau metode Krylov). (ii) metoda complementului Schur presupune că matricea Q este inversabilă şi A are rangul p şi se bazează pe eliminarea lui x din

198 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 198 egalitate prima ecuaţie: x = Q 1 (A T µ q) şi apoi introducerea acestei expresii în cea de-a doua ecuaţie obţinând µ AQ 1 A T µ = AQ 1 q b. Rezolvăm sistemul liniar în µ cu matricea AQ 1 A T pozitiv definită şi apoi recuperăm x. Această metodă necesită ca Q să fie inversabilă, ceea ce nu este întotdeauna valabil, şi apoi calcularea factorizării matricei AQ 1 A T, care este complementul Schur al lui Q în matricea K. (iii) metoda spaţiului nul se bazează pe găsirea unei baze Z R n (n p) pentru kernel(a) şi apoi se defineşte x = Zv + y, unde y este o soluţie particulară a sistemului Ay = b. Orice x = Zv + y satisface Ax = b, astfel încât trebuie să luăm în considerare doar prima ecuaţie din sistemul (KKT). Aceasta se poate reformula ca o problemă de minimizare neconstrânsă: 1 min v R n p 2 (Zv+y)T Q(Zv +y) q T (Zv +y). Condiţiile de ordinul I pentru probleme de optimizare fără constrângeri conduc la: Z T QZv+Z T Qy Z T q = 0 v = (Z T QZ) 1 (Z T q Z T Qy). Matricea Z T QZ este numită Hessiana redusă. Dacă v este o soluţie a problemei QP fără constrângeri, atunci x = Zv + y. Această metodă poate fi aplicată dacă condiţiile suficiente de ordinul II sunt satisfăcute. Exemplul Considerăm problema de optimizare pătratică: min x R 3 3x2 1 +2x 1 x 2 +x 1 x x x 2 x 3 +2x 2 3 8x 1 3x 2 3x 3 s.l.: x 1 +x 2 = 3, x 2 +x 3 = 0. În acest caz, matricele corespunzătoare acestui (QP) sunt: [ ] [ ] Q = 2 5 2, q = , A =, b =

199 12.2. Metode Lagrange 199 Observăm că matricea ce defineşte spaţiul nul al lui A este Z = [ 1 1 1] T. În acest caz, problema redusă neconstrânsă în variabila v este unidimensională. Putem găsi imediat soluţia x = [2 1 1] T şi µ = [3 2] T care, datorită faptului că Q este matrice pozitiv definită, este soluţia de minim global al problemei (QP). În cele ce urmează vom prezenta diferite metode pentru rezolvarea sistemului Lagrange pe cazul general (KKT-NLPe) Metode Lagrange Metodele Lagrange se bazează pe condiţiile (KKT-NLPe): x L(x,µ) = 0, h(x) = 0 L(x,µ) = 0. Definim variabila: [ ] x y = µ şi F(y) = L(x,µ) = [ ] x L(x,µ), h(x) unde y R n+p şi F : R n+p R n+p, astfel încât soluţiile problemei de optimizare (NLPe) se găsesc printre rădăcinile sistemului neliniar: F(y) = 0, Acest sistem poate fi rezolvat prin metode Lagrange de tip gradient sau Newton. Metodele Lagrange au următoarea formă generică: (ML) : x k+1 = L(x k,µ k ) µ k+1 = H(x k,µ k ), în care funcţiile L : R n p R n şi H : R n p R p sunt funcţii diferenţiabile. În plus, iteraţia anterioară converge la un (x,µ ) dacă aceste funcţii satisfac condiţiile x = L(x,µ ) şi µ = H(x,µ ). Mai mult, pentru a asigura convergenţa globală a acestor metode, iteraţiile pot fi dependente şi de un pas α k. Există diferite posibilităţi de alegere a pasului în metodele Lagrange, însa cea mai des utilizată se bazează pe o funcţie merit asociată problemei (NLPe). Un exemplu de funcţie merit este definit de: M(x,µ) = 1 2 xl(x,µ) h(x) 2.

200 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 200 egalitate Remarcăm că M(x,µ) 0 şi M(x,µ) = 0 dacă şi numai dacă x L(x,µ) = 0 şi h(x) = 0, adică această funcţie măsoară cât de aproape este un punct (x,µ) de soluţie. Aşadar, punctele de minim global ale funcţiei merit M(x, µ) satisfac condiţiile necesare de ordinul I (KKT-NLPe) pentru problema cu constrângeri de egalitate (NLPe) studiată în acest capitol. În concluzie, putem minimiza funcţia merit fără constrângeri: min (= 12 x R n,µ R pm(x,µ) xl(x,µ) ) h(x) 2 (12.6) şi orice punct de minim global (x,µ ) al acestei probleme fără constrângeri satisface relaţia L(x,µ ) = 0. Însă, funcţia merit precedentă poate avea şi minime locale, care în general nu sunt folositoare în găsirea soluţiei optime a problemei (NLPe). Suntem interesaţi în găsirea condiţiilor suficiente care garantează că un punct de minim local al problemei fără constrângeri (12.6) este minim global. Lema Presupunem că (x,µ ) este punct de minim local al problemei (12.6) care satisface condiţiile necesare de ordinul I. Presupunem de asemenea că rangul lui h(x ) este p şi Hessiana 2 xl(x,µ ) este pozitiv definită. Atunci (x,µ ) este punct de minim global pentru (12.6), adică M(x,µ ) = 0. Demonstraţie: Cum (x,µ ) satisface condiţiile necesare de ordinul I pentru o problemă de optimizare fără constrângeri avem că gradientul lui M în acest punct este 0: 2 x L(x,µ ) x L(x,µ )+( h(x )) T h(x ) = 0 h(x ) x L(x,µ ) = 0. Multiplicând prima relaţie cu x L(x,µ ) şi folosind apoi cea de-a doua relaţie, obţinem ( x L(x,µ )) T 2 xl(x,µ ) x L(x,µ ) = 0. Deoarece 2 x L(x,µ ) este pozitiv definită, obţinem că x L(x,µ ) = 0. Folosind iarăşi prima relaţie de optimalitate avem următoarea identitate în punctul x ( h(x )) T h(x ) = 0 şi cum rangul lui h(x ) este p rezultă h(x ) = 0. Din condiţiile de optimalitate de ordinul I observăm că un posibil criteriu de oprire pentru metodele ce vor fi dezvoltate în acest capitol este următorul: L(x k,µ k ) ǫ, pentru o acurateţe fixată ǫ > 0.

201 12.2. Metode Lagrange Metoda Lagrange de ordinul I Cea mai simplă metodă Lagrange, numită şi metoda Lagrange de ordinul I, este dată de iteraţia: (ML I) : x k+1 = x k α k x L(x k,µ k ) µ k+1 = µ k +α k h(x k ), unde α k > 0 este un pas. Dacă utilizăm notaţia de mai înainte y = [x T µ T ] T, atunci iteraţia precedentă se scrie sub forma: y k+1 = y k α k F(y k ) y k+1 = y k α k L(y k ), care bineînţeles poate fi interpretată ca metoda gradient pentru sistemul de ecuaţii neliniare F(y ) = L(y ) = 0. Pe de altă parte putem interpreta iteraţia (ML-I) ca o metodă de descreştere pentru problema fără constrângeri (12.6) dacă presupunem că Hessiana Lagrangianului 2 xl(x,µ) este pozitiv definită într-o regiune de interes. Într-adevăr se poate arăta că direcţia dată de următoarea expresie ( x L(x k,µ k ),h(x k )) este o direcţie de descreştere pentru funcţiamînpunctul(x k,µ k ). Pentruomaisimplăexpunere, introducem notaţiile: L k = 2 x L(x k,µ k ), l k = x L(x k,µ k ), h k = h(x k ) şi A k = h(x k ). Atunci, produsul scalar dintre această direcţie şi gradientul lui M capătă următoarea formă: [(L k l k +A T k h k) T (A k l k ) T ][ l T k h T k ]T = l T k L kl k h T k A kl k +l T k AT k h k = l T k L kl k < 0, sub ipoteza că Hessiana L k = 2 x L(x k,µ k ) este pozitiv definită şi l k = x L(x k,µ k ) 0. În concluzie, putem alege pasul α k care minimizează funcţia merit de-a lungul acestei direcţii de descreştere: α k = argmin α 0 M(x k α x L(x k,µ k ),µ k +αh(x k )). Folosind rezultatele de convergenţă ale metodelor de descreştere din partea a doua a acestei lucrări, putem concluziona că iteraţia (ML-I) va converge către un punct ce satisface x L(x,µ ) = 0. Dar, nu putem garanta că h(x ) = 0. Putem îmbunătăţi proprietăţile de convergenţă

202 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 202 egalitate ale acestei metode prin alegerea altei funcţii merit. De exemplu, putem utiliza următoarea funcţie merit: M γ (x,µ) = 1 2 xl(x,µ) h(x) 2 γl(x,µ), unde γ > 0 este suficient de mic. În aceeaşi manieră ca mai înainte se poate arăta că direcţia ( x L(x k,µ k ),h(x k )) este o direcţie de descreştere pentru M γ, şi anume: [(L k l k +A T k h k γl k ) T (A k l k γh k ) T ][ l T k h T k ]T = l T k(l k γi n )l k γh 2 k < 0, sub ipoteza că Hessiana L k = 2 xl(x k,µ k ) este pozitiv definită şi l k = x L(x k,µ k ) 0 sau h k = h(x k ) 0. În concluzie, dacă alegem α k care minimizează funcţia merit M γ de-a lungul acestei direcţii de descreştere se poate arăta că iteraţia (ML-I) converge către un punct ce satisface x L(x,µ ) = 0 şi h(x ) = 0, adică către un punct ce satisface condiţiile (KKT-NLPe) pentru problema originală (NLPe). Vomanaliza acumconvergenţametodei (ML-I) pentrupasconstant α k = α. Pentru aceasta introducem noţiunea de punct de atracţie. O pereche (x,µ ) se numeşte punct de atracţie pentru iteraţia (ML) dacă există o mulţime deschisă V R n p astfel încât pentru orice (x 0,µ 0 ) S şirul (x k,µ k ) generat de iteraţie rămâne în S şi converge la (x,µ ). Teorema Fie L : R n p R n şi H : R n p R p două funcţii diferenţiabile astfel încât x = L(x,µ ) şi µ = H(x,µ ). Mai mult, presupunem că toate valorile proprii ale matricei de dimensiune (n+ p) (n+p) [ ] R x L(x =,µ ) x H(x,µ ) µ L(x,µ ) µ H(x,µ ) sunt în interiorul cercului unitate. Atunci, (x,µ ) este un punct de atracţie al iteraţiei (ML) şi când şirul generat (x k,µ k ) converge la (x,µ ), rata de convergenţă este liniară. Demonstraţie: Notăm cu y = [x T µ T ] T şi cu M(y) = [L(x,µ) H(x,µ)]. Din teorema valorii medii avem că pentru orice doi vectori y şi ỹ: M(ỹ) M(y) = R T (ỹ y),

203 12.2. Metode Lagrange 203 unde R este o matrice având coloana i definită de gradientul M i (ŷ i ) al componentei ialui M evaluatîntr-unvector ŷ i cesegăseştepesegmentul având capetele în ỹ şi y. Luând ỹ şi y suficient de aproape de y, putem face această matrice R să fie apropiată de R şi deci putem asigura existenţa valorilor proprii ale matricei R sau echivalent R T în cercul unitate. În concluzie, există o vecinătate S a lui y = [(x ) T (µ ) T ] T astfel încât în această vecinătate norma matricei R T este mai mică decât 1 ǫ, unde ǫ este un scalar pozitiv. Aplicând norma în relaţia anterioară obţinem: M(ỹ) M(y) R T ỹ y. Înconcluzie, în vecinătatea S alui (x,µ ) operatorulm este ocontracţie şi rezultatul urmează apoi din teorema de contracţie (vezi Apendice). Demonstrăm acum convergenţa locală a metodei Lagrange de ordinul I: Teorema Presupunem că f şi h sunt funcţii de două ori diferenţi- abile, x este punct de minim local pentru care există µ satisfăcând condiţiile (KKT-NLPe). Presupunem de asemenea că x este regulat şi Hessiana 2 x L(x,µ ) este pozitiv definită. Atunci există ᾱ > 0 astfel încât pentru orice α (0 ᾱ], (x,µ ) este un punct de atracţie al iteraţiei (ML-I) şi dacă şirul generat (x k,µ k ) converge la (x,µ ), atunci rata de convergenţă este liniară. Demonstraţie: Vom arăta că pentru α suficient de mic ipotezele teoremei anterioare sunt satisfăcute. Considerăm funcţia: [ ] x α x L(x,µ) M α (x,µ) =. λ+α µ L(x,µ) Este clar că M α (x,µ ) = [(x ) T (µ ) T ] T şi M α (x,µ ) = I n+p αb, unde: [ ] 2 B = x L(x,µ ) h(x ) h(x. ) 0 Arătăm că partea reală a fiecărei valori proprii a matricei B este strict pozitivă. Pentru orice vector y, notăm ȳ conjugatul lui şi cu Re( ) partea reală a unui număr complex. Fie γ o valoare proprie a lui B având vectorul propriu corespunzător y = [z T w T ] T 0. Avem: şi în acelaşi timp: Re(ȳ T By) = Re(γ)( z 2 + w 2 ), Re(ȳ T By) = Re ( z T 2 x L(x,µ )z + z T h(x )w w T h(x )z ).

204 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 204 egalitate Deoarece Re( z T Dw) = Re( w T Dz) pentru orice matrice D cu intrări numere reale, obţinem: Re(ȳ T By) = Re ( z T 2 xl(x,µ )z ) = Re(γ)( z 2 + w 2 ). Dar pentru orice matrice D pozitiv definită avem Re( z T Dz) > 0 pentru orice z 0. În concluzie, din relaţia precedentă avem fie Re(γ) > 0 sau z = 0. Dar dacă z = 0, din definiţia valorii proprii By = γy obţinem h(x )w = 0. Însă x este punct regulat şi deci h(x ) are rangul p, ceea ce implică că w = 0. Aceasta contrazice faptul că vectorul propriu y 0. Obţinem că Re(γ) > Metoda Lagrange-Newton Dorim acum să aplicăm metoda Newton pentru a rezolva sistemul de ecuaţii dat de condiţiile (KKT - NLPe): L(x,µ) = 0 h(x) = 0. Utilizând notaţiile de mai înainte, dorim să rezolvăm sistemul neliniar F(y) = 0, [ ] x unde y = R µ n+p şi F : R n+m R n+m,f(y) = sistem poate fi rezolvat prin metoda Newton: [ ] L(x,λ). Acest h(x) F(y k )+ F y (y k)(y y k ) = 0 (12.7) care conduce la următoarea iteraţie Newton, sub ipoteza că Jacobianul F(y k ) = F y (y k) este matrice inversabilă: y k+1 = y k ( ) 1 F y (y k) F(y k ). Iteraţia (12.7) poate fi scrisă în termeni de gradienţi astfel: x L(x k,µ k )+ 2 x L(x k,µ k )(x x k )+( h(x k )) T (µ µ k ) = 0 h(x k )+ h(x k )(x x k ) = 0.

205 12.2. Metode Lagrange 205 Scrisă în forma matriceală, obţinem următorul sistem liniar: [ ][ ] [ ] 2 x L(x k,µ k ) ( h(x k )) T x xk x L(x = k,µ k ). h(x k ) 0 µ µ k h(x k ) }{{} matricea KKT Este clar că pentru orice soluţie (x,µ ) pentru care condiţiile suficiente de ordinul II sunt satisfăcute, matricea KKT este inversabilă într-o vecină-tatealui(x,µ ). Înacestcaz, avemsoluţieunicăpentrusistemul liniar anterior. Obţinem următoarea iteraţie Newton: (ML N) : x k+1 = x k +d k µ k+1 = µ k +d µ k, unde direcţiile (d k,d µ k ) sunt soluţia sistemului: [ ][ ] 2 x L(x k,µ k ) ( h(x k )) T dk = h(x k ) 0 d µ k [ x L(x k,µ k ) h(x k ) ]. (12.8) Rezultatele standard de convergenţă locală ale metodei Newton aplicate unui sistem de ecuaţii neliniare sunt aplicabile şi pentru sistemul neliniar F(y) = 0. Aceste rezultate afirmă că dacă sistemul liniarizat la soluţia (x,µ ) este inversabil (în cazul nostru această condiţie este îndeplinită dacă condiţiile suficiente de ordinul II în (x,µ ) au loc pentru problema (NLPe))şidacăpunctuliniţial(x 0,µ 0 )estesuficientdeaproapedesoluţia (x,µ ), atunci şirul (x k,µ k ) generat de metoda Newton (ML - N) este convergent şi converge către soluţie cu rată cel puţin pătratică. Putem arăta că direcţia generată de metoda Newton este o direcţie de descreştere pentru funcţia merit: M(x,µ) = 1 2 xl(x,µ) h(x) 2. Reamintim notaţiile: L k = 2 x L(x k,µ k ),l k = x L(x k,µ k ), h k = h(x k ) şi A k = h(x k ). Atunci, produsul scalar dintre direcţiile Newton (d k,d µ k ) şi gradientul lui M capătă următoarea formă: [L k l k +A T k h k A k l k ][d T k (d µ k )T ] T = l T k L kd k +h T k A kd k +l T k AT k dµ k = l k 2 h k 2. Această expresie este strict negativă, cu excepţia cazului când l k = 0 şi h k = 0 (adică condiţiile (KKT-NLPe)). Din interpretarea metodei

206 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 206 egalitate x x 1 Figura 12.1: Iteraţia metodei (ML-N) cu punctul iniţial x 0 = [2 2] T pentru problema neconvexă min (x 1 6) 4 +(x 1 4x 2 ) 2. x R 2 : x 2 1 +x2 2 =1 Lagrange-Newton ca o metodă de descreştere pentru o funcţie merit, putem concluziona că metoda Newton are proprietăţi de convergenţă globală când iteraţia se ia cu un pas variabil. Definim metoda Lagrange-Newton generală prin următoarea iteraţie: (ML N α ) : x k+1 = x k +α k d k µ k+1 = µ k +α k d µ k, unde (d k,d µ k ) sunt direcţiile Newton din sistemul (12.8) şi α k este ales să minimizeze funcţia merit, i.e. α k = argmin α 0 M(x k +αd k,µ k +αd µ k ). Folosind rezultatele de convergenţă a metodelor de descreştere pentru cazul problemelor de optimizare neconstrânsă (Capitolul 4) se poate arăta că orice punct limită al şirului generat de metoda Lagrange-Newton cu pas variabil (ML N α ) satisface condiţiile necesare de ordinul I pentru problema cu constrângeri de egalitate (NLPe), adică condiţiile (KKT-NLPe). Interpretarea metodei Lagrange-Newton folosind formularea QP secvenţială: Dacă adăugăm expresia ( h(x k )) T µ k în prima ecuaţie a sistemului (12.8), atunci acest sistem se rescrie în forma: [ 2 x L(x k,µ k ) ( h(x k )) T h(x k ) 0 ][ dk µ k+1 ] = [ f(xk ) h(x k ) ].

207 12.3. Metoda Newton pentru probleme convexe având constrângeri de egalitate 207 Sistemul liniar (12.8) se scrie explicit astfel: f(x k )+ 2 x L(x k,µ k )d k +( h(x k )) T µ k+1 = 0, h(x k )+ h(x k )d k = 0. Aceste două relaţii sunt de fapt condiţiile (KKT) pentru o problemă pătratică, adică d k şi µ k+1 sunt soluţiile optime (punctele staţionare) obţinute din rezolvarea unui QP de forma: min f(x k) T d+ 1 d R n 2 dt 2 x L(x k,µ k )d (12.9) s.l.: h(x k )+ h(x k )d = 0. Această metodă se mai numeşte şi metoda pătratică secvenţială, deoarece pentru problema originală (NLP) se construieşte un model pătratic pentru funcţia obiectiv şi constrângerile de egalitate se liniarizează în punctul curent. Mai general, putem înlocui Hessiana Lagrangianului 2 x L(x k,µ k ) printr-o aproximare B k, unde B k = Bk T şi adesea B k 0. Matricea B k poate fi aleasă în diferite moduri. O posibilitate ar fi să alegem matricea B k constantă de-a lungul tuturor iteraţiilor. O altă posibilitate ar fi să alegem B k folosind informaţie din 2 x L(x k,µ k ), de exemplu B k este egală cu diagonala lui 2 x L(x k,µ k ). În final, matricea B k se poate actualiza folosind updatări cvasi Newton de rang unu sau doi pe baza ecuaţiei secantei: B k+1 (x k+1 x k ) = x L(x k+1,µ k+1 ) x L(x k,µ k+1 ) Metoda Newton pentru probleme convexe având constrângeri de egalitate O problemă de optimizare convexă având constrângeri de egalitate are forma: (CPe) : min f(x) x Rn (12.10) s.l.: Ax = b, (12.11) în care f : R n R este funcţie convexă şi A R p n are rangul p. În acest caz, condiţiile (KKT) sunt necesare şi suficiente, adică x este punct de minim dacă şi numai dacă există µ R p astfel încât: (KKT CPe) : f(x )+A T µ = 0, Ax = b.

208 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 208 egalitate În problema (CPe) putem elimina constrângerile de egalitate pe baza observaţiei: {x R n : Ax = b} = {x R n : x = Zv +y, v R n p }, unde coloanele lui Z reprezintă o bază pentru kernel(a) şi y este o soluţie particulară a sistemului Ax = b. În acest caz putem rezolva problema de optimizare convexă fără constrângeri: min f(v) (= f(zv+y)). (12.12) v R n p Dacă v este o soluţie a problemei convexe fără constrângeri, atunci x = Zv +y este o soluţie a problemei originale. Exemplul Considerăm problema de alocare optimă având constrângeri pe resurse: min f(x). x R n : x 1 + +x n=b Putem elimina de [ exemplu ] x n = b x 1 x n 1 care corespunde lui In 1 y = be n şi Z = e T R n n 1. Problema fără constrângeri devine: min f(x 1,...,x n 1,b x 1 x n 1 ). x R n 1 Prezentăm în cele ce urmează o extensie a metodei Newton pentru cazul neconstrâns la cel cu constrângeri de egalitate pentru probleme convexe: fie x k fezabil, următorul punct al iteraţiei Newton se calculează folosind direcţia Newton d k ce rezultă din aproximarea pătratică de ordinul II a lui f în jurul lui x k, i.e. d k =argmin d R n f(x k)+ f(x k ) T d+ 1 2 dt 2 f(x k )d (12.13) s.l.: A(x k +d) = b. Subproblema (12.13) este o problemă QP convexă având constrângeri de egalitate Ad = 0. Aşadar, direcţia Newton este caracterizată de sistemul liniar: [ ][ ] [ ] 2 f(x k ) A T dk f(xk ) =, A 0 0 µ k+1

209 12.3. Metoda Newton pentru probleme convexe având constrângeri de egalitate x x 1 Figura 12.2: Iteraţiile metodei Newton cu pasul α k = 1 pentru problema convexă min (x x R 2 1 2) 4 +(x 1 2x 2 ) 2. :x 1 +2x 2 =16 unde µ k+1 este multiplicatorul Lagrange optim asociat problemei pătratice convexe (12.13). Introducem decrementul Newton: Putem observa că: f(x k ) min d ν(x k ) = ( d T k 2 f(x k )d k ) 1/2. { f(x k )+ f(x k ) T d+ 1 2 dt 2 f(x k )d : Ad = 0 } = ν(x k ) 2 /2, ceea ce arată că decrementul Newton poate fi folosit drept criteriu de oprire. De asemenea, d dt f(x k +td k ) = f(x k ) T d k = ν(x k ) 2, t=0 adică direcţia Newton este direcţie de descreştere dacă alegem t suficient demic. Înconcluzie, metodanewtongeneralăpentrucazulconvex (CPe) este dată de iteraţia: (MNe) : x k+1 = x k +α k d k, unde direcţia Newton d k este soluţia problemei QP (12.13), pasul α k se alege prin procedura backtracking în raport cu direcţia d k şi criteriul de oprire folosit este: ν(x k )/2 ǫ,

210 Capitolul 12. Metode de optimizare pentru (NLP) având constrângeri de 210 egalitate pentru o acurateţe fixată ǫ. Alegerea pasului α k prin backtracking constă în alegerea unui ρ (0, 1) şi respectiv c 1 (0, 1) şi atunci α k = ρ m k, unde m k este primul întreg ne-negativ ce satisface: f(x k +ρ m d k ) f(x k )+c 1 ρ m f(x k ) T d k. În ceea ce priveşte convergenţa acestei metode, se poate arăta uşor că iteraţiile metodei Newton (MNe) pentru o problemă convexă cu constrângeri de egalitate (CPe) coincid cu iteraţiile metodei Newton pentru problema convexă redusă fără constrângeri (12.12). În concluzie, performanţa metodei Newton pentru cazul constrângerilor de egalitate este similară cu cea a metodei Newton pentru cazul neconstrâns. În particular, dacă x k este aproape de soluţia optimă x, convergenţa este cel puţin pătratică.

211 Capitolul 13 Metode de optimizare pentru (NLP) generale În acest capitol vom prezenta metode numerice de optimizare pentru cazul general al problemelor (NLP) în forma standard: (NLP) : min f(x) (13.1) x Rn s.l.: g(x) 0, h(x) = 0, în care funcţiile f : R n R, g : R n R m şi h : R n R p sunt funcţii diferenţiabile de două ori. Metodele dezvoltate în acest capitol au la bază condiţiile de optimalitate de ordinul I: dacă x este minim local pentru (NLP) şi regulat, atunci există un vector λ R m şi un vector µ R p astfel încât condiţiile (KKT) au loc: (KKT) : f(x )+ h(x ) T µ + g(x ) T λ = 0 g(x ) T λ = 0 g(x ) 0, h(x ) = 0 µ R p, λ 0. Exemplul (Alocarea optimă de combustibil în generatoare electrice) În două generatoare de electricitate se foloseşte atât petrol cât şi gaz pentru producerea de energie electrică. Energia care trebuie produsă de cele două generatoare este de 50 MW. Cantitatea de gaz disponibilă este de 10 unităţi/ph. Se doreşte selectarea de combustil (petrol şi gaz) pentru fiecare generator astfel încât să se minimizeze cantitatea de petrol utilizată. Din datele de

212 212 Capitolul 13. Metode de optimizare pentru (NLP) generale operare ale fiecărui generator s-a construit o curbă de fitting astfel încât combustibilul necesar în generatorul 1 pentru producerea de x 1 MW poate fi exprimată sub forma: w 1 (x) = x x 2 1 w 2 (x) = x x 2 1, unde w 1 şi w 2 sunt cantităţile de petrol, respectiv de gaz în unităţi pe oră. Similar pentru generatorul 2; pentru a produce cantitatea de x 2 MW cerinţele de combustibil sunt următoarele: v 1 (x) = x x 2 2 v 2 (x) = x x 2 2, unde v 1 şi v 2 sunt cantităţile de petrol, respectiv de gaz în unităţi pe oră. De asemenea, generatorul 1 poate produce putere în intervalul [18, 30] MW şi generatorul 2 în intervalul [14, 25] MW. De asemenea, combustibilul poate fi combinat aditiv, adică pentru a produce o cantitate x 1 de energie orice combinaţie liniară de rate de combustibil utilizat va produce aceeaşi cantitate de electricitate: x 3 w 1 (x 1 )+(1 x 3 )w 2 (x 1 ), unde x 3 [0, 1]. La fel pentru generatorul 2. Problema de optimizare se pune astfel: să se determine ratele de producere a energiei x 1 şi x 2 cât şi fracţiunea de combustibil mixat x 3 şi x 4 astfel încât să se minimizeze consumul total de petrol, i.e. min x 3w 1 (x)+x 4 v 1 (x) x R 4 s.l.: x 1 +x 2 = 50 (1 x 3 )w 2 (x)+(1 x 4 )v 2 (x) x 1 30, 14 x 2 25, 0 x 3 1, 0 x 4 1. Acesta este un exemplu de problemă neconvexă (NLP) având constrângeri de egalitate liniare şi constrângeri de inegalitate de tip box şi neconvexe. Exemplul (Compresia multi-nivel a unui gaz) O anumită cantitate de gaz cu un flux de φ moli pe oră la presiunea de 1 atmosferă se urmăreşte a fi comprimat la 64 atmosfere, folosind un compresor cu trei niveluri. Presupunem că procesul de compresie are loc reversibil

213 13.1. Metoda mulţimilor active 213 şi adiabatic; după fiecare nivel de compresie gazul este răcit până la temperatura iniţială T. De cele mai multe ori, se urmăreşte în mod crucial procesul de compresie cu un consum de energie minim. De aceea, o problemă de optimizare (NLP) intervine în alegerea optimă a presiunilor inter-nivel astfel încât comsumul de energie să fie minim. Pentru compresia reversibilă adiabatică a gazului pe un singur nivel, consumul de energie este dat de expresia: Ener = φrt κ κ 1 ( Pout P in ) (κ 1)/κ φrt κ κ 1, în care κ reprezintă raportul capacităţilor de încălzire ale gazului, T temperatura, R constanta ideală a gazului, iar P in şi P out reprezintă presiunea gazului la intrarea, respectiv ieşirea dintr-un nivel. Pentru compresia pe trei niveluri, efortul energetic este dat de: Ener totala = φrt κ κ 1 { x α 1 + ( x2 x 1 ) α ( 64 + x 2 ) α 3}. unde x 1 este presiunea gazului la ieşirea din primul nivel, x 2 presiunea la ieşirea din cel de-al doilea nivel şi α = (κ 1)/κ. Dacă considerăm cazul particular când α = 1, iar parametrii φ si T sunt fixaţi, presiunile 4 optimale impuse x 1 şi x 2 inter-nivel sunt soluţiile următoarei probleme de optimizare având constrângeri de inegalitate (NLP): min x R 2 f(x) = x1 ( )1 4 x2 1 + x ( 64 x 2 s.l.: x 1 1, x 2 x 1, 64 x 2, unde constrângerile sunt impuse pentru a asigura o presiune a gazului crescătoare de la intrare la ieşire în cele trei niveluri Metoda mulţimilor active Ideea de bază în metoda mulţimilor active constă în partiţionarea constrângerilor de inegalitate în două grupuri: cele care sunt tratate ca constrângeri active şi, respectiv, constrângeri inactive. Constrângerile inactive sunt apoi în esenţă ignorate. Condiţiile (KKT) anterioare pot fi exprimate, folosind această partiţionare, într-o formă mai simplă: fie A(x ) mulţimea de indecşi ai constrângerilor active în punctul x, adică )1 4

214 214 Capitolul 13. Metode de optimizare pentru (NLP) generale conţine mulţimea de indecşi i pentru care g i (x ) = 0. Atunci condiţiile (KKT) devin: (KKT) : f(x )+ h(x ) T µ + i Aλ i g i(x ) = 0 g i (x ) < 0 i A(x ), g i (x ) = 0 i A(x ), h(x ) = 0 λ i 0 i A(x ), λ i = 0 i A(x ), µ R p. Este evident că dacă mulţimea activă în x ar fi cunoscută, problema originală (NLP) ar putea fi înlocuită cu o problemă de optimizare corespunzătoare având numai constrângeri de egalitate. Cum mulţimea activă nu e cunoscută a priori, vom alege o mulţime de indecşi şi vom rezolva problema cu constrângeri de egalitate rezultată cu una din metodele descrise în capitolul anterior. Apoi vom verifica pentru soluţia obţinută dacă celelalte constrângeri sunt satisfăcute şi multiplicatorii Lagrange sunt ne-negativi; în caz afirmativ, această soluţie va fi cea căutată pentru problema originală (NLP). În concluzie, în metoda mulţimilor active vom defini la fiecare iteraţie un set de constrângeri active, numit set de lucru, care va fi tratat ca mulţimea activă. Setul de lucru se alege dintr-un subset al constrângerilor care sunt active în punctul curent şi deci punctul curent este fezabil pentru setul de lucru. Algoritmul va produce un nou punct cu performanţe mai bune, ce se găseşte pe această suprafaţă definită de setul de lucru. Noul punct va fi găsit prin utilizarea unei metode de optimizare descrisă în capitolul anterior pentru rezolvarea problemelor neliniare cu constrângeri de egalitate. Presupunem că pentru o mulţime activă de indecşi A rezolvăm probleme de optimizare cu constrângeri de egalitate corespunzătoare: min f(x) (13.2) x Rn h(x) = 0, g i (x) = 0 i A şi obţinem soluţia x A. Presupunem, de asemenea, că punctul x A verifică inegalităţile g i (x A ) < 0 pentru orice i A. Atunci, acest punct satisface condiţiile necesare de ordinul I: f(x A )+ h(x A ) T µ+ i Aλ i g i (x A ) = 0. Dacă λ i 0 pentru orice i A, atunci punctul x A este o soluţie locală (punct staţionar) pentru problema (NLP) generală. Pe de altă

215 13.1. Metoda mulţimilor active 215 parte, dacă există i A astfel încât λ i < 0, atunci valoarea funcţiei obiectiv poate fi micşorată prin relaxarea constrângerii i (aceasta rezultă din interpretarea senzitivităţii multiplicatorilor Lagrange). Astfel, prin eliminarea din setul de lucru a constrângerii i se poate obţine o soluţie îmbunătăţită. Adesea se întâmplă că în timp ce ne mişcăm pe suprafaţa de lucru o nouă constrângere de inegalitate devine activă. În acest caz este preferabil să adăugăm această constrângere la setul de lucru şi să continuăm căutarea pe această suprafaţă cu o dimensiune mai mică decât cea anterioară. O strategie pentru metodele de mulţimi active se bazează pe aceste două principii. Începem cu un set de lucru şi minimizăm peste suprafaţa de lucru corespunzătoare. Dacă noile constrângeri devin active în timpul minimizării problemei cu constrângeri de egalitate, atunci ele pot fi adăugate la suprafaţa de lucru, dar nici o constrângere nu este scoasă din setul de lucru. În final, se obţine un punct care minimizează funcţia f peste această suprafaţă. Apoi, multiplicatorii Lagrange sunt determinaţi şi se verifică semnul lor. Dacă toţi sunt ne-negativi, atunci soluţia obţinută este optimă pentru problema originală (NLP). Altfel, una sau mai multe constrângeri corespunzătoare multiplicatorilor negativi se elimină din setul de lucru. Procedura se repetă cu acest nou set de lucru. O astfel de metodă converge, după cum este demonstrat mai jos: Teorema Dacă pentru orice mulţime activă A, problema cu constrângeri de egalitate (13.2) are o singură soluţie nedegenerată (adică pentru orice i A avem λ i 0), atunci şirul generat de metoda mulţimilor active converge la un punct staţionar (punct ce satisface condiţiile (KKT)) pentru problema generală (NLP). Demonstraţie: După ce o soluţie corespunzătoare unui set de lucru este găsită, o descreştere strictă în funcţia obiectiv este realizată şi deci nu este posibilă reîntoarcerea la această mulţime activă. Cum există un număr finit de mulţimi active, procesul se termină după un număr finit de iteraţii.

216 216 Capitolul 13. Metode de optimizare pentru (NLP) generale Metoda mulţimilor active pentru (QP) Considerăm problema (QP) având constrângeri de inegalitate (extensia la cazul general când avem şi constrângeri de egalitate este evidentă): min 2 xt Qx q T x s.l.: Cx d. x R n 1 Presupunem un (QP) convex (i.e. matricea Q 0). Cazul în care Q este matrice indefinită ridică multe probleme în algoritmii numerici de optimizare şi nu va fi tratat în această carte. Condiţiile (KKT) sunt, în acest caz, necesare şi suficiente pentru optimalitatea globală: Qx q +C T λ = 0 (Cx d) T λ = 0 Cx d, λ 0. Definim o mulţime de indecşi A corespunzătoare unor constrângeri active şi apoi introducem şi complementara acestei mulţimi I = {1,...,m}\A (corespunzătoare constrângerilor inactive). Partiţionăm matricele şi vectorii corespunzători astfel: [ ] [ ] CA da C =, d = C I şi deci putem partiţiona constrângerile de inegalitate după cum urmează: d I C A x = d A, C I x < d I. Lema Punctul x este minim global pentru problema (QP) convexă dacă şi numai dacă există o mulţime de indecşi A şi I şi un vector λ A astfel încât: Qx q +C T A λ A = 0 C I x d I < 0, C A x d A = 0 În plus, λ = [(λ A )T (λ I )T ] T, unde λ I = 0. λ A 0. Principalii paşi în metoda mulţimilor active pentru problemele(qp) sunt:

217 13.2. Metoda pătratică secvenţială alegem un punct iniţial fezabil x 0 cu mulţimea activă corespunzătoare A 0, pentru k 0 repetăm următorii paşi: 2. rezolvăm sistemul liniar în ( x k,λ k ): Q x k +C T A k λ k = q C Ak x k = d Ak 3. definim x k+1 = x k + α k ( x k x k ), unde pasul α k [0, 1] astfel încât x k+1 să fie fezabil pentru problema originală. Dacă t k < 1 adăugăm la mulţimea de indecşi A k un index nou i k corespunzător unei constrângeri pentru care x k nu este fezabil, i.e. A k+1 = A k {i k }. Dacă t k = 1, atunci x k este fezabil şi verificăm dacă λ k 0. Dacă această inegalitate are loc, atunci ne oprim. Altfel, eliminăm indexul ī k din A k corespunzător inegalităţii (λ k ) īk < 0, iar A k+1 = A k \{ī k } 13.2 Metoda pătratică secvenţială În această secţiune prezentăm o importantă clasă de metode pentru optimizarea constrânsă, numită metoda pătratică secvenţială (Sequential Quadratic Programming (SQP)). Considerăm problema (NLP) generală şi liniarizăm această problemă atât în constrângerile de egalitate cât şi în cele de inegalitate în punctul curent şi construim un model pătratic pentru funcţia obiectiv pentru a obţine o problemă (QP): min d R n f(x k) T d+ 1 2 dt 2 xl(x k,λ k,µ k )d (13.3) s.l.: g(x k )+ g(x k )d 0 h(x k )+ h(x k )d = 0. Se observă că această metodă este generalizarea metodei Lagrange-Newton descrisă în capitolul anterior în (12.9) pentru probleme cu constrângeri de egalitate la cazul în care avem şi constrângeri de tip inegalităţi. De asemenea, putem folosi algoritmul de mulţimi active descris anterior pentru rezolvarea acestei probleme pătratice (13.3). Local, într-o vecinătate a unei soluţii (x,λ,µ ) putem defini iteraţia metodei pătratice secvenţiale în forma: (x k+1 = x k +d k, λ k+1, µ k+1 ),

218 218 Capitolul 13. Metode de optimizare pentru (NLP) generale în care d k şi (λ k+1, µ k+1 )) sunt soluţia şi respectiv multiplicatorii Lagrange pentru inegalităţi şi egalităţi ai problemei pătratice anterioare (13.3). În această abordare, mulţimea de constrângeri active A k la soluţia problemei (13.3) o putem presupune a fi cea corespunzătoare problemei generale (NLP) atunci când x k este suficient de apropiat de x. Următoarea teoremă furnizează condiţiile în care această proprietate are loc. Teorema Presupunem că x este un punct de minim local al problemei (NLP) la care condiţiile (KKT) sunt satisfăcute (şi deci x este punct regulat). De asemenea, presupunem că condiţiile suficiente de ordinul II au loc şi nu există soluţie degenerată (adică λ j > 0 pentru orice j A(x )). Atunci dacă (x k,λ k,µ k ) este suficient de aproapre de (x,λ,µ ), există o soluţie locală a problemei (13.3) pentru care mulţimea activă de indici satisface A k = A(x ), adică soluţia problemei pătratice are aceeaşi mulţime activă ca şi problema (NLP). Demonstraţie: Pentru această demonstraţie folosim teorema funcţiilor implicite (vezi Apendice). Definim A = A(x ) şi complementara acestei mulţimi I. Considerăm funcţia F în variabila (x,d,λ A,µ) dată de următoarea expresie: f(x)+ 2 x L(x,λ A,µ)d+ h(x)t µ+ g A (x) T λ A = 0 h(x)+ h(x)d = 0 g A (x)+ g A (x)d = 0. Ipotezele din teorema funcţiilor implicite sunt satisfăcute şi deci aceasta defineşte o funcţie implicită de forma: d(x) χ(x) = µ(x), λ A (x) cu d(x ) = 0, µ(x ) = µ şi λ A (x) = λ A şi ţinem cont că λ I = 0. Într-adevăr, următoarele relaţii au loc: f(x )+ 2 xl(x,λ A,µ )0+ h(x ) T µ + g A (x ) T λ A = 0 h(x )+ h(x )0 = 0 g A (x)+ g A (x )0 = 0.

219 13.2. Metoda pătratică secvenţială 219 deoarece x L(x,µ,λ ) = 0, h(x ) = 0,g A (x ) = 0,g I (x ) < 0 şi λ I = 0. Observăm că λ A > 0 datorită complementarităţii stricte. Pentru x x, datorită continuităţii lui d(x) şi λ A (x), avem în continuare g I (x) < 0 şi λ A (x) > 0. Mai mult: g I (x)+ g I (x)d(x) < 0. Astfel, o soluţie a problemei pătratice (13.3) are aceeaşi mulţime activă ca şi problema (NLP) şi satisface complementaritatea strictă. În concluzie, metoda pătratică secvenţială va identifica corect mulţimea activă la optim A(x ) şi deci va avea un comportament asemănător metodei Lagrange-Newton pentru problemele de optimizare cu constrângeri de egalitate, adică va converge local foarte rapid. Este de asemenea remarcabil că departe de soluţie metoda pătratică secvenţială este capabilă să îmbunătăţească estimarea mulţimii active şi dirijează iteraţiile către soluţie. Departe de soluţie, iteraţia metodei pătratice secvenţiale are nevoie de un pas α k variabil. Alegerea pasului se face pe baza următoarei funcţii merit: M(x,τ) = f(x)+τ h(x) 1 +τ m max{0,g i (x)}. i=1 Mai exact, fie d k şi ( λ k+1, µ k+1 )) soluţia şi respectiv multiplicatorii Lagrange pentru inegalităţi şi egalităţi ai problemei pătratice (13.3). Definim de asemenea d µ k = µ k+1 µ k şi d λ k = λ k+1 λ k. Atunci algoritmul general are următoarea iteraţie: (SQP) : x k+1 = x k +α k d k, µ k+1 = µ k +α k d µ k, λ k+1 = λ k +α k d λ k, unde pasul α k se alege prin metoda de backtracking pentru funcţia merit de mai sus, adică α k = ρ m k pentru un ρ (0, 1) şi c1 (0, 1), unde m k este primul întreg ne-negativ care satisface: M(x k +ρ m d k,τ k ) M(x k,τ k )+c 1 ρ m M (x k,τ k ;d k ). Reamintim că M (x k,τ k ;d k ) reprezintă derivata direcţională a lui M în punctul (x k,τ k ) de-a lungul direcţiei d k. Mai mult, τ k este un parametru care se ajustează la fiecare iteraţie, de exemplu putem alege: τ k f(x k) T d k +1/2d T k 2 x L(x k,λ k,µ k )d k (1 β)( h(x k ) 1 + m i=1 max{0,g i(x k )} ),

220 220 Capitolul 13. Metode de optimizare pentru (NLP) generale unde β (0, 1). Funcţia fmincon din Matlab utilizează această metodă pentru găsirea unui punct de minim local al problemei generale (NLP). Ca şi în capitolul anterior, putem aproxima Hessiana Lagrangianului 2 xl(x k,λ k,µ k ) cu o matrice B k, unde B k se poate actualiza folosind updatări cvasi-newton de rang unu sau doi derivate din ecuaţia secantei: B k+1 (x k+1 x k ) = x L(x k+1,µ k+1,λ k+1 ) x L(x k,µ k+1,λ k+1 ). Exemplul Considerăm următoarea problemă: min f(x) = 6x 1 + x 2 x R 2 x 2 x 1 s.l.: h(x) = x 1 x 2 2 = 0, g(x) = 1 x 1 x 2 0. Rezolvăm această problemă cu metoda pătratică secvenţială pornind din punctul iniţial x 0 = [2 1] T, λ 0 = 0 şi µ 0 = 0. Derivatele necesare pentru construcţia subproblemei QP sunt: [ 6 f(x)= 2x 2 x 2 x 3 1 6x 1 x x 2 1] T, 2 f(x)= [ 6 x 2 2 6x 2 x x 3 1 h(x) = [x 2 x 1 ] T, g(x) = [ 1 1] T. 6 2 x 2 2 x x 1 x 3 2 În punctul x 0, f(x 0 ) = 12.25, h(x 0 ) = 0 şi g(x 0 ) = 2 < 0. De aici rezultă prima subproblemă QP: min q(d;x 0) x R 2 ( = [ [ ] ] ) d+ 2 dt d 24 4 s.l.: [1 2]d = 0, [ 1 1]d 2 0. Eliminând prima constrângere de egalitate, problema se reduce la una unidimensională ce se poate rezolva analitic obţinând soluţia următoare d 0 = [ ] T. Mai departe, prima iteraţie a metodei pătratice secvenţiale cu pas unitar este: x 1 = x 0 +d 0 = [ ]T. Din moment ce constrângerea de inegalitate este satisfăcută strict în această soluţie (adică [ 1 1]d 0 2 < 0), considerăm λ 1 = 0. Multiplicatorul corespunzător constrângerii de egalitate poate fi calculat ]

221 13.2. Metoda pătratică secvenţială 221 prin rezolvarea condiţiilor de optimalitate necesare ale subproblemei. Mai exact q(d;x 0 )+µ h(x 0 ) = 0, sau explicit [ 23 ] 3 ] [ ] 4 +[ d µ = 0, de unde avem µ 1 = În concluzie, prima iteraţie şi valorile aferente sunt date de: x 1 = [ ] T, f(x 1 ) = , h(x 1 ) = , g(x 1 ) < 0. Observăm că funcţia a progresat substanţial însă constrângerea de egalitate nu este satisfăcută. A doua subproblemă necesită următoarele derivate: f(x 1 ) = [ ] T h(x 1 ) = [ ] T [ ] [ ] f(x 1 ) =, 2 h(x ) =, 1 0, iar Hessiana termenului pătratic va fi (reamintim că λ 1 = 0): [ ] xl = 2 f +µ 2 h = În concluzie, a doua subproblemă este dată de: min q(d;x 1) x R 2 ( = [ ] d+ 1 2 dt [ s.l.: d d 2 = , [ 1 1]d , cu soluţia d 1 = [ ] T şi apoi calculăm x 2 = x 1 + d 1 = [ ] T. Din nou, având constrângerea de inegalitate strict satisfăcută [ 1 1]d < 0, atunci λ 2 = 0. Mai mult, µ 2 se obţine din condiţiile de optimalitate ale subproblemei rezultând în µ 2 = În final avem f(x 2) = , g(x 2 ) < 0 şi h(x 2 ) = Repetând aceiaşi paşi pentru următoarele două iteraţii obţinem: λ 3 = 0, µ 3 = , x 3 = [ ] T f(x 3 ) = , g(x 3 ) < 0, h(x 3 ) = λ 4 = 0, µ 4 = x 4 = [ ] T f(x 4 ) = , g(x 4 ) < 0, h(x 4 ) = ] ) d

222 222 Capitolul 13. Metode de optimizare pentru (NLP) generale 13.3 Metode de penalitate şi barieră Metodele de penalitate şi barieră sunt proceduri de aproximare a unei probleme de optimizare constrânsă cu o probleme neconstrânsă. Aproximarea se realizează în cazul metodelor de penalitate prin adăugarea unui termen la funcţia obiectiv care atribuie un cost mare violării constrângerilor, în timp ce în metodele de tip barieră se adaugă un termen la funcţia obiectiv care favorizează punctele din interiorul mulţimii fezabile faţă de cele de pe frontiera acestei mulţimi. Problema neconstrânsă se rezolvă apoi cu metode standard (de tip gradient sau Newton) din optimizarea neconstrânsă prezentate în Partea a II-a a lucrării Metode de penalitate Considerăm problema de optimizare: min x X f(x), (13.4) unde f este funcţie diferenţiabilă şi X R n este mulţimea fezabilă. În general, mulţimea X este descrisă de un set de egalităţi şi inegalităţi. Definim o funcţie P : R n R, numită penalitate cu următoarele proprietăţi: (i) P este continuă şi ne-negativă, adică P(x) 0 pentruorice x R n ; (ii) P(x) = 0 dacă şi numai dacă x X. În aceste condiţii înlocuim problema de optimizare constrânsă (13.4) cu una fără constrângeri de forma: min x RnF(x,τ) (= f(x)+τp(x)), în care τ > 0 este un parametru de penalitate. Exemplul Presupunem că mulţimea fezabilă X = {x R n : g(x) 0, h(x) = 0}. O funcţie de penalitate în acest caz este următoarea: m P(x) = h(x) q q + max{0,g i (x)} q, (13.5) i=1 unde q > 0 şi q reprezintă norma vectorială q. Pentru q = 2 funcţia din (13.5) se numeşte funcţie de penalitate pătratică.

223 13.3. Metode de penalitate şi barieră 223 Proceduradebazăînmetodeledepenalitateconstăînalegereaunuişir τ k ce tinde la astfel încât τ k+1 > τ k 0 pentru orice k. La fiecare iteraţie k, rezolvăm problema fără constrângeri folosind metode de ordinul I sau II din optimizarea neconstrânsă: min x R nf(x,τ k), (13.6) a cărei soluţie (punct de minim global) o notăm cu x k. Lema Fie funcţia de penalitate P(x). Dacă definim şirul x k ca punctul de minim al şirului de probleme (13.6), atunci următoarele relaţii au loc: F(x k,τ k ) F(x k+1,τ k+1 ), P(x k ) P(x k+1 ) şi f(x k ) f(x k+1 ). Demonstraţie: Deducem uşor următoarele inegalităţi: F(x k+1,τ k+1 )) = f(x k+1 )+τ k+1 P(x k+1 ) f(x k+1 )+τ k P(x k+1 ) f(x k )+τ k P(x k ) = F(x k,τ k ), deci prima relaţie din lemă este demonstrată. De asemenea: f(x k )+τ k P(x k ) f(x k+1 )+τ k P(x k+1 ) f(x k+1 )+τ k+1 P(x k+1 ) f(x k )+τ k+1 P(x k ). Adunând aceste două relaţii obţinem: (τ k+1 τ k )P(x k+1 ) (τ k+1 τ k )P(x k ) ceea ce conduce la a doua relaţie din lemă. În final, f(x k+1 )+τ k P(x k+1 ) f(x k )+τ k P(x k ), adică ultima inegalitate din lemă. Fie x un punct de minim local al problemei (13.4). Atunci, f(x ) = f(x )+τ k P(x ) f(x k )+τ k P(x k ) = F(x k,τ k ) f(x k ) k 0. Convergenţa globală a metodelor de penalitate este demonstrată în următoarea teoremă: Teorema Orice punct de acumulare al şirului x k generat de o metodă de penalitate este un punct de minim global al problemei de optimizare (13.4).

224 224 Capitolul 13. Metode de optimizare pentru (NLP) generale Demonstraţie: Pentru simplitatea expoziţiei presupunem că întreg şirul x k converge la x. Din continuitatea lui f avem că f(x k ) converge la f( x). Notăm cu f valoarea optimă globală a problemei (13.4). Atunci, din lema precedentă urmează că şirul F(x k,τ k ) este nedescrescător şi mărginit superior şi deci acest şir are limita lim F(x k,τ k ) = F k f. Obţinem atunci lim τ k P(x k ) = F f( x). Cum P(x k ) 0 şi k τ k obţinem lim P(x k ) = 0. Folosind continuitatea lui P obţinem k P( x) = 0 şi deci x este fezabil pentru problema (13.4). Pe de altă parte, f( x) = lim f(x k ) f şi deci x este minim global pentru problema de k optimizare constrânsă (13.4). Exemplul Considerăm problema de optimizare cu o singură constrângere de egalitate: min (x 1 4) 2 +(x 2 4) 2 x 1 +x 2 5=0 şi folosim funcţia de penalitate pătratică pentru egalităţi (i.e. q = 2 in (13.5)) F(x,τ) = (x 1 4) 2 +(x 2 4) 2 +τ(x 1 +x 2 5) 2. Căutăm punctele staţionare ale acestei funcţii, i.e. x F(x,τ) = 0: 2(x 1 4)+2τ(x 1 +x 2 5) = 0 2(x 2 4)+2τ(x 1 +x 2 5) = 0 cu soluţia x 1 = x 2 = 5τ+4. Observăm că pentru τ obţinem 2τ+1 x 1 = x 2 = 2.5. Pe de altă parte, se observă că x = [ ] T este şi soluţia problemei originale. Punctele staţionare ale problemei neconstrânse împreună cu valorile corespunzătore funcţiilor f,h şi F pentru diferite valori ale lui τ sunt date în Tabelul Exemplul Considerăm acum problema de optimizare cu o singură inegalitate: min (x 1 4) 2 +(x 2 4) 2 x 1 +x şi folosim funcţia de penalitate pătratică pentru inegalităţi (i.e. q = 2 in (13.5)) F(x,τ) = (x 1 4) 2 +(x 2 4) 2 +τ max{0,x 1 +x 2 5} 2.

225 13.3. Metode de penalitate şi barieră 225 τ k (x k ) 1 = (x k ) 2 f(x k ) h(x k ) F(x k,τ k ) Tabelul 13.1: Punctele staţionare şi valorile funcţiilor f, h şi F pentru diferite valori τ. Căutăm punctele staţionare ale acestei funcţii, adică x F(x,τ = 0): 2(x 1 4)+2τ max{0,x 1 +x 2 5} = 0 2(x 2 4)+2τ max{0,x 1 +x 2 5} = 0 cu soluţia x 1 = x 2 ca şi în exemplul precedent. În concluzie, (x 1 4)+ τ max{0,2x 1 5} = 0. Avem trei cazuri: 2x 1 5 este zero, pozitiv sau negativ. Presupunem că 2x 1 5 şi atunci obţinem x 1 = x 2 = 5τ+4 2τ+1. Observăm că pentru τ obţinem x 1 = x 2 = 2.5. Când τ variază de la 0 la, punctele staţionare ale problemei neconstrânse se mişcăpe segmentul determinatde capetele [4 4] T (soluţia neconstrânsă) şi [ ] T (soluţia problemei originale). Observăm de asemenea că pentru toate valorile lui τ < punctele staţionare ale problemei neconstrânse de penalitate sunt nefezabile pentru problema originală Metode de barieră În continuare considerăm problema de optimizare de forma: min x X f(x), (13.7) în care f este funcţie diferenţiabilă şi mulţimea fezabilă X R n are interiorul nevid şi este posibil să ajungem la orice punct de pe frontieră din interiorul mulţimii. În general, o astfel de mulţime X este descrisă de un set de inegalităţi. Definim o funcţie B : R n R, numită barieră, cu următoarele proprietăţi: (i) B este continuă şi ne-negativă, adică B(x) 0 pentru orice x domb;

226 226 Capitolul 13. Metode de optimizare pentru (NLP) generale (ii) B(x) dacă x se apropie de frontiera lui X. Atunci înlocuim problema de optimizare cu constrângeri (13.7) cu una fără constrângeri de forma: min x RnF(x,τ) (= f(x)+τb(x)), în care τ > 0 este un parametru de barieră. Exemplul Presupunem că mulţimea fezabilă este definită de X = {x R n : g(x) 0}. Funcţii de barieră pot fi în acest caz e.g.: m 1 m B(x) = sau B(x) = ln( g i (x)). g i (x) i=1 Cea de-a doua funcţie se numeşte bariera logaritmică şi este cea mai des utilizată în algoritmii de optimizare. Procedura ˆfundamentală abordată în metodele de barieră este similară celeidelametodeledepenalitate: fieτ k unşircetindela0astfelîncât0 < τ k+1 < τ k pentru orice k. La fiecare iteraţiei k, rezolvăm folosind metode de ordinul I sau II din optimizarea neconstrânsă următoarea problemă fără constrângeri min x R nf(x,τ k) a cărei soluţie o notăm cu x k. Se observă că metodele de tip barieră prezintă un comportament similar celui de la metodele de penalitate. În particular, orice punct de acumulare al şirului x k este soluţie a problemei (13.7). Exemplul Considerăm problema de optimizare cu o singură inegalitate: min x 1 +x (x 1 4) 2 +(x 2 4) 2 şi folosim funcţia barieră logaritmică: i=1 F(x,τ) = (x 1 4) 2 +(x 2 4) 2 τ log(5 x 1 x 2 ). Căutăm punctele staţionare ale acestei funcţii, adică x F(x,τ) = 0: 1 2(x 1 4)+τ = 0 5 x 1 x 2 2(x 2 4)+2τ 1 5 x 1 x 2 = 0

227 13.4. Metode de punct interior 227 cu soluţia x 1 = x 2. Obţinem 2x x τ/2 = 0 cu singura rădăcină fezabilă x 1 = 13/4 1/4 9+4τ. Observăm că pentru τ 0 obţinem x 1 = x 2 = 2.5. Pe de altă parte, se observă că x = [ ] T este şi soluţia problemei originale. Punctele staţionare ale problemei Tabelul 13.2: Punctele staţionare şi valorile funcţiilor f, g şi F pentru diferite valori τ. τ k (x k ) 1 = (x k ) 2 f(x k ) g(x k ) τ log( g(x k )) F(x k,τ k ) neconstrânse împreună cu valorile corespunzătore funcţiilor f,h şi F pentru diferite valori ale lui τ sunt date în Tabelul Metode de punct interior Metodele de punct interior reprezintă o alternativă modernă a metodei mulţimilor active şi a altor metode prezentate anterior pentru rezolvarea problemei de optimizare constrânsă (NLP). Metodele anterioare întâmpină probleme deoarece condiţiile (KKT) sunt ne-netede (non-smooth), în particular condiţia de complementaritate λ i g i (x) = 0 împreună cu cele de fezabilitate g(x) 0 şi λ 0 sunt dificil de rezolvat datorită faptului că nu sunt netede. Ideea centrală în jurul căreia s-au dezvoltat metodele de punct interior este înlocuirea condiţiilor ne-netede cu un set de condiţii netede (ce reprezintă o aproximare a celor originale), şi anume: λ i g i (x) = τ, unde τ > 0 dar arbitrar de mic. Condiţiile KKT devin acum o problemă netedă de găsire a rădăcinilor sistemului: (KKT IP) : f(x)+ h(x) T µ+ g(x)λ = 0 împreună cu constrângerile de inegalitate: g(x) 0, λ 0. Λg(x) = τe h(x) = 0

228 228 Capitolul 13. Metode de optimizare pentru (NLP) generale Am folosit notaţia e = [1...1] R m şi Λ = diag(λ 1,...,λ m ). Condiţiile (KKT-IP) se numesc condiţiile (KKT) perturbate. Este clar că pentru τ = 0 obţinem condiţiile (KKT) pentru problema generală (NLP). Procedura de bază în metodele de punct interior constă în rezolvarea (aproximativă) a sistemului (KKT) perturbat (folosind de exemplu metoda Newton), adică sistemul de ecuaţii dat în (KKT-IP), cu soluţia corespunzătoare (x(τ),λ(τ),µ(τ)) şi apoi se doreşte ca în limita pentru τ 0 aceste soluţii să conveargă la o soluţie (x,λ,µ ) a problemei (NLP). Traiectoria descrisă de soluţia sistemului perturbat (x(τ),λ(τ),µ(τ)) se numeşte calea centrală (central path) τ=1 τ=0.5 τ= τ=1 τ=0.5 τ= Figura 13.1: Aproximarea funcţiei indicator pentru mulţimea (, 0] (stânga) şi [ 1, 1] (dreapta) cu bariera logaritmică ( τ log( x) şi respectiv τ(log(1+x)+log(1 x))) pentru diferite valori ale lui τ. Metodele de punct interior pot fi interpretate şi ca metode de tip barieră. Mai exact, putem reformula problema (NLP) ca o problemă având constrângeri de egalitate, prin mutarea constrângerilor de inegalitate în funcţia obiectiv cu ajutorul funcţiei indicator: min x f(x)+ m I (g i (x)) i=1 s.l.: h(x) = 0, unde I : R R este funcţia indicator pentru mulţimea numerelor nepozitive R = (, 0]: { 0, dacă y 0 I (y) = (13.8), dacă y > 0. Prin această reformulare am eliminat constrângerile de inegalitate, însă apare problema majoră a nediferenţiabilităţii noii funcţii obiectiv. În

229 13.4. Metode de punct interior 229 acest scop, funcţia indicator I se aproximează cu una diferenţiabilă folosindu-se o funcţie barieră (vezi Fig. 13.1), mai exact considerăm aproximarea: min x f(x) τ s.l: h(x) = 0. m log( g i (x)) (13.9) i=1 unde τ se numeşte parametru de barieră şi am utilizat funcţia B(x) = m i=1 log( g i(x)), numită şi bariera logaritmică pentru problema (NLP). Această aproximare a problemei originale poate fi rezolvată acum prin metoda Lagrange-Newton pentru probleme având constrângeri de egalitate descrisă în capitolul anterior. Pentru a simplifica calculele viitoare, menţionăm că gradientul şi Hessiana barierei logaritimice sunt date de următoarele expresii: B(x) = 2 B(x) = m i=1 m i=1 1 g i (x) g i(x) 1 g i (x) 2 g i(x) g i (x) T 1 g i (x) 2 g i (x). Condiţiile (KKT) pentru această formulare (13.9) sunt: f(x) m i=1 τ g i (x) g i(x)+ h(x) T µ = 0 h(x) = 0. Datorită domeniului de definiţie al funcţiei log( ), avem automat îndeplinită condiţia g(x) < 0 şi dacă notăm cuλ i = τ g i > 0, observăm (x) că aceste condiţii conduc la sistemul (KKT-IP). În concluzie, metodele de punct interior rezolvă problema (13.9) (folosind metode de ordinul I sau II pentru probleme cu constrângeri de egalitate) pentru un şir de parametri τ k+1 < τ k astfel încât τ k 0.

230 230 Capitolul 13. Metode de optimizare pentru (NLP) generale Metode de punct interior pentru probleme convexe Considerăm problema convexă (CP) generală: (CP) : min x R n f(x) s.l.: g(x) 0, Ax = b, unde funcţia obiectiv f : R n R şi funcţia vectorială ce defineşte constrângerile de inegalitate g : R n R m sunt convexe şi de două ori diferenţiabile, iar A R p n cu rangul p < n. Metodele de punct interior rezolvă problema (CP) sau condiţiile KKT corespunzătoare prin aplicarea metodei Newton unei secvenţe de probleme supuse numai la constrângeri de egalitate, sau asupra unei secvenţe de condiţii (KKT) perturbate. În acest scop, considerăm aproximarea problemei originale (CP) cu o problemă ce conţine doar constrângeri liniare de egalitate: min x f(x) τ s.l: Ax = b. m log( g i (x)) (13.10) i=1 unde am utilizat funcţia B(x) = m i=1 log( g i(x)), numită şi bariera logaritmică pentru problema (CP). Această aproximare a problemei originale este de asemenea o problemă convexă şi poate fi rezolvată prin metoda Newton pentru probleme având constrângeri de egalitate descrisă în capitolul anterior. Un concept esenţial în metodele de punct interior este acela de cale centrală: punctele x(τ) se află pe calea centrală dacă sunt strict fezabile, şi anume satisfac: şi există un ˆµ R p astfel încât: Ax(τ) = b, g(x(τ)) < 0, f(x(τ))+τ B(x(τ))+A Tˆµ = 0. Ca urmare, putem deriva o proprietate importantă a punctelor de pe calea centrală: orice punct de pe această cale produce un punct dual fezabil, şi astfel o limită inferioară a lui f. În mod specific, considerând λ i (τ) = τ şi µ(τ) = τˆµ, g i (x(τ))

231 13.4. Metode de punct interior 231 se poate demonstra uşor că perechea λ(τ) şi µ(τ) este dual fezabilă. Astfel, funcţia duală q(λ(τ),µ(τ)) este finită iar: q(λ(τ),µ(τ)) = f(x(τ))+ m λ i (τ)g i (x(τ))+µ(τ) T (Ax(τ) b) i=1 = f(x(τ)) mτ. În mod particular, diferenţa de dualitate dintre funcţiile f şi q, asociată cu punctul x(τ) şi perechea duală fezabilă (λ(τ),µ(τ)) este simplu cantitatea mτ. Drept urmare, avem: f(x(τ)) f mτ, ceea ce confirmă ideea intuitivă că x(τ) converge către punctul de optim când τ 0, adică avem o aproximare cât mai bună a problemei (CP). Iteraţia metodei de punct interior este definită în următorul mod: fie un punct iniţial x 0 strict fezabil, τ 0 > 0, σ < 1 şi acurateţea fixată ǫ > 0 Cât timp mτ k ǫ se repetă următorii paşi: 1. calculăm soluţia x k+1 = x(τ k ) a problemei convexe cu constrângeri de egalitate (13.10) pornind din punctul iniţial x k (warm start); 2. descreştem parametrul τ k+1 = στ k. După cum se observă şi în practică, pentru această metodă un aspect esenţial este selectarea unei actualizări corespunzătoare pentru τ la fiecare pas, în particular este esenţial felul cum alegem σ. Un aspect important al metodei de punct interior este strategia de warm start: metoda folosită în rezolvarea problemei convexe (13.10) la τ k porneşte din soluţia problemei precedente corespunzătoare parametrului τ k 1. Analiza convergenţei metodei de punct interior pentru cazul convex este evidentă. Presupunând că problema perturbată (13.10) se rezolvă cu metoda Lagrange-Newton pentru τ = τ 0,στ 0,σ 2 τ 0,...,σ k τ 0, atunci după k paşi distanţa de la funcţia obiectiv la valoarea optimă este mai mică decât mτ 0 σ k. Pe de altă parte, pentru anumite clase de probleme convexe (de exemplu, pentru probleme (CP) cu funcţia obiectiv auto-concordantă) se poate determina riguros o margine superioară asupra numărului total de iteraţii Newton necesare pentru rezolvarea problemei, în particular se poate arăta că metoda de punct interior are complexitate polinomială [3, 12].

232 232 Capitolul 13. Metode de optimizare pentru (NLP) generale Exemplul Fie problema de optimizare convexă: min (x 1 4) 4 +(x 1 6x 2 ) 2 x R 2 s.l.: x 2 1 +x2 2 25, Ax = b unde A = [ 2 3 ] şi b = 12. Rezolvăm această problemă prin metoda x x 1 Figura 13.2: Liniile de contur şi punctele obţinute prin metoda de punct interior. de punct interior. Pornim dintr-un punct iniţial fezabil, exemplu x 0 = [3 2] T. În Fig putem observa convergenţa foarte rapidă a metodei Metode de punct interior pentru probleme neconvexe În cazul neconvex se preferă următoarea reformulare pentru problema (NLP): min f(x) x R n,s R m s.l.: g(x)+s = 0, h(x) = 0, s 0. Într-o manieră similară cazului convex mutăm constrângerile de inegalitate în cost printr-o funcţie barieră de tip logaritm: m f(x) τ log(s i ) (13.11) min x,s i=1 s.l.: g(x)+s = 0, h(x) = 0.

233 13.4. Metode de punct interior 233 Condiţiile (KKT) perturbate (adică condiţiile de optimalitate pentru problema (13.11)) au în acest caz următoarea formulare neliniară: (KKT IPs) : f(x)+ h(x) T µ+ g(x)λ = 0 Λs τe = 0 g(x)+s = 0, h(x) = 0, împreună cu s 0 şi λ 0. Pentru o anumită valoare τ dorim să rezolvăm sistemul neliniar perturbat (KKT-IPs) cu ajutorul metodei Newton. Aplicând metoda Newton sistemului neliniar (KKT-IPs) în variabilele (x, s, λ, µ) obţinem: 2 xl 0 h T g T d x f + h T µ+ g T λ 0 Λ 0 S d s h d µ = Λs τe h, (13.12) g I 0 0 d λ g +s unde S = diag(s 1,...,s m ) şi L(x,s,λ,µ) = f(x)+(g(x)+s) T λ+h(x) T µ. Sistemul precedent se numeşte sistemul liniar primal-dual. Pentru o rezolvare numerică mai eficientă, sistemul primal-dual se aduce într-o formă simetrică. De obicei, în această metodă pentru a defini criteriul de oprire introducem următoarea funcţie: E(x,s,λ,µ;τ) = max{ f(x)+ h T (x)µ+ g T (x)λ, Λs τe, h(x), g(x)+s }. Metoda Newton pentru rezolvarea sistemului perturbat (KKT-IPs) corespunzător unei valori fixate τ k are următoarea iteraţie: (MNs) : x k+1 = x k +α x k dx k, s k+1 = s k +α x k ds k µ k+1 = µ k +α µ k dµ k, λ k+1 = λ k +α µ k dλ k, unde direcţiile (d x k,ds k,dλ k,dµ k ) sunt soluţia sistemului primal-dual (13.12) în (x k,s k,λ k,µ k ). De asemenea, pasul α µ k se ia într-un interval de forma (0, α max µ ], iar pasul αx k se aleg pe baza unei funcţii merit. De obicei, se consideră următoarea funcţie merit: M ν (x,s,τ) = f(x) τ m log(s i )+ν h(x) 1 +ν i=1 m max{0,g i (x)}. i=1

234 234 Capitolul 13. Metode de optimizare pentru (NLP) generale Mai exact, pasul αk x se alege prin metoda de backtracking pentru funcţia merit de mai sus, adică αk x = ρm k pentru un ρ (0, 1) şi c1 (0, 1), unde m k este primul întreg ne-negativ care satisface: M ν (x k +ρ m d x k,s k+ρ m d s k,τ k) M ν (x k,s k,τ k )+c 1 ρ m M ν (x k,s k,τ k ;d x k,ds k ). Reamintim că M ν(x k,s k,τ k ;d x k,ds k ) reprezintă derivata direcţională a lui M ν în punctul (x k,s k,τ k ) de-a lungul direcţiei (d x k,ds k ). Metoda de punct interior constă în acest caz în rezolvarea unui şir de sisteme neliniare perturbate corespunzătoare unui şir de valori τ k. Mai precis, pentru fiecare τ k se rezolvă sistemul neliniar (KKT-IPs) aproximativ folosind iteraţia de mai sus (MNs). Criteriul de oprire folosit pentru rezolvarea aproximativă a sistemului perturbat (KKT-IPs) poate fi E(x k,s k,λ k,µ k ;τ l ) τ k. Apoi se actualizează τ k+1 = στ k pentru un σ (0, 1) şi iarăşi se rezolvă sistemul perturbat până când criteriul de oprire E(x k,s k,λ k,µ k ;0) ǫ este satisfăcut pentru o acurateţe ǫ dorită. O caracteristică importantă a metodei de punct interior este aceea că se bazează pe warm start: punctul de pornire în metoda Newton pentru rezolvarea sistemului perturbat (KKT-IPs) corespunzător lui τ k+1 coincide cu soluţia aproximativă a sistemului perturbat corespunzător lui τ k. Pentru cazul neconvex, analiza convergenţei metodei de punct interior este mult mai dificilă şi rezultatele sunt mai slabe decât pentru cazul convex. Totuşi, sub anumite condiţii se poate arăta că metoda de punct interior converge la un punct staţionar (soluţie a sistemului (KKT)) al problemei (NLP) generale şi local avem convergenţă superliniară. Comentarii finale: Cu metodele de punct interior, încheiem Partea a III-a a acestei lucrări dedicată metodelor numerice de optimizare pentru probleme cu constrângeri(nlp). Metodele de punct interior sunt cele mai eficiente pentru rezolvarea problemelor (NLP) convexe sau neconvexe, fiind implementate în majoritatea pachetelor software de optimizare: CVX, IPOPT, MOSEK, etc. Analiza complexităţii polinomiale ale metodelor de punct interior pentru cazul convex poate fi găsită în [3, 12]. Mai multe detalii despre metodele prezentate în această parte a lucrării cât şi alte metode care nu au fost prezentate aici se pot găsi în cărţile clasice de optimizare neliniară ale lui Bertsekas [2], Luenberger [9], Nesterov [11] şi Nocedal şi Wright [13]. Dintre lucrările dedicate

235 13.4. Metode de punct interior 235 implementării numerice a acestor metode de optimizare o amintim de exemplu pe cea a lui Gill, Murray şi Wright [7]. O descriere detaliată a pachetelor software existente pe piaţă este dată de More şi Wright în [10]. În ultimul capitol al acestei lucrări prezentăm în detaliu câteva aplicaţii moderne din inginerie (control optimal, stabilitatea sistemelor, clasificare, învăţare automată, ierarhizarea paginilor web) şi arătăm că ele pot fi formulate ca probleme de optimizare pe care le vom rezolva cu metodele numerice prezentate aici.

236 Capitolul 14 Studii de caz din inginerie În acest capitol final prezentăm câteva studii de caz ce implică optimizarea unor sisteme din domeniul ingineriei. În primul studiu de caz analizăm problema de control optimal al unui sistem dinamic supus constrângerilor, în particular urmărirea unei referinţe impuse pentru un robot şi o instalaţie cu patru rezervoare. O alta aplicaţie importantă din teoria sistemelor este analiza stabilităţii unui sistem liniar dinamic pe care o vom formula ca o problemă de optimizare. În final, vom analiza problema Google (ierarhizarea paginilor web) şi problema învăţării automate (sau clasificarea de obiecte). Fiecare studiu de caz ilustrează formulări specifice şi strategii de pregătire a modelului matematic de optimizare pentru sistemul respectiv. Acest capitol demonstrează astfel aplicabilitatea metodelor numerice de optimizare prezentate în capitolele anterioare la exemple reale şi actuale din inginerie Control optimal liniar Fie un sistem liniar cu dinamica discretă: z t+1 = A z z t +B u u t unde z t R nz reprezintă vectorul de stare al sistemului, u t R nu vectoruldeintrărialsistemului, iarmatricelea z R nz nz şib u R nz nu descriu dinamica sistemului. Considerăm de asemenea constrângeri de inegalitate liniare pe stare şi intrare de forma: lb z z t ub z, C u u t d u t 0,

237 14.1. Control optimal liniar 237 unde C u R n i nz şi d u R n i. Formulăm acum problema de control optimal de urmărire a referinţei pe un orizont finit N, în care utilizăm funcţii de cost pe etapă pătratice: 1 min z t,u t 2 N N 1 z t z ref t 2 Q t + u t u ref t 2 R t (14.1) t=1 t=0 s.l: z 0 = z, z t+1 = A z z t +B u u t lb z z t ub z, C u u t d u t = 0,...,N 1, unde presupunem cunoscută starea iniţială a sistemului z 0 = z şi definim z z ref 2 Q = (z zref ) T Q(z z ref ). Mai mult, presupunem că matricele Q t şi R t sunt pozitiv definite pentru orice t şi z ref t şi respectiv u ref t reprezintă anumite referinţe impuse peste orizontul de predicţie pentru starea şi intrarea sistemului. Vom arăta mai întâi că această problemă de control optimal pe orizont finit poate fi formulată ca o problemă pătratică convexă de optimizare şi apoi aplicăm acest tip de control pe aplicaţii practice Formularea (QP) rară fără eliminarea stărilor Înacest caz, vom defini varibila dedecizie x R N(nz+nu) care să cuprindă variabilele de stare şi intrare peste întreg orizontul de predicţie N, i.e.: x = [ u T 0 zt 1 ut 1 zt 2... ut N 1 zt N] T. Din problema de control optimal (14.1) vor rezulta constrângeri de egalitate şi de inegalitate liniare. Într-adevăr, constrângerile de egalitate vor rezulta din faptul că variabilele de stare şi intrare trebuie să respecte dinamicaprocesuluiz t+1 = A z z t +B u u t pesteîntregorizontuldepredicţie, adică pentru t = 0,...,N 1. Luând în calcul forma variabilei x, putem concatena aceste constrângeri într-o constrângere de forma Ax = b, unde matricea A R Nnz N(nz+nu) şi vectorul b R Nnz vor fi de forma: B u I nz A z z 0 0 A z B u I nz A = , b = A z B u I nz 0

238 238 Capitolul 14. Studii de caz din inginerie Fiecare linie de blocuri din sistemul Ax = b reprezintă satisfacerea constrângerilor rezultate din dinamici la un pas k, adică prima linie va asiguraz 1 = A z z 0 +B u u 0 saurescris B u u 0 +I nz z 1 = A z z 0, adoualinieva asigura A z z 1 B u u 1 +I nz z 2 = 0, etc. ObservămcămatriceaAcedescrie constrângerile de egalitate are o structură bloc tridiagonală. În ceea ce priveşte constrângerile de inegalitate, observăm că avem constrângeri de tip box pe stare şi constrângeri poliedrale pe intrare. Dorim să concatenăm toate aceste constrângeri peste întreg orizontul de predicţie într-o singură constrângere de forma Cx d. Constrângerea de tip box pentru stare poate fi rescrisă ca: [ ] [ ] Inz ubz z t I nz }{{} C z lb z }{{} d z MatriceaC R N(2nz+n i) N(n z+n u) şivectoruldvoraveaastfelurmătoarea formă: C u d u 0 C z d z C = , d = C u 0 d u C z Observăm că în acest caz matricea C este bloc diagonală. În privinţa funcţiei obiectiv, putem lua un vector care să concateneze referinţele pentru stare şi intrare peste întreg orizontul de predicţie: [ ] T x ref = (u ref 0 ) T (z ref 1 ) T... (u ref N1 )T (z ref N )T R N(n z+n u). Cuxşi x ref definiţi anterior putemrescrieîntreaga funcţiecost din(14.1) sub forma: 1 2 x xref 2 Q = 1 2 (x xref ) T Q(x x ref ), în care Q R N(nz+nu) N(nz+nu) va fi bloc diagonală de forma: R Q Q = (14.2) R N Q N d z

239 14.1. Control optimal liniar 239 Mai mult, matricea Q este pozitiv definită deoarece am presupus că toate matricele Q t şi R t sunt pozitiv definite. Pentru a aduce în final problema la forma (QP), observăm: 1 2 (x xref ) T Q(x x ref ) = 1 ( x T Qx x T Qx ref (x ref ) T Qx+(x ref ) T Qx ref) 2 = 1 2 xt Qx x T Qx ref (xref ) T Qx ref. Dacă luăm q = Qx ref şi ignorăm termenul constant (x ref ) T Qx ref din moment ce nu depinde de variabila x, atunci problema (14.1) poate fi rescrisă ca o problemă (QP) convexă având matricele modelului rare (i.e. aceste matrice au foarte multe intrări nule): 1 min x R N(nz+nu) 2 xt Qx+q T x (14.3) s.l.: Ax = b, Cx d Formularea (QP) densă cu eliminarea stărilor Pentru a elimina stările din problema(14.1), utilizăm dinamica sistemului z t+1 = A z z t +B u u t pentru a exprima stările de-a lungul întregului orizont de predicţie N în funcţie de starea iniţială z 0 şi intrările sistemului (u 0...u N 1 ): z 1 = A z z 0 +B u u 0 z 2 = A z z 1 +B u u 1 = A 2 z z 0 +A z B u u 0 +B u u 1 z 3 = A z z 2 +B u u 2 = A 3 z z 0 +A 2 z B uu 0 +A z B u u 1 +B u u 2. z N = A z z N 1 +B u u N 1 = A N z z 0 +Az N 1 B u u 0 +Az N 2 B u u 1 + +A z B u u N 2 +B u u N 1. Dacă eliminăm stările, atunci singurele variabile de decizie rămân intrările. Notăm astfel: x = [u T 0...uT N 1 ]T R Nnu

240 240 Capitolul 14. Studii de caz din inginerie şi de asemenea introducem notaţia z = [z1 T...zT N ]T R Nnz. Ecuaţiile anterioare pot fi scrise sub forma z = ABx+A p z 0, unde matricele AB R Nnz Nnu şi A p R Nnz nz sunt definite astfel: AB= B u A z B u B u A 2 z B u A z B u B u A N 1 z. B u Az N 2. B u A N 3 z. B u Az N 4.. B u... B u, A p = Dacă rescriem constrângerile de tip box pentru stare sub forma C z z t d z, similar cazului în care nu eliminăm stările, şi le concatenăm peste întreg orizontul de predicţie astfel încât sâ avem C z z d z, în care C z = diag(c z,c z,...,c z ) şi dz = [d T z d T z...d T z ]T, atunci constrângerile de inegalitate pentru stare se transformă în constrângeri poliedrale pentru intrare de forma C x x d x, în care C x R2Nnz Nnu şi d x R2Nnz sunt date de expresiile: C z z d z C z ( ABx+A p z 0 ) d z C z AB x }{{} d z C z A p z 0. }{{} =C x =d x Pentru constrângerile de inegalitate pentru intrare luăm C xx d x, în care definim matricea C x = diag(c u,c u,...,c u ) R Nn i Nnu şi vectorul d x = [d T u d T u... d T u] T R Nn i. Concatenăm acum cele două constrângeri pe stare şi intrare peste orizontul de predicţie într-una singură de forma Cx d în care: [ ] [ ] C x d x C =, d =. C x d x Observăm că matricea C R N(2nz+n i) Nn u este bloc inferior triunghiulară deoarece matricea AB este bloc inferior triunghiulară şi matricea C z este bloc diagonală. Privind funcţia obiectiv, observăm că funcţiile de cost corespunzătoare stărilor sistemului pot fi rescrise sub forma: 1 2 N t=1 z t z ref t 2 Q t = 1 2 z zref 2 Q = 1 2 ABx+A p z 0 z ref 2 Q A z A 2 z A 3 z. A N z. = 1 2 xt AB T Q ABx+ ( z T 0 AT p Q AB ( z ref ) T Q AB ) x,

241 14.1. Control optimal liniar 241 în care am folosit notaţiile Q = diag(q 1,...,Q N ) R Nnz Nnz şi z ref = [(z ref 1 ) T...(z ref N )T ] T R Nnz şi amneglijattermenii constanţi. Seobservă că Q este matrice pozitiv definită deoarece am presupus că matricele Q t sunt pozitiv definite peste orizontul de predicţie. Pe de altă parte funcţiile de cost corespunzătoare intrărilor sistemului pot fi rescrise astfel: N 1 t=0 u t u ref t 2 R t = x x ref 2 R = 1 2 xt Rx ( x ref ) T Rx+ 1 2 ( xref ) T R x ref, unde am notat cu R = diag(r 0,...,R N 1 ) R Nnu Nnu şi definim vectorul x ref = [(u ref 0 ) T...(u ref N 1 )T ] T R Nnu. Matricea R este pozitiv definită deoarece am presupus că matricele R t sunt pozitiv definite peste orizontul de predicţie. Ignorând termenii constanţi, funcţia obiectiv devine pătratică convexă: 1 2 xt Qx+q T x unde matricea Q R Nnu Nnu în acest caz este dată de expresia: Q = R+ AB T Q AB. Se observă imediat că matricea Q este pozitiv definită, deoarece matricele Q şi R sunt pozitiv definite, însă are o structură densă datorită termenului AB T Q AB, unde reamintim că AB este bloc inferior triunghiulară. Mai mult, vectorul q are următoarea expresie: q = AB T QAp z 0 AB T Q z ref R x ref. În final, obţinem următoarea problemă pătratică convexă având numai constrângeri de inegalitate: 1 min x R Nnu 2 xt Qx+q T x (14.4) s.l.: Cx d. Această problemă de optimizare (14.4) are matricele Q şi C dense, în particular, matricea C este inferior bloc triunghiulară, iar matricea Q este complet densă. Pe de altă parte, matricele ce descriu problema (QP) din

242 242 Capitolul 14. Studii de caz din inginerie (14.3) ce se obţine când nu se elimină stările auostructură foarterară, în particular matricea Hessiană corespunzătoare funcţiei obiectiv este bloc diagonală. Totuşi, dimensiunea problemei (QP) din (14.3) este N(n z + n u ) mult mai mare decât dimensiunea Nn u a problemei (QP) din (14.4). Deşi ambele formulări sunt folosite în aplicaţii, în anumite situaţii (e.g. pentru orizont de predicţie N mare sau sistem dinamic de dimensiune (n z,n u ) mare) se preferă formularea rară (14.3) datorită avantajelor pe care acest model de optimizare îl oferă în calculele numerice Control optimal pentru urmărirea traiectoriei cu un robot E-Puck O aplicaţie des întâlnită, simplă şi favorabilă pentru testarea algoritmilor de optimizare şi control este robotul E-Puck (vezi Fig. 14.1). Acest sistem robotic reprezintă un ansamblu electronic mobil ce suportă implementarea numerică şi experimentarea cu algoritmi de optimizare de complexitate relativ ridicată. Mai exact, structura mecanică a robotulului E-Puck este susţinută de două motoare pas-cu-pas ataşate ambelor roţi, iar cea electronică este definită de următoarele componente: microcontroler dspic30 (16-bit), dispozitiv de comunicaţie Bluetooth (folosit în simularea sistemelor de tip reţea), senzori infraroşu, cameră video CMOS (rezoluţie ), senzor ultrasunete, accelerometru 3D, etc. Un exemplu de test simplu şi eficient al unei metode de optimizare cunoscute este problema Rendez-Vous: pentru o repartizare iniţială a unui colectiv de roboţi pe o suprafaţă plană, să se determine traiectoria optimă a fiecărui robot până la un punct comun de întâlnire. Această problemă se formulează uşor în termeni de optimizare, şi poate fi definită ca un suport de test pentru diferiţi algoritmi numerici de optimizare. Chiar şi pentru cele mai simple probleme ce implică sisteme multi-robot, modelul matematic al unui sistem robotic este crucial în proiectarea de algoritmi numerici. În acest subcapitol considerăm un model simplificat al robotului E-Puck, şi anume cel restricţionat doar la deplasarea înainte (fără a considera posibilitatea de deplasare înapoi). Modelul dinamic simplificat este

243 14.1. Control optimal liniar 243 Figura 14.1: Robot e-puck. liniar, continuu şi este definit de următoarele ecuaţii: ẏ = ru ru 2 2 θ = ru 1 ru 2 2l 2l, unde y reprezintă distanţa parcursă în direcţia înainte, θ unghiul de viraj, r raza roţilor, l distanţa de la roată la centrul de greutate al robotului, iar u 1 şi u 2 reprezintă viteza unghiulară a primei roţi şi respectiv, a celei de-a doua roţi. Pentru [ ] a respecta consistenţa [ ] notaţiilor, notăm starea y u1 sistemului cu z = şi intrarea cu u =. Mai departe, rescrierea θ u 2 modelului precedent va avea următoarea formă: în care Āz = 0 R 2 2 şi Bu = ż = Āzz + B u u, [ r r 2 2 r r 2l 2l ]. Pentru a putea să efectuăm experimente numerice, avem nevoie de discretizarea sistemului liniar continuu anterior. Una dintre metodele cele mai vechi şi mai simple este metoda Euler de discretizare, ce presupune aproximarea derivatei unei funcţii diferenţiabile f(t) cu următoarea expresie: df f(t+ t) f(t) (t), dt t în care intervalul t se determină în funcţie de viteza de evoluţie a procesului. Obţinem aproximarea discretă a modelului pentru robot dată de următoarea relaţie de recurenţă: z t+1 = ( I 2 tāz) zt + t B u u t,

244 244 Capitolul 14. Studii de caz din inginerie în care I 2 este matricea identitate de ordin 2. Alegând t = 0.5 s, obţinem sistemul dinamic şi matricele sistemului de forma: z t+1 = A z z t +B u u u, unde A z = I 2 1 2Āz, B u = 1 2 B u. Un exemplu simplu de problemă de control optimal poate fi definit de urmărirea unei traiectorii sinusoidale pe o suprafaţă plană de către robotul E-Puck. În acest caz, definim traiectoria discretă zt ref = (yt ref,θt ref ) T ce se doreşte a fi urmărită. Caracteristica discretă a referinţei impune eşantionarea funcţiei sinus continue cu o anumită perioadă T (în simulări am considerat T = 0.1). Acurateţea cu care robotul urmăreşte o curbă sinusoidală variază în funcţie de perioada de eşantionare a funcţiei sinus, orizontul de predicţie considerat şi de constrângerile aplicate problemei de control optimal. În cel mai simplu caz, considerăm că robotul pleacă din origine şi dorim urmărirea unui şir de puncte (x t,sinx t ), unde x t+1 x t = T. În acest caz, nu putem considera că referinţa este definită de şirul propriu-zis de puncte, deoarece mărimile x t şi sinx t diferă de mărimile stării sistemului datededistanţaparcursă yt ref şi unghiul deorientareθt ref. Pentru arealiza conversia mărimilor facem următoarele observaţii: observăm că orice punct de pe graficul funcţiei sinx se află la un unghi θ = arctancosx faţă de orizontală; distanţa dintre doua puncte din şirul definit anterior este dată de y = (x t+1 x t ) 2 +(sinx t+1 sinx t ) 2. În concluzie, putem realiza conversia şirului (x t,sinx t ) şi obţinem referinţa: ( ) z ref t = (yt ref,θt ref ) = (xt+1 x t ) 2 +(sinx t+1 sinx t ) 2, arctancosx t şi u ref t = 0. Alegând orizontul de predicţie N = 2, problema de control optimal ce rezultă din urmărirea traiectoriei sinusoidale se poate enunţa astfel: 1[ ] min (z1 z1 ref ) T Q 1 (z 1 z1 ref )+(z 2 z2 ref ) T Q 2 (z 2 z2 ref )+u T z t,u t 2 0R 0 u 0 +u T 1R 1 u 1 s.l.: z 0 = z, z 1 = A z z 0 +B u u 0, z 2 = A z z 1 +B u u 1, u min u 0 u max, u min u 1 u max,

245 14.1. Control optimal liniar 245 în care considerăm Q 1 = Q 2 = I 2 şi R 0 = R 1 = 0.1I 2. Mai mult, considerăm r = 2 cm, l = 1 cm, u max = [1 1] T şi u min = [ 1 1] T. Aplicăm metoda de punct interior pentru rezolvarea acestei probleme (QP). Folosim de asemenea procedura de control bazată pe orizontul alunecător (i.e. la fiecare pas se măsoară/estimează starea sistemului şi se rezolvă problema de control optimal cu orizont finit de mai înainte; se obţine o secvenţă de N intrări optimale, dar se aplică doar primele N c N intrări din această secvenţă, după care procedura se repetă). Metoda de control bazată pe principiul orizontului alunecător se numeşte control predictiv (MPC - Model Predictive Control). Rescriem compact problema de control optimal pentru starea iniţială z 0 = z sub forma: 1 min x R 8 2 xt Qx+q T x (14.5) s.l.: Ax = b, Cx d, unde matricele şi vectorii corespunzători problemei sunt date de: u 0 R [ ] x = z 1 u 1, Q = 0 Q R 1 0, A = Bu I 2 0 0, 0 A z B u I 2 z Q 2 0 q = Q 1 z ref [ ] I u max 1 0, b = Az z 0, C = I I 2 0, d = u min u max. Q 2 z ref 0 0 I u min Reamintim că primul pas din metoda de punct interior pentru o problemă convexă presupune transformarea echivalentă a problemei (14.5) într-una fără inegalităţi: 1 min x 2 xt Qx+q T x τ s.l.: Ax = b, 8 log(d i C i x) (14.6) unde C i reprezintă linia i a matricei C. Apoi, aplicăm algoritmul propriu-zis: 1. se dau un punct iniţial x strict fezabil, τ > 0, σ < 1, toleranţa ǫ > 0 şi parametrul m numărul de inegalităţi; i=1

246 246 Capitolul 14. Studii de caz din inginerie 2. cât timp mτ ǫ repetă: (i) calculează x(τ) ca soluţie a problemei (14.6) pornind din x; (ii) actualizează x = x(τ) şi τ = στ Pozitia z Referinta Traiectorie t Intrari optime (u 1, u 2 ) viteza unghiulara 1 viteza unghiulara t Figura 14.2: Traiectoria robotului folosind controlul optimal cu orizont alunecător (MPC): evoluţia stărilor sistemului şi intrărilor optimale. Rezultatele obţinute pe baza strategiei de control predicitiv, unde la fiecare pas problema de control optimal se rezolvă cu metoda de punct interior pentru probleme convexe, sunt prezentate în Fig Se observă o urmărire bună a traiectoriei impuse robotului. În cea de-a doua figură reprezentăm traiectoria optimă a intrărilor peste orizontul de simulare Control optimal pentru pendulul invers Considerăm problema de control optimal al aducerii pendulului invers în poziţie verticală şi menţinerea lui în această stare. Pendulul invers este

247 14.1. Control optimal liniar 247 compus dintr-un cărucior de masă M care alunecă unidimensional de-a lungul axei Ox pe o suprafaţă orizontală, şi un pendul format dintr-o bilă de masă m aflată la capătul unei tije de lungime l, considerată imponderabilă (vezi Fig. 14.3). Vectorul de stare al sistemului este z R 4, unde z 1 = θ este unghiul făcut de tijă cu verticala, z 2 = θ este viteza unghiulară, z 3 reprezintă poziţia pendulului (căruciorului) pe axa Ox, iar z 4 este viteza sa. Figura 14.3: Pendulul invers. Dinamica liniară discretă a sistemului este exprimată prin z t+1 = A z z t + B u u t, unde u t R este intrarea sistemului, reprezentând o corecţie de deplasare orizontală aplicată căruciorului. Matricele dinamicilor în acest caz sunt: A z = şi B u = La pendulul invers, obiectivul de control este să menţinem tija suficient deaproapedeverticală, anumesămenţinemstareaz 1 = θîntr-uninterval admisibilcentratîn0, adicăθ min z 1 θ max, cereprezintăconstrângeri pe stare ale sistemului, unde θ max = θ min = 10. Astfel, formulăm problema de control optimal pe un orizont finit N, cu scopul menţinerii tijei în poziţie verticală (în acest caz z ref t t 0): min z t,u t N k=1 = 0 şi u ref t = 0 pentru orice N zt t Q 0 z t + 2 R 0u 2 t (14.7) t=0 s.l.: z 0 = z, z t+1 = A z z t +B u u t θ min (z t ) 1 θ max t = 0,...,N 1,

248 248 Capitolul 14. Studii de caz din inginerie unde z este starea iniţială a pendulului, iar matricele din costurile de etapă sunt: Q 0 = şi R 0 = După cum am arătat, această problemă (14.7) se formulează ca o problemă (QP) convexă. Considerăm formularea (QP) rară fără eliminarea stărilor din (14.3) şi rezolvăm cu algoritmul de punct interior. Observăm că nu avem constrângeri pe intrare. Considerând că z R 4, constrângerea că prima componentă a vectorului de stare z t se află în intervalul corespunzător, anume θ min (z t ) 1 θ max, poate fi rescrisă matriceal sub forma: [ ] [ ] θmax C z z t d z, unde C z = şi d z =. θ min Pentru întreg orizontul de predicţie vom avea Cx d unde C şi d vor fi de forma: 0 C z d z C z... 0 C =......, d = d z C z d z Deoarece referinţa este 0, atunci funcţia obiectiv a problemei (QP) va fi de forma f(x) = x T Qx, adică în acest caz q = 0, unde Q este bloc diagonală, formată din matricele ce definesc costurile pe etapă pentru stare şi intrare: Q = diag(r 0,Q 0,...,R 0,Q 0 ). Problema QP finală va fi de forma: min 2 xt Qx s.l.: Ax = b, Cx d. x 1 Problema este rezolvată prin metoda de punct interior pentru probleme convexe şi traiectoria unghiului (z t ) 1 = θ t pentru t = 0,1,...,N, unde N = 25, este prezentată in Fig Se observă că la pasul t = 2 constrângerea pe unghi este activă şi după pasul t = 15 unghiul format de tijă cu axa verticală devine θ = 0. În concluzie, strategia de control optimal este capabilă să stabilizeze pendulul şi în acelaşi timp să satisfacă constrângerile impuse pendulului.

249 14.2. Control optimal neliniar unghiul(θ) t Figura 14.4: Traiectoria unghiului θ pentru un orizont de predicţie N = Control optimal neliniar Considerăm un sistem dinamic discret cu dinamici neliniare: z t+1 = φ(z t,u t ) (14.8) unde u t R nu este intrarea şi z t R nz starea sistemului la pasul t, iar φ : R nz R nz. Pentru simplitate nu presupunem constrângeri pe stare şi intrare, deşi astfel de constrângeri pot fi încorporate uşor în problema de control optimal într-o manieră similară celei prezentate la cazul sistemelor liniare. Problema de control optimal neliniar peste un orizont de predicţie N se defineşte asfel: N minz t,u t l z t(z t )+ t=1 N 1 t=0 l u t(u t ) (14.9) s.l.: z 0 = z, z t+1 φ(z t,u t ) = 0 t = 0,...,N 1, (14.10) unde l z t : Rnz R şi l u t : Rnu R sunt costurile pe etapa t pentru stări şi intrări Formularea (NLP) rară şi densă Ca şi în cazul liniar, în formularea rară fără eliminarea stărilor definim variabila de decizie: x = [ u T 0 zt 1 ut 1 zt 2... ut N 1 zt N] T R N(n z+n u).

250 250 Capitolul 14. Studii de caz din inginerie Problema de control optimal neliniar se poate aduce la o problemă de optimizare neconvexă de forma: min f(x) (14.11) x R N(nz+nu) s.l: h(x) = 0, încare funcţia obiectiv este f(x) = N t=1 lz t (z t)+ N 1 t=0 lu t (u t), iar funcţia h : R N(nz+nu) R Nnz ce descrie constrângerile de egalitate este dată de expresia: z 1 φ(z 0,u 0 ) z 2 φ(z 1,u 1 ) h(x) =.. z N φ(z N 1,u N 1 ) Funcţia Lagrange pentru multiplicatorii µ = [µ T 1...µ T N ]T are forma: L(x,µ) = f(x)+µ T h(x) N = l z t(z t )+ t=1 N 1 t=0 Condiţiile KKT ale problemei sunt: l u t(u t )+ N 1 t=0 x L(x,µ) = 0, h(x) = 0. µ T t+1(z t+1 φ(z t,u t )). Maidetaliat, derivataluilînfuncţiedez t sauu t areostructurăspecială. De exemplu, pentru t = 1,...,N 1 obţinem următoarele expresii: zt L(x,µ) = l z t (z t)+µ t φ z t (z t,u t ) T µ t+1 = 0 ut L(x,µ) = l u t (u t) φ u t (z t,u t ) T µ t+1 = 0. Sistemul Lagrange poate fi rezolvat cu metodele prezentate în capitolele anterioare, e.g. metoda Lagrange-Newton. În această metodă iteraţia are forma: x k+1 = x k +d k, µ k+1 = µ QP k

251 14.2. Control optimal neliniar 251 în care direcţia d k este soluţia optimă a problemei (QP) din (14.12) cu multiplicatorul Lagrange optim asociat constrângerilor µ QP k : min d f(x k ) T d+ 1 2 dt B k d (14.12) s.l.: h(x k )+ h(x k )d = 0, unde B k = 2 xl(x k,µ k ). Această problemă pătratică (14.12) are o structură rară unde matricea B k este bloc diagonală, iar matricea ce defineşte egalităţile (Jacobianul h(x k )) este tridiagonală (i.e. structura acestei probleme (QP) din (14.12) este similară cu problema (QP) rară (14.3) corespunzătoare cazului liniar). Altă abordare ar fi să eliminăm stările într-o manieră similară cazului liniar. În acest caz, obţinem o problemă de optimizare fără constrângeri. Ideea de bază constă în a păstra doar z 0 şi a defini variabila de decizie x = [u T 0,...,u T N 1 ]T R Nnu. Stările z 1,...,z N sunt eliminate în mod recursiv prin relaţiile: ψ 0 (z 0,x) = z ψ t+1 (z 0,x) = φ(ψ t (z 0,x),u t ). Astfel, problema de control optimal este echivalentă cu o problemă fără constrângeri şi cu mai puţine variabile: min x R Nnu N l z t (ψ t(z 0,x))+ t=1 N 1 t=0 l u t (u t). Această problemă este numită problema de control optimal redusă. Poate fi rezolvată eficient prin metode de tip gradient sau Newton pentru cazul neconstrâns prezentate în Partea a II-a a lucrării Control optimal aplicat unei instalaţii cu patru rezervoare În acest subcapitol, considerăm o instalaţie cu patru rezervoare interconectate prezentată în Fig. 14.5, dispusă cu două pompe de împingere a apei. Modelul matematic corespunzător instalaţiei este

252 252 Capitolul 14. Studii de caz din inginerie neliniar, dat de următoarele ecuaţii diferenţiale: dh 1 dt = a 1 2gh1 + a 4 2gh4 + γ a S S S q a, dh 2 dt = a 2 2gh2 + a 3 2gh3 + γ b S S S q b, dh 3 dt = a 3 2gh3 + (1 γ a) q a, S S dh 4 dt = a 4 2gh4 + (1 γ b) q b, S S încarefuncţiileh 1,h 2,h 3,h 4 reprezintă dinamicilenivelurilor lichiduluiîn rezervoare, cu rolul de stări ale sistemului, iar q a,q b reprezintă debitele de intrare, cu rolul de comenzi (intrări). Pentru similaritate cu subcapitolul anterior, vom renota nivelul h i cu z i pentru i = 1,...,4, iar debitele (q a,q b ) cu (u 1,u 2 ). Figura 14.5: Structura instalaţiei cu patru rezervoare. Pentru discretizare, utilizăm metoda Euler pentru care putem alege perioada de eşantionare t = 5 s, deoarece procesul este unul lent. Pentru o prezentare simplificată, scriem compact sistemul neliniar discret anterior prin intermediul următoarelor notaţii: z t+1 = φ(z t )+B u u t, unde φ : R 4 R 4 cu z 1 5a 1 2gz1 + 5a 5γ 4 a 2gz4 S S φ(z) = z 2 5a 2 2gz2 + 5a 3 2gz3 S S z 3 5a 3 2gz3 B u = S z 4 5a 4 2gz4 S 0 S 5γ 0 b S 0 S 5(1 γ a) 0 5(1 γ b ) S.

253 14.2. Control optimal neliniar 253 Valorile parametrilor din cadrul modelului se pot identifica experimental prin diferite tehnici. Valorile aproximative identificate în laborator sunt prezentate în Tabelul Parametrii S a 1 a 2 a 3 a 4 γ a γ b Valori e 5 6.2e 5 2e 5 3.6e Unitate m 2 m 2 m 2 m 2 m 2 Tabelul 14.1: Parametrii procesului cu patru rezervoare. Formulăm o problemă de control optimal pentru modelul neliniar al instalaţiei, considerând un orizont de predicţie N şi referinţe pentru intrare şi stare date z ref t şi u ref 1 min z t,u t 2 N t=1 t : z t z ref t 2 Q N 1 u t u ref t 2 R 2 0 s.l.: z 0 = z, z t+1 = φ(z t )+B u u t t = 0,...,N 1. t=0 Observăm că problema de optimizare neconvexă ce rezultă din problema de control optimal fără eliminarea stărilor are forma: 1 min x R 6N 2 xt Qx+q T x (14.13) s.l.: h(x) = 0, încarematricea Qşi vectorul q este definit în secţiunea , iarfuncţia h este definită în secţiunea Rezolvăm problema neconvexă cu constrângeri de egalitate prin metoda Newton-Lagrange. Reamintim că metoda Newton-Lagrange se bazează pe iteraţia Newton pentru rezolvarea sistemului de ecuaţii: Qx+q + h(x) T µ = 0, h(x) = 0. (14.14) În Fig considerăm două referinţe pentru fiecare rezervor. Mai exact, considerăm referinţe constantă pentru 500 s şi apoi modificăm aceste referinţe la alte valori constante pentru încă 1000 s. Se observă că sistemul urmăresţe foarte bine aceste referinţe prin strategia de control optimal folosind principiul de orizont alunecător cu N = 5.

254 254 Capitolul 14. Studii de caz din inginerie nivel(cm) timp(sec) h 1 h 1 ref h 4 h 4 r ef 40 nivel(cm) h 2 h 2 ref h 3 h 3 ref timp(sec) 1500 Figura 14.6: Curba nivelului de apa din cele patru rezervoare Stabilitatea sistemelor dinamice În această aplicaţie facem conexiunea între teoria sistemelor cu cea a optimizării. Considerăm, de exemplu, clasa de sisteme liniare discrete autonome: z t+1 = Az t, (14.15) unde matricea A R n n. În particular, analizăm clasa sistemelor liniare pozitive. Pentru a defini matematic această clasă de sisteme liniare pozitive, introducem mai întâi noţiunea de matrice ne-negativă: o matrice A R n n se numeşte ne-negativă, dacă pentru orice x R n ce satisface x 0 avem Ax 0. Pe baza acestei definiţii putem introduce noţiunea de sistem liniar pozitiv: un sistem liniar discret se numeşte pozitiv dacă matricea de stare A din definiţia (14.15) este matrice ne-negativă. Sistemele pozitive se regăsesc în foarte multe domenii din economie, biologie, probabilistică, reţelistică (modele ce includ protocolul TCP), controlul traficului, probleme de sincronizare şi control în reţele wireless, etc. În toate aceste aplicaţii starea sistemului este reprezentată numeric

255 14.3. Stabilitatea sistemelor dinamice 255 de numere ne-negative, adică traiectoria unui astfel de sistem evoluează în R n +. Analiza stabilităţii sistemelor pozitive liniare se verifică prin calcularea valorilor proprii extreme corespunzătoare spectrului matricei de stare. Un astfel de sistem este asimptotic stabil dacă raza spectrală a matricei A este strict mai mică decât 1. De aceea, în continuare ne propunem să calculăm valorile proprii ale unei matrice ne-negative Calcularea valorilor proprii ale unei matrice Proprietăţile unei matrice pătratice sunt definite fundamental de spectrul acesteia (setul de valori proprii). Complexitatea calculării spectrului reprezintă subiectul central de studiu în domeniul algebrei liniare. Majoritatea algoritmilor ce tratează problema calculării spectrului unei matrice pătratice sunt metode iterative (e.g. algoritmul QR). Însă, în anumite cazuri, experimentele numerice indică o eficienţă numerică vizibil mai ridicată a abordării calculării spectrului prin intermediul metodelor de optimizare. O tehnică des folosită pentru calcularea întregului spectru a unei matrice simetrice presupune calcularea valorii proprii maxime, reducerea spectrului prin operaţia de deflaţie şi apoi, reiterarea întregului proces până la eliminarea tuturor valorilor proprii. Problema calculării valorii proprii maxime a unei matrice simetrice A R n n se poate formula prin următoarea problemă neconvexă şi neconstrânsă: x T Ax max x R n,x 0 x T x. (14.16) Observăm că funcţia obiectiv din cadrul problemei (14.16) este neconvexă, iar punctele staţionare (vectorii ce satisfac condiţiile de ordinul I) sunt date de vectorii proprii ai matricei A. Presupunând că matricea A are n vectori proprii distincţi, orice metodă de ordin I sau II prezentată în această lucrare va converge la unul dintre aceşti vectori proprii. Din acest motiv, apar dificultăţi în a garanta că metoda aleasă de noi converge la vectorul propriu maximal al matricei A. Însă, se pot observa proprietăţi excepţionale ale matricelor ne-negative în legatură cu vectorul propriu maximal. Din teorema Perron-Frobenius se poate deduce uşor că vectorul propriu maximal al unei matrice ne-negative ireductibile este singurul din setul de vectori proprii ce are componente ne-negative. În concluzie, dacă adaugăm un set de constrângeri x 0 problemei (14.16), putem garanta că metodele de

256 256 Capitolul 14. Studii de caz din inginerie ordinul I sau II prezentate în această lucrare converg la punctul de maxim global (vectorul propriu maximal). Deoarece subspaţiul invariant definit de vectorii proprii ai unei matrice este liniar, pentru a garanta o soluţie finită a problemei (14.16) considerăm vectorul normalizat şi rezolvăm următoarea problemă de optimizare neconvexă şi constrânsă: x T Ax max x R n x T x s.l.: e T x = 1, x 0. (14.17) Punctul de optim (global) al acestei probleme reprezintă vectorul propriu corespunzător valorii proprii maxime a matricei A ne-negative şi ireductibile, iar valoarea optimă este dată de valoarea proprie maximă a matricei A. Pentru un scalar τ > 0, aplicăm mai întâi metoda de penalitate pentru a muta constrângerile de egalitate în cost şi apoi rezolvăm problema corespunzătoare cu metoda gradient proiectat, i.e.: x T Ax max x R n x T x +τ(et x 1) 2 (14.18) s.l.: x 0. Diferenţa dintre problemele (14.17) şi (14.18) este penalizarea constrângerii de egalitate cu parametrul τ. Pentru a aplica forma standard a metodei gradient proiectat, aducem modelul (14.17) la forma unei probleme de minimizare observând următoarea echivalenţă: max x R n,x 0 x T Ax x T x = min x R n,x 0 x T x x T Ax. Înconcluzie, pentruunτ > 0suficientdemareputemconsideraproblema de optimizare: ( ) min F(x,τ) = xt x x R n x T Ax +τ(et x 1) 2 (14.19) s.l.: x 0. Deoarece mulţimea fezabilă a problemei (14.19) este convexă şi simplă, proiecţia pe această mulţime se poate obţine analitic. Mai exact, fie un vector x R n, proiecţia pe mulţimea vectorilor cu elemente ne-negative R n + = {x Rn : x 0} este dată de: [x] (In,R n + ) = [max{0,x 1 }...max{0,x n }] T.

257 14.4. Problema Google (ierarhizarea paginilor web) 257 Aplicăm metoda de gradient proiectat pentru rezolvarea problemei neconvexe (14.19) cu pas constant α > 0 pentru anumite valori ale parametrului de penalitate τ: x k+1 = [x k α F(x k,τ)] (In,R n + ). Rezultatele obţinute sunt prezentate in Fig Se observă o rată de convergenţă relativ rapidă (liniară) a valorilor funcţiei f(x k ) către valoarea optimă f indiferent de valoarea parametrului de penalitate τ. Din simulări observăm că nu trebuie să luăm valori foarte mari pentru parametrul de penalitate τ. Eroare f(x k ) f * τ=1 τ=5 τ=10 τ=50 τ= Iteratii x 10 4 Figura 14.7: Convergenţa metodei gradient proiectat pentru diferite valori ale parametrului de penalitate τ pe o problemă de dimensiune n = Problema Google (ierarhizarea paginilor web) Internetul este dominat progresiv de motoare de căutare, în sprijinul selecţiei şi găsirii surselor de informaţii cu relevanţă maximă. Unul dintre cele mai vechi şi eficiente motoare de căutare este Google, care se află în continuă dezvoltare pe măsură ce progresele în domeniul algoritmilor avansează. Tehnica folosită de Google pentru căutarea şi clasificarea paginilor web se numeşte PageRank, iar pasul central din această tehnică presupune clasificarea (ranking-ul) unui număr uriaş de pagini web. În acest fel, rezultă o listă ordonată de site-uri în sensul descrescător al relevanţei în legătură cu subiectul căutat.

258 258 Capitolul 14. Studii de caz din inginerie Datorită conexiunilor permanente dintre paginile web în reţeaua internet-ului, putem să reprezentăm structura legăturilor dintre pagini prin intermediul unui graf ponderat orientat. Nodurile grafului reprezintă paginile, iar muchiile au rolul link-urilor. Ponderea p ij (corespunzătoare muchiei dintre nodurile i şi j) reprezintă probabilitatea ca la o navigare aleatorie în reţeaua de pagini să se ajungă din pagina i în pagina j. În plus, putem atribui grafului o matrice de adiacenţă E R n n, cu componenta E ij 0 dacă între nodurile i şi j există muchie, iar E ij 0 dacă nodurile i şi j nu sunt legate de o muchie. Numărul de muchii din graf se reflectă în numărul de elemente nenule ale matricei E; de aceea, pentru un graf rar (cu puţine muchii), matricea de adiacenţă va fi rară (va conţine preponderent zerouri, vezi Fig. 14.8). Figura 14.8: Exemplu de graf orientat. Pentru a analiza mai îndeaproape proprietăţile matricei de adiacenţă rezultate din graful paginilor web, introducem următoarele noţiuni: Definiţia O matrice E R m n se numeşte stocastică pe linii dacă are elemente nenegative (i.e. E ij 0), iar suma pe fiecare linie este egală cu 1. O matrice E R m n se numeşte stocastică pe coloane dacă are elemente nenegative (i.e. E ij 0), iar suma pe fiecare coloană este egală cu 1. Deoarece componentele nenule ale matricei de adiacenţă E au rolul de probabilităţi, acestea sunt nenegative, iar matricea E este stocastică pe coloane. Forma algebrică a problemei Google se reduce la a găsi vectorul propriu corespunzător valorii proprii maxime 1, adică soluţia următorului sistem liniar supus constrângerilor: { Ex = x e T x = 1, x 0.

259 14.5. Învăţare automată şi clasificare 259 Problema găsirii soluţiei sistemului anterior se poate formula uşor în termeni de optimizare: min (= f(x) 12 ) x R Ex x 2 (14.20) n s.l.: e T x = 1, x 0, unde e = [1...1] T, matricea E R n n este rară (elementele au valori preponderent nule). Observăm că problema rezultată este constrânsă, însă dacă alegem un parametru τ > 0 suficient de mare, putem obţine o formulare echivalentă fără constrângeri folosind funcţia de penalitate pătratică: min F(x,τ) x R n (= 12 Ex x 2 + τ2 (et x 1) 2 ). (14.21) Pe baza teoremei Peron-Frobenius, observăm că putem elimina constrângerile de inegalitate x 0, deoarece soluţia optimă globală a problemei de optimizare (14.21) satisface automat această constrângere. Datorită dimensiunilor foarte mari ale ambelor probleme considerate (14.20) şi (14.21), ne orientăm atenţia către algoritmi de ordinul I, deoarece au o complexitate scăzută per iteraţie: (i) metoda de gradient proiectat pentru cazul constrâns (14.20): x k+1 = [x k α f(x k )] (In, n); (ii) metoda gradient pentru cazul neconstrâns (14.21): x k+1 = x k α F(x k,τ), în care n ={x R n : e T x = 1,x 0} este mulţimea numită simplex şi α > 0 este un pas constant. Rezultatele obţinute sunt prezentate în Fig and Se observă o convergenţă rapidă în ambele metode. De asemenea, observăm că metoda de penalitate produce o soluţie optimă pentru problema originală pentru valori relativ mici ale parametrului de penalitate τ Învăţare automată şi clasificare Tehnicile de învăţare automată şi clasificare sunt noţiuni centrale în domeniul statisticii, calculatoarelor, prelucrării semnalelor, etc. Ambele se ocupă în mod fundamental cu problema recunoaşterii tiparelor (pattern

260 260 Capitolul 14. Studii de caz din inginerie f(x k ) f * Iteratii (k) Figura 14.9: Curba de convergenţă a metodei de gradient proiectat aplicată unei probleme Google cu dimensiunea n = f(x k ) f * f(x k ) f * τ=5 τ=10 τ=15 τ=30 τ= Iteratii (k) x Iteratii (k) x 10 4 Figura 14.10: Curba de convergenţă a metodei de gradient pentru problema Google cu n = 10 3,τ = 50 (stânga); dependenţa convergenţei metodei gradient de parametrul τ aplicată problemei Google pe n = 10 3 (dreapta). recognition) prin dezvoltarea de modele matematice ce suportă o etapă preliminară de antrenare (experienţă), pe baza căreia realizează operaţii de clasificare/regresie de obiecte şi funcţii. O parte din numeroasele aplicaţii ale acestor tehnici cuprinde: 1. recunoaşterea -urilor de tip spam sau malware; 2. recunoşterea vocii/feţei; 3. compresia cantităţilor uriaşe de date; 4. detecţia de tipare în cadrul unei imagini;

261 14.5. Învăţare automată şi clasificare recunoaşterea scrisului de mână. Figura 14.11: Hiperplan de separare a două clase de obiecte. Una dintre cele mai renumite tehnici de recunoaştere/clasificare este SVM - Support Vector Machine. Această tehnică presupune determinarea unui model matematic ce separă două sau mai multe clase de obiecte cu o anumită acurateţe. În vederea clasificării sau recunoaşterii unui obiect necunoscut, se introduc datele obiectului în modelul matematic, iar la ieşire se primeşte id-ul clasei din care face parte. În cele mai simple cazuri, modelul matematic căutat este reprezentat de un hiperplan H = {y R n : a T y = b} caracterizat de parametrii a R n şi b R. De aceea, problema se reduce la a găsi parametrii optimi (a,b) care să separe cât mai bine clasele de obiecte. Fie setul de puncte recunoscute a priori y i cu i = 1,...,m, reprezentate în Fig de puncte având două culori diferite. Termenul recunoscute denotă că pentru fiecare punct y i cunoaştem clasa din care face parte. Dacă luăm ca exemplu Fig , putem argumenta că se cunoaşte un parametru auxiliar c i cu valoarea +1 dacă obiectul y i este e.g. de culoare roşie, iar c i = 1 dacă obiectul este de culoare albastră. Dacă datele de antrenare sunt liniar separabile, atunci putem selecta două hiperplane în aşa fel încât ele separă datele, nu conţin puncte între ele şi maximizează distanţa între cele două hiperplane. Aceste două hiperplane pot fi descrise de ecuaţiile: a T y b = 1 şi a T y b = 1. Regiunea dintre aceste două hiperplane se numeşte margine şi este descrisă de expresia 2/ a. În termenii teoriei optimizării, problema se formulează după cum

262 262 Capitolul 14. Studii de caz din inginerie urmează: 1 2 a 2 (14.22) s.l.: c i ( a T y i b ) 1 i = 1,...,m, min a R n,b R unde a şi b reprezintă parametrii hiperplanului, iar c i indică clasa din care face parte obiectul y i. Variabilele de decizie x = [a T b] T reprezintă parametrii unui hiperplan de separare a claselor de obiecte/imagini, aşa cum se observă în Fig Problema de optimizare convexă pătratică având numai constrângeri de inegalitate (14.22) o rezolvăm prin metoda de punct interior aplicată problemelor convexe (CP), metodă descrisă în capitolul anterior. (a) (b) Figura 14.12: Mulţimea de antrenare a modelului matematic de separare: (a) imagini ce fac parte din clasa I; (b) imagini ce fac parte din clasa II. În continuare, exemplificăm o aplicaţie practică a tehnicii SVM prin problema recunoaşterii cifrei 7 dintr-o imagine. Se cunoaşte că orice imagine poate fi reprezentată sub forma unei serii de pixeli, unde fiecare

263 14.5. Învăţare automată şi clasificare 263 pixel la rândul său este definit de o valoare (e.g. între 0 şi 256) dată de culoarea acestuia. Pentru a simplifica exemplul, considerăm imagini mono-colore compuse din 49 de pixeli, în care pixelii sunt reprezentaţi de nivele degricuvaloriintre0şi 5(vezi Fig ). Înetapadeiniţializare a tehnicii SVM se fixează o mulţime de antrenare compusă din diferite imagini ce conţin variante ale cifrei 7 (ce fac parte din clasa I de obiecte) şi imagini aleatorii complet diferite de cifra 7 (ce fac parte din clasa II de obiecte). Deoarece această etapă se mai numeşte şi antrenare, se cunoaşte pentru fiecare imagine clasa din care face parte. Fiecărei imagini i i se asociază un vector de 49 de componente (fiecare componentă luând valori întregi între 0 şi 5) şi un parametru c ce reprezintă indexul clasei din care face parte imaginea respectivă (dacă c = 1 atunci imaginea conţine cifra 7, dacă c = 1 atunci imaginea este aleatorie). Pe baza acestei mulţimi de antrenare, urmărim realizarea unui hiperplan de separare a acestor două clase. Dorim să rezolvăm problema SVM(14.22) în contextul prezentat anterior şi, de asemenea, să testăm eficienţa soluţiei (hiperplanului) obţinute prin evaluarea ratei de succes în recunoaşterea cifrei 7. Pentru aceasta alegem un set de imagini ale cifrei 7 (vezi Fig (a)) şi un set de imagini aleatorii (vezi Fig (b)) ce reprezintă mulţimea de antrenare a hiperplanului de separare. Transformăm aceste imagini din Fig în vectori de pixeli după cum am descris mai înainte, apoi aceştia vor fi introduşi într-o funcţie Matlab şi folosiţi în rezolvarea problemei (14.22). În final, pentru a testa soluţiagăsităx = [(a ) T b ] T dinrezolvareaproblemeiconvexepătratice (14.22), calculăm pentru anumite puncte de test (imagini de test date în Fig ) valoarea hiperplanului: { a T < 0, atunci imaginea dată de y nu conţine cifra 7; y b 0, atunci imaginea dată de y conţine cifra 7. Putem trage următoarele concluzii: dacă testăm hiperplanul cu diferite imagini aleatorii cu densitate mare de pixeli gri (vezi Fig ) şi respectiv, imagini cu cifra 7 transformată în diverse moduri (translaţie la stânga/dreapta, înclinare, etc.) atunci rezultă o rată de succes (recunoaştere corectă) de aproximativ 80%; dacă pentru testare considerăm imagini aleatorii cu densitate mică (vezi Fig (b)) şi respectiv, imagini cu cifra 7 transformată

264 Figura 14.13: Exemple de imagini de test aleatorii, ce conţin cifra 7 sau cu densitate ridicată de pixeli gri. în diverse moduri (translaţie la stânga/dreapta, înclinare, din Fig ), atunci rezultă o rată de succes de aproximativ 52%. Motivaţia ratei mici de succes în cel de-al doilea caz este dată de doi factori: (i) similaritatea ridicată între imaginile cu densitate mică de pixeli şi cele ce conţin cifra 7; (ii) numărul relativ mic de imagini de antrenare, în cazul nostru 20 de imagini test. Evident, cu cât mulţimea de antrenare conţine mai multe date (imagini) cu atât hiperplanul rezultat este mai eficient în recunoaşterea noilor obiecte.

Metode iterative pentru probleme neliniare - contractii

Metode iterative pentru probleme neliniare - contractii Metode iterative pentru probleme neliniare - contractii Problemele neliniare sunt in general rezolvate prin metode iterative si analiza convergentei acestor metode este o problema importanta. 1 Contractii

Διαβάστε περισσότερα

V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile

V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile Metode de Optimizare Curs V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile Propoziţie 7. (Fritz-John). Fie X o submulţime deschisă a lui R n, f:x R o funcţie de clasă C şi ϕ = (ϕ,ϕ

Διαβάστε περισσότερα

Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate.

Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate. Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie p, q N. Fie funcţia f : D R p R q. Avem următoarele

Διαβάστε περισσότερα

5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE.

5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE. 5 Eerciţii reolvate 5 UNCŢII IMPLICITE EXTREME CONDIŢIONATE Eerciţiul 5 Să se determine şi dacă () este o funcţie definită implicit de ecuaţia ( + ) ( + ) + Soluţie ie ( ) ( + ) ( + ) + ( )R Evident este

Διαβάστε περισσότερα

Sisteme diferenţiale liniare de ordinul 1

Sisteme diferenţiale liniare de ordinul 1 1 Metoda eliminării 2 Cazul valorilor proprii reale Cazul valorilor proprii nereale 3 Catedra de Matematică 2011 Forma generală a unui sistem liniar Considerăm sistemul y 1 (x) = a 11y 1 (x) + a 12 y 2

Διαβάστε περισσότερα

(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a.

(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a. Definiţie Spunem că: i) funcţia f are derivată parţială în punctul a în raport cu variabila i dacă funcţia de o variabilă ( ) are derivată în punctul a în sens obişnuit (ca funcţie reală de o variabilă

Διαβάστε περισσότερα

Curs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi"

Curs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică Gh. Asachi Curs 14 Funcţii implicite Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie F : D R 2 R o funcţie de două variabile şi fie ecuaţia F (x, y) = 0. (1) Problemă În ce condiţii ecuaţia

Διαβάστε περισσότερα

Asupra unei inegalităţi date la barajul OBMJ 2006

Asupra unei inegalităţi date la barajul OBMJ 2006 Asupra unei inegalităţi date la barajul OBMJ 006 Mircea Lascu şi Cezar Lupu La cel de-al cincilea baraj de Juniori din data de 0 mai 006 a fost dată următoarea inegalitate: Fie x, y, z trei numere reale

Διαβάστε περισσότερα

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1 Functii definitie proprietati grafic functii elementare A. Definitii proprietatile functiilor. Fiind date doua multimi X si Y spunem ca am definit o functie (aplicatie) pe X cu valori in Y daca fiecarui

Διαβάστε περισσότερα

a n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea

a n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea Serii Laurent Definitie. Se numeste serie Laurent o serie de forma Seria n= (z z 0 ) n regulata (tayloriana) = (z z n= 0 ) + n se numeste partea principala iar seria se numeste partea Sa presupunem ca,

Διαβάστε περισσότερα

Definiţia generală Cazul 1. Elipsa şi hiperbola Cercul Cazul 2. Parabola Reprezentari parametrice ale conicelor Tangente la conice

Definiţia generală Cazul 1. Elipsa şi hiperbola Cercul Cazul 2. Parabola Reprezentari parametrice ale conicelor Tangente la conice 1 Conice pe ecuaţii reduse 2 Conice pe ecuaţii reduse Definiţie Numim conica locul geometric al punctelor din plan pentru care raportul distantelor la un punct fix F şi la o dreaptă fixă (D) este o constantă

Διαβάστε περισσότερα

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor. Fiind date doua multimi si spunem ca am definit o functie (aplicatie) pe cu valori in daca fiecarui element

Διαβάστε περισσότερα

Planul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare

Planul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare 1 Planul în spaţiu Ecuaţia generală Plane paralele Unghi diedru 2 Ecuaţia generală Plane paralele Unghi diedru Fie reperul R(O, i, j, k ) în spaţiu. Numim normala a unui plan, un vector perpendicular pe

Διαβάστε περισσότερα

III. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă.

III. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă. III. Serii absolut convergente. Serii semiconvergente. Definiţie. O serie a n se numeşte: i) absolut convergentă dacă seria modulelor a n este convergentă; ii) semiconvergentă dacă este convergentă iar

Διαβάστε περισσότερα

Curs 1 Şiruri de numere reale

Curs 1 Şiruri de numere reale Bibliografie G. Chiorescu, Analiză matematică. Teorie şi probleme. Calcul diferenţial, Editura PIM, Iaşi, 2006. R. Luca-Tudorache, Analiză matematică, Editura Tehnopress, Iaşi, 2005. M. Nicolescu, N. Roşculeţ,

Διαβάστε περισσότερα

Metode de interpolare bazate pe diferenţe divizate

Metode de interpolare bazate pe diferenţe divizate Metode de interpolare bazate pe diferenţe divizate Radu Trîmbiţaş 4 octombrie 2005 1 Forma Newton a polinomului de interpolare Lagrange Algoritmul nostru se bazează pe forma Newton a polinomului de interpolare

Διαβάστε περισσότερα

Curs 4 Serii de numere reale

Curs 4 Serii de numere reale Curs 4 Serii de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Criteriul rădăcinii sau Criteriul lui Cauchy Teoremă (Criteriul rădăcinii) Fie x n o serie cu termeni

Διαβάστε περισσότερα

DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE

DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE ABSTRACT. Materialul prezintă o modalitate de a afla distanţa dintre două drepte necoplanare folosind volumul tetraedrului. Lecţia se adresează clasei a VIII-a Data:

Διαβάστε περισσότερα

Geometrie computationala 2. Preliminarii geometrice

Geometrie computationala 2. Preliminarii geometrice Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Geometrie computationala 2. Preliminarii geometrice Preliminarii geometrice Spatiu Euclidean: E d Spatiu de d-tupluri,

Διαβάστε περισσότερα

Seminariile Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reziduurilor

Seminariile Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reziduurilor Facultatea de Matematică Calcul Integral şi Elemente de Analiă Complexă, Semestrul I Lector dr. Lucian MATICIUC Seminariile 9 20 Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reiduurilor.

Διαβάστε περισσότερα

SEMINAR 14. Funcţii de mai multe variabile (continuare) ( = 1 z(x,y) x = 0. x = f. x + f. y = f. = x. = 1 y. y = x ( y = = 0

SEMINAR 14. Funcţii de mai multe variabile (continuare) ( = 1 z(x,y) x = 0. x = f. x + f. y = f. = x. = 1 y. y = x ( y = = 0 Facultatea de Hidrotehnică, Geodezie şi Ingineria Mediului Matematici Superioare, Semestrul I, Lector dr. Lucian MATICIUC SEMINAR 4 Funcţii de mai multe variabile continuare). Să se arate că funcţia z,

Διαβάστε περισσότερα

Curs 2 Şiruri de numere reale

Curs 2 Şiruri de numere reale Curs 2 Şiruri de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Convergenţă şi mărginire Teoremă Orice şir convergent este mărginit. Demonstraţie Fie (x n ) n 0 un

Διαβάστε περισσότερα

EDITURA PARALELA 45 MATEMATICĂ DE EXCELENŢĂ. Clasa a X-a Ediţia a II-a, revizuită. pentru concursuri, olimpiade şi centre de excelenţă

EDITURA PARALELA 45 MATEMATICĂ DE EXCELENŢĂ. Clasa a X-a Ediţia a II-a, revizuită. pentru concursuri, olimpiade şi centre de excelenţă Coordonatori DANA HEUBERGER NICOLAE MUŞUROIA Nicolae Muşuroia Gheorghe Boroica Vasile Pop Dana Heuberger Florin Bojor MATEMATICĂ DE EXCELENŢĂ pentru concursuri, olimpiade şi centre de excelenţă Clasa a

Διαβάστε περισσότερα

R R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale.

R R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale. 5p Determinați primul termen al progresiei geometrice ( b n ) n, știind că b 5 = 48 și b 8 = 84 5p Se consideră funcția f : intersecție a graficului funcției f cu aa O R R, f ( ) = 7+ 6 Determinați distanța

Διαβάστε περισσότερα

2 Transformări liniare între spaţii finit dimensionale

2 Transformări liniare între spaţii finit dimensionale Transformări 1 Noţiunea de transformare liniară Proprietăţi. Operaţii Nucleul şi imagine Rangul şi defectul unei transformări 2 Matricea unei transformări Relaţia dintre rang şi defect Schimbarea matricei

Διαβάστε περισσότερα

Spatii liniare. Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară. Mulţime infinită liniar independentă

Spatii liniare. Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară. Mulţime infinită liniar independentă Noţiunea de spaţiu liniar 1 Noţiunea de spaţiu liniar Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară 2 Mulţime infinită liniar independentă 3 Schimbarea coordonatelor unui vector la o schimbare

Διαβάστε περισσότερα

Integrala nedefinită (primitive)

Integrala nedefinită (primitive) nedefinita nedefinită (primitive) nedefinita 2 nedefinita februarie 20 nedefinita.tabelul primitivelor Definiţia Fie f : J R, J R un interval. Funcţia F : J R se numeşte primitivă sau antiderivată a funcţiei

Διαβάστε περισσότερα

SERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0

SERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0 SERII NUMERICE Definiţia 3.1. Fie ( ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0 şirul definit prin: s n0 = 0, s n0 +1 = 0 + 0 +1, s n0 +2 = 0 + 0 +1 + 0 +2,.......................................

Διαβάστε περισσότερα

z a + c 0 + c 1 (z a)

z a + c 0 + c 1 (z a) 1 Serii Laurent (continuare) Teorema 1.1 Fie D C un domeniu, a D şi f : D \ {a} C o funcţie olomorfă. Punctul a este pol multiplu de ordin p al lui f dacă şi numai dacă dezvoltarea în serie Laurent a funcţiei

Διαβάστε περισσότερα

Orice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism. (Y = f(x)).

Orice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism. (Y = f(x)). Teoremă. (Y = f(x)). Orice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism Demonstraţie. f este continuă pe X: x 0 X, S Y (f(x 0 ), ε), S X (x 0, ε) aşa ca f(s X (x 0, ε)) = S Y (f(x 0 ), ε) : y

Διαβάστε περισσότερα

Vectori liberi Produs scalar Produs vectorial Produsul mixt. 1 Vectori liberi. 2 Produs scalar. 3 Produs vectorial. 4 Produsul mixt.

Vectori liberi Produs scalar Produs vectorial Produsul mixt. 1 Vectori liberi. 2 Produs scalar. 3 Produs vectorial. 4 Produsul mixt. liberi 1 liberi 2 3 4 Segment orientat liberi Fie S spaţiul geometric tridimensional cu axiomele lui Euclid. Orice pereche de puncte din S, notată (A, B) se numeşte segment orientat. Dacă A B, atunci direcţia

Διαβάστε περισσότερα

CURS 11: ALGEBRĂ Spaţii liniare euclidiene. Produs scalar real. Spaţiu euclidian. Produs scalar complex. Spaţiu unitar. Noţiunea de normă.

CURS 11: ALGEBRĂ Spaţii liniare euclidiene. Produs scalar real. Spaţiu euclidian. Produs scalar complex. Spaţiu unitar. Noţiunea de normă. Sala: 2103 Decembrie 2014 Conf. univ. dr.: Dragoş-Pătru Covei CURS 11: ALGEBRĂ Specializarea: C.E., I.E., S.P.E. Nota: Acest curs nu a fost supus unui proces riguros de recenzare pentru a fi oficial publicat.

Διαβάστε περισσότερα

Capitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R. 4.1 Proprietăţi topologice ale lui R Puncte de acumulare

Capitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R. 4.1 Proprietăţi topologice ale lui R Puncte de acumulare Capitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R În cele ce urmează, vom studia unele proprietăţi ale mulţimilor din R. Astfel, vom caracteriza locul" unui punct în cadrul unei mulţimi (în limba

Διαβάστε περισσότερα

Seminar 5 Analiza stabilității sistemelor liniare

Seminar 5 Analiza stabilității sistemelor liniare Seminar 5 Analiza stabilității sistemelor liniare Noțiuni teoretice Criteriul Hurwitz de analiză a stabilității sistemelor liniare În cazul sistemelor liniare, stabilitatea este o condiție de localizare

Διαβάστε περισσότερα

Lectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane

Lectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane Subspatii ane Lectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane Oana Constantinescu Oana Constantinescu Lectia VI Subspatii ane Table of Contents 1 Structura de spatiu an E 3 2 Subspatii

Διαβάστε περισσότερα

Capitolul 4. Integrale improprii Integrale cu limite de integrare infinite

Capitolul 4. Integrale improprii Integrale cu limite de integrare infinite Capitolul 4 Integrale improprii 7-8 În cadrul studiului integrabilităţii iemann a unei funcţii s-au evidenţiat douăcondiţii esenţiale:. funcţia :[ ] este definită peintervalînchis şi mărginit (interval

Διαβάστε περισσότερα

Esalonul Redus pe Linii (ERL). Subspatii.

Esalonul Redus pe Linii (ERL). Subspatii. Seminarul 1 Esalonul Redus pe Linii (ERL). Subspatii. 1.1 Breviar teoretic 1.1.1 Esalonul Redus pe Linii (ERL) Definitia 1. O matrice A L R mxn este in forma de Esalon Redus pe Linii (ERL), daca indeplineste

Διαβάστε περισσότερα

Matrice. Determinanti. Sisteme liniare

Matrice. Determinanti. Sisteme liniare Matrice 1 Matrice Adunarea matricelor Înmulţirea cu scalar. Produsul 2 Proprietăţi ale determinanţilor Rangul unei matrice 3 neomogene omogene Metoda lui Gauss (Metoda eliminării) Notiunea de matrice Matrice

Διαβάστε περισσότερα

1.3 Baza a unui spaţiu vectorial. Dimensiune

1.3 Baza a unui spaţiu vectorial. Dimensiune .3 Baza a unui spaţiu vectorial. Dimensiune Definiţia.3. Se numeşte bază a spaţiului vectorial V o familie de vectori B care îndeplineşte condiţiile de mai jos: a) B este liniar independentă; b) B este

Διαβάστε περισσότερα

Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro

Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM Seminar S ANALA ÎN CUENT CONTNUU A SCHEMELO ELECTONCE S. ntroducere Pentru a analiza în curent continuu o schemă electronică,

Διαβάστε περισσότερα

Metode Runge-Kutta. 18 ianuarie Probleme scalare, pas constant. Dorim să aproximăm soluţia problemei Cauchy

Metode Runge-Kutta. 18 ianuarie Probleme scalare, pas constant. Dorim să aproximăm soluţia problemei Cauchy Metode Runge-Kutta Radu T. Trîmbiţaş 8 ianuarie 7 Probleme scalare, pas constant Dorim să aproximăm soluţia problemei Cauchy y (t) = f(t, y), a t b, y(a) = α. pe o grilă uniformă de (N + )-puncte din [a,

Διαβάστε περισσότερα

Cursul Măsuri reale. D.Rusu, Teoria măsurii şi integrala Lebesgue 15

Cursul Măsuri reale. D.Rusu, Teoria măsurii şi integrala Lebesgue 15 MĂSURI RELE Cursul 13 15 Măsuri reale Fie (,, µ) un spaţiu cu măsură completă şi f : R o funcţie -măsurabilă. Cum am văzut în Teorema 11.29, dacă f are integrală pe, atunci funcţia de mulţime ν : R, ν()

Διαβάστε περισσότερα

Conice. Lect. dr. Constantin-Cosmin Todea. U.T. Cluj-Napoca

Conice. Lect. dr. Constantin-Cosmin Todea. U.T. Cluj-Napoca Conice Lect. dr. Constantin-Cosmin Todea U.T. Cluj-Napoca Definiţie: Se numeşte curbă algebrică plană mulţimea punctelor din plan de ecuaţie implicită de forma (C) : F (x, y) = 0 în care funcţia F este

Διαβάστε περισσότερα

CONCURSUL DE MATEMATICĂ APLICATĂ ADOLF HAIMOVICI, 2017 ETAPA LOCALĂ, HUNEDOARA Clasa a IX-a profil științe ale naturii, tehnologic, servicii

CONCURSUL DE MATEMATICĂ APLICATĂ ADOLF HAIMOVICI, 2017 ETAPA LOCALĂ, HUNEDOARA Clasa a IX-a profil științe ale naturii, tehnologic, servicii Clasa a IX-a 1 x 1 a) Demonstrați inegalitatea 1, x (0, 1) x x b) Demonstrați că, dacă a 1, a,, a n (0, 1) astfel încât a 1 +a + +a n = 1, atunci: a +a 3 + +a n a1 +a 3 + +a n a1 +a + +a n 1 + + + < 1

Διαβάστε περισσότερα

Subiecte Clasa a VIII-a

Subiecte Clasa a VIII-a Subiecte lasa a VIII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul

Διαβάστε περισσότερα

2.1 Sfera. (EGS) ecuaţie care poartă denumirea de ecuaţia generală asferei. (EGS) reprezintă osferă cu centrul în punctul. 2 + p 2

2.1 Sfera. (EGS) ecuaţie care poartă denumirea de ecuaţia generală asferei. (EGS) reprezintă osferă cu centrul în punctul. 2 + p 2 .1 Sfera Definitia 1.1 Se numeşte sferă mulţimea tuturor punctelor din spaţiu pentru care distanţa la u punct fi numit centrul sferei este egalăcuunnumăr numit raza sferei. Fie centrul sferei C (a, b,

Διαβάστε περισσότερα

Concurs MATE-INFO UBB, 1 aprilie 2017 Proba scrisă la MATEMATICĂ

Concurs MATE-INFO UBB, 1 aprilie 2017 Proba scrisă la MATEMATICĂ UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ Concurs MATE-INFO UBB, aprilie 7 Proba scrisă la MATEMATICĂ SUBIECTUL I (3 puncte) ) (5 puncte) Fie matricele A = 3 4 9 8

Διαβάστε περισσότερα

Functii Breviar teoretic 8 ianuarie ianuarie 2011

Functii Breviar teoretic 8 ianuarie ianuarie 2011 Functii Breviar teoretic 8 ianuarie 011 15 ianuarie 011 I Fie I, interval si f : I 1) a) functia f este (strict) crescatoare pe I daca x, y I, x< y ( f( x) < f( y)), f( x) f( y) b) functia f este (strict)

Διαβάστε περισσότερα

COLEGIUL NATIONAL CONSTANTIN CARABELLA TARGOVISTE. CONCURSUL JUDETEAN DE MATEMATICA CEZAR IVANESCU Editia a VI-a 26 februarie 2005.

COLEGIUL NATIONAL CONSTANTIN CARABELLA TARGOVISTE. CONCURSUL JUDETEAN DE MATEMATICA CEZAR IVANESCU Editia a VI-a 26 februarie 2005. SUBIECTUL Editia a VI-a 6 februarie 005 CLASA a V-a Fie A = x N 005 x 007 si B = y N y 003 005 3 3 a) Specificati cel mai mic element al multimii A si cel mai mare element al multimii B. b)stabiliti care

Διαβάστε περισσότερα

1. Sisteme de ecuaţii liniare Definiţia 1.1. Fie K un corp comutativ. 1) Prin sistem de m ecuaţii liniare cu n necunoscute X 1,...

1. Sisteme de ecuaţii liniare Definiţia 1.1. Fie K un corp comutativ. 1) Prin sistem de m ecuaţii liniare cu n necunoscute X 1,... 1. Sisteme de ecuaţii liniare Definiţia 1.1. Fie K un corp comutativ. 1) Prin sistem de m ecuaţii liniare cu n necunoscute X 1,..., X n şi coeficienţi în K se înţelege un ansamblu de egalităţi formale

Διαβάστε περισσότερα

Tehnici de Optimizare

Tehnici de Optimizare Tehnici de Optimizare Cristian OARA Facultatea de Automatica si Calculatoare Universitatea Politehnica Bucuresti Fax: + 40 1 3234 234 Email: oara@riccati.pub.ro URL: http://riccati.pub.ro Tehnici de Optimizare

Διαβάστε περισσότερα

MARCAREA REZISTOARELOR

MARCAREA REZISTOARELOR 1.2. MARCAREA REZISTOARELOR 1.2.1 MARCARE DIRECTĂ PRIN COD ALFANUMERIC. Acest cod este format din una sau mai multe cifre şi o literă. Litera poate fi plasată după grupul de cifre (situaţie în care valoarea

Διαβάστε περισσότερα

Conice - Câteva proprietǎţi elementare

Conice - Câteva proprietǎţi elementare Conice - Câteva proprietǎţi elementare lect.dr. Mihai Chiş Facultatea de Matematicǎ şi Informaticǎ Universitatea de Vest din Timişoara Viitori Olimpici ediţia a 5-a, etapa I, clasa a XII-a 1 Definiţii

Διαβάστε περισσότερα

METODE NUMERICE: Laborator #5 Metode iterative pentru rezolvarea sistemelor: Jacobi, Gauss-Siedel, Suprarelaxare

METODE NUMERICE: Laborator #5 Metode iterative pentru rezolvarea sistemelor: Jacobi, Gauss-Siedel, Suprarelaxare METODE NUMERICE: Laborator #5 Metode iterative pentru rezolvarea sistemelor: Jacobi, Gauss-Siedel, Suprarelaxare Titulari curs: Florin Pop, George-Pantelimon Popescu Responsabil Laborator: Mădălina-Andreea

Διαβάστε περισσότερα

f(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl, x U 0 D\{x 0 }. < f(x) < l +

f(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl, x U 0 D\{x 0 }. < f(x) < l + Semnul local al unei funcţii care are limită. Propoziţie. Fie f : D (, d) R, x 0 D. Presupunem că lim x x 0 f(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl,

Διαβάστε περισσότερα

INTERPOLARE. y i L i (x). L(x) = i=0

INTERPOLARE. y i L i (x). L(x) = i=0 INTERPOLARE Se dau punctele P 0, P 1,..., P n in plan sau in spatiu, numite noduri si avand vectorii de pozitie r 0, r 1,..., r n. Problemă. Să se găsească o curbă (dintr-o anumită familie) care să treacă

Διαβάστε περισσότερα

Algebra si Geometrie Seminar 9

Algebra si Geometrie Seminar 9 Algebra si Geometrie Seminar 9 Decembrie 017 ii Equations are just the boring part of mathematics. I attempt to see things in terms of geometry. Stephen Hawking 9 Dreapta si planul in spatiu 1 Notiuni

Διαβάστε περισσότερα

Criptosisteme cu cheie publică III

Criptosisteme cu cheie publică III Criptosisteme cu cheie publică III Anul II Aprilie 2017 Problema rucsacului ( knapsack problem ) Considerăm un număr natural V > 0 şi o mulţime finită de numere naturale pozitive {v 0, v 1,..., v k 1 }.

Διαβάστε περισσότερα

2. Sisteme de forţe concurente...1 Cuprins...1 Introducere Aspecte teoretice Aplicaţii rezolvate...3

2. Sisteme de forţe concurente...1 Cuprins...1 Introducere Aspecte teoretice Aplicaţii rezolvate...3 SEMINAR 2 SISTEME DE FRŢE CNCURENTE CUPRINS 2. Sisteme de forţe concurente...1 Cuprins...1 Introducere...1 2.1. Aspecte teoretice...2 2.2. Aplicaţii rezolvate...3 2. Sisteme de forţe concurente În acest

Διαβάστε περισσότερα

Laborator/Seminar 2. Probleme de optimizare convexa

Laborator/Seminar 2. Probleme de optimizare convexa Laborator/Seminar 2 Probleme de optimizare convexa 1 Introducere Problemele de optimizare, min f(x) x R n s.l. g i (x) 0, i = 1,..., m, (1) Ax b = 0, in care functia obiectiv f si functiile ce definesc

Διαβάστε περισσότερα

Ecuaţia generală Probleme de tangenţă Sfera prin 4 puncte necoplanare. Elipsoidul Hiperboloizi Paraboloizi Conul Cilindrul. 1 Sfera.

Ecuaţia generală Probleme de tangenţă Sfera prin 4 puncte necoplanare. Elipsoidul Hiperboloizi Paraboloizi Conul Cilindrul. 1 Sfera. pe ecuaţii generale 1 Sfera Ecuaţia generală Probleme de tangenţă 2 pe ecuaţii generale Sfera pe ecuaţii generale Ecuaţia generală Probleme de tangenţă Numim sferă locul geometric al punctelor din spaţiu

Διαβάστε περισσότερα

Criterii de comutativitate a grupurilor

Criterii de comutativitate a grupurilor Criterii de comutativitate a grupurilor Marius Tărnăuceanu 10.03.2017 Abstract În această lucrare vom prezenta mai multe condiţii suficiente de comutativitate a grupurilor. MSC (2010): 20A05, 20K99. Key

Διαβάστε περισσότερα

CURS XI XII SINTEZĂ. 1 Algebra vectorială a vectorilor liberi

CURS XI XII SINTEZĂ. 1 Algebra vectorială a vectorilor liberi Lect. dr. Facultatea de Electronică, Telecomunicaţii şi Tehnologia Informaţiei Algebră, Semestrul I, Lector dr. Lucian MATICIUC http://math.etti.tuiasi.ro/maticiuc/ CURS XI XII SINTEZĂ 1 Algebra vectorială

Διαβάστε περισσότερα

Cum folosim cazuri particulare în rezolvarea unor probleme

Cum folosim cazuri particulare în rezolvarea unor probleme Cum folosim cazuri particulare în rezolvarea unor probleme GHEORGHE ECKSTEIN 1 Atunci când întâlnim o problemă pe care nu ştim s-o abordăm, adesea este bine să considerăm cazuri particulare ale acesteia.

Διαβάστε περισσότερα

Laborator 11. Mulţimi Julia. Temă

Laborator 11. Mulţimi Julia. Temă Laborator 11 Mulţimi Julia. Temă 1. Clasa JuliaGreen. Să considerăm clasa JuliaGreen dată de exemplu la curs pentru metoda locului final şi să schimbăm numărul de iteraţii nriter = 100 în nriter = 101.

Διαβάστε περισσότερα

Seminar Algebra. det(a λi 3 ) = 0

Seminar Algebra. det(a λi 3 ) = 0 Rezolvari ale unor probleme propuse "Matematica const în a dovedi ceea ce este evident în cel mai puµin evident mod." George Polya P/Seminar Valori si vectori proprii : Solutie: ( ) a) A = Valorile proprii:

Διαβάστε περισσότερα

Cercul lui Euler ( al celor nouă puncte și nu numai!)

Cercul lui Euler ( al celor nouă puncte și nu numai!) Cercul lui Euler ( al celor nouă puncte și nu numai!) Prof. ION CĂLINESCU,CNDG, Câmpulung Voi prezenta o abordare simplă a determinării cercului lui Euler, pe baza unei probleme de loc geometric. Preliminarii:

Διαβάστε περισσότερα

Lucrare. Varianta aprilie I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2. sau p b.

Lucrare. Varianta aprilie I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2. sau p b. Lucrare Soluţii 28 aprilie 2015 Varianta 1 I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2 Definiţie. Numărul întreg p se numeşte număr prim dacă p 0,

Διαβάστε περισσότερα

Laborator 6. Integrarea ecuaţiilor diferenţiale

Laborator 6. Integrarea ecuaţiilor diferenţiale Laborator 6 Integrarea ecuaţiilor diferenţiale Responsabili: 1. Surdu Cristina(anacristinasurdu@gmail.com) 2. Ştirbăţ Bogdan(bogdanstirbat@yahoo.com) Obiective În urma parcurgerii acestui laborator elevul

Διαβάστε περισσότερα

Al cincilea baraj de selecţie pentru OBMJ Bucureşti, 28 mai 2015

Al cincilea baraj de selecţie pentru OBMJ Bucureşti, 28 mai 2015 Societatea de Ştiinţe Matematice din România Ministerul Educaţiei Naţionale Al cincilea baraj de selecţie pentru OBMJ Bucureşti, 28 mai 2015 Problema 1. Arătaţi că numărul 1 se poate reprezenta ca suma

Διαβάστε περισσότερα

Toate subiectele sunt obligatorii. Timpul de lucru efectiv este de 3 ore. Se acordă din oficiu 10 puncte. SUBIECTUL I.

Toate subiectele sunt obligatorii. Timpul de lucru efectiv este de 3 ore. Se acordă din oficiu 10 puncte. SUBIECTUL I. Modelul 4 Se acordă din oficiu puncte.. Fie numărul complex z = i. Calculaţi (z ) 25. 2. Dacă x şi x 2 sunt rădăcinile ecuaţiei x 2 9x+8 =, atunci să se calculeze x2 +x2 2 x x 2. 3. Rezolvaţi în mulţimea

Διαβάστε περισσότερα

CURS VII-IX. Capitolul IV: Funcţii derivabile. Derivate şi diferenţiale. 1 Derivata unei funcţii. Interpretarea geometrică.

CURS VII-IX. Capitolul IV: Funcţii derivabile. Derivate şi diferenţiale. 1 Derivata unei funcţii. Interpretarea geometrică. Lect dr Facultatea de Hidrotehnică, Geodezie şi Ingineria Mediului Matematici Superioare, Semestrul I, Lector dr Lucian MATICIUC CURS VII-IX Capitolul IV: Funcţii derivabile Derivate şi diferenţiale 1

Διαβάστε περισσότερα

Subiecte Clasa a VII-a

Subiecte Clasa a VII-a lasa a VII Lumina Math Intrebari Subiecte lasa a VII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate

Διαβάστε περισσότερα

riptografie şi Securitate

riptografie şi Securitate riptografie şi Securitate - Prelegerea 12 - Scheme de criptare CCA sigure Adela Georgescu, Ruxandra F. Olimid Facultatea de Matematică şi Informatică Universitatea din Bucureşti Cuprins 1. Schemă de criptare

Διαβάστε περισσότερα

Ecuatii exponentiale. Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. a x = b, (1)

Ecuatii exponentiale. Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. a x = b, (1) Ecuatii exponentiale Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. Cea mai simpla ecuatie exponentiala este de forma a x = b, () unde a >, a. Afirmatia.

Διαβάστε περισσότερα

CONCURS DE ADMITERE, 17 iulie 2017 Proba scrisă la MATEMATICĂ

CONCURS DE ADMITERE, 17 iulie 2017 Proba scrisă la MATEMATICĂ UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ CONCURS DE ADMITERE, 7 iulie 207 Proba scrisă la MATEMATICĂ SUBIECTUL I (30 puncte) ) (0 puncte) Să se arate că oricare ar

Διαβάστε περισσότερα

Probleme pentru clasa a XI-a

Probleme pentru clasa a XI-a Probleme pentru clasa a XI-a 1 ( ) 01. Fie A si B doua matrici de ordin n cu elemente numere reale, care satisfac relatia AB = A + B. a) Sa se arate ca det(a 2 + B 2 ) 0. b) Sa se arate ca rang A + B =

Διαβάστε περισσότερα

Laborator 1: INTRODUCERE ÎN ALGORITMI. Întocmit de: Claudia Pârloagă. Îndrumător: Asist. Drd. Gabriel Danciu

Laborator 1: INTRODUCERE ÎN ALGORITMI. Întocmit de: Claudia Pârloagă. Îndrumător: Asist. Drd. Gabriel Danciu INTRODUCERE Laborator 1: ÎN ALGORITMI Întocmit de: Claudia Pârloagă Îndrumător: Asist. Drd. Gabriel Danciu I. NOŢIUNI TEORETICE A. Sortarea prin selecţie Date de intrare: un şir A, de date Date de ieşire:

Διαβάστε περισσότερα

Sisteme liniare - metode directe

Sisteme liniare - metode directe Sisteme liniare - metode directe Radu T. Trîmbiţaş 27 martie 2016 1 Eliminare gaussiană Să considerăm sistemul liniar cu n ecuaţii şi n necunoscute Ax = b, (1) unde A K n n, b K n 1 sunt date, iar x K

Διαβάστε περισσότερα

Funcţii Ciudate. Beniamin Bogoşel

Funcţii Ciudate. Beniamin Bogoşel Funcţii Ciudate Beniamin Bogoşel Scopul acestui articol este construcţia unor funcţii neobişnuite din punct de vedere intuitiv, care au anumite proprietăţi interesante. Construcţia acestor funcţii se face

Διαβάστε περισσότερα

Puncte de extrem pentru funcţii reale de mai multe variabile reale.

Puncte de extrem pentru funcţii reale de mai multe variabile reale. Puncte de extrem pentru funcţii reale de mai multe variabile reale. Definiţie. Fie f : A R n R. i) Un punct a A se numeşte punct de extrem local pentru f dacă diferenţa f(x) f păstrează semn constant pe

Διαβάστε περισσότερα

J F (ρ, ϕ, θ) = cos ϕ ρ sin ϕ 0. Teoremă (a diferenţiabilităţii compuse) (legea lanţului) Fie F : D deschis

J F (ρ, ϕ, θ) = cos ϕ ρ sin ϕ 0. Teoremă (a diferenţiabilităţii compuse) (legea lanţului) Fie F : D deschis 3) Coordonate sferice Fie funcţia vectorială F : R + [ π, π] [0, π) R 3, F (ρ, ϕ, θ) = (ρ sin ϕ cos θ, ρ sin ϕ sin θ, ρ cos ϕ). Observăm că F exprimă legătura dintre coordonatele carteziene şi coordonatele

Διαβάστε περισσότερα

Aplicaţii ale principiului I al termodinamicii la gazul ideal

Aplicaţii ale principiului I al termodinamicii la gazul ideal Aplicaţii ale principiului I al termodinamicii la gazul ideal Principiul I al termodinamicii exprimă legea conservării şi energiei dintr-o formă în alta şi se exprimă prin relaţia: ΔUQ-L, unde: ΔU-variaţia

Διαβάστε περισσότερα

OANA CONSTANTINESCU. ( a carei ecuatie matriceala este data in raport cu un reper cartezian R = {O; ē 1,, ē n }.

OANA CONSTANTINESCU. ( a carei ecuatie matriceala este data in raport cu un reper cartezian R = {O; ē 1,, ē n }. ELEMENTE DE SIMETRIE ALE UNEI HIPERCUADRICE IN SPATII AFINE EUCLIDIENE OANA CONSTANTINESCU 1. Centru de simetrie pentru o hipercuadrica afina Pentru inceput cadrul de lucru este un spatiu an real de dimensiune

Διαβάστε περισσότερα

3 FUNCTII CONTINUE Noţiuni teoretice şi rezultate fundamentale Spaţiul euclidian R p. Pentru p N *, p 2 fixat, se defineşte R

3 FUNCTII CONTINUE Noţiuni teoretice şi rezultate fundamentale Spaţiul euclidian R p. Pentru p N *, p 2 fixat, se defineşte R 3 FUNCTII CONTINUE 3.. Noţiuni teoretice şi rezultate fundamentale. 3... Saţiul euclidian R Pentru N *, fixat, se defineşte R = R R R = {(x, x,, x : x, x,, x R} de ori De exemlu, R = {(x, y: x, yr} R 3

Διαβάστε περισσότερα

Examen AG. Student:... Grupa: ianuarie 2016

Examen AG. Student:... Grupa: ianuarie 2016 16-17 ianuarie 2016 Problema 1. Se consideră graful G = pk n (p, n N, p 2, n 3). Unul din vârfurile lui G se uneşte cu câte un vârf din fiecare graf complet care nu-l conţine, obţinându-se un graf conex

Διαβάστε περισσότερα

Nicolae Cotfas ELEMENTE DE EDITURA UNIVERSITĂŢII DIN BUCUREŞTI

Nicolae Cotfas ELEMENTE DE EDITURA UNIVERSITĂŢII DIN BUCUREŞTI Nicolae Cotfas ELEMENTE DE ALGEBRĂ LINIARĂ EDITURA UNIVERSITĂŢII DIN BUCUREŞTI Introducere Pe parcursul acestei cărţi ne propunem să prezentăm într-un mod cât mai accesibil noţiuni si rezultate de bază

Διαβάστε περισσότερα

CURS 5 Spaţii liniare. Spaţiul liniar R n

CURS 5 Spaţii liniare. Spaţiul liniar R n CURS 5 Spaţii liniare. Spaţiul liniar R n A. Arusoaie arusoaie.andreea@gmail.com andreea.arusoaie@info.uaic.ro Facultatea de Informatică, Universitatea Alexandru Ioan Cuza din Iaşi 30 Octombrie 2017 Structura

Διαβάστε περισσότερα

Spaţii vectoriale. Definiţia 1.1. Fie (K, +, ) un corp şi (V, +) un grup abelian.

Spaţii vectoriale. Definiţia 1.1. Fie (K, +, ) un corp şi (V, +) un grup abelian. Spaţii vectoriale 1. Spaţii vectoriale. Definiţii şi proprietăţi de bază În continuare prin corp vom înţelege corp comutativ. Dacă nu se precizează altceva, se vor folosi notaţiile standard pentru elementele

Διαβάστε περισσότερα

Activitatea A5. Introducerea unor module specifice de pregătire a studenţilor în vederea asigurării de şanse egale

Activitatea A5. Introducerea unor module specifice de pregătire a studenţilor în vederea asigurării de şanse egale Investeşte în oameni! FONDUL SOCIAL EUROPEAN Programul Operaţional Sectorial pentru Dezvoltarea Resurselor Umane 2007 2013 Axa prioritară nr. 1 Educaţiaşiformareaprofesionalăînsprijinulcreşteriieconomiceşidezvoltăriisocietăţiibazatepecunoaştere

Διαβάστε περισσότερα

RĂSPUNS Modulul de rezistenţă este o caracteristică geometrică a secţiunii transversale, scrisă faţă de una dintre axele de inerţie principale:,

RĂSPUNS Modulul de rezistenţă este o caracteristică geometrică a secţiunii transversale, scrisă faţă de una dintre axele de inerţie principale:, REZISTENTA MATERIALELOR 1. Ce este modulul de rezistenţă? Exemplificaţi pentru o secţiune dreptunghiulară, respectiv dublu T. RĂSPUNS Modulul de rezistenţă este o caracteristică geometrică a secţiunii

Διαβάστε περισσότερα

Examen AG. Student:... Grupa:... ianuarie 2011

Examen AG. Student:... Grupa:... ianuarie 2011 Problema 1. Pentru ce valori ale lui n,m N (n,m 1) graful K n,m este eulerian? Problema 2. Să se construiască o funcţie care să recunoască un graf P 3 -free. La intrare aceasta va primi un graf G = ({1,...,n},E)

Διαβάστε περισσότερα

Metode iterative pentru rezolvarea sistemelor de ecuatii liniare

Metode iterative pentru rezolvarea sistemelor de ecuatii liniare Metode iterative pentru rezolvarea sistemelor de ecuatii liniare 1 Metode iterative clasice Metodele iterative sunt intens folosite, in special pentru rezolvarea de probleme mari, cum sunt cele de discretizare

Διαβάστε περισσότερα

5.5. REZOLVAREA CIRCUITELOR CU TRANZISTOARE BIPOLARE

5.5. REZOLVAREA CIRCUITELOR CU TRANZISTOARE BIPOLARE 5.5. A CIRCUITELOR CU TRANZISTOARE BIPOLARE PROBLEMA 1. În circuitul din figura 5.54 se cunosc valorile: μa a. Valoarea intensității curentului de colector I C. b. Valoarea tensiunii bază-emitor U BE.

Διαβάστε περισσότερα

O generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013

O generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013 O generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013 Marius Tărnăuceanu 1 Aprilie 2013 Abstract În această lucrare vom prezenta un rezultat ce extinde Problema

Διαβάστε περισσότερα

Să se arate că n este număr par. Dan Nedeianu

Să se arate că n este număr par. Dan Nedeianu Primul test de selecție pentru juniori I. Să se determine numerele prime p, q, r cu proprietatea că 1 p + 1 q + 1 r 1. Fie ABCD un patrulater convex cu m( BCD) = 10, m( CBA) = 45, m( CBD) = 15 și m( CAB)

Διαβάστε περισσότερα

VARIANTE PENTRU BACALAUREAT, M1-1, 2007

VARIANTE PENTRU BACALAUREAT, M1-1, 2007 VARIANTE PENTRU BACALAUREAT, M-, 27 VARIANTA SUBIECTUL I. a) Să se determine ecuația dreptei care trece prin punctul A(2; 5;3) și este paralelă cu dreapta x = y 2 4 6 = z +3 9. b) Să se determine valoarea

Διαβάστε περισσότερα

( ) ( ) ( ) Funcţii diferenţiabile. cos x cos x 2. Fie D R o mulţime deschisă f : D R şi x0 D. Funcţia f este

( ) ( ) ( ) Funcţii diferenţiabile. cos x cos x 2. Fie D R o mulţime deschisă f : D R şi x0 D. Funcţia f este o ( ) o ( ) sin π ( sec ) = = ; R 2 + kπ k Z cos cos 2 cos ( cosec ) = = ; R 2 { kπ k Z} sin sin ( arcsec ) = ; (, ) (, ) 2 ( arcosec ) = ; (, ) (, ) 2 Funcţii dierenţiabile. Fie D R o mulţime deschisă

Διαβάστε περισσότερα

Profesor Blaga Mirela-Gabriela DREAPTA

Profesor Blaga Mirela-Gabriela DREAPTA DREAPTA Fie punctele A ( xa, ya ), B ( xb, yb ), C ( xc, yc ) şi D ( xd, yd ) în planul xoy. 1)Distanţa AB = (x x ) + (y y ) Ex. Fie punctele A( 1, -3) şi B( -2, 5). Calculaţi distanţa AB. AB = ( 2 1)

Διαβάστε περισσότερα

Concurs MATE-INFO UBB, 25 martie 2018 Proba scrisă la MATEMATICĂ

Concurs MATE-INFO UBB, 25 martie 2018 Proba scrisă la MATEMATICĂ UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ Concurs MATE-INFO UBB, 5 martie 18 Proba scrisă la MATEMATICĂ NOTĂ IMPORTANTĂ: 1 Problemele tip grilă (Partea A pot avea unul

Διαβάστε περισσότερα