tehnici de optimizare curs i concepte fundamentale din teoria

590
Tehnici de Optimizare Curs I Concepte fundamentale din teoria optimizarii Ion Necoara 2014

Upload: lamthuan

Post on 30-Jan-2017

329 views

Category:

Documents


11 download

TRANSCRIPT

Page 1: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs IConcepte fundamentale din teoria optimizarii

Ion Necoara

2014

Page 2: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Personal

I Curs: Prof. Dr. Ion Necoara ([email protected])

I Seminar: Drd. Andrei Patrascu ([email protected])

Examinare

I 15 puncte seminar, lab (prezenta obligatorie) si curs

I 25 puncte colocviu (≈ saptamana 8)

I 60 puncte examen final

Optimizarea matematica numita adesea“Science of the Better”

Page 3: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

In 1744 Leonhard Euler, unul din cei mai mari matematicieni:

“Namely, because the shape of the whole universe is most perfectand, in fact, designed by the wisest creator, nothing in all of theworld will occur in which no maximum or minimum rule issomehow shining forth.”

In latina: “...nihi omnino in mundo contingint, in quo non maximiminimive ratio quapiam eluceat.”

De fapt, conceptul de derivata a functiei (una din cele maiimportante constructii matematice) a fost introdus de Fermat in1637 cu scopul rezolvarii unei probleme de optimizare

Page 4: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Bibliografie

I Note de curs/lab: http://acse.pub.ro/person/ion-necoara

I Carte: Necoara, Metode de Optimizare Numerica, PolitehnicaPress

I Culegere: Necoara, Metode de Optimizare Numerica:Culegere de Probleme, Politehnica Press

Alte carti:

I Bertsekas, Nonlinear Programming, Athena Scientific

I Nesterov, Introductory Lectures on Convex Optimization: ABasic Course, Kluwer

I Luenberger, Linear and Nonlinear Programming, Kluwer

Page 5: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Obiectivele cursului si subiectele atinse

Obiective

I recunoasterea/formularea de probleme de optimizare

I dezvoltarea de cod Matlab pentru rezolvarea problemelor deoptimizare

I caracterizarea/identificarea solutiilor

I caracterizarea limitelor de performanta a algoritmilor numericide optimizare

Subiecte atinse

I multimi si functii convexe

I clase de probleme de optimizare

I conditii de optimalitate

I algorimi numerici de optimizare si proprietatile lor

I exemple si aplicatii

Page 6: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Notatii

In cadrul cursului vom utiliza urmatoarele notatii:

• Vectori (considerati intotdeauna vector coloana) cu litere mici,

i.e. x ∈ Rn, x =

x1...xn

• Produs scalar in spatiul Euclidian: ⟨x , y⟩ = xT y =

∑ni=1 xiyi

• Norma Euclidiana standard ∥x∥ =√

⟨x , x⟩ =√

x21 + · · ·+ x2n

• Multimi cu litere mari: S ,Q,U ⊆ Rn ( Rn+ - orthantul

nenegativ, Sn+ - multimea matricelor pozitiv semidefinite)

• Matrice cu litere mari: A,B,C ,H ∈ Rn×m

• Norma spectrala a unei matrici ∥A∥ =√

λmax(ATA)

• Matrice pozitiv definita: A ≻ 0, si pozitiv semidefinita A ≽ 0

Page 7: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

NotatiiIn cadrul cursului vom utiliza urmatoarele notatii:

• Functii cu litere mici: f , g , h : Rn → R.• Gradientul, respectiv matricea Hessiana a functiei continuudiferentiabile f : Rn → R: ∇f (x) ∈ Rn,∇2f (x) ∈ Rn×n.

Hessiana este matrice simetrica (i.e. in Sn)!

∇f (x) =

∂f (x)∂x1...

∂f (x)∂xn

, ∇2f (x) =

∂2f (x)∂2x1

. . . ∂2f (x)∂x1∂xn

......

...∂2f (x)∂xn∂x1

. . . ∂2f (x)∂2xn

,

Teorema de medie: fie functia g : R → R atunci exista θ ∈ [a, b]

a.i. g(b)− g(a) = g ′(θ)(b − a) =∫ ba g ′(τ)dτ =⇒ pentru

f : Rn → R luam g(t) = f (x + t(y − x)):

f (y) = f (x) + ⟨∇f (x + θ(y − x)), y − x⟩ θ ∈ [0, 1]

f (y) = f (x) +

∫ 1

0⟨∇f (x + τ(y − x)), y − x⟩dτ

Page 8: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica = Urcarea unui munte

Page 9: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica

f ∗ = minx∈Rn

f (x)

s.l.: g1(x) ≤ 0, . . . , gm(x) ≤ 0

h1(x) = 0, . . . , hp(x) = 0.I x variabila de decizie

I functia obiectiv f : Rn → RI constrangeri de inegalitate si egalitate gi , hj : Rn → R

In solutia optima x∗ functia obiectiv ia valoarea cea mai mica(valoarea optima f ∗) in raport cu toti vectorii ce satisfacconstrangerile (restrictiile)

Scurta istorie:

I Antichitate: abordare geometrica (aplicatii izoperimetrice -Problema Dido sec. IX i.H.)

I Evul mediu: abordare algebrica (folosind e.g. inegalitateamediilor)

I Dupa sec XIX: abordare pe baza calculului diferential

Page 10: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Scurta istorie• teorie: conditii de optimalitate, analiza convexa (1900-1970)• algoritmi:

I 1947: algoritmul simplex pentru programare liniara (Dantzig)I 1950: programarea dinamica (Bellman ’52)I 1960: metoda gradientilor conjugati (Fletcher & Reeves ’64);

metode quasi-Newton (David-Fletcher-Powel ’59)I 1970: metode de penalitate si bariera (Fiacco & McCormick);

programare patratica secventiala; probleme de mari dimensiuni(Lasdon ’70); metoda subgradient (scoala ruseasca)

I 1980-2000: metode de punct interior cu complexitatepolinomiala (Karmakar ’84; Nesterov & Nemirovski ’94)

• aplicatii:I inainte de 1990: cercetari operationale (finante, logistica,

manufacturing, scheduling)I dupa 1990: aplicatii ingineresti (control, procesare de semnal,

motoare de cautare, retele); medicina (tomografie); biologie(recunoasterea de gene); fizica (predictia vremii)

Page 11: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare

Problema de optimizare neliniara:

f ∗ = minx∈Rn

f (x)

s.l.: g1(x) ≤ 0, . . . , gm(x) ≤ 0

h1(x) = 0, . . . , hp(x) = 0.

O problema de optimizare contine urmatoarele trei componente:

(i) o functie obiectiv, f (x), ce va fi minimizata/maximizata;

(ii) variabile de decizie, x ∈ Rn, care se pot alege dintr-o anumitamultime;

(iii) constrangeri (numite si restrictii) ce vor fi respectate, deforma g(x) ≤ 0 (constrangeri de inegalitate) si/sau h(x) = 0(constrangeri de egalitate).

Page 12: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizareFormularea standard a unei probleme de optimizare:

minx∈Rn

f (x)

s.l.: g1(x) ≤ 0, . . . , gm(x) ≤ 0

h1(x) = 0, . . . , hp(x) = 0.

Functia obiectiv f : Rn → R si variabila de decizie x ∈ Rn

Notatii compacte:

g : Rn → Rm, g(x) = [g1(x) . . . gm(x)]T

h : Rn → Rp, [h1(x) . . . hp(x)]T

⇒ forma compacta a problemei de optimizare neliniara ((NLP) -nonlinear programming)

(NLP) : minx∈Rn

f (x)

s.l.: g(x) ≤ 0, h(x) = 0.

Page 13: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare

Remarca: o problema de maximizare poate fi transformataintr-una de minimizare, maxx f (x) = −minx −f (x).Exemplu problema de optimizare:

minx∈R2

2x31 + 3x22 + 4x1

s.l.: x ≥ 0, x21 + x22 − 1 ≤ 0

x1x2 − 1 = 0.

In acest exemplu avem:

I variabila de decizie: x = [x1 x2]T ∈ R2 si functia obiectiv

f (x) = 2x31 + 3x22 + 4x1I trei constrangeri de inegalitate: g : R2 → R3, unde

g1(x) = −x1, g2(x) = −x2 si g3(x) = x21 + x2 − 1.

I o singura constrangere de egalitate definita de functiah(x) = x1x2 − 1.

Page 14: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare

Alte definitii esentiale:

I Multimea x ∈ Rn : f (x) = c este multimea nivel (conturul)a functiei f pentru valoarea c ∈ R.

I Multimea fezabila a problemei de optimizare (NLP) este:

X = x ∈ Rn : g(x) ≤ 0, h(x) = 0.

I Punctul x∗ ∈ Rn este un punct de minim global (adeseadenumit minim global) daca si numai daca x∗ ∈ X sif (x∗) ≤ f (x) oricare ar fi x ∈ X .

I Punctul x∗ ∈ Rn este minim local daca si numai daca x∗ ∈ X .si exista o vecinatate N a lui x∗ (e.g. o bila deschisa cucentrul ın x∗) astfel ıncat f (x∗) ≤ f (x) oricare ar fix ∈ X ∩N .

Page 15: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Minime-maxime locale/globaleExemplu: puncte de minim local (x∗L) si punctul de minim global(x∗G ) pentru f (x) = cos(5πx)/x ın intervalul [0.1, 1.1].

0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

Punct de minim local x*L

Punct de minim local x*L

Punct de minim global x*G

Punct de maxim localPunct de maxim global

I Punctul x∗ ∈ Rn este un punct strict de minim global daca sinumai daca x∗ ∈ X si f (x∗) < f (x) oricare ar fi x ∈ X \ x∗.

I Punctul x∗ ∈ Rn este un punct strict de minim local daca sinumai daca x∗ ∈ X si exista o vecinatate N a lui x∗ astfelıncat f (x∗) < f (x) oricare ar fi x ∈ (X ∩N ) \ x∗.

Page 16: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Minime-maxime locale/globale

Page 17: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Minime-maxime locale/globaleExistenta punctelor de minim (teorema lui Weierstrass): dacamultimea fezabila X ⊂ Rn este compacta (adica marginita siinchisa) si f : X → R este continua atunci exista un punct deminim global pentru problema de minimizare minx∈X f (x).

Exemplu: pentru functia f (x) din figura consideram multimeafezabila compacta X = x : a ≤ x ≤ b si observam ca are punctde minim global in d .

Page 18: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - NLPCategorii diferite de probleme de optimizare si exemple.

Reamintim categoria cea mai generala, problema de optimizareneliniara (NLP):

(NLP) : minx∈Rn

f (x)

s.l.: g(x) ≤ 0, h(x) = 0,

In mod obisnuit, f (x), g(x) si h(x) se presupun a fi continuudiferentiabile cel putin o data. NLP rezolvate cu algoritmi predatiin acest curs!Exemplu:

minx∈R3

x61 + x42 + x3

s.l.: 5x1 + 6x2 ≤ 0, x1 + x3 = 4, x1 + x2 = −2

f : R3 → R, f (x) = x61 + x42 + x3g : R3 → R, g(x) = 5x1 + 6x2

h : R3 → R2, h(x) =

[x1 + x3 − 4x1 + x2 + 2

]

Page 19: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - LPDaca f (x), g(x) si h(x) din problema NLP sunt afine (f (x) = cT x ,g(x) = Cx − d , h(x) = Ax − b), atunci problema NLP devine oproblema de programare liniara (LP sau linear programming):

(LP) : minx∈Rn

cT x

s.l.: Cx − d ≤ 0, Ax − b = 0.

I LP-urile pot fi rezolvate eficient, cu teorie dezvoltata incepandcu anii 1940 (metoda simplex). Astazi se pot rezolvaprobleme LP cu 109 variabile!

Aplicatii in toate domeniile: economie (optimizare de portfoliu);assigment (companie aeriana numeste echipajul fiecarui zbor a.i.:fiecare zbor este acoperit, indeplinite regulamentele - fiecare pilotzboara un nr maxim de ore/zi, cost minim - hotel pt. echipaj);productie si transport (companie petroliera: petrol in Arabia,rafinarie in Romania si clienti in SUA); telecomunicatii (multetelefoane din Cluj la Bucuresti si Iasi la Timisoara - cum facemrout-rea optima in retea); problema comis-voiajorului; ...

Page 20: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - LPExemplu de problema LP:

minx∈R3

3x1 + 2x2 + 4x3 (1)

s.l.: 0 ≤ x1 ≤ 10, x2 ≥ 0, x3 ≥ 0

x1 + x2 = 2

x2 + x3 = 1

Observam: f (x) = 3x1 + 2x2 + 4x3 =[3 2 4

]︸ ︷︷ ︸cT

x1x2x3

︸ ︷︷ ︸

x

= cT x

Constrangeri de egalitate: h(x) : R3 → R2 h(x) = Ax − b = 0

[1 1 00 1 1

]︸ ︷︷ ︸

A

x1x2x3

︸ ︷︷ ︸

x

−[21

]︸︷︷︸b

= 0

Page 21: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - LP

Constrangeri de inegalitate: g(x) : R3 → R4, g(x) = Cx − d ≤ 0

Inegalitatile 0 ≤ x1 ≤ 10, x2 ≥ 0, x3 ≥ 0 pot fi scrise drept:1 0 0−1 0 00 −1 00 0 −1

︸ ︷︷ ︸

C

x1x2x3

︸ ︷︷ ︸

x

10000

︸ ︷︷ ︸

d

≤ 0

Astfel, problema (1) poate fi scrisa ca problema LP standard.

Page 22: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - QPDaca g(x) si h(x) din problema NLP sunt afine iar functia obiectivf (x) este o functie patratica, atunci problema NLP devine oproblema de programare patratica (QP sau quadraticprogramming):

(QP) : minx∈Rn

1

2xTQx + qT x + r

s.l.: Cx − d ≤ 0, Ax − b = 0.

Conditii de convexitate pentru functii de doua ori continuudiferentiabile: o functie este convexa daca ∇2f (x) ≽ 0. Pentru oproblema QP, daca Q = QT , atunci ∇2f (x) = Q. In acest caz,functia obiectiv este convexa daca Q ≽ 0.

