Slides To 2015
Slides To 2015
Slides To 2015
Curs I
Concepte fundamentale din teoria optimizarii
Ion Necoara
2014
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
Alte carti:
I Bertsekas, Nonlinear Programming, Athena Scientific
I Nesterov, Introductory Lectures on Convex Optimization: A
Basic Course, Kluwer
I Luenberger, Linear and Nonlinear Programming, Kluwer
Obiectivele cursului si subiectele atinse
Obiective
I recunoasterea/formularea de probleme de optimizare
I dezvoltarea de cod Matlab pentru rezolvarea problemelor de
optimizare
I caracterizarea/identificarea solutiilor
I caracterizarea limitelor de performanta a algoritmilor numerici
de 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
Notatii
f ∗ = minn f (x)
x∈R
s.l.: g1 (x) ≤ 0, . . . , gm (x) ≤ 0
h1 (x) = 0, . . . , hp (x) = 0.
min f (x)
x∈Rn
s.l.: g1 (x) ≤ 0, . . . , gm (x) ≤ 0
h1 (x) = 0, . . . , hp (x) = 0.
1 T
min x Qx + q T x min t
x∈Rn 2 ⇐⇒ x∈Rn ,t∈R
1 T 1
s.l.: x Q1 x +q1T x +r1 ≤ 0 s.l.: t ≥ x T Qx + q T x
2 2
1 T
x Q1 x +q1T x +r1 ≤ 0
2
SDP echivalent =⇒
min t
x∈Rn ,t∈R
[ √ 1 ]
In 1/ 2Q 2 x
s.l.: √ 1 ≽0
1/ 2x T Q 2 x t − q T x
[ √ 1 ]
In 1/ 2Q12 x
√ 1 ≽0
1/ 2x T Q12 −q1T x − r1
APLICATII REALE
Data fitting - CMMP
x1 f1 (si ) + · · · + xn fn (si ) ≈ yi ∀i = 1, · · · , m
∑
m
(x1 f1 (si ) + · · · + xn fn (si ) − yi )2
i=1
Data fitting - CMMP
min ∥Ax − y ∥2
x∈Rn
x ∗ = (AT A)−1 AT y
la datele (si , yi ), i = 1, · · · , m
• functiile de baza sunt fj (s) = s j−1 , j = 1, · · · , n
• matricea A are forma Aij = sij−1 :
1 s1 s12 ··· s1n−1
1 s2 s22 ··· s2n−1
.. .. .. .. ..
. . . . .
2
1 sm sm ··· n−1
sm
matricea Vandermonde!
Data fitting polinomial - CMMP
• fit la functia
sin(x)
un polinom de grad ≤ 4
p(s) = a0 + a1 s + · · · + an−1 s n−1
• variabilele de decizie sunt coeficientii polinomului; consideram
m = 100 puncte (date)
• CMMP fit pentru polinom de grad 1, 2, 3, 4 are rezidul:
0.135, 0.076, 0.025 si 0.005
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 la
cele 3 ancore: R1 , R2 , R3 > 0
min ∥δ∥p
x∈R3 ,δ∈R3
s.t.: ∥x − xi ∥ ≤ Ri + δi ∀i = 1, 2, 3
max R
x,R
s.t.: ∥x − xi ∥ + R ≤ Ri ∀i = 1, 2, 3
Stabilirea fluxului optim de putere intr-o retea electrica
Problema de optimizare:
∑
ming ai Pig + bi (Pig )2
θi ∈Θi ,Pi ∈Pi
i
s.l.: E RE θ − Ag P g = −P d , F ≤ RE θ ≤ F .
T
Avantajele optimizarii:
Pretul energiei Puterea generata
340
320
300
Pig [M W h]
280
260
240
220
10 20 30 0 10 20 30
iteratii iteratii
Controlul unei bile pe un plan inclinat
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
Procesare de imagini
σi = min ∥A − B∥
B:rang(B)≤i−1
−0.2
−0.4
−0.6
20 40 60 80 100 0 20 40 60 80 100
Numar iteratii t
Instalatie 4 rezervoare
I instalatie cu 4 rezervoare disponibila
I placa de achizitie NI
h1 h2
sh1 sh2
h h
sh44 sh33
1. Se achizitioneaza o serie de
proiectii, din diferite unghiuri,
ale obiectului scanat;
www.merckmanuals.com
matricea de achizitie.
• Imaginea interiorului reprezinta solutia sistemului liniar
(subdeterminat deoarece sunt mai putine masuratori m decat
dimensiunea imaginii n): Ax = b.
• Reformulare in termeni de problema CMMP:
min ∥x∥α
x∈Rn : Ax=b
∥A(X )∥
1 − δr (A) ≤ ≤ 1 + δr (A)
∥X ∥F
Ion Necoara
2014
Euler (1744):
∇f (x) =
.. , ∇2 f (x) = ...
..
. .
,
∂f (x) 2
∂ f (x) 2
∂ f (x)
∂xn ∂xn ∂x1 . . . ∂ 2 xn
Teorema de medie: fie functia g : R → R atunci exista θ ∈ [a, b]
∫b
a.i. g (b) − g (a) = g ′ (θ)(b − a) = a g ′ (τ )dτ =⇒ pt. f : Rn → R
αx1 + (1 − α)x2 ∈ S
Interpretare:
I Orice punct pe dreapta definita de x1 si x2 se afla in multime.
4.5
α=1.5
x1(0.5,4)
4
α=1
3.5
α=0.5
x2(5,3)
3
α=0
2.5
α=−0.5
2
−4 −2 0 2 4 6 8 10
Exemplu multime afina
I Multimea solutiilor unui sistem de ecuatii liniare {x : Ax = b}
Ax = b, Ay = b, α ∈ R
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 afla
in multime
Exemplu de multime convexa si neconvexa:
I Orice multime afina este multime convexa (orice combinatie
convexa intre x1 si x2 se afla in multime)
x2 x1
x1 x2
Multimi convexe
• Acoperirea convexa: multime formata din toate combinatiile
convexe posibile de
puncte ale unei multimi S
∑ ∑
Conv (S) = αi xi : xi ∈ S, αi = 1, αi ≥ 0
i∈I,I finit i∈I
aT x≥b
x0
aT x≤b
aT x=b
a5
a1
a4
a2
a3
• Politop: { }
poliedru marginit, e.g simplex : x ∈ R3 : x1 +x2 +x3 ≤ 1, x ≥ 0
Multimi convexe
Bila:
multime convexa definita de o norma ∥ · ∥, un centru xc si o raza r :
B(xc , r ) = {x ∈ Rn : ∥x − xc ∥ ≤ r }
} si raza 1 in R :
Exemplu, bila 2
{ Euclidiana
√
de centru zero
B2 (0, 1) = x ∈ R2 : x12 + x22 ≤ 1
Elipsoid:
multimea
{ } xc si o matrice Q ≻ 0
convexa definita de un centru
−1
x ∈ R : (x − xc ) Q (x − xc ) ≤ 1
n T
Multimi convexe
Con:
K este con daca ∀x ∈ K si ∀α ≥ 0 avem αx ∈ K
Con convex:
K este con si multime convexa
{ }
Exemplu con Lorentz: Ln = [x T t]T ∈ Rn+1 : ∥x∥ ≤ t
Exemplu
{ conul Lorentz pentru n = 2: }
√
L2 = [x1 x2 t]T ∈ R3 : x12 + x22 ≤ t
Multimi convexe
Acoperire {conica: }
∑
Con(S) = i∈I,I finit αi xi : xi ∈ S, αi ≥ 0
Exemple conuri:
I Multimea Rn este un con, iar conul sau dual este (Rn )∗ = {0}.
I Rn
+ = {x ∈ R : x ≥ 0} se numeste conul orthant si este
n
X ∈ S+
n
⇐⇒ x T Xx ≥ 0 ∀x ∈ Rn
X , Y ∈ S+
n
, α ∈ [0, 1] ⇒ x T(αX +(1−α)Y )x = αx TXx+(1−α)x TYx ≥ 0
[ ]
x y
• Exemplu: ∈ S+
2 ⇔ x, z ≥ 0 & xz − y 2 ≥ 0
y z
γ 2 I − AT A ≽ 0
0.9
0.8
0.7
0.6
α f(x )+(1−α) f(x )
1 2
0.5
0.4
f(x2)
0.3
0.2
f(x1)
0.1 f(α x1+(1−α)x2)
0
−1 −0.5 0 0.5 1
x1 x2
∑
n
= −log det X − log (1 + tλi ),
i=1
Ion Necoara
2014
Optimizarea matematica = Urcarea unui munte
Optimizarea matematica = Urcarea unui munte
Optimizarea matematica = algoritmi iterativi
algoritmi numerici de optimizare: iterativi
Algoritmi de optimizare
Pentru problemele prezentate in cursurile I si II vom studia
algoritmi 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 actualizeaza
iteratia:
xk+1 = xk + αk dk
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 descreasca
cat mai mult posibil fata de f (xk ), i.e.
min f (α)
α∈R
f(x)
alpha alphak=0.400000
k
alphak+1 alphak+1=0.400100
k=0
h=0.000100
f(x)
alpha alphak=0.400100
k
alphak+1 alphak+1=0.400300
k=1
h=0.000200
f(x)
alphak alphak=0.400300
alphak+1 alphak+1=0.400700
k=2
h=0.000400
f(x)
alpha alphak=0.400700
k
alpha alphak+1=0.401500
k+1
k=3
h=0.000800
f(x)
alphak alphak=0.401500
alphak+1 alphak+1=0.403100
k=4
h=0.001600
f(x)
alphak alphak=0.403100
alpha alphak+1=0.406300
k+1
k=5
h=0.003200
f(x)
alphak alphak=0.406300
alphak+1 alphak+1=0.412700
k=6
h=0.006400
f(x)
alphak=0.412700
alphak
alphak+1=0.425500
alphak+1 k=7
h=0.012800
f(x)
alphak=0.425500
alpha alphak+1=0.451100
k
k=8
h=0.025600
alphak+1
f(x)
alphak=0.451100
alphak+1=0.502300
k=9
h=0.051200
alphak
alphak+1
f(x)
alphak=0.502300
alphak+1=0.604700
k=10
h=0.102400
alphak
alphak+1
f(x)
alphak=0.604700
alphak+1=0.809500
k=11
h=0.204800
alphak+1
alphak
f(x)
a=0.604700
b=0.809500
bk − λk = µk − ak . (1)
bk − λk = µk − ak .
f(α)
f(µk)>f(λk)
µk−ak=bk−λk
f(µk) bk−λk
f(λk)
µ −a
k k
ak λk α µk bk
Reamintim cazul (i) din unimodalitate: f (λk ) ≤ f (µk ) iar
ak+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)
a1
b
1
a1
b1
a1
a1
b1
b
2
a2
a1
b1
b
2
a3
b3
a1
b1
b
2
a3
a4 b4
a1
b1
b
2
a3
a4 b
a 5
5
a1
b1
b
2
a3
a4 b
a b6 5
6
a1
b1
b
2
a3
a4 b
abb6 5
77
a1
b1
b
2
a3
a4 b
aabb6 5
7
88
a1
b1
b
2
a3
a4 b
aabbb6 5
78
99
α*=0.618420
a1
b1
b
2
a3
a4 b
aabbb6 5
78
10
10
avem Fk ≥ b1 −a
ϵ
1
⇒ se pot calcula din start Fk si k finale
F
Asimptotic insa limk→∞ Fk−1
k
= τ (= 0.618 numarul de aur)!
Convergenta metodelor de cautare
Comparatie cu potrivire la ratele de convergenta a metodelor de
cautare:
• 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 )
1
bk − ak = (b1 − a1 )
Fk
{( √ )k ( √ )
}
k
Dar Fk = √1
5
1+ 5
2 − 1− 5
2
f(α)
q(α)
α
k
αk+1
Ion Necoara
2014
Notiuni introductive
Presupuneri:
I f ∈ C2
I domf multime deschisa in Rn
Problema de interes consta in gasirea punctelor de minim din
domf .
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 ∗ ∥ ≤ δ
Directie de descrestere pentru (UNLP)
Definitie: Se numeste directie de descrestere al functiei f in
punctul x ∈ domf un vector d ∈ Rn ce satisface inegalitatea:
∇f (x)T d < 0
5
4.5
3.5 d
x2
3
2.5
1.5 ∇ f
1
0 1 x1 2 3 4
4.5
3.5 d
x2
3
2.5
1.5 ∇f
1
0 1 x1 2 3 4
∇f (x ∗ ) = 0
Conditii de ordinul I - Demonstratie
Demonstratie:
Consideram un punct de minim local x ∗ si presupunem prin absurd
ca ∇f (x ∗ ) ̸= 0. In acest caz vom arata ca d = −∇f (x ∗ ) este
directie de descrestere in x ∗ ⇒ contrazice ipoteza initiala.
Datorita continuitatii gradientului, putem alege un t > 0 suficient
de mic a.i. ∀τ ∈ [0, t] avem:
d T ∇2 f (x ∗ + τ d)d < 0.
1
f (x ∗ + td) = f (x ∗ ) + t∇f (x ∗ )T d + t 2 d T ∇2 f (x ∗ + θd)d < f (x ∗ ).
| {z } 2 | {z }
=
|{z} 0 ≤0
∇f (x ∗ )=0
d T ∇2 f (x ∗ )d ≥ λmin ∥d∥2 ∀d ∈ Rn .
x1 + x2 − 4 = 0 si x1 + 4x2 − 4 − 3x22 = 0.
f (x) ≥ f (x ∗ ) + ∇f (x ∗ )T (x − x ∗ ) = f (x ∗ ) ∀x ∈ Rn .
| {z }
=0
Ion Necoara
2014
Optimizarea matematica numita adesea
“Science of the Better”
(UNLP)
Exemplu (QP):
min 0.5x T Qx − q T x,
x∈Rn
xk+1 = M(x0 , · · · , xk )
−2
10
−4
10
k
x
−6
10
−8
10 subliniara
liniara
superliniara
patratica
−10
10
1 2 3 4 5 6 7 8 9 10
k
Convergenta metodelor de optimizare
Definitie. Se da: spatiul metric (X , ρ), submultimea S ⊆ X si
metoda M de tip aplicatie punct-multime (M : X → 2X ). Definim
functia descrescatoare ϕ : X → R pentru perechea (S, M):
I ∀x ∈ S si y ∈ M(x) avem ϕ(y ) ≤ ϕ(x)
xk+1 = xk + αk dk ,
unde dk este directie de descrestere pentru f in xk , i.e.
∇f (xk )T dk < 0
pentru αk ⇓ suficient de mic
f (xk+1 ) ≤ f (xk )
∇ f(x)
x2
x
x+α d
x1
Metode de descrestere
xk+1 = xk + αk dk =⇒ ∇f (xk )T dk < 0
Strategii de alegerea a pasului αk
I metoda ideala: αk = arg minα≥0 f (xk + αdk )
I metoda Wolfe:
T T
∇ f(xk+αk dk) dk ≥ c2 ∇ f(xk) dk
0<c1<c2<1
T
f(xk)+c1 α ∇ f(xk) dk
α acceptabil
α
Continuitate Lipschitz
Fie o functie continuu differentiabila f (i.e. f ∈ C 1 ), atunci
gradientul ∇f este continuu Lipschitz cu parametrul L > 0 daca:
L
|f (y ) − f (x) − ⟨∇f (x), y − x⟩| ≤ ∥x − y ∥2 ∀x, y
2
Observatie: aceasta relatie este universal folosita in ratele de
convergenta ale algoritmilor de ordinul I!
Lema 2: In cazult functiilor de doua ori diferentiabile (i.e.
f ∈ C 2 ), relatia de Lipschitz (1) este echivalenta cu
Fie f : Rn → R definita de
( T
)
f (x) = log 1 + e a x .
T
ea x ∥a∥2
∥∇ f (x)∥ =
2
∥aa T
∥ ≤ =L
(1 + e aT x )2 4
Convergenta metodelor de descrestere
Teorema de convergenta globala. Metoda de descrestere, cu
pasul satisfacand conditiile Wolfe, aplicata problemei (UNLP) cu
functia obiectiv marginita inferior si avand gradientul Lipschitz are
urmatoarea convergenta globala:
∞
∑
cos2 θk ∥∇f (xk )∥2 < ∞,
k=0
Ion Necoara
2014
Clasificare metode de optimizare
2
x
x
dient rezolva probleme de x+α d
necoara)
I Interpretare: metoda de descrestere cu directia
d = −∇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 )∥ ≤ ϵ
Metoda gradient
Metoda Gradient
d
Iteratie Metoda Gradient: ∇ f(x)
2
x
x
xk+1 = xk − αk ∇f (xk ) x+α d
x1
• Aproximare patratica
folosind numai ∇f (x), nu
e nevoie de f (x) (vezi ase-
manarea cu metoda falsei
pozitii cazul scalar)
xk+1 xk x
Metoda Gradient-Convergenta globala generala
L
|f (y ) − f (x) − ⟨∇f (x), y − x⟩| ≤ ∥x − y ∥2 ∀x, y
2
Observatie: aceasta relatie este universal folosita in ratele de
convergenta ale algoritmilor de ordinul I!
Teorema 3: In cazul functiilor de doua ori diferentiabile, relatia de
Lipschitz (1) este echivalenta cu
Fie f : Rn → R definita de
( T
)
f (x) = log 1 + e a x .
T
ea x ∥a∥2
∥∇ f (x)∥ =
2
∥aa T
∥ ≤ =L
(1 + e aT x )2 4
Metoda Gradient-Convergenta globala sub Lipschitz
lim ∇f (xk ) = 0.
k→∞
1 √ 2L(f (x0 ) − f ∗ )
√ 2L(f (x0 ) − f ∗ ) ≤ ϵ =⇒ k =
k ϵ2
Spunem: rata de convergenta este de ordinul O( √1k ) sau O( ϵ12 )
Metoda Gradient-Rata de convergenta I (globala)
Demonstratie Teorema 5:
Sub presupunerea ca ∇f Lipschitz continuu avem:
L
f (y ) ≤ f (x) + ⟨∇f (x), y − x⟩ + ∥y − x∥2 x, y ∈ domf .
2
Considerand x = xk , y = xk+1 = xk − (1/L)∇f (xk ) avem:
1
f (xk+1 ) ≤ f (xk ) − ∥∇f (xk )∥2 .
2L
Insumam dupa i = 0, . . . k − 1 si rezulta
1 ∑
k−1
∥∇f (xi )∥2 ≤ f (x0 ) − f (xk ) ≤ f (x0 ) − f ∗
2L
i=0
In concluzie, observam
∑
k−1
k min ∥∇f (xi )∥ ≤ 2
∥∇f (xi )∥2 ≤ 2L(f (x0 ) − f ∗ )
0≤i≤n
i=0
Metoda Gradient-Rata de convergenta II (locala)
Teorema 6:
I Fie f diferentiabila cu ∇f Lipschitz continuu (constanta
Lipschitz L > 0)
I Exista un punct de minim local x ∗ , astfel incat Hessiana in
acest punct satisface
σIn ≼ ∇2 f (x ∗ ) ≼ LIn
I Punctul initial x0 al iteratiei metodei gradient cu pas
2
αk = σ+L este suficient de aproape de punctul de minim, i.e.
2σ
∥x0 − x ∗ ∥ ≤
L
Atunci rata de convergenta locala a sirului
( xk) generat de metoda
gradient este liniara (i.e de ordinul O log( 1ϵ ) ), data de:
( )k
∗ 2σ
∥xk − x ∥ ≤ β 1 − cu β > 0
L + 3σ
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 pasului
constanta αk = L1 , atunci rata de convergenta globala a sirului
xk generat de metoda gradient este subliniara, data de:
L∥x0 − x ∗ ∥2
f (xk ) − f ∗ ≤
2k
I Daca in plus functia este tare convexa cu constanta σ > 0,
atunci rata de convergenta globala a sirului xk generat de
metoda gradient cu pas αk = L1 este liniara, data de:
( )k
∗ 2 L−σ
∥xk − x ∥ ≤ ∥x0 − x ∗ ∥2
L+σ
( )k
∗ L∥x0 − x ∗ ∥2 L−σ
f (xk ) − f ≤
2 L+σ
Metoda Gradient-Rata de convergenta III
Demonstratie Teorema 7: Daca ∇f Lipschitz continuu, atunci
L
f (y ) ≤ f (x) + ⟨∇f (x), y − x⟩ + ∥y − x∥2 ∀x, y
2
Considerand x = xk si y = xk+1 = xk − (1/L)∇f (xk ), avem:
1
f (xk+1 ) ≤ f (xk ) − ∥∇f (xk )∥2
2L
1
≤ f + ⟨∇f (xk ), xk − x ∗ ⟩ − ∥∇f (xk )∥2
∗
( 2L )
∗ L ∗ 2 ∗ 1
=f + ∥xk − x ∥ − ∥xk − x − ∇f (xk )∥2
2 L
L ( )
=f∗+ ∥xk − x ∗ ∥2 − ∥xk+1 − x ∗ ∥2
2
Prin insumare de la k = 0, . . . , N − 1 rezulta
∑
N−1
N(f (xN ) − f ∗ ) ≤ (f (xk+1 ) − f ∗ )
k=0
L ∑
N−1
( ) L
≤ ∥xk − x ∗ ∥2 − ∥xk+1 − x ∗ ∥2 ≤ ∥x0 − x ∗ ∥2 .
2 2
k=0
Metoda Gradient-Rata de convergenta III
Demonstratie Teorema 7: Daca in plus f tare convexa, atunci
avem relatia de coercivitate (vezi cursul V):
σL 1
⟨∇f (x)−∇f (y ), x −y ⟩ ≥ ∥x −y ∥2 + ∥∇f (x)−∇f (y )∥2
σ+L σ+L
Aceasta relatie conduce la:
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas constant α = 1/L
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
I Functia f tare convexa (σ = 0.5) si gradient Lipsctitz (L = γ)
=⇒ convergenta liniara
I Metoda Gradient cu[ 3 pas constant
] α = L1
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient- Pas ideal
( )
1 2 2
min f (x) = (0.5x1 + γx2 )
x∈R2 2
I Metoda Gradient cu pas ideal αk = arg min f (xk − α∇f (xk ))
α≥0
[3 ]
I Punct initial x0 = 2 γ 1 , γ = 5/3.
2.5
1.5
0.5
−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
Metoda Gradient - Exemplu nepatratic
( )
min f (x) = e x1 +3x2 −0.1 + e x1 −3x2 −0.1 + e −x1 −0.1
x∈R2
2
10
Figura corespunde 0
10
constantelor:
*
f(xk) − f
R = 10, L = 2 si −2
10
σ = 0.1 MG(L)
MGA(L)
−4
10 MG(L,σ)
MGA(L,σ)
0 10 20 30 40 50 60
Se observa ca numarul de conditionare k
L
κ=
σ
este relativ mic (i.e. 20). Raportul κ = σL reprezinta numarul de
conditionare al problemei de optimizare convexe (UNLP) datorita
similitudinii cu definitia numarului de conditionare al unei matrici
min f (x) (= 0.5x T Qx)
x
( )
1 2 2
min f (x) = (0.5x1 + γx2 ) , cu γ > 1
x∈R2 2
|xk − x*|
x2
0 2.8
−0.5
2.6
−1
2.4
−1.5
2.2
−2
−2.5 2
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 1 1.5 2 2.5 3
x1 k
0.8
MG 10 MG
0.6
10 MGA MGA
0.7
10
0.5 0.6
10 10
log(f(xk) − f*)
log(|∇ f(xk)|)
0.5
10
0.4
10
0.4
10
0.3
0.3 10
10
2 3.4
1.5 3.2
1 3
0.5 2.8
|xk − x*|
x2
0 2.6
−0.5 2.4
−1 2.2
−1.5 2
−2 1.8
−2.5 1.6
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 1 1.5 2 2.5 3 3.5 4
x1 k
0.6
10
0.5
10
0.4
10
log(f(xk) − f*)
log(|∇ f(xk)|)
0.3
10
0.2
10
0.1
10 0
10
2
3.5
1.5
1
3
0.5
|xk − x*|
x2
0 2.5
−0.5
2
−1
−1.5
1.5
−2
−2.5 1
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 1 2 3 4 5 6
x1 k
log(f(xk) − f*)
log(|∇ f(xk)|)
0
10
0
10
1 2 3 4 5 6 1 2 3 4 5 6
k k
Gradient - Gradient Accelerat (exemplu 1)
I Metoda Gradient cu pas constant αk = 1/L
I Metoda√Gradient Accelerat cu pas constant αk = 1/L si
√ √ √
βk = ( L − σ)/( L + σ)
2.5 4
2
3.5
1.5
1 3
0.5
2.5
|xk − x*|
x2
0
2
−0.5
−1 1.5
−1.5
1
−2
−2.5 0.5
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 1 2 3 4 5 6 7 8
x1 k
log(f(xk) − f*)
log(|∇ f(xk)|)
0
10
0
10
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
k k
Gradient - Gradient Accelerat (exemplu 1)
I Metoda Gradient cu pas constant αk = 1/L
I Metoda√Gradient Accelerat cu pas constant αk = 1/L si
√ √ √
βk = ( L − σ)/( L + σ)
2.5 4
2
3.5
1.5
1 3
0.5
2.5
|xk − x*|
x2
0
2
−0.5
−1 1.5
−1.5
1
−2
−2.5 0.5
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 1 2 3 4 5 6 7 8 9 10
x1 k
1
10
0
10
log(f(xk) − f*)
log(|∇ f(xk)|)
0
10
−1
10
−2
10
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
k k
Gradient - Gradient Accelerat (exemplu 1)
I Metoda Gradient cu pas constant αk = 1/L
I Metoda√Gradient Accelerat cu pas constant αk = 1/L si
√ √ √
βk = ( L − σ)/( L + σ)
2.5 4
2
3.5
1.5
3
1
2.5
0.5
|x − x*|
2
x2
k
−0.5
1.5
−1
1
−1.5
0.5
−2
−2.5 0
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 2 4 6 8 10 12
x1 k
1
10
0
10
log(|∇ f(xk)|)
log(f(x ) − f*)
0
10
k
−1
10
−2
10
2 4 6 8 10 12 2 4 6 8 10 12
k k
Gradient - Gradient Accelerat (exemplu 1)
I Metoda Gradient cu pas constant αk = 1/L
I Metoda√Gradient Accelerat cu pas constant αk = 1/L si
√ √ √
βk = ( L − σ)/( L + σ)
2.5 4
2
3.5
1.5
3
1
2.5
0.5
|x − x*|
x2
0 2
k
−0.5
1.5
−1
1
−1.5
0.5
−2
−2.5 0
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 2 4 6 8 10 12 14 16 18 20
x1 k
1
1 10
10
0
10
0
10
log(f(x ) − f*)
log(|∇ f(xk)|)
−1
k
10
−1
10
−2
10
−3
10
−2 10
2 4 6 8 10 12 14 16 18 20 2 4 6 8 10 12 14 16 18 20
k k
Gradient - Gradient Accelerat (exemplu 1)
I Metoda Gradient cu pas constant αk = 1/L
I Metoda√Gradient Accelerat cu pas constant αk = 1/L si
√ √ √
βk = ( L − σ)/( L + σ)
2.5 4
2
3.5
1.5
3
1
2.5
0.5
|x − x*|
x2
0 2
k
−0.5
1.5
−1
1
−1.5
0.5
−2
−2.5 0
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 5 10 15 20 25 30
x1 k
1 1
10 10
0
10
0
10
−1
10
log(|∇ f(xk)|)
log(f(x ) − f*)
−1 −2
k
10 10
−3
10
−2
10
−4
10
−3 −5
10 10
5 10 15 20 25 30 5 10 15 20 25 30
k k
Gradient - Gradient Accelerat (exemplu 2)
∑
m
min f (x) = log T x+b
e ai i
x∈Rn
j=1
Ion Necoara
2014
Metoda Newton
Scurt istoric: antichitate
Metoda babiloniana sau
metoda lui Heron: dandu-
se un numar c ∈ R,
aceasta metoda consta in
calcularea iterativa a lui
√
x = c ⇔ x 2 − c = 0:
( )
1 c
xk+1 = xk +
2 xk
1
= xk − (x 2 − c)
2xk k
Este considerata drept precur-
sor (caz special) al metodei
Newton. Utilizata de ba-
bilonieni, descrisa prima data
de catre Heron din Alexandria.
Scurt istoric: secolul al XVII-lea
In 1669, Isaac Newton imbunatat-
este o tehnica a perturbatiilor dez-
voltata de Francois Viete pentru a
afla solutiile unei ecuatii F (x) =
0, unde F (x) este un polinom.
Avand un punct de pornire x0 ,
ideea principala este linearizarea:
min f (x)
x∈Rn
F (x) = ∇f (x) = 0
xk+1 = xk + dk
( )−1
unde dk = − ∇2 f (xk ) ∇f (xk ) se numeste directia Newton
f(x)
x x x
k+1 k
Se obtine:
∥xk+1 − x ∗ ∥ ≤ 2m ∥xk
3M
− x ∗ ∥2 .
∇f (x ∗ ) = Qx ∗ + q = 0 ⇒ x ∗ = −Q −1 q
Newton clasic
1
0.5 k=1
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=2
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=3
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=4
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=5
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=6
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=7
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton clasic
1
0.5 k=8
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=1
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=2
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=3
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=4
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=5
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=6
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=7
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=8
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=9
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=10
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=11
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
Newton cu backtracking
1
0.5 k=17
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
0.5 k=1
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
0.5 k=2
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
0.5 k=3
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
0.5 k=4
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Exemplu metoda Newton cu pas variabil ales in trei variante,
aplicata pe f : R2 → R, f (x) = e x1+3x2 −0.1 +e x1−3x2 −0.1 + e −x1 −0.1 .
0.5 k=5
−0.5
−1
1 0.5 0 −0.5 −1
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
Convergenta locala a Metodei Newton
50
Newton clasic
Newton ideal
Newton backtracking
40
30
*
f(xk)−f 20
10
0
0 5 10 15 20 25
k
160
Newton clasic
Newton ideal
140 Newton backtracking
120
100
k∇f (xk )k
80
60
40
20
0
0 5 10 15 20
k
Convergenta globala a Metodei Newton
Daca pornim dintr-un punct x0 ce nu se afla in vecinatatea lui x ∗ ,
metoda Newton trebuie modificata pentru a asigura convergenta:
( )−1
xk+1 = xk − αk ∇2 f (xk ) ∇f (xk )
xk+1 = xk − αk ∇f (xk )
1
= arg min f (xk ) + ∇f (xk )T (y − xk ) + (y − xk )T In (y − xk )
y 2αk
function [] = gradient-Newton-ideal(x0,eps)
obj = @(x)10x16 + 30x26 + x12 + 50x22 ;
gradient = @(x)[60x15 + 2x1 ; 180x25 + 100x2 ];
hessiana = @(x)[300x14 + 2 0; 0 900x24 + 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 = [trajectoryg x];
end
Metoda Newton versus metoda gradient
0.15
0.1
0.05
0 k=1
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=2
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=1
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=2
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=3
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=4
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=5
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=6
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=7
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=8
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=9
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=10
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=11
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=12
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
Comparatie intre metoda Newton si metoda gradient, ambele cu
pas ideal, pentru f : R2 → R, f (x) = 10x16 +30x26 +x12 +50x22
0.15
0.1
0.05
0 k=13
−0.05
−0.1
−0.15
−0.2
0.2 0.1 0 −0.1 −0.2
Metoda Newton versus metoda gradient
2 k=1
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=2
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=1
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=2
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=3
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=4
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=5
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=6
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=7
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=8
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=9
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=10
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=11
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=12
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metoda Newton versus metoda gradient
2 k=13
0.2
1
0 0
0.2
0.1
0
−0.1
−0.2 −0.2
Metode cvasi-Newton
xk+1 = xk − αk Hk ∇f (xk )
Bk+1 = Bk + βk uk ukT
Definim:
1
Bk+1 = Bk + (δk − Bk ∆k )(δk − Bk ∆k )T
(δk − Bk ∆k )T ∆k
−1
Din formula Sherman-Morrison pentru Hk+1 = Bk+1 obtinem:
1
Hk+1 = Hk + (∆k − Hk δk )(∆k − Hk δk )T
(∆k − Hk δk )T δk
Metode cvasi-Newton: actualizari de rang II
Actualizari de rang II: impunem (2), insa Bk+1 va fi calculat prin:
−1
Utilizand iarasi formula Sherman-Morrison pentru Hk+1 = Bk+1 ,
obtinem:
1 1
Hk+1 = Hk + k − T
∆k ∆T (Hk δk )(Hk δk )T
∆T δ
k k δ H δ
k k k
Metode cvasi-Newton: actualizari de rang II
Daca in loc de problema (3), utilizam problema:
Hk+1 = arg min ∥H − Hk ∥,
H=H T , Hδk =∆k
si conditia de compatibilitate:
2(1 − γ)
∥x0 − x ∗ ∥ ≤ . (5)
M
Atunci xk converge la x ∗ cu rata superliniara sub ipoteza ca
γk → 0 sau rata liniara daca γk > γ̄ > 0.
Comparatie intre metoda Newton si BFGS
Consideram problema (UNLP):
∑
m
minn c T x − log(bi − aiT x)
x∈R
j=1
Generam datele aleator pentru dimensiunea n = 100 si m = 500
Ion Necoara
2014
Formularea problemei
Problemele de estimare si fitting ⇒ probleme cu structura, de tipul
celor mai mici patrate (CMMP):
1
M(x) = η ⇔ minn ∥η − M(x)∥2
| {z } x∈R 2
forma algebrica
| {z }
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) se
determina iesirile corespunzatoare.
Problema inversa: pentru un vector de iesiri η se cauta intrarile
corespunzatoare, folosind un model ce depinde de setul de
parametrii x.
Aplicatii ingineresti: aproximare de functii, identificarea proceselor
dinamice, prognoza meteo...
Istoric - CMMP
Problema CMMP isi are radacinile in domeniile astronomie si
geodezie, aparitia sa fiind motivata de aspecte legate de navigarea
pe oceane, elementul cheie in dezvoltarea sa reprezentandu-l
problema descrierii traiectoriei astrelor pe orbita.
In 1809 Carl Friedrich Gauss ⇒ deter-
minarea orbitei planetei “strumf” Ceres
⇒ sustine ca dispunea de aceasta metoda
inca din 1795.
Mi (x1 , x2 ) = x1 expx2 ti ,
J + = V Σ+ U T ,
( )−1 T
Teorema: Daca rang(J) = n, atunci J + = J T J J .
+ T
( T )−1
Daca rang(J) = m, atunci J = J JJ .
Demonstratie:
( )−1 ( )−1
JT J J T = V ΣT U T UΣV T V ΣT U T
( )−1
= V ΣT Σ V T V ΣT U T
( )−1
= V ΣT Σ ΣT U T = V Σ+ U T .
∑
r
ujT b
x ∗ = J + η = V Σ+ U T η = vj
σj
j=1
′ ′′
Demonstratie: Cum J = UΣV T , definim d = U T η = [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 = ∥Σ1 y − 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 minima
′′
corespunde lui y = 0. Cum ∥x∥ = ∥y ∥, rezulta ca vectorul de
norma minima care minimizeaza reziduul ∥Jx − η∥ este:
[ −1 ′ ] [ −1 ]
∗ Σ1 d Σ1 0
x =V =V d = V Σ+ U T η = J + η
0 0 0
Exemplul 1 - Problema mediei
1∑
M
min (ηi − x) .
x∈R 2
1=1
1 ∑
M
x ∗ = J +η = ηi = η̂.
m
i=1
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 de
ordinul intai p(t; x) = x1 + x2 t realizeaza predictia lui η la
momentul t. Acesta poate fi gasit rezolvand problema:
[ ]
2
1∑ 1
m
x
min (ηi − p(ti ; x)) = min
2
η−J 1
,
x∈R2 2 x∈R2 2 x2
i=1
1 t1
unde J = ... ... . Rezolvand problema se poate obtine solutia
1 tn
[ ] [ σ ]
∗ 1 tˆ2 η̂ − t̂ ηt
ˆ η̂ − t̂ σηt ρ
x = σ2 = ση , unde ση si σt reprezinta
t −t̂ η̂ + ηt ˆ σt ρ
variantele lui η si resepctiv t, iar ρ coeficientul de corelatie al
acestora.
Aplicatie - Identificarea sistemlor
Consideram un sistem intrare-iesire:
7.5
6.5
5.5
y(t)
4.5
3.5
2.5
15 20 25 30 35 40 0 5 10 15 20 25 30 35 40
t t
Aplicatie - Identificarea sistemelor(2)
ymodel (t) = x1 u(t)+x2 u(t −1)+x3 u(t −2)+x4 u(t −3)+x5 u(t −4).
model (t)
(t)
5 10 15 20 25 30 35 40
CMMP liniare prost conditionate
ηi = Mi (x̄) + βi ,
unde:
I x̄ ⇒ valoarea adevarata a parametrului x;
I βi ⇒ zgomot Gaussian de medie E(βi ) = 0 si varianta
E(βi βi ) = σi2 .
I βi si βj sunt independente.
Metoda verosimilitatii maxime
unde S = diag(σ12 , . . . , σm
2 ).
Problema CMMP - Cazul neliniar
Problemele CMMP liniare ⇒ metode numerice matriceale clasice,
e.g. factorizarea QR:
J T Jx = J T η si J = QR ⇔
(QR)T QRx = R T Q T QRx = R T Rx = R T Q T η ⇔
Rx = Q T η ⇒ 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 fiecare
iteratie cu liniarizarea sa in punctul curent.
Pentru probleme CMMP neliniare de forma:
( )
1
min f (x) = ∥F (x)∥ , 2
x∈Rn 2
unde F (x) = η − M(x), metodele des utilizate sunt:
I metoda Gauss-Newton
I metoda Levenberg-Marquardt
Metoda Gauss-Newton (GN)
La fiecare iteratie a metodei GN, fiind dat xk , se realizeaza
urmatoarea actualizare:
1
xk+1 = arg minn ∥ F (xk ) + J(xk )(x − xk ) ∥2 ,
x∈R 2 | {z }
liniarizarea lui F (x) in xk
f (x) = x1 expx2 t,
2 3 4 5 6 7 8
Aplicatie - estimarea cresterii demografice(2)
Metoda GN (k=2)
2 3 4 5 6 7 8
Aplicatie - estimarea cresterii demografice(2)
Metoda GN (k=3)
2 3 4 5 6 7 8
Aplicatie - estimarea cresterii demografice(2)
Metoda GN (k=4)
2 3 4 5 6 7 8
Aplicatie - estimarea cresterii demografice(2)
Metoda GN (k=5)
2 3 4 5 6 7 8
Metoda Levenberg-Marquardt
Reprezinta generalizarea metodei G-N la cazul in care JkT Jk nu este
inversabila, fiind caracterizata de urmatoarea actualizare
1 βk ( )−1
dk = arg minn ∥Fk +Jk d∥2 + ∥d∥2 = − JkT Jk + βk In JkT Fk si
d∈R 2 2
( )−1
xk+1 = xk − αk JkT Jk + βk In JkT Fk
2 3 4 5 6 7 8
GN vs. LM - estimarea cresterii demografice
Metoda GN vs LM (k=5)
GN
LM
2 3 4 5 6 7 8
GN vs. LM - estimarea cresterii demografice
Metoda GN vs LM (k=6)
GN
LM
2 3 4 5 6 7 8
GN vs. LM - estimarea cresterii demografice
Metoda GN vs LM (k=7)
GN
LM
2 3 4 5 6 7 8
Legatura cu metoda Newton
Putem observa ca gradientul functiei obiectiv f (x) = 12 ∥F (x)∥2 a
problemei CMMP neliniare este dat de urmatoarea relatie:
si conditia de compatibilitate:
( )
∥Hk ∇2 f (xk ) − Hk−1 ∥ ≤ γk ∀k ∈ N
Ion Necoara
2014
(NLP): programare neliniara constransa
Problema de optimizare neliniara supusa la constrangeri:
(NLP) : min f (x)
x∈Rn
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 , h(x) = [h1 (x), . . . , hp (x)]T ,
g : Rn → Rm , h : Rn → Rp .
min ∥x∥22
x∈R3
s.l. a1 x1 + a2 x2 + a3 x3 = b
⇓
H = {x : aT x = b}, [0]H = ta
b b
t= ⇒ [0]H = a
∥a∥2 ∥a∥2
Exemplu 2: problema localizarii
Se cunosc locatiile a m senzori si ∈ R3 si distantele Ri de la senzori
la obiectul necunoscut x ∈ R3
min R
x∈R3 ,R>0
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)
Exemplu 3: controlul puterii in sisteme de comunicatie
Dispunem de n transmitatori, cu nivelurile de putere
P1 , 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 Gij Pj , unde
Gij reprezinta amplificarea pe linia de comunicatie (i, j)
I Puterea semnalului primit de receptorul i de la transmitatorul
i este Gii Pi
Exemplu 3: controlul puterii in sisteme de comunicatie
min P1 + · · · + Pn
P∈Rn
s.l. Pmin ≤ Pi ≤ Pmax
Gii Pi /(σi + Σj̸=i Gij Pj ) ≥ Smin
Exemplu 4: reconstructie tomografica
Tomografie computerizata = tehnica noninvaziva ce foloseste
raze X (sau alte tipuri de radiatii) pentru a produce imagini 2D/3D
ale interiorului obiectului scanat.
Procedura de functionare consta in:
1. Se achizitioneaza o serie de
proiectii, din diferite unghiuri,
ale obiectului scanat;
www.merckmanuals.com
matricea de achizitie.
• Imaginea interiorului reprezinta solutia sistemului liniar
(subdeterminat deoarece sunt mai putine masuratori m decat
dimensiunea imaginii n): Ax = b.
• Reformulare in termeni de problema CMMP:
min ∥x∥α
x∈Rn : Ax=b
∥A(X )∥
1 − δr (A) ≤ ≤ 1 + δr (A)
∥X ∥F
q∗ ≤ f ∗
q∗ = f ∗
min max L(·) ≤ max min L(·) ⇔ min max L(·) = max min L(·)
Intuitie
Putem interpreta dualitatea ca o aproximare liniara:
I Definim 1− (y ) = ∞ daca y > 0 si 0 altfel (functia indicator al
lui R+ ).
I Definim 10 (y ) = ∞ daca y ̸= 0 si 0 altfel (functia indicator al
lui {0}).
I Rescriem problema originala (NLP) ca:
∑ ∑
minn f (x) + 1− (gi (x)) + 10 (hj (x))
x∈R
i j
I Observam ca problema:
( ( )T )
1 T T T
inf t(x) = x Qx + q + C λ + A µ x
x∈Rn 2
1( )T ( )
q(λ, µ) = −λT d−µT b− q+C T λ+AT µ Q −1 q+C T λ+AT µ ,
2
Duala unei probleme QP strict convexa
I h : R2 → R, h(x) = x1 + x2 − 3 [ ]
I h(x) = Ax − b ⇒ A ∈ R1×2 , b ∈ R, A = 1 1 , b=3
Clasificare liniara binara
Problema clasificarii binare: se urmareste separarea unui set de
obiecte in doua clase.
Modelare matematica: sa se determine hiperplanul(a) optim ce
separa 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.
Clasificare liniara binara - e-mail filtering
E-mail filtering - determinarea unui estimator ce separa un set dat
de 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 cunoscute
I 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 este
spam, altfel yi = 1.
1
min ∥w ∥22 + C Σm
i=1 ξi
w ∈Rn ,b∈R,ξ≥0 2
s.l. y1 (w T x1 − b) ≤ 1 − ξ1 ,
...
ym (w T xm − b) ≤ 1 − ξm .
Programare liniara (LP) si dualitate
f ∗ = minn c T x
x∈R
s.l.: Cx − d ≤ 0, Ax − b = 0.
X = {x ∈ Rn : Cx − d ≤ 0, Ax − b = 0}.
X = Conv({v1 , . . . , vq }).
∑
Deoarece x ∗ ∈ X , putem scrie x ∗ = qi=1 αi vi , ude αi ≥ 0 si
∑ q ∗
i=1 αi = 1. Este clar ca c vi ≥ f , orice vi fiind fezabil.
T
unde
[ ] 4 3 1000
12 3 2
c= ,C = , d = 16000
7 −1 0 0
0 −1 0
Tehnici de Optimizare
Curs X
Conditii de optimalitate pentru (NLP)
Ion Necoara
2014
Probleme (NLP) generale
• Reamintim problema (NLP) generala:
X = {x ∈ Rn : g (x) ≤ 0, h(x) = 0}
min f (x)
x∈X
Exemplu (NLP)
• Fie urmatoarea problema de optimizare (NLP):
• Observam:
I functia obiectiv: f (x) = x14 + x24 − 4x1 x2 , 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!
Conditii de ordinul I pentru (NLP) - constrangeri convexe
Teorema: Fie X o multime convexa si f ∈ C 1 . Pentru problema
de optimizare constransa
min f (x)
x∈X
∇f (x ∗ )T (x − x ∗ ) ≥ 0 ∀x ∈ X
∇f (x ∗ )T (x − x ∗ ) ≥ 0 ∀x ∈ X
X = {x ∈ R2 : x ≥ 0, x1 + x2 = 5}
50
x3 0
−50
−100
−150
−200
−250
−10
−10
−5 0
0 x1
x2 5
10 10
Conditii necesare de ordinul I pentru (NLPe)
Teorema: Fie x ∗ un punct de extrem al functiei obiectiv f supusa
la constrangerile h(x) = 0, i.e. al problemei de optimizare (NLPe),
si presupunem ca x ∗ este un punct regulat pentru aceste
constrangeri. Atunci, exista un multiplicator Lagrange µ∗ ∈ Rp
a.i.:
min x1 + x2
x∈R2
s.l. : h(x) = x12 + x22 − 2 = 0
2µx1 = −1
2µx2 = −1
x12 + x22 = 2.
min −x1
x∈R2
s.l. : h1 (x) = (1 − x1 )3 + x2 = 0, h2 (x) = (1 − x1 )3 − x2 = 0.
∇f (x ∗ ) + ∇h(x ∗ )T µ∗ = 0 si h(x ∗ ) = 0.
∑
p
∇2x L(x ∗ , µ∗ ) = ∇2 f (x ∗ ) + µ∗i ∇2 hi (x ∗ )
i=1
d T ∇2x L(x ∗ , µ∗ )d ≥ 0 ∀d ∈ M.
Exemplu
Consideram din nou problema:
min x1 + x2 ,
x∈R2 : h(x)=x12 +x22 −2=0
∇f (x ∗ ) + ∇h(x ∗ )T µ∗ = 0 si h(x ∗ ) = 0.
−x2 − x3 + µ = 0
−x1 − x3 + µ = 0
−x1 − x2 + µ = 0
x1 + x2 + x3 = 3,
df (x(t))
|t=0 = ∇f (x ∗ )d < 0
dt
ceea ce contrazice ipoteza de minimalitate a lui x ∗ .
Interpretarea conditiilor (KKT)
Analiza cazurilor:
I 1. ⇒ x1∗ + x2∗ + x3∗ < −3 si x1∗ < 0 ⇒ λ∗1 = λ∗2 = 0 ⇒
x1∗ = x2∗ = x3∗ = 0 ⇒ contradictie cu ipoteza;
I 2. ⇒ x1∗ + x2∗ + x3∗ < −3, x1∗ = 0, λ∗1 = 0 si λ∗2 ≥ 0 ⇒
λ∗1 = −λ∗2 = 0 ⇒ x2∗ = x3∗ = 0 ⇒ contradictie cu ipoteza;
I 3. ⇒ x1∗ + x2∗ + x3∗ = −3, x1∗ < 0, λ∗1 ≥ 0 si λ∗2 = 0 ⇒ putem
alege x1∗ = x2∗ = x3∗ = −1 si λ∗1 = 1 ce satisfac conditiile
(KKT) ⇒ aceasta solutia este un punct (KKT);
I 4. ⇒ x1∗ + x2∗ + x3∗ = −3, x1∗ = 0 si λ∗1 , λ∗2 ≥ 0 ⇒
x2∗ = x3∗ = −3/2 si λ∗1 = −λ∗2 = 3/2 ⇒ contrazice conditia
λ∗2 ≥ 0.
Exemplul 2
Consideram problema:
Fie problema:
min x2 .
x∈R2 : x12 +x22 −1≤0
2λx1 = 0, 1 + 2λx2 = 0,
(KKT − CP) : ∇f (x ∗ ) + ∇g (x ∗ )T λ∗ + AT µ∗ = 0
g (x ∗ )T λ∗ = 0
g (x ∗ ) ≤ 0, Ax ∗ = b
µ∗ ∈ Rp , λ∗ ≥ 0,
min ∥x∥2 ,
x: Ax=b
x ∗ + AT µ∗ = 0, Ax ∗ = b.
unde Q ≻ 0.
Conditiile (KKT-CP):
Qx ∗ + q + AT µ∗ = 0, Ax ∗ = b.
Ion Necoara
2014
(NLP)
Problema de optimizare neliniara supusa la constrangeri
f (x)
f (x) z }| {
z }| { min z T Ay
1 z,y ∈Rn
minn ∥Ax − b∥2
x∈R 2 ∑
n
s.l. l ≤x ≤u s.l. zi = 1, Cy ≥ d .
| {z } i=1
multimea X (convexa) | {z }
multimea X (convexa)
Conditii de optimalitate
∇f (x ∗ )T (x − x ∗ ) ≥ 0 ∀x ∈ X .
Conditii de optimalitate
Demonstratie: Presupunem ca exista y ∈ X astfel incat
∇f (x ∗ )T (y − x ∗ ) < 0.
xk+1 = xk + αk dk ,
deci
xk+1 = xk + αk (x̄k − xk )
Clar, daca xk nu este stationar, atunci exista x̄k ∈ X a.i.
∇f (xk )T (x̄k − xk ) < 0. Observam ca daca X convexa atunci
xk + αk (x̄k − xk ) ∈ X pentru orice αk ∈ (0, 1).
Metoda directiilor fezabile
Definitie Fie xk un sir convergent la un punct nestationar.
Directiile dk sunt conectate prin gradient la xk daca sirul dk este
marginit si satisface:
Din teorema valorii medii avem ca exista ᾱk ∈ [0, αk /ρ] a.i.
−∇f (xk + ᾱk dk )T dk < −c1 ∇f (xk )T dk , ∀k ≥ k̄.
Considerand ca dk este marginit (are un subsir convergent),
evaluam limita in relatia precedenta si obtinem
min f (x)
x∈X
Interpretare
1
xk+1 = arg min f (xk ) + ∥x − (xk − αk ∇f (xk ))∥2
x∈X 2αk
1
= arg min f (xk ) + ∇f (xk )T (x − xk ) + ∥x − xk ∥2
x∈X 2αk
1
adica foloseste o aproximare patratica pentru f cu Hessiana αk In !
Metoda Gradient Proiectat (caz particular al metodelor de
directii fezabile)
Conditia de optimalitate pentru subproblema convexa
1
min q(x) = f (xk ) + ∇f (xk )T (x − xk ) + ∥x − xk ∥2
x∈X 2αk
este data de
1
(∇f (xk ) + (xk+1 − xk ))T (x − xk+1 ) ≥ 0, ∀x ∈ X .
αk
| {z }
∇q(xk+1 )
min f (x)
x∈X
Observatii: [ ]
1
I ∇f (x) = x − 1
c =x− 1
x1 −x2 +1
c T x+d −1
[ ] [ ]
1 0 1 −1
I ∇2 f (x) = I2 + 1
cc T = + 1
(c T x+d)2 0 1 (x1 −x2 +1)2 −1 1
Metoda Newton Proiectat - Exemplu
Solutie explicita a iteratiei Newton (cu pas αk = 1) in doua
moduri:
1. Utilizand dualitatea
( )
(aT v ) −1
xk+1 = xk − v − T 2 2
(∇ f (xk )) a ,
a (∇ f (xk ))−1 a
( )−1
unde v = ∇2 f (xk ) ∇f (xk ). ( )
∑
2. Eliminand constrangerea liniara, i.e. y1 = 1
a1 b− aj yj
j̸=1
1
xk+1 = arg min ∇f (xk )T (y − xk ) + (y − xk )T ∇2 f (xk )(y − xk )
aT y =b 2
1
= arg min ∇f (xk )T (Mz + u)+ (Mz + u)T ∇2 f (xk )(Mz + u),
z∈Rn−1 2
β1 In ≽ ∇2 f (xk ) ≽ β2 In .
Ion Necoara
2014
Probleme cu constrangeri de egalitate
I Reamintim forma generala a problemelor cu constrangeri de
egalitate:
(NLPe) : min f (x)
x∈Rn
s.l.: h(x) = 0,
unde f : Rn → R si h : Rn → Rp sunt functii de doua ori
diferentiabile.
I Conditiile de optimalitate de ordinul I pentru aceasta
problema (conditiile KKT): fie x ∗ punct de minim atunci
exista µ∗ ∈ Rp astfel incat conditiile (KKT-NLPe) au loc:
[ ] [ ]
∗ ∗ ∇x L(x ∗ , µ∗ ) ∇f (x ∗ ) + ∇h(x ∗ )T µ∗
∇L(x , µ ) = = = 0
∇µ L(x ∗ , µ∗ ) h(x ∗ )
Observam:
I f (x) = 4x12 + 2x22 + 4x1 x2 − x1 + x2 , f : R2 → R
I h(x) = x1 − x2 − 1, h : R2 → R
I L(x, µ) = 4x12 + 2x22 + 4x1 x2 − x1 + x2 + µ(x1 − x2 − 1)
[ ]
∇x L(x ∗ , µ∗ )
Din conditiile de optimalitate = 0 rezulta sistemul:
∇µ L(x ∗ , µ∗ )
∗
8x1 + 4x2 − 1 + µ = 0
2
x1 = 5
4x2 + 4x1 + 1 − µ = 0 ⇒ x2∗ = − 35
∗ 1
x1 − x2 − 1 = 0 µ =5
Exemple probleme cu constrangeri de egalitate
zt+1 = At zt + Bt ut ∀t ≥ 0,
∑
N ∑
N−1
min ℓzt (zt ) + ℓut (ut )
zt ,ut
t=1 t=0
s.l.: zt+1 = At zt + Bt ut ∀t = 0, . . . , N − 1.
Exemple probleme cu constrangeri de egalitate
zt+1 = At zt + Bt ut
Qx − q + AT µ = 0
Ax = b.
= −lkT Lk lk
k hk − γlk )
[(Lk lk + AT (Ak lk − γhk )T ][−lkT hkT ]T
T
Observam:
I L(x, µ) = x14 + x22 + 2x1 x2 + x1 + x2 + µ(x1 + x2 − 1)
[ 3 ]
4x1 + 2x2 + 1 + µ
I ∇x L(x, µ) =
2x2 + 2x1 + 1 + µ
Consideram x0 = [−1 1]T , µ0 = 0 si α0 = 1. Rezulta:
[ ]
0
x1 = x0 − α0 ∇x L(x0 , µ0 ) =
0
µ1 = µ0 + α0 h(x0 ) = −1
Convergenta ML
(ML − N) : xk+1 = xk + dk
µk+1 = µk + dkµ ,
Rezulta:
2/5
(x1 , µ1 ) = (x0 , µ0 ) + (d0 , d0µ ) = 8/5
11/5
Metoda Lagrange Newton
(ML − Nα ) : xk+1 = xk + αk dk
µk+1 = µk + αk dkµ ,
1.5
0.5
x2
0
−0.5
−1
−1.5
−2
0.8 1 1.2 1.4 1.6 1.8 2
x1
(KKT − CPe) : ∇f (x ∗ ) + AT µ∗ = 0, Ax ∗ = b.
Metoda Newton pentru probleme convexe cu constrangeri
de egalitate
{x : Ax = b} = {Zv + y : v ∈ Rn−p },
10
x2 6
0
0 2 4 6 8 10
x
1
Ion Necoara
2014
Istoric
min cT x
x∈Rn
s.t. Ax = b, x ≥ 0.
min f (x)
x∈Rn
s.t. Ax = b, g (x) ≤ 0,
O(n2 )
g (x) = |x| − 1 {
3.5
τ=1
3 τ=0.5
τ=0.1
I− (g (x)) = 2
0.5
0
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1
4
τ=1
g (x) = x { 2
τ=0.5
τ=0.1
0, daca x ≤ 0 0
I− (g (x)) =
∞, daca x > 0. −2
B(x) = −τ log(−x)
−4
−6
−1000 −900 −800 −700 −600 −500 −400 −300 −200 −100 0
Reformulare ca metoda bariera
Conditii de optimalitate ale formularii cu functia bariera:
∑
m
τ
∇f (x) − ∇gi (x) + ∇h(x)T µ = 0
gi (x)
i=1 | {z }
λi
h(x) = 0.
∑
m
∇f (x) + λi ∇gi (x) + ∇h(x)T µ = 0
i=1
λi gi (x)= −τ
g (x) < 0, λ > 0
h(x) = 0.
MPI pentru probleme de optimizare convexe
min f (x)
x∈Rn
s.l. g (x) ≤ 0, Ax = b.
∑
m
minn f (x) − τ log(−gi (x))
x∈R
i=1
s.l. Ax = b.
∑
m
⇒ Notam functia bariera B(x) = − log(−gi (x)) si punctul de
i=1
optim x(τ ) ce satisface g (x(τ )) < 0 si Ax(τ ) = b.
MPI pentru probleme de optimizare convexe
⇒ Punctele de optim x(τ ) definesc calea centrala si satisfac
∇f (x(τ )) + ∇B(x(τ )) + AT µ̄ = 0.
Metoda bariera
min 1T x
x
s.l.: A + diag(x) ≽ 0
• Pentru fiecare n = 10, · · · , 1000 rezolvam 100 de probleme SDP
generate random
Metode de punct interior primale-duale
min f (x)
x∈Rn
s.l. g (x) + s = 0, h(x) = 0, s ≥ 0.
∑
m ∑
m
Mν (x, s, τ ) = f (x)−τ log(si )+ν∥h(x)∥1 +ν |max{0, gi (x)}|.
i=1 i=1
Se aleg ρ, c1 ∈ (0, 1], pasul αkx = ρm , unde m este cel mai mic
intreg ce satisface relatia (de backtracking)
Mν (xk + ρm dkx , sk + ρm dks , τk ) ≤Mν (xk , sk , τk )
+ c1 ρm M′ ν (xk , sk , τk ; dkx , dks ).
Solvere: Matlab, SeDumi, CVX
Exista diferite solvere pentru rezolvarea problemelor NLP generale
bazate pe implementari de punct interior:
I Matlab: linprog pentru LP; quadprog pentru QP, fmincon
pentru NLP generale
I Sedumi rezolva probleme convexe in format SDP pentru cele
4 tipuri de conuri: Rn , Rn+ , Ln , S+
n
X = quadprog(Q, q, A, b)
minimizeaza problema QP
Ion Necoara
2014
Control optimal liniar
Fie sistemul liniar,
zt+1 = Az zt + Bu ut ,
unde zt ∈ Rnz , reprezinta starea sistemului, ut ∈ Rnu reprezinta
intrarea. Consideram constrangeri pe stare si intrare:
lz ≤ zt ≤ uz , Cu u t ≤ d u ∀t ≥ 0
1∑ ∑
N N−1
min ∥zi − ziref ∥2Qi + ∥ui − uiref ∥2Ri
zi ,ui 2
i=1 i=0
s.l. z0 = z, zi+1 = Az zi + Bu ui ,
lz ≤ zi ≤ uz , Cu u i ≤ d u , ∀i = 1, . . . , N − 1.
Ax = b
−Bu Inz 0 0 ... 0 0 0 Az z0
0 −Az −Bu Inz ... 0 0 0 0
A = .. .. .. .. .. .. .. .. , b = ..
. . . . . . . . .
0 0 0 0 ... −Az Bu Inz 0
• Reformulam constrangerile pe stare si intrare:
Cx ≤ d
Cu 0 0 0 0 du
0 Cz dz
0 0 0
C =
0 0 ··· 0 0, d = ...
0
0 0 Cu 0 du
0 0 0 0 Cz dz
Formulare QP rara
Obs.: fie matricile U, V ≻ 0 si x, y vectori cu dim. compatibile:
[ ][ ]
U 0 x
∥x∥U = x Ux, x Ux + y Vy = [x y ]
2 T T T T T
.
0 V y
1 ∑( )
N
∥zi − ziref ∥2Qi + ∥ui−1 − ui−1 ∥Ri−1
ref 2
2
i=1
[ ] [ ][ ]
1∑
N ref T R
ui−1 − ui−1 i−1 0 ui−1 − ui−1 ref
=
2 zi − ziref 0 Qi zi − ziref
i=1
1
= (x − x ref )T Q(x − x ref ),
2
unde am folosit notatiile:
x = [u0T z1T · · · uN−1
T z T ], x ref = [(u ref )T (z ref )T · · · (u ref )T (z ref )T ]
N 0 1 N−1 N
si Q = diag (R0 , Q1 , · · · , RN−1 , QN ).
Formulare QP rara
1 T
min x Qx + q T x
x∈RN(nz +nu ) 2
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 A
bloc tridiagonala
⇒ se aplica algoritmi eficienti specifici optimizarii constranse in
functie de dimensiunea problemei
Formulare QP densa
⇒ Dorim reformularea dinamicilor zt+1 = Az zt + Bu ut prin
eliminarea starilor, i.e. variabila devine: x = [u0T · · · uN−1
T ]T ∈ RNnu
z1 = Az z0 + Bu u0
z2 = Az z1 + Bu u1 = A2z z0 + Az Bu u0 + Bu u1
···
zN = Az zN−1 + Bu uN−1 = AN N−1
z z0 + Az Bu u0 + · · · + Bu uN−1
Cz zi ≤ dz ∀i = 1, · · · , N ⇔ C¯z z̄ ≤ d¯z ,
Cu ui ≤ du ∀i = 0, · · · , N − 1 ⇔ C̄x′′ x ≤ d¯x′′ ,
i=1
¯ +Ap z0 −z ref )T Q̄(ABx
= (ABx ¯ +Ap z0 −z ref ) + (x −u ref )T R̄(x −u ref )
Robot E-puck
I microcontroler
dsPIC30 (16-bit)
I Bluetooth
I senzori infrarosu
I camera video CMOS
(rezolutie 640 × 480)
I senzor ultrasunete
I accelerometru 3D.
ż = Āz z + B̄u u,
[r r
]
unde Āz = 0 ∈ R2×2 si B̄u = r 2 2
r .
2l − 2l
1 ∑ 8
min x T Qx + q T x − τ log(dj − Cj x) (1)
x 2
j=1
s.l.: Ax = b,
1.5
Pozitia z
1
Referinta
0.5
Traiectorie 0
−0.5
−1
−1.5
0 20 40 60 80 100
t
0.8
0.2
−0.2
−0.4
−0.6
0 20 40 60 80 100
t
Control optimal pentru pendulul invers
Structura:
I suport de masa M;
I pendul format din
I bila de masa m;
I tija de lungime l;
zt+1 = Az zt + Bu ut ,
∑
N
1 ∑
N−1
1
min ziT Q0 zi + R0 ui2
zi ,ui 2 2
i=1 i=0
s.l.: z0 = z, zi+1 = Az zi + Bu ui
θmin ≤ (zi )1 ≤ θmax ∀i = 0, . . . , N − 1,
1
min x T Qx
x 2
s.l.: Ax = b, Cx ≤ d,
unde Q
[ = diag(R0 , Q]0 , . . . , R0 , Q0 ) si daca definim
1 0 0 0
Cz = & dz = [θmax − θmin ]T , atunci
−1 0 0 0
0 Cz 0 0 ... 0 dz
0 0 0 Cz ... 0 dz
C = . . .. .. .. .. , d =.
.. .. . . . . ..
0 0 0 0 ... Cz dz
0.25
0.2
0.15
unghiul(Θ)
0.1
0.05
−0.05
−0.1
−0.15
−0.2
−0.25
0 5 10 15 20 25
t
unde e = [1 . . . 1]T .
Formulare echivalenta neconstransa via penalitate (alegand
τ > 0 suficient de mare):
1 τ
minn ∥Ex − x∥2 + (e T x − 1)2 .
x∈R 2 2
I Pe baza teoremei Peron-Frobenius, asiguram constrangerile de
inegalitate x ≥ 0 in cazul neconstrans.
I Uzual n ≈ 108 − 109 , restrange aplicabilitatea algoritmilor la
cei de ordinul I ( datorita complexitatii scazute per iteraţie).
I Aplicam Metoda de Gradient Proiectat pentru rezolvarea
ambelor formulari.
Problema Google
(i) Formularea constransa:
1
minn ∥Ex − x∥2
x∈R 2
s.l.: e T x = 1, x ≥ 0,
0.6
0.5
0.4
0.3
0.2
simplex ∆n aplicam algo-
0.1
0
ritmi cu convergenta in timp
liniar(necesita O(n) operatii).
0 5 10 15 20 25
Iteratii (k)
Convergenta metodei de
gradient proiectat
(n = 102 ).
Problema Google
(ii) Formularea neconstransa:
1 τ
∥Ex − x∥2 + (e T x − 1)2 .
minn
x∈R 2 2
Metoda Gradient: xk+1 = xk − α∇F (xk , τ )
0.7 0.8
0.6 0.7
0.6
0.5
τ=5
0.5
τ=10
f(xk) − f
0.4
0.4 τ=15
k
0.3 τ=30
0.3
τ=50
0.2
0.2
0.1 0.1
0 0
0 0.5 1 1.5 2 2.5 3 3.5 4 0 1 2 3 4 5
Iteratii (k) 4 Iteratii (k) x 10
4
x 10
bi = x1 f1 (u1 ) + · · · + xn fn (u1 ) ∀i = 1, · · · , m
• Fie A ∈ Rm×n , Aij = fj (ui ), obtinem problema de optimizare:
∑
m
minn (x1 f1 (ui ) + · · · + xn fn (ui ) − bi )2 = ∥Ax − b∥2 .
x∈R
i=1
la datele (ti , bi ), i = 1, · · · , m
I functii de baza pj (t) = t j−1 pentru j = 1, · · · , n
I matricea A cu intrarile Aij = tij−1 (matrice Vandermonde)
1 t1 t12 ··· t1n−1
1 t2 t22 ··· t2n−1
A= .. .. .. .. ..
. . . . .
2
1 tm tm ··· n−1
tm
7.5
6.5
5.5
y(t)
5
4.5
3.5
2.5
15 20 25 30 35 40 0 5 10 15 20 25 30 35 40
t t
Regresie liniara 2 - identificarea sistemelor
Dorim sa aproximam sistemul printr-un model intrare-iesire de
forma ARMA:
ymodel (t) = x1 u(t)+x2 u(t −1)+x3 u(t −2)+x4 u(t −3)+x5 u(t −4).
Determinarea setului de parametri x = [x1 · · · x5 ]T ai modelului
poate fi realizata prin rezolvarea unei probleme patratice
neconstranse:
model (t)
(t)
5 10 15 20 25 30 35 40
Reconstructie tomografica
Tomografie computerizata = tehnica noninvaziva ce foloseste
raze X (sau alte tipuri de radiatii) pentru a produce imagini 2D/3D
ale interiorului obiectului scanat.
Procedura de functionare:
1. Se achizitioneaza o serie de
proiectii, din diferite unghiuri,
ale obiectului scanat;
www.merckmanuals.com
matricea de achizitie.
• Imaginea interiorului reprezinta solutia sistemului liniar
(subdeterminat deoarece sunt mai putine masuratori m decat
dimensiunea imaginii n): Ax = b.
• Reformulare in termeni de problema CMMP:
min ∥x∥α
x∈Rn : Ax=b
unde de obicei se alege α = 2 sau α = 0 sau α = 1. Alegem
α = 0 ∨ 1 pentru a induce o reprezentare rara a imaginii (vectorul
solutie). Se doreste o reprezentare rara a imaginii, deoarece
aceasta permite: compresie usoara; algoritmi rapizi pt. procesare;
memorie de stocare mica; eliminarea usoara a zgomotului;...
• Pentru rezolvare, cu α = 2, se poate utiliza metoda gradient sau
metoda gradientilor conjugati!
Raritate in solutie - cazul vector ∑
Definim o masura a raritatii ∥x∥0 =/ {i : xi ̸= 0} si ∥x∥1 = i |xi |
si apoi problemele de optimizare asociata sistemului Ax = b:
min ∥x∥0 s.l. Ax = b =⇒
|{z} min ∥x∥1 s.l. Ax = b
x∈Rn x∈Rn
relaxare convexa
|akT aj |
• Mutual coherence: µ(A) = max
1≤k,j≤m, k̸=j ∥ak ∥2 ∥aj ∥2
Pentru o matrice A cu rang intreg pe linii (i.e. m < n), daca exista
o solutie x ∗ satisfacand relatia:
( )
1 1
∥x ∗ ∥0 < 1+
2 µ(A)
atunci x ∗ este solutie pentru amandoua problemele de optimizare!
∥A(X )∥
1 − δr (A) ≤ ≤ 1 + δr (A)
∥X ∥F
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
Procesare de imagini