Sunteți pe pagina 1din 12

Tehnici de optimizare

Curs 10

Sl.dr.ing. Iulia Stamatescu


Conf.dr.ing. Soare Calin

Universitatea Politehnica Bucuresti


Facultatea de Automatica si Calculatoare
iulia.stamatescu@aii.pub.ro

25.04.2016

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 1 / 12


Cuprins

1 Programarea liniara

2 Optimizarea in prezenta restrictiilor - Metoda gradientilor proiectati

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 2 / 12


Programarea liniara

1 Definire problema programare liniara (LP)


2 Exemple probleme
3 Rezolvare problema programare liniara folosind algoritmul simplex.

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 3 / 12


Metoda gradientilor proiectati

Metodele de cautare pe directia de antigradient asigura o evolutie de


maxima eficienta catre punctul de minim. In cazul impunerii unor restrictii
este posibil ca evolutia pe sens de antigradient sa conduca in afara zonei
valorilor admise fixate de restrictii asociate problemei initiale. Metoda pe
care o propunem modifica directia de cautare de antigradient astfel incat
in procesul de cautare sa nu parasim domeniul de stabilitate.

Definitie. Matricea P ∈ Rnxn se numeste matrice de proiectie (sau mai


simplu proiector) daca este simetrica (P T = P) si involuntara (P 2 = P).

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 4 / 12


Metoda gradientilor proiectati

Matricile de proiectie au cateva proprietati interesante dintre care amintim:

i Daca P este proiector ea este pozitiv semidefinita.


ii Daca P este matrice de proiectie atunci si I − P este matrice de
proiectie si reciproca.
iii Fie P proiector si Q = I − P. Atunci L = {Px | x ∈ Rn } si
L1 = {Qx | x ∈ Rn } sunt subspatii ortogonale si ∀x ∈ Rn poate fi
descompus unic in forma x = p + q cu p ∈ L si q ∈ L1 .

Demonstratie proprietati

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 5 / 12


Metoda gradientilor proiectati
Vom considera urmatoarea problema de minim cu restrictii poliedrale:

 min f (x);
in restrictiile Ax ≤ b; A ∈ Rmxn ; b ∈ Rmx1 (1)
Ex = e; E ∈ Rlxn ; e ∈ Rlx1

Fie punctul x ∈ U pentru care putem stabili partitii corespunzatoare astfel


incat A1 x = b1 , A2 x < b2 si Ex = e. Evident, partitiile A1 , A2 , b1 si b2 se
obtin printr-o reordonare corespunzatoare a liniilor matricelor A si b.
Restrictiile active pentru punctul x ∈ Rn considerat, fixeaza o matrice
 
A1
M= .
E
Matricea M ∈ R(p+l)xn o consideram de rang complet. Introducem
matricea
P = I − M T (MM T )−1 M.
Evident, matricea P este simetrica si involutiva si prin urmare P este o
matrice a proiectiilor.
Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 6 / 12
Metoda gradientilor proiectati

Aplicand operatorul P oricarui vector, obtinem proiectia acestui vector in


subspatiul restrictiilor active. Pe ideea generala, vom propune ca directie
de cautare, proiectia antigrdientului in subspatiul restrictiilor active este
d = −P∇f (x).
1 daca P · ∇f (x) 6= 0 atunci directia d = −P∇f (x) este o directie
admisibila de coborare
2 daca P · ∇f (x) = 0 atunci putem stabili o matrice P b astfel ca
directia d = −P · ∇f (x) sa fie o directie admisibila de coborare
b

1 1 ∇f T (x) · d = −||P · ∇f (x)||2 ≤ 0 =⇒ d este o directie de coborare


2 M · d = −M · P∇f (x) = 0 (M, P - ortogonale) si deci A1 d = 0,
Ed = 0 reprezinta conditia ca d sa fie o directie admisa.

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 7 / 12


Metoda gradientilor proiectati
In cazul in care P∇f (x) = 0, obtinem:

P∇f (x) = (I − M T · (M · M T )−1 · M)∇f (x) =


(2)
∇f (x) + M T · (−M · M T )−1 · M · ∇f (x)

Vom nota in continuare


 
T −1 u
−(M · M ) M∇f (x) = w = .
v

In aceste conditii,
T   
A1 u
P∇f (x) = ∇f (x) + · =
E v (3)
= ∇f (x) + AT T
1 ·u+E ·v =0

Facem observatia ca A1 si E corespund gradientilor restrictiilor active si


prin urmare daca toate componentele lui u asigura u ≥ 0 atunci punctul x
este un punct Kuhn-Tucker.
Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 8 / 12
Metoda gradientilor proiectati
Daca vectorul u nu satisface conditia u ≥ 0 si exista cel putin o
componenta uj < 0 vom arata ca putem stabili o matrice P b astfel ca
b · ∇f (x) sa fie o directie admisibila de coborare. Consideram ca in
P  
A
c1
matricea A1 eliminam linia j obtinand matricea A1 si notam P =
c b .
E
Vom arata ca P b · ∇f (x) 6= 0.
Presupunem prin absurd ca P b · ∇f (x) = 0 si deci:
b T (M
(I − M b T )−1 M)∇f
b ·M b (x) =
b T b b T −1
= ∇f (x) − M (M · M ) M∇f (x) =
b (4)
= ∇f (x) + M bT ·W

unde W = −(M b ·Mb T )−1 M


b · ∇f (x).
Pe de alta parte, AT T b T c rj uj , unde rj reprezinta un vector
1 u + E v = M W +b
corespunzator liniei j din A1 . Prin urmare,
b TW
0 = ∇f (x) + M c +b
rj uj . (5)
Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 9 / 12
Metoda gradientilor proiectati
Scazand egalitatea 4 si 5, obtinem:
b T (W
M c − W) +b
rj uj
Cu ni 6= 0, egalitatea contrazice ipoteza ca M este de rang complet. Prin
b (x) ≤ 0. Prin modul de definire, matricea P este si ea o
urmare, P∇f

matrice de proiectie si considerand, d = P∇fb (x) vom arata ca d


constituie o directie admisibila de coborare. Deoarece P b este proiector,
d = P∇f (x) este o directie de coborare. Pentru a arata ca d este o
b
c1 d ≤ 0 si E
directie admisibila, este suficient sa aratam A b d = 0. Tinand
cont ca M · P = 0, rezulta:
b b
 
A
c1
·d =M b ·d =
E

= −M
b P∇f
b (x) = 0

si deci: A b d = 0. Ramane sa aratam ca: r T d ≤ 0.


c1 d = 0, E
j
Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 10 / 12
Metoda gradientilor proiectati

De fapt trebuie sa aratam ca A c1 d ≤ 0 si ramane sa aratam ca rj d ≤ 0.


Inmultind egalitatea 5 cu rj · P,
b obtinem:

0 = rj · P∇f
b (x) + rj · P(
b MbT ·W
c + r T · uj ) =
j

b · rT .
= −rj · d + uj · rj · P j

b T = 0.
b ·M
Relatia a fost obtinuta tinand cont ca P

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 11 / 12


Metoda gradientilor proiectati

Algoritmul metodei lui Rosen (Constrangeri liniare)

Exercitiu numeric:
Minimizati functia f (x1 , x2 ) = 2 · x12 + 2 · x22 − 2x1 x2 − 4x1 − 6x2 cu
restrictiile:
g1 (x1 , x2 ) = x1 + x2 ≤ 2
g2 (x1 , x2 ) = x1 + 5x2 ≤ 5
(6)
g3 (x1 , x2 ) = −x1 ≤ 0
g4 (x1 , x2 ) = −x2 ≤ 0
 
0
avand un punct de initializare in X1 = .
0

Sl.dr.ing. Iulia Stamatescu Conf.dr.ing. Soare Calin (UPB) TO - Curs 10 25.04.2016 12 / 12

S-ar putea să vă placă și