QP-urile se rezolva cu metode punct interior, “active set” sau detip gradient: astazi se pot rezolva probleme de dimensiuni foartemari (109 variabile) ce apar in multe aplicatii: optimizareamotoarelor de cautare, procesarea de imagine, predictiemeteo (vezi pagina mea: http://acse.pub.ro/person/ion-necoara)

Page 23: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - QPExemple de probleme QP:

minx∈Rn

x21 + x22 + x1x2 + 3x1 + 2x2

s.l.: x ≥ 0, x1 + x2 = 5

Observam

f (x) = x21 + x22 + x1x2 + 3x1 + 2x2

=1

2

[x1 x2

] [2 11 2

]︸ ︷︷ ︸

Q

[x1x2

]+

[3 2

]︸ ︷︷ ︸qT

[x1x2

]

Constrangeri de inegalitate: −I2x ≤ 0

Constrangeri de egalitate:[1 1

]x = 5

Calcule simple: Λ(Q) = 3, 1, deci Q ≻ 0 iar f (x) este convexa

• Ierarhizarea in motoarele de cautare se pune ca o problema QP

minx∈Rn: eT x=1, x≥0

∥Ex − x∥2

E matrice de adiacenta (http://acse.pub.ro/person/ion-necoara)

Page 24: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - CPProbleme de optimizare convexa:

(CP) : minx∈Rn

f (x)

s.l.: g(x) ≤ 0, Ax − b = 0,

O problema de optimizare este convexa daca functia obiectiv f (x)si multimea fezabila sunt convexe.

Daca g(x) convexa si h(x) afina (i.e. h(x) = Ax − b), atuncimultimea fezabila X = x : g(x) ≤ 0,Ax = b este convexa.

• Observatie: problemele LP si problemele QP (cu Q ≽ 0) suntprobleme de optimizare convexa. Problemele convexe sunt, ingeneral, mai usor de rezolvat decat (NLP)-urile. Foarte multeaplicatii: procesare de semnal, control optimal, design optim

• Observatie: o problema de optimizare convexa undef (x) = 1

2xTQx + qT x si gi (x) =

12x

TQix + qTi x + ri , i.e. f sifunctiile din constrangerile de inegalitate sunt patratice, senumeste QCQP(quadratically constrained quadratic program)

Page 25: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - SDPProblema SDP (semidefinite programming): probleme convexeunde multimea fezabila este descrisa de LMI-uri.Aceste probleme se numesc SDP-uri deoarece se impune caanumite matrice sa ramana pozitiv definite. O problema generalaSDP poate fi formulata drept:

(SDP) : minx∈Rn

cT x

s.l.: A0 +n∑

i=1

Aixi40, Ax − b = 0,

unde matricele Ai ∈ Sm oricare ar fi i = 0, . . . , n. Remarcam caproblemele LP, QP, si QCQP pot fi de asemenea formulate caprobleme SDP. Foarte multe aplicatii: control optimal si robust,stabilitatea sistemelor dinamice, probleme de localizare,matrix completion, ...

Problemele convexe sunt mult mai usor de rezolvat decat celeneconvexe! (software gratuit de optimizare bun pentru problemeconvexe este CVX)

Page 26: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de optimizare - QCQP

Exemplu de problema QCQP convexa scrisa ca un SDP:

minx∈Rn

1

2xTQx + qT x

s.l.:1

2xTQ1x+qT1 x+r1 ≤ 0

⇐⇒min

x∈Rn,t∈Rt

s.l.: t ≥ 1

2xTQx + qT x

1

2xTQ1x+qT1 x+r1 ≤ 0

SDP echivalent =⇒min

x∈Rn,t∈Rt

s.l.:

[In 1/

√2Q

12 x

1/√2xTQ

12 x t − qT x

]≽ 0[

In 1/√2Q

121 x

1/√2xTQ

121 −qT1 x − r1

]≽ 0

Page 27: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

APLICATII REALE

Page 28: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Data fitting - CMMP

• se dau functiile de baza f1, · · · , fn (numite si regresori)• se dau date (masuratori) (si , yi ), i = 1, · · · ,m

Formularea problemei: gasiti coeficientii x1, · · · , xn ∈ R:

x1f1(si ) + · · ·+ xnfn(si ) ≈ yi ∀i = 1, · · · ,m

i.e. gasiti combinatii liniare de functii care fit datele

CMMP fit: alegem x care minimizeaza eroarea de fitting patratica

m∑i=1

(x1f1(si ) + · · ·+ xnfn(si )− yi )2

Page 29: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Data fitting - CMMP

• in notatie matriceala: Aij = fi (sj) =⇒ problema de optimizare

minx∈Rn

∥Ax − y∥2

• daca m ≥ n si A are rang n =⇒ solutia

x∗ = (ATA)−1AT y

• functia corespunzatoare este:

fcmmpfit(s) = x∗1 f1(x) + · · ·+ x∗n fn(s)

• aplicatii: interpolare, netezire de date, identificare de sisteme,...

Page 30: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Data fitting polinomial - CMMP

• fit un polinom de grad < n

p(s) = a0 + a1s + · · ·+ an−1sn−1

la datele (si , yi ), i = 1, · · · ,m• functiile de baza sunt fj(s) = s j−1, j = 1, · · · , n• matricea A are forma Aij = s j−1

i :1 s1 s21 · · · sn−1

1

1 s2 s22 · · · sn−12

......

......

...1 sm s2m · · · sn−1

m

matricea Vandermonde!

Page 31: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Data fitting polinomial - CMMP• fit la functia

sin(x)

un polinom de grad ≤ 4

p(s) = a0 + a1s + · · ·+ an−1sn−1

• variabilele de decizie sunt coeficientii polinomului; consideramm = 100 puncte (date)• CMMP fit pentru polinom de grad 1, 2, 3, 4 are rezidul:0.135, 0.076, 0.025 si 0.005

Page 32: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Localizarea• se dau 3 ancore (antene) a caror pozitie este cunoscuta:x1, x2, x3 ∈ R2 (sau R3)• se cunosc distantele de la un obiect (e.g. avion) necunoscut lacele 3 ancore: R1,R2,R3 > 0

Formularea problemei: estimarea pozitiei obiectului x siestimarea incertitudinii (zona)

Page 33: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Localizarea• pozitiile ancorelor x1, x2, x3 cunoscute, dar distantele la obiectulnecunoscut R1,R2,R3 nu se stiu exact:

minx∈R3,δ∈R3

∥δ∥p

s.t.: ∥x − xi∥ ≤ Ri + δi ∀i = 1, 2, 3

unde norma p = 1 sau p = 2 sau p = ∞.

Page 34: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Localizarea• pozitiile ancorelor x1, x2, x3 si distantele la obiectul necunoscutR1,R2,R3 cunoscute =⇒ estimarea zonei unde se gaseste obiectul

o sfera de centru x si raza R se gaseste intr-o sfera de centru xi siraza Ri daca diferentele intre raze depaseste distantele dintre

centre: ∥x − xi∥ ≤ Ri − R

maxx ,R

R

s.t.: ∥x − xi∥+ R ≤ Ri ∀i = 1, 2, 3

Page 35: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Stabilirea fluxului optim de putere intr-o retea electrica

• N noduri (magistrale de transmisie)

• Ng generatoare de putere

• M linii de transmisie intre magistrale

Obiectiv: stabilirea puterii generate optime ce asigura cel maiscazut cost de productie

Page 36: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formularea problemei (I)

• matrice de adiacenta intre magistrale si linii de transmisie: E

• variabile de decizie: θi (unghiul de faza) si Pgi (puterea

generata)

• constrangeri impuse asupra unghiului si puterii: θi ∈ Θi siPgi ∈ Pi

• matricea diagonala a reactantelor liniilor de transmisie: R

• cererea de putere pe fiecare magistrala: Pdi

• ecuatiile de conservare a puterii: ETREθ = AgPg − Pd

• limitele impuse fluxului de putere minim si maxim pe liniile detransmisie: F ≤ REθ ≤ F

• functia cost (patratica) atasata generarii puterii Pgi :

fi (Pi ) = aiPgi + bi (P

gi )

2

Page 37: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formularea problemei (II)

Problema de optimizare:

minθi∈Θi ,P

gi ∈Pi

∑i

aiPgi + bi (P

gi )

2

s.l.: ETREθ − AgPg = −Pd , F ≤ REθ ≤ F .

Avantajele optimizarii:

10 20 30

Pretul energiei

iteratii0 10 20 30

220

240

260

280

300

320

340Puterea generata

iteratii

Pg i[M

Wh]

Page 38: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Controlul unei bile pe un plan inclinat

• Sistem rapid format dintr-o bila aflata pe un plan mobil

• Sistem MIMO: 4 stari (viteza si pozitia bilei) si 2 intrari(unghiul de inclinare al planului)

Obiectiv: pozitionarea si mentinerea bilei in centrul planului sauurmarirea unei traiectorii prestabilite

Page 39: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Controlul predictiv bazat pe model

• Reprezentarea pe stare: xk+1 = Axk + Buk

• Constrangeri fizice pe stare si intrare: xk ∈ X , uk ∈ U

• Functii cost patratice: ℓ(xk , uk) =12∥xk∥

2Q + r

2∥uk∥2R

(notatie ∥x∥2Q = xTQx)

• ℓf =12∥ · ∥

2P si Xf cost si constrangeri pentru starea finala

alese pentru stabilitatea sistemului in bucla inchisa

Problema de control optimal pe orizont finit N, pentru stareainitiala x formulata ca un QP:

minxk ,uk

∑N−1k=0 ℓ(xk , uk) + ℓf(xN)

s.l. xk+1 = Axk + Buk , x0 = x ,xk ∈ X , uk ∈ U ∀k, xN ∈ Xf

Rezolvam acest QP la fiecare pas de esantionare si utilizamprincipiul orizontului alunecator!

Page 40: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Rezultate

Page 41: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagini

In general, procesele ingineresti implica achizitia/ prelucrarea/comunicatia unui numar de semnale/date.

Problema majora:modificari nedorite ale semnalelor (zgomot) rezultate din:

I Achizitia semnalelor (e.g. imagine, video, audio)

I Comunicatii imperfecte

Exemplu: semnale cu detalii excesive au variatie totala mare (i.e.integrala gradientului absolut al semnalului este mare) =⇒reducerea zgomotului echivalenta cu reducerea variatiei totale

Page 42: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagini

I Recuperarea perfecta a semnalului original este imposibila

I Concluzie: cautam “cea mai buna” aproximare a imaginiicorupte

I Aproximarea se determina utilizand algoritmi de optimizare(pentru niveluri rezonabile de zgomot avem recuperare“aproape” perfecta)

Modelare pentru semnale 2D (tip imagine):

I Asociem imaginii o matrice X ∈ Rm×n sau un vector x ∈ Rmn

I Dimensiunile (m, n) reprezinta numarul de pixeli pe linii sicoloane.

I Ex.: Pentru o imagine cu dimensiuni 640× 480 pixeli asociemX ∈ R640×480.

Page 43: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagini - total variation denoisingSemnale cu detalii excesive au variatie totala mare (i.e. integralagradientului absolut al semnalului este mare) =⇒ reducereazgomotului echivalenta cu reducerea variatiei totale:

minY∈Rm×n

1

2∥Y − X∥2 + TV (Y )

I TV =“total variation” functie cuantificare variatiei totalaI TV (y) =

∑i ,j|yi+1,j − yi ,j |+ |yi ,j+1 − yi ,j |;

Rezultate (noisy image/denoised image):

Page 44: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagine - compresia imaginilorI O imagine se reprezinta numeric printr-o matrice !

Aproximare matrice cu matrice de rang mai mic via DVS:

I fie A ∈ Rm×n cu rang(A) = r si A = UΣV T =∑r

i=1 σiuivTi

I cautam matricea A avand rangul p < r a.i. A ≈ A, i.e.min

A:rangA≤p∥A− A∥

I solutie: A =∑p

i=1 σiuivTi , deci ∥A− A∥ =

∑ri=p+1 σiuiv

Ti

Demontratie: fie rang(B) ≤ p, deci dim Null(B) ≥ n − p. Apoi:dim Span v1, · · · , vp+1 = p + 1. Cele 2 spatii se intersecteaza:

∃z : ∥z∥ = 1, Bz = 0, z ∈ Spanv1, · · · , vp+1

(A− B)z = Az =

p+1∑i=1

σiuivTi z =

p+1∑i=1

(σivTi z)ui (z ⊥ vp+2)

Cum uTi uj =δij avem ∥(A−B)z∥2=p+1∑i=1

σ2i (v

Ti z)2∥ui∥2≥σ2

p+1∥z∥2.

∥A− B∥ = max∥x∥=1

∥(A− B)x∥ ≥ ∥(A− B)z∥∥z∥=1

≥ σp+1 = ∥A− A∥

Page 45: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagine - compresia imaginilorInterpretare: pentru A = UΣV T =

∑ri=1 σiuiv

Ti componentele

principale de rang 1, uivTi , sunt ordonate in functie de importanta

lor data de σi .

Fie imaginea originala 359×371 pixeli (Melancolia de Durer, 1514):

pe care o putem scrie ca o matrice A de dimensiune 359× 371(fiecare intrare (i , j) reprezinta intensitatea de gri a pixelului (i , j)cu valori intre 0 (negru) si 255 (alb)), ce poate fi descompusa viaDVS: A = UΣV T , unde U este 359× 359, Σ este 359× 371 si Veste 371× 371.

Page 46: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilorImaginea originala are 359×371 = 133.189 pixeli. Dar matricea Apoate fi scrisa ca suma de componente principale:

A = σ1u1vT1 + σ2u2v

T2 + · · ·+ σnunv

Tn ,

unde fiecare matrice uivTi (componenta principala) de rang 1 este

de marimea matricei originale A. Dar pentru ca valorile singulareσi sunt ordonate σ1 ≥ σ2 ≥ · · · ≥ σn ≥ 0, este posibila ocompresie semnificativa a imaginii, atata timp cat spectrul valorilorsingulare are doar cateva intrari mari si restul sunt mici!

Spectrul lui A contine doar 100− 200 componente principale max.!

Page 47: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilorPutem deci reconstrui fidel imaginea folosind doar o submultime decomponente principale. De exemplu, putem recupera o imagineasemenatoare cu doar 20 de componente principale folosindcomenzile din Matlab:

[U, S ,V ] = svd(A) si B = U(:, 1 : 20) S(1 : 20, 1 : 20) V (:, 1 : 20)

Imaginea B foloseste doar 10% din memoria imaginii A:

20× 359 + 20× 371 + 20 = 14.620 vs. 359× 371 = 133.189 pixeli

Page 48: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilor

Putem recupera o imagine fidela cu doar 200 de componenteprincipale, in loc de 359 cat are imaginea originala (i.e. 50%informatie din imaginea originala):

[U, S ,V ]=svd(A) si B=U(:, 1 : 200) S(1 : 200, 1 : 200) V (:, 1 : 200)

Page 49: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Simplificare modelSimplificare model:

I fie modelul y = Ax + vI A ∈ R100×30 are VS σi : 10, 7, 2, 0.5, 0.01, · · · , 0.0001I ∥x∥ ≤ 1 si zgomotul v are norma mai mica decat 0.1

• atunci termenii σiuivTi x sunt mai mici decat v pentru i ≥ 5

• modelul simplificat: y =∑4

i=1 σiuivTi x + v (i.e. descris de o

matrice de rang 4, nu rang 30!)

Alta interpretare pentru σi :

σi = minB:rang(B)≤i−1

∥A− B∥

i.e. σi reprezinta distanta (in norma matriceala) la cea maiapropriata matrice de rang i − 1

Exemplu: pentru A ∈ Rn×n, σn reprezinta distanta la cea maiapropiata matrice singulara (deci σn mica inseamna ca A estefoarte apropiata de o matrice singulara).

Page 50: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Matrix completionI se da o matrice X cu elemente lipsa (e.g. o imagine)I se presupune ca matricea X este de rang scazutI scopul este sa se gaseasca elementele lipsa din XI pentru a impune rang mic asupra unei matrici se foloseste

nuclear norm ∥ · ∥∗: daca A are descompunerea DVSA =

∑ri=1 σiuiv

Ti , atunci ∥A∥∗ =

∑ri=1 σi

I problema se pune astfel:

minX∈Rm×n

rang(X ) =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗

s.l.: Xij = Aij ∀i , j ∈ S s.l.: Xij = Aij ∀i , j ∈ Sunde se dau valorile Aij cu (i , j) ∈ S o submultime aelementelor matricei cautate

I relaxarea convexa se poate scrie ca un SDP:

minX ,W1,W2

tr(W1) + tr(W2)

s.l.: Xij = Aij ∀i , j ∈ S ,

[W1 XXT W2

]≽ 0

Page 51: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Matrix completion - aplicare in recuperarea de imagine

imaginea data (40% elemente lipsa) si imaginea recuperata

Page 52: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Truss topology design

I constructia de poduri, acoperisuri...capabile sa suporte diferiteincarcaturi

I scop: configurarea optima a structurii create pentru a suportadiferite incarcaturi

I criterii de optimizare: rigiditatea (stabilitatea) structurii,cantitatea de material folosita,...

Page 53: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Roboti (e-puck)

I 4 roboti e-puck disponibili

I determinarea pozitiei folosindprocesare de imagine

Formulare problema: urmarirea unei traiectorii prestabilite,control cooperative, controlul unei formatii=⇒ probleme de optimizare (NLP)

20 40 60 80 100Numar iteratii

Pozitia zReferinta

0 20 40 60 80 100−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

t

Intr

ari o

ptim

e (

u1, u

2)

viteza unghiulara 1viteza unghiulara 2

Page 54: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Instalatie 4 rezervoare

I instalatie cu 4 rezervoare disponibila

I placa de achizitie NI

Formulare problema: sistem complex (4 stari - niveluri; 2 intrari -debite prin pompe); urmarirea unor referinte de niveluri prestabilite=⇒ problema de optimizare (QP)

500 1000 1500 1800time(seconds)

h1sh1

h4sh4

500 1000 1500 1800time(seconds)

h2sh2

h3sh3

Page 55: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Sisteme de recomandare - problema NetflixI sistem de recomandare pentru filme: predictie cu acuratete

cat mai mare a cat de mult iti va placea un film bazat pepreferintele tale

I concursul privind imbunatatirea algoritmului de recomandareNetflix a pornit in 2006.

I In 2008 un premiu de 50K pentru 9.44% imbunatatire, iar in2009 premiul cel mare de 1 milion pentru 10.06% imbunatatire

Page 56: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Netflix

I datele de antrenare pentru algoritmul de recomandare: 100milioane ratings; 480.000 utilizatori; 17.700 filme; date stransein 6 ani (2000–2005)

Page 57: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema NetflixPrincipalele obstacole:

I dimensiunea datelor foarte mare: este nevoie de algoritmieficienti din punct de vedere al calculelor si al memoriei

I datele de test si cele de antrenare sunt diferite: e.g. datele detest ratings sunt mai recente

I 99% date lipsesc, deci metodele standard nu se aplicaI multi factori afecteaza rating-ul unui film: actorii, regizorul,

stilul actiunii, muzica, genulMatematica aplicata ajuta: Metodele Numerice si Optimizarea!

I utilizator Y caracterizeazafilmele prin atribute: violenta(x1 = 1.5); umor (x2 = 3.5);acest actor sau regizor(x3 = 0.5), etc ...

I factorizarea de matrici esteprincipala abordare

I combinata cu metodagradient din optimizare

Page 58: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema NetflixEstimarea rating-urilor necunoscute folosind factorizarea matricilor!

Aproximarea cu produs de matrici de rang 3: dar algebra standardse aplica numai matricilor cu toate intrarile cunoscute ⇒ netezireadatelor este necesara via optimizare pentru a evita overfitting

Page 59: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reconstructie tomografica

Tomografie computerizata = tehnica noninvaziva ce folosesteraze X (sau alte tipuri de radiatii) pentru a produce imagini 2D/3Dale interiorului obiectului scanat.Procedura de functionare consta in:

1. Se achizitioneaza o serie deproiectii, din diferite unghiuri,ale obiectului scanat;

www.merckmanuals.com

2. Prin intermediul proiecti-ilor obtinute, se reconstruiesteinteriorul obiectului cu ajutorulunui algoritm iterativ;

www.mathworks.com

In majoritatea cazurilor, radiatiile folosite sunt daunatoare; deaceea se urmareste achizitionarea unui numar minim de proiectii.

Page 60: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reconstructie tomograficaFormularea problemei:

• Fie x ∈ Rn imaginea interiorului de reconstruit.• Pentru reconstructie, dispunem de diferite masuratori liniare(proiectii) ale imaginii x : bi = Aix , i = 1, · · · ,m.• Notam vectorul proiectiilor b ∈ Rm si A = [AT

1 · · ·ATm]

T ∈ Rm×n

matricea de achizitie.• Imaginea interiorului reprezinta solutia sistemului liniar(subdeterminat deoarece sunt mai putine masuratori m decatdimensiunea imaginii n): Ax = b.• Reformulare in termeni de problema CMMP:

minx∈Rn: Ax=b

∥x∥α

unde de obicei se alege α = 2 sau α = 0 sau α = 1. Alegemα = 0 ∨ 1 pentru a induce o reprezentare rara a imaginii (vectorulsolutie). Se doreste o reprezentare rara a imaginii deoarece aceastapermite: compresie usoara; algoritmi rapizi pt. procesare; memoriede stocare mica; eliminarea usoara a zgomotului;...

Page 61: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - cazul vectorDefinim o masura a raritatii ∥x∥0 =/ i : xi = 0 si ∥x∥1 =

∑i |xi |

si apoi problemele de optimizare asociata sistemului liniar Ax = b:

minx∈Rn

∥x∥0 s.l. Ax = b =⇒︸︷︷︸relaxare convexa

minx∈Rn

∥x∥1 s.l. Ax = b

• Mutual coherence: µ(A) = max1≤k,j≤m, k =j

|aTk aj |∥ak∥2∥aj∥2

Pentru o matrice A cu rang intreg pe linii (i.e. m < n), daca existao solutie x∗ satisfacand relatia:

∥x∗∥0 <1

2

(1 +

1

µ(A)

)atunci x∗ este solutie pentru amandoua problemele de optimizare!

• Restricted Isometry Property (RIP): matricea A ∈ Rm×n areRIP(δ, k) daca orice submatrice AI (obtinute din combinarea a celmult k coloane din A) are toate valorile singulare marginite intre1− δ si 1 + δ. Pentru matricea A cu RIP(0.41, 2k) avem ca celedoua probleme de mai sus au aceeasi multime de solutii pemultimea vectorilor de raritate k (Candes & Tao 2005).

Page 62: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - cazul matriceDefinim o masura a raritatii ∥X∥0 = rang(X ) si ∥X∥∗ =

∑i σi si

problemele de optimizare asociate functiei liniare A : Rm×n → Rp:

minX∈Rm×n

∥X∥0 s.l. A(X ) = b =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗ s.l. A(X ) = b

• Restricted Isometry Property de ordin r : cea mai micaconstanta δr (A) a.i. pt. orice matrice X de rang cel mult r avem:

1− δr (A) ≤ ∥A(X )∥∥X∥F

≤ 1 + δr (A)

• Presupunem ca δ2r < 1 pentru un intreg r ≥ 1. Atunci unicasolutie a problemei originale neconvexe este matricea de rang celmult r satisfacand A(X ) = b.

• Presupunem ca r ≥ 1 satisface δ5r < 0.1, atunci cele douaprobleme de mai sus (cea originala si relaxarea ei convexa) auaceeasi solutie optima (Recht & Parrilo 2010).

Page 63: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs IIMultimi si Functii Convexe

Ion Necoara

2014

Page 64: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Euler (1744):

“Nothing in the world takes place without optimization, and thereis no doubt that all aspects of the world that have a rational basis

can be explained by optimization”

Page 65: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Notatii

In cadrul cursului vom utiliza urmatoarele notatii:

• Vectori (considerati intotdeauna vector coloana) cu litere mici,

i.e. x ∈ Rn, x =

x1...xn

• Produs scalar in spatiul Euclidian: ⟨x , y⟩ = xT y =

∑ni=1 xiyi

• Norma Euclidiana standard ∥x∥ =√

⟨x , x⟩ =√

x21 + · · ·+ x2n

• Multimi cu litere mari: S ,Q,U ⊆ Rn ( Rn+ - orthantul

nenegativ, Sn+ - multimea matricelor pozitiv semidefinite)

• Matrice cu litere mari: A,B,C ,H ∈ Rn×m

• Norma spectrala a unei matrici ∥A∥ =√

λmax(ATA)

• Matrice pozitiv definita: A ≻ 0, si pozitiv semidefinita A ≽ 0

Page 66: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

NotatiiIn cadrul cursului vom utiliza urmatoarele notatii:

• Functii cu litere mici: f , g , h : Rn → R.

• Gradientul, respectiv matricea Hessiana a functiei continuudiferentiabile f : Rn → R: ∇f (x) ∈ Rn,∇2f (x) ∈ Rn×n.

Hessiana este matrice simetrica (i.e. in Sn)!

∇f (x) =

∂f (x)∂x1...

∂f (x)∂xn

, ∇2f (x) =

∂2f (x)∂2x1

. . . ∂2f (x)∂x1∂xn

......

...∂2f (x)∂xn∂x1

. . . ∂2f (x)∂2xn

,

Teorema de medie: fie functia g : R → R atunci exista θ ∈ [a, b]

a.i. g(b)− g(a) = g ′(θ)(b − a) =∫ ba g ′(τ)dτ =⇒ pt. f : Rn → R

f (y) = f (x) + ⟨∇f (x + θ(y − x)), y − x⟩ θ ∈ [0, 1]

f (y) = f (x) +

∫ 1

0⟨∇f (x + τ(y − x)), y − x⟩dτ

Page 67: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica

f ∗ = minx∈Rn

f (x)

s.l.: g1(x) ≤ 0, . . . , gm(x) ≤ 0

h1(x) = 0, . . . , hp(x) = 0.I x variabila de decizie

I functia obiectiv f : Rn → RI constrangeri de inegalitate si egalitate gi , hj : Rn → R.

Multimea fezabila X = x : gi (x) ≤ 0, hj(x) = 0 ∀i , j.

(NLP) : minx∈X

f (x)

In solutia optima x∗ functia obiectiv ia valoarea cea mai mica(valoarea optima f ∗) in raport cu toti vectorii ce satisfacconstrangerile (restrictiile). Pentru probleme generale avemminime locale si globale!

Teorema: Daca functia obiectiv f este convexa si multimeafezabila X este convexa atunci avem numai minime globale!

Page 68: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeMultime afina:S ⊆ Rn este afina daca ∀x1, x2 ∈ S si ∀α ∈ R avem

αx1 + (1− α)x2 ∈ S

Exemplu multime afina:

I Multimea solutiilor unui sistem de ecuatii liniare x : Ax = bInterpretare:

I Orice punct pe dreapta definita de x1 si x2 se afla in multime.

−4 −2 0 2 4 6 8 102

2.5

3

3.5

4

4.5

5

x2(5,3)

x1(0.5,4)

α=1.5

α=1

α=0.5

α=0

α=−0.5

Page 69: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu multime afinaI Multimea solutiilor unui sistem de ecuatii liniare x : Ax = b

Ax = b, Ay = b, α ∈ R

Page 70: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexe

Multime convexa:S ⊆ Rn este convexa daca ∀x1, x2 ∈ S si ∀α ∈ [0, 1] avem

αx1 + (1− α)x2 ∈ S

Interpretare:

I Orice punct pe segmentul de dreapta definit de x1 si x2 se aflain multime

Exemplu de multime convexa si neconvexa:

I Orice multime afina este multime convexa (orice combinatieconvexa intre x1 si x2 se afla in multime)

x1

x2

x1

x2

Page 71: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexe• Acoperirea convexa: multime formata din toate combinatiileconvexe posibile de puncte ale unei multimi S

Conv(S) =

∑i∈I,I finit

αixi : xi ∈ S ,∑i∈I

αi = 1, αi ≥ 0

• Exemplu de acoperire convexa: pentru o multime formata dintrei puncte S = x , y , z avem

Conv(S) =

α1x + α2y + α3z : x , y , z ∈ S , αi ∈ [0, 1],

3∑i=1

αi = 1

Page 72: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexe

• Hiperplan si semiplan: multimi convexe definite astfel

I hiperplan:x ∈ Rn : aT x = b

, a = 0, a ∈ Rn, b ∈ R

I semiplan:x ∈ Rn : aT x ≥ b

saux ∈ Rn : aT x ≤ b

, a =

0, a ∈ Rn, b ∈ R• Exemplu de hiperplan si semiplanele aferente:

aT x≥b

a

x0

aT x≤b

aT x=b

x ∈ R2 : x1 + 2x2 = 1 ⇒ a = [1 2]T & b = 1

Page 73: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexePoliedru:• multime convexa definita de p hiperplane sau m semiplanex ∈ Rn : aTi x = bi ∀i = 1, . . . , p, cTj x ≤ dj ∀j = 1, . . . ,m

sau

mai compact x : Ax = b, Cx ≤ d

• poate fi reprezentat si prin varfuri vi si raze afine rj :∑n1i=1 αivi +

∑n2j=1 βj rj :

∑n1i=1 αi = 1, αi ≥ 0, βj ≥ 0 ∀i , j

• exemplu de poliedru nemarginit: R2

+ = x ∈ R2 : x1, x2 ≥ 0

a4

a5

a1

a2

a3

• Politop:poliedru marginit, e.g simplex :

x ∈ R3 : x1+x2+x3 ≤ 1, x ≥ 0

Page 74: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeBila:multime convexa definita de o norma ∥ · ∥, un centru xc si o raza r :

B(xc , r) = x ∈ Rn : ∥x − xc∥ ≤ r

Exemplu, bila Euclidiana de centru zero si raza 1 in R2:

B2(0, 1) =

x ∈ R2 :

√x21 + x22 ≤ 1

Elipsoid:multimea convexa definita de un centru xc si o matrice Q ≻ 0x ∈ Rn : (x − xc)

TQ−1(x − xc) ≤ 1

Page 75: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeCon:K este con daca ∀x ∈ K si ∀α ≥ 0 avem αx ∈ K

Con convex:K este con si multime convexa

Exemplu con Lorentz : Ln =[xT t]T ∈ Rn+1 : ∥x∥ ≤ t

Exemplu conul Lorentz pentru n = 2:

L2 =

[x1 x2 t]

T ∈ R3 :√

x21 + x22 ≤ t

Page 76: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeAcoperire conica:

Con(S) =∑

i∈I,I finit αixi : xi ∈ S , αi ≥ 0

I Conul dual: K ∗ = y : ⟨x , y⟩ ≥ 0 ∀x ∈ KI Daca K = K ∗ atunci K este con auto-dual

Exemple conuri:I Multimea Rn este un con, iar conul sau dual este (Rn)∗ = 0.I Rn

+ = x ∈ Rn : x ≥ 0 se numeste conul orthant si esteauto-dual in raport cu produsul scalar uzual ⟨x , y⟩ = xT y , i.e.(Rn

+)∗ = Rn

+.

Page 77: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexe

Con pozitiv semidefinit: multime formata din matrice pozitivsemidefinite, notatie Sn

+ =X ∈ Rn×n : X = XT , X ≽ 0

X ∈ Sn

+ ⇐⇒ xTXx ≥ 0 ∀x ∈ Rn

X ,Y ∈ Sn+, α ∈ [0, 1] ⇒ xT(αX+(1−α)Y )x = αxTXx+(1−α)xTYx ≥ 0

• Exemplu:

[x yy z

]∈ S2

+ ⇔ x , z ≥ 0 & xz − y2 ≥ 0

• Observatie: conul Sn+ este auto-dual, i.e. Sn

+ = (Sn+)

∗ in raportcu produsul scalar ⟨X ,Y ⟩ = Trace(XY )

Page 78: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeOperatii ce conserva convexitatea:

I intersectia: fiind data o familie de multimi convexe Sii∈I ,atunci

∩i∈I Si este o multime convexa

I suma si scalarea: fiind date doua multimi S1, S2, atunciS1 + S2 = x + y : x ∈ S1, y ∈ S2 este o multime convexa.Mai mult, αS = αx : x ∈ S este convexa daca S esteconvexa si α ∈ R

I fie o functie afina f (x) = Ax + b si S multime convexa, atuncif (S) = f (x) : x ∈ S, este convexa. Similar, preimaginea:f −1(S) = x : f (x) ∈ S este si ea convexa

Exemplu intersectie multimi convexe:

Page 79: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeInegalitate matriceala liniara (LMI): Consideram o functieG : Rm → Sn

+, G (x) = A0 +∑m

i=1 xiAi , unde xi suntcomponentele unui vector x ∈ Rm, iar matricele A0, · · · ,Am ∈ Sn

sunt simetrice.

Expresia G (x) ≽ 0 se numeste inegalitate matriceala liniara.

Multimea x ∈ Rm : G (x) ≽ 0 este o multime convexa, fiind opreimagine a lui Sm

+ prin G (x).

Exemplu: avem inegalitatea ∥A∥ ≤ γ cu γ > 0 si variabila A.Inegalitatea este echivalenta cu λmax(A

TA) ≤ γ2 sau:

γ2I − ATA ≽ 0

Prin complementul Schur, aceasta poate fi scrisa ca un LMI:[I AAT γ2I

]≽ 0

Page 80: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Multimi convexeTeorema de separare prin hiperplane: Fie S1 si S2 convexe iarS1 ∩ S2 = ∅. Atunci, exista un hiperplan aT x = b, cu a = 0,a ∈ Rn si b ∈ R astfel incat aT x ≥ b oricare ar fi x ∈ S1 siaT x ≤ b oricare ar fi x ∈ S2.

Teorema de suport cu un hiperplan: Fie S convexa six0 ∈ bd(S) = cl(S)− int(S). Atunci, exista a = 0, a ∈ Rn astfelincat aT x ≥ aT x0 oricare ar fi x ∈ S .

Page 81: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexeDomeniu efectiv: notam R = R ∪ +∞. O functie scalaraf : Rn → R are domeniul efectiv descris de multimea:

domf = x ∈ Rn : f (x) < +∞.

Functie convexa : O functie f este convexa daca domf este omultime convexa si are loc inegalitatea:

f (αx1 + (1− α)x2) ≤ αf (x1) + (1− α)f (x2)

pentru orice x1, x2 ∈ domf si α ∈ [0, 1]• Daca in plus

f (αx1 + (1− α)x2) < αf (x1) + (1− α)f (x2),

∀x1 = x2 ∈ domf si α ∈ (0, 1), atunci f functie strict convexa• Daca exista o constanta σ > 0 astfel incat

f (αx1+(1−α)x2) ≤ αf (x1)+(1−α)f (x2)−σ

2α(1−α)∥x1−x2∥2,

∀x1, x2 ∈ domf si α ∈ [0, 1], atunci f functie tare convexa

Page 82: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexe

• Exemplu de functie convexa f : R → R, f (x) = x2

−1 −0.5 0 0.5 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

f(α x1+(1−α)x

2)

f(x)=x2

α f(x1)+(1−α) f(x

2)

f(x2)

f(x1)

x1

x2

• Alte exemple de functii convexe

I Functia definita de orice norma este convexa, i.e. f (x) = ∥x∥este convexa pe Rn (folositi definitia).

I Functia f (x) = − log(x) este convexa pe R++.

I Functia f (x) = maxx1, . . . , xn este convexa pe Rn.

I Functia f (X ) = − log det(X ) este convexa pe spatiulmatricelor pozitiv definite Sn

++ (dificil de aratat!).

Page 83: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

• Ineg alitatea lui Jensen este o generalizare a convexitatii: feste convexa daca si numai daca domf este convexa si

f

(p∑

i=1

αixi

)≤

p∑i=1

αi f (xi )

pentru orice xi ∈ domf si∑p

i=1 αi = 1 cu αi ∈ [0, 1]

• Functie concava: o functie f (x) este concava daca −f (x) esteconvexa (e.g. functia f (x) = log(x) este concava pe R++)

• Remarca: o functie f : Rn → R este convexa daca si numaidaca restrictia domeniului sau la o dreapta (care intersecteazadomeniul) este, de asemenea, convexa. Cu alte cuvinte, f esteconvexa daca si numai daca oricare ar fi x ∈ domf si o directied ∈ Rn, functia scalara g(t) = f (x + td) este convexa pe domeniult ∈ R : x + td ∈ domf .

Page 84: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexe• Exemplu restrictie domeniu la o dreapta: fie functia

f (X ) = −log detX

avand domeniul de definitie domf = Sn++

Avem pentru orice X ∈ Sn++ si D ∈ Sn:

g(t) = −log det(X + tD) = −log det X − log det(I + tX− 1

2DX− 12

)= −log det X −

n∑i=1

log(1 + tλi ),

unde λi sunt valorile proprii ale lui X− 12DX− 1

2 . Din moment ce− log(t) este functie convexa, rezulta ca g(t) este functie convexasi implicit f (X ) este convexa.

• Reamintim ca pentru o matrice X ∈ Sn din DVS avem:X = UΣUT , unde U ortogonala, i.e. UTU = In. Atunci definim

Σ1/2 = diag(σ1/2i ) si

X 1/2 = UΣ1/2UT

Page 85: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexeMultimi subnivel si epigraful functiei.

• Convexitate multimii subnivelPentru un scalar c ∈ R, multimea subnivel x ∈ domf : f (x) ≤ ca unei functii convexe f : Rn → R este convexa.

• Epigraful functieiFie f : Rn → R, atunci epigraful (numit si supragrafic) functieieste definit ca fiind urmatoarea multime:

epif =[xT t]T ∈ Rn+1 : x ∈ domf , f (x) ≤ t

.

• Rezultat: o functie f : Rn → R este convexa daca si numai dacaepigraful sau este o multime convexa.

Page 86: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexeConditii de convexitate pentru functii continuu diferentiabile.

Conditii de ordinul I: daca f : Rn → R este continuudiferentiabila si domf este o multime convexa. Atunci, f esteconvexa daca si numai daca:

f (x2) ≥ f (x1) +∇f (x1)T (x2 − x1) ∀x1, x2 ∈ domf .

Page 87: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexeConditii de convexitate pentru functii continuu diferentiabile.

Conditii de ordinul II: daca f : Rn → R este de doua ori continuudiferentiabila si domf este multime convexa. Atunci f este convexadaca si numai daca pentru orice x ∈ domf matricea Hessiana estepozitiv semidefinita, adica:

∇2f (x) ≽ 0 ∀x ∈ domf .

Page 88: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexe

Exemplu conditii de ordin I si II:

I Functia f (x) = − log(x) este convexa peR++ = x ∈ R : x > 0 deoarece ∇2f (x) = 1

x2> 0 oricare ar

fi x > 0.

I Functia patratica f (x) = 12x

TQx + qT x + r este convexa peRn daca si numai daca Q ≽ 0, deoarece pentru orice x ∈ Rn

Hessiana ∇2f (x) = Q (daca Q este simetrica).

I Se observa ca orice functie afina este convexa si, de asemenea,concava.

I Conditia domf multime convexa impusa in toate teoremeleprecedente este necesara. De exemplu, consideram functiaf (x) = 1/x2 avand domf = R \ 0 multime neconvexa.Observam ca Hessiana ∇2f (x) = 6

x4≽ 0, dar functia nu este

convexa.

Page 89: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii convexeOperatii ce conserva convexitatea functiilor:

I Daca f1 si f2 sunt functii convexe si α1, α2 ≥ 0 atunciα1f1 + α2f2 este de asemenea convexa.

I Daca f este convexa atunci g(x) = f (Ax + b) (adicacompunerea unei functii convexe cu o functie afina) este deasemenea convexa:

1

2∥Ax − b∥2 = 1

2xTATAx − bTAx − 1

2bTb

I Fie f : Rn × Rm → R astfel incat functia f (·, y) este convexapentru orice y ∈ S ⊆ Rm. Atunci urmatoarea functie esteconvexa:

g(x) = supy∈S

f (x , y).

I Compunerea cu o functie convexa monotona unidimensionala:daca f : Rn → R este convexa si g : R → R este convexa simonoton crescatoare, atunci functia g f : Rn → R este deasemenea convexa.

Page 90: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii tari convexe

• Daca domf convex si exista o constanta σ > 0 a.i.

f (αx1+(1−α)x2) ≤ αf (x1)+(1−α)f (x2)−σ

2α(1−α)∥x1−x2∥2,

∀x1, x2 ∈ domf si α ∈ [0, 1], atunci f functie tare convexa

Lema 1: Fie o functie continuu differentiabila f (i.e. f ∈ C1),atunci relatia de convexitate tare este echivalenta cu:

f (y) ≥ f (x) + ⟨∇f (x), y − x⟩+ σ

2∥x − y∥2 ∀x , y

Lema 2: In cazul functiilor de doua ori diferentiabile (i.e. f ∈ C2),relatia de convexitate tare este echivalenta cu:

∇2f (x) ≽ σIn ∀x ∈ domf

Page 91: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convexitate tare• Daca f este tare convexa atunci:

f (y) ≥ f (x) +∇f (x)T (y − x) +σ

2∥y − x∥2

• Daca domf = Rn, atunci f are un punct de minim global unic:

σ

2∥x − x∗∥2 ≤ f (x)− f ∗ ≤ 1

2σ∥∇f (x)∥2

• Mai mult functia

f (x)− σ

2∥x∥2 este convexa

Page 92: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convexitate tare - exemplu

Fie f : Rn → R o functie patratica, i.e.

f (x) =1

2xTQx + ⟨q, x⟩.

Observam expresia Hessianei ∇2f (x) = Q

In concluzie, pentru functiile patratice, cu Q ≻ 0, constanta deconvexitate tare este:

σ = λmin(Q)

Exemplu: daca Q = diag([q1 q2]), cu q1 > q2 > 0, atunciconstanta de convexitate tare este σ = q2.

Page 93: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functii conjugateFie functia f : Rn → R, atunci functia conjugata, notata cu f ∗, sedefineste prin

f ∗(y) = maxx∈dom f

yT x − f (x)︸ ︷︷ ︸F (x ,y)

.

Functia f ∗ este convexa indiferent de proprietatile lui f .Exemple:

I Pentru functia patratica convexa f (x) = 12x

TQx , unde Q ≻ 0,functia conjugata are expresia:

f ∗(y) =1

2yTQ−1y .

I Pentru functia f (x) = − log x , conjugata sa este data deexpresia:

f ∗(y) = supx>0

(xy + log x) =

−1− log(−y) daca y < 0

∞ altfel.

Page 94: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs IIIMetode de optimizare unidimensionala

Ion Necoara

2014

Page 95: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica = Urcarea unui munte

Page 96: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica = Urcarea unui munte

Page 97: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica = algoritmi iterativi

algoritmi numerici de optimizare: iterativi

Page 98: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Algoritmi de optimizare

Pentru problemele prezentate in cursurile I si II vom studiaalgoritmi numerici (iterativi) de optimizare.Un algoritm de optimizare are urmatoarea structura:

1. Alege un punct intial x0

2. Pasul k : avand xk , se calculeaza un vector dk , numit directie,un scalar αk , numit lungimea pasului, si se actualizeazaiteratia:

xk+1 = xk + αkdk

3. Daca xk+1 satisface o anumita conditie, atunci ne oprim.

• Directia dk se obtine diferit, specific fiecarui algoritm.• Lungimea pasului insa se alege astfel incat f (xk+1) sa descreascacat mai mult posibil fata de f (xk), i.e.

αk = argminα

f (xk + αdk)

Page 99: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Cautare unidimensionala

Astfel, studiem metode de cautare unidimensionala, i.e. pentrufunctii obiectiv-unidimensionale f : R → R

minα∈R

f (α)

Pentru punctul de optim folosim notatia

α∗ = arg minα∈R

f (α)

Algoritmi de optimizare unidimensionala se bazeaza pe una dinurmatoarele strategii:

I Cautare directa

I Interpolare: aproximarea lui f (x) printr-un polinom folosindvalorile functiei si/sau derivatele ei in anumite puncte.

Page 100: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Cautare directa

Cautarea directa: este bazata pe urmatorii pasi

I Se identifica un interval initial [a0, b0] care sa il contina pe α∗

I Intervalul initial se reduce iterativ [ak , bk ]→ [ak+1, bk+1] panacand se satisface o toleranta impusa pentru a localiza α∗

Determinarea intervalului initial de cautare: metodaforward-backward (determina un interval in care functia obiectivare forma convexa)

Metoda presupune urmatorii pasi: fie un punct initial α0 silungimea pasului h0 > 0

I daca f (α0 + h0) < f (α0), atunci se incepe din punctulα0 + h0 si se continua cu o lungime a pasului mai mare cattimp valoarea functiei creste;

I daca f (α0 + h0) > f (α0), atunci ne deplasam din α0 inapoipana cand valoarea functiei creste.

Page 101: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backwardMetodele de cautare unidimensionale se bazeaza pe unimodalitateafunctiei : Daca exista α∗ ∈ [a, b] astfel incat f este strictdescrescatoare pe intervalul [a, α∗] si strict crescatoare peintervalul [α∗, b], atunci f se numeste functie unimodala peintervalul [a, b].

Teorema: fie f unimodala pe [a, b] si fie doi scalari α1, α2 ∈ [a, b],cu α1 < α2. In acest caz:

(i) daca f (α1) ≤ f (α2), atunci [a, α2] este interval deunimodalitate pentru f ;

(ii) daca f (α1) ≥ f (α2), atunci [α1, b] este interval deunimodalitate pentru f .

Page 102: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Folosing unimodalitatea, metoda forward-backward are urmatoriipasi (presupunem ca α∗ ∈ R+)

Pas 1. fie un α0 ∈ [0, ∞), h0 > 0 si coeficientul multiplicativt > 1 (adesea se alege t = 2). Evaluam f (α0) = f0 si k = 0;

Pas 2. Comparam valorile functiei obiectiv. Actualizamαk+1 = αk + hk si evaluam fk+1 = f (αk+1). Daca fk+1 < fk ,sarim la Pas 3; altfel, sarim la Pas 4;

Pas 3. Pas forward. Actualizam hk+1 = thk , a = αk ,η = αk+1, b = a+ hk+1. Daca f (b) ≥ f (η), atunci stop sireturneaza [a, b]; altfel a = η, η = b, sarim la Pas 2;

Pas 4. Pas backward: η = αk , b = αk+1, hk+1 = thk ,a = b − hk+1. Daca f (a) ≥ f (η), atunci stop si returnam[a, b]; altfel, b = η, si η = a, sarim la Pas 2.

Page 103: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

Page 104: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.400000

alphak+1

=0.400100

k=0h=0.000100

alphak

alphak+1

f(x)

Page 105: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.400100

alphak+1

=0.400300

k=1h=0.000200

alphak

alphak+1

f(x)

Page 106: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.400300

alphak+1

=0.400700

k=2h=0.000400

alphak

alphak+1

f(x)

Page 107: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.400700

alphak+1

=0.401500

k=3h=0.000800

alphak

alphak+1

f(x)

Page 108: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.401500

alphak+1

=0.403100

k=4h=0.001600

alphak

alphak+1

f(x)

Page 109: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.403100

alphak+1

=0.406300

k=5h=0.003200

alphak

alphak+1

f(x)

Page 110: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.406300

alphak+1

=0.412700

k=6h=0.006400

alphak

alphak+1

f(x)

Page 111: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.412700

alphak+1

=0.425500

k=7h=0.012800

alphak

alphak+1

f(x)

Page 112: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.425500

alphak+1

=0.451100

k=8h=0.025600

alphak

alphak+1

f(x)

Page 113: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.451100

alphak+1

=0.502300

k=9h=0.051200alpha

k

alphak+1

f(x)

Page 114: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.502300

alphak+1

=0.604700

k=10h=0.102400

alphak

alphak+1

f(x)

Page 115: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

alphak=0.604700

alphak+1

=0.809500

k=11h=0.204800

alphak

alphak+1

f(x)

Page 116: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda forward-backward

Exemplu metoda forward-backward pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a=0.604700b=0.809500

a

b

f(x)

Page 117: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Metoda sectiunii de aur utilizeaza implicit unimodalitatea uneifunctii.Consideram functia f unimodala pe un interval initial [a1, b1] Laiteratia k , metoda sectiunii de aur determina intervalul[ak+1, bk+1] (mai mic decat [ak , bk ]) astfel incatα∗ ∈ [ak+1, bk+1].

Consideram doua puncte λk , µk ∈ [ak , bk ] unde λk < µk sicalculam f (λk) si f (µk).

In functie de relatia dintre f (λk) si f (µk) alegem noul interval. Dinteorema unimodalitatii rezulta

(i) Daca f (λk) ≤ f (µk) atunci ak+1 = ak si bk+1 = µk ;

(ii) Daca f (λk) > f (µk) atunci ak+1 = λk si bk+1 = bk .

Page 118: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Intrebare: cum alegem acum λk si µk ?

Raspuns: impunem conditiile

1. distantele de la λk si respectiv µk la capetele intervalului[ak , bk ] sunt egale:

bk − λk = µk − ak . (1)

2. rata de micsorare a lungimii intervalelor de incertitudine lafiecare iteratie este aceeasi, rezultand

bk+1 − ak+1 = τ(bk − ak), unde τ ∈ (0, 1). (2)

3. este necesara o singura evaluare a functiei obiectiv pentru onoua iteratie.

Page 119: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditia 1: distantele de la λk si respectiv µk la capeteleintervalului [ak , bk ] sunt egale:

bk − λk = µk − ak .

f(α)

ak

λk α µ

kb

k

f(µk)>f(λ

k)

µk−a

k=b

k−λ

k

f(µk)

f(λk)

bk−λ

k

µk−a

k

Page 120: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reamintim cazul (i) din unimodalitate: f (λk) ≤ f (µk) iarak+1 = ak si bk+1 = µk .

Inlocuind in (2) si combinand cu (1) obtinem:

λk = ak + (1− τ)(bk − ak) (3)

µk = ak + τ(bk − ak). (4)

Noul interval este [ak+1, bk+1] = [ak , µk ].

Pentru a reduce intervalul, calculam λk+1 si µk+1.

Conditie: o singura evaluare a functiei este necesara per iteratie.

Idee: impunem µk+1 = λk .

Astfel, din (4) avem:

µk+1 = ak+1 + τ(bk+1 − ak+1) = ak + τ(µk − ak)

= ak + τ(ak + τ(bk − ak)− ak) = ak + τ2(bk − ak).(5)

Din µk+1 = λk , (5) si (3) avem τ2 = 1− τ .

Page 121: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Din τ2 = 1− τ , τ > 0 rezulta τ =√5−12∼= 0.618 (numarul de aur)

Astfel, metoda sectiunii de aur consta in:Pas 1. Determinam [a1, b1], alegem precizie δ.Calculam λ1 = a1 + 0.382(b1 − a1), µ1 = a1 + 0.618(b1 − a1),evaluam f (λ1) si f (µ1), initializam k = 1.

Pas 2. Daca f (λk) > f (µk)→ Pas 3; altfel → Pas 4.Pas 3. Daca bk − λk ≤ δ, stop si returnam µk ; altfel iteram:

ak+1 = λk , bk+1 = bk , λk+1 = µk

f (λk+1) = f (µk), µk+1 = ak+1 + 0.618(bk+1 − ak+1).

Evaluam f (µk+1) si iteram k = k + 1. Revenim la Pas 2.Pas 4. Daca µk − ak ≤ δ, ne oprim si returnam λk ; altfel iteram:

ak+1 = ak , bk+1 = µk , µk+1 = λk ,

f (µk+1) = f (λk), λk+1 = ak+1 + 0.382(bk+1 − ak+1).

Evaluam f (λk+1) si iteram k = k + 1. Revenim la Pas 2.

Page 122: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Sectinea de aurNumarul de aur

1 +√5

2= 1.6180339... = 1 +

1

1 + 11+ 1

1+ 11+···

considerat de grecii antici ca valoarea cea mai estetica a raportuluiintre doua laturi adiacente ale unui dreptunghi (proportiile inParthenon)

Page 123: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

Page 124: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

a1

b1

Page 125: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

a2

b2

Page 126: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

b3

Page 127: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

4

Page 128: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4a

5

b5

Page 129: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

5a6b

6

Page 130: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

5b6a

7b

7

Page 131: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

5b6a

7a

8b

8

Page 132: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

5b6a

7b

8a

9b

9

Page 133: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Sectiunii de Aur

Exemplu metoda sectiunii de aur pentruf (α) = sin(2πα) + cos(5πα)

0.2 0.4 0.6 0.8 1 1.2 1.4

a1

b1

b2

a3

a4 b

5b6a

7b

8a

10b

10

α*=0.618420

Page 134: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda lui FibonacciAceleasi principii ca si metoda sectiunii de aur, dar cu diferentele:

I fixam numarul de iteratii k

I rata de reductie τ nu este fixa

Sirul lui Fibonacci: F0 = F1 = 1, Fk+1 = Fk + Fk−1 ∀k = 1, 2, . . .

Metoda lui Fibonacci: se inlocuieste τ ←→ Fk−j

Fk−j+1, iar din iteratiile

metodei sectiunii de aur se obtine:

bj+1 − aj+1 =Fk−j

Fk−j+1(bj − aj) (valabil in ambele cazuri)

Impunem o toleranta asupra lungimii intervalului final: bk − ak ≤ ϵLuand in considerare:

bk−ak =F1F2

(bk−1−ak−1) =F1F2

F2F3· · · Fk−1

Fk(b1−a1) =

1

Fk(b1−a1),

avem Fk ≥ b1−a1ϵ ⇒ se pot calcula din start Fk si k finale

Asimptotic insa limk→∞Fk−1

Fk= τ (= 0.618 numarul de aur)!

Page 135: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta metodelor de cautare

Comparatie cu potrivire la ratele de convergenta a metodelor decautare:• Metoda sectiunii de aur: rata de reductie a intervalului este fixaτ ≈ 0.618. Dupa k iteratii lungimea intervalului este

bk − ak = τk−1(b1 − a1)

Metoda sectiunii de aur: convergenta liniara!• Metoda lui Fibonacci: rata de reductie a intervalului estevariabila Fk

Fk+1. Dupa k iteratii fixate lungimea intervalului este

bk − ak =1

Fk(b1 − a1)

Dar Fk = 1√5

(1+

√5

2

)k−

(1−

√5

2

)k

Metoda lui Fibonacci este optima in clasa metodelor de cautare

Page 136: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de InterpolareAproximeaza functia f cu un polinom de ordin doi sau trei, ce arevalori identice cu derivatele functiei in anumite puncte si in final,calculeaza valoarea α ce minimizeaza polinomul.

Metoda Newton: presupune cunoasterea derivatelor de ordinul Isi II ale functiei: se da f ′(α) si f ′′(α) la fiecare iteratie.

Cu cele doua derivate intr-un punct αk cunoscute f ′(αk) sif ′′(αk), se construieste un polinomul interpolant de grad doi(aproximarea Taylor de ordin II):

q(α) = f (αk) + f ′(αk)(α− αk) +1

2f ′′(αk)(α− αk)

2

Punctul urmator, αk+1 se calculeaza ca minimul polinomuluiinterpolant minα∈R q(α):

q′(αk+1) = 0⇒ αk+1 = αk −f ′(αk)

f ′′(αk)

Observatie: nu este nevoie sa se stie f (αk)

Page 137: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de InterpolareTeorema de convergenta locala patratica: fie f functiecontinuu diferentiabila de doua ori, si fie un punct α∗ astfel incatf ′(α∗) = 0 si f ′′(α∗) = 0. Daca α0 este suficient de aproape deα∗, atunci sirul αk∞k=0 generat de metoda lui Newton convergepatratic la α∗, i.e.

limk→∞

|αk+1 − α∗||αk − α∗|2

= β, cu β > 0

Exemplu de pas metoda Newton:

0.2 0.4 0.6 0.8 1 1.2 1.4

Pas Newton

αk

αk+1

f(α)q(α)

Page 138: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de InterpolareMetoda de interpolare in doua puncte (metoda falsei pozitii):utilizeaza doar derivate de ordin I, insa evaluate in doua punctediferite, αk−1 si αk : i.e. de dau f ′(αk−1) si f

′(αk).

Cu cele doua derivate, se construieste un polinom interpolant degrad doi:

q(α) = f (αk) + f ′(αk)(α− αk) +1

2

f ′(αk−1)− f ′(αk)

αk−1 − αk(α− αk)

2

Observam ca polinomul q(α) este in esenta cel din metodaNewton, insa in care f ′′(αk) a fost aproximata folosind derivatelede ordin I.

Punctul urmator, αk+1 se calculeaza ca minimul polinomuluiinterpolant:

q′(αk+1) = 0⇒ αk+1 = αk −αk−1 − αk

f ′(αk−1)− f ′(αk)f ′(αk)

Observatie: nu este nevoie sa se stie f (αk)

Page 139: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Teorema de convergenta locala: fie f functie continuudiferentiabila de doua ori, si fie un punct α∗ astfel incat f ′(α∗) = 0si f ′′(α∗) = 0. Daca α0 este suficient de aproape de α∗, atuncisirul αk∞k=0 generat de metoda falsei pozitii converge la α∗ cuordinul τ = (1 +

√5)/2 = 1.618, i.e.:

limk→∞

|αk+1 − α∗||αk − α∗|1.618

= β, cu β > 0

Exemplu de pas metoda falsei pozitii:

Page 140: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tema 1

Fiecare student alege o aplicatie a.i. sa se modeleze ca o problemede optimizare unidimensionala. Cerinte:

I descrieti in detaliu aplicatia aleasa

I dati formularea matematica ca o problema de optimizare

I utilizati cel putin 2 algorithmi de optimizare unidimensionaladati la curs pentru rezolvarea ei

I dati codul Matlab pentru cei 2 algoritmi

I comparati rezultatele cu functia Matlab fminbnd si fminunc

I comentati rezultatele obtinute (grafice, tabele)

Page 141: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs IVConditii de optimalitate pentru (UNLP)

Ion Necoara

2014

Page 142: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Notiuni introductive

Consideram problema de optimizare:

(UNLP) : minx∈Rn

f (x)

Presupuneri:

I f ∈ C2

I domf multime deschisa in Rn

Problema de interes consta in gasirea punctelor de minim dindomf .Reamintim ca un punct x∗ se numeste punct de minim:

I global ⇐⇒ f (x∗) ≤ f (x) ∀x ∈ domf

I local ⇐⇒ ∃δ > 0 a.i. f (x∗) ≤ f (x) ∀x ∈ domf cu∥x − x∗∥ ≤ δ

Page 143: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Directie de descrestere pentru (UNLP)Definitie: Se numeste directie de descrestere al functiei f inpunctul x ∈ domf un vector d ∈ Rn ce satisface inegalitatea:

∇f (x)Td < 0

0 1 2 3 41

1.5

2

2.5

3

3.5

4

4.5

5

d

∇ f

x1

x2

Interpretare: daca d directie de descrestere a lui f in x atuncifunctia descreste in vecinatatea lui x . Intr-adevar, exista t > 0suficient de mic a.i. din continuitatea gradientului avem:

∇f (x + τd)Td < 0 ∀τ ∈ [0, t]

Din aproximarea Taylor avem ca exista θ ∈ [0, t] a.i.:

f (x + td) = f (x) +∇f (x + θd)Td < f (x)

Page 144: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul I pentru (UNLP)

directie de descrestere d : ∇f (x)Td < 0

0 1 2 3 41

1.5

2

2.5

3

3.5

4

4.5

5

d

∇ f

x1

x2

Teorema (Conditii necesare de ordinul I): Fie f ∈ C1 six∗ ∈ domf un punct de minim local al (UNLP). Atunci avem:

∇f (x∗) = 0

Page 145: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I - Demonstratie

Demonstratie:Consideram un punct de minim local x∗ si presupunem prin absurdca ∇f (x∗) = 0. In acest caz vom arata ca d = −∇f (x∗) estedirectie de descrestere in x∗ ⇒ contrazice ipoteza initiala.

Datorita continuitatii gradientului, putem alege un t > 0 suficientde mic a.i. ∀τ ∈ [0, t] avem:

∇f (x∗ + τd)Td = −∇f (x∗ − τ∇f (x∗))T∇f (x∗) < 0

In plus, exista θ ∈ [0, t] ce satisface:

f (x∗ − t∇f (x∗)) = f (x∗)− t∇f (x∗ − θ∇f (x∗))T∇f (x∗) < f (x∗)

Ultima inegalitate contrazice ipoteza initiala, i.e. x∗ este punct deminim local.

Page 146: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I - Puncte stationare

Punctele x∗ ∈ domf ce satisfac conditiile necesare de ordinul I∇f (x∗) se numesc puncte stationare si se pot imparti in:

I puncte de minim (globale si locale)

I puncte de maxim (globale si locale)

I puncte sa (de inflexiune)

Observatie: Pentru a gasi punctele stationare trebuie rezolvatsistemul de n ecuatii neliniare cu n necunoscute: ∇f (x) = 0.

Page 147: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I - ExempluConsideram problema (UNLP):

minx∈R2

f (x)

(= x21 +

1

2x1x2 + 5x2 sin(x1)

)Pentru a gasi punctele stationare rezolvam sistemul ∇f (x) = 0:

2x1 + 0.5x2 + 5x2 cos x1 = 0 si 0.5x1 + 5 sin x1 = 0

Punctele stationare apartin multimii (0, 0), (−3.499,−1.672),(3.499, 1.672), (−5.679, 2.461), (5.679,−2.461).Analiza punctelor: consideram punctul (0, 0).

I daca alegem (x1, x2) in jurul lui (0, 0), cu x1 > 0 si x2 = −2x1obtinem f (x1, x2) < 0 = f (0, 0)

I daca alegem (x1, x2) in jurul lui (0, 0), cu x2 = 0, avemf (x1, x2) > 0 = f (0, 0)

Concluzie: (0, 0) punct de inflexiune.Ce tip sunt restul punctelor stationare? Cum putem analiza naturapunctelor in cazul problemelor de mari dimensiuni?

Page 148: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul II pentru (UNLP)

Dupa cum am vazut anterior, natura punctelor stationare nu poatefi stabilita utilizand doar informatie de ordinul I ⇒ pentru a stabilica un punct stationar este punct de extrem (minim sau maxim)este necesara informatie despre Hessiana.

Teorema (Conditii necesare de ordinul II): Fie f ∈ C2 six∗ ∈ domf un punct de minim local al problemei (UNLP). Atunciavem:

∇2f (x∗) < 0.

Page 149: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul II - Demonstratie

Demonstratie: Presupunem prin absurd ca pentru un x∗ punct deminim local avem ca ∇2f (x∗) < 0 nu este satisfacuta si drepturmare ∃d a.i. dT∇2f (x∗)d < 0.Datorita continuitatii lui ∇2f ⇒ ∃t > 0 a.i. ∀τ ∈ [0, t] avem:

dT∇2f (x∗ + τd)d < 0.

Utilizand Teorema lui Taylor ⇒ ∃θ ∈ [0, t] a.i.:

f (x∗+td) = f (x∗)+t∇f (x∗)Td︸ ︷︷ ︸=︸︷︷︸

∇f (x∗)=0

0

+1

2t2 dT∇2f (x∗ + θd)d︸ ︷︷ ︸

≤0

< f (x∗).

Ultima inegalitate contrazice deci ipoteza initiala conform careia x∗

este punct de minim local.

Page 150: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente de ordinul II pentru (UNLP)

Teorema (Conditii suficiente de ordinul II): Fie f ∈ C2 six∗ ∈ domf un punct stationar, i.e. ∇f (x∗) = 0. Daca Hessiana luif este pozitiv definita in x∗, i.e. ∇2f (x∗) ≻ 0, atunci x∗ estepunct strict de minim local al problemei (UNLP).

Page 151: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente de ordinul II - Demonstratie

Demonstratie: Notand cu λmin > 0 valoarea proprie minima aHessianei ∇2f (x∗) avem:

dT∇2f (x∗)d ≥ λmin∥d∥2 ∀d ∈ Rn.

Folosind in continuare aproximarea Taylor putem scrie:

f (x∗ + d)− f (x∗) = ∇f (x∗)Td +1

2dT∇2f (x∗)d +R

(∥d∥2

)≥ λmin

2∥d∥2 +R

(∥d∥2

)=

(λmin

2+

R(∥d∥2

)∥d∥2

)∥d∥2 ≥ 0

pentru orice d ∈ Rn suficient de mic (reamintim ca avem relatia

lim∥d∥→0

R(∥d∥2)∥d∥2 = 0). Deci x∗ este punct de minim local.

Page 152: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul II - Tipul punctelor de extrem

Ca o consecinta a conditiilor suficiente de ordinul II, putem stabilinatura unui punct stationar x∗ in functie de proprietatile Hessianei,astfel:

I punct de minim local ⇐⇒ ∇2f (x∗) ≻ 0

I punct de maxim local ⇐⇒ ∇2f (x∗) ≺ 0

I punct de inflexiune ⇐⇒ ∇2f (x∗) este indefinita (atat valoriproprii negative cat si pozitive)

I in cazul in care ∇2f (x∗) este singulara nu se poate precizanatura punctului

Page 153: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul II - Exemplu

Consideram problema (UNLP):

minx∈R2

f (x)

(=

1

2x21 + x1x2 + 2x22 − 4x1 − 4x2 − x32

)Pentru a gasi punctele stationare rezolvam sistemul de doua ecuatiineliniare ∇f (x) = 0:

x1 + x2 − 4 = 0 si x1 + 4x2 − 4− 3x22 = 0.

Obtinem ca multimea punctelor stationare ale problemei este(4, 0), (3, 1).Pentru a observa natura acestora evaluam Hessiana:

∇2f (x) =

[1 11 4− 6x2

].

Deducem de aici ca (4, 0) este punct de minim local iar (3, 1) deinflexiune.

Page 154: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul II - Exemplul 2Consideram problema (UNLP):

minx∈R2

f (x)(= (x1 − 2)2 + (x1 − x22 )

2)

Din figura alaturata putem observa ca aceasta problema are douapuncte de minim si unul de inflexiune.

Cum putem gasi si stabili natura acestor puncte?

Page 155: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente - Cazul convex

Sub presupunerea suplimentara ca f este o functie convexa vomarata ca in acest caz conditiile necesare de ordinul I sunt sisuficiente:

Teorema (Conditii suficiente de ordinul I pentru cazulconvex): Fie f ∈ C1 o functie convexa. Daca x∗ este un punctstationar , i.e. ∇f (x∗) = 0, atunci x∗ este punct de minim globalal problemei (UNLP).

Demonstratie: Folosind proprietatea de convexitate a lui f putemscrie:

f (x) ≥ f (x∗) +∇f (x∗)T︸ ︷︷ ︸=0

(x − x∗) = f (x∗) ∀x ∈ Rn.

Concluzie: orice punct de minim local al unei probleme convexeeste punct de minim global!

Probleme convexe sunt mult mai usor de rezolvat!

Page 156: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Cazul convex - Exemplu

Consideram problema (UNLP) convexa:

minx∈R2

f (x)

(= x41 + 2x21 − x1x2 +

1

2x22

).

In continuare obtinem ca ∇f (x) si ∇2f (x) au urmatoarele expresii:

∇f (x) =

[4x31 + 4x1 − x2

−x1 + x2

]si ∇2f (x) =

[12x2 + 4 −1

−1 1

].

Observam ca ∇2f (x) ≻ 0 ∀x ∈ R2 deci f este convexa.

Conform conditiilor suficiente de ordinul I, solutiile sistemului∇f (x) = 0 sunt puncte de minim global ale problemei (UNLP) ⇒(0, 0) punct de minim global.

Page 157: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs VConvergenta metodelor de descrestere

Ion Necoara

2014

Page 158: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Optimizarea matematica numita adesea“Science of the Better”

Page 159: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

(UNLP)

Problema de optimizare neliniara fara constrangeri

(UNLP) : f ∗ = minx∈Rn

f (x)

Conditiile de ordinul I: ∇f (x) = 0 (n ecuatii cu n necunoscute)

Exemplu (QP):minx∈Rn

0.5xTQx − qT x ,

I Q matrice inversabila =⇒ ∇f (x) = Qx − q = 0 solutie unicax∗ = Q−1q

I valoarea optima f ∗ = −0.5qTQ−1q.

Page 160: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode numerice de optimizare

(UNLP) : f ∗ = minx∈Rn

f (x)

Sistemul de n ecuatii cu n necunoscute ∇f (x) = 0 nu poate firezolvat analitic! =⇒ metode iterative de rezolvare

Algoritm iterativ: genereaza un sir (xk)k≥0; fiecare punct calculatpe baza punctelor anterioare:

xk+1 = M(x0, · · · , xk)

I algoritm convergent global : pentru orice x0 sirul xk convergela o solutie x∗

I algoritm convergent local : pentru orice x0 apropiat de osolutie x∗ sirul xk converge la x∗

Page 161: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode numerice de optimizare

(UNLP) : f ∗ = minx∈Rn

f (x)

Algoritm iterativ: genereaza un sir de puncte (xk)k≥0; fiecarepunct calculat pe baza punctelor anterioare:xk+1 = M(x0, · · · , xk)

Algoritmul numeric colecteaza informatie printr-un oracol simanipuleaza raspunsurile oracolului

I oracol de ordin zero O0: furnizeaza informatie bazata peevaluarea functiei obiectiv f (x)

I oracol de ordin intai O1: furnizeaza informatie bazata peevaluarea functiei obiectiv f (x) si gradientului ∇f (x)

I oracol de ordin doi O2: furnizeaza informatie bazata peevaluarea functiei obiectiv f (x), gradient ∇f (x) si Hessiana∇2f (x)

Page 162: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode numerice de optimizare

Algoritm de optimizare iterativ gaseste o solutie aproximativacu o acuratete prestabilita ϵ

acuratetea ϵ reprezinta si criteriul de oprire al algoritmului

I criteriul de oprire 1: ∥∇f (xk)∥ ≤ ϵ

I criteriul de oprire 2: |f (xk)− f ∗| ≤ ϵ

I criteriul de oprire 3: ∥xk+1 − xk∥ ≤ ϵ

Metoda generica de optimizare

1. se da: punct initial x0, acuratete ϵ si contor k = 0

2. Ik informatia acumulata de oracol la pasul k ; se apeleazaoracolul O in xk ; se actualizeaza informatiaIk+1 = Ik ∪ O(xk)

3. se calculeaza xk+1 = M(Ik+1)

Exemplu (metoda gradient): O(xk) = ∇f (xk) =⇒xx+1 = xk − α∇f (xk), cu scalar α > 0 ales la pasul initial k = 0

Page 163: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode numerice de optimizare• Complexitatea analitica a algoritmului de optimizareiterativ: numarul total de apeluri ale oracolului pentru gasirea uneiϵ-solutii

• Rata de convergenta: viteza cu care sirul xk converge la solutiax∗; ordinul de convergenta q definit ca:

¯limk→∞∥xk+1 − x∗∥∥xk − x∗∥q

< ∞ ⇐⇒ ∥xk+1 − x∗∥ ≈ β∥xk − x∗∥q

I convergenta subliniara: ∥xk − x∗∥ ≤ βkq

I convergenta liniara (q = 1): ∥xk+1 − x∗∥ ≤ β∥xk − x∗∥, cu0 < β < 1

I convergenta superliniara (q = 1):∥xk+1 − x∗∥ ≤ βk∥xk − x∗∥, cu βk → 0

I convergenta patratica (q = 2): ∥xk+1 − x∗∥ ≤ β∥xk − x∗∥2,cu β > 0

Page 164: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Rata de convergenta

∥xk+1− x∗∥ ≈ β∥xk − x∗∥q ⇐⇒ distanta se reduce cu q zecimale

I convergenta subliniara: xk = 1k ⇒ (1; 0.5; 0.33; 0.25; 0.2)

I conv. liniara: xk = 13k

⇒ (0.33; 0.11; 0.03; 0.01; 0.004)I conv. superliniara: xk = 1

3k! ⇒ (1; 0.16; 0.05; 0.01; 0.002)I conv. patratica: xk=

1

32k⇒(0.1; 0.01; 0.001; 0.0002; 0.00001)

1 2 3 4 5 6 7 8 9 1010

−10

10−8

10−6

10−4

10−2

100

k

x k

subliniaraliniarasuperliniarapatratica

Page 165: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta metodelor de optimizare

Definitie. Se da: spatiul metric (X , ρ), submultimea S ⊆ X simetoda M de tip aplicatie punct-multime (M : X → 2X ). Definimfunctia descrescatoare ϕ : X → R pentru perechea (S ,M):

I ∀x ∈ S si y ∈ M(x) avem ϕ(y) ≤ ϕ(x)

I ∀x ∈ S si y ∈ M(x) avem ϕ(y) < ϕ(x)

Exemplu: pentru problema minx f (x), definimS = x : ∇f (x) = 0 (multimea punctelor stationare) si ϕ = f (deobicei o metoda de optimizare alege xk+1 a.i. f (xk+1) ≤ f (xk))

Definitie. O aplicatie punct-multime M : X → 2X este inchisa inx0 daca pentru orice xk → x0 si yk → y0 cu yk ∈ M(xk) avemy0 ∈ M(x0). M este inchisa daca este inchisa in toate puncteledin X .

Exemplu: aplicatia punct-multime xk+1 ∈ [−|xk |, |xk |] este inchisa

Page 166: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta metodelor de optimizare

Theorema de convergenta generala.Fir sirul xk+1 ∈ M(xk) iar S multimea solutiilor, satisfacand:

I xk se afla intr-o multime compacta

I M este aplicatie punct-multime inchisa

I exista o functie continua descrescatoare ϕ pentru (M, S)

Atunci punctele limita ale sirului xk apartin multimii solutiilor S .

Page 167: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de descrestere

xk+1 = xk + αkdk ,

unde dk este directie de descrestere pentru f in xk , i.e.

∇f (xk)Tdk < 0

pentru αk ⇓ suficient de mic

f (xk+1) ≤ f (xk)

x1

x 2

x

x+α d

∇ f(x)

d

Page 168: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de descresterexk+1 = xk + αkdk =⇒ ∇f (xk)

Tdk < 0

Strategii de alegerea a pasului αk

I metoda ideala: αk = argminα≥0 f (xk + αdk)I metoda Wolfe:

(W 1) : f (xk + αkdk) ≤ f (xk) + c1αk∇f (xk)Tdk cu c1 ∈ (0, 1)

(W 2) : ∇f (xk + αkdk)Tdk ≥ c2∇f (xk)

Tdk cu c1 < c2 < 1

I metoda backtracking : alegem α > 0 si ρ, c1 ∈ (0, 1)cat timp f (xk + αdk) > f (xk) + c1αk∇f (xk)

Tdk ⇒ α = ρα

α

α acceptabil

panta dorita: c2 ∇ f(x

k)Td

k

Conditiile Wolfe:

f(xk+α

k d

k)≤ f(x

k)+c

k ∇ f(x

k)T d

k

∇ f(xk+α

k d

k)T d

k ≥ c

2 ∇ f(x

k)T d

k0<c

1<c

2<1

f(xk)+c

1 α ∇ f(x

k)T d

k

Page 169: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz

Fie o functie continuu differentiabila f (i.e. f ∈ C1), atuncigradientul ∇f este continuu Lipschitz cu parametrul L > 0 daca:

∥∇f (x)−∇f (y)∥ ≤ L∥x − y∥ ∀x , y ∈ domf (1)

Lema 1: Relatia de Lipschitz (1) implica

|f (y)− f (x)− ⟨∇f (x), y − x⟩| ≤ L

2∥x − y∥2 ∀x , y

Observatie: aceasta relatie este universal folosita in ratele deconvergenta ale algoritmilor de ordinul I!

Lema 2: In cazult functiilor de doua ori diferentiabile (i.e.f ∈ C2), relatia de Lipschitz (1) este echivalenta cu

∇2f (x) ≼ LIn ⇐⇒ ∥∇2f (x)∥ ≤ L ∀x ∈ domf

Page 170: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate LipschitzDemonstratie Lema 1: Din teorema valorii medii, pentru oricex , y avem:

f (y) = f (x) +

∫ 1

0⟨∇f (x + τ(y − x)), y − x⟩dτ

= f (x)+⟨∇f (x), y − x⟩+∫ 1

0⟨∇f (x+τ(y − x))−∇f (x), y−x⟩dτ

Evaluand modulul aproximarii liniare, avem

|f (y)− f (x)− ⟨∇f (x), y − x⟩|

= |∫ 1

0⟨∇f (x + τ(y − x))−∇f (x), y − x⟩dτ |

≤∫ 1

0|⟨∇f (x + τ(y − x))−∇f (x), y − x⟩|dτ

≤∫ 1

0τL∥x − y∥2dτ =

L

2∥x − y∥2

Page 171: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - convexitate tare• Daca f are gradient Lipschitz atunci:

f (y) ≤ f (x) +∇f (x)T (y − x) +L

2∥y − x∥2

• Daca f este tare convexa atunci:

f (y) ≥ f (x) +∇f (x)T (y − x) +σ

2∥y − x∥2

• Daca f tare convexa si gradient Lipschitz atunci co-coercivitate:

⟨∇f (y)−∇f (x), y−x⟩ ≥ σL

σ + L∥x−y∥2+ 1

σ + L∥∇f (y)−∇f (x)∥2

Page 172: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - Exemplu 1

Fie f : Rn → R o functie patratica, i.e.

f (x) =1

2xTQx + ⟨q, x⟩.

Observam expresia gradientului ∇f (x) = Qx + q.

Aproximam constanta Lipschitz a functiei f :

∥Qx + q − Qy − q∥ = ∥Q(x − y)∥ ≤ ∥Q∥∥x − y∥ = L∥x − y∥

In concluzie, pentru functiile patratice constanta Lipschitz este:

L = ∥Q∥ = |λmax(Q)|

Exemplu: daca Q = diag([q1 q2]), cu q1 > q2 > 0, atunciconstanta Lipscithz L = q1 si constanta de convexitate tare σ = q2.

Page 173: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - Exemplu 2

Fie f : Rn → R definita de

f (x) = log(1 + ea

T x).

Observam expresia gradientului si a matricii Hessiene

∇f (x) =ea

T x

1 + eaT xa ∇2f (x) =

eaT x

(1 + eaT x)2aaT

Pentru orice constanta pozitiva c > 0 avem c(1+c)2

≤ 14 , deci

∥∇2f (x)∥ =ea

T x

(1 + eaT x)2∥aaT∥ ≤ ∥a∥2

4= L

Page 174: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta metodelor de descrestereTeorema de convergenta globala. Metoda de descrestere, cupasul satisfacand conditiile Wolfe, aplicata problemei (UNLP) cufunctia obiectiv marginita inferior si avand gradientul Lipschitz areurmatoarea convergenta globala:

∞∑k=0

cos2 θk∥∇f (xk)∥2 < ∞,

unde θk este unghiul facut de directia dk cu gradientul ∇f (xk).Demonstratie:Din conditia Wolfe (W2) avem:

(∇f (xk+1)−∇f (xk))Tdk ≥ (c2 − 1)∇f (xk)

Tdk .

Aplicand inegalitatea Cauchy-Schwartz obtinem:

∥∇f (xk+1)−∇f (xk)∥ · ∥dk∥ ≥ (c2 − 1)∇f (xk)Tdk .

Din proprietatea de Lipschitz gradient avem:

∥∇f (xk+1)−∇f (xk)∥ ≤ L∥xk+1 − xk∥ = Lαk∥dk∥

Page 175: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta metodelor de descrestereDemonstratie (continuare):Inlocuim in relatia anterioara ultima inegalitate:

Lαk∥dk∥2 ≥ (c2 − 1)∇f (xk)Tdk ,

i.e.

αk ≥ c2 − 1

L

∇f (xk)Tdk

∥dk∥2.

Din conditia Wolfe (W1) avem:

f (xk+1) ≤ f (xk) + c1(∇f (xk)

Tdk)2

∥dk∥2c2 − 1

L

ceea ce conduce la

f (xk+1) ≤ f (xk)− c cos2 θk∥∇f (xk)∥2,unde c = c1(1− c2)/L. Insumand de la k = 0 la N − 1 obtinem

f (xN) ≤ f (x0)− cN−1∑j=0

cos2 θj∥∇f (xj)∥2.

In final, tinem cont ca f este marginita inferior si luam N → ∞.

Page 176: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs VIMetode de ordinul I

Ion Necoara

2014

Page 177: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Clasificare metode de optimizare

Informatia ce indica comportamentul unei functii f ∈ Rn → Rintr-un punct x ∈ Rn se poate clasifica:

I Informatie de ordin 0: f (x)

I Informatie de ordin 1: f (x),∇f (x)

I Informatie de ordin 2: f (x),∇f (x),∇2f (x)

I . . .

Fie algoritmul iterativ definit de xk+1 = M(xk); in functie deordinul informatiei utilizate in expresia lui M:

I Metode de ordin 0: f (xk)

I Metode de ordin 1: f (xk),∇f (xk)

I Metode de ordin 2: f (xk),∇f (xk),∇2f (xk)

I . . .

Page 178: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Istoric - Metode de ordinul I

Cea mai “simpla” metoda de ordinul I: Metoda Gradient

I Prima aparitie in lucrarea [1] a luiAugustin-Louis Cauchy, 1847

I Cauchy rezolva un sistem neliniarde ecuatii cu 6 necunoscute,utilizand Metoda Gradient

[1] A. Cauchy. Methode generale pour la resolution des systemesdequations simultanees. C. R. Acad. Sci. Paris, 25:536-538, 1847

Page 179: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Istoric - Metode de ordinul I

Rata de convergenta slaba a metodei gradient reprezinta motivatiadezvoltarii de alte metode de ordin I cu performante superioare

I Metoda de Gradienti Conjugati -autori independenti Lanczos,Hestenes, Stiefel (1952)• QP convex solutia in n iteratii

I Metoda de Gradient Accelerat -dezvoltata de Yurii Nesterov (1983)

E.g. metoda de gradient accelerat este cu un ordin mai rapidadecat gradientul clasic in cazul problemelor convexe:• O(LR

2

k ) → O(LR2

k2 ) (sublinear - gradient Lipschitz)

• O((L−σL+σ )

k) → O((1−√

σL )

k) (liniar - tare convex + grad. Lip.)

Page 180: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda GradientFie functia f : Rn → R diferentiabila.

(UNLP) : minx∈Rn

f (x)

Iteratie Metoda Gradient:xk+1 = xk − αk∇f (xk)Complexitate pe iteratieO(n) daca evaluarea ∇f (x)este ieftina! Metoda gra-dient rezolva probleme de109 variabile din motoare decautare, procesarea de imagine(www.acse.pub.ro/person/ion-necoara)

x1

x 2

x

x+α d

∇ f(x)

d

I Interpretare: metoda de descrestere cu directiad=−∇f (xk), deci f (xk+1)≤ f (xk) pentru αk suficient de mic

I Numeroase variante de alegere a pasului αk : backtracking,conditii Wolfe, pas constant, pas ideal

I Punct initial x0 arbitrar, criteriu de oprire e.g. ∥∇f (xk)∥ ≤ ϵ

Page 181: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda gradient

Page 182: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient

Iteratie Metoda Gradient:xk+1 = xk − αk∇f (xk)

x1

x 2

x

x+α d

∇ f(x)

d

I Interpretare: iteratia metodei gradient se obtine dinminimizarea unei aproximari patratice a functiei obiectiv f

xk+1 = arg minx∈Rn

f (xk) + ⟨∇f (xk), x − xk⟩+1

2αk∥x − xk∥2

• Aproximare patraticafolosind numai ∇f (x), nue nevoie de f (x) (vezi ase-manarea cu metoda falseipozitii cazul scalar)

f(x)

xxk+1

xk

Page 183: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Convergenta globala generala

Teorema 1: Daca urmatoarele conditii sunt satisfacute:

(i) f diferentiabila cu ∇f continuu.

(ii) multimea subnivel Sf (x0) = x ∈ Rn : f (x) ≤ f (x0) estecompacta pentru orice punct initial x0

(iii) lungimea pasului αk satisface prima conditie Wolfe (W1),

atunci orice punct limita al sirului xk generat de metoda gradienteste punct stationar pentru problema (UNLP).

Demonstratie: Demonstratia se bazeaza, in principal, pe Teoremade Convergenta Generala prezentata in cursul precedent.

Page 184: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz

Fie o functie continuu diferentiabila f (i.e. f ∈ C1), atuncigradientul ∇f este continuu Lipschitz cu parametrul L > 0 daca:

∥∇f (x)−∇f (y)∥ ≤ L∥x − y∥ ∀x , y ∈ domf (1)

Teorema 2: Relatia de Lipschitz (1) implica

|f (y)− f (x)− ⟨∇f (x), y − x⟩| ≤ L

2∥x − y∥2 ∀x , y

Observatie: aceasta relatie este universal folosita in ratele deconvergenta ale algoritmilor de ordinul I!

Teorema 3: In cazul functiilor de doua ori diferentiabile, relatia deLipschitz (1) este echivalenta cu

∥∇2f (x)∥ ≤ L ∀x ∈ domf

Page 185: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - convexitate tare• Daca f are gradient Lipschitz atunci:

f (y) ≤ f (x) +∇f (x)T (y − x) +L

2∥y − x∥2

• Daca f este tare convexa atunci:

f (y) ≥ f (x) +∇f (x)T (y − x) +σ

2∥y − x∥2

• Daca f tare convexa si gradient Lipschitz atunci co-coercivitate:

⟨∇f (y)−∇f (x), y−x⟩ ≥ σL

σ + L∥x−y∥2+ 1

σ + L∥∇f (y)−∇f (x)∥2

Page 186: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - Exemplu 1

Fie f : Rn → R o functie patratica, i.e.

f (x) =1

2xTQx + ⟨q, x⟩.

Observam expresia gradientului ∇f (x) = Qx + q.

Aproximam constanta Lipschitz a functiei f :

∥Qx + q − Qy − q∥ = ∥Q(x − y)∥ ≤ ∥Q∥∥x − y∥ = L∥x − y∥

In concluzie, pentru functiile patratice constanta Lipschitz este:

L = ∥Q∥ = λmax(Q)

Page 187: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Continuitate Lipschitz - Exemplu 2

Fie f : Rn → R definita de

f (x) = log(1 + ea

T x).

Observam expresia gradientului si a matricii Hessiene

∇f (x) =ea

T x

1 + eaT xa ∇2f (x) =

eaT x

(1 + eaT x)2aaT

Pentru orice constanta pozitiva c > 0 avem c(1+c)2

≤ 14 , deci

∥∇2f (x)∥ =ea

T x

(1 + eaT x)2∥aaT∥ ≤ ∥a∥2

4= L

Page 188: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Convergenta globala sub Lipschitz

Teorema 4: Fie f diferentiabila cu ∇f Lipschitz continuu(constanta Lipschitz L > 0) si marginita inferior. Daca alegemlungimea pasului αk astfel incat satisface conditiile Wolfe, atuncisirul xk generat de metoda gradient satisface:

limk→∞

∇f (xk) = 0.

Demonstratie: Se observa ca unghiul gradientului fata de directiametodei gradient (antigradient) este dat de θk = π.Din Teorema de Convergenta Globala a metodele de descrestereavem: ∑

k≥0

cos2 θk∥∇f (xk)∥2 =∑k≥0

∥∇f (xk)∥2 < ∞.

Rezulta: ∇f (xk) → 0 cand k → ∞.

Page 189: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta I (globala)

Teorema 5:

I Fie f diferentiabila cu ∇f Lipschitz continuu (constantaLipschitz L > 0)

I Alegem lungimea pasului αk = 1L

Atunci rata de convergenta globala a sirului xk generat de metodagradient este subliniara, data de:

min0≤i≤k

∥∇f (xi )∥ ≤ 1√k

√2L(f (x0)− f ∗)

Observatie: daca dorim acuratete ϵ, i.e. ∥∇f (x)∥ ≤ ϵ cate iteratiitrebuie sa facem?

1√k

√2L(f (x0)− f ∗) ≤ ϵ =⇒ k =

2L(f (x0)− f ∗)

ϵ2

Spunem: rata de convergenta este de ordinul O( 1√k) sau O( 1

ϵ2)

Page 190: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta I (globala)Demonstratie Teorema 5:Sub presupunerea ca ∇f Lipschitz continuu avem:

f (y) ≤ f (x) + ⟨∇f (x), y − x⟩+ L

2∥y − x∥2 x , y ∈ domf .

Considerand x = xk , y = xk+1 = xk − (1/L)∇f (xk) avem:

f (xk+1) ≤ f (xk)−1

2L∥∇f (xk)∥2.

Insumam dupa i = 0, . . . k − 1 si rezulta

1

2L

k−1∑i=0

∥∇f (xi )∥2 ≤ f (x0)− f (xk) ≤ f (x0)− f ∗

In concluzie, observam

k min0≤i≤n

∥∇f (xi )∥2 ≤k−1∑i=0

∥∇f (xi )∥2 ≤ 2L(f (x0)− f ∗)

Page 191: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta II (locala)Teorema 6:

I Fie f diferentiabila cu ∇f Lipschitz continuu (constantaLipschitz L > 0)

I Exista un punct de minim local x∗, astfel incat Hessiana inacest punct satisface

σIn ≼ ∇2f (x∗) ≼ LIn

I Punctul initial x0 al iteratiei metodei gradient cu pasαk = 2

σ+L este suficient de aproape de punctul de minim, i.e.

∥x0 − x∗∥ ≤ 2σ

L

Atunci rata de convergenta locala a sirului xk generat de metodagradient este liniara (i.e de ordinul O

(log(1ϵ )

)), data de:

∥xk − x∗∥ ≤ β

(1− 2σ

L+ 3σ

)k

cu β > 0

Page 192: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta III (convex)Teorema 7

I Fie f functie convexa, diferentiabila cu ∇f Lipschitz continuu(constanta Lipschitz L > 0). Daca alegem lungimea pasuluiconstanta αk = 1

L , atunci rata de convergenta globala a siruluixk generat de metoda gradient este subliniara, data de:

f (xk)− f ∗ ≤ L∥x0 − x∗∥2

2k

I Daca in plus functia este tare convexa cu constanta σ > 0,atunci rata de convergenta globala a sirului xk generat demetoda gradient cu pas αk = 1

L este liniara, data de:

∥xk − x∗∥2 ≤(L− σ

L+ σ

)k

∥x0 − x∗∥2

f (xk)− f ∗ ≤ L∥x0 − x∗∥2

2

(L− σ

L+ σ

)k

Page 193: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta IIIDemonstratie Teorema 7: Daca ∇f Lipschitz continuu, atunci

f (y) ≤ f (x) + ⟨∇f (x), y − x⟩+ L

2∥y − x∥2 ∀x , y

Considerand x = xk si y = xk+1 = xk − (1/L)∇f (xk), avem:

f (xk+1) ≤ f (xk)−1

2L∥∇f (xk)∥2

≤ f ∗ + ⟨∇f (xk), xk − x∗⟩ − 1

2L∥∇f (xk)∥2

= f ∗ +L

2

(∥xk − x∗∥2 − ∥xk − x∗ − 1

L∇f (xk)∥2

)= f ∗ +

L

2

(∥xk − x∗∥2 − ∥xk+1 − x∗∥2

)Prin insumare de la k = 0, . . . ,N − 1 rezulta

N(f (xN)− f ∗) ≤N−1∑k=0

(f (xk+1)− f ∗)

≤ L

2

N−1∑k=0

(∥xk − x∗∥2 − ∥xk+1 − x∗∥2

)≤ L

2∥x0 − x∗∥2.

Page 194: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient-Rata de convergenta IIIDemonstratie Teorema 7: Daca in plus f tare convexa, atunciavem relatia de coercivitate (vezi cursul V):

⟨∇f (x)−∇f (y), x−y⟩ ≥ σL

σ + L∥x−y∥2+ 1

σ + L∥∇f (x)−∇f (y)∥2

Aceasta relatie conduce la:

∥xk+1 − x∗∥2 = ∥xk − 1/L∇f (xk)− x∗∥2

= ∥xk − x∗∥2 − 2/L⟨∇f (xk), xk − x∗⟩+ 1/L2∥∇f (xk)∥2

≤︸︷︷︸coerciva+∇f (x∗)=0

(1− 2σ

σ + L

)∥xk−x∗∥2+

(1

L2− 2

L(σ+L)

)︸ ︷︷ ︸

≤0

∥∇f (xk)∥2

≤(L− σ

L+ σ

)∥xk − x∗∥2

Pe de alta parte, in valoarea functiei (cu gradient Lischitz) avem:

f (xk)− f ∗ ≤ L

2∥xk − x∗∥2 ≤ L∥x0 − x∗∥2

2

(L− σ

L+ σ

)k

Page 195: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1

Page 196: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 197: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 198: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 199: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 200: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 201: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 202: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 203: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 204: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 205: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 206: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 207: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas constant α = 1/L

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)=⇒ convergenta liniara

I Metoda Gradient cu pas constant α = 1L

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 208: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 209: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 210: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 211: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 212: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 213: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient- Pas ideal

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

)I Metoda Gradient cu pas ideal αk = argmin

