Documente Academic
Documente Profesional
Documente Cultură
Cursul 13
2015
Anca Ignat
Optimizare numeric
min { f ( x ) ; x n } , f : n
Un punct x* n se numete punct de minim global pentru
funcia f dac f ( x*) f ( x ) x n .
Un punct x* n se numete punct de minim local pentru
funcia f dac exist o vecintate V a punctului x * pentru
care f ( x*) f ( x ) x V .
Un punct x* n se numete punct de minim strict local
pentru funcia f dac exist o vecintate V a punctului x *
pentru care f ( x*) f ( x ) x V , x x * .
V S ( x*, r ) x n ; x x * r .
2
f ( x)
( x)
x x
i
j
i , j 1,...,n
2 f
2 f
2 f
( x)
( x)
( x)
2
x1x2
x1xn
x1
2 f
2 f
2 f
( x)
( x)
( x)
2
2
f ( x ) x2x1
x 2
x 2 x n
2
2
f
f
f
x
x
x
(
)
(
)
(
)
2
x x
x
x
x
n
n
2
n 1
f ( x p ) f ( x ) f ( x tp )T p .
(1)
f ( x*) f ( x * p ) p , || p || r , p 0
O funcie f se numete convex dac:
f a x1 (1 a ) x2 af ( x1 ) (1 a ) f ( x2 ) , x1 , x2 n , a [0,1].
Teorema
Dac f este funcie convex orice punct de minim local este
punct de minim global. Dac n plus f C 1 ( n ) atunci orice
punct staionar este punct de minim global.
Metode de descretere
Se numete direcie de descretere a funciei f n punctul x
un vector d n pentru care
f ( x d ) f ( x ) , [0, ) .
Teorema
Fie f C 1 ( n ) . Un vector d este direcie de descretere
pentru f n x dac i numai dac:
f ( x )T d d , f ( x ) n 0 .
10
Algoritm de descretere
1. alege x n
2. do
- gsete o direcie de descretere d a lui f n x
- gsete 0 astfel ca
f ( x d ) min{ f ( x d ); (0, )}
(ajustarea pasului line search)
- x x d
while (nu am gsit soluia)
11
Metoda Newton
Fie ak aproximarea curent a soluiei problemei de minimizare
de mai sus. Vom folosi dezvoltarea n serie Taylor a funciei g
1
1
2
g (a ) g (ak ) g (ak )(a ak ) g(ak )(a ak ) g(bk )(a ak )3
2
3!
q(a ) g (ak ) g(ak )(a ak )
12
1
g (ak )(a ak )2
2
13
g ( a k )
ak
g "(ak )
Metoda secantei
Dac n relaiile de mai sus se face urmtoarea aproximare:
g '(ak ) g '(ak 1 )
g "(ak )
a k a k 1
a k a k 1
a k g ( a k )
g '(ak ) g '(ak 1 )
14
a k 1
g '(ak ) u2 u1
ak (ak ak 1 )
g
'(
a
)
g
'(
a
)
2
u
k
k 1
2
g ( a k ) g ( a k 1 )
u1 g '(ak 1 ) g '(ak ) 3
a k a k 1
u2 u12 g '(ak 1 ) g '(ak )
16
- nu se obine optimal
- pentru reducerea timpului de calcul optimizarea se oprete
nainte de a ajunge la soluie, n funcie de anumite
criterii/teste de oprire
17
(1)
(2)
g(a ) g (a )
g ( a ) g ( a )
k 0;
se alege a0
while ( g (ak ) g (ak ) )
a k 1
ak
k k 1
2 sau 10
0.2
18
Testul Goldstein
Dat (0, 2), este considerat acceptabil dac:
g ( ) g ( ) si g ( ) g (0) (1 ) g '(0)
xk 1 xk d k
19
Testul Wolfe
(0, 2)
:
g ( ) g ( ) g (0) g '(0)
g '( ) (1 ) g '(0)
20
21
k 0 f ( xk k d k ) min{ f ( xk d k ) ; [0, ]}
d k direcie de descretere dac :
f ( xk ) T d k 0.
22
Cazul ptratic:
1 T
1
T
f ( x ) x Ax x b Ax , x n b, x n
2
2
b n , A nn simetric i pozitiv definit
A pozitiv definit det A 0, f este strict convex
f ( x ) Ax b ,
23
2 f ( x) A
g( x ) Ax b
xk 1 xk k gk , gk Axk b
24
1
f ( xk gk ) ( xk gk )T A( xk gk ) ( xk gk )T b
2
1 T
gk Agk 2 gkT gk f ( xk )
2
min
gkT gk
k T
gk Agk
25
x0 dat
gkT gk
xk 1 xk T
gk , k 0,1,...
gk Agk
gk Axk b
1
1 T
T
E ( x ) ( x x*) A( x x*) f ( x ) x * Ax *
2
2
E ( x ) f ( x ) g ( x )
26
2
T
gk gk
E ( xk 1 ) 1 T
gk Agk gkT A1 gk
E ( xk )
x x
4cC
x Ax x A x (c C )
2
Teorem
Cazul ptratic: Pentru orice iteraie iniial x0 , irul construit
cu metoda pantei maxime converge la x * unicul punct de
minim al funciei f. Avem:
2
C c
E ( xk 1 )
E ( xk )
Cc
Cazul general: f : n , f C 2 ( n ), f are un punct de
minim local x *. Presupunem c F ( x*) 2 f ( x*) are c > 0
cea mai mic valoare proprie i C > 0 cea mai mare valoare
proprie. Dac irul xk construit cu metoda pantei maxime
converge la x * (la fiecare pas A 2 f ( xk ) , b f ( xk ) ),
28
C c
.
convergen
Cc
Metoda Newton
xk - punctul curent de aproximare
1
f ( x ) f ( xk ) f ( xk ) ( x xk ) ( x xk )T 2 f ( xk )( x xk ) g ( y )
2
T
g funcional ptratic, y x xk ,
29
1 T
g ( y ) y Ay yT b c
2
A 2 f ( xk ) , b f ( xk ) , c f ( xk )
y* arg min{ g ( y ); y n } este unica soluie a sistemului
1
liniar Ay b , y* A b f ( xk ) f ( xk )
1
Metoda Newton
1
xk 1 xk f ( xk ) f ( xk ) , k 0,1,... , x0 - dat
2
30
Teorem
Fie f C 3 ( n ) care are un punct de minim local x * astfel ca
matricea 2 f ( x*) 0 este pozitiv definit. Dac punctul de
nceput x0 este suficient de aproape de x *, || x x* || r ,
atunci irul xk generat cu metoda lui Newton converge la
x * i ordinul de convergen este cel puin 2.
Variante ale metodei lui Newton
1
xk 1 xk k f ( xk ) f ( xk ) , k 0,1,...
2
k se alege astfel ca :
31
xk 1 xk M k gk , 0 , M k nn , gk f ( xk )
M k I n k panta maxim
M k f ( xk )
2
metoda Newton
f ( xk 1 ) f ( xk ) , 0 gkT M k gk 0
Lum M k 0 pozitiv definit
M k k I n f ( xk )
2
, k 0
33
k 0 & k i , i 1,..., n
k 0 & k max{ i ; i 1,..., n}
Noua direcie de descretere este:
d k k I n Fk gk .
1
34
A nn , A AT , A 0 pozitiv definit
1 T
min{ f ( x ) x Ax x T b ; x n }
2
Definiie
Pentru o matrice A nn , A AT simetric, doi vectori
d1 , d 2 n se numesc A-ortogonali sau conjugai n raport
cu A dac:
d1T Ad 2 Ad 2 , d1 n d 2 , Ad1 n Ad1 , d 2 n 0
35
d iT Ad j Ad j , d i
0 , i j , i , j 0,1,..., k
Propoziie
Fie A nn , A AT , A 0 , i d 0 , d1 , , d k direcii
A-conjugate,
d i 0 , i 0,..., k .
Atunci
vectorii
d 0 , d1 , , d k sunt liniar independeni.
36
d 0 , d 1 , , d n 1
n
baz
n
- direcii A conjugate
A nn , A AT , A 0
d 0 , d 1 , , d n 1
T
T
*,
*
Ax
d
d
Ax
d
i
i i Ad i
i
b
n
37
b, d i n
d iT b
i T
d i Ad i Ad i , d i n
b, d i
x*
i 0 Ad i , d i
n 1
di
n
x k x0 0 d 0 1 d 1 k 1 d k 1
x* x 0 0 d 0 1 d 1 n 1 d n 1
d iT A( xk x0 )
i
d iT Ad i
d iT A( x * x0 )
i
d iT Ad i
d kT A( xk x0 ) 0
x * xk ( 0 0 )d 0 ( k 1 k 1 )d k 1 k d k n1d n1
Corolar
gkT d i 0 i k
39
40
y1 , y2 ,..., y p n
span{ y1 , y2 ,..., y p } { y a1 y1 a p y p n ; ai , i 1,..., p}
= subspaiul generat de vectorii y1 , y2 ,..., y p
Teorem
Presupunem c xk x * . Avem urmtoarele relaii:
(1)
gkT gi 0 i 0,1,..., k 1
(2)
(3)
41
(4)
d kT Ad i 0 i 0,1,..., k 1
42
gkT gk
k T
d k Ad k
xk 1 xk k d k
gk 1 gk k Ad k
T
g
k 1 gk 1
k
gkT gk
d k 1 gk 1 k d k
k k 1;
43
Teorem
Dac matricea A are doar r valori proprii distincte,
algoritmul gradienilor conjugai calculeaz soluia x * n cel
mult r iteraii.
Teorem
Dac 1 2 n sunt valorile proprii ale matricii A
atunci:
2
n k 1
2
2
|| xk 1 x* || A
||
x
x
*
||
0
A
n k 1
|| xk 1 x* ||2A 2 E ( xk 1 )
2
n k 1
E ( xk 1 )
E ( x0 ).
n k 1
44
45
x0 n dat , k 0
g0 f ( x0 ), d 0 g0
while ( gk 0)
A 2 f ( xk )
gkT d k
k d T Ad
k
k
xk 1 xk k d k
gk 1 f ( xk 1 )
T
g
k k 1 Ad k
d kT Ad k
d k 1 gk 1 k d k
k k 1;
46
Metoda Fletcher-Reeves
47
while ( gk 0)
k min{ f ( xk d k ); [0, )}
xk 1 xk k d k
g f ( x )
k 1
k 1
T
g
g
kFR kT1 k
gk gk
FR
d
g
k 1
k dk
k 1
k k 1;
d k g k k 1d k 1
gkT d k gkT gk k 1 gkT d k 1
Dac se folosete ajustarea pasului exact:
k 1 este punct de minim local pentru f pe direcia d k 1 prin
urmare gkT d k 1 0 ( gk f ( xk )) .
gkT d k gkT gk || gk ||22 0 d k direcie de descretere
Dac se folosete ajustarea pasului inexact am putea avea
gkT d k 0 ( d k direcie de cretere!!) dar folosind testul lui
Wolfe deducem:
49
f ( xk k d k ) f ( xk ) k gkT d k
| f ( xk k d k )T d k | (1 ) | gkT d k |
1
0, gkT d k 0
2
Metoda Polak-Ribire
- variant a metodei Fletcher-Reeves
T
g
PR
k 1 ( gk 1 gk )
k
gkT gk
Dac se face ajustarea pasului inexact cu testul lui Wolfe nu
putem deduce c d k sunt direcii de descretere.
50
Varianta Hestenes-Stiefel
kHS
gkT1 ( gk 1 gk )
( gk 1 gk )T d k
51
Precondiionare
Se consider norma:
|| x || A
Ax , x
|| x
(k )
k ( A) 1
(0)
||
x
x
|| A
x || A
k ( A) 1
n
k ( A) numruldecondiionarespectral
1
0<1 2 n valorilepropriialematricii A
52
Precondiionare
Ax b M 1 Ax M 1b(lastnga)
AM 1 yb x M 1 y(ladreapta)
M 11 AM 21 yM 11b x M 21 y(split) M M 1 M 2
53
54
M ( D L) D 1 ( D L)T ( A L D LT )
1
T
1 1
1 1
M ( )
D L D D L (0, 2)
55