α≥0f (xk − α∇f (xk))

I Punct initial x0 =[32γ 1

], γ = 5/3.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

Page 214: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient - Exemplu nepatratic

minx∈R2

f (x)(= ex1+3x2−0.1 + ex1−3x2−0.1 + e−x1−0.1

)I functie obiectiv convexa (nu este tare convexa, nu are

gradient Lipschitz pe R2)

I Metoda Gradient cu pas backtraking / ideal

Page 215: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Alte metode de ordinul I

Rata de convergenta slaba a metodei gradient reprezinta motivatiadezvoltarii de metode cu performante superioare

I Metoda de Gradient Accelerat (Nesterov 1983) - cu un ordinmai rapida decat gradientul clasic in cazul problemelor convexe

I Metoda de Gradienti Conjugati (Lanczos, Hestenes, Stiefel1952) - pentru QP convex solutia in n iteratii

Metoda de Gradient Accelerat

xk+1 = yk −1

L∇f (yk)

yk+1 = xk+1 + βk(xk+1 − xk)

unde se iau punctele initiale x0 = y0 si βk ales in mod adecvat:

e.g. sub convexitate tare putem alege βk =√L−

√σ√

L+√σ

Observatie: Costul iteratiei similar cu cel al metodei gradientclasice!

Page 216: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient AcceleratTeorema 8

I Fie f o functie convexa, diferentiabila cu ∇f Lipschitzcontinuu (constanta Lipschitz L > 0). Rata de convergentaglobala a sirului xk generat de metoda gradient accelerat estesubliniara, data de:

f (xk)− f ∗ ≤ 4L∥x0 − x∗∥2

k2

I Daca in plus functia este tare convexa cu constanta σ > 0,atunci rata de convergenta este liniara, data de:

f (xk)− f ∗ ≤ L∥x0 − x∗∥2(1−

√σ

L

)k

Metoda gradient accelerat este cu un ordin mai rapida decatgradientul clasic in cazul problemelor convexe (R = ∥x0 − x∗∥):

• O(LR2

k ) → O(LR2

k2 ) (sublinear - gradient Lipschitz)

• O((L−σL+σ )

k) → O((1−√

σL )

k) (liniar - tare convex + grad. Lip.)

Page 217: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Accelerat• O(LR

2

k ) → O(LR2

k2 ) versus O((L−σL+σ )

k) → O((1−√

σL )

k)

Figura corespundeconstantelor:R = 10, L = 2 siσ = 0.1

0 10 20 30 40 50 60

10−4

10−2

100

102

k

f(xk) −

f*

MG(L)MGA(L)MG(L,σ)MGA(L,σ)

Se observa ca numarul de conditionare

κ =L

σ

este relativ mic (i.e. 20). Raportul κ = Lσ reprezinta numarul de

conditionare al problemei de optimizare convexe (UNLP) datoritasimilitudinii cu definitia numarului de conditionare al unei matrici

minx

f (x) (= 0.5xTQx)

atunci L = λmax = ∥Q∥ si σ = λmin = 1/∥Q−1∥

Page 218: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)

minx∈R2

f (x)

(=

1

2(0.5x21 + γx22 )

), cu γ > 1

I Functia obiectiv f tare convexa (σ = 0.5) si gradient Lipschitz(L = γ)

I Metoda Gradient cu pas constant αk = 1/L

I Metoda Gradient Accelerat cu pas constant αk = 1/L siβk = (

√L−

√σ)/(

√L+

√σ)

I Ambele metode de ordinul I converg liniar

I Punct initial x0 =[32γ 1

], γ = 5/3.

Page 219: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

1 1.5 2 2.5 32

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

k

|xk −

x* |

MGMGA

1 1.5 2 2.5 3

100.3

100.4

100.5

100.6

k

log(

|∇ f(

x k)|)

MGMGA

1 1.5 2 2.5 3

100.3

100.4

100.5

100.6

100.7

100.8

k

log(

f(xk) −

f* )

MGMGA

Page 220: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

1 1.5 2 2.5 3 3.5 41.6

1.8

2

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

k

|xk −

x* |

1 1.5 2 2.5 3 3.5 4

100.1

100.2

100.3

100.4

100.5

100.6

k

log(

|∇ f(

x k)|)

1 1.5 2 2.5 3 3.5 4

100

k

log(

f(xk) −

f* )

Page 221: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

1 2 3 4 5 61

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

1 2 3 4 5 6

100

k

log(

|∇ f(

x k)|)

1 2 3 4 5 6

100

k

log(

f(xk) −

f* )

Page 222: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

1 2 3 4 5 6 7 80.5

1

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

1 2 3 4 5 6 7 8

100

k

log(

|∇ f(

x k)|)

1 2 3 4 5 6 7 8

100

k

log(

f(xk) −

f* )

Page 223: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

1 2 3 4 5 6 7 8 9 100.5

1

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

1 2 3 4 5 6 7 8 9 10

100

k

log(

|∇ f(

x k)|)

1 2 3 4 5 6 7 8 9 1010

−2

10−1

100

101

k

log(

f(xk) −

f* )

Page 224: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

2 4 6 8 10 120

0.5

1

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

2 4 6 8 10 12

100

k

log(

|∇ f(

x k)|)

2 4 6 8 10 1210

−2

10−1

100

101

k

log(

f(x k)

− f* )

Page 225: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

2 4 6 8 10 12 14 16 18 200

0.5

1

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

2 4 6 8 10 12 14 16 18 2010

−2

10−1

100

101

k

log(

|∇ f(

x k)|)

2 4 6 8 10 12 14 16 18 2010

−3

10−2

10−1

100

101

k

log(

f(x k)

− f* )

Page 226: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 1)I Metoda Gradient cu pas constant αk = 1/LI Metoda Gradient Accelerat cu pas constant αk = 1/L si

βk = (√L−

√σ)/(

√L+

√σ)

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

5 10 15 20 25 300

0.5

1

1.5

2

2.5

3

3.5

4

k

|xk −

x* |

5 10 15 20 25 3010

−3

10−2

10−1

100

101

k

log(

|∇ f(

x k)|)

5 10 15 20 25 3010

−5

10−4

10−3

10−2

10−1

100

101

k

log(

f(x k)

− f* )

Page 227: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Gradient - Gradient Accelerat (exemplu 2)

minx∈Rn

f (x)

= logm∑j=1

eaTi x+bi

I Functia obiectiv are gradient Lipschitz, dar nu e tare convexa

I Date generate aleator cu m = 104 si n = 103

I Metoda Gradient si Gradient Accelerat cu pas αk = 1/L

Metoda Gradient accelerat nu este o metoda de descrestere!

Page 228: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradientilor Conjugati - Programare PatraticaFie problema de optimizare patratica neconstransa

minx∈Rn

1

2xTQx − ⟨q, x⟩

I Q este matrice simetrica, pozitiv definita: solutia optimax∗ = Q−1q ⇐⇒ rezolvarea sistemului Qx = q

I Definim residul r = Qx − qI Doi vectori d1 si d2 sunt Q-ortogonali daca dT

1 Qd2 = 0.I Daca d1, · · · , dn sunt Q-ortogonali (deci liniar

independenti), atunci exists scalarii αk a.i.

x∗ =n∑

k=1

αkdk cu αk =dTk Qx∗

dTk Qdk

Theorema: Fie d0, · · · , dn−1 vectori Q-ortogonali. Atuncipentru orice x0, sirul xk generat de iteratia

xk+1 = xk + αkdk cu αk = −dTk rk

dTk Qdk

converge in n pasi la x∗, i.e. xn = x∗.

Page 229: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradientilor Conjugati - Programare PatraticaMetoda Gradientilor Conjugati - QP

I Fie x0 ∈ Rn, definim d0 = −∇f (x0) = −r0 = −(Qx0 − q)

I Actualizam iteratia xk+1 = xk + αkdk , unde αk = − rTk dkdTk Qdk

I Actualizam directia dk+1 = −rk+1 + βkdk , unde βk =rTk+1Qdk

dTk Qdk

Teorema. Metoda gradientilor conjugati satisface urmatoarele:I Spand0, · · ·,dk=Spanr0, · · ·,rk=Spanr0,Qr0, · · ·,Qk r0I dT

k Qdi = 0 pentru orice i < k

I αk =rTk rk

dTk Qdk

si βk =rTk+1rk+1

rTk rk

Deoarece directiile d0, · · · , dn−1 sunt Q-ortogonale, metodaconverge la x∗ in exact n pasi! Metoda gradient (accelerat) NUconverge in numar finit de pasi la x∗ pentru QP-uri!

Page 230: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradientilor Conjugati - UNLPFie problema de optimizare neconstransa (UNLP)

minx∈Rn

f (x)

Abordare similara: Q = ∇2f (xk), rk = ∇f (xk).Metoda Gradientilor Conjugati - UNLP

I Fie x0 ∈ Rn, r0 = ∇f (x0), d0 = −∇f (x0)

I xk+1 = xk + αkdk , unde αk = − rTk dkdTk ∇2f (xk )dk

I dk+1 = −∇f (xk+1) + βkdk , unde βk =rTk+1∇

2f (xk )dk

dTk ∇2f (xk)dk

I dupa n iteratii se inlocuieste x0 = xn si se repeta procesul

In cazul general, Metoda Gradientilor Conjugati nu converge.Variante imbunatatite ce prezinta convergenta calculeaza αk cumetoda ideala si βk cu formulele:

I Fletcher-Reeves: βk =rTk+1rk+1

rTk rk

I Polak-Ribiere: βk = (rk+1−rk )T rk+1

rTk rk

Page 231: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Program Matlab - metoda gradient idealAlgoritmul MG. (Se da punctul de start x0 si acuratetea ϵ. Secalculeaza o ϵ-solutie optima pentru problema de optimizareminx f (x) (= 10x61 + 30x62 + x21 + 50x22 ) cu MG-ideal.)

0. function [·] = MG-ideal(x0, ϵ)

1. obj = @(x) 10 ∗ x(1)6 + 30 ∗ x(2)6 + x(1)2 + 50 ∗ x(2)2

2. grad = @(x) [60 ∗ x(1)5 + 2 ∗ x(1); 180 ∗ x(2)5 + 100 ∗ x(2)]3. x = x0, tg = x0

4. while(norm(grad(x)) > ϵ)

1. objα = @(α) obj(x − αgrad(x))

2. α∗ = fminbnd(objα, 0, 1)

3. x = x − α∗ ∗ grad(x); tg = [tg ; x ]

5. end while

6. x = −0.2 : 0.1 : 0.2; y = −0.2 : 0.1 : 0.2; [X ,Y ] = meshgrid(x , y)

7. Z = 10 ∗ X .6 + 30 ∗ Y .6 + X .2 + 50 ∗ Y .2

8. figure; plot(tg(1, :), tg(2, :)); hold on; contour(X ,Y ,Z )

Page 232: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs VIIMetode de ordinul II

Ion Necoara

2014

Page 233: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton

Scurt istoric: antichitateMetoda babiloniana saumetoda lui Heron: dandu-se un numar c ∈ R,aceasta metoda consta incalcularea iterativa a luix =

√c ⇔ x2 − c = 0:

xk+1 =1

2

(xk +

c

xk

)= xk −

1

2xk(x2k − c)

Este considerata drept precur-sor (caz special) al metodeiNewton. Utilizata de ba-bilonieni, descrisa prima datade catre Heron din Alexandria.

Page 234: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Scurt istoric: secolul al XVII-lea

In 1669, Isaac Newton imbunatat-este o tehnica a perturbatiilor dez-voltata de Francois Viete pentru aafla solutiile unei ecuatii F (x) =0, unde F (x) este un polinom.Avand un punct de pornire x0,ideea principala este linearizarea:

F (x0 + h) = F (x0) + F ′(x0)h

Astfel, sa se gaseasca h astfel in-cat F (x0 + h) = 0, ce conduce laiteratia :

xk+1 = xk − F ′(xk)−1F (xk) (1)

Metoda originala a lui Newton a fost pur algebrica. In 1669,Joseph Raphson considera ca F (x) nu trebuie sa fie neaparatpolinom si prezinta forma generala (1) utilizand conceptul dederivata. De aceea, metoda se numeste metoda Newton-Raphson.

Page 235: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton in OptimizareConsideram f : Rn → R si problema de optimizare aferenta:

minx∈Rn

f (x)

Din conditiile de optimalitate de ordinul I pentru problemeneconstranse amintim: x∗ este punct de minim local daca∇f (x∗) = 0 si ∇2f (x∗) ≻ 0, unde ∇2f (x∗) denota Hessiana luif (x) in punctul x∗.

Astfel, pentru a afla x∗ trebuie sa mai intai aflam solutia ecuatiei:

F (x) = ∇f (x) = 0

• Interpretare: Aplicand metoda lui Newton-Raphson in acestcaz, rezulta iteratia:

xk+1 = xk −(∇2f (xk)

)−1∇f (xk)

Page 236: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton in OptimizareFiind metoda iterativa, metoda lui Newton se poate scrie drept:

xk+1 = xk + dk

unde dk = −(∇2f (xk)

)−1∇f (xk) se numeste directia Newton

• Interpretare: daca ∇f (x)2 ≻ 0, atunci ⟨dk ,∇f (xk)⟩ < 0, i.e dkeste o directie de descrestere.• Interpretare: metoda Newton poate fi obtinuta din aproximareaTaylor de ordinul doi a functiei obiectiv f :

f (xk+1) ≈ f (xk)+∇f (xk)T (xk+1−xk)+

1

2(xk+1−xk)

T∇2f (xk)(xk+1−xk)

Urmatoarea iteratie, xk+1, trebuie sa minimizeze aproximareaTaylor, de unde rezulta:

xk+1 = argminy

f (xk) +∇f (xk)T (y − xk) +

1

2(y − xk)

T∇2f (xk)(y − xk)︸ ︷︷ ︸q(y)

Page 237: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton in OptimizareDaca ∇2f (xk) ≻ 0, atunci q(y) este o functie patratica strictconvexa. Din conditiile de optimalitate pentru probleme QP strictconvexe, rezulta:

∇q(y) = 0 ⇒ ∇f (xk) +∇2f (xk)(y − xk) = 0

Din moment ce y = xk+1, prin rezolvarea ecuatiei anterioare in yrezulta din nou iteratia:

xk+1 = xk − (∇2f (xk))−1∇f (xk)

Observatie, din moment ce directia Newton dk = xk+1 − xk , atuncise poate exprima drept:

dk = argmind

f (xk) +∇f (xk)Td +

1

2dT∇2f (xk)d .

Din nou, utilizand conditiile de optimalitate, rezulta:

dk = −(∇2f (xk)

)−1∇f (xk)

Page 238: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton in OptimizareIteratie metoda Newton prin aproximarea patratica Taylor:

f(x)

xxk+1

xk

Observatie: metoda Newton pentru functii f : R → R este chiarmetoda Newton de interpolare din cursul III:

xk+1 = argminx

q(x) = argminx

f (xk) + f ′(xk)(x−xk)+1

2f ′′(xk)(x−xk)

2

= xk −(f ′′(xk)

)−1f ′(xk)

Page 239: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Teorema (rata de convergenta locala a metodei Newton):

• fie f ∈ C 2 si x∗ un minim local ce satisface ∇f (x∗) = 0 si∇2f (x∗) ≻ 0

• fie o constanta m > 0 astfel incat: ∇2f (x∗) ≽ mIn

• presupunem ca ∇2f (x) este Lipschitz cu constanta M > 0, i.e.

∥∇2f (x)−∇2f (y)∥ ≤ M∥x − y∥ ∀x , y ∈ domf

• presupunem ca punctul initial x0 este suficient de aproape dex∗, i.e. ∥x0 − x∗∥ ≤ 2

3 · mM

Atunci iteratia Newton xk+1 = xk − (∇2f (xk))−1∇f (xk) converge

la x∗ cu rata patratica, i.e.

∥xk+1 − x∗∥ ≤ 3M

2m∥xk − x∗∥2 ∀k ≥ 0

Prima demonstratie data de Kantorovich in 1948!

Page 240: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Demonstratie: x∗ este un minim local → ∇f (x∗) = 0.Din teorema lui Taylor in forma integrala avem:

∇f (xk) = ∇f (x∗) +

∫ 1

0∇2f (x∗ + τ(xk − x∗))(xk − x∗)dτ .

Se obtine:

xk+1 − x∗ = xk − x∗ − (∇2f (xk))−1∇f (xk)

= (∇2f (xk))−1[∇2f (xk)(xk − x∗)−∇f (xk) +∇f (x∗)]

=(∇2f (xk))−1[∇2f (xk)(xk−x∗)−

∫ 1

0∇2f (x∗+τ(xk−x∗))(xk−x∗)dτ ]

= (∇2f (xk))−1

∫ 1

0[∇2f (xk)(xk−x∗)−∇2f (x∗ + τ(xk−x∗))(xk−x∗)dτ ]

= (∇2f (xk))−1

∫ 1

0[∇2f (xk)−∇2f (x∗ + τ(xk−x∗))](xk−x∗)dτ .

Page 241: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei NewtonDeoarece ∥∇2f (xk)−∇2f (x∗)∥ ≤ M∥xk − x∗∥, avem:

−M∥xk − x∗∥In ≼ ∇2f (xk)−∇2f (x∗) ≼ M∥xk − x∗∥In.

Mai mult, vom avea:

∇2f (xk) ≽ ∇2f (x∗)−M∥xk − x∗∥In ≽ mIn −M∥xk − x∗∥In ≻ 0,

sub ipoteza ca ∥xk − x∗∥ ≤ 23mM , de unde rezulta:

0 ≺ (∇2f (xk))−1 ≼ 1

m −M∥xk − x∗∥In.

Concluzionam urmatoarele:

∥xk+1 − x∗∥ = ∥(∇2f (xk))−1∥ · ∥

∫ 1

0∇2f (xk)−∇2f (x∗+τ(xk−x∗))dτ∥ · ∥xk−x∗∥

≤ 1

m −M∥xk − x∗∥

∫ 1

0M(1− τ)∥xk − x∗∥dτ∥xk − x∗∥

≤ 1

m −M∥xk − x∗∥

∫ 1

0M(1− τ)dτ∥xk − x∗∥2 ≤ 1

m −M∥xk − x∗∥M

2∥xk − x∗∥2.

Page 242: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Prin inductie se arata usor ca daca ∥x0 − x∗∥ ≤ 2m/3M, atunci∥xk − x∗∥ ≤ 2m/3M pentru orice k ≥ 0.Observam ca 1

m−M∥xk−x∗∥M2 ≤ 3M

2m < ∞ si deci obtinem

∥xk+1 − x∗∥ ≤ 3M2m ∥xk − x∗∥2.

Observatii: Consideram f (x) patratica, strict convexa, i.e.f (x) = 1

2xTQx + qT x , unde Q ≻ 0. Din conditiile de optimalitate:

∇f (x∗) = Qx∗ + q = 0 ⇒ x∗ = −Q−1q

Pornind dintr-un punct x0, si aplicand metoda Newton, rezulta:

x1 = x0−(∇2f (x0)

)−1∇f (x0) = x0−Q−1(Qx0+q) = −Q−1q = x∗,

deci pentru probleme patratice strict convexe metoda convergeintr-un singur pas.Dar metoda Newton necesita calculul inversei ∇2f (x)−1, operatiecostisitoare O(n3) pentru probleme de dimensiuni mari.

Page 243: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=1

−1

−0.5

0

0.5

1

−1−0.500.51

Page 244: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=2

−1

−0.5

0

0.5

1

−1−0.500.51

Page 245: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=3

−1

−0.5

0

0.5

1

−1−0.500.51

Page 246: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=4

−1

−0.5

0

0.5

1

−1−0.500.51

Page 247: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=5

−1

−0.5

0

0.5

1

−1−0.500.51

Page 248: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=6

−1

−0.5

0

0.5

1

−1−0.500.51

Page 249: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=7

−1

−0.5

0

0.5

1

−1−0.500.51

Page 250: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton clasic

k=8

−1

−0.5

0

0.5

1

−1−0.500.51

Page 251: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=1

−1

−0.5

0

0.5

1

−1−0.500.51

Page 252: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=2

−1

−0.5

0

0.5

1

−1−0.500.51

Page 253: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=3

−1

−0.5

0

0.5

1

−1−0.500.51

Page 254: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=4

−1

−0.5

0

0.5

1

−1−0.500.51

Page 255: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=5

−1

−0.5

0

0.5

1

−1−0.500.51

Page 256: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=6

−1

−0.5

0

0.5

1

−1−0.500.51

Page 257: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=7

−1

−0.5

0

0.5

1

−1−0.500.51

Page 258: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=8

−1

−0.5

0

0.5

1

−1−0.500.51

Page 259: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=9

−1

−0.5

0

0.5

1

−1−0.500.51

Page 260: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=10

−1

−0.5

0

0.5

1

−1−0.500.51

Page 261: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=11

−1

−0.5

0

0.5

1

−1−0.500.51

Page 262: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu backtracking

k=17

−1

−0.5

0

0.5

1

−1−0.500.51

Page 263: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu pas ideal

k=1

−1

−0.5

0

0.5

1

−1−0.500.51

Page 264: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu pas ideal

k=2

−1

−0.5

0

0.5

1

−1−0.500.51

Page 265: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu pas ideal

k=3

−1

−0.5

0

0.5

1

−1−0.500.51

Page 266: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu pas ideal

k=4

−1

−0.5

0

0.5

1

−1−0.500.51

Page 267: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Exemplu metoda Newton cu pas variabil ales in trei variante,aplicata pe f : R2 → R, f (x) = ex1+3x2−0.1+ex1−3x2−0.1 + e−x1−0.1.

Newton cu pas ideal

k=5

−1

−0.5

0

0.5

1

−1−0.500.51

Page 268: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 269: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 270: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 271: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 272: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 273: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 274: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 275: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 276: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 277: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 278: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 279: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 280: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 281: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 282: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 283: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 284: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 285: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 286: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 287: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 288: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 289: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 290: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 291: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 292: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

Page 293: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta locala a Metodei Newton

0 5 10 15 20 250

10

20

30

40

50

k

f(x k)−

f*

Newton clasicNewton idealNewton backtracking

0 5 10 15 200

20

40

60

80

100

120

140

160

k

‖∇f(x

k)‖

Newton clasicNewton idealNewton backtracking

Page 294: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta globala a Metodei NewtonDaca pornim dintr-un punct x0 ce nu se afla in vecinatatea lui x∗,metoda Newton trebuie modificata pentru a asigura convergenta:

xk+1 = xk − αk

(∇2f (xk)

)−1∇f (xk)

Pasul αk se poate alege ideal (i.e. αk = minα≥0 f (xk + αkdk)) sauprin metoda backtracking

Teorema (convergenta globala a metodei Newton):

• Fie functia obiectiv f ∈ C2 marginita inferior si cu gradientul∇f Lipschitz

• Consideram metoda Newton cu pas variabil αk ales prinbacktracking: xk+1 = xk − αk(∇2f (xk))

−1∇f (xk)

• Presupunem ca Hessiana satisface conditiaβ1In ≼ (∇2f (x))−1 ≼ β2In, unde 0 < β1 ≤ β2.

Atunci, metoda Newton produce un sir xk cu proprietatea ca∇f (xk) → 0.

Page 295: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

• Metoda gradient cu pas αk se obtine prin aproximarea Taylor,unde insa ∇2f (xk) este inlocuita cu 1

αkIn:

xk+1 = xk − αk∇f (xk)

= argminy

f (xk) +∇f (xk)T (y − xk) +

1

2αk(y − xk)

T In(y − xk)

=⇒ complexitate pe iteratie O(n) plus costul evaluarii ∇f (x)!

• Metoda Newton cu pas αk se obtine prin aproximarea Taylor deordin II:

xk+1 = xk − αk(∇2f (xk))−1∇f (xk)

=argminy

f (xk)+∇f (xk)T(y−xk)+

1

2αk(y−xk)

T∇2f (xk)(y−xk)

=⇒ complexitate pe iteratie O(n3) plus costul evaluarii ∇f (x) si∇2f (x)!

Page 296: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

minx∈R2

f (x) (= 10x61 + 30x62 + x21 + 50x22 )

function [] = gradient-Newton-ideal(x0,eps)obj = @(x)10x61 + 30x62 + x21 + 50x22;gradient = @(x)[60x51 + 2x1 ; 180x

52 + 100x2];

hessiana = @(x)[300x41 + 2 0; 0 900x42 + 100];%% Metoda Gradient cu pas ideal

x = x0;trajectoryg = [x0];while (norm(gradient(x)) > eps)

grad = gradient(x);

objα = @(α) obj(x - α grad);

α∗ = fminbnd(objα, 0, 1);

x = x - α∗ gradient(x);

trajectoryg = [trajectorygx ];end

Page 297: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

%% Metoda Newton cu pas ideal

x=x0;

trajectoryn = [x0];

while (norm(gradient(x)) > eps)

grad = gradient(x);

hess = hessiana(x);

d-newton = inv(hess)* grad;

objα = @(α) obj(x - α *d-newton);

α∗ = fminbnd(objα, 0, 1);

x = x - α∗ d-newton;

trajectoryn = [ trajectoryn x];

end

Page 298: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

x = −0.2 : 0.1 : 0.2;y = −0.2 : 0.1 : 0.2;[X,Y] = meshgrid(x,y);

Z = 10*X.^6 + 30*Y.^6 + X.^2 + 50*Y.^2;

figure

plot(trajectoryg(1,:),trajectoryg(2,:),’r+-’,’LineWidth’,3);hold on

plot(trajectoryn(1,:),trajectoryn(2,:),’k*--’,’LineWidth’,3);legend(’Gradient Method’,’Newton Method’);

hold on

contour(X,Y,Z,’ShowText’,’on’,’LineWidth’,2);

end

Page 299: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Newton cu pas ideal

k=1

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 300: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Newton cu pas ideal

k=2

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 301: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=1

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 302: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=2

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 303: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=3

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 304: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=4

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 305: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=5

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 306: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=6

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 307: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=7

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 308: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=8

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 309: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=9

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 310: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=10

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 311: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=11

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 312: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=12

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 313: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

Comparatie intre metoda Newton si metoda gradient, ambele cupas ideal, pentru f : R2 → R, f (x) = 10x61+30x62+x21+50x22

Gradient cu pas ideal

k=13

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

−0.2−0.100.10.2

Page 314: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Newton cu pas ideal

k=1

Page 315: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Newton cu pas ideal

k=2

Page 316: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=1

Page 317: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=2

Page 318: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=3

Page 319: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=4

Page 320: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=5

Page 321: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=6

Page 322: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=7

Page 323: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=8

Page 324: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=9

Page 325: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=10

Page 326: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=11

Page 327: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=12

Page 328: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton versus metoda gradient

−0.2

0

0.2

−0.2−0.1

00.1

0.20

1

2

3

Gradient cu pas ideal

k=13

Page 329: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode cvasi-Newton

• Avantajul metodei Newton: convergenta extrem de rapida

• Dezavantajul metodei Newton: foloseste informatie deHessiana ∇2f (x) si rezolvarea unui sistem liniar (inversa(∇2f (xk)

)−1) ce necesita O(n3) operatii

Metode cvasi-Newton evita calcularea Hessianei: inlocuim(∇2f (xk)

)−1cu o matrice Hk ce poate fi calculata mai usor, e.g.

in O(n2) operatii, folosind numai informatie de gradient.

Iteratie metodelor cvasi-Newton:

xk+1 = xk − αkHk∇f (xk)

unde αk se alege ideal, backtracking sau egal cu 1

Page 330: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode cvasi-Newton

Interpretare: din aproximarea Taylor avem:

∇f (xk+1) ≈ ∇f (xk) +∇2f (xk)(xk+1 − xk).

Daca aproximam ∇2f (xk) cu matricea Bk+1 = H−1k+1, obtinem

urmatoarea relatie (ecuatia secantei):

∇f (xk+1)−∇f (xk) = Bk+1(xk+1 − xk) (2)

Daca definim aproximarea de ordin II in xk+1:

q(y) = f (xk+1)+∇T f (xk+1)(y−xk+1)+1

2(y−xk+1)

TBk+1(y−xk+1)

atunci gradientul aproximarii q in xk satisface

∇q(xk) = ∇T f (xk+1) + Bk+1(xk − xk+1)

= ∇f (xk)

Page 331: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode cvasi-Newton: actualizari de rang IStrategii de actualizare a matricelor in metodele cvasi-Newton:

Actualizari de rang I:

Bk+1 = Bk + βkukuTk

Definim:

∆k = xk+1 − xk si δk = ∇f (xk+1)−∇f (xk).

Din conditia (2) (ecuatia secantei) va rezulta:

Bk+1 = Bk +1

(δk − Bk∆k)T∆k(δk − Bk∆k)(δk − Bk∆k)

T

Din formula Sherman-Morrison pentru Hk+1 = B−1k+1 obtinem:

Hk+1 = Hk +1

(∆k − Hkδk)T δk(∆k − Hkδk)(∆k − Hkδk)

T

Page 332: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode cvasi-Newton: actualizari de rang II

Actualizari de rang II: impunem (2), insa Bk+1 va fi calculat prin:

Bk+1 = arg minB=BT , B∆k=δk

∥B − Bk∥, (3)

unde consideram norma ∥A∥ = ∥W 1/2AW 1/2∥F , cu W δk = ∆k .

Problema are solutie analitica, rezultand metoda (DFP)Davidon-Fletcher-Powell:

Bk+1 = (In−βkδk∆Tk )Bk(In−βk∆kδ

Tk )+βkδkδ

Tk , unde βk =

1

∆Tk δk

Utilizand iarasi formula Sherman-Morrison pentru Hk+1 = B−1k+1,

obtinem:

Hk+1 = Hk +1

∆Tk δk

∆k∆Tk − 1

δTk Hkδk(Hkδk)(Hkδk)

T

Page 333: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode cvasi-Newton: actualizari de rang IIDaca in loc de problema (3), utilizam problema:

Hk+1 = arg minH=HT , Hδk=∆k

∥H − Hk∥,

unde consideram norma ∥A∥ = ∥W 1/2AW 1/2∥F , cu W∆k = δk .

Problema are solutie analitica, rezultand metodaBroyden-Fletcher-Goldfarb-Shanno (BFGS):

Hk+1 = Hk −1

∆Tk δk

((Hkδk)∆

Tk +∆k(Hkδk)

T)+ βk(∆k∆

Tk )

βk =1

∆Tk δk

[1 +

δTk δk

∆Tk δk

]• daca H0 ≻ 0 si ∆T

0 δ0 > 0 atunci H1 ≻ 0 (i.e. updatarileBFGS pastreaza pozitiv definitatea)

• cost pe iteratie: O(n2) plus costul calcularii ∇f (x)• BFGS cu pas α = 1 pe cazul scalar coincide cu metoda falseipozitii

Page 334: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Teorema (rata de convergenta a metodelor cvasi-Newton):

• fie x∗ un punct ce satisface conditiile suficiente deoptimalitate de ordinul II

• presupunem iteratia forma xk+1 = xk − Hk∇f (xk)

• Hk este inversabila si satisface conditia Lipschitz:

∥Hk(∇2f (xk)−∇2f (y))∥ ≤ M∥xk − y∥ ∀y ∈ Rn,

si conditia de compatibilitate:

∥Hk(∇2f (xk)− H−1k )∥ ≤ γk (4)

cu 0 < M < ∞ si γk ≤ γ < 1.

• de asemenea, presupunem ca:

∥x0 − x∗∥ ≤ 2(1− γ)

M. (5)

Atunci xk converge la x∗ cu rata superliniara sub ipoteza caγk → 0 sau rata liniara daca γk > γ > 0.

Page 335: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Comparatie intre metoda Newton si BFGSConsideram problema (UNLP):

minx∈Rn

cT x −m∑j=1

log(bi − aTi x)

Generam datele aleator pentru dimensiunea n = 100 si m = 500

• cost pe iteratie pentru metoda Newton: O(n3) plus costulcalcularii ∇f (x) si ∇2f (x)

• cost pe iteratie pentru metoda BFGS: O(n2) plus costulcalcularii ∇f (x)

Page 336: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Comparatie intre metode de ordin I si II

• metoda gradient: converge cel mult liniar si costul peiteratie este O(n) (operatii cu vectori) plus evaluareagradientului ∇f (x) =⇒ eficient in rezolvarea problemelor defoarte mari dimensiuni n = 109

• metoda Newton: converge patratic si costul pe iteratie esteO(n3) (rezolvarea unui sistem liniar) plus evaluareagradientului ∇f (x) si Hessianei ∇2f (x) =⇒ eficient inrezolvarea problemelor de mici dimensiuni n ≤ 103

• metoda cvasi-Newton: converge superliniar si costul peiteratie este O(n2) (inmultire matrice-vector) plus evaluareagradientului ∇f (x) =⇒ eficient in rezolvarea problemelor demari dimensiuni n = 106

Page 337: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in date si solutie: caz compozit

minx∈Rn

fτ (x) (= f (x) + τ∥x∥1) ⇒ f diferentiabila

Exemplu: sparse data fitting (aproximarea unui set de date cufunctie liniara): set de date (ai , bi ) a.i. bi depinde linear de ai :

bi = aTi x + ei ∀i = 1 : m

cu ei o eroare datorata procesului de sampling ⇒ e.g. CMMP rar

minx∈Rn

fτ (x) (= ∥Ax − b∥2 + τ∥x∥1) ⇒ A ∈ Rm×n rara

Aplicatii:• Magnetic Resonance Imaging (MRI): instrument medicalimagistic folosit pt. scana anatomia si fiziologia unui organism

• Image inpainting: technica de reconstructie imagini degradate• Image deblurring: instrument de procesare imagine ptindeparta neclaritatea cauzate de fenomene naturale (miscare)

• Genome-Wide Association study (GWA): comparare ADNintre 2 grupuri de persoane (cu/fara o boala), in scopul de ainvestiga factorii de care depinde o boala

• Estimarea temperaturii globale pe baza datelor istorice

Page 338: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in date si solutie: abordare

minx∈Rn

fτ (x) (= f (x) + τ∥x∥1) ⇒ f diferentiabila

Aproximam f cu o functie patratica si pastram nealterat τ∥x∥1:

xk+1=arg minx∈Rn

qτ (x ; xk)(= f (xk)+⟨∇f (xk), x−xk⟩+1

2∥x−xk∥2Hk

+τ∥x∥1)

• Hk = LIn unde L constanta Lipschitz a lui ∇f ⇒ metodagradient (accelerat): Nesterov’07

• Hk = diag(L1, · · · , Ln), unde Li constanta Lipschitz a lui ∇i f⇒ metoda gradient pe coordonate: Nesterov’10, Necoara’11

• Hk = ∇2f (xk) si inlocuieste functia nediferentiabila ∥x∥1 cu

aproximarea diferentiabila (Huber) |xi | ↔√

x2i + µ2 − µ ⇒metoda Newton: Gondzio’15

Probleme de data fitting cer analiza Big Data (terabytes of data):trilioane de varibile (n) ⇒ Cray XC30 MPP supercomputer(ARCHER in Edinburgh este al 25-lea in top 500): 118.080 corescu performanta 1.642 TFlops/s on LINPACK benchmark.

Page 339: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in date si solutie: rezultate (Gondzio’15)ARCHER in Edinburgh: 25-lea in top 500 cu 118.080 cores

Comparatie metode: gradient pe coordonate paralel (PCDM),gradient accelerat (FISTA), Newton (pdNCG) cu gradient conjugatpt. rezolvare aproximativa sistem liniar si quasi-Newton (PSSgb)

Page 340: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs VIIIProbleme de estimare si fitting

Ion Necoara

2014

Page 341: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formularea problemei

Problemele de estimare si fitting ⇒ probleme cu structura, de tipulcelor mai mici patrate (CMMP):

M(x) = η︸ ︷︷ ︸forma algebrica

⇔ minx∈Rn

1

2∥η −M(x)∥2︸ ︷︷ ︸

forma optimizare

I η ∈ Rm ⇒ m masuratori;

I M : Rn → Rm ⇒ modelul considerat;

I x ∈ Rn ⇒ parametrii modelului.

Problema forward: pentru intrari date ale modelului M(x) sedetermina iesirile corespunzatoare.Problema inversa: pentru un vector de iesiri η se cauta intrarilecorespunzatoare, folosind un model ce depinde de setul deparametrii x .Aplicatii ingineresti: aproximare de functii, identificarea proceselordinamice, prognoza meteo...

Page 342: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Istoric - CMMP

Problema CMMP isi are radacinile in domeniile astronomie sigeodezie, aparitia sa fiind motivata de aspecte legate de navigareape oceane, elementul cheie in dezvoltarea sa reprezentandu-lproblema descrierii traiectoriei astrelor pe orbita.

In 1809 Carl Friedrich Gauss ⇒ deter-minarea orbitei planetei “strumf” Ceres⇒ sustine ca dispunea de aceasta metodainca din 1795.

Prima expunere concisa a metodeiii apartine lui Adrien-Marie Legendre(1805).

1810⇒ Pierre Simon Laplace⇒ teoremade limita centrala ce ofera o corelatie in-tre problema CMMP si distributia nor-mala.

Page 343: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice

Consideram un set de m date (ti , ηi ), unde:

I ti ⇒ anul efectuarii masuratorilor

I ηi ⇒ populatia masurata in anul ti

Pentru aproximarea cresterii demografice este propus un modelexponential de forma:

Mi (x1, x2) = x1 expx2ti ,

cu x = (x1, x2) reprezentand setul de parametrii ai modelului.Notam η = [η1 · · · ηm]T si M(x) = [M1(x) · · ·Mm(x)]

T ⇒estimarea parametrilor functiei cresterii demografice M(x) seformuleaza ca o problema CMMP neliniara.

Page 344: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema CMMP - Cazul liniarFrecvent, in aplicatii de estimare si fitting, modelul M este liniar,i.e. de forma M(x) = Jx .

Jx = η︸ ︷︷ ︸forma algebrica

⇔ minx∈Rn

1

2∥η − Jx∥2︸ ︷︷ ︸

forma optimizare

In acest caz, functia obiectiv f (x) = 12∥η − Jx∥2 este o functie

patratica convexa, avand Hessiana ∇2f (x) = JT J < 0 iarproblema CMMP liniara devine:

minx∈Rn

f (x)

(=

1

2∥η − Jx∥2

).

Cum f este convexa, atunci conditiile de optimalitate de ordinul I∇f (x) = 0 sunt si suficiente ⇒ orice solutie a sistemuluiJT Jx − JTη = 0 este punct de minim global a problemei CMMP.De exemplu, daca rang(J) = n, avem JT J ≻ 0, deci:

JT Jx∗ − JTη = 0 ⇐⇒ x∗ =(JT J

)−1JTη.

Page 345: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Pseudo-inversa Moore-Penrose

Definitie (Pseudo-Inversa Moore-Penrose)Fie matricea J ∈ Rm×n de rang r , avand descompunerea valorilorsingulare (DVS) data de J = UΣV T . Atunci, pseudo-inversaMoore-Penrose J+ are expresia:

J+ = VΣ+UT ,

unde Σ = diag(σ1, . . . , σr , 0, . . . , 0), cu σ1, . . . , σr fiind valorilesingulare ale matricii J, iar Σ+ = diag(σ−1

1 , . . . , σ−1r , 0, . . . , 0)

Page 346: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Pseudo-inversa Moore-Penrose (2)

Teorema: Daca rang(J) = n, atunci J+ =(JT J

)−1JT .

Daca rang(J) = m, atunci J+ = JT(JJT

)−1.

Demonstratie:(JT J

)−1JT =

(VΣTUTUΣV T

)−1VΣTUT

= V(ΣTΣ

)−1V TVΣTUT

= V(ΣTΣ

)−1ΣTUT = VΣ+UT .

Putem observa ca in cazul rang(J) = n, coloanele lui J sunt liniarindependente si deci JT J este inversabila. Analog, pentrurang(J) = m, JJT este inversabila.

Page 347: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema CMMP - Cazul liniar

Problema CMMP: sistemul liniar Jx = η in cazul generalrang J < min(m, n) se formuleaza in sens CMMP astfel:

(CMMP) : Jx = η︸ ︷︷ ︸forma algebrica

⇔ minx∈Rn, ∥η−Jx∥=minim

∥x∥︸ ︷︷ ︸forma optimizare

Teorema. In cazul general r = rang J < min(m, n) pseudosolutianormala unic determinata a problemei (CMMP) are expresia:

x∗ = J+η = VΣ+UTη =r∑

j=1

uTj b

σjvj

Mai mult, daca:(i) rang J = n atunci problema (CMMP) se rescrie caminx∈Rn

∥Jx − η∥2 a carei solutie este x∗ = J+η = (JT J)−1JTη

(ii) rang J = m atunci problema (CMMP) se rescrie camin

x∈Rn:Jx=η∥x∥2 a carei solutie este x∗ = J+η = JT (JJT )−1η

Page 348: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema CMMP - Cazul liniar

Demonstratie: Cum J = UΣV T , definim d = UTη = [d′d

′′]T si

y = V T x = [y′y

′′]T , unde d

′= d(1 : r), d

′′= d(r + 1 : m).

Similar pentru y′si y

′′. Avem:

∥Jx − η∥2 = ∥UΣV T x − η∥2 = ∥Σy − d∥2 = ∥Σ1y′ − d

′∥2 + ∥d ′′∥2.

Aceasta expresie este minima pentru y′= Σ−1

1 d′si y

′′arbitrar.

Dinstre toti vectorii y de aceasta forma, cel de norma minimacorespunde lui y

′′= 0. Cum ∥x∥ = ∥y∥, rezulta ca vectorul de

norma minima care minimizeaza reziduul ∥Jx − η∥ este:

x∗ = V

[Σ−11 d

0

]= V

[Σ−11 00 0

]d = VΣ+UTη = J+η

Page 349: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1 - Problema mediei

Fie urmatoarea problema de optimizare:

minx∈R

1

2

M∑1=1

(ηi − x) .

In acest caz, putem observa ca η = [η1 · · · ηm]T si J = [1 · · · 1]T .Cum JT J = m avem:

J+ =(JT J

)−1JT =

1

m[1 · · · 1] .

Rezulta de aici ca punctul de minim x∗ ⇒ media η a punctelor ηi :

x∗ = J+η =1

m

M∑i=1

ηi = η.

Page 350: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 2 - Regresia liniara

Consideram setul de date t1, . . . , tm si valorile corespunzatoareη1, . . . , ηm.Dorim sa gasim vectorul parametrilor x = (x1, x2) a.i. polinomul deordinul intai p(t; x) = x1 + x2t realizeaza predictia lui η lamomentul t. Acesta poate fi gasit rezolvand problema:

minx∈R2

1

2

m∑i=1

(ηi − p(ti ; x))2 = min

x∈R2

1

2

∥∥∥∥η − J

[x1x2

]∥∥∥∥2 ,

unde J =

1 t1...

...1 tn

. Rezolvand problema se poate obtine solutia

x∗ = 1σ2t

[t2η − tηt−tη + ηt

]=

[η − t

ση

σtρ

ση

σtρ

], unde ση si σt reprezinta

variantele lui η si resepctiv t, iar ρ coeficientul de corelatie alacestora.

Page 351: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - Identificarea sistemlorConsideram un sistem intrare-iesire:

Pentru sistemul considerat dispunem de 40 de masuratoriintrare-iesire u(t), y(t):

15 20 25 30 35 40

t0 5 10 15 20 25 30 35 40

2.5

3

3.5

4

4.5

5

5.5

6

6.5

7

7.5

t

y(t)

Page 352: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - Identificarea sistemelor(2)

Dorim sa aproximam sistemul printr-un model intrare-iesire deforma ARMA:

ymodel(t) = x1u(t)+x2u(t−1)+x3u(t−2)+x4u(t−3)+x5u(t−4).

Gasirea setului de parametrii x = [x1 · · · x5]T ai modelului poate firealizata prin rezolvarea unei probleme CMMP liniare cuη = [y(5) y(6) · · · y(40)]T :

J =

u(5) u(4) u(3) u(2) u(1)u(6) u(5) u(4) u(3) u(2)u(7) u(6) u(5) u(4) u(3)...

......

......

u(40) u(39) u(38) u(37) u(36)

Page 353: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - Identificarea sistemelor(3)

Raspunsul modelului estimat:

5 10 15 20 25 30 35 40

Raspunsul estimat si raspunsul real

model(t)

(t)

Page 354: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

CMMP liniare prost conditionate

In cazul JT J inversabila, multimea solutiilor optime X ∗ contine un

singur punct, i.e. X ∗ =(

JT J)−1

Jη.

Daca JT J nu este inversabila, atunci o infinitate de solutii:

X ∗ = x ∈ Rn : ∇f (x) = 0 =x ∈ Rn : JT Jx − JTη = 0

.

Ne intereseaza solutia din X ∗ de norma minima ⇒ minx∈X∗

12∥x∥

2.

Aceasta solutie este data de x∗ = J+η si poate fi determinatarezolvand o problema regularizata CMMP liniara cu o constantaβ > 0 suficient de mica:

minx∈Rn

f (x)

(=

1

2∥η − Jx∥2 + β

2∥x∥2

),

Page 355: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

CMMP liniare prost conditionate (2)

Solutia problemei poate fi gasita prin rezolvarea sistemului obtinutdin conditiile de optimalitate:

∇f (x) = JT Jx − JTη + βx =(JT J + βIn

)x − JTη = 0

⇒ x∗ =(JT J + βIn

)−1JTη.

Lema: Pentru o matrice J ∈ Rm×n avem:

limβ→0

(JT J + βIn

)−1JT = J+.

Page 356: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

CMMP liniare prost conditionate (3)

Demonstratie: Utilizand descompunerea DVS corespunzatoarematricei J = UΣV T avem:(

JT J + βIn)−1

JT = V(ΣTΣ+ βIn

)−1ΣTUT .

Evaluand partea dreapta a ecuatiei obtinem:

(JT J + βIn

)−1JT = V

σ1

σ21+β

. . .σr

σ2r +β

UT .

Tinand cont de definitia lui Σ+ si J+ se poate observa ca pentru

β → 0 avem(JT J + βIn

)−1JT → J+.

Page 357: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formularea statistica a problemelor CMMP liniare

Problema CMMP liniara poate fi interpretata in sensul determinariiunui set de parametrii x ∈ Rn ce explica masuratorile perturbate ηin cel mai bun mod.Pentru η1, . . . , ηm valori observate ale unei variabile aleatorii avanddensitatea P(η|x) ce depinde de setul de parametrii x , presupunem:

ηi = Mi (x) + βi ,

unde:

I x ⇒ valoarea adevarata a parametrului x;

I βi ⇒ zgomot Gaussian de medie E(βi ) = 0 si variantaE(βiβi ) = σ2

i .

I βi si βj sunt independente.

Page 358: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda verosimilitatii maxime

Introdusa de Fischer in 1912 ⇒ gasirea estimatorului deverosimilitate maxima x∗ a lui x ce maximizeaza functia deverosimilitate:

P(η|x) =m∏i=1

P(ηi |x) =m∏i=1

exp

(− (ηi −Mi (x))

2

2σ2i

).

In general P(η|x) si logP(η|x) isi ating maximul in acelasi punctx∗ ⇒ problema echivalenta:

x∗ = arg maxx∈Rn

P(η|x) = arg minx∈Rn

− log (P(η|x))

= arg minx∈Rn

1

2∥S−1 (η −M(x)) ∥2,

unde S = diag(σ21, . . . , σ

2m).

Page 359: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema CMMP - Cazul neliniarProblemele CMMP liniare ⇒ metode numerice matriceale clasice,e.g. factorizarea QR:

JT Jx = JTη si J = QR ⇔(QR)TQRx = RTQTQRx = RTRx = RTQTη ⇔Rx = QTη ⇒ usor de rezolvat, R inf. triungh.

Rezolvarea globala a problemelor CMMP neliniare in general ⇒NP-hard ⇒ determinarea unui minim local se realizeaza iterativ.Principiul de baza consta in aproximarea problemei la fiecareiteratie cu liniarizarea sa in punctul curent.Pentru probleme CMMP neliniare de forma:

minx∈Rn

f (x)

(=

1

2∥F (x)∥2

),

unde F (x) = η −M(x), metodele des utilizate sunt:

I metoda Gauss-NewtonI metoda Levenberg-Marquardt

Page 360: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gauss-Newton (GN)La fiecare iteratie a metodei GN, fiind dat xk , se realizeazaurmatoarea actualizare:

xk+1 = arg minx∈Rn

1

2∥F (xk) + J(xk)(x − xk)︸ ︷︷ ︸

liniarizarea lui F (x) in xk

∥2,

unde J(x) = ∂F (x)∂x . Notand F (xk) = Fk , J(xk) = Jk si

presupunand ca JTk Jk este inversabila avem echivalent:

xk+1 = xk + arg mind∈Rn

1

2∥Fk + Jkd∥2 = xk −

(JTk Jk

)−1JTk Fk .

Observatie: directia dk = −(JTk Jk

)−1JTk Fk = −J+k Fk este

directie de descrestere ⟨∇f (xk), dk⟩ = −FTk Jk(J

Tk Jk)

−1JTk Fk ≤ 0

Pentru a asigura convergenta metodei, de obicei se introduce unpas de lungime αk (ce devine 1 in apropierea minimului local):

xk+1 = xk − αk

(JTk Jk

)−1JTk Fk .

Page 361: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice

Consideram problema de estimare a cresterii demografice printr-ofuntie exponentiala de forma

f (x) = x1 expx2 t,

unde reamintim ca x = (x1, x2) reprezinta setul de parametrii.

Pentru formularea problemei CMMP neliniare avem disponibile unset de 8 masuratori pentru populatia SUA efectuate intre anii 1815si 1885:

anul 1815 1825 1835 1845 1855 1865 1875 1885

populatie 8.3 11 14.7 19.7 26.7 35.2 44.4 55.9

Page 362: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice(2)

2 3 4 5 6 7 8

Metoda GN (k=1)

Page 363: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice(2)

2 3 4 5 6 7 8

Metoda GN (k=2)

Page 364: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice(2)

2 3 4 5 6 7 8

Metoda GN (k=3)

Page 365: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice(2)

2 3 4 5 6 7 8

Metoda GN (k=4)

Page 366: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicatie - estimarea cresterii demografice(2)

2 3 4 5 6 7 8

Metoda GN (k=5)

Page 367: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Levenberg-Marquardt

Reprezinta generalizarea metodei G-N la cazul in care JTk Jk nu esteinversabila, fiind caracterizata de urmatoarea actualizare

dk = arg mind∈Rn

1

2∥Fk+Jkd∥2+

βk2∥d∥2 = −

(JTk Jk + βk In

)−1JTk Fk si

xk+1 = xk − αk

(JTk Jk + βk In

)−1JTk Fk

unde iarasi pasul αk se alege prin metoda ideala sau backtracking,iar in apropierea minimului devine 1

I Putem observa ca asemanator cu metoda Gauss-Newton, simetoda Levenberg-Marquardt este o metoda de descrestere.

I In plus, pentru βk → ∞ avem dk → 0 deci metoda nu aplicanici o corectie punctului curent. In schimb, pentru βk → 0,dk → −J+k Fk , deci coincide cu directia din metoda G-N.

Page 368: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

GN vs. LM - estimarea cresterii demografice

2 3 4 5 6 7 8

Metoda GN vs LM (k=4)

GNLM

Page 369: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

GN vs. LM - estimarea cresterii demografice

2 3 4 5 6 7 8

Metoda GN vs LM (k=5)

GNLM

Page 370: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

GN vs. LM - estimarea cresterii demografice

2 3 4 5 6 7 8

Metoda GN vs LM (k=6)

GNLM

Page 371: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

GN vs. LM - estimarea cresterii demografice

2 3 4 5 6 7 8

Metoda GN vs LM (k=7)

GNLM

Page 372: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Legatura cu metoda NewtonPutem observa ca gradientul functiei obiectiv f (x) = 1

2∥F (x)∥2 a

problemei CMMP neliniare este dat de urmatoarea relatie:

∇f (x) = J(x)TF (x).

Pentru ∇f (x) = 0 ⇒ directiile ambelor metode sunt nule, ceea ceeste o conditie necesara de convergenta la un punct stationar.Daca notam cu Fi componenta i a functiei F avem:

∇2f (x) = J(x)T J(x) +m∑i=1

Fi (x) · ∇2Fi (x).

Observam ca in cele doua metode, cel de-al doilea termen alfunctiei f este neglijat. Daca functia F (x) este aproape liniara sauFi (x) sunt mici in apropiere de solutie atunci acest termen esteredus.De exemplu, daca se cauta o solutie a sistemului liniar F (x) = 0,cu m = n, acest termen este nul. In plus, daca Jk este inversabila,atunci directia Newton coincide cu cea din metoda Gauss-Newton.

Page 373: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Rezultat de convergenta locala

Teorema: Fie x∗ un punct ce satisface conditiile suficiente deordinul doi. Iteratia metodelor Gauss-Newton siLevenberg-Marquardt in apropierea lui x∗ este de formaxk+1 = xk − Hk∇f (xk), unde Hk ≻ 0 este data fie de

Hk =(JTk Jk

)−1, fie de Hk =

(JTk Jk + βk In

)−1. Presupunem

satisfacuta conditia Lipschitz:

∥Hk

(∇2f (xk)−∇2f (y)

)∥ ≤ M∥xk − y∥ ∀k ∈ N, y ∈ Rn

si conditia de compatibilitate:

∥Hk

(∇2f (xk)− H−1

k

)∥ ≤ γk ∀k ∈ N

cu 0 < M < ∞ si γk ≤ γ < 1. In plus, presupunem ca∥x0 − x∗∥ ≤ 2(1−γ)

M .Atunci, xk converge la x∗ cu rata liniara daca γk > γ > 0.

Page 374: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tema 2

Fiecare student alege o aplicatie a.i. sa se modeleze ca o problemede optimizare fara constrangeri. Cerinte:

I descrieti in detaliu aplicatia aleasa

I dati formularea matematica ca o problema de optimizareUNLP

I utilizati cel putin 2 algorithmi de optimizare pentru UNLPdati la curs pentru rezolvarea ei

I dati codul Matlab pentru cei 2 algoritmi

I comparati rezultatele cu functia Matlab fminunc

I comentati rezultatele obtinute (grafice, tabele)

Page 375: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs IXTeoria dualitatii

Ion Necoara

2014

Page 376: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

(NLP): programare neliniara constransaProblema de optimizare neliniara supusa la constrangeri:

(NLP) : minx∈Rn

f (x)

s.l. : g1(x) ≤ 0, . . . , gm(x) ≤ 0

h1(x) = 0, . . . , hp(x) = 0

unde functiile f , gi si hj are continue si diferentiabile

g(x) = [g1(x), . . . , gm(x)]T ,

g : Rn → Rm,

h(x) = [h1(x), . . . , hp(x)]T ,

h : Rn → Rp.

(NLP) : minx∈Rn

f (x)

s.l. g(x) ≤ 0, h(x) = 0.

(NLP) : f ∗ = minx∈X

f (x)

• functia obiectiv f• multimea fezabila X =x : gi (x) ≤ 0, hj(x) = 0 ∀i , j

Page 377: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

(CP): programare convexa constransaProblema de optimizare convexa supusa la constrangeri:

(CP) : minx∈Rn

f (x)

s.l. : g1(x) ≤ 0, . . . , gm(x) ≤ 0

aT1 x = b1, . . . , aTp x = bp

unde functiile f si gi are continue si convexe (e.g. Hesianele suntpozitiv semidefinite), constrangerile de egalitate sunt liniare.

g(x) = [g1(x), . . . , gm(x)]T ,

g : Rn → Rm,

h(x) = Ax − b,

A = [a1 · · · ap]T ∈ Rp×n.

(CP) : minx∈Rn

f (x)

s.l. g(x) ≤ 0, Ax = b.

(CP) : f ∗ = minx∈X

f (x)

• functia obiectiv f convexa• multimea fezabila convexa X =x : gi (x) ≤ 0 ∀i , Ax = b

Page 378: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 1: proiectia Euclidiana

minx∈X

∥x − x0∥22 sau minx∈∩m

i=1Xi

∥x − x0∥22

Proiectia Euclidiana a punctului x0 pe multimea X : [x0]Xdeterminarea celui mai “apropiat” punct (in distanta Euclidiana)din multimea X de punctul x0

I functie obiectiv patratica convexa (Hesiana este In)

I proiectia exista si este unica in cazul X multime convexa(caz particular de (CP))

I aplicatii practice: imagistica medicala, tomografiecomputerizata, microscopie electronica

I solutie analitica pentru multimi “simple” (semispatiu,hyperplan, bila, box);

Exemplu: minx∈Rn+∥x − x0∥22, i.e. X = Rn

+ : x ≥ 0

([x0]Rn+)i = 0 daca x0i < 0

∨= x0i daca x0i ≥ 0 ∀i

Page 379: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Proiectia Euclidiana - exemple

minx∈R3

∥x − [1 1 1]T∥22

s.l. x1 + x2 + x3 ≤ 1, x ≥ 0.

minx∈R3

∥x∥22

s.l. a1x1 + a2x2 + a3x3 = b

H = x : aT x = b, [0]H = ta

t =b

∥a∥2⇒ [0]H =

b

∥a∥2a

Page 380: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 2: problema localizarii

Se cunosc locatiile a m senzori si ∈ R3 si distantele Ri de la senzorila obiectul necunoscut x ∈ R3

minx∈R3,R>0

R

s.l. R + ∥si − x∥ ≤ Ri ∀i = 1, . . . ,m.

I se determina coordonatele:centrul x ∈ R3 si raza R > 0

I functie obiectiv liniara

I constrangeri patratice convexe

I caz particular de (CP)

Page 381: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 3: controlul puterii in sisteme de comunicatie

Dispunem de n transmitatori, cu nivelurile de putereP1,P2, . . . ,Pn, si de n receptori.

I fiecare receptor i receptioneaza semnalul transmitatorului i

I puterea receptata de receptorul i de la transmitatorul j(puterea semnalului de interferenta) este data de GijPj , undeGij reprezinta amplificarea pe linia de comunicatie (i , j)

I Puterea semnalului primit de receptorul i de la transmitatoruli este GiiPi

Page 382: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 3: controlul puterii in sisteme de comunicatie

• Zgomotul din retea este dat de σi .• Raportul semnal - interferenta si zgomot este definit de

Si =GiiPi

σi +Σj =iGijPj=

semnal util

zgomot + interferenta.

Constrangeri ce apar natural in medii de retea:Pmin ≤ Pi ≤ Pmax si Si ≥ Smin.

Problema de programare convexa

minP∈Rn

P1 + · · ·+ Pn

s.l. Pmin ≤ Pi ≤ Pmax

GiiPi/(σi +Σj =iGijPj) ≥ Smin

Page 383: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 4: reconstructie tomografica

Tomografie computerizata = tehnica noninvaziva ce folosesteraze X (sau alte tipuri de radiatii) pentru a produce imagini 2D/3Dale interiorului obiectului scanat.Procedura de functionare consta in:

1. Se achizitioneaza o serie deproiectii, din diferite unghiuri,ale obiectului scanat;

www.merckmanuals.com

2. Prin intermediul proiecti-ilor obtinute, se reconstruiesteinteriorul obiectului cu ajutorulunui algoritm iterativ;

www.mathworks.com

In majoritatea cazurilor, radiatiile folosite sunt daunatoare; deaceea se urmareste achizitionarea unui numar minim de proiectii.

Page 384: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 4: reconstructie tomograficaFormularea problemei:

• Fie x ∈ Rn imaginea interiorului de reconstruit.• Pentru reconstructie, dispunem de diferite masuratori liniare(proiectii) ale imaginii x : bi = Aix , i = 1, · · · ,m.• Notam vectorul proiectiilor b ∈ Rm si A = [AT

1 · · ·ATm]

T ∈ Rm×n

matricea de achizitie.• Imaginea interiorului reprezinta solutia sistemului liniar(subdeterminat deoarece sunt mai putine masuratori m decatdimensiunea imaginii n): Ax = b.• Reformulare in termeni de problema CMMP:

minx∈Rn: Ax=b

∥x∥α

unde de obicei se alege α = 2 sau α = 0 sau α = 1. Alegemα = 0 ∨ 1 pentru a induce o reprezentare rara a imaginii (vectorulsolutie). Se doreste o reprezentare rara a imaginii, deoareceaceasta permite: compresie usoara; algoritmi rapizi pt. procesare;memorie de stocare mica; eliminarea usoara a zgomotului;...

Page 385: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 5: matrix completionI se da o matrice X cu elemente lipsa (e.g. o imagine)I se presupune ca matricea X este de rang scazutI scopul este sa se gaseasca elementele lipsa din XI pentru a impune rang mic asupra unei matrici se foloseste

nuclear norm ∥ · ∥∗: daca A are descompunerea DVSA =

∑ri=1 σiuiv

Ti , atunci ∥A∥∗ =

∑ri=1 σi

I problema se pune astfel:

minX∈Rm×n

rang(X ) =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗

s.l.: Xij = Aij ∀i , j ∈ S s.l.: Xij = Aij ∀i , j ∈ S

unde se dau valorile Aij cu (i , j) ∈ S o submultime aelementelor matricei cautate

I relaxarea convexa se poate scrie ca un SDP:

minX ,W1,W2

tr(W1) + tr(W2)

s.l.: Xij = Aij ∀i , j ∈ S ,

[W1 XXT W2

]≽ 0

Page 386: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 5: matrix completion cu aplicare in recuperareade imagine

imaginea data (40% elemente lipsa) si imaginea recuperata

Page 387: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 5: raritate in solutie pt. cazul vectorDefinim o masura a raritatii ∥x∥0 =/ i : xi = 0 si ∥x∥1 =

∑i |xi |

si apoi problemele de optimizare asociata sistemului Ax = b:

minx∈Rn

∥x∥0 s.l. Ax = b =⇒︸︷︷︸relaxare convexa

minx∈Rn

∥x∥1 s.l. Ax = b

• Mutual coherence: µ(A) = max1≤k,j≤m, k =j

|aTk aj |∥ak∥2∥aj∥2

Pentru o matrice A cu rang intreg pe linii (i.e. m < n), daca existao solutie x∗ satisfacand relatia:

∥x∗∥0 <1

2

(1 +

1

µ(A)

)atunci x∗ este solutie pentru amandoua problemele de optimizare!

• Restricted Isometry Property (RIP): matricea A ∈ Rm×n areRIP(δ, k) daca orice submatrice AI (obtinute din combinarea a celmult k coloane din A) are toate valorile singulare marginite intre1− δ si 1 + δ. Pentru matricea A cu RIP(0.41, 2k) avem ca celedoua probleme de mai sus au aceeasi multime de solutii pemultimea vectorilor de raritate k (Candes & Tao 2005).

Page 388: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 5: raritate in solutie pt. cazul matriceDefinim o masura a raritatii ∥X∥0 = rang(X ) si ∥X∥∗ =

∑i σi si

problemele de optimizare asociate functiei liniare A : Rm×n → Rp:

minX∈Rm×n

∥X∥0 s.l. A(X ) = b =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗ s.l. A(X ) = b

• Restricted Isometry Property de ordin r : cea mai micaconstanta δr (A) a.i. pt. orice matrice X de rang cel mult r avem:

1− δr (A) ≤ ∥A(X )∥∥X∥F

≤ 1 + δr (A)

• Presupunem ca δ2r < 1 pentru un intreg r ≥ 1. Atunci unicasolutie a problemei originale neconvexe este matricea de rang celmult r satisfacand A(X ) = b.

• Presupunem ca r ≥ 1 satisface δ5r < 0.1, atunci cele douaprobleme de mai sus (cea originala si relaxarea ei convexa) auaceeasi solutie optima (Recht & Parrilo 2010).

Page 389: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functia Lagrange

I Reamintim problema NLP generala:

f ∗ =

minx∈Rn

f (x) : g(x) ≤ 0, h(x) = 0

I Reamintim: g(x) : Rn → Rm, h(x) : Rn → Rp

I Definim functia Lagrange L : Rn × Rm × Rp → R:

L(x , λ, µ) = f (x) + λTg(x) + µTh(x)

Numita si Lagrangianul, func-tia Lagrange a fost introdusapentru prima data de La-grange pentru probleme cu con-strangeri de egalitate. Vari-abilele: λ ∈ Rm, µ ∈ Rp senumesc multiplicatori Lagrange(variabile duale).

Page 390: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functia Lagrange

I Regula generala: impunem ca multiplicatorii lagrange pentruconstrangeri de inegalitate sa fie nenegativi, i.e. λ ≥ 0

I Pentru orice variabila primala x fezabila pentru problema deoptimizare (NLP) (i.e. g(x) ≤ 0 si h(x) = 0) si pentru oricevariabila duala fezabila (λ, µ) (i.e. λ ∈ Rm

+ si µ ∈ Rp) avem:

L(x , λ, µ) ≤ f (x)

anume functia Lagrange este marginita superior de functiaobiectiv a problemei primale.

I Demonstratie: inegalitatea este evidenta deoarece λ ≥ 0,g(x) ≤ 0 iar h(x) = 0

Page 391: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functia duala

I Functia duala q : Rm × Rp → R este infimul neconstrans alLagrangianului in variabila primala x , pentru multiplicatorii λsi µ fixati, i.e:

q(λ, µ) = infx∈Rn

L(x , λ, µ).

I Daca q(λ, µ) este nemarginita inferior, i.e. q(λ, µ) = −∞,atunci spunem ca perechea (λ, µ) este dual infezabila.

I Lema: Pentru orice pereche duala (λ, µ) fezabila, i.e. λ ∈ Rm+

si µ ∈ Rp, avemq(λ, µ) ≤ f ∗

I Demonstratie: pentru orice punct fezabil x avem

q(λ, µ) ≤ L(x , λ, µ) ≤ f (x) ∀x ∈ X , λ ∈ Rm+, µ ∈ Rp.

atunci pentru x = x∗ rezulta q(λ, µ) ≤ f ∗

Page 392: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Functia duala

I Lema: Functia duala q : Rm × Rp → R este intotdeaunafunctie concava.

I Demonstratie: observam ca Lagrangianul L(x , ·, ·) estefunctie afina in (λ, µ) pentru x fixat. Fie α ∈ [0, 1], atuncipentru (λ1, µ1) si (λ2, µ2) avem:

q(αλ1 + (1− α)λ2, α1µ1 + (1− α)µ2)

= infx∈Rn

L(x , αλ1 + (1− α)λ2, α1µ1 + (1− α)µ2)

= infx∈Rn

αL(x , λ1, µ1) + (1− α)L(x , λ2, µ2)

≥ α infx∈Rn

L(x , λ1, µ1) + (1− α) infx∈Rn

L(x , λ2, µ2)

= αq(λ1, µ1) + (1− α)q(λ2, µ2).

Page 393: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema duala

I Problema duala este definita ca fiind problema de maximizareconcava a functiei duale:

q∗ = maxλ≥0, µ∈Rp

q(λ, µ),

unde notam cu q∗ valoarea optima duala.

I Observatie: din moment ce q este intotdeauna concava (−qconvexa), problema duala este intotdeauna problema convexa:

q∗ = maxλ≥0, µ∈Rp

q(λ, µ) = − minλ≥0, µ∈Rp

−q(λ, µ)

chiar daca problema primala (UNLP) nu este convexa!

I Observatie: multimea fezabila duala Ω = Rm+ × Rp este o

multime simpla (proiectia pe aceasta multime se poate realizausor)

Page 394: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 1 de problema dualaI Fie urmatoarea problema patratica convexa:

minx∈Rn

1/2xT x

s.l: Ax = b, unde A ∈ Rp×n

I Observam:I f (x) = 1/2xT x patratica convexa (Q = In ≻ 0) si g(x) = 0

(fara inegalitati)I h(x) = Ax − b, h : Rn → Rp, deci µ ∈ Rp

I Lagrangianul L(x , µ) = f (x) + µTh(x) este:

L(x , µ)=1/2xT x + µT(Ax−b) ⇒ q(µ)= minx∈Rn

1/2xT x + µT(Ax−b)

x(µ) : ∇xL(x , µ) = 0 ⇒ x(µ) + ATµ = 0 ⇒ x(µ) = −ATµ

q(µ) = L(x(µ), µ) = 1/2µTAATµ− µTAATµ− bTµ

= −1/2µTAATµ− bTµ

I Astfel, problema duala este de fapt (QP) fara constrangeri,dar Hesiana este pozitiv semidefinita!

q∗ = maxµ∈Rp

−1/2µTAATµ− bTµ

Page 395: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 2 de problema dualaI Fie urmatoarea problema CMMP cu restrictii patratice:

minx∈Rn

1/2∥Ax − b∥2

s.l: 1/2∥x∥2 ≤ cI Observam:

I f (x) = 1/2∥Ax − b∥2 patratica convexa (Q = ATA ≽ 0) sih(x) = 0 (fara egalitati)

I g(x) = 1/2∥x∥2 − c patratica convexa, deci λ ∈ R+

I Lagrangianul L(x , λ) = f (x) + λg(x) este:

L(x , λ)=1/2∥Ax−b∥2 + 1/2λ(xT x − 2c) ⇒ q(λ)= minx∈Rn

L(x , λ)

x(λ) : ∇xL(x , λ) = 0 ⇒ ATAx(λ)− ATb + λInx(λ) = 0

⇒ x(λ) = (ATA+ λIn)−1ATb

q(λ) = L(x(λ), λ) = −1/2bTA(ATA+ λIn)−1ATb − λc + 1/2∥b∥2

I Astfel, problema duala devine (este concava!)

q∗ = maxλ∈R+

−1/2bTA(ATA+ λIn)−1ATb − λc + 1/2∥b∥2

Page 396: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu 3 de problema duala

I Fie urmatoarea problema de optimizare NLP:

minx∈R2

x41 + x42 − 4x1x2

s.l: x ≥ 0, x1 + x2 = 5

I Observam:I f (x) = x41 + x42 − 4x1x2, f : R2 → R, n = 2I g(x) = −x , g : R2 → R2, deci m = 2 si λ ∈ R2

I h(x) = x1 + x2 − 5, h : R2 → R, deci p = 1 si µ ∈ RI Lagrangianul L(x , λ, µ) = f (x) + λTg(x) + µTh(x) este:

L(x , λ, µ) = x41 + x42 − 4x1x2 − λ1x1 − λ2x2 + µ(x1 + x2 − 5)

I Astfel, problema duala este de fapt

q∗= maxλ∈R2

+, µ∈R

(minx∈R2

x41 + x42 − 4x1x2 −λ1x1 − λ2x2 + µ(x1 + x2 − 5)

)

Page 397: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Dualitate slaba

I Din moment ce functia duala este marginita superior defunctia obiectiv, rezulta urmatoarea teorema:

I Teorema (dualitate slaba): urmatoarea inegalitate are locpentru orice problema de optimizare (NLP):

q∗ ≤ f ∗

I Observatie: daca avem x∗ fezabil pentru primala si (λ∗, µ∗)fezabil pentru duala astfel incat q(λ∗, µ∗) = f ∗ atunci x∗ estepunct de minim global pentru primala iar (λ∗, µ∗) este punctde maxim global pentru duala

I Observatie: daca f ∗ = −∞ atunciq(λ, µ) = ∞, ∀ (λ, µ) ∈ Ω. De asemenea, daca q∗ atunciproblema primala este infezabila

Page 398: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Dualitate puternica

I Diferenta f ∗ − q∗ se numeste duality gap, iar din dualitateslaba este nenegativa.

I In anumite cazuri (e.g. optimizare convexa in care multimeafezabila indeplineste anumite criterii), putem obtine o versiunemai puternica a dualitatii.

I Conditia Slater: presupunem ca problema (NLP) esteconvexa (i.e. f si g1, · · · , gm sunt convexe, iar h1, . . . , hp suntafine) si exista x ∈ Rn fezabil astfel incat g(x) < 0 si h(x) = 0

I Teorema (dualitate puternica): Daca problema (NLP)primala satisface conditia Slater, atunci valorile optime pentruproblemele primale si duale sunt egale, anume:

q∗ = f ∗

Mai mult (λ∗)Tg(x∗) = 0 (complementaritatea), unde x∗

este punct de minim global pentru problema primala si(λ∗, µ∗) este punct de maxim global pentru problema duala.

Page 399: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Dualitate: interpretarea min-max

I problema originala (primala) este echivalenta cu

minx∈Rn

(maxλ≥0,µ

L(x , λ, µ))

I problema duala este interschimbarea intre min si max

maxλ≥0,µ

(minx∈Rn

L(x , λ, µ))

I dualitatea slaba are loc intotdeauna deoarece

maxminL(·) ≤ minmaxL(·)

I dualitatea puternica are loc cand

minmaxL(·) ≤ maxminL(·) ⇔ minmaxL(·) = maxminL(·)

Page 400: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Intuitie

Putem interpreta dualitatea ca o aproximare liniara:

I Definim 1−(y) = ∞ daca y > 0 si 0 altfel (functia indicator allui R+).

I Definim 10(y) = ∞ daca y = 0 si 0 altfel (functia indicator allui 0).

I Rescriem problema originala (NLP) ca:

minx∈Rn

f (x) +∑i

1−(gi (x)) +∑j

10(hj(x))

I pentru a obtine dualitate inlocuim 1−(fi (x)) cu λi fi (x)(o masura de disconfort cand λi ≥ 0 si gi (x) > 0).

I De asemenea µjhj(x) este o margina inferioara pe 10(hj(x))

minx∈Rn

f (x) +∑i

λigi (x) +∑j

µjhj(x)

Page 401: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Interpretare geometrica

minx(x − c − 1)2 s.l. x2 ≤ c

Functia originala (albas-tru), constrangeri (verde),L(x , λ) pentru diferiti λ(punctat)

Functia duala q(λ) si val-oarea optima primala f ∗

(punctat)

Page 402: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Dualitate slaba/puternica, interpretare geometrica

I Pentru a vizualiza grafic diferenta dintre dualitateslaba/puternica, consideram un caz particular de problema(NLP): minx∈Rnf (x) : g(x) ≤ 0, avand o singuraconstrangere de inegalitate

I Definim multimeaS = (u, t) : ∃x ∈ Rn, f (x) = t, g(x) = u.

I Interpretarea grafica:

Page 403: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Duala unei probleme QP strict convexa

I Fie o problema QP strict convexa (Q ≻ 0):

f ∗ = minx∈Rn

1

2xTQx + qT x

s.l.: Cx − d ≤ 0, Ax − b = 0.

unde multimea fezabila este presupusa a fi nevida.

I Lagrangianul este dat de urmatoare expresie:

L(x , λ, µ) =1

2xTQx + qT x + λT (Cx − d) + µT (Ax − b)

= −λTd − µTb +1

2xTQx +

(q + CTλ+ ATµ

)Tx .

I Din moment ce q(λ, µ) = infx∈Rn L(x , λ, µ), avem:

q(λ, µ) = −λTd−µTb+ infx∈Rn

(1

2xTQx +

(q + CTλ+ ATµ

)Tx

)

Page 404: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Duala unei probleme QP strict convexa

I Observam ca problema:

infx∈Rn

t(x)

(=

1

2xTQx +

(q + CTλ+ ATµ

)Tx

)este de fapt o problema QP strict convexa.

I Notam solutia acestei probleme drept x(λ, µ). Din moment ceproblema este strict convexa, putem determina x(λ, µ) dinconditiile de optimalitate ∇t(x(λ, µ)) = 0, i.e:

Qx(λ, µ)+q+CTλ+ATµ = 0Q≻0→ x(λ, µ) = −Q−1(q+CTλ+ATµ)

I Inlocuind x(λ, µ) inapoi in expresia dualei, rezulta

q(λ, µ)=−λTd−µTb−1

2

(q+CTλ+ATµ

)TQ−1

(q+CTλ+ATµ

),

Page 405: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Duala unei probleme QP strict convexa

I Astfel, problema de optimizare duala este data de expresia:

q∗ = maxλ≥0, µ∈Rp

−1

2

[λµ

]T [CA

]Q−1

[CA

]T [λµ

]−

[d + CQ−1qb + AQ−1q

]T [λµ

]− 1

2qTQ−1q.

I ObservatiiI functia duala este patratica in (λ, µ) si concavaI problema duala este un QP convex (Hessiana nu mai este

pozitiv definita)I formularea duala a unei probleme QP are constrangeri mult

mai simple: λ ≥ 0 si µ ∈ Rp

I ultimul termen in functia duala este o constanta, insa trebuiepastrat pentru a mentine dualitatea puternica q∗ = f ∗

Page 406: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu de problema QP strict convexa si duala sa

I Fie urmatoarea problema de optimizare NLP:

minx∈R2

x21 + x22 + x1x2 + x1 − x2

s.l: x1 ≥ 0, x1 − x2 ≥ 1, x1 + x2 = 3

I Daca exprimam detaliat functie patraticaf (x) = 1

2xTQx + qT x , f : R2 → R, avem:

f (x) =Q11

2x21 +

Q22

2x22 +

Q12 + Q21

2x1x2 + q1x1 + q2x2

I Astfel, pentru problema noastra (dorim Q simetrica,Q12 = Q21), rezulta:

Q =

[Q11 Q12

Q21 Q22

]=

[2 11 2

], q =

[1−1

]

Page 407: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu de problema QP strict convexa si duala sa

I Observam: Λ(Q) = 1, 3, Q ≻ 0, det(Q) = 3 si

Q−1 =1

3

[2 −1−1 2

]I Observam:

I g : R2 → R2, g(x) =

[g1(x)g2(x)

]=

[−x1

x2 − x1 + 1

]I g(x) = Cx − d ⇒ C ∈ R2×2, d ∈ R2

C =

[−1 0−1 1

], d =

[0−1

]I h : R2 → R, h(x) = x1 + x2 − 3I h(x) = Ax − b ⇒ A ∈ R1×2, b ∈ R, A =

[1 1

], b = 3

Page 408: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Clasificare liniara binaraProblema clasificarii binare: se urmareste separarea unui set deobiecte in doua clase.Modelare matematica: sa se determine hiperplanul(a) optim cesepara un set de vectori (obiectele) xi in doua clase:

(i) clasa vectorilor xi pt. care aT xi − b ≤ 1;

(ii) clasa vectorilor xj pt. care aT xj − b ≥ −1.

Page 409: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Clasificare liniara binara - e-mail filteringE-mail filtering - determinarea unui estimator ce separa un set datde email-uri in doua clase: spam e-mail si wanted e-mail.

I dispunem de un dictionar de cuvinte D = c1, c2, . . . , cp,unde ci reprezinta cuvantul i .

I antrenam estimatorul printr-un set de e-mail-uri cunoscuteI pentru fiecare e-mail cunoscut i asociem vectorul

xi = [n1, n2, . . . , np]T , unde nj reprezinta numarul de aparitii

ale cuvantului cj in e-mail-ul i .I pentru fiecare e-mail cunoscut i asociem eticheta

yi = −1, 1, unde yi = −1 daca e-mail-ul cunoscut i estespam, altfel yi = 1.

minw∈Rn,b∈R,ξ≥0

1

2∥w∥22 + CΣm

i=1ξi

s.l. y1(wT x1 − b) ≤ 1− ξ1,

. . .

ym(wT xm − b) ≤ 1− ξm.

Page 410: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Programare liniara (LP) si dualitate

I Reamintim ca o problema de programare liniara (LP) areurmatoarea forma:

f ∗ = minx∈Rn

cT x

s.l.: Cx − d ≤ 0, Ax − b = 0.

I In programarea liniara putem cauta solutia problemei printrepunctele de extrem ale poliedrului ce defineste multimeafezabila:

X = x ∈ Rn : Cx − d ≤ 0, Ax − b = 0.

I Teorema: daca multimea fezabila lui X este un politop,atunci exista un punct de minim al problemei (LP) intr-unuldin varfurile politopului.

Page 411: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Programare liniara (LP) si dualitate

I Demonstratie: o multime X politop se poate scrie caacoperirea convexa generata de varfurile sale:

X = Conv(v1, . . . , vq).

Deoarece x∗ ∈ X , putem scrie x∗ =∑q

i=1 αivi , ude αi ≥ 0 si∑qi=1 αi = 1. Este clar ca cT vi ≥ f ∗, orice vi fiind fezabil.

Notam cu I multimea de indecsi: I = i : αi > 0. Dacaexista i0 ∈ I astfel incat cT vi0 > f ∗, atunci:

f ∗ = cT x∗ = αi0cT vi0 +

∑i∈I\i0

αicT vi >

∑i∈I

αi f∗ = f ∗

si deci obtinem o contradictie. Aceasta implica ca orice varfpentru care αi > 0 este un punct de minim.

Page 412: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Programare liniara (LP) si dualitate

I Exprimam acum duala unui (LP). Lagrangianul asociata unui(LP) general este dat de:

L(x , λ, µ) = cT x + λT (Cx − d) + µT (Ax − b)

= −λTd − µTb +(c + CTλ+ ATµ

)Tx .

I Functia duala corespunzatoare este:

q(λ, µ) = −λTd − µTb + infx∈Rn

(c + CTλ+ ATµ

)Tx

= −λTd − µTb +

0 daca c + CTλ+ ATµ = 0−∞ altfel.

I Observatie: problema din membrul drept de mai sus este un(LP) nemarginit, a carui minim este −∞ dacac + CTλ+ ATµ = 0

Page 413: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Programare liniara (LP) si dualitateI Astfel, putem exprima problema duala drept:

q∗ = maxλ∈Rm, µ∈Rp

[−d−b

]T [λµ

]s.l.: λ ≥ 0, c + CTλ+ ATµ = 0.

I Observatie: un LP poate fi scris in forma standard:

minx∈Rn

cT x : Ax = b, x ≥ 0,

prin folosirea de variabile suplimentare (numite si variabileartificiale)

I Duala sa rezulta: maxµ∈RnbTµ : ATµ ≤ cI Teorema de dualitate pentru (LP): daca una dintre

problemele (LP), primala sau duala, are solutie optima atuncisi cealalta problema are solutie optima si valorile optimecorespunzatoare sunt egale. Mai mult, daca una dintreprobleme, primala sau duala, are functie obiectiv nemarginita,atunci cealalta problema nu are puncte fezabile.

Page 414: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu de (LP) din practica (problema vinarului)

I Un vinar trebuie sa decida cate sticle de vin rosu si cate de vinalb sa produca. El poate vinde o sticla de vin rosu pentru $12iar una de vin alb pentru $7.

I Obiectivul lui este desigur de a-si maximiza venitul:

F (x1, x2) = 12x1 + 7x2

unde x1 reprezinta numarul de sticle de vin rosu ce vor fiproduse, iar x2 cele de vin alb.

I Vinul trebuie desigur invechit (4 ani pentru rosu si 3 anipentru alb), inainte de a fi vandut, insa spatiul de depozitareeste limitat la 1000 ani-invechire-sticla pentru o productie.Astfel, la problema noastra adaugam constrangerea:

4x1 + 3x2 ≤ 1000

Page 415: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu de (LP) din practica (problema vinarului)I Cantitatea de struguri ce poate fi procesat pentru a produce

vinul este limitata, e.g. la 16.000kg , si este necesar de aprocesa 3 kg pentru a produce pe cel rosu ,si 2 kg pentru alproduce pe cel alb. Avem astfel urmatoarea constrangere:

3x1 + 2x2 ≤ 16000

I O constrangere desigur evidenta este ca nu putem producecantitati negative, i.e. x1 ≥ 0, x2 ≥ 0. Astfel, problemavinarului poate fi formulata drept o problema (LP) cuconstrangeri de inegalitate:

minx∈Rn

cT x : Cx ≤ d,

unde

c =

[127

],C =

4 33 2−1 00 −1

, d =

100016000

00

Page 416: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs XConditii de optimalitate pentru (NLP)

Ion Necoara

2014

Page 417: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme (NLP) generale

• Reamintim problema (NLP) generala:

(NLP) : minx∈Rn

f (x)

s.l.: g(x) ≤ 0, h(x) = 0

• Functiile f : Rn → R, g : Rn → Rm si h : Rn → Rp sunt functiidiferentiabile de doua ori.

• Multimea fezabila a problemei (NLP):

X = x ∈ Rn : g(x) ≤ 0, h(x) = 0

• Deci problema se rescrie ca:

minx∈X

f (x)

Page 418: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu (NLP)

• Fie urmatoarea problema de optimizare (NLP):

minx∈R2

x41 + x42 − 4x1x2

s.l: x ≥ 0, x1 + x2 = 5

• Observam:

I functia obiectiv: f (x) = x41 + x42 − 4x1x2, f : R2 → R, n = 2

I constrangeri de inegalitate g(x) = −x , g : R2 → R2, m = 2

I constrangeri de egalitate h(x) = x1 + x2 − 5, h : R2 → R,p = 1

• Multimea fezabila in acest caz

X = x ∈ R2 : x ≥ 0, x1 + x2 = 5

este convexa!

Page 419: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I pentru (NLP) - constrangeri convexe

Teorema: Fie X o multime convexa si f ∈ C1. Pentru problemade optimizare constransa

minx∈X

f (x)

avem urmatoarele conditii de optimalitate:

I daca x∗ este minim local atunci:

∇f (x∗)T (x − x∗) ≥ 0 ∀x ∈ X

I daca in plus f este functie convexa, atunci x∗ este punct deminim daca si numai daca:

∇f (x∗)T (x − x∗) ≥ 0 ∀x ∈ X

Punctele x∗ ce satisfac inegalitatea anterioara ⇒ puncte stationarepentru (NLP) avand constrangeri convexe.

Page 420: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Constrangeri (multimi) active/inactive

Definitie: O constrangere de inegalitate gi (x) ≤ 0 se numesteactiva in punctul fezabil x ∈ X daca si numai daca gi (x) = 0, altfelse numeste inactiva. Orice constrangere de egalitate hi (x) = 0 esteactiva intr-un punct fezabil.

Definitie: Multimea de indecsi A(x) ⊆ 1, . . . ,mcorespunzatoare constrangerilor active se numeste multime activain punctul x ∈ X .

Exemplu: Pentru multimea fezabila:

X = x ∈ R2 : x ≥ 0, x1 + x2 = 5

multimea activa in punctul x = [0 1]T este A([0 1]T ) = 1.

Page 421: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I pt. (NLP): constrangeri de egalitate

Consideram intai probleme (NLP) ce au doar constrangeri deegalitate:

(NLPe) : minx∈Rn

f (x)

s.l. : h(x) = 0

Pentru problema (NLPe) toate constrangerile sunt considerateconstrangeri active.

Vom studia conditiile de optimalitate pentru clasa de probleme(NLPe), pentru ca apoi sa extindem rezultatele obtinute la clasagenerala (NLP).

Page 422: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Notiuni teoretice

I O curba pe o suprafata S ⇒ o multime de puncte x(t) ∈ Scontinuu parametrizate in t, pentru a ≤ t ≤ b.

I O curba x(t) este diferentiabila daca exista x = dx(t)dt si de

doua ori diferentiabila daca x(t) exista.

I O curba x(t) trece prin punctul x∗ daca exista t∗ ∈ [a, b] a.i.x∗ = x(t∗).

I Planul tangent in x∗ ∈ S ⇒ multimea tuturor vectorilor x(t∗)definiti de x(t) ∈ S avand proprietatea ca x(t∗) = x∗.

I Pentru o functie h : Rn → Rp, cu h(x) = [h1(x) . . . hp(x)]T

notam Jacobianul prin ∇h(x). Reamintim ca ∇h(x) este omatrice p × n ,avand elementul de pe pozitia (i , j) egal cu∂hi (x)∂xj

.

Page 423: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Puncte regulateDefinitie: Un punct x∗ ce satisface constrangerea h(x∗) = 0 senumeste punct regulat daca gradientii ∇h1(x

∗), . . . ,∇hp(x∗) sunt

liniar independenti (Jocabianul are rangul p).

Teorema: Intr-un punct regulat x∗ al suprafetei S definita deconstrangerile de egalitate h(x) = 0, planul tangent este egal cu:

M = d ∈ Rn : ∇h(x∗)d = 0= d ∈ Rn : ∇hi (x

∗)Td = 0 ∀i = 1, . . . , p

Lema: Fie x∗ un punct regulat al constrangerilor h(x) = 0 si punctde extrem local (minim sau maxim local) al problemei deoptimizare (NLPe). Atunci, orice d ∈ Rn ce satisface:

∇h(x∗)d = 0

trebuie sa satisfaca si:

∇f (x∗)Td = 0.

Page 424: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu• Fie constrangerea data de functia h : R3 → R,h(x) = x21 + x22 + 3x1 + 3x2 + x3 − 1. Consideram punctulx∗ = [0 0 1]T pentru care h(x∗) = 0.• Jacobianul lui h(x) va fi:

∇h(x) = [2x1 + 3 2x2 + 3 1]

iar ∇h(x∗) = [3 3 1] are rang 1 ⇒ x∗ punct regulat.• Din teorema precedenta pentru caracterizarea planului tangent,rezulta ca orice directie tangenta d = [d1 d2 d3]

T va satisface∇h(x∗)d = 0, deci 3d1 + 3d2 + d3 = 0 (un plan)

−10

0

10

−10−5

05

10

−250

−200

−150

−100

−50

0

50

x1x

2

x3

Page 425: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul I pentru (NLPe)Teorema: Fie x∗ un punct de extrem al functiei obiectiv f supusala constrangerile h(x) = 0, i.e. al problemei de optimizare (NLPe),si presupunem ca x∗ este un punct regulat pentru acesteconstrangeri. Atunci, exista un multiplicator Lagrange µ∗ ∈ Rp

a.i.:

(KKT - NLPe) : ∇f (x∗) +∇h(x∗)Tµ∗ = 0 si h(x∗) = 0.

Punctele x∗ pentru care exista µ∗ a.i. conditiile (KKT-NLPe) suntsatisfacute ⇒ puncte stationare pentru problema (NLPe) (punctede minim, puncte de maxim sau puncte sa).

Conditiile (KKT-NLPe) nu reprezinta altceva decat conditiile deoptimalitate de ordinul I pentru minimizarea Lagrangianuluineconstrans L(x , µ) = f (x) + µTh(x):

∇xL(x , µ) = 0 si ∇µL(x , µ) = 0 ⇐⇒ ∇L(x , µ) = 0

Page 426: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1

Fie problema (NLPe):

minx∈R2

x1 + x2

s.l. : h(x) = x21 + x22 − 2 = 0

Putem observa ca orice punct fezabil este regulat. Drept urmare,orice punct de minim local satisface sistemul ∇L(x , µ) = 0:

2µx1 = −1

2µx2 = −1

x21 + x22 = 2.

Solutiile (x∗1 , x∗2 , µ

∗) ale sistemului sunt punctele stationare(−1,−1, 1/2) si (1, 1,−1/2). Sunt puncte de extrem cele douasolutii sau puncte sa

Page 427: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 2Consideram urmatoarea problema de optimizare:

minx∈R3

4x1 − 2x2 + x23

s.l. : h1(x) = x1 − x2 + x3 = 0, h2(x) = −x1 + 2x2 − x23 = 0.

Jacobianul constrangerilor va fi de forma:

∇h(x) =

[1 −1 1−1 2 −2x3

],

ce are rangul minim 2 ⇒ orice punct fezabil este regulat.Pentru a gasi punctele de extrem rezolvam sistemul dat deconditiile (KKT-NLPe):

4 + µ1 − µ2 = 0, − 2− µ1 + 2µ2 = 0, 2x3 + µ1 − 2x3µ2 = 0

x1 − x2 + x3 = 0

−x1 + 2x2 − x23 = 0.

Obtinem ca solutia unica a sistemului este data de x∗ = [−1 0 1]T

si µ∗1 = −6, µ∗

2 = −2. Care este natura punctului x∗?

Page 428: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 3

Consideram problema:

minx∈R2

−x1

s.l. : h1(x) = (1− x1)3 + x2 = 0, h2(x) = (1− x1)

3 − x2 = 0.

Putem observa ca problema are un singur punct fezabilx∗ = [1 0]T ⇒ minim global.

De asemenea, avem ∇f (x∗) = [−1 0]T , ∇h1(x∗) = [0 1]T si

∇h2(x∗) = [0 − 1]T ⇒ x∗ NU este un punct regulat!

In acest caz, conditiile de optimalitate de ordinul I nu pot fisatisfacute ⇒ @µ1 si µ2 a.i.:

µ1

[01

]+ µ2

[0−1

]=

[10

].

Deci conditia de regularitate este esentiala!

Page 429: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul II pentru (NLPe)

Teorema: Presupunem ca x∗ este un punct de minim local alproblemei (NLPe) si un punct regulat pentru constrangerileaferente. Atunci exista µ∗ ∈ Rp astfel incat

∇f (x∗) +∇h(x∗)Tµ∗ = 0 si h(x∗) = 0.

In plus, daca notam planul tangent in x∗ prinM = d ∈ Rn : ∇h(x∗)d = 0, atunci matricea Hessiana aLagrangianului in raport cu x

∇2xL(x∗, µ∗) = ∇2f (x∗) +

p∑i=1

µ∗i ∇2hi (x

∗)

este pozitiv semidefinita pe planul tangent M, adica

dT∇2xL(x∗, µ∗)d ≥ 0 ∀d ∈ M.

Page 430: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

ExempluConsideram din nou problema:

minx∈R2: h(x)=x21+x22−2=0

x1 + x2,

pentru care matricea Hessiana a Lagrangianului in variabila x este:

∇2xL(x , µ) = ∇2f (x) + µ∇2h(x) = µ

[2 00 2

].

Tinand cont ca planul tangent la un punct x = 0 este de formaM = d : [2x1 2x2]d = 0, pentru care putem alege o bazaD(x) = [−x2 x1]

T avem:

D(x)T∇2xL(x , µ)D(x) = 2µ(x21 + x22 ).

Pentru prima solutie a sistemului ∇L(x , µ) = 0 avemdT1 ∇2

xL(−1,−1, 1/2)d1 = 2 > 0, unde d1 = D(−1,−1) ⇒ posibilpunct de minim local!Pentru cea de-a doua solutie dT

2 ∇2xL(1, 1,−1/2)d2 = −2 < 0, cu

d2 = D(1, 1) ⇒ acesata solutie nu este minim local!

Page 431: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente de ordinul II pentru (NLPe)

Teorema: Presupunem un punct x∗ ∈ Rn si un µ∗ ∈ Rp a.i.:

∇f (x∗) +∇h(x∗)Tµ∗ = 0 si h(x∗) = 0.

Presupunem de asemenea ca matricea data de HessianaLagrangianului ∇2

xL(x∗, µ∗) = ∇2f (x∗) +∑p

i=1 µ∗i ∇2hi (x

∗) estepozitiv definita pe planul tangent M = d : ∇h(x∗)d = 0, adica

dT∇2xL(x∗, µ∗)d > 0 ∀d ∈ M \ 0.

Atunci x∗ este punct de minim local strict al problemei (NLPe).

Page 432: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

ExempluFie problema:

minx∈R3: x1+x2+x3=3

−x1x2 − x1x3 − x2x3,

pentru care conditiile de optimalitate de ordinul I conduc laurmatorul sistem liniar:

−x2 − x3 + µ = 0

−x1 − x3 + µ = 0

−x1 − x2 + µ = 0

x1 + x2 + x3 = 3,

avand solutia unica x∗1 = x∗2 = x∗3 = 1 si µ∗ = 2.Hessiana Lagrangianului va avea urmatoarea forma:

∇2xL(x , µ) = ∇2f (x) =

0 −1 −1−1 0 −1−1 −1 0

Page 433: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu - continuare

Planul tangent intr-un punct x fezabil va fi de formaM = d : [1 1 1]d = 0 ⇒ d1 = −d2 − d3 ⇒ alegand[d1 d2] = [1 − 1] si [d1 d2] = [−1 − 1] ⇒ o baza a planuluitangent la suprafata definita de constrangerea h(x) = 0 va fi:

D(x) =

0 21 −1−1 −1

Drept urmare, obtinem ca x∗ este minim strict local intrucat:

D(x∗)T∇2xL(x∗, µ∗)D(x∗) =

[2 00 2

]≻ 0

Este Hessiana functiei obiectiv evaluata in x∗ pozitiv definita?

Page 434: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de ordinul I pentru (NLP) generaleIn continuare, vom extinde conditiile de optimalitate derivateanterior la cazul general:

(NLP) : minx∈Rn

f (x)

s.l. : g(x) ≤ 0, h(x) = 0.

Definitie: Fie un punct x∗ ce satisface constrangerile problemei(NLP), adica h(x∗) = 0, g(x∗) ≤ 0 si A(x∗) multimeaconstrangerilor active. Numim punctul x∗ punct regulat, dacagradientii functiilor de constrangere, ∇hi (x

∗) pentru i = 1, . . . , p si∇gj(x

∗) pentru j ∈ A(x∗) sunt liniari independenti.

Planul tangent in punctul regulat x∗ pentru problema generala(NLP) este planul tangent corespunzator pentru constrangerileactive:

M = d : ∇gj(x∗)Td = 0 ∀j ∈ A(x∗), ∇hi (x

∗)Td = 0 ∀i = 1, . . . , p.

Page 435: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul I pentru (NLP)Teorema: Fie x∗ un punct de minim local pentru problema (NLP)generala si presupunem ca x∗ este si regulat. Atunci, exista unvector λ∗ ∈ Rm si un vector µ∗ ∈ Rp a.i. conditiileKarush-Kuhn-Tucker (KKT) au loc:

(KKT ) : ∇f (x∗) +∇h(x∗)Tµ∗ +∇g(x∗)Tλ∗ = 0

g(x∗)Tλ∗ = 0

g(x∗) ≤ 0, h(x∗) = 0

µ∗ ∈ Rp, λ∗ ≥ 0

Conditiile (KKT) au fost formulatepentru prima data de catre W. Karushin teza sa de master (1939) si publi-cate abia 12 ani mai tarziu in carteapublicata de catre W. Kuhn si W.Tucker!

Page 436: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Demonstratie

Intrucat λ∗ ≥ 0 si g(x∗) ≤ 0, cea de-a doua relatie implica faptulca λ∗

i poate fi nenula doar daca gi (x∗) este activa. Drept urmare,

gi (x∗) < 0 implica λ∗

i = 0, iar λ∗i > 0 implica gi (x

∗) = 0.

Mai departe, tinand cont ca x∗ este un punct de minim localpentru problema (NLP). Notand cu X multimea constrangerilorproblemei (NLP), atunci x∗ este un punct de minim local si pentruproblema avand multimea de constrangeri o submultime a lui X sidefinita prin setarea constrangerilor active la zero.

Astfel, pentru problema (NLPe) ce ar rezulta, definita pentru ovecinatate a lui x∗, exista multiplicatori Lagrange si deci primarelatie este satisfacuta pentru λ∗

i = 0 daca gi (x∗) = 0 si drept

urmare si cea de-a doua relatie este satisfacuta.

Page 437: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Demonstratie - continuare

Mai trebuie aratat ca λ∗i ≥ 0 pentru constrangerile active

gi (x∗) = 0. Fie o componenta λ∗

k < 0 si Sk , respectiv Mk

suprafata si planul tangent in x∗ definit de toate constrangerileactive, mai putin gk(x

∗) = 0.

Tinand cont ca x∗ este un punct regulat, atunci ∃d ∈ Mk a.i.∇gk(x

∗)d < 0.

Luand in continuare o curba x(t) ∈ Sk , trecand prin x∗ la t = 0 siavand x(0) = d , atunci, pentru un t ≥ 0 suficient de mic x(t) estefezabil iar din prima relatie a conditiilor (KKT) obtinem:

df (x(t))

dt|t=0 = ∇f (x∗)d < 0

ceea ce contrazice ipoteza de minimalitate a lui x∗.

Page 438: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Interpretarea conditiilor (KKT)

I Solutiile x∗ ce satisfac conditiile (KKT) se numesc punctestationare (pot fi puncte de minim, puncte de maxim saupuncte sa) pentru problema (NLP) generala.

I Prima relatie a conditiilor (KKT) semnifica faptul ca x∗ estepunct stationar pentru functia Lagrange minx∈Rn L(x , λ∗, µ∗),reprezentand conditiile de optimalitate de ordinul I, adica∇xL(x∗, λ∗, µ∗) = 0.

I Cea de-a doua relatie reprezinta conditiile decomplementaritate: g(x∗)Tλ∗ = 0 ⇐⇒ gi (x

∗)λ∗i = 0 ∀i .

I Ultimele doua relatii exprima fezabilitatea primala(g(x∗) ≤ 0, h(x∗) = 0), respectiv duala (λ∗ ≥ 0).

Page 439: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1Consideram problema:

minx∈R3

0.5(x21 + x22 + x23

)s.l.g1(x) = x1 + x2 + x3 + 3 ≤ 0, g2(x) = x1 ≤ 0.

Observam ca orice punct fezabil este si punct regulat, iar din primarelatie a conditiilor (KKT) obtinem:

x∗1 + λ∗1 + λ∗

2 = 0

x∗2 + λ∗1 = 0

x∗3 + λ∗1 = 0.

Pentru a calcula punctele (KKT), analizam conditia decomplementaritate pentru care distingem patru cazuri:

I 1. g1 si g2 sunt ambele inactive;I 2. g1 inactiva si g2 activa;I 3. g1 activa si g2 inactiva;I 4. g1 si g2 sunt ambele active.

Page 440: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1 - continuare

Analiza cazurilor:

I 1. ⇒ x∗1 + x∗2 + x∗3 < −3 si x∗1 < 0 ⇒ λ∗1 = λ∗

2 = 0 ⇒x∗1 = x∗2 = x∗3 = 0 ⇒ contradictie cu ipoteza;

I 2. ⇒ x∗1 + x∗2 + x∗3 < −3, x∗1 = 0, λ∗1 = 0 si λ∗

2 ≥ 0 ⇒λ∗1 = −λ∗

2 = 0 ⇒ x∗2 = x∗3 = 0 ⇒ contradictie cu ipoteza;

I 3. ⇒ x∗1 + x∗2 + x∗3 = −3, x∗1 < 0, λ∗1 ≥ 0 si λ∗

2 = 0 ⇒ putemalege x∗1 = x∗2 = x∗3 = −1 si λ∗

1 = 1 ce satisfac conditiile(KKT) ⇒ aceasta solutia este un punct (KKT);

I 4. ⇒ x∗1 + x∗2 + x∗3 = −3, x∗1 = 0 si λ∗1, λ

∗2 ≥ 0 ⇒

x∗2 = x∗3 = −3/2 si λ∗1 = −λ∗

2 = 3/2 ⇒ contrazice conditiaλ∗2 ≥ 0.

Page 441: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 2Consideram problema:

minx∈R2

2x21 + 2x1x2 + x22 − 10x1 − 10x2

s.l. : x21 + x22 ≤ 5, 3x1 + x2 ≤ 6.

Pentru acesata problema conditiile (KKT) sunt:

4x1 + 2x2 − 10 + 2λ1x1 + 3λ2 = 0, 2x1 + 2x2 − 10 + 2λ1x2 + λ2 = 0

λ1(x21 + x22 − 5) = 0, λ2(3x1 + x2 − 6) = 0

x21 + x22 ≤ 5, 3x1 + x2 ≤ 6, λ1, λ2 ≥ 0.

Pentru acest exemplu putem considera doua constrangeri active,una sau niciuna. Presupunem prima constrangere activa iar ceade-a doua inactiva, rezultand un sistem de trei ecuatiicorespunzator, avand solutia x∗1 = 1, x∗2 = 2, λ∗

1 = 1 si λ∗2 = 0.

Solutia verifica 3x1 + x2 ≤ 6 si λ1 ≥ 1 ⇒ satisface conditiile(KKT).

Page 442: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii necesare de ordinul II pentru (NLP)Planul tangent in punctul regulat x∗ pentru problema generala(NLP) este planul tangent corespunzator pentru constrangerileactive:

M = d : ∇gj(x∗)Td = 0 ∀j ∈ A(x∗), ∇hi (x

∗)Td = 0 ∀i = 1, . . . , p.

Teorema: Fie f , g si h functii continuu diferentiabile de doua ori six∗ un punct regulat pentru constrangerile din problema (NLP)generala. Daca x∗ este un punct de minim local pentru problema(NLP), atunci exista λ∗ ∈ Rm si µ∗ ∈ Rp a.i. conditiile (KKT)sunt satisfacute si in plus Hessiana Lagrangianului in raport cu x :

∇2xL(x∗, λ∗, µ∗) = ∇2f (x∗) +

p∑i=1

µ∗i ∇2hi (x

∗) +m∑i=1

λ∗i ∇2gi (x

∗)

este pozitiv semidefinita pe subspatiul tangent al constrangeriloractive in x∗, adica:

dT∇2xL(x∗, λ∗, µ∗)d ≥ 0 ∀d ∈ M.

Page 443: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente de ordinul II pentru (NLP)

Teorema: Fie f , g si h functii continuu diferentiabile de doua ori.Fie de asemenea:

I un punct regulat x∗ ∈ Rn

I variabilele duale λ∗ ∈ Rm si µ∗ ∈ Rp pentru care conditiile(KKT) sunt satisfacute

I nu avem constrangeri de inegalitate degenerate, adica λ∗j > 0

pentru orice j ∈ A(x∗)

I Hessiana Lagrangianului ∇2xL(x∗, λ∗, µ∗) este pozitiv definita

pe planul tangent M

Atunci x∗ este un punct de minim local strict pentru problema(NLP) generala.

Page 444: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu

Fie problema:min

x∈R2: x21+x22−1≤0x2.

Observam ca punctul de minim global al acestei probleme estex∗ = [0 − 1]T . Aratam in continuare ca acesta este si minim strict.Prima conditie (KKT) are forma:

2λx1 = 0, 1 + 2λx2 = 0,

din care obtinem λ > 0 ⇒ constrangerea este activa.Adaugand aceasta conditie la cele doua anterioare, obtinem solutiax∗ = [0 − 1]T si λ∗ = 1/2.Planul tangent in x∗ este dat de d : [0 2]d = 0 = d : d2 = 0.De asemenea, Hessiana Lagrangianului ∇2

xL(x∗, λ∗) = 2λ∗I2 estepozitiv definita ⇒ x∗ punct de minim strict.

Page 445: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii suficiente de ordinul I pentru probleme convexe

Teorema: Fie o problema convexa (CP) de forma:

(CP) : f ∗ = minx∈Rn

f (x)

s.l. : g(x) ≤ 0, Ax = b,

in care functiile f si g1, . . . , gm sunt functii convexe.Daca urmatoarele conditii (KKT) sunt satisfacute:

(KKT − CP) : ∇f (x∗) +∇g(x∗)Tλ∗ + ATµ∗ = 0

g(x∗)Tλ∗ = 0

g(x∗) ≤ 0, Ax∗ = b

µ∗ ∈ Rp, λ∗ ≥ 0,

atunci x∗ este punct de minim global pentru problema convexa(CP), (λ∗, µ∗) este punct de maxim global pentru problema dualasi dualitatea puternica are loc, adica f ∗ = q∗.

Page 446: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1

Consideram problema proiectiei originii x0 = 0 pe subspatiulX = x ∈ Rn : Ax = b, unde A ∈ Rp×n de rang p < n.

Problema de optimizare convexa (CP):

minx : Ax=b

∥x∥2,

pentru care avem conditiile (KKT-CP):

x∗ + ATµ∗ = 0, Ax∗ = b.

Obtinem deci −AATµ∗ = b si intrucat AAT este inversabila ⇒x∗ = AT (AAT )−1b = A+b, unde A+ este pseudoinversa lui A.

Page 447: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 1 - cazul general

Extindem problema anterioara la cazul functiilor patratice generale:

minx : Ax=b

1

2xTQx + qT x ,

unde Q ≻ 0.

Conditiile (KKT-CP):

Qx∗ + q + ATµ∗ = 0, Ax∗ = b.

Obtinem astfel ca solutiile primale si duale au urmatoarele forme:

µ∗ = −(AQ−1AT )−1[AQ−1q + b]

x∗ = −Q−1ATµ∗ − Q−1q.

Page 448: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplul 2

Consideram urmatoarea problema convexa:

minx∈R2

(x1 − 5)2 + (x2 − 5)2

s.l. : g1(x) = x21 + x22 − 5 ≤ 0, g2(x) = x1 + 2x2 − 4 ≤ 0

g3(x) = −x1 ≤ 0, g4(x) = −x4 ≤ 0.

Presupunem ca doar g1(x) ≤ 0 si g2(x) ≤ 0 sunt active ⇒λ∗3 = λ∗

4 = 0 ⇒ conditiile (KKT-CP) se reduc la urmatorul sistem:[2(x∗1 − 5)2(x∗2 − 5)

]+

[2x∗1

12

2x∗2 1

] [λ∗1

λ∗2

]= 0

(x∗1 )2 + (x∗2 )

2 − 5 = 0, x∗1 + 2x∗2 − 4 = 0.

Obtinem solutia x∗ = [2 1]T ⇒ x∗ punct de minim global.

Page 449: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs XIMetode de ordinul I si II pentru probleme (NLP)

supuse la constrangeri convexe

Ion Necoara

2014

Page 450: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

(NLP)

Problema de optimizare neliniara supusa la constrangeri

(NLP) : f ∗ = minx∈X

f (x)

a) f diferentiabila (nu neaparat convexa),

b) X multime nevida, inchisa si convexa.

Exemple:

minx∈Rn

f (x)︷ ︸︸ ︷1

2∥Ax − b∥2

s.l. l ≤ x ≤ u︸ ︷︷ ︸multimea X (convexa)

minz,y∈Rn

f (x)︷ ︸︸ ︷zTAy

s.l.n∑

i=1

zi = 1, Cy ≥ d︸ ︷︷ ︸multimea X (convexa)

.

Page 451: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de optimalitate

Reamintim conditiile de optimalitate de ordinul I:

I Cazul neconstrans minx∈Rn

f (x)

Sub presupunerea ca f ∈ C1, orice punct de minim localsatisface sistemul:

∇f (x∗) = 0.

I Cazul constrans minx∈X

f (x)

Sub presupunerea ca f ∈ C1 si X multime convexa, oricepunct de minim local x∗ satisface inegalitatea:

∇f (x∗)T (x − x∗) ≥ 0 ∀x ∈ X .

Page 452: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de optimalitate

Demonstratie: Presupunem ca exista y ∈ X astfel incat

∇f (x∗)T (y − x∗) < 0.

Din teorema Taylor avem ca ∀t > 0 exista θ ∈ [0, 1] astfel incat:

f (x∗ + t(y − x∗)) = f (x∗) + t∇f (x∗ + θt(y − x∗))T (y − x∗).

Din continuitatea lui ∇f , alegem t < 1 suficient de mic astfel incat

∇f (x∗ + θt(y − x∗))T (y − x∗) < 0

ceea ce implica f (x∗ + t(y − x∗)) < f (x∗). Contradictie cupresupunerea ca x∗ este punct de minim local.

Observatie: convexitatea lui X este necesara pentru a asigura cax∗ + t(y − x∗) ∈ X si x∗ + θt(y − x∗) ∈ X pentru orice x∗, y ∈ X

Page 453: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de descrestere (directii fezabile)Definitie O directie d ∈ Rn se numeste directie fezabila in punctulfezabil x ∈ X daca exista α astfel incat ∀0 < α ≤ α avemx + αd ∈ X .

Exemplu: Fie X = x ∈ Rn : aT x ≤ b, b > 0 si x ∈ X .Observam ca d = b

∥a∥2 a− x este directie fezabila pentru α = 1.

Intr-adevar, fie α ∈ (0, 1), atunci:

aT (x + αd) = aT((1− α)x + α

b

∥a∥2a

)≤ (1− α)b + αb = b.

Metoda directiilor fezabile:• porneste din x0 ∈ X• genereaza sirul fezabil xk ∈ X astfel:

xk+1 = xk + αkdk ,

unde dk este o directie fezabila si pasul αk ales prin metoda idealasau backtracking.

Page 454: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda directiilor fezabile

In particular se aleg directii fezabile dk pentru care∇f (xk)

Tdk < 0, atunci

f (xk + αkdk) < f (xk)

pentru αk suficient de mic si xk punct nestationar. In concluzie,directiile sunt de forma:

dk = γ(xk − xk) γ > 0 & xk ∈ X

decixk+1 = xk + αk(xk − xk)

Clar, daca xk nu este stationar, atunci exista xk ∈ X a.i.∇f (xk)

T (xk − xk) < 0. Observam ca daca X convexa atuncixk + αk(xk − xk) ∈ X pentru orice αk ∈ (0, 1).

Page 455: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda directiilor fezabile

Definitie Fie xk un sir convergent la un punct nestationar.Directiile dk sunt conectate prin gradient la xk daca sirul dk estemarginit si satisface:

limk→∞

supk≥0

∇f (xk)Tdk < 0.

Teorema Fie un sir xk generat de metoda directiilor fezabilexk+1 = xk + αkdk . Presupunem ca directiile dk sunt conectate pringradient la xk pasul αk este ales prin metoda ideala saubacktracking. Atunci orice punct limita al sirului xk este punctstationar.

Demonstratie: Consideram alegerea lui αk prin backtracking (cazulideal este similar). Presupunem ca xk converge la un punctnestationar x . Sirul f (xk) este descrescator si convergent la f (x),i.e.

f (xk)− f (xk+1) → 0.

Page 456: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda directiilor fezabile

Conditia de backtracking: f (xk)− f (xk+1) ≥ −c1αk∇f (xk)Tdk ,

implica αk∇f (xk)Tdk → 0. Directiile dk sunt conectate prin

gradient la xk , deci dk este marginit si limk→∞

supk≥0

∇f (xk)Tdk < 0,

ceea ce implica: αk → 0. Din aceasta relatie si procedurabacktracking avem ca exista k a.i.

f (xk)− f (xk + (αk/ρ)dk) < −c1(αk/ρ)∇f (xk)Tdk ∀k ≥ k.

Din teorema valorii medii avem ca exista αk ∈ [0, αk/ρ] a.i.

−∇f (xk + αkdk)Tdk < −c1∇f (xk)

Tdk , ∀k ≥ k.

Considerand ca dk este marginit (are un subsir convergent),evaluam limita in relatia precedenta si obtinem

0 < (1− c1)∇f (x)T d .

Reamintind ca c1 < 1 rezulta ∇f (x)T d > 0. Contradictie cudefinitia directiilor conectate prin gradient.

Page 457: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat

Fie functia f : Rn → R diferentiabila.

minx∈X

f (x)

Metoda Gradient Proiectat:xk+1 = [xk − αk∇f (xk)]X

Interpretare

xk+1 = argminx∈X

f (xk) +1

2αk∥x − (xk − αk∇f (xk))∥2

= argminx∈X

f (xk) +∇f (xk)T (x − xk) +

1

2αk∥x − xk∥2

adica foloseste o aproximare patratica pentru f cu Hessiana 1αkIn!

Page 458: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat (caz particular al metodelor dedirectii fezabile)

Conditia de optimalitate pentru subproblema convexa

minx∈X

q(x) = f (xk) +∇f (xk)T (x − xk) +

1

2αk∥x − xk∥2

este data de

(∇f (xk) +1

αk(xk+1 − xk))

T︸ ︷︷ ︸∇q(xk+1)

(x − xk+1) ≥ 0, ∀x ∈ X .

Considerand x = xk si prelucrand conditia, avem:

∇f (xk)T (xk+1 − xk︸ ︷︷ ︸

dk

) ≤ − 1

αk∥xk+1 − xk∥2 < 0

Evaluand limita, avem limk→∞

supk≥0

∇f (xk)Tdk < 0. In concluzie, dk

sunt directii conectate prin gradient la xk daca X compacta si deciputem folosim rezultatul precedent de convergenta.

Page 459: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 1

minx∈R2

f (x) =1

2xT[2 11 2

]︸ ︷︷ ︸

Q

x + [−1 − 1]︸ ︷︷ ︸qT

x

s.l. 2x1 + x2 = 1

Observatii:

I ∇f (x) = Qx + q =

[2x1 + x2 − 1x1 + 2x2 − 1

]I proiectia pe hiperplan: [y ]aT x=b = y − aT y−b

∥a∥2 a

I Fie y ∈ R2, [y ]X = y − (2y1+y2−1)5

[21

].

Metoda Gradient Proiectat: xk+1 = [xk − αk(Qxk + q)]XPornind din x0 = [1 1]T si considerand α0 = 1 avem

x1 = [x0 − α0(Qx0 + q)]X =

[−1−1

]X

=

[3/5−1/5

].

Page 460: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 461: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 462: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 463: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 464: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 465: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Proiectat - Exemplu 2

Page 466: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Conditional (Frank-Wolfe)Fie functia f : Rn → R diferentiabila si multimea X convexa sicompacta (inchisa si marginita).

minx∈X

f (x)

Metoda Gradient Conditional:xk = argmin

x∈X∇f (xk)

T (x − xk)

xk+1 = xk + αk(xk − xk)

I Se rezolva la fiecare iteratie o problema convexa cu functiaobiectiv liniara;

I Recomandata in cazul in care complexitatea per iteratie estemult mai scazuta decat cea necesara pentru rezolvareaproblemei originale.

Page 467: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Conditional (Frank-Wolfe)Interpretare

xk = argminx∈X

f (xk) +∇f (xk)T (x − xk)

adica foloseste doar o aproximare liniara pentru functia f incomparatie cu metoda gradient proiectat care foloseste oaproximare patratica pentru f cu Hessiana 1

αkIn.

Gradientul conditional este caz particular de metoda fezabila:

∇f (xk)T (xk − xk) ≤ ∇f (xk)

T (x − xk) ∀x ∈ X

Daca presupunem ca xk converge la un x nestationar atuncitrecand la limita, obtinem:

limk

supk

∇f (xk)T (xk − xk) ≤ ∇f (x)T (x − x) ∀x ∈ X

Evaluand minimum peste x ∈ X si tinand cont ca x estenestationar

limk

supk

∇f (xk)T (xk − xk) ≤ min

x∈X∇f (x)T (x − x)

x nestationar< 0

xk − xk directii conectate la gradient (X compacta). Contradictie!

Page 468: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Gradient Conditional (Frank-Wolfe)

Gradient Conditional este caz particular de metoda directiilorfezabile!

Daca X este multime poliedrala, atunci fiecare iteratie a Metodeide Gradient Conditional necesita solutia unei probleme deoptimizare liniare (LP).

Abordari:

I algoritmul Simplex(George Dantzig - 1947);

I algoritmi de punct interior(Narendra Karmarkar - 1984)

Page 469: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton ProiectatFie functia f : Rn → R diferentiabila si X multime convexa.

minx∈X

f (x)

Introducem urmatoarea norma vectoriala:

H ≻ 0 ⇒ ∥x∥H =√xTHx norma indusa de o matrice H

Metoda Newton Proiectat:

xk+1 =[xk − αk(∇2f (xk))

−1∇f (xk)](∇2f (xk ),X )

unde presupunem ca Hessiana ∇2f (xk) ≻ 0 (pozitiv definita)!Interpretare

xk+1 = argminx∈X

f (xk)+1

2αk∥x−(xk−αk(∇2f (xk))

−1∇f (xk))∥2∇2f (xk)

= argminx∈X

f (xk)+∇f (xk)T (x − xk)+

1

2αk(x − xk)

T∇2f (xk)(x − xk).

I Daca αk = 1 atunci la fiecare iteratie se minimizeazaaproximarea Taylor de ordinul II a lui f in jurul lui xk ;

I In general, subproblema la fiecare iteratie este complexa

Page 470: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton ProiectatConditia de optimalitate pentru subproblema convexa

minx∈X

q(x) = f (xk)+∇f (xk)T (x−xk)+

1

2αk(x−xk)

T∇2f (xk)(x−xk)

este data de

(∇f (xk) +1

αk∇2f (xk)(xk+1 − xk))

T︸ ︷︷ ︸∇q(xk+1)

(x − xk+1) ≥ 0, ∀x ∈ X .

Considerand x = xk si prelucrand conditia avem:

∇f (xk)T (xk+1 − xk︸ ︷︷ ︸

dk

) ≤ − 1

αk∥xk+1 − xk∥2∇2f (xk )

< 0

Evaluand limita avem limk→∞

supk≥0

∇f (xk)Tdk < 0. In concluzie, dk

sunt directii conectate prin gradient la xk daca X compacta sifolosim rezultatul precedent de convergenta.

Page 471: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton Proiectat - Exemplu

minx∈R2

f (x) =1

2∥x∥22 − log(x1 − x2 + 1︸ ︷︷ ︸

cT x+d

)

s.l. x1 + x2 = 0︸ ︷︷ ︸aT x=b

Metoda Newton Proiectat:xk+1 = arg min

aT y=b∇f (xk)

T (y −xk)+1

2αk(y −xk)

T∇2f (xk)(y −xk).

Observatii:

I ∇f (x) = x − 1cT x+d

c = x − 1x1−x2+1

[1−1

]I ∇2f (x) = I2 +

1(cT x+d)2

ccT =

[1 00 1

]+ 1

(x1−x2+1)2

[1 −1−1 1

]

Page 472: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton Proiectat - Exemplu

Solutie explicita a iteratiei Newton (cu pas αk = 1) in douamoduri:1. Utilizand dualitatea

xk+1 = xk −(v − (aT v)

aT (∇2f (xk))−1a(∇2f (xk))

−1a

),

unde v =(∇2f (xk)

)−1∇f (xk).

2. Eliminand constrangerea liniara, i.e. y1 =1a1

(b −

∑j =1

ajyj

)

xk+1 = arg minaT y=b

∇f (xk)T (y − xk) +

1

2(y − xk)

T∇2f (xk)(y − xk)

= arg minz∈Rn−1

∇f (xk)T (Mz + u)+

1

2(Mz + u)T∇2f (xk)(Mz + u),

unde MT = [v In−1], vT = [−a2

a1. . . − an

a1], u = b/a1 − xk .

Page 473: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton Proiectat - Exemplu

Determinam prima iteratie a Metodei Newton, utilizand dualitatea

x1 = x0 −(v − aT v

aT (∇2f (x0))−1a(∇2f (x0))

−1a

),

unde v =(∇2f (x0)

)−1∇f (x0).

Pornind din x0 = [0 0]T si considerand α0 = 1 avem

I ∇f (x0) =

[−11

];∇2f (x0) =

[2 −1−1 2

];

I(∇2f (x0)

)−1= 1

3

[2 11 2

]; v = 1

3

[−11

];

x1 =1

3

[1−1

].

Page 474: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton Proiectat - Exemplu

Determinam prima iteratie a Metodei Newton prin eliminareaconstrangerii y1 + y2 = 0

(x1)1=arg miny1∈R

1

2(y1)

2[1 − 1

]∇2f (x0)

[1−1

]+∇f (x0)

T

[1−1

]y1,

Pornind din x0 = [0 0]T si considerand α0 = 1 avem

(x1)1 = arg miny1∈R

3(y1)2 − 2y1 = 1/3

(x1)2 = −(x1)1 = −1/3.

Page 475: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton Proiectat

Teorema Fie xk sirul generat de metoda Newton proiectat cupasul αk ales prin metoda ideal sau backtracking de-a lunguldirectiilor fezabile. Presupunem de asemenea ca exista scalariipozitivi β1 si β2 astfel incat:

β1In ≽ ∇2f (xk) ≽ β2In.

Atunci orice punct limita al sirului xk este punct stationar.

Teorema Fie f de doua ori diferentiabila cu Hessiana pozitivdefinita si continua Lipschitz. Fie, de asemenea, x∗ un punct deminim local pentru problema (NLP). Atunci exista γ > 0 astfelincat daca ∥x0 − x∗∥ < γ, sirul xk produs de metoda Newtonproiectat cu αk = 1 satisface ∥xk − x∗∥ < γ si xk converge la x∗

cu rata de convergenta superliniara.

Page 476: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs XIIMetode de optimizare pentru probleme cu

constrangeri de egalitate

Ion Necoara

2014

Page 477: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme cu constrangeri de egalitate

I Reamintim forma generala a problemelor cu constrangeri deegalitate:

(NLPe) : minx∈Rn

f (x)

s.l.: h(x) = 0,

unde f : Rn → R si h : Rn → Rp sunt functii de doua oridiferentiabile.

I Conditiile de optimalitate de ordinul I pentru aceastaproblema (conditiile KKT): fie x∗ punct de minim atunciexista µ∗ ∈ Rp astfel incat conditiile (KKT-NLPe) au loc:

∇L(x∗, µ∗) =

[∇xL(x∗, µ∗)∇µL(x∗, µ∗)

]=

[∇f (x∗) +∇h(x∗)Tµ∗

h(x∗)

]= 0

unde L(x , µ) = f (x) + µTh(x) este Lagrangianul.

I Reamintim ca x∗ trebuie sa fie punct regulat, i.e. rangul lui∇h(x∗) este p.

Page 478: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemple probleme cu constrangeri de egalitateFie urmatoarea problema de optimizare:

minx∈R2

4x21 + 2x22 + 4x1x2 − x1 + x2

s.l: x1 − x2 = 1

Observam:

I f (x) = 4x21 + 2x22 + 4x1x2 − x1 + x2, f : R2 → RI h(x) = x1 − x2 − 1, h : R2 → RI L(x , µ) = 4x21 + 2x22 + 4x1x2 − x1 + x2 + µ(x1 − x2 − 1)

Din conditiile de optimalitate

[∇xL(x∗, µ∗)∇µL(x∗, µ∗)

]= 0 rezulta sistemul:

8x1 + 4x2 − 1 + µ = 0

4x2 + 4x1 + 1− µ = 0

x1 − x2 − 1 = 0

x∗1 = 2

5

x∗2 = −35

µ∗ = 15

Page 479: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemple probleme cu constrangeri de egalitate

I Consideram sistemul dinamic liniar discret:

zt+1 = Atzt + Btut ∀t ≥ 0,

unde zt ∈ Rnz este starea, si ut ∈ Rnu intrarea sistemului.

I Consideram costuri de etapa: ℓzt (zt) = 1/2∥zt − z reft ∥2Qt,

ℓut (ut) = 1/2∥ut − ureft ∥2Rt

I Formulam problema de control optimal

minzt ,ut

N∑t=1

ℓzt (zt) +N−1∑t=0

ℓut (ut)

s.l.: zt+1 = Atzt + Btut ∀t = 0, . . . ,N − 1.

Page 480: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemple probleme cu constrangeri de egalitate

I Definim variabila de optimizare:

x = [uT0 zT1 uT1 . . . uTN−1 zTN ]T ∈ RN(nz+nu)

si vectorul referinta aferent

x ref = [(uref0 )T (z ref1 )T (uref1 )T . . . (urefN−1)T (z refN )T ]T

I Atunci functia obiectiv poate fi scrisa drept:

f (x) =1

2xT Qx − qT x

unde Q = diag (R0,Q1, . . . ,RN−1,QN), iar q = Qx ref .

I Observatie: problema este de fapt un QP avand constrangeride egalitate.

Page 481: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemple probleme cu constrangeri de egalitate

I Constrangerile din problema de control optimal suntconstrangerile de egalitate ce provin din dinamici:

zt+1 = Atzt + Btut

I Prima constrangere poate fi scrisa drept:−B0u0 + Inz z1 = A0z0

I A doua constrangere poate fi scrisa drept:−A1z1 + B1u1 + Inz z2 = 0

I Considerand astfel dinamicile peste intreg orizontul depredictie, atunci constrangerile pot fi scrise drept:h(x) = Ax − b = 0 unde

A=

−B0 Inz 0 0 . . . 0 0 00 −A1 −B1 Inz . . . 0 0 0...

......

......

......

...0 0 0 0 . . . −AN−1 −BN−1 Inz

si b=

A0z00...0

.

Page 482: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode pentru QP-uri cu constrangeri de egalitate

I Forma standard problema QP cu constrangeri de egalitate:

(QPe) : minx∈Rn

1

2xTQx − qT x

s.l.: Ax = b,

I Daca exprimam conditiile de optimalitate ∇L(x∗, µ∗) = 0,rezulta sistemul KKT:

Qx − q + ATµ = 0

Ax = b.

sau in notatie matriceala (numim K matricea KKT):[Q AT

A 0

]︸ ︷︷ ︸

K

[xµ

]︸︷︷︸y

= Ky =

[qb

].

Page 483: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode pentru QP-uri cu constrangeri de egalitate

I Observatie: matricea (KKT) este ıntotdeauna indefinita.

I Daca matricea A ∈ Rp×n are rangul p si pentru oriced ∈ kernel(A) cu d = 0 avem dTQd > 0, atunci matricea(KKT) este inversabila (demonstrati!).

I Daca A are rang p, atunci orice punct x ∈ Rn este punctregular.

I Mai departe, daca pentru orice d ∈ kernel(A) cu d = 0 avemdTQd > 0, atunci conditiile suficiente de ordinul II suntsatisfacute pentru (QPe). In concluzie, pentru o problemapatratica cu constrangeri de egalitate ın forma (QPe),existenta unui minim local este echivalenta cu inversabilitateamatricei (KKT).

Page 484: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode pentru QP-uri cu constrangeri de egalitateRezolvarea sistemului KKT, Ky = κ, se poate face prinurmatoarele abordari:

I presupunem Q inversabila si A are rangul p, extragem x dinprima ecuatie: x = −Q−1(ATµ− q), introducem x in a doua:

AQ−1ATµ = AQ−1q−b → rezolvam pentru µ → recuperam x

Observam ca AQ−1AT este inversabila, daca A are rangul pI factorizarea LU. K simetrica si pozitiv semidefinita ⇒

utilizeaza o factorizare Cholesky indefinita: PTKP = LDLT ,unde P este o matrice de permutare, D este o matrice blocdiagonala (dim. bloc: 1 sau 2) si L este inferior triunghiulara.

I metoda spatiului nul gaseste o baza (coloane ale lui)Z ∈ Rn×(n−p) pentru kernel(A) si defineste x = Zv + y , undey este o solutie particulara a constrangerilor Ay = bputem elimina constrangerile Ax = b ⇒ reformulam problemaoriginala ca o problema neconstransa QP (x → Zv + y):

minv∈Rn−p

1

2(Zv + y)TQ(Zv + y)− qT (Zv + y).

Page 485: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode pentru NLP-uri generale cu constrangeri deegalitate: metode Lagrange

I Observatie: Daca sistemul KKT nu se poate rezolva explicitprecum in cazul problemelor QP, atunci trecem la metodeiterative pentru NLP-uri cu constrangeri de egalitate.

I Metodele Lagrange se bazeaza pe conditiile KKT:

∇xL(x , µ) = 0, h(x) = 0 ⇐⇒ ∇L(x , µ) = 0.

I Definim:

F (y) = ∇L(x , µ) =[∇xL(x , µ)

h(x)

]I Solutiile problemei NLPe se gasesc in radicinile sistemului

neliniar F (y) = 0I Forma generica a metodelor Lagrange:

(ML) : xk+1 = L(xk , µk)

µk+1 = H(xk , µk),

I Iteratiile metodelor Lagrange depind de un pas αk

Page 486: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode pentru NLP-uri generale cu constrangeri deegalitate: metode Lagrange

I Pasul αk poate fi stabilit conform unei functii de merit

F(x , µ) =1

2∥∇xL(x , µ)∥2 +

1

2∥h(x)∥2

I Observatie: F(x , µ)≥0, F(x , µ)=0 daca si numai daca∇xL(x , µ)=0 si h(x)=0

I Astfel, daca rezolvam problema neconstransa:

minx∈Rn,µ∈Rp

F(x , µ)

(=

1

2∥∇xL(x , µ)∥2 +

1

2∥h(x)∥2

)(1)

⇒ orice punct de minim global (x∗, µ∗) al acestei problemesatisface ∇L(x∗, µ∗) = 0.

I Lema: presupunem ca (x∗, µ∗) este punct de minim local alproblemei (1) care satisface conditiile necesare de ordinul I.Presupunem de asemenea ca rangul lui ∇h(x∗) este p siHessiana ∇2

xL(x∗, µ∗) este pozitiv definita. Atunci (x∗, µ∗)este punct de minim global pentru (1), adica F(x∗, µ∗) = 0.

Page 487: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange de ordin I (ML-I)

F (y) = ∇L(x , µ) =[∇xL(x , µ)

h(x)

]= 0

Metoda gradient pentru rezolvarea sistemului de ecuatiiF (y) = 0 ⇔ yk+1 = yk − αF (yk). Daca yk converge la y∗ atunciF (y∗) = 0.

I Metoda Lagrange de ordin I are iteratia:

(ML− I ) : xk+1 = xk − αk∇xL(xk , µk)

µk+1 = µk + αk h(xk),

I Iteratia se poate scrie echivalent: yk+1 = yk − αkF (yk).

I Metoda Lagrange de ordin I este o metoda iterativa cudirectia (−∇xL(xk , µk), h(xk))

Page 488: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange de ordin I (ML-I)

(ML− I ) : xk+1 = xk − αk∇xL(xk , µk)

µk+1 = µk + αk h(xk),

I Notam: Lk = ∇2xL(xk , µk), lk = ∇xL(xk , µk), hk =

h(xk) si Ak = ∇h(xk).

I Observam: produsul scalar dintre gradientul lui F si directie:

[(Lk lk + ATk hk)

T (Ak lk)T ][−lTk hTk ]

T =−lTk Lk lk−hTk Ak lk+lTk ATk hk

= −lTk Lk lk

I Astfel, daca Lk = ∇2xL(xk , µk) ≻ 0, atunci −lTk Lk lk < 0 si

(−∇xL(xk , µk), h(xk)) este o directie de descrestere pentrufunctia merit F .

Page 489: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange de ordin I (ML-I)

I Putem alege pasul αk astfel:

αk = argminα≥0

F(xk − α∇xL(xk , µk), µk + αh(xk)).

I Iteratia (ML-I) va converge catre un punct ce satisface∇xL(x∗, µ∗) = 0 dar nu putem garanta ca h(x∗) = 0.

I Putem imbunatati convergenta (ML-I) prin alegerea alteifunctii merit si pasul αk corespunzator acesteia:

Fγ(x , µ) =1

2∥∇xL(x , µ)∥2 +

1

2∥h(x)∥2 − γL(x , µ),

cu γ suficient de mic.

I Sub ipoteza Lk = ∇2xL(xk , µk) ≻ 0, (−∇xL(xk , µk), h(xk))

este o directie de descrestere pentru functia merit Fγ :

[(Lk lk + ATk hk − γlk)

T (Ak lk − γhk)T ][−lTk hTk ]

T

= −lTk (Lk − γIn)lk − γh2k < 0,

Page 490: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu pas ML-I

Fie urmatoarea problema de optimizare:

minx∈R2

x41 + x22 + 2x1x2 + x1 + x2

s.l: x1 + x2 = 1

Observam:

I L(x , µ) = x41 + x22 + 2x1x2 + x1 + x2 + µ(x1 + x2 − 1)

I ∇xL(x , µ) =[4x31 + 2x2 + 1 + µ2x2 + 2x1 + 1 + µ

]Consideram x0 = [−1 1]T , µ0 = 0 si α0 = 1. Rezulta:

x1 = x0 − α0∇xL(x0, µ0) =

[00

]µ1 = µ0 + α0h(x0) = −1

Page 491: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta ML

I Punct de atractie: o pereche (x∗, µ∗) se numeste punct deatractie pentru iteratia (ML) daca exista o multime deschisaV ⊂ Rn×p astfel ıncat pentru orice (x0, µ0) ∈ S sirul (xk , µk)generat de iteratie ramane ın S si converge la (x∗, µ∗).

I Teorema: Fie L : Rn×p → Rn si H : Rn×p → Rp functiidiferentiabile astfel ıncat x∗ = L(x∗, µ∗) si µ∗ = H(x∗, µ∗).Mai mult, presupunem ca toate valorile proprii ale matricei dedimensiune (n + p)× (n + p)

R∗ =

[∇xL(x

∗, µ∗) ∇xH(x∗, µ∗)∇µL(x

∗, µ∗) ∇µH(x∗, µ∗)

]sunt ın interiorul cercului unitate. Atunci, (x∗, µ∗) este unpunct de atractie al iteratiei (ML) si cand sirul generat(xk , µk) converge la (x∗, µ∗), rata de convergenta este liniara.

Page 492: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Convergenta ML-I

I Avem astfel urmatoarea teorema pentru metoda Lagrange deordinul I:Teorema: presupunem ca f si h sunt functii de doua oridiferentiabile, x∗ este punct de minim local pentru care existaµ∗ satisfacand conditiile (KKT-NLPe). Presupunem deasemenea ca x∗ este regulat si Hessiana ∇2

xL(x∗, µ∗) estepozitiv definita. Atunci exista α > 0 astfel ıncat pentru oriceα ∈ (0 α], (x∗, µ∗) este un punct de atractie al iteratiei(ML-I) si daca sirul generat (xk , µk) converge la (x∗, µ∗),atunci rata de convergenta este liniara.

Page 493: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange Newton

I Metoda Lagrange Newton este in esenta metoda Newtonaplicata pentru a rezolva sistemul (KKT-NLPe)

F (y) = ∇L(x , µ) =[∇xL(x , λ)

h(x)

]= 0

I Folosind Jacobianul sistemului ∇F (yk) =∂F∂y (yk), atunci

metoda Newton presupune: F (yk) +∇F (yk)(y − yk) = 0

I Sub ipoteza ca Jacobianul sistemului ∇F (yk) este inversabil,iteratia Metodei Newton este:

yk+1 = yk − (∇F (yk))−1 F (yk).

I In termeni de gradienti, iteratia metodei Lagrange NewtonF (yk) +∇F (yk)(y − yk) = 0 este:

∇xL(xk , µk) +∇2xL(xk , µk)(x − xk) + (∇h(xk))

T (µ− µk) = 0

h(xk) +∇h(xk)(x − xk) = 0.

Page 494: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange Newton

I Echivalent, putem scrie sub forma matriceala:[∇2

xL(xk , µk) (∇h(xk))T

∇h(xk) 0

]︸ ︷︷ ︸

matricea KKT

[x − xkµ− µk

]=

[−∇xL(xk , µk)

−h(xk)

].

I Astfel, pentru orice solutie (x∗, µ∗) ce satisface conditiile deordin II, matricea KKT este inversabila intr-o vecinatate aacestei solutii.

I Matricea KKT este inversabila → sistemul are solutie unica.

Page 495: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange Newton

I Obtinem urmatoarea iteratie Newton clasica:

(ML− N) : xk+1 = xk + dk

µk+1 = µk + dµk ,

unde directiile (dk , dµk ) sunt solutia sistemului:[

∇2xL(xk , µk) (∇h(xk))

T

∇h(xk) 0

] [dkdµk

]=

[−∇xL(xk , µk)

−h(xk)

].

I Rezultatele standard ale metodei Newton sunt aplicabile siaici: daca punctul initial (x0, µ0) este suficient de aproape desolutia (x∗, µ∗), atunci sirul (xk , µk) generat de metodaNewton (ML-N) este convergent si converge catre solutie curata cel putin patratica.

Page 496: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu iteratie metoda Lagrange NewtonFie urmatoarea problema de optimizare:

minx∈R2

x41 + x42 − x21x22 + x1 + x2

s.l: x1 + x2 = 2

Observam:

I ∇xL(xk , µk) =

[4x31 − 2x1x

22 + 1 + µ

4x32 − 2x21x2 + 1 + µ

],

∇2xL(xk , µk) =

[12x21 − 2x22 −4x1x2−4x1x2 12x22 − 2x21

]I Atentie: in general avem h : Rn → Rm, iar ∇h(x) reprezinta

Jacobianul functiei. In cazul nostru, avem h(x) = x1 + x2 − 2iar Jacobianul rezulta ∇h(x) =

[1 1

].

I Rezulta astfel matricea KKT:12x21 − 2x22 −4x1x2 1−4x1x2 12x22 − 2x21 1

1 1 0

Page 497: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu iteratie metoda Lagrange Newton

Avem astfel sistemul:12x21 − 2x22 −4x1x2 1−4x1x2 12x22 − 2x21 1

1 1 0

[dkdµk

]=

[−∇xL(xk , µk)

−h(xk)

].

Consideram un punct initial (x0, µ0) cu x0 = [1 0]T si µ0 = 0.Inlocuind in sistemul anterior, rezulta:12 0 1

−0 −2 11 1 0

[d0dµ0

]=

−5−11

⇒[d0dµ0

]=

−3/58/511/5

Rezulta:

(x1, µ1) = (x0, µ0) + (d0, dµ0 ) =

2/58/511/5

Page 498: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange Newton

I Reamintim notatiile: Lk = ∇2xL(xk , µk), lk = ∇xL(xk , µk),

hk = h(xk) si Ak = ∇h(xk).

I Astfel, produsul scalar dintre directiile Newton (dk , dµk ) si

gradientul functiei merit F este (tinand cont de sistemul KKTprecedent satisfacut de directiile (dk dµ

k )):

[Lk lk + ATk hk Ak lk ][d

Tk (dµ

k )T ]T = lTk Lkdk + hTk Akdk + lTk AT

k dµk

= −∥lk∥2 − ∥hk∥2.

I Aceasta expresie este strict negativa cu exceptia cazului candlk = 0 si hk = 0 (adica conditiile (KKT-NLPe)). Astfel,directiile Newton (dk , d

µk ) sunt directii de descrestere.

Page 499: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange Newton

I Metoda Lagrange-Newton este o metoda de descresterepentru o functie merit → are proprietati de convergentaglobala cand iteratia se ia cu un pas variabil.

I Definim astfel metoda Lagrange-Newton generala prinurmatoarea iteratie:

(ML− Nα) : xk+1 = xk + αkdk

µk+1 = µk + αkdµk ,

I Pasul αk este ales sa minimizeze functia merit, i.e.

αk = argminα≥0

F(xk + αdk , µk + αdµk ).

Page 500: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Lagrange NewtonI Daca adaugam expresia (∇h(xk))

Tµk ın prima ecuatie asistemului KKT pentru (ML-N) si tinand cont caµk+1 = µk + dµ

k , atunci acest sistem se rescrie in forma:[∇2

xL(xk , µk) (∇h(xk))T

∇h(xk) 0

] [dk

µk+1

]=

[−∇f (xk)−h(xk)

].

I Acest sistem se poate scrie explicit:

∇f (xk) +∇2xL(xk , µk)dk + (∇h(xk))

Tµk+1 = 0,

h(xk) +∇h(xk)dk = 0.

I Aceste doua relatii sunt de fapt conditiile (KKT) pentru oproblema patratica, adica dk si µk+1 sunt solutiile optime(punctele stationare) obtinute din rezolvarea unui QP deforma (metoda SQP):

mind∈Rn

∇f (xk)Td +

1

2dT∇2

xL(xk , µk)d

s.l.: h(xk) +∇h(xk)d = 0.

Page 501: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu iteratii metoda Lagrange Newton

0.8 1 1.2 1.4 1.6 1.8 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

x1

x2

Iteratia metodei (ML-N) cu punctul initial x0 = [2 2]T pentruproblema neconvexa min

x∈R2: x21+x22=1(x1 − 6)4 + (x1 − 4x2)

2.

Page 502: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton pentru probleme convexe cu constrangeride egalitate

I O problema de optimizare convexa avand constrangeri deegalitate are forma:

(CPe) : minx∈Rn

f (x)

s.l.: Ax = b,

unde f : Rn → R functie convexa si A ∈ Rp×n are rangul p.

I Conditiile (KKT) pentru aceasta problema sunt necesare sisuficiente, i.e. x∗ este punct de minim daca si numai dacaexista µ∗ ∈ Rp astfel ıncat:

(KKT − CPe) : ∇f (x∗) + ATµ∗ = 0, Ax∗ = b.

Page 503: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton pentru probleme convexe cu constrangeride egalitate

I In problema (CPe) putem elimina constrangerile de egalitatepe baza observatiei:

x : Ax = b = Zv + y : v ∈ Rn−p,

unde coloanele lui Z reprezinta o baza pentru kernel(A) si yeste o solutie particulara a sistemului Ax = b.

I In acest caz putem rezolva problema de optimizare convexafara constrangeri:

minv∈Rn−p

f (v) (= f (Zv + y)).

I Daca v∗ este o solutie a problemei convexe fara constrangeri,atunci x∗ = Zv∗ + y este o solutie a problemei originale.

Page 504: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton pentru probleme convexe cu constrangeride egalitate

I Fie xk fezabil, urmatorul punct al iteratiei Newton secalculeaza folosind directia Newton dk ce rezulta dinaproximarea patratica de ordinul II a lui f ın jurul lui xk , i.e.

dk =arg mind∈Rn

f (d) (= f (xk) +∇f (xk)Td +

1

2dT∇2f (xk)d)

s.l.: A(xk + d) = b. (2)

I Aceasta problema este un QP convex avand constrangeri deegalitate Ad = 0, → directia Newton este caracterizata desistemul liniar:[

∇2f (xk) AT

A 0

] [dk

µk+1

]=

[−∇f (xk)

−0

],

I Introducem decrementul Newton:

ν(xk) =(dTk ∇2f (xk)dk

)1/2.

Page 505: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda Newton pentru probleme convexe cu constrangeride egalitate

I Observatie: f (xk)− f (dk) = ν(xk)2/2, ceea ce arata ca

decrementul Newton poate fi folosit ca si criteriu de oprire.I Tinand cont de sistemul KKT pentru gasirea lui dk avem

d

dtf (xk + tdk)

∣∣∣t=0

= ∇f (xk)Tdk = −ν(xk)

2,

adica directia Newton este directie de descrestere, dacaalegem t suficient de mic. In concluzie, metoda Newtongenerala pentru cazul convex (CPe) este data de iteratia:

(MN − CPe) : xk+1 = xk + αkdk ,

unde directia Newton dk este solutia problemei QP (2), pasulαk se alege prin procedura backtracking ın raport cu directiadk pentru functia f , i.e.f (xk + ρmdk) ≤ f (xk) + c1ρ

m∇f (xk)Tdk)

si criteriul de oprire folosit este

ν(xk)/2 ≤ ϵ,

pentru o acuratete fixata ϵ.

Page 506: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Exemplu iteratii metoda Newton pentru probleme convexecu constrangeri de egalitate

0 2 4 6 8 100

2

4

6

8

10

x1

x2

Iteratiile metodei Newton cu pasul αk = 1 pentru problemaconvexa min

x∈R2:x1+2x2=16(x1 − 2)4 + (x1 − 2x2)

2.

Page 507: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs XIIIMetode de punct interior

Ion Necoara

2014

Page 508: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Istoric

Problema de programare liniara (LP):

minx∈Rn

cT x

s.t. Ax = b, x ≥ 0.

Consideram L cantitatea (in bytes) a datelor (A, b, c).

• Metoda simplex dezvoltata de GeorgeDantzig 1947-1951;

I performante practice bune;

I complexitate exponentiala in (n, L) -Klee, Minty (1972).

Problema: Exista algoritmi polinomiali (in nsi L) pentru probleme LP?

Page 509: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Istoric

• Metoda elipsoidului (punct interior)dezvoltata de Leonid Khachiyan 1979;

I performante practice slabe;

I complexitate per iteratie: O(n2L);

I complexitate polinomiala: O(n4L);

• Metoda de punct interior dezvoltata deNarendra Karmarkar 1984;

I performante practice superioaremetodei elipsoidului;

I complexitate per iteratie: O(nL);

I complexitate polinomiala: O(n3.5L);

Page 510: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

IstoricProblema neliniara convexa:

minx∈Rn

f (x)

s.t. Ax = b, g(x) ≤ 0,

unde functiile f , gimi=1 sunt convexe (egalitatile afine!).

• Metoda de punct interior dezvoltata deYurii Nesterov si Arkadii Nemirovsky 1988;

I se aplica clasei de functiiν−autoconcordante;

I complexitate polinomiala pentrudeterminarea unei ϵ−solutii:O (

√ν ln(ν/ϵ));

I pachete software foarte bune: CPLEX,MOSEK, CVX, MATLAB

Page 511: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Worst case versus analiza probabilistica

I metoda simplex pentru LP are performanta practica buna darin worst case complexitate exponentiala. De ce?In medie, numarul de pivoti este:

O(n2)

I netoda de punct interior pentru LP: in medie numarul deiteratii este

O(√n ln n)

i.e. cel mult 30− 50 de iteratii pentru a gasi o solutie

Page 512: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Probleme de programare neliniara (NLP)

(NLP) : minx∈Rn

f (x)

s.l.: g(x) ≤ 0, h(x) = 0,

unde f : Rn → R, g : Rn → Rm si h : Rn → Rp sunt functii dedoua ori diferentiabile.

minx∈Rn

f (x)︷ ︸︸ ︷1

2∥Ax − b∥2

s.l. l ≤ x︸ ︷︷ ︸g(x)=l−x

miny∈Rn

f (y)︷︸︸︷cT y

s.l.n∑

i=1

yi = 1︸ ︷︷ ︸h(y)=

n∑i=1

yi−1

, Cy ≥ d︸ ︷︷ ︸g(y)=d−Cy

Page 513: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii de optimalitate - KKT

Conditiile de optimalitate de ordinul I (conditiile KKT):

∇f (x) +∇h(x)Tµ+∇g(x)Tλ = 0

Λg(x)= 0

g(x) ≤ 0, λ ≥ 0

h(x) = 0,

unde Λ = diag(λ1, · · · , λm).

I Rezolvare dificila prin metode uzuale (e.g. metode multimiloractive): conditiile de complementaritate nu sunt netede.

I Se aproximeaza cu un set de conditii netede.

Page 514: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii KKT perturbate

Conditii de optimalitate pertubate (conditii KKT-IP):

∇f (x) +∇h(x)Tµ+∇g(x)λ = 0

Λg(x)= −τe

g(x) ≤ 0, λ ≥ 0

h(x) = 0.

I Pentru τ = 0 obtinem sistemul KKT original.

I Algoritmii de punct interior rezolva succesiv sistemul(KKT-IP) pentru o serie descrescatoare de valori τk → 0.

I Solutia sistemului (KKT-IP) (x(τ), λ(τ), µ(τ)) converge lasolutia sistemului (KKT) (x∗, λ∗, µ∗) cand τ → 0 (calecentrala).

Page 515: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reformulare ca metoda bariera

Problema (NLP) se rescrie echivalent:

minx∈Rn

f (x) +m∑i=1

I−(gi (x))

s.l. h(x) = 0,

unde I− : R → R, I−(x) =

0, daca x ≤ 0

∞, daca x > 0.

⇒ Functia indicator I−(·) este nediferentiabila;⇒ Cautam aproximare cu functia bariera logaritmica;

minx∈Rn

f (x)− τm∑i=1

log(−gi (x))

s.t. h(x) = 0.

Page 516: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aproximare functie indicator cu bariera logaritmica

g(x) = |x | − 1

I−(g(x)) =

0, daca |x | ≤ 1

∞, daca |x | > 1.

B(x) = −τ(log(1 + x) + log(1− x))−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

0

0.5

1

1.5

2

2.5

3

3.5

4

τ=1τ=0.5τ=0.1

g(x) = x

I−(g(x)) =

0, daca x ≤ 0

∞, daca x > 0.

B(x) = −τ log(−x)−1000 −900 −800 −700 −600 −500 −400 −300 −200 −100 0

−6

−4

−2

0

2

4

τ=1τ=0.5τ=0.1

Page 517: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reformulare ca metoda barieraConditii de optimalitate ale formularii cu functia bariera:

∇f (x)−m∑i=1

τ

gi (x)︸ ︷︷ ︸λi

∇gi (x) +∇h(x)Tµ = 0

h(x) = 0.

⇒ Avem gi (x) < 0 datorita domeniul de definitie al functiei log(·);⇒ Notand λi = − τ

gi (x)> 0 obtinem conditiile (KKT-IP)

∇f (x) +m∑i=1

λi∇gi (x) +∇h(x)Tµ = 0

λigi (x)= −τ

g(x) < 0, λ > 0

h(x) = 0.

Page 518: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru probleme de optimizare convexe

minx∈Rn

f (x)

s.l. g(x) ≤ 0, Ax = b.

⇒ f , g convexe si de doua ori diferentiabile, A ∈ Rp×n de rang p;⇒ MPI presupun aplicarea Metodei Newton pe reformularea cubariera logaritmica.

minx∈Rn

f (x)− τ

m∑i=1

log(−gi (x))

s.l. Ax = b.

⇒ Notam functia bariera B(x) = −m∑i=1

log(−gi (x)) si punctul de

optim x(τ) ce satisface g(x(τ)) < 0 si Ax(τ) = b.

Page 519: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru probleme de optimizare convexe

⇒ Punctele de optim x(τ) definesc calea centrala si satisfac

∇f (x(τ)) +∇B(x(τ)) + AT µ = 0.

⇒ Orice punct x(τ) produce un punct dual fezabil.

Alegem punctul dual fezabil definit de λi (τ) = − τgi (x(τ))

si

µ(τ) = τ µ. Functia duala in acest punct satisface

q(λ(τ), µ(τ)) = f (x(τ)) +m∑i=1

λi (τ)gi (x(τ)) + µ(τ)T (Ax(τ)− b)

= f (x(τ))−mτ

≤ maxλ,µ

q(λ, µ) = f ∗.

Concluzionam ca x(τ) satisface

f (x(τ))− f ∗ ≤ mτ .

Page 520: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru probleme de optimizare convexe

Metoda bariera

Alegem x0 strict fezabil, τ0 > 0, σ < 1 si ϵ > 0.Cat timp mτk ≥ ϵ repeta:

1. Calculeaza xk+1 = x(τk) pornind din punctul initial xk (”warmstart”);

2. Descreste parametrul τk+1 = στk .

⇒ Pentru a determina xk+1 rezolvam (e.g. prin Metoda Newton)reformularea cu bariera logaritmica cu parametrul τk , pornind dinpunctul initial xk ;

⇒ Dupa k iteratii avem f (xk)− f ∗ ≤ mτ0σk .

Page 521: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru LPminx∈Rn

cT x

s.l. Ax ≤ b,

I figuri luate din VandenbergheI hiperplanul cT x = cT x(τ) este tangent la multimea nivel a

functieie bariera B(x) = −∑

i log(bi − Aix) prin x(τ)

Lτ = x : B(x) = B(x(τ))I multimile nivel Lτ aproximeaza din ce in ce mai bine frontiera

multimii fezabile x : Ax ≤ b pentru τ → 0

Page 522: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru LPLP cu m = 100 inegalitati si n = 50 variabile

I pornim cu x de pe calea centrala (τ0 = 1)I terminam cand τ = 10−8

I pentru calcularea centrilor x(τ) utilizam metoda Newtonpentru egalitati folosind backtracking

I numarul total de iteratii Newton pentru un σ fixat este deordinul zecilor

I numarul total de iteratii Newton nu este foarte senzitiv pentruσ ≤ 0.1

Page 523: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru LP, QP, SOCP, SDPPachete software eficiente (CVX, MATLAB) pentru rezolvarea deprobleme convexe peste conul Rn

+ (positive orthant), Ln (conulLorentz), Sn

+ (conul positiv demidefinit)

I numarul total de iteratii Newton nu este foarte senzitiv inraport cu σ

Page 524: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru SDP• O familie de probleme SDP (A ∈ Sn si x ∈ Rn)

minx

1T x

s.l.: A+ diag(x) ≽ 0

• Pentru fiecare n = 10, · · · , 1000 rezolvam 100 de probleme SDPgenerate random

Page 525: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metode de punct interior primale-duale

Mai eficiente decat metoda bariera cand se doreste acuratete mare

I actualizeaza la fiecare iteratie atat variabilele primale, cat siduale

I nu se face distinctie intre iteratiile inner si outer

I au adesea convergenta superliniara (spre deosebire de metodaprecedenta ce are convergenta liniara)

I directiile de cautare pot fi interpretate ca directii Newtonpentru conditiile KKT modificate

I exista versiuni care pornesc din puncte nefezabile

I costul iteratie este similar cu al metodei bariera

Page 526: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

MPI pentru probleme de optimizare neconvexe

minx∈Rn

f (x)

s.l. g(x) ≤ 0, h(x) = 0.

⇒ functiile f , g , h de doua ori diferentiabile (posibil neconvexe);⇒ cautam un punct stationar (in cazul convex, MPI determinaminim-ul global);Reformulare echivalenta

minx∈Rn

f (x)

s.l. g(x) + s = 0, h(x) = 0, s ≥ 0.

⇒ Similar cazului convex, mutam constrangerile de inegalitate(s ≥ 0) in cost utilizand functia bariera logaritmica:

minx∈Rn

f (x)−τ

m∑i=1

log(si )

s.l. g(x) = s, h(x) = 0.

Page 527: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Conditii KKT perturbate

(KKT-IPs): ∇f (x) +∇h(x)Tµ+∇g(x)λ = 0

Λs − τe= 0

g(x) + s = 0, h(x) = 0

s ≥ 0, λ ≥ 0.

unde Λ = diagλ ⇒ MPI rezolva sistemul perturbat prin metodaNewton;Fie x punctul curent, obtinem sistemul liniar primal-dual:

∇2xL 0 ∇hT ∇gT

0 Λ 0 S∇h 0 0 0∇g I 0 0

dx

d s

= −

∇f +∇hTµ+∇gTλ

Λs − τeh

g + s,

unde S = diag(s) si L(x , s, λ, µ) = f (x) + (g(x) + s)Tλ+ h(x)Tµ.

Page 528: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Metoda NewtonIteratie Metoda Newton:

xk+1 = xk + αxkd

xk , sk+1 = sk + αx

kdsk ,

µk+1 = µk + αµkd

µk , λk+1 = λk + αµ

kdλk ,

unde (dxk , d

sk , d

µk , d

λk ) este solutia sistemului primal-dual.

⇒ pasul αµk se alege in intervalul (0, αµ

max];⇒ pasul αx

k se alege pe baza unei functii merit Mν(x , s, τ);

Mν(x , s, τ) = f (x)−τ

m∑i=1

log(si )+ν∥h(x)∥1+ν

m∑i=1

|max0, gi (x)|.

Se aleg ρ, c1 ∈ (0, 1], pasul αxk = ρm, unde m este cel mai mic

intreg ce satisface relatia (de backtracking)

Mν(xk + ρmdxk , sk + ρmd s

k , τk) ≤Mν(xk , sk , τk)

+ c1ρmM′

ν(xk , sk , τk ; dxk , d

sk).

Page 529: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Solvere: Matlab, SeDumi, CVXExista diferite solvere pentru rezolvarea problemelor NLP generalebazate pe implementari de punct interior:

I Matlab: linprog pentru LP; quadprog pentru QP, fminconpentru NLP generale

I Sedumi rezolva probleme convexe in format SDP pentru cele4 tipuri de conuri: Rn,Rn

+,Ln, Sn+

I CVX rezolva probleme convexe mai generale (e.g. poaterezolva asa numitele probleme de tip “geometricprogramming”)

Exemplu: in Matlab functia

X = quadprog(Q, q,A, b)

minimizeaza problema QP

min 0.5xTQx + qT x s.l. : Ax ≤ b

Page 530: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tema 3

Fiecare student alege o aplicatie a.i. sa se modeleze ca o problemede optimizare cu constrangeri. Cerinte:

I descrieti in detaliu aplicatia aleasa

I dati formularea matematica ca o problema de optimizare NLP

I utilizati cel putin 2 algorithmi de optimizare dati la curspentru rezolvarea ei

I dati codul Matlab pentru cei 2 algoritmi

I comparati rezultatele cu functia Matlab fmincon

I comentati rezultatele obtinute (grafice, tabele)

Vezi urmatorul curs pentru un exemplu de aplicatie ce respectacerintele de mai sus.

Page 531: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnici de Optimizare

Curs XIVAplicatii

Ion Necoara

2014

Page 532: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal liniarFie sistemul liniar,

zt+1 = Azzt + Buut ,

unde zt ∈ Rnz , reprezinta starea sistemului, ut ∈ Rnu reprezintaintrarea. Consideram constrangeri pe stare si intrare:

lz ≤ zt ≤ uz , Cuut ≤ du ∀t ≥ 0

Problema de control optimal pe orizont finit N:

minzi ,ui

1

2

N∑i=1

∥zi − z refi ∥2Qi+

N−1∑i=0

∥ui − urefi ∥2Ri

s.l. z0 = z , zi+1 = Azzi + Buui ,

lz ≤ zi ≤ uz , Cuui ≤ du, ∀i = 1, . . . ,N − 1.

• Matricile Qi ,Ri sunt pozitiv definite pt. orice i• z refi , urefi referinte impuse pt. starea si intrarea sistemului

Page 533: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP raraAducem problema de optimizare la o forma standard:

• Redefinim variabila de decizie x ∈ RN(nz+nu)

x = [uT0 zT1 uT1 zT2 · · · uTN−1 zTN ]T .

Rescriem ecuatiile dinamicii sistemului zi+1 = Azzi + Buui :

z1 − Buu0 = Azz0 ⇔ [−Bu Inz 0 0 . . . 0 0 0] x = Az0

z2 − Azz1 − Buu1 = 0 ⇔ [0 − Az − Bu Inz . . . 0 0 0] x = 0

· · · · · · · · · · · ·zN − AzzN−1 − BuuN−1 = 0 ⇔ [0 0 0 0 . . . − Az Bu Inz ] x = 0.

Rescriem constrangerile pe stare, astfel:

lz ≤ zt ≤ uz ⇔[Inz−Inz

]︸ ︷︷ ︸

Cz

zt ≤[uz−lz

]︸ ︷︷ ︸

dz

Page 534: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP rara• Reformulam constrangerile definite de dinamici:

Ax = b

A =

−Bu Inz 0 0 . . . 0 0 00 −Az −Bu Inz . . . 0 0 0...

......

......

......

...0 0 0 0 . . . −Az Bu Inz

, b =

Azz00...0

• Reformulam constrangerile pe stare si intrare:

Cx ≤ d

C =

Cu 0 0 0 00 Cz 0 0 00 0 · · · 0 00 0 0 Cu 00 0 0 0 Cz

, d =

dudz...dudz

Page 535: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP rara

Obs.: fie matricile U,V ≻ 0 si x , y vectori cu dim. compatibile:

∥x∥2U = xTUx , xTUx + yTVy = [xT yT ]

[U 00 V

] [xy

].

• Reformulam functia obiectiv utilizand observatia precedenta:

1

2

N∑i=1

(∥zi − z refi ∥2Qi

+ ∥ui−1 − urefi−1∥2Ri−1

)=

1

2

N∑i=1

[ui−1 − urefi−1

zi − z refi

]T [Ri−1 00 Qi

] [ui−1 − urefi−1

zi − z refi

]=

1

2(x − x ref )TQ(x − x ref ),

unde am folosit notatiile:x=[uT0 z

T1 · · · uTN−1z

TN ], x ref =[(uref0 )T (z ref1 )T · · · (urefN−1)

T (z refN )T ]si Q = diag(R0,Q1, · · · ,RN−1,QN).

Page 536: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP rara

Formularea problemei de control optimal pe orizont finit rara (faraeliminarea starilor):

minx∈RN(nz+nu)

1

2xTQx + qT x

s.l. Ax = b, Cx ≤ d ,

unde q = Q ∗ x ref .

⇒ forma standard de programare patratica⇒ matricile QP-ului sunt rare: Q si C sunt bloc diagonale, iar Abloc tridiagonala⇒ se aplica algoritmi eficienti specifici optimizarii constranse infunctie de dimensiunea problemei

Page 537: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP densa⇒ Dorim reformularea dinamicilor zt+1 = Azzt + Buut prineliminarea starilor, i.e. variabila devine: x = [uT0 · · · uTN−1]

T ∈ RNnu

z1 = Azz0 + Buu0

z2 = Azz1 + Buu1 = A2zz0 + AzBuu0 + Buu1

· · ·zN = AzzN−1 + BuuN−1 = AN

z z0 + AN−1z Buu0 + · · ·+ BuuN−1

⇒ Notand z = [zT1 · · · zTN ]T ∈ RNnz obtinem:

z=

Bu 0 0 0 · · · 0

AzBu Bu 0 0 · · · 0A2zBu AzBu Bu 0 · · · 0...

......

......

...AN−1z Bu AN−2

z Bu AN−3z Bu AN−4

z Bu · · · Bu

︸ ︷︷ ︸

AB

x +

Az

A2z

A3z...

ANz

︸ ︷︷ ︸

Ap

z0.

Page 538: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP densa

⇒ Obtinem forma QP, reformuland constrangerile pe stare/intrare.

⇒ Concatenam constrangerile pe stare:

Czzi ≤ dz ∀i = 1, · · · ,N ⇔ Cz z ≤ dz ,

unde Cz = diag (Cz , · · · ,Cz) si dz = [dTz · · · dT

z ]T .

⇒ Combinand cu ecuatia matriceala z = ABx + Apz0 obtinem:

Cz z ≤ dz ⇔ Cz(ABx + Apz0) ≤ dz

⇔ Cz AB︸ ︷︷ ︸C ′x

x ≤ dz − CzApz0︸ ︷︷ ︸d ′x

⇒ Concatenam constrangerile pe intrare:

Cuui ≤ du ∀i = 0, · · · ,N − 1 ⇔ C ′′x x ≤ d ′′

x ,

unde C ′′x = diag (Cu, · · · ,Cu) si d

′′x = [dT

u · · · dTu ]T

Page 539: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Formulare QP densa⇒ Formularea problemei de control optimal pe orizont finit densa(cu eliminarea starilor):

minx∈RNnu

1

2xTQx + qT x

s.l. Cxx ≤ dx ,

unde Cx = [(C ′x)

T (C ′′x )

T ]T si dx = [(d ′x)

T (d ′′x )

T ]T

⇒ Notand Q = diag(Q1, · · · ,QN) si R = diag(R0, · · · ,RN−1),atunci functia obiectiv devine:N∑i=1

(∥zi − z refi ∥2Qi

+ ∥ui−1 − urefi−1∥2Ri−1

)= (ABx+Apz0−z ref )T Q(ABx+Apz0−z ref ) + (x−uref )T R(x−uref )

unde reamintim ca x=[uT0 · · · uTN−1]T , z ref =[(z ref1 )T · · · (z refN )T ]T

si uref = [(urefo )T · · · (urefN−1)T ]T

⇒ Forma particulara de programare patratica avand numaiconstrangeri de inegalitate (matrici dense)

Page 540: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck

Robot E-puck

I microcontrolerdsPIC30 (16-bit)

I Bluetooth

I senzori infrarosu

I camera video CMOS(rezolutie 640× 480)

I senzor ultrasunete

I accelerometru 3D.

• Dezvoltat de EPFL (detalii: www.e-puck.org)• Laboratorul de “Optimizare si Control Distribuit” al Depart.ACSE are 4 roboti si masa speciala pentru teste (Sala ED205)

Page 541: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck

• Model continuu liniar simplificat al robotului E-Puck(restrictionat la deplasarea ınainte):

y=ru12

+ru22

,

θ=ru12l

− ru22l

,

• y distanta parcursa, θ unghiul de viraj, r raza rotilor, l distantaroata-centru de greutate, u1 si u2 vitezele unghiulare ale rotilor.

• Notand starea z = [y θ]T si intrarea u = [u1 u2]T avem:

z = Azz + Buu,

unde Az = 0 ∈ R2×2 si Bu =

[r2

r2

r2l − r

2l

].

• Discretizam formularea continua prin metoda Euler

Page 542: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck

Pentru pasul de discretizare ∆t avem

zt+1 =(I2 −∆tAz

)zt +∆tBuut ,

Alegem ∆t = 0.5 sec si obtinem:

zt+1 = Azzt + Buut , unde Az = I2 −1

2Az , Bu =

1

2Bu.

Problema de control optimal:Urmarirea unei traiectorii sinusoidale z reft = [y reft , θreft ]T :

Page 543: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck• Formulare QP rara a problemei de MPC de orizont N = 2:

minzi ,ui

1

2(z − z ref)T Q(z − z ref) +

1

2uT Ru

s.l.: z1 = Azz0 + Buu0, z2 = Azz1 + Buu1,

umin ≤ u0 ≤ umax, umin ≤ u1 ≤ umax,

unde z=[z1 z2], u=[u0 u1], Q=diag(I2, I2), R=diag(0.1I2, 0.1I2).

• Reformulam urmatorul QP in variabila x = [uT0 zT1 uT1 zT2 ]T :

minx

1

2xT

0.1 ∗ I2 0 0 0

0 I2 0 00 0 0.1 ∗ I2 00 0 0 I2

x − [0 (z ref1 )T 0 (z ref2 )T ]x

s.l.:

[−Bu I2 0 00 −Az −Bu I2

]x=

[−Azz0

0

],

I2 0 0 0−I2 0 0 00 0 I2 00 0 −I2 0

x=umax

−umin

umax

−umin

Page 544: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck

Metoda de punct interior presupune transformarea echivalenta aproblemei QP intr-una fara inegalitati:

minx

1

2xTQx + qT x − τ

8∑j=1

log(dj − Cjx) (1)

s.l.: Ax = b,

unde Cj reprezinta linia j a matricei C .Metoda de punct interior:

1. se dau un punct initial x strict fezabil, τ > 0, σ < 1, tolerantaϵ > 0 si parametrul m numarul de inegalitati;

2. cat timp mτ ≥ ϵ repeta:

(i) calculeaza x(τ) ca solutie a problemei (1) pornind din x ;(ii) actualizeaza x = x(τ) si τ = στ .

Page 545: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Urmarirea traiectoriei cu un robot E-Puck

0 20 40 60 80 100−1.5

−1

−0.5

0

0.5

1

1.5

t

Trai

ecto

rie

Pozitia zReferinta

0 20 40 60 80 100−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

t

Intra

ri op

time

(u1, u

2)

viteza unghiulara 1viteza unghiulara 2

Page 546: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal pentru pendulul invers

Formulam problema de control optimal a mentinerii pendululuiinvers in pozitie verticala

Structura:

I suport de masa M;I pendul format din

I bila de masa m;I tija de lungime l ;

Vectorul de stare z ∈ R4 se compune din: z1 = θ unghiul tijei cuverticala, z2 = θ viteza unghiulara, z3 pozitia pendulului(suportului) pe axa Ox , z4 viteza sa.

Page 547: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal pentru pendulul invers

Modelul liniar discret al sistemului

zt+1 = Azzt + Buut ,

unde ut ∈ R reprezinta corectia deplasarii orizontale,

Az =

1.0259 0.504 0 01.0389 1.0259 0 0−0.0006 0 1 0.05−0.0247 −0.0006 0 1

Bu =

−0.0013−0.05040.00060.025

.

Obiectiv: mentinerea tijei suficient de aproape de verticala (in oricemoment avem −10 ≤ z1 = θ ≤ 10); reprezinta constrangeri pestare ale sistemului.

Page 548: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal pentru pendulul invers

Considerand z reft = ureft = 0 pentru orice t ≥ 0, formulamproblema de control optimal pe un orizont finit N:

minzi ,ui

N∑i=1

1

2zTi Q0zi +

N−1∑i=0

1

2R0u

2i

s.l.: z0 = z , zi+1 = Azzi + Buui

θmin ≤ (zi )1 ≤ θmax ∀i = 0, . . . ,N − 1,

unde z este starea initiala a pendulului, iar matricele din cost

Q0 =

1 0 0 00 0.01 0 00 0 1 00 0 0 0.01

si R0 = 10.

Page 549: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal pentru pendulul invers

Formularea (QP) rara fara eliminarea starilor:

minx

1

2xTQx

s.l.: Ax = b, Cx ≤ d ,

unde Q = diag(R0,Q0, . . . ,R0,Q0) si daca definim

Cz =

[1 0 0 0−1 0 0 0

]& dz = [θmax − θmin]

T , atunci

C =

0 Cz 0 0 . . . 00 0 0 Cz . . . 0...

......

......

...0 0 0 0 . . . Cz

, d =

dzdz...dz

Pentru rezolvare utilizam metoda de punct interior!

Page 550: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Control optimal pentru pendulul invers

Traiectoria unghiului θ pentru un orizont de predictie N = 25.

0 5 10 15 20 25−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25un

ghiu

l(Θ)

t

⇒ Observam ca la pasul t = 2 constrangerea pe unghi este activasi dupa pasul t = 15 unghiul tijei cu axa verticala devine θ = 0.

Page 551: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Google (ierarhizarea paginilor web)

An vs. Numar pagini webhttp://www.internetlivestats.com/

I Doar in 2013, numarul paginilor web a crescut cu 30%;

I Problema centrala a motoarelor de cautare:selectia/ierarhizarea (“ranking”-ul) surselor de informatiefunctie de relevanta raportata la obiectul cautat.

Page 552: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Google - Formularea algebricaI PageRank: clasificarea unui numar urias de pagini web;I Reteaua paginilor se reprezinta prin intermediul unui graf

ponderat orientat, unde nod ≡ pagina, iar muchie ≡ link.I Ponderea pij = probabilitatea ca la o navigare aleatorie sa se

ajunga din pagina i in pagina j .I Matrice de adiacenta E ∈ Rn×n: Eij = pij > 0 daca intre i si j

exista muchie sau Eij = 0 daca i si j nu sunt legate.I Matricea E este stocastica pe coloane (i.e.

∑nj=1 Eij = 1 ∀i),

deci valoarea proprie maxima in modul este 1;I Determinati vectorul propriu x ∈ Rn astfel incat

Ex = x , eT x = 1, x ≥ 0 (x vectorul probabilitatilor deaccesare pagina i)

Page 553: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Google - Problema de optimizareFormulare ca problema de optimizare QP:

minx∈Rn

1

2∥Ex − x∥2

s.l.: eT x = 1, x ≥ 0,

unde e = [1 . . . 1]T .

Formulare echivalenta neconstransa via penalitate (alegandτ > 0 suficient de mare):

minx∈Rn

1

2∥Ex − x∥2 + τ

2(eT x − 1)2.

I Pe baza teoremei Peron-Frobenius, asiguram constrangerile deinegalitate x ≥ 0 in cazul neconstrans.

I Uzual n ≈ 108 − 109, restrange aplicabilitatea algoritmilor lacei de ordinul I ( datorita complexitatii scazute per iteratie).

I Aplicam Metoda de Gradient Proiectat pentru rezolvareaambelor formulari.

Page 554: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Google

(i) Formularea constransa:

minx∈Rn

1

2∥Ex − x∥2

s.l.: eT x = 1, x ≥ 0,

Metoda de Gradient Proiectat: xk+1 = [xk − α∇f (xk)](In,∆n),

∆n=x : eT x = 1, x ≥ 0 si α > 0.

0 5 10 15 20 250

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Iteratii (k)

k

Convergenta metodei degradient proiectat

(n = 102).

Pentru proiectia pe multimeasimplex ∆n aplicam algo-ritmi cu convergenta in timpliniar(necesita O(n) operatii).

Page 555: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Problema Google(ii) Formularea neconstransa:

minx∈Rn

1

2∥Ex − x∥2 + τ

2(eT x − 1)2.

Metoda Gradient: xk+1 = xk − α∇F (xk , τ)

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Iteratii (k)

k

0 1 2 3 4 5x 10

4

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Iteratii (k)

f(x

k)

− f

τ=5

τ=10

τ=15

τ=30

τ=50

Curba de convergenta a metodei de gradient pentru problemaGoogle cu n = 103, τ = 50 (stanga); dependenta convergentei de

parametrul τ (n = 103) (dreapta).

Page 556: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Invatare automata - Clasificare de imaginiTehnicile de clasificare (“pattern recognition”) se ocupa cuidentificarea clasei din care un obiect studiat face parte.

I etapa de antrenare: se acumuleaza un set de observatii (sauinstante) cu apartenenta la categorii cunoscuta;

I etapa de clasificare: se dezvolta modele matematice(estimatoare) cu rolul de a clasifica un nou obiect cuapartenenta necunoscuta;

Aplicatii:

1. recunoasterea email-urilor de tip spam sau malware;

2. recunosterea vocii/fetei;

3. detectia de tipare in cadrul unei imagini;

4. recunoasterea scrisului de mana.

Page 557: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnica Support Vector Machine - etapa de antrenare• Dispunem de un set de puncte recunoscute a priori: yimi=1 (e.g.puncte de culori diferite). Pentru fiecare punct yi cunoastem clasadin care face parte: ci cu valoarea +1 daca yi este de culoare rosiesau ci = −1 daca este de culoare albastra.• Principiu antrenare: Se determina un model matematic(hiperplan) H = y ∈ Rn : aT y = b astfel incat orice yi cesatiface aT yi ≤ b − ξ este de culoare rosie, iar daca aT yi ≥ b + ξeste de culoare albastra.• Presupunem ca datele yimi=1 sunt liniar separabile si selectamdoua hiperplane marginale descrise de: aT y − b = 1 siaT y − b = −1 ce nu contin puncte intre ele.• Problema: Determinati (a, b) ce maximizeaza distanta dintrecele doua hiperplane, descrisa de 2/∥a∥.

Page 558: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Tehnica Support Vector MachineEtapa de antrenare se reduce la problema de optimizare:

mina∈Rn,b∈R

1

2∥a∥2

s.l.: ci

(aT yi − b

)≥ 1 ∀i = 1, . . . ,m,

unde a si b reprezinta parametrii hiperplanului, iar ci indica clasa(culoarea) obiectului yi .

⇒ Problema de optimizare convexa patratica avand numaiconstrangeri de inegalitate ⇒ metodele de optimizare constransapot fi utilizate (e.g. metoda gradient proiectat - dificil de proiectatpe un set mare de semispatii; metoda de punct interior, etc...)

⇒ Principiu clasificare: Hiperplanul cu parametrii (a, b), obtinutin etapa de antrenare, se utilizeaza pentru identificarea unui nouobiect z ; daca aT z ≤ b atunci obiectul apartine clasei 1, altfeldaca aT z ≥ b apartine clasei 2.

Page 559: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicarea tehnicii SVM in recunoasterea de imagini

• Reprezentarea numerica a imaginilor: fiecare pixel este definit deo valoare (e.g. intre 0 si 256) ce contine culoarea acestuia.• Consideram imagini mono-colore de dim. 7× 7 ale cifrei 7 undepixelii sunt reprezentati de nivele de gri cu valori intre 0 si 5.• Problema: Determinati daca intr-o imagine data se afla cifra 7.• Etapa de antrenare: acumulam un set de imagini de antrenareale cifrei 7 in diferite pozitii (clasa I) si imagini aleatorii completdiferite de cifra 7 (clasa II).• Imaginii i se asociaza un vector yi ∈ N49 (cu valori intre 0 si 5) siindexul ci al clasei (daca ci = 1 atunci contine cifra 7, dacaci = −1 atunci imaginea este aleatorie).

Page 560: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Aplicarea tehnicii SVM in recunoasterea de imagini• Determinam hiperplanul optim cu parametrii (a, b)Etapa de clasificare:• Pentru imaginile de test (de mai jos) calculam valoareahiperplanului:

aT y − b

< 0, atunci imaginea data de y nu contine cifra 7;

≥ 0, atunci imaginea data de y contine cifra 7.

Page 561: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Rezultate

I clasificarea unui set de imagini aleatorii cu densitate mare depixeli gri si respectiv, imagini cu cifra 7 transformata in diversemoduri (translatie la stanga/dreapta, inclinare, etc.) atinge orata de succes (recunoastere corecta) de aproximativ 80%;

I clasificarea unui set de imagini aleatorii cu densitate mica sirespectiv, imagini cu cifra 7 transformata in diverse moduri(translatie la stanga/dreapta, inclinare), atunci rezulta o ratade succes de aproximativ 52%.

⇒ Obtinem o rata mai mica de succes in cel de-al doilea caz dindoua motive:

(i) similaritatea ridicata intre imaginile cu densitate mica si celece contin cifra 7;

(ii) numarul relativ mic de imagini de antrenare.

Page 562: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara• Se dau urmatoarele:

I functii f1, · · · , fn numiti regresori sau functii de baza

I date sau masuratori (ui , bi ) ∀i = 1, . . . ,m (de obicei m ≫ n)

• Problema: gasiti coeficientii reali x1, · · · xn s.t.

bi = x1f1(u1) + · · ·+ xnfn(u1) ∀i = 1, · · · ,m

• Fie A ∈ Rm×n, Aij = fj(ui ), obtinem problema de optimizare:

minx∈Rn

m∑i=1

(x1f1(ui ) + · · ·+ xnfn(ui )− bi )2 = ∥Ax − b∥2.

• Solutia problemei de optimizare (cmmp) minx∈Rn ∥Ax − b∥2:I A patratica si inversabila, atunci solutie unica

I A cu n ≫ m (subdeterminata) - o infinitate de solutii

I A cu m ≫ n (supradeterminata) - nici o solutie, atunci secauta solutia care minimizeaza expresia patratica (CMMP)

Page 563: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara

• Solutia problemei de optimizare (cmmp):

minx∈Rn

∥Ax − b∥2

Orice algoritm de optimizare neconstransa (metoda gradient saugradientilor conjugati, metoda Newton, etc) poate fi utilizat!

I metoda gradientilor conjugati determina solutia in n iteratiidaca A inversabila sau rang intreg pe coloane - una din celemai folosite metode pentru rezolvarea acestor tipuri deprobleme (vezi si cursul de MN unde ati utilizat metodele LUsau QR - neiterative)

I metoda gradient poate fi si ea utilizata (daca matricea A arerang intreg pe coloane, atunci obtinem convergenta liniara,altfel subliniara)

I metoda Newton produce solutia intr-o singura iteratie cand sepoate utiliza (A inversabila sau rang intreg pe coloane)

Page 564: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara 1 - fitting-ul unui polinom

• Problema: fitting un polinom de grad < n

p(t) = x0 + x1t + · · ·+ xn−1tn−1

la datele (ti , bi ), i = 1, · · · ,mI functii de baza pj(t) = t j−1 pentru j = 1, · · · , nI matricea A cu intrarile Aij = t j−1

i (matrice Vandermonde)

A =

1 t1 t21 · · · tn−1

1

1 t2 t22 · · · tn−12

......

......

...1 tm t2m · · · tn−1

m

• Exemplu: aproximam functia f (t) = 4t

1+10t2cu un polinom pe

intervalul [0, 1] avand la dispozitie 100 de date

Page 565: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara 1 - fitting-ul unui polinom

I Regresie liniara (A ∈ R100×d) cu polinoame de gradd = 1, 2, 3, 4 avand eroarea∥Ax∗ − b∥ = 0.135, 0.076, 0.025, 0.005

I Linie continua g(t), linie punctate pd(t) pe [0, 1]

Page 566: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara 2 - identificarea sistemelorConsideram un sistem intrare-iesire:

Pentru sistemul considerat dispunem de 40 de masuratoriintrare-iesire u(t), y(t):

15 20 25 30 35 40

t0 5 10 15 20 25 30 35 40

2.5

3

3.5

4

4.5

5

5.5

6

6.5

7

7.5

t

y(t)

Page 567: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara 2 - identificarea sistemelorDorim sa aproximam sistemul printr-un model intrare-iesire deforma ARMA:

ymodel(t) = x1u(t)+x2u(t−1)+x3u(t−2)+x4u(t−3)+x5u(t−4).

Determinarea setului de parametri x = [x1 · · · x5]T ai modeluluipoate fi realizata prin rezolvarea unei probleme patraticeneconstranse:

minx∈R5

∥Ax − b∥2 cu A ∈ R36×5

b = [y(5) y(6) · · · y(40)]T

A =

u(5) u(4) u(3) u(2) u(1)u(6) u(5) u(4) u(3) u(2)u(7) u(6) u(5) u(4) u(3)...

......

......

u(40) u(39) u(38) u(37) u(36)

Page 568: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Regresie liniara 2 - identificarea sistemelorRaspunsul modelului estimat:

5 10 15 20 25 30 35 40

Raspunsul estimat si raspunsul real

model(t)

(t)

Page 569: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reconstructie tomografica

Tomografie computerizata = tehnica noninvaziva ce folosesteraze X (sau alte tipuri de radiatii) pentru a produce imagini 2D/3Dale interiorului obiectului scanat.Procedura de functionare:

1. Se achizitioneaza o serie deproiectii, din diferite unghiuri,ale obiectului scanat;

www.merckmanuals.com

2. Prin intermediul proiecti-ilor obtinute, se reconstruiesteinteriorul obiectului cu ajutorulunui algoritm iterativ;

www.mathworks.com

In majoritatea cazurilor, radiatiile folosite sunt daunatoare; deaceea se urmareste achizitionarea unui numar minim de proiectii.

Page 570: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Reconstructie tomografica - formularea problemei• Fie x ∈ Rn imaginea interiorului de reconstruit.• Pentru reconstructie, dispunem de diferite masuratori liniare(proiectii) ale imaginii x : bi = Aix , i = 1, · · · ,m.• Notam vectorul proiectiilor b ∈ Rm si A = [AT

1 · · ·ATm]

T ∈ Rm×n

matricea de achizitie.• Imaginea interiorului reprezinta solutia sistemului liniar(subdeterminat deoarece sunt mai putine masuratori m decatdimensiunea imaginii n): Ax = b.• Reformulare in termeni de problema CMMP:

minx∈Rn: Ax=b

∥x∥α

unde de obicei se alege α = 2 sau α = 0 sau α = 1. Alegemα = 0 ∨ 1 pentru a induce o reprezentare rara a imaginii (vectorulsolutie). Se doreste o reprezentare rara a imaginii, deoareceaceasta permite: compresie usoara; algoritmi rapizi pt. procesare;memorie de stocare mica; eliminarea usoara a zgomotului;...• Pentru rezolvare, cu α = 2, se poate utiliza metoda gradient saumetoda gradientilor conjugati!

Page 571: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - cazul vectorDefinim o masura a raritatii ∥x∥0 =/ i : xi = 0 si ∥x∥1 =

∑i |xi |

si apoi problemele de optimizare asociata sistemului Ax = b:

minx∈Rn

∥x∥0 s.l. Ax = b =⇒︸︷︷︸relaxare convexa

minx∈Rn

∥x∥1 s.l. Ax = b

• Mutual coherence: µ(A) = max1≤k,j≤m, k =j

|aTk aj |∥ak∥2∥aj∥2

Pentru o matrice A cu rang intreg pe linii (i.e. m < n), daca existao solutie x∗ satisfacand relatia:

∥x∗∥0 <1

2

(1 +

1

µ(A)

)atunci x∗ este solutie pentru amandoua problemele de optimizare!

• Restricted Isometry Property (RIP): matricea A ∈ Rm×n areRIP(δ, k) daca orice submatrice AI (obtinute din combinarea a celmult k coloane din A) are toate valorile singulare marginite intre1− δ si 1 + δ. Pentru matricea A cu RIP(0.41, 2k) avem ca celedoua probleme de mai sus au aceeasi multime de solutii pemultimea vectorilor de raritate k (Candes & Tao 2005).

Page 572: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - relaxarea convexa

minx∈Rn

fτ (x) (= f (x) + τ∥x∥1) ⇒ f diferentiabila

Exemplu: sparse data fitting (aproximarea unui set de date cufunctie liniara): set de date (ai , bi ) a.i. bi depinde linear de ai :

bi = aTi x + ei ∀i = 1 : m

cu ei o eroare datorata procesului de sampling ⇒ e.g. CMMP rar

minx∈Rn

fτ (x) (= ∥Ax − b∥2 + τ∥x∥1) ⇒ A ∈ Rm×n rara

Aplicatii:I Magnetic Resonance Imaging (MRI): instrument medical

imagistic folosit pt. scana anatomia si fiziologia unui organismI Image inpainting: technica de reconstructie imagini degradateI Image deblurring: instrument de procesare imagine pt

indeparta neclaritatea cauzate de fenomene naturale (miscare)I Genome-Wide Association study (GWA): comparare ADN

intre 2 grupuri de persoane (cu/fara o boala), in scopul de ainvestiga factorii de care depinde o boala

I Estimarea temperaturii globale pe baza datelor istorice

Page 573: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - metode pt. relaxarea convexa

minx∈Rn

fτ (x) (= f (x) + τ∥x∥1) ⇒ f diferentiabila

Aproximam f cu o functie patratica si pastram nealterat τ∥x∥1:

xk+1=arg minx∈Rn

qτ (x ; xk)(= f (xk)+⟨∇f (xk), x−xk⟩+1

2∥x−xk∥2Hk

+τ∥x∥1)

I Hk = LIn unde L constanta Lipschitz a lui ∇f ⇒ metodagradient (accelerat): Nesterov’07

I Hk = diag(L1, · · · , Ln), unde Li constanta Lipschitz a lui ∇i f⇒ metoda gradient pe coordonate: Nesterov’10, Necoara’11

I Hk = ∇2f (xk) si inlocuieste functia nediferentiabila ∥x∥1 cu

aproximarea diferentiabila (Huber) |xi | ↔√

x2i + µ2 − µ ⇒metoda Newton: Gondzio’15

Probleme de data fitting cer analiza Big Data (terabytes of data):trilioane de varibile (n) ⇒ Cray XC30 MPP supercomputer(ARCHER in Edinburgh este al 25-lea in top 500): 118.080 corescu performanta 1.642 TFlops/s on LINPACK benchmark.

Page 574: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in date si solutie: rezultate (Gondzio’15)ARCHER in Edinburgh (25 in top 500): n = 1012 (dim. trilion)

Comparatie metode: gradient pe coordonate paralel (PCDM),gradient accelerat (FISTA), Newton (pdNCG) cu gradient conjugatpt. rezolvare aproximativa sistem liniar si quasi-Newton (PSSgb)

Page 575: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Raritate in solutie - cazul matriceDefinim o masura a raritatii ∥X∥0 = rang(X ) si ∥X∥∗ =

∑i σi si

problemele de optimizare asociate functiei liniare A : Rm×n → Rp:

minX∈Rm×n

∥X∥0 s.l. A(X ) = b =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗ s.l. A(X ) = b

• Restricted Isometry Property de ordin r : cea mai micaconstanta δr (A) a.i. pt. orice matrice X de rang cel mult r avem:

1− δr (A) ≤ ∥A(X )∥∥X∥F

≤ 1 + δr (A)

• Presupunem ca δ2r < 1 pentru un intreg r ≥ 1. Atunci unicasolutie a problemei originale neconvexe este matricea de rang celmult r satisfacand A(X ) = b.

• Presupunem ca r ≥ 1 satisface δ5r < 0.1, atunci cele douaprobleme de mai sus (cea originala si relaxarea ei convexa) auaceeasi solutie optima (Recht & Parrilo 2010).

Page 576: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Matrix completion folosind DVS-ulI se da o matrice X cu elemente lipsa (e.g. o imagine)I se presupune ca matricea X este de rang scazutI scopul este sa se gaseasca elementele lipsa din XI pentru a impune rang mic asupra unei matrici se foloseste

nuclear norm ∥ · ∥∗: daca A are descompunerea DVSA =

∑ri=1 σiuiv

Ti , atunci ∥A∥∗ =

∑ri=1 σi

I problema se pune astfel:

minX∈Rm×n

rang(X ) =⇒︸︷︷︸relaxare convexa

minX∈Rm×n

∥X∥∗

s.l.: Xij = Aij ∀i , j ∈ S s.l.: Xij = Aij ∀i , j ∈ S

unde se dau valorile Aij cu (i , j) ∈ S o submultime aelementelor matricei cautate

I relaxarea convexa se poate scrie ca un SDP:

minX ,W1,W2

tr(W1) + tr(W2)

s.l.: Xij = Aij ∀i , j ∈ S ,

[W1 XXT W2

]≽ 0

Page 577: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Matrix completion - aplicare in recuperarea de imagine

imaginea data (40% elemente lipsa) si imaginea recuperata

Page 578: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia semnalelor

Video, sunet sau imagine, depind de marime si rezolutie, si decipot ocupa mult spatiu pentru a le stoca sau transmite. E.g.,compresia de imagine se imparte in 2 clase: lossless si lossy.

I compresia lossless: toata informatia fisierului original poate firecuperata dupa decompresie (formatul GIF este un exemplu),important in documente text unde pierderea de informatieduce la imposibilitarea citirii textului.

I compresia lossy: informatia redundanta este permanentstearsa (formatul JPEG este un exemplu), important in fisiereunde o pierdere de informatie mica este imposibil de detectatde om.

Exista multe posibilitati de compresie a semnalelor, dar avantajuloferit de DVS consta in flexibilitatea sa, deoarece poate actiona peorice matrice de dimensiune m × n.

Page 579: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagini

In general, procesele ingineresti implica achizitia/ prelucrarea/comunicatia unui numar de semnale/date.

Problema majora:modificari nedorite ale semnalelor (zgomot) rezultate din:

I Achizitia semnalelor (e.g. imagine, video, audio)

I Comunicatii imperfecte

Exemplu: semnale cu detalii excesive au variatie totala mare (i.e.integrala gradientului absolut al semnalului este mare) =⇒reducerea zgomotului echivalenta cu reducerea variatiei totale

Page 580: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagini

I Recuperarea perfecta a semnalului original este imposibila

I Concluzie: cautam “cea mai buna” aproximare a imaginiicorupte

I Aproximarea se determina utilizand algoritmi de optimizare(pentru niveluri rezonabile de zgomot avem recuperare“aproape” perfecta)

Modelare pentru semnale 2D (tip imagine):

I Asociem imaginii o matrice X ∈ Rm×n sau un vector x ∈ Rmn

I Dimensiunile (m, n) reprezinta numarul de pixeli pe linii sicoloane.

I Ex.: Pentru o imagine cu dimensiuni 640× 480 pixeli asociemX ∈ R640×480.

Page 581: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Procesare de imagine - compresia imaginilorI O imagine se reprezinta numeric printr-o matrice !

Aproximare matrice cu matrice de rang mai mic via DVS:

I fie A ∈ Rm×n cu rang(A) = r si A = UΣV T =∑r

i=1 σiuivTi

I cautam matricea A avand rangul p < r a.i. A ≈ A, i.e.min

A:rangA≤p∥A− A∥

I solutie: A =∑p

i=1 σiuivTi , deci ∥A− A∥ =

∑ri=p+1 σiuiv

Ti

Demontratie: fie rang(B) ≤ p, deci dim Null(B) ≥ n − p. Apoi:dim Span v1, · · · , vp+1 = p + 1. Cele 2 spatii se intersecteaza:

∃z : ∥z∥ = 1, Bz = 0, z ∈ Spanv1, · · · , vp+1

(A− B)z = Az =

p+1∑i=1

σiuivTi z =

p+1∑i=1

(σivTi z)ui (z ⊥ vp+2)

Cum uTi uj =δij avem ∥(A−B)z∥2=p+1∑i=1

σ2i (v

Ti z)2∥ui∥2≥σ2

p+1∥z∥2.

∥A− B∥ = max∥x∥=1

∥(A− B)x∥ ≥ ∥(A− B)z∥∥z∥=1

≥ σp+1 = ∥A− A∥

Page 582: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilorFie imaginea originala 359×371 pixeli (Melancolia de Durer, 1514):

pe care o putem scrie ca o matrice A de dimensiune 359× 371(fiecare intrare (i , j) reprezinta intensitatea de gri a pixelului (i , j)cu valori intre 0 (negru) si 255 (alb)), care poate fi descompusa viaDVS ca:

A = UΣV T ,

unde U este 359× 359, Σ este 359× 371 si V este 371× 371.

Page 583: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilorImaginea originala are 359×371 = 133.189 pixeli. Dar matricea Apoate fi scrisa ca suma de componente principale:

A = σ1u1vT1 + σ2u2v

T2 + · · ·+ σnunv

Tn ,

unde fiecare matrice uivTi (componenta principala) de rang 1 este

de marimea matricei originale A. Dar pentru ca valorile singulareσi sunt ordonate σ1 ≥ σ2 ≥ · · · ≥ σn ≥ 0, este posibila ocompresie semnificativa a imaginii atata timp cat spectrul valorilorsingulare are doar cateva intrari mari si restul sunt mici!

Spectrul lui A contine doar 100− 200 componente principale max.!

Page 584: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilorPutem deci reconstrui fidel imaginea folosind doar o submultime decomponente principale. De exemplu, putem recupera o imagineasemenatoare cu doar 20 de componente principale folosindcomenzile din Matlab:

[U, S ,V ] = svd(A) si B = U(:, 1 : 20) S(1 : 20, 1 : 20) V (:, 1 : 20)

Imaginea B foloseste doar 10% din memoria imaginii A:

20× 359 + 20× 371 + 20 = 14.620 vs. 359× 371 = 133.189 pixeli

Page 585: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresia imaginilor

Putem recupera o imagine fidela cu doar 200 de componenteprincipale, in loc de 359 cat are imaginea originala (i.e. 50%informatie din imaginea originala):

[U, S ,V ]=svd(A) si B=U(:, 1 : 200) S(1 : 200, 1 : 200) V (:, 1 : 200)

Page 586: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresie tigruConsideram o imagine originala 500× 800 pixeli de rang 500.

I dispunerea valorilor singulare - prima figura (scala log).I putem observa (figura din dreapta) cata informatie este

detinuta in primele p valori singulare, facand raportul:

informatie % =

∑pi=1 σi∑500i=1 σi

.

In primele 50 valori singulare avem deja 70% din informatia aflatain imagine!

Page 587: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresie tigruDesi imaginea originala are 500× 800 pixeli, putem recupera oimagine fidela cu doar 50 de componente principale (10%)

Page 588: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Codul Matlab pt. compresie tigruI % citeste imaginea si transform-o in negru si alb:

tiger = rgb2gray(imread(tiger.jpg));I % resample imaginea:

tiger = im2double(imresize(tiger, 0.5));I % calculeaza DVS-ul imaginii:

[U, S ,V ] = svd(tiger);I % reprezinta valorile singulare (scala log) si informatie %:

sigmas = diag(S); plot(log(sigmas));plot(cumsum(sigmas)/sum(sigmas));

I % arata imaginea originala:imshow(tiger);

I % calculeaza aproximarile de rang mai mic:ranks = [200, 100, 50, 30, 20, 10, 3]; ns = length(sigmas);for i = 1:length(ranks)approxsigmas = sigmas; approxsigmas(ranks(i) : end) = 0;approxS = S ; approxS(1 : ns, 1 : ns) = diag(approxsigmas);

I % calculeaza matricele de rang mai mic si ploteaza:approxtiger = U approxS V ; imshow(approxtiger )

Page 589: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Compresie Lena

Desi imaginea originala (faimoasa si frumoasa Lena :)) are600× 600 pixeli, putem recupera o imagine fidela cu doar 30 decomponente principale (20% din datele imaginii originale):

Page 590: Tehnici de Optimizare Curs I Concepte fundamentale din teoria

Bafta la examen!

ORICE STUDENT INTERESAT in ASTFEL de SUBIECTE siAPLICATII sa MA CONTACTEZE PENTRU o COLABORARE

(LICENTA, MASTER, DOCTORAT)!