You are on page 1of 578

Tehnici de optimizare

- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

Obiectul optimizrii
|

Un sistem optim este sinonim cu cel mai bun posibil n


general i din toate punctele de vedere?

n orice problem de optimizare corect formulat


z

se are n vedere un anumit criteriu, exprimat printr-un indice de


calitate, funcie cost, funcie obiectiv etc.

i
z
z

se urmrete realizarea celui mai bun sistem din punctul de


vedere al criteriului adoptat.
Sistemul astfel realizat este optim numai cu referire la criteriul
considerat.

Obiectul optimizrii
|

Se pot concepe criterii care s nglobeze simultan mai


multe performane ale sistemului, fiecare intervenind cu o
anumit pondere
Exist i probleme de optimizare multicriteriale
z

se iau n considerare simultan mai multe funcii obiectiv

i n aceste cazuri, sistemul este optimizat dintr-un anumit punct de


vedere prestabilit

Un sistem astfel optimizat nu poate fi cel mai bun posibil


din punctul de vedere al fiecrei performane pariale n
parte
z

dac criteriul ar fi luat n considerare o singur performan, din


punctul de vedere respectiv s-ar fi obinut un sistem mai bun dect
n cazul unui criteriu global, care are n vedere mai multe
performane.

Obiectul optimizrii
|

Criterii de performan (indici de calitate)


z
z
z
z
z

cheltuielile totale
consumul de combustibil sau energie
eroarea de funcionare
timpul de rspuns
distana parcurs etc.

Criteriile de performan se exprim de obicei prin


intermediul unor funcii sau funcionale care depind de o
serie de variabile de stare, de comand, parametri
constructivi ai sistemului etc.
Optimizarea const n determinarea acelor variabile sau
parametri care conduc la extremizarea (maximizarea sau
minimizarea) funciei sau funcionalei adoptate drept
criteriu, n condiiile considerrii restriciilor la care este
supus sistemul.

Obiectul optimizrii
|

Un aspect important n formularea unei probleme de


optimizare este adoptarea indicelui de calitate.
z

n cazul n care exist interes pentru eficiena economic - se


adopt un indice care s conduc final la cheltuieli minime de
investiii i exploatare

n cazul sistemelor tehnice - optimizarea consumului de combustibil


sau energie / a productivitii / a calitii produciei

Se pot lua n considerare indici economici, care nglobeaz i


indicatori tehnici de tipul celor menionai.
n astfel de cazuri, punerea i rezolvarea teoretic i practic a
problemei de optimizare conduce la avantaje incontestabile.

Optimizare staionar / Optimizare


dinamic
|

Problemele n care intervine minimizarea unei funcii sunt


probleme de programare matematic.
z

n conducerea proceselor tehnologice, aceste probleme se refer la


regimurile staionare de funcionare (deci cnd nu intervine variabila
timp) i mai sunt numite probleme de optimizare staionar

Problemele n care intervine minimizarea unei funcionale


se numesc probleme de optimizare dinamic deoarece se
aplic sistemelor dinamice, cu o anumit evoluie n timp
z

Se mai numesc probleme de conducere sau de control optimal

Din punct de vedere matematic, sunt probleme variaionale

Optimizare staionar / Optimizare


dinamic
|

n general problemele de optimizare dinamic sunt


separate de problemele de optimizare staionar.

Exist situaii n care problemele de optimizare dinamic


sunt subordonate celor de optimizare staionar.
z

Motivaie: n conducerea unui sistem tehnico-economic sunt


prioritare aspectele decizionale fa de cele executorii.

Exemplu: este prioritar stabilirea valorilor de regim staionar n


funcie de cerinele procesului,
modalitatea de realizare a regimurilor dinamice n diverse subsisteme
devine o problem secundar (dei se soluioneaz mai dificil).

Formularea problemelor de
optimizare staionar
|

|
|

Optimizarea staionar presupune extremizarea unei funcii


scalare, dependent de una sau mai multe variabile.
Problemele de extrem pot fi de maxim sau de minim
Vom considera, de regul, probleme de minim, avnd n vedere
faptul c orice problem de maxim poate fi transformat ntr-una
de minim prin inversarea semnului funciei
S se determine
min f (x) = min f (x1 , x 2 ,..., x n ), x X, X R n , f R,
f - funcie obiectiv (funcie cost, cost, criteriu)
X - domeniul maxim pe care funcia este definit n mod natural

cu respectarea unor restricii de tip egalitate sau inegalitate de


forma
h i (x) = 0, i = 1,...,l, l n
g j (x) 0, j = 1,..., m

Exemple de probleme de optimizare


staionar
|

Probleme de planificare a produciei


z
z
z

Trei tipuri de produse n cantitile x1, x2, x3


Se folosesc resursele b1 i b2
aij - cantitatea din resursa i pentru realizarea produsului j

a11x1 + a12 x 2 + a13 x 3 b1


a 21x1 + a 22 x 2 + a 23 x 3 b 2 ,

x1 0, x 2 0,

x 3 0.

Cerin: s se planifice producia (x1, x2, x3) astfel nct s se


maximizeze ctigul total
f = c1x1 + c 2 x 2 + c3 x 3
ci, i = 1,2,3 reprezint preurile de vnzare ale celor trei produse.

Exemple de probleme de optimizare


staionar
|

Dimensionarea grosimii izolaiei unei instalaii termice


CT = C I + CO ,

z
z
z
z
z
z
z
z

CI = A ci ra ,

CT - cheltuieli totale
CI - cheltuieli de investiii
CO cheltuieli de operare
(energia termic pierdut)
ra - rata anual de amortizare
A - suprafaa izolaiei
grosimea izolaiei
densitatea materialului
ci costul unitii de mas a
materialului izolant

z
z
z
z

A ( c e )
,
CO = Qhc t , Q =
/ + 1/

Q - cldura pierdut
h - este numrul de ore mediu anual de
funcionare a instalaiei
ct - costul
unitar al energiei termice

c
e
/
- temperaturile medii considerate
pentru interiorul / exteriorul instalaiei
- conductivitatea termic a materialului
- coeficientul parial de transfer al
stratului limit de aer

Exemple de probleme de optimizare


staionar
|

Dimensionarea unei reele electrice


z
z

Se impune minimizarea cheltuielilor de investiii CI = ( a + bS) L prin


alegerea seciunii S
Soluia trivial (S ct mai mic) conduce la cderi de tensiune i
pierderi de putere inadmisibile, care trebuie limitate

L
U = RI cos = I cos U a ,
S
z

L
P = RI 2 = I 2 Pa
S

ntr-o problem de proiectare


se impun valorile medii pentru puterea activ i reactiv a
consumatorului I i cos au valori precizate;
lungimea L a tronsonului este precizat;
seciunea S a conductorului este necunoscut - se deduce din condiia
de minim pentru CI cu respectarea restriciilor asupra U i P.

Exemple de probleme de optimizare


staionar
|

Minimizarea pierderilor n regim staionar la motoarele de


inducie
z

Pierderile variabile de energie


n cupru -pierderi Joule
n fier - datorit histerzisului i curenilor turbionari

Ambele tipuri de pierderi depind de frecvena i amplitudinea


tensiunii de alimentare (sau, echivalent, de fluxul din ntrefier).

Frecvena i amplitudinea tensiunii de alimentare sunt folosite


pentru realizarea reglajului de vitez.

Exist deci posibilitatea ca, prin alegerea convenabil a acestor


mrimi de comand, s se asigure viteza de rotaie dorit i un
randament maxim.

Formularea problemelor variaionale


|

O problem variaional propriu-zis va fi considerat sub forma:


s se determine funcia vectorial (avnd derivate de ordinul unu
continue) x (t ) R n , t [t 0 , t f ] care minimizeaz funcionala
tf

I = L( x (t), x (t), t)dt


t0

unde L este o funcie scalar suficient de neted (de obicei se


impune ca L s aib derivatele de ordinul doi continue n raport cu
toate argumentele).
|

Vectorul x (t) poate s fie precizat sau nu la cele dou capete (la
t0 i la tf).

Formularea problemelor de
conducere optimal
|

Indicele de performan:
tf

I = M( x (t 0 ), x (t f ), t 0 , t f ) + L( x (t), u(t), t)dt


t0

Problemele de control optimal sunt ntotdeauna probleme


variaionale cu legturi - ecuaia sistemului:
x (t) = f ( x (t), u(t), t)
y (t) = g( x (t), u(t), t)

|
|

Pot s apar restricii suplimentare privitoare la variabilele de


stare sau de comand.
Se cere determinarea comenzii optimale u(t) care transfer
sistemul din condiiile iniiale specificate n anumite condiii finale
specificate, cu respectarea restriciilor impuse variabilelor de stare
i de comand astfel nct s fie extremizat un indice de calitate.

Exemple de probleme variaionale


propriu-zise
|

Problema celei mai scurte curbe plane


z
z

Se impune determinarea unei curbe de lungime minim care unete


dou puncte din plan A(x0, y0), B(x1, y1).
Trebuie minimizat integrala care exprim lungimea unei curbe
plane
x1

I = 1 + (dy / dx) 2 dx
x0

Soluionarea problemei va conduce la ecuaia unei drepte y(x)


pentru care se va impune condiia s treac prin punctele A i B.

Exemple de probleme variaionale


propriu-zise
|

Problema izoperimetric presupune determinarea unei curbe


simple nchise din plan, de lungime dat, care delimiteaz o arie
maxim
z

S se maximizeze

x1

A = y(x)dx
x0

x1

cu condiia izoperimetric

2
1 + (dy / dx) dx = A

x0

i condiiile de capt
z

y(x 0 ) = y0 , y(x1 ) = y1

Soluia acestei probleme este un arc de cerc care trece prin


punctele de capt

Exemple de probleme variaionale


propriu-zise
|

Problema brahistocronei
z

S se uneasc printr-o curb y(x) punctele A(x0, y0) i B(x1, y1)


situate ntr-un plan vertical xOy, dar nu pe aceeai vertical (x0x1,
y0>y1) a.. un punct material s se deplaseze n timp minim din A n
B prin alunecare n lungul acestei curbe, sub aciunea forei de
gravitaie (pentru simplificare, se poate neglija frecarea).
s1

x1

ds
1
1 + (dy / dx)
=
dx.

2g x 0
y
s0 v

T=

v 2 v02 = 2g(y y0 ),
2g = 2gy0 v02

Reformulare: s se determine curba y(x) care satisface condiiile


terminale y(x0) = y0, y(x1) = y1, astfel nct s se minimizeze
x1

1 + (dy / dx) 2
I=
dx
y
x0

Exemple de probleme de control


optimal
|

Problem de timp minim pentru un sistem de acionare


z

 (t) = m(t)
Ecuaia de micare (pentru cuplu rezistent nul): J

(1)

Comanda este restricionat: m max m(t) m max

(2)

Variabile de stare i comand:

Ecuaia sistemului se rescrie:

Restricia asupra comenzii devine u(t) 1

J / m max = x, m / m max = u
x(t)
 = u(t), x(0) = x 0 = J0 / m max

(3)
(4)

Problema se enun astfel: s se determine comanda u(t) care


transfer sistemul (3) din starea iniial x(t0) = x(0) = x0 n starea final
x(t1) = 0, cu respectarea restriciei (4), n timp minim.

Soluie: timpul de frnare este minim dac se adopt u(t)=-sgnx(t),


adic cuplul de frnare este maxim posibil cnd 0 i se anuleaz
pentru = 0.

Exemple de probleme de control


optimal
|

Problem de timp minim pentru un sistem de poziionare


z

 = f (t)
Ecuaia sistemului: mx(t)

(1)

Restricie: f (t) f max

(2)

Se introduc variabilele de stare i comand sub forma

x1 (t) = m(x(t) x f ) / f max , u(t) = f (t) / f max

(3)

Sistemul de ecuaii de stare se scrie x 1 (t) = x 2 (t), x 2 (t) = u(t)

(4)

Restricia asupra comenzii devine

S se determine comanda optimal u(t), t[t0,tf], care transfer n timp


0
0
minim sistemul (4) din condiiile iniiale x1 (t 0 ) = x1 , x 2 (t 0 ) = x 2
n
condiiile finale x1 (t f ) = x1f , x 2 (t f ) = x f2 = 0 , cu respectarea (5).

Soluie: deplasarea trebuie s se fac cu o acceleraie maxim,


urmat de o deceleraie maxim (u=-sgn x2(t)). Calculele urmeaz s
stabileasc momentul comutrii valorii comenzii u(t).

u(t) 1

(5)

Exemple de probleme de control


optimal
|

Conducerea optimal a unui sistem electric de poziionare


d(t)
z Ecuaia de micare:
k m I(t) = J
+ M(t)
dt
i = I / NN , = / N , = / N ,

Mrimi normalizate:

Ecuaia de regim staionar ptr. valorile nominale: M N = k m N I N

Ecuaia normalizat a sistemului:

m = M / M N , = t / TN , unde TN = J N / M N

i = d() / d + m

(1)

(2)

(3)
(4)

Unghiul de rotaie normalizat pe intervalul [0, T]: T = ( )d

(5)

2
w
=
i
Energia disipat normalizat pe intervalul [0, T]:
( )d
T
0

(6)

Exemple de probleme de control


optimal
|

Se pot formula urmtoarele probleme de control optimal:


z

problem de consum minim de energie: s se determine comanda i(T) i


starea (T) care determin o deplasare unghiular impus T ntr-un timp
precizat T, astfel nct s se asigure minimul energiei disipate, pentru (0) i
(T) fixai, adic s se minimizeze funcionala (6) pentru o valoare impus a
funcionalei (5) (condiie izoperimetric);

problem de timp minim: s se determine i(T) i (T) care minimizeaz


durata T a transferului din starea iniial (0) n starea final (T) dat,
pentru T i wT impui;
T

indicele de calitate se poate exprima sub forma T = d iar minimizarea acestuia


0

se realizeaz cu respectarea condiiilor izoperimetrice (5) i (6);


z

problem de eficien (stare final) maxim: s se determine i(T) i (T),


astfel nct s se realizeze o deplasare unghiular T maxim, pentru T, (0)
i (T) precizai i wT impus; cu alte cuvinte, se cere extremizarea
funcionalei (5) cu condiia izoperimetric (6).

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

OPTIMIZAREA
STAIONAR

1. ASPECTE GENERALE PRIVIND


OPTIMIZAREA STAIONAR
1.1. Formularea i clasificarea problemelor de optimizare
staionar
z

O problem de optimizare staionar este o problem de


programare matematic:

min{ f (x) hi (x) = 0, i = 1,..., l ; g i (x) 0, i = 1,..., m}

f :Rn R

funcia obiectiv

hi : R n R, i = 1,...,l

restricii de tip egalitate (legturi)

g i : R n R, i = 1,..., m

restricii de tip inegalitate

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Clasificri
|
|

|
|

problem fr restricii - extrem liber


problema cu restricii extrem legat
problem de programare liniar
problem de programare neliniar
z
z
z

programarea convex
programarea ptratic
programarea geometric

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Definiii
|
Un punct x* se numete minim global pentru f dac f ( x*) f ( x)
pentru toate punctele admisibile x (adic pentru toate punctele ce
satisfac restriciile problemei).
|
Dac pentru orice x x* are loc inegalitatea strict, minimul este
unic.
|
Dac inegalitatea are loc pentru toi x dintr-o vecintate admisibil a
lui x*, atunci x* se numete minim local.
Observaii
|
Orice minim global este i minim local, dar reciproca nu este
ntotdeauna adevrat
|
Extremele unei funcii pot fi netede sau unghiulare.
|
Extremele se pot afla ntr-un punct din interiorul domeniului admisibil,
pe frontiera domeniului, sau intr-un punct de discontinuitate.

1.1. Formularea i clasificarea


problemelor de optimizare staionar
f(x)

x
x1
|
|
|
|
|
|
|

3
x2 x

x4

x5

x6

x7

9
x8 x

x6 - maxim global pe intervalul [x1,x9];


x8 - minim global pe acelai interval;
x1, x8 - minime locale unice;
toate punctele intervalului [x3,x4] - minime locale neunice;
x2, x5, x6, x9, - maxime locale;
x7 - punct de inflexiune (nu este punct de extrem local);
x6 - extrem unghiular.

1.2. Chestiuni preliminare


Reprezentarea grafic
z
z
z

funcii de o singur variabil - analiz matematic


funcii de dou sau mai multe variabile - reprezentrile grafice se
complic - sunt rareori folosite n problemele de extrem
pentru funcii de dou variabile - reprezentri bazate pe curbe de
nivel (curbe de contur sau de valoare constant a funciei)
x2

f(x)=c1
f(x)=c2

x1

1.2. Chestiuni preliminare


1 T
Funcii obiectiv ptratice f(x):
, f ( x) = x Qx + b T x +
2
Q = QT - matrice simetric, bRn, - scalar
RnR

importana n studiul problemelor de extrem:


z
z

se ntlnesc frecvent n practic, mai ales n probleme cu restricii,


cnd ns rezolvarea este considerabil mai dificil;
foarte multe funcii se aproximeaz destul de bine cu funcii
ptratice, prin dezvoltare n serie Taylor i diverse metode apeleaz
la o succesiune de aproximri cu astfel de funcii;
exist o serie de proprieti ale unor algoritmi care au fost
demonstrate numai pentru funcii ptratice, ele fiind "extinse" i la
funcii mai generale, n baza a numeroase testri, care le-au validat;
funciile ptratice sunt folosite ca un prim test pentru diverse
proceduri de optimizare.

1.2. Chestiuni preliminare


Aproximarea funciilor
|

aproximarea pe baza dezvoltrii n serie Taylor

1
f(x) = f(x ) + (x x ) f(x ) + (x x0 )T H(x0 )(x x0 ) + e(x, x0 ) x x0
2
0

z
z

0 T

f(x):RnR este de dou ori derivabil n raport cu toate argumentele ntr-o


vecintate a punctului x0
e(x,x0)0 pentru xx0

f x1
f (x)
f ( x) =
= # ;
x
f x n
z

2f

2
x

2
f (x)
"
=
H (x) =
2

x
2f

x n x 1

dac derivatele de ordinul 2 sunt continue, H este simetric

""
""
""

2f

x1x n
"

2
f

2
x n

1.2. Chestiuni preliminare


Aproximarea funciilor
1
f ( x) = f ( x 0 ) + ( x x 0 )T f ( x 0 ) + ( x x 0 )T H ( x 0 )( x x 0 ) + e( x x 0 ) || x x 0 ||2
2
z

notm

x x 0 = h,

cu

h R n , || h ||2 = 1

h vector de lungime unitar care indic direcia de deplasare


- lungimea pasului pe direcia h
z

Aproximarea Taylor de ordinul 2

2
h , H ( x ) h + e( x 0 , h ) 2
f (x + h ) = f (x) + h, f (x) +
2
z

Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
|

Convergena
z
z

exist algoritmi care au o eficien ridicat, dar nu au asigurat


convergena n condiii suficient de largi
pentru a preveni rezultate eronate:
stabilirea unui numr limit de iteraii;
introducerea unor testri periodice, care asigur continuarea corect a
programului;
combinarea procedurilor respective cu altele care au convergena
garantat, dar i o eficien mai sczut.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
| Viteza de convergen
z
z

ofer informaii asupra numrului de iteraii necesar


ordinul de convergen - apreciaz cantitativ viteza de convergen

ln f (x k )
dac f(x*) = 0: = lim
k ln f (x k +1 )
ln[f (x k ) f (x * )]
dac f(x*) 0: = lim
k ln[f (x k +1 ) f (x * )]
z
z
z

= 1 convergena liniar f(xk+1)af(xk), a0 scderea


valorii funciei se face n progresie geometric
= 2 convergen ptratic f(xk+1)[f(xk)]2, la fiecare
iteraie se dubleaz numrul de zerouri dup virgul
1< < 2 convergena supraliniar

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
| Volumul total de calcule
z

unul din criteriile cele mai importante privind eficiena

poate fi apreciat prin


numrul total de operaii
timpul total de rulare pe calculator

acest criteriu nu este decisiv n aprecierea unei metode


volumul total de calcule depinde de
calitatea programului ntocmit
tipul calculatorului utilizat
operaiile pregtitoare care se efectueaz .a.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
| Generalitatea metodei
z

se refer la posibilitatea aplicrii acesteia pentru categorii ct mai


largi de probleme

n multe cazuri sunt preferai algoritmi specifici unor clase de


probleme
sunt mai eficieni dect procedurile cu mare generalitate

De regul generalitatea este apreciat drept o calitate important a


procedurilor

1.2. Chestiuni preliminare


|

Criterii de evaluare specifice metodelor numerice de calcul


z
z
z
z

uurina n utilizare i simplitatea;


sigurana n funcionare;
precizia;
stabilitatea numeric
algoritmul nu induce o cretere a sensibilitii problemelor la perturbaii
de date;
un algoritm instabil poate da rezultate eronate chiar i pentru probleme
bine condiionate;

fiabilitatea
robusteea - evitarea excepiilor aritmetice i minimizarea erorilor de
rotunjire;
invariana la scalare;
alegerea corespunztoare a criteriului de terminare (stop);

portabilitatea - posibilitatea utilizrii pe diferite echipamente de


calcul, fr nici o modificare.

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII
|

Funcia scalar f(x) este definit pe ntreg spaiul Rn (sau


pe un domeniu maxim din Rn pe care este definit funcia
n mod natural)
Se cere determinarea punctului de minim global x*, adic a
punctului pentru care

f (x*) f (x), x R n
|

Diverse metode impun ca funcia s ndeplineasc anumite


condiii
z
z
z

continuitate
derivabilitate
convexitate

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII
|

Clasificare din punct de vedere al valorilor calculate


z
z

metode directe - se calculeaz doar valorile funciei obiectiv


metode indirecte se folosesc i derivate ale funciei

Clasificare din punct de vedere al principiului folosit


z

metode de explorare
metode de eliminare

metode analitice

greoaie n cazul funciilor de mai multe variabile


- se folosesc, de regul, pentru stabilirea grosier a
domeniului n care se afl minimul
-

metode generale ce stau la baza majoritii procedurilor de cutare


sunt mai rar folosite n calculul numeric
z

metode de cutare
proceduri iterative - se pornete de la o iniializare oarecare x0 i se
k
stabilete un ir de iteraii {xk}, astfel ca lim x = x * adic

f (x ) > f (x ) > f (x ) > ... > f (x ) > ... > f (x* )

2.1. Metode de explorare i de eliminare


|
|
|
|

Pentru un numr de variabile 3 proceduri greoaie


Se utilizeaz frecvent n cazul extremizrilor
unidimensionale
Precizia este destul de redus n cazul utilizrii unui
numr rezonabil de iteraii
Sunt folosite pentru stabilirea iniial a domeniului n
care se afl extremul
z

Determinarea mai precis a extremului se face prin alte


proceduri

Se pleac de la un anumit domeniu pe care este


definit funcia.
z
z

Probleme fr restricii - rezolvarea pornete cu stabilirea


domeniului respectiv (ntr-un anumit mod)
Probleme cu restricii - se pornete de la domeniul definit de
restricii.

2.1.1. Metode de explorare


|

n interiorul domeniului iniial se stabilesc puncte n care se


calculeaz valoarea funciei obiectiv

Se alege punctul n care funcia are valoarea cea mai mic


z

astfel se stabilete un subdomeniu n jurul acestui punct, n


interiorul cruia se afl minimul funciei.

Acest subdomeniu alctuiete domeniul de incertitudine n


care se afl minimul.

Avantaj: n majoritatea cazurilor se evit punctele de minim


local

Clasificare
z

explorare exhaustiv

explorare aleatoare

2.1.1. Metode de explorare


Metode de explorare exhaustiv
| Principiu
z

domeniul considerat se mparte pe fiecare ax ntr-un numr de


subintervale o reea multidimensional (rectangular)
nu este obligatoriu s se adopte acelai pas de divizare pe direcia
fiecrei axe

z
z

se calculeaz f(x) n nodurile reelei i se selecteaz cel pentru care


s-a obinut cea mai mic valoare pentru f(x)
domeniul de incertitudine n care se afl minimul este fixat de
nodurile vecine celui selectat.

Dezavantajul principal
z

numrul mare de evaluri necesar pentru a obine o precizie


acceptabil,
numrul de evaluri crete cu creterea numrului de variabile

2.1.1. Metode de explorare


Metode de explorare exhaustiv
| Algoritm pentru funcii unidimensionale
z

se stabilete un punct iniial x0, se adopt un pas i se calculeaz


f(x0)

se calculeaz f(x0+) i f(x0), stabilind sensul deplasrii

se calculeaz f(x0+k), kZ

dac f[x0+(k1)] > f(x0+k), se repet aceast etap pentru k


modificat cu o unitate

dac f[x0+(k1)] < f(x0+k), a fost depit punctul de minim i


se consider c noul interval de incertitudine este
[x0+(k2), x0+k]

pentru diminuarea acestui interval, se prefer aplicarea unor


metode mai precise

2.1.1. Metode de explorare


Metode de explorare aleatoare
| Principiu
z

Avantaje
z
z

testarea funciei obiectiv se face n mai multe puncte, stabilite pe


baz de numere aleatoare se obine o zon n care, cu o mare
probabilitate, se afl minimul funciei
volumul de calcule este dependent doar n mic msur de ordinul
sistemului
pot fi folosite i n cazul problemelor cu variabile discrete

Domeniu de aplicare
z
z

rezolvarea unor probleme specifice de mari dimensiuni - mai ales


din domeniul economic
sunt utilizate adeseori pentru stabilirea iniial a domeniului sau a
punctului de start

2.1.2. Metode de eliminare


|

Funcia obiectiv trebuie s satisfac ipoteza de unimodalitate


z

Principiu
z
z
z

unimodalitate - pe domeniul de definiie exist un singur punct de extrem


domeniul considerat se mparte n dou pri printr-un plan (dreapt) de
separare
se testeaz valoarea funciei n cele dou subdomenii printr-o procedur
specific i se elimin acela care nu prezint interes
pentru domeniul rmas se continu procedura, prin mprirea cu un plan
de separare etc., pn se ajunge la un domeniu suficient de mic, funcie de
precizia impus

Exist diverse variante n ceea ce privete modul de mprire n


subdomenii i al celui de efectuare a testrii
Metodele de eliminare multidimensionale sunt mai rar folosite datorit
eficienei sczute.
n cazul extremizrilor unidimensionale, metodele de eliminare sunt
eficiente

2.2. Metode analitice


|

Sunt metodele cele mai puternice i care stau la baza unui


mare numr de metode de cutare
Dac se dispune de expresiile analitice ale derivatelor
funciei obiectiv n raport cu toate variabilele, problema se
reduce la rezolvarea unui sistem de ecuaii
Transpunerea metodelor analitice n proceduri numerice
este mai rar folosit, fiind preferai algoritmii de cutare
z

algoritmii de cutare sunt mai direct adaptai problemelor de


optimizare staionar, chiar i n cazurile n care se dispune de
expresiile analitice ale derivatelor

2.2.1. Proprieti ale gradientului


a. n orice punct al suprafeei f(x) = const., vectorul gradient
este ortogonal la aceast suprafa

Demonstraie
T

f
f
df (x) =
dx i = dx = f (x),dx
i=1 xi
x
n

f (x) = const. df (x) = 0

f (x),dx = 0

2.2.1. Proprieti ale gradientului


b. Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

f ( x + h) f (x)
o()
= f (x), h +

Presupunem c exist

f (x + h) f (x) f
lim
=
0

o()
=0
0
lim

f = f (x), h

2.2.1. Proprieti ale gradientului


c. Inegalitatea Cauchy-Schwarz x, y
z

= x, x y , y

, x,yRn

egalitatea se obine dac x i y au aceeai direcie

f (x), h

h, h f (x), f (x)
f (x + h) f (x)
o()
dac h, h = 1 i
= f (x), h +

f (x + h) f (x)
o()
1/2

f (x), f (x)

egalitatea se obine atunci cnd vectorii f ( x) i h au aceeai direcie


|

ntr-o vecintate a punctului x, creterea maxim a funciei


f(x) are loc pe direcia gradientului, respectiv scderea cea
mai rapid se face pe direcia invers gradientului

2.2.1. Proprieti ale gradientului


d. Fie x* un punct precizat i h o direcie oarecare fixat f(x*+h) se
modific doar n funcie de parametrul scalar .

df (x * +h)
=0
d
f
= f ( x), h

f (x * +h), h = 0
h este oarecare

f ( x*) = 0

Punctele n care se anuleaz gradientul se numesc staionare (critice)


Condiia necesar ca un punct x* s fie extrem (maxim sau minim)
este ca acest punct s fie staionar.

2.2.1. Proprieti ale gradientului


e. Presupunem aleas o direcie h astfel nct
f (x), h < 0
f (x + h) f (x)
o()
= f (x), h +

f (x + h) f (x)
<0
0

lim

f (x + h) f (x)
<0
a.i. , cu < avem

f ( x + h ) < f ( x )

Dac deplasarea din x se face pe o direcie h care face un unghi mai


mare de 90o cu direcia gradientului atunci, ntr-o vecintate a
punctului x, se va obine o descretere a valorii funciei f(x)
n cadrul problemelor de minim, direciile de deplasare h care
ndeplinesc condiia f (x), h < 0 se numesc admisibile

2.2.1. Proprieti ale gradientului


|

n orice punct al suprafeei f(x) = const., vectorul gradient


este ortogonal la aceast suprafa
ntr-o vecintate a punctului x, creterea maxim a
funciei f(x) are loc pe direcia gradientului, respectiv
scderea cea mai rapid se face pe direcia invers
gradientului
Condiia necesar ca un punct x* s fie extrem (maxim
sau minim) este ca acest punct s fie staionar
Dac deplasarea din x se face pe o direcie h care face
un unghi mai mare de 90o cu direcia gradientului atunci,
ntr-o vecintate a punctului x, se va obine o descretere
a valorii funciei f(x)

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii necesare
|

Fie f(x):RnR continuu derivabil n raport cu toate


argumentele. Condiia de minim local este condiia de
punct critic (staionar):

f ( x*) = 0
z

generalizeaz condiia cunoscut (anularea derivatei) din cazul


funciilor de o singur variabil

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii suficiente
| Fie f(x):RnR, avnd derivatele de ordin doi continue; condiia
suficient ca x* s fie punct de minim local este ca n acest punct s fie
ndeplinit condiia f(x*)=0 i matricea hessian s fie pozitiv definit
(H(x*)>0).

1
f(x) = f(x*) + (x x*)T f(x*) + (x x*)T H(x*)(x x*) + e(x x*) || x x* ||2
2

H(x*) > 0 (x x* )T H(x* )(x x* ) > 0

f(x*) = 0
*

f(x) f(x ) > 0


|

- x* este punct de minim local tare

Fie f(x):RnR, continuu derivabil i convex. Atunci relaia f(x*)=0


este condiie de minim global.

2.2.2. Condiii necesare i suficiente


de extrem liber
|

Dac este ndeplinit condiia f(x*)=0 i H(x*) < 0, atunci


x* este punct de maxim local tare.

Dac n punctul staionar H(x*) este de semn nedefinit,


atunci x* este punct ea (prezint maxim n raport cu
anumite variabile i minim n raport cu altele), numai dac
detH(x*) 0.

Dac n x* matricea H(x*) este semidefinit ca semn (H(x*)


0 sau H(x*)0), nu se pot face aprecieri asupra naturii
punctului critic pe aceast cale.

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2. METODE DE REZOLVARE
A PROBLEMELOR DE
OPTIMIZARE STAIONAR
FR RESTRICII

2.2. Metode analitice




Sunt metodele cele mai puternice i care stau la baza unui


mare numr de metode de cutare
Dac se dispune de expresiile analitice ale derivatelor
funciei obiectiv n raport cu toate variabilele, problema se
reduce la rezolvarea unui sistem de ecuaii
Transpunerea metodelor analitice n proceduri numerice
este mai rar folosit, fiind preferai algoritmii de cutare


algoritmii de cutare sunt mai direct adaptai problemelor de


optimizare staionar, chiar i n cazurile n care se dispune de
expresiile analitice ale derivatelor

2.2.1. Proprieti ale gradientului


a. n orice punct al suprafeei f(x) = const., vectorul gradient
este ortogonal la aceast suprafa

Demonstraie
T

f
f
df (x) =
dx i = dx = f (x),dx
i =1 xi
x
n

f (x) = const. df (x) = 0

f (x),dx = 0

2.2.1. Proprieti ale gradientului


b. Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

f (x + h) f (x)
o()
= f ( x), h +

Presupunem c exist

f ( x + h) f (x) f
lim
=
0

o()
=0
0
lim

f = f (x), h

2.2.1. Proprieti ale gradientului


c. Inegalitatea Cauchy-Schwarz x, y


= x, x y, y

, x,yRn

egalitatea se obine dac x i y au aceeai direcie

f (x), h

h, h f (x), f (x)
f (x + h) f (x)
o()
dac h, h = 1 i
= f (x), h +

f (x + h) f (x)
o()
1/2

f (x), f (x)

egalitatea se obine atunci cnd vectorii f ( x) i h au aceeai direcie




ntr-o vecintate a punctului x, creterea maxim a funciei


f(x) are loc pe direcia gradientului, respectiv scderea cea
mai rapid se face pe direcia invers gradientului

2.2.1. Proprieti ale gradientului


d. Fie x* un punct precizat i h o direcie oarecare fixat f(x*+h) se
modific doar n funcie de parametrul scalar .

df (x * +h)
=0
d
f
= f (x), h

f (x * +h), h = 0
h este oarecare

f ( x*) = 0

Punctele n care se anuleaz gradientul se numesc staionare (critice)


Condiia necesar ca un punct x* s fie extrem (maxim sau minim)
este ca acest punct s fie staionar.

2.2.1. Proprieti ale gradientului

e. Presupunem aleas o direcie h astfel nct


f (x), h < 0
f ( x + h) f ( x)
o()
= f (x), h +

a.i. , cu < avem

f (x + h) f (x)
<0
0

lim

f (x + h) f (x)
<0

f ( x + h ) < f ( x )

Dac deplasarea din x se face pe o direcie h care face un unghi mai


mare de 90o cu direcia gradientului atunci, ntr-o vecintate a
punctului x, se va obine o descretere a valorii funciei f(x)
n cadrul problemelor de minim, direciile de deplasare h care
ndeplinesc condiia f (x), h < 0 se numesc admisibile

2.2.1. Proprieti ale gradientului




n orice punct al suprafeei f(x) = const., vectorul gradient


este ortogonal la aceast suprafa
ntr-o vecintate a punctului x, creterea maxim a
funciei f(x) are loc pe direcia gradientului, respectiv
scderea cea mai rapid se face pe direcia invers
gradientului
Condiia necesar ca un punct x* s fie extrem (maxim
sau minim) este ca acest punct s fie staionar
Dac deplasarea din x se face pe o direcie h care face
un unghi mai mare de 90o cu direcia gradientului atunci,
ntr-o vecintate a punctului x, se va obine o descretere
a valorii funciei f(x)

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii necesare


Fie f(x):RnR continuu derivabil n raport cu toate


argumentele. Condiia de minim local este condiia de
punct critic (staionar):

f ( x*) = 0


generalizeaz condiia cunoscut (anularea derivatei) din cazul


funciilor de o singur variabil

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii suficiente
 Fie f(x):RnR, avnd derivatele de ordin doi continue; condiia
suficient ca x* s fie punct de minim local este ca n acest punct s fie
ndeplinit condiia f(x*)=0 i matricea hessian s fie pozitiv definit
(H(x*)>0).

1
f(x) = f(x*) + (x x*)T f(x*) + (x x*)T H(x*)(x x*) + e(x x*)|| x x* ||2
2

H(x*) > 0 (x x* )T H(x* )(x x* ) > 0


f(x ) = 0
*

f(x) f(x ) > 0


*

- x* este punct de minim local tare

Fie f(x):RnR, continuu derivabil i convex. Atunci relaia f(x*)=0


este condiie de minim global.

2.2.2. Condiii necesare i suficiente


de extrem liber


Dac este ndeplinit condiia f(x*)=0 i H(x*) < 0, atunci


x* este punct de maxim local tare.
Dac n punctul staionar H(x*) este de semn nedefinit,
atunci x* este punct ea (prezint maxim n raport cu
anumite variabile i minim n raport cu altele), numai dac
det H(x*) 0.
Dac n x* matricea H(x*) este semidefinit (H(x*) 0 sau
H(x*) 0), nu se pot face aprecieri asupra naturii punctului
critic.

2.3. Metode de cutare


2.3.1. Aspecte generale privitoare la metodele de cutare

Prezentare general

Cele mai eficiente i folosite metode de rezolvare a problemelor de


extremizare fr restricii
n cazul problemelor de minim - metode de coborre

Se pornete de la un punct iniial oarecare x0 care poate fi ales





la ntmplare n domeniul de definiie al funciei,


ntr-un domeniu n care se bnuiete c se afl minimul
ntr-un domeniu stabilit printr-o procedur oarecare (ex. explorare)

i se stabilesc iterativ aproximaii din ce n ce mai bune ale


minimului x*, procedura ncheindu-se cnd este ndeplinit un
criteriu de stop (de convergen).

2.3.1. Aspecte generale privitoare la


metodele de cutare


Formula de calcul

x k +1 = x k + k h k


Metodele difer ntre ele prin modul n care se face


alegerea



direciei de deplasare
pasului de deplasare

La majoritatea metodelor, la fiecare iteraie se stabilete


mai nti direcia de deplasare i apoi lungimea pasului pe
direcia respectiv

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea direciei de deplasare




Clasificare
metode de ordinul I (directe): se calculeaz numai valorile funciei
obiectiv
metode de ordinul II: se calculeaz i derivatele de ordinul unu
metode de ordinul al III-lea: se calculeaz i derivatele de ordinul al
doilea

Utilizarea derivatelor
Avantaj: vitez de convergen crescut
Dezavantaj: efort de calcul suplimentar

Calculul derivatelor
Dac derivatele pot fi exprimate analitic fr un efort prea mare, se
specific expresiile analitice ale derivatelor
Dac nu dispunem de expresiile analitice ale derivatelor, acestea
trebuie evaluate numeric
creterea timpului de calcul
introducerea de erori suplimentare

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea lungimii pasului la fiecare iteraie


 pas constant
 pas variabil
de regul este din ce n ce mai mic, pe msur ce ne apropiem
de punctul staionar


pas optim
deplasarea pe direcia respectiv se face pn cnd se atinge
minimul pe aceast direcie
determinarea pasului optim crete volumul de calcule la fiecare
iteraie
exist metode care impun utilizarea pasului optim la fiecare
iteraie
determinarea pasului optim pe o anumit direcie se mai
numete cutare liniar exact
determinarea pasului optim const n a stabili min f (x k + h k )

2.3.1. Aspecte generale privitoare la


metodele de cutare


Interpretarea geometric a pasului optim

xk
f(x)=c1
f(x)=c2

hk
xk+1

2.3.1. Aspecte generale privitoare la


metodele de cutare


Calcularea pasului optim


f (x

k +1

) = f (x ) + f ( x ), h
k

2 k
h , Hkhk
+
2

Minimizez f (x k +1 ( ))

df (x

k +1

d




( ))

= 0 f (x k ), h k + h k , H k h k = 0

* =

f (x k ), h k
h k , H(x k )h k

valoare aproximativ a pasului optim


pentru cutarea liniar exact se folosesc proceduri mai precise metode de eliminare i de interpolare
n cazul funciilor ptratice formula este exact

2.3.1. Aspecte generale privitoare la


metodele de cutare
Convergena procedurilor de cutare
 Teorem
k +1

Fie un ir de iteraii de forma x = x + k h n care direciile hk sunt


admisibile ( f (x), h < 0 ). Dac n punctele xk ale irului gradientul
este continuu i Hk > 0, atunci este posibil s alegem paii de
deplasare k la fiecare iteraie astfel nct s obinem convergena
irului xk ctre punctul staionar x*.


Observaii



Dac H(x*)>0, atunci x* este punct de minim.


Conform proprietii anterioare, convergena este legat de semnul
matricei Hessian, putnd fi asigurat atunci cnd aceasta este pozitiv
definit n punctele irului de iteraii.

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop
 n cadrul metodelor iterative de cutare trebuie introdus un
criteriu se stop (de oprire a calculelor sau de convergen)
 Alegerea criteriului de stop este funcie de particularitile
problemei i este dictat de o serie de consideraii:


dac exist dubii privind convergena procedurii iterative, se


recomand limitarea numrului de iteraii, n afara introducerii
criteriului de stop propriu-zis;
la metodele care apeleaz la calcularea gradientului f(x) al funciei
obiectiv, pentru problemele fr restricii se poate folosi:
f (x k )

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


criterii absolute de stop bazate pe variaia argumentului sau a


funciei:

x k x k 1


f (x k ) f (x k 1 )

n locul criteriilor absolute sunt preferate criteriile relative:

x k x k 1
x


sau

sau

f (x k ) f (x k 1 )

k
f (x )

dac ||x*|| sau f(x*) sunt foarte apropiate de zero, atunci criteriile
relative nu sunt utilizabile i se folosesc:

x k x k 1
1+ x

sau

f (x k ) f ( x k 1 )
1 + f (x )
k

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


folosirea exclusiv a unui criteriu bazat pe variaia argumentului sau


a funciei poate conduce la rezultate eronate
f(x)
f

f(x)

x
x

x
(a)

x (b)

aceste situaii pot fi prentmpinate prin utilizarea combinat, n cadrul


aceluiai program, a ambelor criterii

2.3.2. Proceduri de determinare a


lungimii pasului


Utilizarea pailor constani are multe dezavantaje





de regul nu este folosit


exist proceduri la care nu apare n mod explicit (altfel zis, =1),
distana pe care se face deplasarea fiind dictat de lungimea
vectorului h

Utilizarea pasului optim (cutare liniar exact)






pare a fi cea mai atrgtoare


numr mare de evaluri ale funciilor obiectiv se prefer
procedurile de cutare liniar aproximativ (mai economice)
exist metode de cutare care impun cutri liniare exacte la
fiecare iteraie, pentru a preveni euarea algoritmului

2.3.2.1. Proceduri de extremizare


unidimensional


Metode de eliminare unidimensional




trebuie determinat minimul funciei unimodale f(x) pe [xm,xM]

xm

x1 x2

xm

xM

1 j k

xM

x1 x2

Eficiena metodei se poate aprecia


prin indicele:
x k2 x1k
k
Rk =
=
0 xM xm

k = max ( x j x j 2 )

x1 x2

xm

xM

Este de dorit ca procedura s se


desfoare astfel nct s se
minimizeze k i atunci se ia
j
j 2

x
x

Rk = min max
M

x m
x1 ,..., x k 1 j k x

Metode de eliminare unidimensional


Procedura perechilor secveniale


Se recomand ca



la fiecare iteraie s se aleag o distan = x2 x1 destul de mic


unul din puncte s fie mijlocul intervalului

1
R k = k/2
2
k - numrul de evaluri ale funciei f(x) (cte dou evaluri la fiecare
iteraie)

Metode de eliminare unidimensional


Procedura bazat pe calculul derivatei


M
m
x
+
x
0
x
=
Se alege un singur punct n centrul intervalului
2

df
i se calculeaz dx 0 , eliminndu-se acea jumtate a
x=x
intervalului la capetele cruia derivata are acelai semn.

Rk =

1
2k

,k

- numrul de iteraii (de evaluri ale derivatei)

Metode de eliminare unidimensional




Creterea eficienei metodelor de eliminare unidimensional


micorarea numrului de evaluri ale funciei pentru
obinerea aceleiai precizii


la fiecare nou iteraie se folosete unul din punctele x1 sau x2 de la


iteraia precedent; n felul acesta, la fiecare iteraie (cu excepia
primeia) se face o singur evaluare a funciei

alegerea punctelor x1 i x2 trebuie s se fac dup o regul care s


conduc la o scdere ct mai rapid a intervalului de incertitudine

Acestor deziderate le corespund




metoda Fibonacci

metoda seciunii de aur

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2. METODE DE REZOLVARE A
PROBLEMELOR DE
OPTIMIZARE STAIONAR
FR RESTRICII
2.3 Metode de cutare
2.3.1. Aspecte generale privitoare la metodele
de cutare

2.3.2. Proceduri de determinare a


lungimii pasului


Utilizarea pailor constani are multe dezavantaje





de regul nu este folosit


exist proceduri la care nu apare n mod explicit (altfel zis, =1),
distana pe care se face deplasarea fiind dictat de lungimea
vectorului h

Utilizarea pasului optim (cutare liniar exact)






pare a fi cea mai atrgtoare


numr mare de evaluri ale funciilor obiectiv se prefer
procedurile de cutare liniar aproximativ (mai economice)
exist metode de cutare care impun cutri liniare exacte la
fiecare iteraie, pentru a preveni euarea algoritmului

2.3.2.1. Proceduri de extremizare


unidimensional


Metode de eliminare unidimensional




trebuie determinat minimul funciei unimodale f(x) pe [xm,xM]

xm

x1 x2

xm

xM

1 j k

xM

x1 x2

Eficiena metodei se poate aprecia


prin indicele:
x k2 x1k
k
Rk =
=
0 xM xm

k = max ( x j x j 2 )

x1 x2

xm

xM

Este de dorit ca procedura s se


desfoare astfel nct s se
minimizeze k i atunci se ia
j
j 2

x
x

Rk = min max
M

x m
x1 ,..., x k 1 j k x

Metode de eliminare unidimensional


Procedura perechilor secveniale


Se recomand ca



la fiecare iteraie s se aleag o distan = x2 x1 destul de mic


unul din puncte s fie mijlocul intervalului

1
R k = k/2
2
k - numrul de evaluri ale funciei f(x) (cte dou evaluri la fiecare
iteraie)

Metode de eliminare unidimensional


Procedura bazat pe calculul derivatei


M
m
x
+
x
0
x
=
Se alege un singur punct n centrul intervalului
2

df
i se calculeaz dx 0 , eliminndu-se acea jumtate a
x=x
intervalului la capetele cruia derivata are acelai semn.

Rk =

1
2k

,k

- numrul de iteraii (de evaluri ale derivatei)

Metode de eliminare unidimensional




Creterea eficienei metodelor de eliminare unidimensional


micorarea numrului de evaluri ale funciei pentru
obinerea aceleiai precizii


la fiecare nou iteraie se folosete unul din punctele x1 sau x2 de la


iteraia precedent; n felul acesta, la fiecare iteraie (cu excepia
primeia) se face o singur evaluare a funciei

alegerea punctelor x1 i x2 trebuie s se fac dup o regul care s


conduc la o scdere ct mai rapid a intervalului de incertitudine

Acestor deziderate le corespund




metoda Fibonacci

metoda seciunii de aur

Metode de eliminare unidimensional


j = j1 j

Metoda Fibonacci
j-1

j+1
xm

j+1

x1j+1

j
x2 j

x1 j

xm

Notm

j+1

x2j+1

xM

xM

j =

Se arat c

j = j + j+1

j1

j =

1 j+1
2 j+1

Pentru ca procedura s fie de tip min-max,


trebuie ca la ultimele evaluri punctul de testare
s fie ct mai aproape de centrul intervalului:

1
N 1 =
2

j+1
xm

xM

N
N-1

- numrul de evaluri,
- numrul etapelor

Se demonstreaz c

j =

FN ( j+1)
FN( j1)

Metode de eliminare unidimensional


j 2 j 1
j 1 =
j 2 2 j 1



f ( x1j 1 ) f ( x 2j 1 )
f ( x1j 1 ) = f ( x 2j 1 )
F

1
Indicele de eficien Rk = k = 0 =
0 Fk Fk
N-1=N-2=N-2/2 - la ultimele dou etape se ajunge practic n acelai
punct (la jumtatea penultimului interval);
dac
dac

n felul acesta, ultima etap este de fapt inoperant, cci ea conduce n


mod eronat la un punct, n loc de un interval de incertitudine.


Pentru a aplica algoritmul, trebuie cunoscut N i acesta se stabilete


n funcie de lungimea intervalului de incertitudine final sau de RN
n funcie de precizia dorit
Se adopt numrul Fibonacci cel mai apropiat astfel nct Rk Rki N

Algoritmul presupune stabilirea aprioric a lui FN, dar k= 0FN-k/FN nu


poate fi ntotdeauna precizat de la nceput, ceea ce constituie un
inconvenient al metodei.

Metode de eliminare unidimensional


Metoda seciunii de aur

La pasul j se alege j = j+1

j-1

x2j

x 1j

xm

j+1
xm

j+1

x1j+1
j+1

xm

j = j+1

xM

j+1

x2j+1

j1 = j + j

xM

j +1 j
1=
+
j 1 j j 1
j
j 1

xM

=s

s = 5 1 0,618
2

j1 = j +j+1

1 = s + s2

Metode de eliminare unidimensional


RksA
1,17
RkF



Metoda seciunii de aur are un interval de incertitudine cu circa 17%


mai mare dect metoda Fibonacci
Dac se face o evaluare n plus, intervalele de incertitudine sunt
aproximativ egale

2.3.2.1. Proceduri de extremizare


unidimensional


Metode de interpolare


Se pune problema determinarea pasului optim * astfel nct

min g() = min f (x k + h k )


0




se aproximeaz g cu o funcie mai simpl, al crei minim se poate


calcula uor i se utilizeaz iterativ o estimaie a minimului lui g
pentru aproximaie se alege o funcie polinomial de grad doi sau
trei, metoda fiind de interpolare polinomial (ptratic sau cubic)

Metode de interpolare
Interpolarea ptratic
g = c 2 2 + c1 + c 0 , c 2 > 0
Minimul: * = c1 / 2c 2


Pentru determinarea coeficienilor lui g sunt necesare trei valori ale


funciei g n punctele k, k-1, k-2.
1 g (k 2 )(k2 k21) + g (k 1 )(k22 k2 ) + g (k )(k21 k22 )
=
2 g (k 2 )(k k 1) + g (k 1 )(k 2 k ) + g (k )(k 1 k 2 )
*




Aceast valoare se va considera ca o nou aproximare k+1 a


minimului funciei g, procedura repetndu-se pn la convergen.
La fiecare iteraie, (exceptnd prima) se face o singur evaluare a
valorii funciei obiectiv

Metode de interpolare


Alegerea punctelor de la iteraia urmtoare






Notm i val. inf., m val. medie, s val. sup pentru mrimile


de la o anumit iteraie
Notm noua valoare n = *
dac n m, atunci
dac g(m) g(n), atunci minimul funciei este n intervalul (i, m) i la
noua iteraie se vor utiliza punctele i, n, m
dac g(m) < g(n), se aleg ca noi puncte n, m, s

dac n > m, atunci


dac g(m) g(n), atunci noile puncte vor fi m, n, s
dac g(m) < g(n), atunci noile puncte vor fi i, m, n

O alegere neconvenabil a punctelor iniiale poate conduce


la anularea numitorului expresiei *

Metode de interpolare


Procedur de alegere a punctelor iniiale


1.

2.

3.

4.

5.

6.

se alege pasul iniial ; se alege i=0, 1= i se calculeaz g(i) i


g(1);
dac g(1)>g(i), minimul se afl ntr-un punct mai mic ca 1; se
alege s=1 i m=/2, se calculeaz g(1) i g(i) i se trece la
pasul (6);
dac g(1)g(i), minimul se afl n dreapta punctului 1 i alege
m=1 i 2=s=2 i se calculeaz g(1) i g(s) i se continu cu
dac g(2)>g(1), cel de al treilea punct a fost ales convenabil i se
trece la (6);
dac g(2)<g(1), minimul nu a fost atins i se pune 1=2, =2,
g(1)=g(2) i se revine la (2);
dac g(i)+g(s)>2g(m), alegerea punctelor iniiale este realizat;
n caz contrar, se pune =2, 1=, se calculeaz g(1) i se revine
la (2).

Metode de interpolare
Interpolarea cubic


Dac derivata lui g, respectiv gradientul lui f, se pot evalua relativ


simplu, se recomand interpolarea cubic

g = c3 3 + c 2 2 + c1 + c0 ,

2
cu minimul * = c 2 + c 2 3c1c3 (3c3 )

Determinarea coeficienilor lui necesit dou valori ale funciei i


ale derivatei n punctele k i k-1, expresia minimului fiind

* = k
z=3

g ' ( k ) + w z
( k k 1 )
g ' ( k ) g ' ( k 1 ) + 2w

g ( k ) g ( k 1 )
+ g ' ( k 1 ) + g ' ( k )
k k 1

w=

z 2 g ' ( k 1 ) g ' ( k )

2.3.2.1. Proceduri de extremizare


unidimensional


Determinarea analitic a pasului optim




Pasul optim se determin din condiiile de minim

dg( x k + h k )
=0
d

d2g
d2

>0

n *

2.3.2.2. Proceduri de cutare liniar


aproximativ


Dezavantaj proceduri de cutare liniar exact (de


determinare a pasului optim) - numr mare de evaluri ale
funciei obiectiv la fiecare iteraie
De multe ori se prefer alegerea unui pas care s asigure
doar scderea funciei, fr a implica atingerea minimului
pe direcia aleas


regula lui Armijo: este acceptabil valoarea pasului care satisface


condiiile

g() g(0) + g ' (0) si g() g(0) + g ' (0)


g() = f(x k + h k )
< <1 i >1; obinuit se folosesc valorile = 0,2 i = 2

2.3.2.2. Proceduri de cutare liniar


aproximativ
g
g(0)

g(0)
g(0)
g(0)

Funcia g() are un minim pentru >0 panta curbei n g(0) este
negativ.

Condiiile anterioare definesc o condiie acceptabil ntre a i b.

2.3.2.2. Proceduri de cutare liniar


aproximativ
Algoritm



se iniializeaz o valoare oarecare > 0;


se calculeaz g() i dac g() g(0)+ g(0), se crete punnd
; se repet procedura pn cnd inegalitatea este satisfcut,
adoptnd valoarea precedent pentru ;
dac g() = g(0)+ g(0) nu este ndeplinit pentru valoarea iniial
, se micoreaz aceasta punnd / i se repet procedura pn
cnd se gsete un care satisface condiia.

2.3.3. Metode de gradient




Metodele sunt
aplicabile n cazul n care f(x) este
derivabil n raport cu toate argumentele
Metodele de gradient sunt metode de ordinul al II-lea, la
care se folosesc derivatele de ordinul I ale funciei
Formula iterativ

x k +1 = x k k r k




r k = f (x k )
Metoda mai este denumit a celei mai abrupte coborri
Direcia de cutare nu conduce, de regul, ctre minimul
funciei i chiar folosirea ei n cadrul unei proceduri iterative
nu este prea avantajoas

2.3.3. Metode de gradient


Metoda gradientului optimal
x k +1 = x k k r k ,

r k = f ( x k ) - direcia de deplasare

k - pasul optim pe direcia -rk





k se determin printr-o procedur de extremizare unidimensional


(de eliminare sau interpolare)
dac funcia f(x) poate fi aproximat suficient de bine cu o funcie
ptratic, atunci poate fi utilizat i formula de calcul aproximativ
* =

f (x k ), h k
k

h , H (x )h

h k = r k

* =

rk , rk
rk , Hkrk

2.3.3. Metode de gradient


Observaii
 Direciile succesive de deplasare sunt ortogonale

df(xk+1()) df dxk+1
d
k
k +1
=0
0=
= k+1
= (rk+1)T (xk rk ) = (rk+1)T rk r , r
d
d
dx d
0
T

f(x)= co nst.
x0
x
-r

x4





-r

-r 1

-r 1
x1

x1
-r 3

x2

x3

(a)

(b)

Modul de deplasare zig-zagat dezavantaj


Deoarece f(x) este foarte mic n apropierea optimului, paii de
deplasare sunt mici apropierea este foarte lent
Minimul este atins dup un numr infinit de pai
Convergen liniar (=1) descretere n progresie geometric

2.3.3. Metode de gradient


Aplicaii pentru funcii ptratice
f ( x) =





1 T
x Qx, x R n ,
2

r = f ( x) = Qx

Condiia de extrem r* = 0 x* = 0
Dac Q > 0, x* = 0 este punct de minim
n general, minimul se obine dup un numr infinit de pai.
Atingerea minimului dintr-un singur pas se realizeaz numai n cazul n care
deplasarea se face pe direcia unui vector propriu al matricei Q


*r

y
-1r






suprafeele f(x) = const. sunt elipsoizi cu centrul n origine, direciile


axelor corespunznd vectorilor proprii ai matricei Q
dac punctul de start se afl pe o astfel de ax, atunci minimul este
atins dintr-un singur pas
din oricare alte puncte, atingerea minimului se face dup un numr
infinit de pai
minimul poate fi atins dintr-un singur pas din orice punct dac
deplasarea se face pe direcia Q-1r cu =1
dac Q = I, elipsoizii se transform n sfere i minimul este atins din
orice punct prin deplasare pe direcia invers gradientului (r=Q-1r)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2.3.4. Metode bazate pe direcii


conjugate
Principiu


fie x0 punctul de start al algoritmului i x* punctul final de minim


x* = x0 + xs
xs Rn - vector necunoscut
xs poate fi exprimat ntr-o baz oarecare n funcie de cele n
componente ale sale alegnd o baz convenabil i fcnd
deplasarea din x0 succesiv n lungul axelor acestei baze, exist
posibilitatea ca din n pai s ajungem n x*
evident este necesar o regul pentru stabilirea lungimilor pailor pe
fiecare direcie




O posibilitate de a determina o astfel de baz convenabil este


utilizarea direciilor conjugate
Atingerea minimului n n pai se obine numai la funciile ptratice

2.3.4. Metode bazate pe direcii


conjugate
Direcii conjugate


Doi vectori x,yRn se numesc conjugai (sau Q-conjugai,


sau Q-ortogonali) dac x, Qy = 0, Q R nn

Construirea unui set de vectori Q- conjugai (proceduri de


tip Gram-Schmidt)


fie setul de vectori liniar independeni v1,...,vn

k +1

k +1

+ a kju j

se construiesc vectorii u1,...,un conjugai

se impune condiia ca uk+1 s fie conjugat cu toi vectorii uj, j= 1,...,k

0 = u k +1 , Qu j = k +1 , Qu j + a kj u j , Qu j

a kj =

j=1

k +1 , Qu j
u j , Qu j

2.3.4. Metode bazate pe direcii


conjugate
Direcii conjugate


Se demonstreaz c n vectori n - dimensionali conjugai


sunt liniar independeni i deci pot forma o baz

Folosind vectorii Q-conjugai, se poate exprima matricea Q-1

n 1

pi piT

i =0

pi , Qpi

2.3.4. Metode bazate pe direcii


conjugate
Metoda direciilor conjugate

x





k+1

= x + kp

pk sunt vectorii care dau direciile de deplasare i se aleg


Q-conjugai
Paii de deplasare se aleg optimi pe direciile respective
Precizia de stabilire a direciilor conjugate este
dependent de cea cu care se calculeaz paii optimi
metoda impune o precizie ridicat n aplicarea procedurii
de cutare liniar exact

Metoda direciilor conjugate


Algoritm
1. se alege un punct iniial x0 i o direcie iniial p0 oarecare
0
0
admisibil, eventual p = f ( x )

2. se calculeaz punctul urmtor cu x k +1 = x k + k p k


3. se calculeaz noua direcie de deplasare pk+1, conjugat cu
direciile de deplasare precedente
4. se repet etapele (2) i (3) pn la ndeplinirea unui criteriu
de stop

Metoda direciilor conjugate

n cazul funciilor obiectiv ptratice, minimul se atinge dup


n pai, deci algoritmul se oprete dup n iteraii

Dac funcia este oarecare (neptratic), minimul nu este


atins dup n pai


convergena este destul de rapid, mai ales dac funcia respectiv


se aproximeaz suficient de bine cu una ptratic

Pentru a evita o serie de erori de aproximare, se


recomand ca dup iteraia a n-a algoritmul s se reia de la
capt, reiniializndu-l din punctul atins la a n-a iteraie

Metoda direciilor conjugate




n cazul funciilor ptratice metoda direciilor conjugate


conduce n n pai n punctul de minim
Demonstraie
0

x * = x + x , x* = x +
0

f ( x) = Qx + b

n 1

i p

f ( x) =

i =0

f ( x0 ) = Qx0 + b

f ( x*) = Qx * +b = 0

1 T
x Qx + b T x +
2

x* = x 0 Q 1 f ( x 0 )
Q

x* =

n 1

x0
i =0

n 1

i iT

pp
i

p , Qp

f (x 0 ) = x 0
i =0

pi ,f (x0 )
i

p , Qp

n 1

pi piT

i =0

pi

p , Qp

f (x0 ), pi
pi , Qpi

Metoda direciilor conjugate

f (x0 ), pi = f (x 0 ) f (x1 ) + f (x1 ) ... f (xi ) + f (xi ), pi

i+1

= x + ip

f ( x

i +1

) f (x ) = i Qp
i

f (x0 ), pi = 0Qp0 1Qp1 ... i 1Qpi 1 + f (xi ), pi


pi Q-conjugai

f (x0 ), pi = f (xi ), pi

i =

f (x0 ), pi
i

p , Qp

i =

f (xi ), pi
pi , Qpi

Metoda direciilor conjugate




Observaii



calcularea direciilor conjugate n cadrul acestei proceduri se


realizeaz pe baza algoritmului de tip Gram-Schmidt
formula

a kj =

k +1 , Qu j
u j , Qu j

prezint neajunsul prezenei matricei Q


n problemele de minim, aceasta corespunde matricei Hessian i
utilizarea ei ar prezenta o complicaie major (procedura nu apeleaz
la derivatele de ordinul doi).


Eliminarea acestui neajuns se poate realiza printr-o transformare a


formulei

Metoda direciilor conjugate




Eliminarea neajunsului prezenei matricei Q se poate


realiza printr-o transformare a formulei de calcul a
coeficienilor akj

a kj =
u =p
j

Notez

k +1 , Qu j
j

u , Qu

kj =

y j = r j+1 r j .

y jT k +1
kj =
y jp j

k +1

, Qp

p j , Qp j

k +1

j+1

j T

x x Q k +1
p Q
= jT j =
T
p Qp
x j+1 x j Qp j
jT

La funcii ptratice y = Q(x


j

j+1

xj)

2.3.4. Metode bazate pe direcii


conjugate
Metoda gradienilor conjugai
 Metod derivat din metoda direciilor conjugate
 Varianta Fletcher Reeves:
x k+1 = x k + k p k





pk sunt direcii conjugate, iar k sunt pai optimi pe aceste direcii


prima direcie se alege p 0 = f ( x 0 ) = r 0
celelalte direcii se aleg p k = -r k + k-1p k-1
k-1 se stabilesc din condiia ca pk i pk-1 s fie conjugai
0 = p k , Qp k 1 = -r k , Qp k 1 + k 1 p k 1 , Qp k 1

k 1 =

dezavantaj - impune cunoaterea hessianului Q

r k , Qp k 1
p k 1 , Qp k 1

Metoda gradienilor conjugai


k 1 =

r k , Qp k 1
p

k 1

, Qp

k 1

f (xi +1 ) f (xi ) = i Qpi

r k - r k-1
r ,
k-1
k

k-1 =

r k , r k - r k , r k-1

k-1

r -r
p ,
k-1
k-1

pk-1, r k - pk-1, r k-1

r k , r k-1 = 0,
rk , rk

k-1 =

p



k-1

- pk-1, rk-1

,r

k-1

= r

k-1

,-r

k-1

+ k-2p

k-2

=- r

k-1

,-r

k-1

p k-1 , r k = 0
rk , rk
k-1 =

rk-1, rk-1

minimul se atinge dup n pai pentru funcii ptratice


n cazul funciilor oarecare se recomand o reiniializare
dup fiecare n iteraii

2.3.5. Metode de tip NewtonRaphson




Metode de ordinul al III-lea




apeleaz i la calculul derivatelor de ordinul al doilea ale funciei


obiectiv (se presupune c aceste derivate exist i sunt continue)

Efectuarea calculelor suplimentare este compensat de o


rapiditate mare a convergenei
La baza tuturor procedurilor din aceast categorie st
metoda Newton-Raphson

2.3.5. Metode de tip NewtonRaphson


Metoda Newton-Raphson


Denumirea procedurii vine de la metoda de rezolvare a sistemelor


de ecuaii, care aici se aplic referitor la condiia de anulare a
gradientului
Aproximarea gradientului prin dezvoltare n serie Taylor
f (x k +1 ) = f (x k ) + H ( x k )(x k +1 x k )

Considerm c noul punct este chiar punctul staionar


f (x k +1 ) = 0

Dac notm

x k +1 = x k H 1 ( x k )f ( x k )
p k +1 = x k +1 -x k

Soluia pk pentru se numete direcie Newton

H k p = r
k

2.3.5. Metode de tip NewtonRaphson


Metoda Newton-Raphson


n cazul funciilor ptratice, din orice punct s-ar porni, se ajunge n


punctul staionar (minim dac Q>0) dintr-un singur pas

f (x) =

1 T
*
1
x Qx + b T x+, f ( x) = Qx + b x = Q b, H ( x) = Q
2

Conform procedurii N-R

x1 = x0 Q 1 (Qx0 + b ) x1 = Q1b=x*




n cazul altor funcii obiectiv, minimul nu este atins dintr-un singur


pas, ns convergena este rapid
Se demonstreaz c metoda are o convergen ptratic (ordin de
convergen 2) metoda cu cea mai rapid convergen
Dezavantaje
convergena nu este asigurat dect n cazurile n care H(x)>0
calcularea matricei Hessian i a inversei acesteia conduce la creterea
volumului de calcule

2.3.5. Metode de tip NewtonRaphson


ncercri de ameliorare a metodei N-R


Modificri ale metodei N-R




urmresc asigurarea convergenei i apeleaz fie la un pas 1 n


formula iterativ, fie la utilizarea unei matrice pozitiv definite n locul
matricei H

Metode de tip regiune de ncredere




constau n aproximarea secvenial a funciei obiectiv cu o funcie


ptratic i utilizarea procedurii N-R pentru aceast aproximare
aceast aproximare este acceptabil doar ntr-un domeniu restrns
(regiunea de ncredere) din jurul punctului considerat

Metode combinate


utilizeaz tehnici de tip N-R i proceduri cu convergen sigur, dar


mai lente

2.3.5. Metode de tip NewtonRaphson


ncercri de ameliorare a metodei N-R


Metode cvasi Newton





merg pe ideea de a aproxima matricea H sau inversa acesteia,


aproximare care s asigure i condiia de pozitivitate
la aceste proceduri nu se calculeaz derivatele de ordin doi ale
funciei obiectiv
din acest punct de vedere, metodele respective sunt de ordinul al II-lea
totui ele sunt strns legate de metoda N-R din care provin

2.3.5. Metode de tip NewtonRaphson


Modificri ale metodei Newton-Raphson
 Metoda Newton modificat - procedur care asigura
convergena, pstrnd totodat direcia Newton



Direcia de deplasare h k = -H1 ( x k ) f ( x k )


Nu folosete pasul unitar pe aceast direcie, ci un pas oarecare
k +1
k
k
care s asigure descreterea funciei n x = x + k h
de obicei se calculeaz k ca pas optim pe direcia hk
prin aceasta se asigur convergena procedurii i se menine viteza de
convergen foarte ridicat
rmne dezavantajul necesitii de a calcula matricea Hessian

2.3.5. Metode de tip NewtonRaphson


Modificri ale metodei Newton-Raphson
 Alte metode Newton modificate - proceduri a cror idee
este de a nlocui matricea Hk = H(xk) cu o matrice Gk care
s fie legat de Hk i s ndeplineasc condiia Gk > 0


determinarea la fiecare iteraie a pozitivitii matricei Hk se


realizeaz de obicei pe baza unei factorizri a matricei (LDLT )

G k = LDLT = H k + Ek
L este o matrice inferior triunghiular cu elementele lij, iar D este
matrice diagonal (D=diag(d1,...,d2));
se demonstreaz c toi di > 0 dac i numai dac Gk > 0
factorizarea LDLT este posibil numai dac Gk este pozitiv definit
Ek se ia o matrice diagonal, cu elemente nenegative pe diagonal,
alese astfel ca Gk > 0

2.3.5. Metode de tip NewtonRaphson


Modificri ale metodei Newton-Raphson
 O alt cale de a modifica metoda N-R este de a nlocui
matricea Hk cu Gk= Hk+kI, cu k>0 i suficient de mare
pentru a obine Gk > 0.


dezavantaj; se modific i acele elemente de pe diagonala lui Hk ce


puteau fi pstrate

Un alt tip de modificare se bazeaz pe descompunerea


H k = Pk k PkT , k = diag(1 ,..., n ), i , i = 1,n - valori proprii ale Hk
Pk - matrice ortogonal; coloanele sunt vectorii proprii pentru Hk

Se nlocuiete cu = diag( i ), unde i = max { i ,} , >0 i atunci

G k = Pk k PkT
se obine o inversare a direciilor de cutare necorespunztoare
dezavantaj - necesitatea calculrii valorilor proprii i

2.3.5. Metode de tip NewtonRaphson


Metode combinate
 O prim posibilitate - la primele iteraii se folosete metoda
gradientului (convergent pentru categorii foarte largi de
funcii, dar lent), iar ulterior se trece la metoda N-R


De regul, n apropierea punctului de minim, metoda N-R este


convergent, ns n punctele mai deprtate este posibil ca s nu
fie asigurat aceast proprietate
este realizat convergena local, dar nu i cea global).

Dezavantaj - comutarea de la un algoritm la altul,


este dificil de stabilit un criteriu precis care s determine comutarea

O alt modalitate de a combina metoda gradientului


optimal (Cauchy) i metoda N-R este de a realiza un pas
care s reprezinte o combinaie ntre pasul Cauchy pC i
pasul Newton pN


Exist algoritmi, cum ar fi Levenberg-Marquard, la care pasul


rezultat este mai apropiat iniial de pC, iar apoi de pN

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2.3.6. Metode de tip cvasi-Newton




Principiu


Se aproximeaz succesiv matricea Hessian sau inversa ei,


cutndu-se totodat s se asigure pozitivitatea acestor aproximaii

Relaia de baz a algoritmilor din aceast categorie


x k +1 = x k k G k r k


k - se stabilete printr-o cutare liniar exact

Gk este aproximarea la iteraia k pentru inversa H-1

pk=-Gkrk - direcia de cutare

schimbarea gradientului se poate aproxima cu formula

r k +1 r k = H k +1 ( x k +1 x k )


notm
k

p =x

k+1

-x

y k = r k+1 - r k

G k +1 y k = p k

- condiie cvasi-Newton

2.3.6. Metode de tip cvasi-Newton







Primele metode din aceast categorie s-au bazat pe aproximrile i


relaiile anterioare
Implementrile ulterioare au apelat i la aproximarea succesiv Bk a
matricei Hessian, direcia de cutare pk determinndu-se ca soluie a
sistemului liniar
B k p k = r k
Condiia cvasi-Newton devine n acest caz B k +1p k = y k
Principalul avantaj


aproximrile matricei Hessian sau ale inversei acesteia nu se obin prin


calcularea derivatelor de ordinul doi, ci se bazeaz doar pe cunoaterea
valorilor funciei i gradientului metodele cvasi-Newton sunt metode de
ordinul II

Avantajul menionat conduce la reducerea substanial a volumului de


calcule la fiecare iteraie, dar prin aceasta se diminueaz i viteza de
convergen, care aici este supraliniar

2.3.6. Metode de tip cvasi-Newton


Metoda DFP (Davidon-Fletcher-Powell)


dac dispunem de o aproximare G'k a matricei simetrice Q-1 pe


subspaiul corespunztor bazei date de vectorii Q-conjugai
d0,d1,...,dk-1
k 1
di diT
G 'k = i
,
i
i = 0 d , Qd
se poate obine aproximarea pe un subspaiu k+1 dimensional

d k d kT
G 'k +1 = G 'k + k
d , Qd k



se aleg ca direcii conjugate direciile pk=xk+1-xk


Observaie: pentru o funcie obiectiv oarecare, hessianul se
modific de la o iteraie la alta nu se poate asigura Q-conjugarea
vectorilor;
raionamentul se va limita la funcii ptratice, procedura extinzndu-se
i la alte funcii

Metoda DFP


Se impune condiia de conjugare a direciilor pk sub forma


p k p kT
Dk = kT k
p Qp

G k +1 = G k + Dk + Ck ,


Ck - matrice de corecie care s asigure Q-conjugarea vectorilor pk

Dac vectorii pk sunt conjugai


k
k
Q 1 = G k +1 G k +1Q = I G k +1Qp = p
k
( G k + Ck ) Qp = 0


la funcii ptratice

y k = r k +1 r k = Qp k


soluie posibil pentru (*) este

G y )( G y )
(
=

k T

Ck

y kT G k y k

( G k + Ck ) y k

=0

(*)

Metoda DFP


Este util ca n formulele care se obin s nu apar matricea


Q (care corespunde, n fond, matricei Hessian)
p k p kT
Dk = kT k
p Qp

y = Qp
k

p k p kT
Dk = kT k
y p

Metoda DFP
Algoritm
1. se realizeaz iniializarea x0, G0>0 (se recomand G0=I, prima
direcie fiind atunci direcia gradientului), se pune 0=1 (sau se
poate determina 0 prin cutare liniar exact); se calculeaz r0;
2. dac criteriul de stop nu este satisfcut se trece la etapa (3);
3. se determin pasul optim k pe direcia Gkrk;
k
k+1
k
4. se calculeaz x k +1 = x k k G k r k ; se determin rk+1, p = x - x

i y k = r k+1 - r k ;
5. se determin Ck =

( G k y k )( G k y k )
y kT G k y k

6. se pune k k+1 i se revine la (2).

p k p kT
,Dk = kT k , G k +1 = G k + Dk + Ck
y p

Metoda DFP
Proprieti ale algoritmului DFP
 Dac G0>0 simetric, irul {Gk} este format din matrice
simetrice pozitiv definite
 Dac G0=I i funcia obiectiv este ptratic cu matricea
Hessian Q, atunci vectorii p0,p1,p2,...., determinai prin
algoritmul DFP sunt Q-conjugai i matricea Gk stabilit n
subspaiul determinat de p0,p1,...,pk-1 este egal cu Q-1
 Matricele care intervin n calcule au urmtoarele proprieti:
n 1

n 1

k =0

k =0

Ck = G 0 ,

1
Dk = Q

termenii Ck tind s corecteze iniializarea G0, iar termenii Dk tind


ctre Q-1

Metoda DFP


Proprietile menionate ale algoritmului DFP sunt valabile


numai pentru funcii obiectiv ptratice
Pentru funcii obiectiv generale aceste proprieti nu mai
sunt valabile, dar algoritmul prezentat asigur o bun
convergen (supraliniar) dac sunt ndeplinite anumite
condiii:



se calculeaz exact la fiecare pas gradienii i mai ales lungimile


pailor optimi;
matricea Gk nu devine singular; pentru a preveni aceast situaie:

se reiniializeaz algoritmul (se face Gk=G0=I)


aceast reiniializare se recomand a fi fcut dup fiecare n pai
o bun scalare poate evita tendina de singularizare a matricei G,
recomandndu-se n acest sens s se adopte

|| p 0 || || y 0 ||

Metoda DFP
Algoritmul DFP:
i.

Satisface condiia cvasi-Newton G k +1 y k = p k

ii. Genereaz o secven de matrice pozitiv definite


iii. Genereaz un set de direcii conjugate care aproximeaz
Q-1(x), astfel ca G n = H 1 = Q 1 pentru funcii ptratice

n felul acesta, pentru astfel de funcii, dup n iteraii, direcia calculat


coincide cu direcia Newton, ceea ce garanteaz convergena metodei
n n+1 iteraii

2.3.6. Metode de tip cvasi-Newton


Alte proceduri cvasi-Newton
 Broyden:
formula DFP face parte dintr-o familie
dependent de un parametru [0,1], care are aceleai
proprieti (i)(iii) ca i metoda DFP
Gk+1 = Gk +
k >



k kT

pp

k kT

py

k kT

Gky y Gk
kT

y Gkyk

(p y k )
kT

(y k G k y k )(p k G k1p k ) (p k y k ) 2
T

p
Gky p
Gky
+ky Gky kT k kT
kT k kT

k
k
p y y Gky p y y Gky
kT

asigur meninerea pozitivitii


secvenelor Gk

k = 0 DFP
k=1 algoritmul BFGS (Broyden, Fletcher, Goldfarb, Shanno)

Alte proceduri cvasi-Newton


Dixon a demonstrat proprietatea:
iv. genereaz aceeai secven de puncte {xk} care
minimizeaz f(x)




teste multiple indicaser c algoritmul DFP i mai ales BFGS sunt


superiori altor algoritmi din familia Broyden
diferenele care apar de obicei se datoreaz inacurateei cutrii
liniare i erorilor de rotunjire
se pare c algoritmul BFGS este mai puin sensibil la aceti
factori i, ca atare, la acesta apare mai rar tendina de pierdere a
pozitivitii matricei G

Alte proceduri cvasi-Newton


Se pot formula algoritmi suimilari care realizeaz aproximarea
succesiv Bk a matricei H, la care direcia de cutare pk este
soluie a ecuaiei B k p k = r k

metodele care aprox. H-1 - O(n2); metodele care aprox. H - O(n3)



dac n locul hassianului se actualizeaz factorii Cholesky sau ai
descompunerii LDLT ai lui B O(n2)

apare avantajul verificrii relativ simple a pozitivitii matricelor Bk i al
posibilitii de corijare n cazuri nefavorabile
k
k
k kT
k kT
y
B
p
T
T
Bkp p Bk
y y
k
k
k k k
, k [0,1]
B k +1 = B k + k T k k T
+

p
B
p
b b , b = kT k kT
k
k
k
k
p y p Bk p
p y
p Bkp





pentru k = 0 BFGS; pentru k =1 DFP


kT k
pozitivitatea B se menine dac p y > 0 (ntotdeauna satisfcut n
cazul cutrii liniare exacte) i dac
k >

(p y k ) 2
kT

(y k B k y k )(y k B k1y k ) (p k y k ) 2
T

Alte proceduri cvasi-Newton




S-au fcut cercetri pentru stabilirea unor algoritmi din


aceast clas care s nu impun determinarea exact a
pasului optim
pk -G yk pk -G yk




(
+

)(

n acest sens, Powell a propus formula Gk+1 = Gk


k
k T k
p -Gk y y
Este satisfcut condiia cvasi-Newton
Formula impune ca vectorii p0,p1,...,pn-1 s fie liniar independeni i
nu conjugai
k

calcul cu precizie mai sczut a pasului de deplasare




Pentru algoritmii din familia Broyden se poate renuna la


cutarea liniar exact, asigurndu-se totui o convergen
a matricelor Bk spre H



Se pierde proprietatea Bn = H, dar se obine un ctig de eficien


Deplasrile pe direciile pk trebuie realizate astfel nct s se
asigure scderea funciei i aceast scdere s fie semnificativ

Alte proceduri cvasi-Newton




Convergena acestor proceduri a fost demonstrat iniial


pentru funcii ptratice
Powell a demonstrat:



convergena algoritmului DFP pentru funcii convexe n cazul


utilizrii pailor optimi
n cazul cutrii liniare aproximative, secvenele fk tind spre f(x*) n
aceleai condiii ca i n cazul cutrii liniare exacte

Convergena algoritmilor din familia Broyden a fost


demonstrat n condiia c x0 este suficient de apropiat de
x* (convergen local)
Rata de convergen a algoritmilor din aceast categorie
este supraliniar

2.3.7. Metode de cutare directe






Se apeleaz doar la calculul valorilor funciei obiectiv


Convergena lent, calcule simple la fiecare iteraie
Metodele se pot aplica i n cazul funciilor nederivabile,
sau atunci cnd derivatele se calculeaz cu mare dificultate
Clasificare


metode iterative - se stabilesc puncte din ce n ce mai apropiate de


minim:
algoritmul Gauss-Seidel, algoritmul Hooke i Jeeves, algoritmul
Rosenbrock, algoritmul Powell

metode iterative folosind poliedre:


algoritmii SIMPLEX i COMPLEX

2.3.7. Metode de cutare directe


Algoritmul Gauss-Seidel
x k+1 = x k + k d k


dk sunt vectorii unitari corespunztor axelor de coordonate

d j-1 = [0...0 1 0...0]T , j = 1,..., n


( j)



dup ce se ncheie un ciclu n care s-au fcut deplasri dup toate


axele, acesta se reia cu dn = d0, dn+1 = d1,...
pasul k - pas de descretere a funciei obiectiv sau pas optim

Algoritmul Gauss-Seidel


Exemplu de eec - se atinge direcia principal a "vii" i


orice deplasare ulterioar n lungul oricrei axe nu mai
conduce la scderea valorii funciei

x2

f(x)=ct.
x*

Evitare deplasrile n lungul axelor


se combin cu deplasri diagonale;
exemplu: dup fiecare ciclu de n
deplasri n lungul axelor, se execut o
deplasare pe direcia care unete
primul cu ultimul punct al ciclului

x1

2.3.7. Metode de cutare directe


Algoritmul Rosenbrock


Deplasrile se fac dup direcii ortogonale. La fiecare ciclu:


a) Se pornete de la x0 al ciclului i se stabilesc direciile formate din n vectori
unitari ortogonali d1,...,dn;

b) Se

la primul ciclu, d1,...,dn corespund axelor;


la ciclurile urmtoare se stabilesc prin procedeu Gram-Schmidt.
j
j-1
j
calculeaz x = x + jd
dac f( x j+1 ) < f( x j ) pasul este considerat succes i j j , > 1
dac f( x j+1 ) > f( x j ) pasul este considerat insucces, se revine la xj i se efectueaz
un pas n sens invers, punnd j j , 1 < < 0
Obs.: ntr-o alt variant a procedurii se stabilesc noile puncte prin deplasri cu pai
optimi pe direciile respective

c) Se repet etapa (b) pentru toate direciile j = 1,2,...,n, considernd succes


pasul n care f (x j1 + jd j ) < f (x j1 )
d) Se reiau etapele (b) i (c) pn cnd, pe fiecare direcie, un succes este urmat
de un insucces sau | j |<



Ultimul punct al ciclului xc devine punct iniial pentru ciclul urmtor, la care
prima direcie este cea care unete x0 cu xc
Avantajul: la fiecare ciclu, direciile de deplasare tind s se orienteze spre
direcia principal a "vii"

2.3.7. Metode de cutare directe


Algoritmul Powell
 Direciile de deplasare n cadrul unui ciclu sunt conjugate


Algoritmul:





se demonstreaz c, pentru funcii ptratice, dup n cicluri


direciile obinute sunt conjugate
Se alege punctul iniial x0 i direciile de deplasare dj=ej, j=1,2,...,n,
cu e j =[0,...0,1,0...,0]T , deci paralele cu axele
Se determin pasul optim *j pe direciile dj, j=1,...,n i se
calculeaz x j =x j-1 +*j d j , j=1,...,n
Se ia noua direcie d=xnx0 i se nlocuiesc direciile d1,...,dn cu
d2,...,dn,d, care apoi se renoteaz ca d1,...,dn
n
n
Se determin care asigur min (x + d ) i se nlocuiete x0 cu

n
n
0
x +d . Cu acest nou x , se revine la etapa (c), ncepnd astfel
un nou ciclu

Rata de convergen este apropiat de cea ptratic, mai


ales n apropierea punctului de minim

2.3.7. Metode de cutare directe


Algoritmul SIMPLEX
 Se pornete de la o configuraie de puncte numit simplex



sub denumirea de SIMPLEX este mult mai cunoscut metoda de


rezolvare a problemelor de programare liniar
Se pornete de la n+1 puncte care alctuiesc vrfurile unui
hiperpoliedru regulat, de obicei avnd un vrf (x1) n origine.
Coordonatele celorlalte puncte sunt

x2 =[ c1 c2 c2 ... c2 ] ,...,xn+1 =[ c2 c2 c2 ... c1]


T

c1 =




(
2

n + 1 + n 1 , c2 =

(
2

n +1 1

n
n
Se calculeaz f(xj), j=1,...,n+1 i se noteaz cu xm i xM punctele
n care f(x) are cea mai mic i respectiv cea mai mare valoare
Se nlocuiete la fiecare iteraie xM cu un punct mai favorabil,
obinndu-se o alt configuraie de n+1 puncte, pentru care se
repet procedura, pn la ndeplinirea unui criteriu de stop

Algoritmul SIMPLEX
Algoritm:
G

1 n +1 j
M
x x
=
n + 1 j =1

Se calculeaz x

Se face o reflectare a punctului xM prin xG: x =x + (x -x ), > 0




Dac f(xE)f(xm), extinderea este favorabil i se nlocuiete xM cu xE i


se reiau calculele pentru noul poliedru
Dac f(xE)>f(xm), se nlocuiete xM cu xR i se reiau calculele

Dac f(xR)>f(xm)

Dac f(xR)f(xm), exist premise ca direcia reflexiei s fie favorabil


i se ncearc a extindere a acesteia x E =x R +(x R -x G ), >1

Dac exist cel puin un xk astfel nct f(xR)<f(xk)<f(xM) se nlocuiete xM


cu xR i se reiau calculele cu noul poliedru
Dac f(xR)f(xj), pentru orice xj exceptnd xM, se efectueaz o contracie
x c =xG +(x M -xG ), (0,1) , se nlocuiete xM cu xc i se reiau calculele

Dac ns reflexia este total nefavorabil (f(xR)>f(xm)), se face o


reducere a ntregului domeniu explorator, punnd
x j x m +0,5(x j -x m ), j=1,...,n+1 i se reiau calculele

Algoritmul SIMPLEX


Pentru coeficieni se pot adopta valorile:


= 1, = 0,5 , = 2
Dac =1, ct timp se fac doar extinderi sau contractri,
poliedrul se menine regulat; n caz contrar, el i pierde
forma regulat.
Drept criteriu de stop se poate folosi i criteriul specific
acestui algoritm

1 n +1
j
G
f
(
x
)

f
(
x
)

n + 1 j =1

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE ANALITICE DE
REZOLVARE A
PROBLEMELOR DE
OPTIMIZARE STAIONAR
CU RESTRICII

2. METODE ANALITICE DE REZOLVARE A


PROBL. DE OPT. STA. CU RESTRICII


Fiind dat funcia f (x) : X R n R , se cere determinarea


punctului x* pentru care se obine min f( x), cu respectarea
x
restriciilor

h i (x) = 0, i = 1, , < n,

g j (x) 0, j = 1, m ,

unde hi(x) i gj(x) sunt funcii scalare dependente de variabila


vectorial x
Problema enunat este o problem de programare matematic,
numit i problem de optimizare staionar
Problemele cu restricii inegalitate sunt reductibile la cele cu
restricii egalitate, dac se introduc variabilele suplimentare vj cu
2
relaiile g j (x) + v j = 0


Procedeul nu este des folosit deoarece presupune o complicare a


calculelor datorit variabilelor suplimentare

CLASIFICARE



Metode de substituie
Metode de explorare i eliminare


Metode analitice





asemntoare cu cele de la problemele fr restricii


bazate pe metoda multiplicrilor Lagrange pentru probleme cu
restricii egalitate i pe extinderea acesteia la metoda Kuhn-Tucker
n cazul restriciilor inegalitate
procedurile cele mai generale - stau la baza altor tipuri de proceduri
introducerea multiplicatorilor Lagrange-Kuhn-Tucker permite
transformarea problemelor respective n probleme fr legturi

Metode de cutare



proceduri iterative, n care se stabilesc aproximri tot mai bune


pentru minimul x*
apeleaz la metodele de cutare a extremului liber i la rezultatele
metodelor analitice

3.1. Metode analitice pentru probleme


cu restricii de tip egalitate
Principiu
 Se introduc unele variabile suplimentare - multiplicatori
Lagrange - i problema se reduce la una de extrem liber
 Se va presupune c toate funciile care intervin au derivate
de ordinul unu continue pe ntregul domeniu care prezint
interes

3.1. Metode analitice pentru probleme


cu restricii de tip egalitate
Teorema multiplicatorilor Lagrange
 T1. Fie funciile scalare f(x), hi(x), i = 1,...,, <n, definite pe
Rn, cu derivatele de ordinul unu continue pe X Rn i S X
submulimea definit

S = {x; x X, h i (x) = 0, i = 1,..., )}

Presupunem c x*S i exist o vecintate V(x*) astfel nct


f(x*)f(x) pentru orice xSV(x*).
Dac rangul jacobianului J(x) = h / x n punctul x* este ,
atunci exist numere reale 1,...,, nu toate nule, pentru
care

f ( x ) + i h i ( x* ) = 0
*

i =1

(1)

3.1.1. Teorema multiplicatorilor Lagrange




Se introduce funcia sintetic Lagrange (lagrangeanul)

( x, ) = f ( x) + i h i (x)

(2)

i =1

(x, ) = f (x) + h(x), = [ 1... l ] , h(x) = h1 (x) ...h (x)


T

Condiia de extrem se poate exprima prin

x ( x , ) = f ( x ) + *i h i ( x* ) = 0
*

i =1

Restriciile se pot exprima ca

De asemenea

( x * , * ) = h ( x* ) = 0

*
i h i (x ) = 0 f( x* ) = ( x* )

i =1

(3)
(4)

3.1.1. Teorema multiplicatorilor Lagrange


Observaii
 Folosind multiplicatorii Lagrange, problema de extrem cu
legturi se transform ntr-o problem cu extrem liber, dar
nu pentru funcia obiectiv f(x), ci pentru funcia sintetic (x)
 Rezolvarea problemei impune soluionarea unui sistem de
n+ ecuaii cu n necunoscute x plus necunoscute



din ecuaiile (3) se exprim xj n funcie de multiplicatorii i


xj se introduc n (4) se obine un sistem de ecuaii cu
necunoscutele i
Rezolvarea analitic este posibil doar ntr-un numr limitat de
cazuri
se apeleaz la proceduri numerice

3.1.3. Condiii suficiente de extrem




Satisfacerea condiiilor suficiente asigur c punctul x* este


minim
Comparativ cu necesitatea, suficiena impune i
satisfacerea unor condiii suplimentare relativ la derivatele
de ordin doi i de convexitate
Se introduce mulimea vectorilor y ortogonali pe vectorii
hi(x*)

Y = {y y T h i ( x* ) = 0, i = 1,..., , y 0}


(5)

Se noteaz cu Hx(x,
) - matricea Hessian a funciei (x,
)
n raport cu variabilele x

3.1.3. Condiii suficiente de extrem




T2. Fie funciile scalare f(x) i hi(x), i = 1,..., definite pe


XRn i care au derivate de ordinul doi continue n x* i
mulimea SX definit de relaiile

h i (x) = 0, i = 1, , < n
Dac exist *R care satisface

x (x , ) = f (x ) + *ih i (x* ) = 0
*

i =1

y T H x (x* , * ) y > 0,
pentru orice yY definit de (5) atunci x* este un punct de
minim local tare a lui f pe S.

3.1.3. Condiii suficiente de extrem




T3. Considerm c funciile f i hi ndeplinesc condiiile din


T1 i funcia sintetic (x,
*) definit de

(x, ) = f (x) + i h i (x)


i =1

este pseudo-convex n x*. Atunci condiia

x ( x , ) = f (x ) + *i h i ( x* ) = 0
*

i =1

este suficient pentru ca x* s fie punct de minim global al


lui f pe S.
funcia f este pseudo-convex (p-convex) n x0 X dac este
difereniabil n x0 i

( x X ) f(x) < f(x0 ) (x - x0 )T f(x0 ) < 0

3.2. Metode analitice pentru probleme


cu restricii de tip inegalitate


P1. Se consider funciile scalare f(x), gi(x), i = 1,...,m,


definite pe Rn, avnd derivatele de ordinul unu continue pe
XRn i fie mulimea SX definit prin inegalitile

S = {x; x X, g i ( x) 0, i = 1,..., m}

Se cere determinarea punctului x* pentru care se obine

min f ( x)
xS

Se noteaz cu I mulimea indicilor restriciilor active, adic


a restriciilor care sunt satisfcute ca egalitate n punctul x

I = {i gi (x* ) = 0}

3.2. Metode analitice pentru probleme


cu restricii de tip inegalitate
Clasificarea condiiilor necesare i suficiente de extrem
 Condiiile difereniale de extrem




Extinderea la cazul restriciilor inegalitate a tehnicii clasice a


multiplicatorilor Lagrange pentru problemele cu legturi
Necesitatea se bazeaz pe condiii de regularitate
Suficiena se bazeaz n plus pe condiii de convexitate

Condiiile de extrem fr difereniabilitate (condiii de tip


"punct ea" pentru lagrangeanul asociat problemei)



Suficiena nu necesit ipoteze speciale


Necesitatea presupune
convexitatea mulimii X i a funciilor f i g pe S
liniaritatea lui h
anumite condiii de regularitate

3.2.1. Condiii difereniale de extrem


Condiii necesare n cazul restriciilor liniare

gi (x) = ni , x + bi , bi R, gi (x) = ni Rn
g2(x)=0

n2
x*

n3
x

g3(x)=0

Mulimea indicilor restriciilor


active este I={1,3}
Considerm x S i vom spune
c vectorul x
x* ptrunde n S
n i , x - x * 0 pentru iI sau

n1

gi (x* ), x-x* 0, i I, x S
g1(x)=0

f(x)=c1 f(x)=c2 f(x)=c3


c1<c2<c3

f atinge minimul n x*S i pe


baza aproximrii din seria Taylor
f (x* ), x x* 0, x S

3.2.1. Condiii difereniale de extrem





Se demonstreaz c exist i0, iI a.. f(x* ) + igi (x* ) = 0


iI
Dac alegem j=0 pentru jI, atunci relaia precedent se
poate scrie
m

f ( x ) + i g i (x* ) = 0.
*

(*)

i =1

n plus

*
i gi (x ) = 0

(**)

iI

deoarece pentru iI avem gi(x*)=0, iar pentru iI avem i =0


Condiia necesar de extrem (*) i (**) se exprim prin relaii
similare celor din cazul problemelor de extrem cu legturi


Dificultate suplimentar: nu se cunosc de la nceput restriciile active


trebuie fcute tatonri pentru a stabili care restricie sau combinaie
de restricii este activ

3.2.1. Condiii difereniale de extrem




Formalismul condiiilor necesare de extrem ntlnit anterior


ar putea fi extins i n cazul restriciilor neliniare, dar numai
atunci cnd acestea ndeplinesc condiii de regularitate


Exemplu: vectorii gi(x*), iI sunt liniar independeni

T4 (Kuhn-Tucker). Fie f i gi, i =1,...,m funcii cu derivatele


de ordinul unu continue ntr-un domeniu deschis din Rn
care conine x*; restriciile gi(x)0, i=1,...,m satisfac condiii
de regularitate. Dac x* este punct de minim pentru f(x),
atunci exist multiplicatorii i0, i=1,...,m, a..
m

f ( x ) + i g i ( x* ) = 0
i =1
*

g
(
x
i i ) = 0, i 0, i = 1,..., m
i =1

3.2.1. Condiii difereniale de extrem


Demonstraie - se admite c pot fi liniarizate restriciile
f (x* ) = igi (x* ) (x x* )
iI
unde


f (x*), x x * = i bi , x S
iI

(***)

bi = g i (x* ), x - x* 0, x S
dac n (***) toi i0 este ndeplinit f (x*), x x * 0, x S
care rezult din condiia ca x* s fie punct de minim
dac ar exista un i < 0, iI, ar fi posibil s alegem un vector x-x*
astfel nct membrul drept din (***) s fie negativ

n cazul problemelor cu restricii inegalitate, multiplicatorii


trebuie s fie obligatoriu nenegativi. Un multiplicator
negativ, soluie pentru (*) arat c, de fapt, f(x*) ar putea fi
micorat printr-o deplasare pe o direcie strict admisibil n
raport cu restricia respectiv.

3.2.1. Condiii difereniale de extrem




Se introduce funcia sintetic Lagrange

(x, ) = f (x) + , g(x) , 0


= [ 1... m ] , g (x) = [ g1 (x)...g m (x) ]

x (x , ) = 0
*

(x, ) 0, 0

, (x , ) = 0
*

f ( x ) + i g i ( x* ) = 0
i =1
*

gi (x) 0, i = 1, m ,

g
(
x
i i ) = 0, i = 1, m
i =1

3.2.1. Condiii difereniale de extrem




Procedur general
1. Se determin extremul liber x pentru f(x) fr restricii


dac gi(x)0, i=1,...,m STOP

altfel, salt la 2.

2. Se consider pentru nceput drept restricii active acele restricii care au


fost nclcate la (1). Se determin extremul legat considerndu-se, pe
rnd, cte o restricie activ.


dac soluia verific celelalte restricii i toi i 0 STOP

altfel, salt la 3.

3. Se repet procedura de la etapa (2), considernd alte restricii active




Se recomand s se renune la restriciile care au fost verificate ca inegalitate


i s se introduc restriciile care au fost nclcate n etapa (2).

Pentru nceput se vor considera combinaii de cte dou restricii active (de
preferat, din cele care au fost nclcate la etapa anterioar).

Dac nu se gsete soluia, se trece la combinaii de cte trei restricii active


etc.

Astfel de repetri se fac pn se obine soluia problemei x* (a.. gi(x*) 0 i


i0, i=1,...,m), mergnd pn la combinaii de cel mult m restricii active

3.2.1. Condiii difereniale de extrem


Condiii necesare de extrem pentru pb. cu restricii mixte


Se consider restricii de tip egalitate i inegalitate

Se presupune c funciile f, hi, (i=1,..., ) i gj (j=1,...,m) au


derivatele de ordinul unu continue n x*

T5: dac x* este punct staionar de tip minim i sunt


ndeplinite condiii de regularitate n x* (referitoare la gi(x*),
iI i h(x*)), atunci multiplicatorii iR i i0 a..:

f ( x* ) + i g i (x* ) + i h i ( x* ) = 0,
iI

i =1

cu =1 (n problemele de maxim, =1) i I={i;gi(x*)=0}




T
T

(
x
,

)
=
f(
x
)
+

h(
x
)
+

g(x)
Funcia sintetic:
Cond. nec. de extrem: x ( x, , ) = 0

( ****)

3.2.1. Condiii difereniale de extrem


Condiii suficiente de extrem


T6. Considerm problema precedent i presupunem c


toate funciile au derivate de ordinul doi continue ntr-o
vecintate a lui x*S. Dac exist R i Rn
satisfcnd condiia Lagrange-Kuhn-Tucker (****) cu =1
(n problemele de maxim, =1) i

y T H x [ (x*,, ) ] y > 0

cu H x [ (x,, ) ] = H [ f ( x) ] + i H [ g i (x) ] + i H [ h i (x) ]


iI

i =1

i yY unde Y = y y, gi (x* ) = 0,i I; y, h k (x* ) = 0,k = 1,


atunci x* este punct de minim local tare al lui f pe S.

3.2.1. Condiii difereniale de extrem


Condiii suficiente de extrem


T7. Fie f, g, h funciile din problema precedent care au


derivate de ordinul unu continue. Dac n x*S este
ndeplinit condiia (****) cu =1 i Tg(x*)=0 i dac
funcia sintetic (x,
,
) este pseudo-convex pe S,
atunci x* este punct de minim al funciei f pe S.

Observaii:


Condiia suficient de minim global nu implic derivatele de ordin


2, ci condiii de convexitate
un minim local ntr-o problem convex este i minim global

3.2.2. Condiii de extrem fr


difereniabilitate



Condiiile de optimalitate nedifereniale - condiii de tip ea


Se consider lagrangeanul

(x, ) = f (x) + , g(x)


n care multiplicatorii sunt variabile duale variabilelor x
Spunem c (x*,
*) este un punct ea pentru (x,
) relativ
la S dac pentru orice xSRn i orice Rm i 0 avem:

(x , ) ( x , ) (x, )
*

Cu alte cuvinte, (x,


*) are un minim pe S n x*, iar (x*,
)
are un maxim n * pentru 0.

3.2.2. Condiii de extrem fr


difereniabilitate
Condiii suficiente de minim
 T8: Dac (x*,
*) este punct de tip ea pentru relativ la S,
atunci x* este punct de minim n problema cu restricii
inegalitate i este satisfcut condiia
*T

g (x* ) = 0


T9. Se consider problema cu restricii mixte i


lagrangeanul asociat. Dac (x*,
*,
*) este un punct ea
pentru relativ la S, adic

( x* , , ) ( x* , * , * ) ( x, * , * )
pentru orice xSRn, R, , atunci x* este punct de
minim pentru f(x) pe S (definit de g(x)0 i h(x)=0)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE NUMERICE
PENTRU SOLUIONAREA
PROBLEMELOR DE
OPTIMIZARE STAIONAR
CU RESTRICII

2. METODE NUMERICE DE REZOLVARE A


PROBL. DE OPT. STA. CU RESTRICII


Se consider problemele de forma

min f (x) h i (x) = 0,i = 1, l , l n, g j (x) 0, j = 1, m


x

Restriciile de tip egalitate i inegalitate definesc domeniul


admisibil S pe care trebuie cutat soluia problemei

2. METODE NUMERICE DE REZOLVARE A


PROBL. DE OPT. STA. CU RESTRICII
Clasificare
 Metode de cutare pornesc de la o iniializare oarecare i
urmresc ameliorarea iterativ a soluiei gsite la o
anumit etap



Cutarea se face pe direcii admisibile; n plus, trebuie asigurat i


meninerea n domeniul S
Pasul de deplasare pe o astfel de direcie trebuie astfel ales nct
deplasarea s fie efectiv admisibil i s asigure meninerea n
domeniul admisibil S
Cele mai rspndite tehnici din aceast categorie
Metode de tip gradient redus (proiectat)
Tehnici de lagrangean proiectat
au unele puncte comune cu cele de gradient proiectat
realizeaz o anumit aproximare secvenial a funciei i a restriciilor

2. METODE NUMERICE DE REZOLVARE A


PROBL. DE OPT. STA. CU RESTRICII


Metode bazate pe transformri care conduc la probleme


fr restricii



Proceduri specifice pentru anumite clase de probleme







Tehnici bazate pe funcii de penalizare


Tehnici de lagrangean augmentat
Programare liniar
Programare ptratic
Programare geometric
Programare convex

Observaii



la multe din procedurile de cutare, deplasrile se efectueaz, de


regul, pe frontiera domeniului S
De dat mai recent sunt metodele de tip punct interior, n care
deplasrile succesive folosesc puncte interioare ale domeniului S

4.1 Metode bazate pe transformri n


probleme fr restricii
4.1.1. Metode bazate pe funcii de penalizare
 Principiu se nlocuiete minimizarea funciei f(x) cu
restriciile gi(x)0, i=1,...m, (i eventual hi(x)=0, i=1,...,) cu
o problem n care se cere minimizarea funciei F(x)






F(x) se construiete a.. s fie foarte apropiat sau chiar egal cu


f(x) atunci cnd x S (domeniul admisibil definit de restricii) i s
aib valori mult mai mari cnd x S
Minimul funciei se va afla n S i va fi foarte apropiat (n caz ideal
va coincide) de punctul de minim x* al problemei originale
Funciile F(x) se numesc de penalizare deoarece ele sunt astfel
concepute nct penalizeaz nclcarea restriciilor
Funciile de penalizare

difereniabile
nedifereniabile

Funciile de penalizare sunt dependente de un parametru (), a


crui alegere este foarte important n evoluia algoritmilor i n
precizia estimrii soluiei x*

4.1.1. Metode bazate pe funcii de


penalizare
Exemple de funcii de penalizare
m

F ( x , ) = f ( x ) + max [ gi ( x ), 0] + hi2 ( x ), > 0, 1


i =1




i =1

Termenii suplimentari intervin cu valori pozitive numai n punctele


n care restriciile nu sunt satisfcute
Deoarece trebuie minimizat funcia F(x), soluia va tinde spre o
situaie n care toi termenii au o valoare ct mai mic, adic spre
minimul lui f(x) i spre respectarea restriciilor, cnd contribuia
termenilor suplimentari este nul

4.1.1. Metode bazate pe funcii de


penalizare
Exemple de funcii de penalizare

1
F ( x, ) = f ( x ) +
, 0
i =1 g i ( x )
m




Se consider c x este un punct interior domeniului admisibil S


termenul suplimentar este pozitiv
La apropierea de oricare din restricii, numitorul se apropie de zero
i termenul suplimentar crete mult evoluia cutrii este
meninut mereu la o oarecare deprtare de frontier

se spune c termenul suplimentar introduce o barier

Se poate folosi i o barier logaritmic sub forma


m

F ( x , ) = f ( x ) ln gi ( x )
i =1

4.1.1. Metode bazate pe funcii de


penalizare
Exemple de funcii de penalizare


n cazul problemelor cu restricii mixte se consider


m

i=1

=1

F ( x, ) = f ( x ) + max(0,gi ( x )) + hi ( x )

Se demonstreaz c pentru mai mare dect o valoare de prag,


x* este minim pentru F aceast form se mai numete funcie
de penalizare exact

4.1.1. Metode bazate pe funcii de


penalizare
Observaii


Dac se consider c x i* este minimul pentru funcia F ( x , i ) fr


restricii, n condiii destul de largi, se poate gsi x i* x * , unde x*
este soluia problemei originale
Apropierea de x* se obine dnd valori tot mai mari parametrului

De regul, la limit ( ) nu se atinge x* trebuie aleas o valoare


foarte mare pentru , dar finit
La valori mari ale lui , metodele de estimare a minimului funciei
F(x,) vor fi afectate de erori apreciabile

Nu exist o recomandare general privind modalitatea de alegere


a parametrului nu se poate conta pe o precizie ridicat n
cazul metodelor de penalizare i atunci acestea se folosesc:

n cazurile n care este acceptabil o estimaie grosier pentru x*


cnd estimaia este utilizat ca iniializare pentru o procedur mai
exact

4.1.1. Metode bazate pe funcii de


penalizare
Algoritm
1. Iniializare: se precizeaz x0, 0 i se pune k=0
2. Criteriu de stop:


procedura se ncheie dac este satisfcut un test de convergen


sau dac s-a depit o anumit valoare prestabilit pentru k
(pentru a proteja procedura n caz de eec, cnd unele variabile
pot crete nemrginit)
n caz contrar, se trece la (3)

3. Minimizarea funciei de penalizare F(x,), pornind din


punctul xk i reinnd xk+1 ca fiind cea mai bun
aproximaie care rezult din rezolvarea acestei probleme
4. Actualizare: se crete k cu o unitate, se crete valoarea lui
i se revine la (2)

4.2. Metode bazate pe direcii admisibile


pentru probleme cu restricii liniare


Direciile de deplasare admisibile:








asigur descreterea valorii funciei obiectiv i


menin punctului curent n domeniul S definit de restricii

Cutrile au loc pe frontiera domeniului S


Restricii active - restricii inegalitate care definesc
frontiera pe care se afl x*


dificultate major - nu se cunosc aprioric restriciile active


cutrile au loc pe diverse frontiere ale lui S

Tehnicile de gradient proiectat (redus) - cele mai folosite




metode ale mulimilor active; mai exact - mulimi de lucru considerate


la anumite iteraii

Se utilizeaz un vector care reprezint proiecia pe un anumit


subspaiu al vectorului gradient al funciei obiectiv

Se combin procedurile numerice de cutare din cazul


problemelor fr restricii cu rezultatele metodelor analitice
din cazul problemelor cu restricii

4.2. Metode bazate pe direcii admisibile


pentru probleme cu restricii liniare
Principiul metodelor bazate pe direcii admisibile
 Cazul specific - minimul se afl pe frontiera domeniului
admisibil metodele de cutare conin dou faze majore:



determinarea punctului iniial x0 din care demareaz cutarea i


care trebuie s se afle n interiorul sau pe frontiera domeniului S
cutarea propriu-zis - se fac deplasri succesive prin puncte
interioare sau pe frontier

Cutrile pe frontier se desfoar pn la





metodele de gradient redus folosesc deplasri pe frontier

ndeplinirea unui criteriu de stop care atest apropierea de x* sau


atingerea unei alte frontiere, cutarea continund n acelai mod

Deplasrile se efectueaz pe direcii admisibile




exemplu: deplasarea se face pe o direcie h dat de proiecia


vectorului -f(x) pe frontiera n cauz

4.2. Metode bazate pe direcii admisibile


pentru probleme cu restricii liniare
Principiul metodelor bazate pe direcii admisibile
f ( x )

C
1

h x
S

f(x) = ct.
g(x) =0
a

B
x

S
b

G
f ( x )

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare
Principiu





Restriciile se pot exprima sub forma Ax b 0, A R mxn , b R m


cu m>n i rang(A)=n restriciile sunt liniar independente
Fie I = i1 ,i 2 ,.......i p , p < m mulimea indicilor restriciilor active
Fie submatricea AI, format cu liniile i1,.... ip din A

Se presupune c fiecare submatrice AI a matricei A are rangul maxim


posibil p AIAIT nesingular

Proiecia vectorului gradient pe un subspaiu corespunztor


frontierei considerate se determin cu

x = PIf (x)

PI este matricea operatorului de proiecie ortogonal din Rn pe


subspaiul liniar { x: AIx=0 }

PI = I n A TI ( A I A TI ) 1 A I

(1)

subspaiul este paralel cu poliedrul dat de intersecia suprafeelor

g i (x) = 0, i I

(2)

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare


Dac x0, ne vom deplasa pe direcia - x cu un pas admisibil


nu trebuie s depeasc valoarea maxim m = { : x x S}

se poate alege un pas optim cu restricia *m adic


min f (x x) = f (x x)

0m

(3)

nu se recomand calcularea pasului optim ca la problemele fr


restricii, urmat de eventuala limitare la valoarea m, deoarece se
efectueaz un mare numr evaluri inutile ale funciei

(4)
Se stabilete noul punct x = x x
dac *<m , mulimea de lucru nu se schimb
dac *=m apar noi restricii active
o nou restricie activ implic g j ( x) = 0, j I
introducerea indicelui j n mulimea indicilor restriciilor active
presupune modificarea mulimii I, a submatricei AI i a operatorului de
protecie PI

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare


Dac x=0 gradientul se proiecteaz chiar n punctul x al


planului ce aparine frontierei acest plan este tangent la
suprafaa f(x)=const ce trece prin x este posibil ca x s fie chiar
punctul de minim cutat

(5)

se verific dac funcia nu poate fi micorat n continuare printr-o


deplasare strict admisibil n raport cu restriciile, deci se studiaz
semnul multiplicatorilor Lagrange

= ( A I A TI ) 1 A I f ( x) R p

PI = I n A TI ( A I A TI ) 1 A I

x = 0, f ( x) 0
x = PIf (x)

PI = 0

A TI = ( PI I n )f ( x)

f ( x ) + A TI = 0

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare
f ( x ) + ATI = 0

f ( x ) + Tgi ( x ) = 0, i I

Dac toate componentele vectorului sunt nenegative s-a stabilit


soluia problemei conform condiiei necesare de extrem KuhnTucker
Dac exist cel puin un i<0 nseamn c funcia f(x) mai poate fi
micorat printr-o deplasare admisibil n raport cu restricia i
restricia i nu este activ i trebuie scoas din mulimea indicilor I
Dac exist mai muli multiplicatori negativi, se va elimina doar
restricia ce corespunde celui mai negativ i
Nu se recomand eliminarea simultan a mai multor restricii,
deoarece, n astfel de cazuri, de multe ori se ntmpl ca o parte din
restricii s fie necesar a fi reintroduse n mulimea restriciilor active

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare
Algoritm
1. Pentru punctul considerat x se stabilete mulimea indicilor
restriciilor active I, apoi AI i se calculeaz PI cu (2) i x cu (1).
2. Dac x0, se determin pasul maxim admisibil i apoi se
stabilete pasul * din condiia (3). Se calculeaz noul punct x cu
(4).



Dac * < m se repet (2) din noul punct x.


Dac * = m se introduce o nou restricie n mulimea celor active i
se revine la pasul 1.

3. Dac x=0, se determin cu (5). Dac toate componentele i0,


STOP - punctul determinat x este punctul de minim.
4. Dac exist componente i<0, se elimin din mulimea restriciilor
active cea care corespunde valorii i celei mai mici i se revine la
pasul 1.

4.2.1. Metoda de gradient proiectat


pentru pb. cu restricii inegaliti liniare
Observaii


Mulimea I a indicilor restriciilor active i, drept consecin,


matricele AI i PI, se modific atunci cnd

este introdus o nou restricie: decizia apare la atingerea unei noi


frontiere, cnd s-a utilizat un pas * = m
este scoas una din restricii: decizia este luat n baza semnului
multiplicatorilor Lagrange Kuhn Tucker

Algoritmul descris trebuie precedat de o procedur de stabilire a


punctului de start care s se afle pe frontiera domeniului S

aceast subproblem se poate reformula ca una de optim:

f ( x ) = ( aTj x b j ),
jJ

J reprezint mulimea indicilor restriciilor nesatisfcute ntr-un punct x


f ( x ) = 0 n orice punct admisibil i f ( x ) > 0 n orice punct neadmisibil
Se poate determina un punct admisibil rezolvnd problema

min f ( x ) a Tj x b j 0, j J

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare
Aspecte generale
 Probleme cu restricii egalitate (PREN)
min { f (x) g i (x) = 0, i = 1,..., l}
x

Probleme cu restricii inegalitate (PRIN)


min { f (x) g i (x) 0, i = 1,..., m}
x

(1)

Mulimea indicilor restriciilor active






(2)

PREN: I (x) = {1,..., l}


PRIN: n fiecare punct doar anumite restricii sunt active se
sintetizeaz n vectorul g (x) , cu componentele g i ( x) , i I ( x) .
Probleme mixte: restriciile de tip egalitate se introduc permanent n
mulimea de lucru considerat

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare


Toate funciile care intervin au derivate de ordinul doi


continue
Notaii: ai (x) = gi (x) , G i (x) = 2 g i (x)
A(x) R m n - matricea jacobian a funciei vectoriale g(x), cu liniile a i (x)T




Notaii similare se vor folosi i pentru funciile g i ( x)


Presupunem c x* este punct de minim i c n acest punct
sunt ndeplinite condiiile de regularitate a restriciilor, adic
( x* ) are liniile liniar independente
A
Conform teoremei L-K-T, exist multiplicatorii i* , i I ( x* ) a..

( x)T = 0, pt. x = x* , = *
r ( x) + A


n cazul PRIN apare n plus condiia

i* > 0 , i I.

(3)

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare


Condiia suficient de extrem se rescrie sub forma

Z(x* )T H (x* , * )Z(x* ) > 0




(4)

H(.) este matricea hessian n raport cu x pentru funcia sintetic


Lagrange

(x, ) = f (x) + T g (x)




Z(x*) este o matrice ale crei coloane formeaz o baz pentru


( x* )
mulimea vectorilor ortogonali pe liniile lui A

( x* ) Z ( x* ) = 0
A
( x )T = 0
r (x) + A


Z(x* )T r (x* ) = 0

(5)

Vectorul Zr din (5) reprezint un gradient proiectat, iar matricea din


(4) este o matrice hessian proiectat

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare


Toate relaiile anterioare sunt valabile n punctul x* i sunt


ndeplinite cu o foarte bun precizie ntr-o mic vecintate a
acestui punct.
ntr-un punct ceva mai deprtat, toate elementele r, A, Z,
H se modific, ntruct sunt dependente de x.
O posibil cale de rezolvare - realizarea de liniarizri
succesive ale neliniaritilor.
n cazul restriciilor liniare, matricea A este constant
sunt constante toate submatricele i matricele Z asociate.
La problemele cu restricii liniare, condiia suficient de
minim se referea la hessianul H(x) al funciei f(x) i nu la
hessianul H al funciei sintetice deoarece, n acest caz,
H ( x) = H ( x)

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare


Exist metode de soluionare a PRN bazate pe liniarizri


ale restriciilor i utilizarea de direcii admisibile pentru
cutare



La PRN se efectueaz calcule suplimentare deoarece se


modific o serie de matrice la fiecare iteraie


se extind tehnicile de la problemele cu restricii liniare


cele mai folosite astfel de tehnici sunt cele de gradient proiectat i
extinderile acestora prin folosirea unor rezultate din algebra liniar

n astfel de situaii nu sunt posibile nici actualizri ale unor matrice

n rezolvarea unei probleme care admite soluie se poate


ajunge la o subproblem fr soluie



uneori este dificil de apreciat validitatea unei probleme sau


subprobleme
din acest motiv este indicat ca programele de calcul s prevad
oprirea la depirea unui numr prestabilit de iteraii

4.3. Proceduri bazate pe direcii


admisibile pentru pb. cu restricii neliniare
Principiul tehnicilor de tip gradient proiectat


Se realizeaz cutri pe frontiere ale domeniului S, definit de restricii,


se consider mereu subprobleme cu restricii egalitate pe anumite mulimi
de lucru

Deplasarea pe frontier se face prin dou deplasri de baz, n lungul


unor drepte:
o prim deplasare se face ntr-un plan tangent la frontier n punctul de
start al cutrii la iteraia respectiv; direcia de deplasare corespunde
proieciei gradientului pe planul respectiv sau este n strns legtur cu
aceasta
o a doua deplasare este necesar pentru a readuce punctul pe frontiera
domeniului, avnd n vedere c, de regul, deplasarea anterioar
conduce la un punct situat n afara domeniului S

Procedura prevede decizii de continuare sau modificare a mulimii de


lucru; introducerea sau scoaterea unei restricii se face n baza unor
criterii de acelai tip ca la restricii liniare:
atingerea unei noi frontiere,
multiplicator Lagrange negativ

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor


Se apeleaz la subprobleme cu restricii liniare, obinute n


urma liniarizrii restriciilor neliniare
Se utilizeaz uneori i anumite idei de baz ntlnite la
tehnicile de tip gradient redus, folosind proiectarea
gradientului funciei care se minimizeaz n cadrul
subproblemei
Nu se minimizeaz funcia obiectiv f(x), ci o funcie (x)
care s conduc spre aceeai soluie x*


Este posibil ca (x) s se modifice la fiecare iteraie k, n funcie de


restriciile din mulimea de lucru i de modificrile unor elemente
care apar n urma liniarizrilor n diverse puncte

Metodele din aceast categorie pot s evolueze convenabil


ctre soluie i prezint avantaje n cadrul problemelor de
mari dimensiuni

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor




Fie x k +1 = x k + p; p - deplasarea care urmeaz a se efectua


Funcia de minimizat se va exprima n raport cu p: k(p)
Algoritm:
1. Iniializare: se pune k = 0, se alege punctul de start x0 i valorile
unor parametri care intervin
2. Se soluioneaz subpb. cu restricii liniare min k (p), cu restriciile
p
obinute prin liniarizare
hi (x k ) + hiT (x k )p = 0, i = 1,..., l
gi (x k ) + g iT (x k )p 0, i = 1,..., m
i eventuale condiii suplimentare
3. Se stabilete noul punct xk+1
4. Dac p se reine soluia gsit. n caz contrar, se pune k=k+1
i se revine la etapa 2.

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor


Etapa 2 partea principal a algoritmului difer prin:






modul n care se alege funcia k(x)


procedura de soluionare a subproblemei
condiiile suplimentare care se impun

Alegerea funciei k(x)


T
k
 Aproximarea liniar a funciei f: k (p ) = f ( x )p



Avantaj: trebuie soluionat o problem de programare liniar (PL),


pentru care exist algoritmi foarte eficieni
Apar probleme legate de convergena procedurii: este posibil ca,
dac iniializarea x0 este relativ deprtat de x*, irul {xk} s nu se
apropie de x*

algoritmii trebuie s introduc o serie de condiii suplimentare menite


s asigure convergena procedurii

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor


1 T
Aproximarea ptratic a funciei f : k (p) = f (x )p + p H k p
2
T

Matricea Hk poate fi:





matricea unitate
matricea hessian pentru f(xk)
o aproximare a hessianului H a funciei sintetice Lagrange

Subproblema este de programare ptratic, pentru care exist


algoritmi eficieni
Alegnd direcii de deplasare Newton, viteza de convergen este
ridicat
Dei convergenta este ameliorat fa de cazul anterior, se
recomand i n acest caz apelarea la condiii suplimentare care
s asigure apropierea de soluie

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor


k(x) - oarecare, legat de funcia sintetic Lagrange


(x, ) = f (x) + T g (x)
g (x) - restriciile din mulimea de lucru considerat



Procedurile din aceast categorie se mai numesc de lagrangean


proiectat
Cel mai frecvent sunt ntlnite sub denumirea de tehnici secveniale
sau recursive:

SLP (sequential linear programming)


SQP (sequential quadratic programming)

Procedura de soluionare a subproblemei de la etapa 2


 Poate fi folosit oricare din tehnicile pentru PRIL (incluznd
i probleme cu restricii mixte)
 Pentru problemele SLP i SQP se pot folosi tehnici
generale, dar i tehnici specifice problemelor PL i PP

4.4. Metode bazate pe liniarizri


secveniale ale restriciilor
Condiii suplimentare - asigur convergena procedurii


limitarea, sub o anumit form a lungimii pasului;

introducerea unor funcii de penalizare de tipul celor prezentate n


subcapitolul 4.1

de multe ori aceasta se realizeaz apelnd la o tehnic a regiunii de


ncredere

se asigur astfel admisibilitatea n raport cu restriciile i o apropiere


suficient de x*, astfel nct procedura s fie convergent

utilizarea unor tehnici de filtrare

reprezint proceduri de optimizare multicriterial, prin care se


urmrete evoluia descendent a funciei i pstrarea admisibilitii,
fr a utiliza funcii de penalizare

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

TEHNICI PENTRU
PROBLEME DE
OPTIMIZARE
DINAMIC

1. PREZENTAREA GENERAL A
PROBLEMELOR DE OPTIMIZARE DINAMIC


Elemente ce definesc problemele de optimizare dinamic:







sistemul dinamic
indicele de calitate
diverse restricii
condiii etc.

Elementele unei probleme de optimizare dinamic




elemente de baz - intervin n formularea oricrei probleme de


optimizare i nu sunt reductibile ntre ele

sistemul dinamic
condiiile iniiale i finale
mulimea mrimilor de intrare (comenzilor) i de stare admisibile
criteriul de optimizare

elemente secundare - apar numai n anumite probleme de


optimizare i sunt reductibile la elementele de baz

1. PREZENTAREA GENERAL A
PROBLEMELOR DE OPTIMIZARE DINAMIC
1.1. Elementele de baz ale problemelor de
optimizare dinamic


Sistemul dinamic
x (t ) = f ( x (t ), u(t ), t )
y (t ) = g ( x (t ), u(t ), t )

(1)

x (t ) = [ x1 (t )...xn (t )]T X R n
y (t ) = [ y1 (t )... y p (t )]T Y R p
u(t ) = [u1 (t )...um (t )]T U R m



f i g sunt funcii vectoriale, care, n general, vor fi presupuse


continue i cu derivate pn la un anumit ordin continue
n expresiile funciilor f i g se pun n eviden uneori i mrimile
r
perturbatoare z (t ) R

1.1. Elementele de baz ale


problemelor de optimizare dinamic
Condiiile terminale (de capt)
 Condiiile iniiale


Momentul iniial t0
fixat la o valoare iniial t0T
liber n T (urmeaz a se determina prin rezolvarea problemei)

Starea iniial x0 = x(t0) X


fixat ntr-un punct al spaiului X
liber pe o submulime X0 X
complet liber n X i dac este necesar urmeaz a se determina
prin rezolvarea problemei

Cel mai frecvent, condiiile iniiale sunt precizate ( t0 i x0 sunt fixate)

1.1. Elementele de baz ale


problemelor de optimizare dinamic


Condiiile finale


Momentul final tf > t0


fixat la o valoare dat finit tf <
infinit
liber n T (urmeaz a se determina prin rezolvarea problemei)

Starea final xf = x(tf) X


fixat ntr-un punct al spaiului X
liber pe o submulime Xf X
complet liber n X i dac este necesar urmeaz a se determina
prin rezolvarea problemei

1.1. Elementele de baz ale


problemelor de optimizare dinamic
Restriciile impuse variabilelor de comand i de stare
 Restricii impuse variabilelor de comand


Comenzi admisibile - satisfac anumite restricii U


Aceste comenzi trebuie s asigure transferul din condiiile iniiale n
condiiile finale precizate sistemul trebuie s satisfac condiii de
controlabilitate i tangibilitate

D.p.d.v. al restriciilor impuse mrimilor de comand


Probleme fr restricii
mulimea U este deschis de obicei coincide cu Rm; se consider de
regul comenzi uj(t), j=1,...,m continue i derivabile n intervalul [t0,tf]T

Probleme cu restricii
mulimea U este nchis
n problemele de optimizare comenzile uj(t) sunt netede pe poriuni n
intervalul [t0,tf], cu excepia eventual a unui numr finit de puncte n care
funciile sau derivatele au discontinuiti finite (de spea I-a)

1.1. Elementele de baz ale


problemelor de optimizare dinamic


n cazuri mai generale se admit i funcii uj(t) crora li se impune


doar s fie msurabile pe [t0,tf],
Se admit i funcii generalizate
distribuia Dirac i derivatele ei

Restriciile impuse variabilelor de stare





Probleme fr restricii - mulimea X poate acoperi ntregul spaiul


Rn
Probleme cu restricii - X este o mulime nchis sau deschis,
inclus n Rn

1.1. Elementele de baz ale


problemelor de optimizare dinamic
Criteriul de optimizare


Elementele precizate determin o familie de traiectorii admisibile


x (t ) = ( x 0 , t0 , u(t ), t ), soluii ale ecuaiei sistemului, cu uU

Fiecrei traiectorii i se poate ataa un numr, un indice de performan


(calitate) (criteriu)
tf

I0 =

0
f
L
x
(
t
),
u
(
t
),
t
dt
+
M
(
t
,
x
,
t
,
x
)
(
)
0 0
f
0

(2)

t0






Indicele I0 ia o anumit valoare numeric, funcie de traiectorie


Dac I0 admite pe U unul sau mai multe extreme, atunci se poate formula
corect o problem de optimizare
Funciile L0 i M0 - continue i derivabile n raport cu toate argumentele
Clasificare
probleme de tip Lagrange (de tip L) pentru L0 / 0 i M 0 0
probleme de tip Mayer (de tip M) pentru L0 0 i M 0 / 0
probleme de tip Bolza (de tip B) pentru L0 / 0 i M 0 / 0

1.2. Formularea problemelor




Varietatea mare a elementelor de baz numr mare de


probleme de optimizare
Exemple de combinaii imposibile


problemele cu condiii iniiale i finale fixate nu sunt compatibile cu


indici de performan de tip M sau B
condiia final cu tf = i xf liber pe o submulime sau complet liber
nu poate interveni n probleme de tip L sau B
pentru xf fixat ntr-un punct trebuie introduse condiii care asigur
convergena integralei din criteriu

pentru L0 1 i M0 0 (sau echivalent, L0 0, M0 = tf - t0) avem o


problem de timp minim
admite soluii numai dac se impun restricii asupra variabilelor de
comand sau de stare

1.2. Formularea problemelor






Traiectoria depinde de comanda u(t) I 0 = J ( x 0 , u(t ))


Dac x0 este fixat I 0 = J ( u)
ntr-o problem de optimizare se cere determinarea
comenzilor u*(t) care extremizeaz indicele de performan
I0=J(u) pe mulimea U


n problemele de minim se cere comanda u* pentru care

I 0* = I 0 (u* ) I 0 (u), u U


n problemele de maxim se cere comanda u* pentru care

I 0* = I 0 (u* ) I 0 (u), u U


o problem de maxim poate fi transformat ntr-una de minim


adoptnd -I0 n loc de I0

1.2. Formularea problemelor




Aspect fundamental - existena i unicitatea soluiilor




Majoritatea metodelor conduc de obicei ctre extreme locale




Formularea unor condiii generale de existen i unicitate pentru


soluiile optime este extrem de dificil se urmresc astfel de condiii
pentru clase de probleme
se utilizeaz apoi procedee de stabilire a extremului absolut

n funcie de cerinele problemei sau de metodele de rezolvare


comanda optim u* se obine n una din formele


comand optimal n circuit deschis - u*(t)


probleme de comand optimal, sau probleme de optimizare n circuit
deschis

comand optimal n circuit nchis - u*(t)=v*(x*(t),t) sau u*(t)=w*(y*(t),t)


probleme de comand optimal n circuit nchis sau de conducere optimal
(control optimal)
problema deducerii unei astfel de comenzi se mai numete de sintez
optimal

1.2. Formularea problemelor


Formularea general a problemei de optimizare dinamic
S se determine comanda optim n circuit deschis u*(t)
sau n circuit nchis u*(t)=v*(x*(t),t) sau u*(t)=w*(y*(t),t),
care transfer sistemul (1) din condiiile iniiale n condiiile
finale precizate, cu respectarea restriciilor asupra
variabilelor de comand i de stare, astfel nct s fie
extremizat indicele de performan (2).

1.3.Elemente secundare n pb. de opt.


i reducerea lor la elemente de baz
Legturi i restricii funcionale
I k 0, k = 1,..., r ,
 Restricii perimetrice
 Legturile izoperimetrice I k = 0, k = r + 1,..., s,

(3)
(4)

tf

Ik =

0
f
L
(
x
(
t
),
u
(
t
),
t
)
dt
+
M
(
t
,
x
,
t
,
x
), k = 1,..., s
k 0
f
k

(5)

t0


funciile Lk i Mk - continue i derivabile

Observaie


condiiile perimetrice Ik i criteriul I0 sunt duale - oricare funcional


Ik, sau combinaii liniare ale acestora pot lua locul lui I0, care devine
condiie izoperimetric

1.3.Elemente secundare n pb. de opt.


i reducerea lor la elemente de baz


Reducerea la elementele de baz


t

xn+ k (t ) = Lk ( x ( ), u( ), )d , k = 1,..., s

(6)

t0

x n+ k (t ) = Lk ( x (t ), u(t ), t )

cu condiiile iniiale
i finale

xn+ k (t0 ) = 0, k = 1,..., s

xn+ k (t f ) M k (t0 , x 0 , t f , x f ), k = 1,..., r

xn+ k (t f ) = M k (t0 , x 0 , t f , x f ), k = r + 1,..., s






(7)
(8)
(9)
(10)

condiiile (8) sunt cu stare iniial fixat i cu moment iniial fixat sau
liber
condiiile finale (9) sunt cu stare final liber pe o submulime
condiiile finale (10) sunt de acelai tip cu condiiile finale de baz

1.3.Elemente secundare n pb. de opt.


i reducerea lor la elemente de baz
Legturi i restricii de tip funcie

hk ( x (t ), u(t ), t ) = 0, k = 1,..., p

(11)

hk ( x (t ), u(t ), t ) 0, k = p + 1,..., q

(12)

hk : X U T R


- funcii presupuse continuu derivabile


n raport cu toate argumentele

Dac n (11) i (12) vectorii u i x sunt separabili, atunci


condiiile respective sunt reductibile la restricii de tipul
celor menionate n subcapitolul 1.1

1.3.Elemente secundare n pb. de opt.


i reducerea lor la elemente de baz
Condiii parametrice
 Elementele de baz sau secundare pot fi afectate de
parametrii w = [ w1....w p ]T W R p
 Parametrii rmn neschimbai pe [t0, tf]


au rolul unor elemente de acordare iniial a sistemului

Fiecrui parametru wW i corespunde






o comand optim u*(w,t)


o traiectorie optim x*(w,t)
o valoare optim a indicelui de performan I*(w)

I ** = min I * ( w ) = I * ( w * )
wW

(13)

Parametrii w au rolul unor comenzi n W


wi = um +i (t ) = const., t [t0 , t f ], i = 1,..., p

(14)

1.3.Elemente secundare n pb. de opt.


i reducerea lor la elemente de baz


Parametrii wi pot fi interpretai i ca noi variabile de stare,


pentru care se formeaz ecuaiile difereniale

w i (t ) = 0, i = 1,..., p


Problema parametric este ntotdeauna cu condiii iniiale


i finale libere, cel puin n raport cu w


(15)

aceste condiii de capt se determin din condiiile specifice de


optimalitate

Parametrii w rmn constani n intervalul de optimizare,


dar depind de acest interval


dac optimizarea se face pe subintervale, parametrii w se pot


modifica de la un subinterval la altul o poriune dintr-o
traiectorie optimal nu este neaprat optimal

1.4. Reducerea i echivalena


problemelor de optimizare
Reducerea problemelor tip L i B la probleme tip M
 Problem de tip Lagrange - se introduce variabila de stare
t

x0 (t ) = L( x ( ), u( ), )d
t0


x0 (t ) = L( x (t ), u(t ), t )
x0 (t0 ) = x00 = 0, x0 (t f ) = x0f

Problema const n extremizarea noii stri finale I = min x0 care


este o problem de tip M, cu M = x0f

Problem de tip Bolza - noua funcie M este

M B = M L + M = x0f + M (t0 , x 0 , t f , x f )

1.4. Reducerea i echivalena


problemelor de optimizare
Reducerea problemelor de tip M i B la probleme de tip L
 Problem de tip Mayer - se introduc o nou variabil de
stare i una de comand

xn +1 (t ) = um+1 (t )

xn+1 (t0 ) = 0
xn+1 (t f ) = M (t0 , x 0 , t f , x f )
tf

Criteriul se poate scrie

I=

um+1 (t )dt
t0

Problem de tip Bolza


tf

I=

L ( x (t ), u(t ), t ) + um+1 (t ) dt

t0

1.4. Reducerea i echivalena


problemelor de optimizare
Reducerea problemelor de tip L la problema timpului
minim
 Problema timpului minim: se impune minimizarea diferenei

t f t0


O problem de tip Lagrange poate fi redus la problema


timpului minim, nlocuind variabila t prin

d = L ( x (t ), u(t ), t ) dt

I=

tf

t0

L ( x (t ), u(t ), t ) dt = d = f 0

1.4. Reducerea i echivalena


problemelor de optimizare
Alte reduceri posibile
 Reducerea problemelor variante la probleme invariante se poate realiza prin introducerea unei noi variabile de
stare xn +1 (t ) = t
 Reducerea problemelor de moment final liber la probleme
cu moment final fixat
 Reducerea mulimii U la mulimea X i invers, a mulimii X
la U, prin parametrizri corespunztoare


cea de a doua reducere transform problema de optimizare


dinamic ntr-o problem de programare matematic

1.5. Probleme uzuale de optimizare


Problema timpului minim
 Se impune minimizarea timpului de transfer tf-t0 a
sistemului (1) din starea iniial x0 n starea final xf

I = M (t 0 , t f ) = t f t 0

tf

sau

I=

L( x, u)dt = dt = t f t0
t0

tf

t0

Observaii referitoare la condiiile de capt





t0 < tf < i cel puin unul din momentele t0 i tf (de obicei tf) este
liber
starea iniial x0 i final xf pot fi fixate sau libere pe mulimi nchise
X0, respectiv Xf

1.5. Probleme uzuale de optimizare




n formularea problemei trebuie impuse restricii comenzii


sau strii



Dac nu se impun restricii asupra variabilelor de stare, mulimea U


este cu necesitate nchis
Problema are sens dac exist cel puin o comand admisibil
u(t)U care asigur tangibilitatea strii finale xf din starea iniial x0

Forme de nchidere pentru mulimea U




paralelipipedul: ai ui(t) bi, i=1,m


n particular, pentru ai=-bi=b se obine un cub n jurul originii, cu
muchiile paralele cu axele de coordonate i egale cu 2b





sfera: u r > 0
cilindrul - combinaie de restricii paralelipipedice i sferice de
variabile separate t f

restricii de forma u(t ) dt m > 0


t0

1.5. Probleme uzuale de optimizare


Problema consumului minim de combustibil
 Se cere determinarea comenzilor u(t) care transfer
sistemul din x0 n xf cu un consum minim de combustibil
 Se pot impune sau nu restricii asupra comenzii sau strii


De regul, se introduc restricii asupra variabilelor de comand


tf

Criteriul de performan este de forma I = (t )dt


t0

(t ) = (u1 (t ),..., um (t )) 0 - consumul n unitatea de timp




Pentru o mare varietate de consumatori:


m

(t ) = c j u j (t )

sau

j =1
(cj>0 semnificaia de consum specific)

(t ) = c u(t ) , c > 0, > 0


(=2 - criteriu de energie minim)

1.5. Probleme uzuale de optimizare




Strile iniiale i finale pot fi fixate sau libere pe submulimi


nchise din X
Observaii referitoare la momentele t0 i tf







pentru t0 dat, momentul final tf este liber i valoarea sa tf* urmeaz


a se determina din condiia de minim pentru indicele de calitate;
momentul final poate avea o valoare finit tf tf*;
momentul final trebuie s fie mai mic dect o valoare de referin
tf0 tf*;
se minimizeaz tf din condiiile limitrii consumului de combustibil;
se minimizeaz un indice de calitate combinat
tf

I=

( K + (t ))dt

t0

unde K > 0 exprim ponderea timpului minim n comparaie cu


consumul de combustibil minim.

1.5. Probleme uzuale de optimizare


Problema erorii medii minime
 Se consider un sistem automat monovariabil, pentru care
se definete eroarea (t ) = yi y (t )
(t)

(t)

I = (t ) dt
0

(16)

1.5. Probleme uzuale de optimizare




n loc de (16) se folosesc indici de forma

I = (t ) dt

sau

Valoarea indicilor (17) este influenat mai ales de comportarea


sistemului n perioada iniial a regimului tranzitoriu

Pentru a egaliza ct mai mult influenele perioadelor


regimului tranzitoriu, se introduce o pondere n timp (de
obicei liniar sau ptratic)

I = t 2 (t )dt

sau

(17)

I = 2 (t )dt

I = t 2 2 (t )dt

(18)

n cazul sistemelor multivariabile

I = T (t )Q (t ) (t )dt
0

sau

I = x T (t )Q (t ) x (t )dt
0

(19)

1.5. Probleme uzuale de optimizare


Problema cons. minim de energie i a erorii medii minime
 Se consider un consumator alimentat de la o reea
electric, care absoarbe un curent u(t)
tf

I=

(20)

2
u
(t )dt
t0

Pentru sisteme cu mai multe variabile de comand

I = uT (t ) P (t )u(t )dt

(21)

Forma general a indicelui de calitate


tf

I=

1 T
1
x (t f ) Sx (t f ) + [ xT (t )Q (t ) x (t ) + uT (t ) P (t )u(t ) +
2
2t
0

+ x (t ) N (t )u(t ) + u (t ) N T (t ) x (t )]dt ,
T

1.5. Probleme uzuale de optimizare


Problema controlului terminal - problem de tip Mayer care
include
0
I
=
M
(
t
,
x
)
 problema controlului iniial
0
I = M (t f , x f )
 problema controlului final
0
f
 problem de control terminal I = M (t0 , x , t f , x )
 O problem de tip Bolza conine o problem de control
terminal
 De obicei apar restricii asupra variabilelor de comand i,
uneori, asupra variabilelor de stare
 n unele probleme apar i restricii suplimentare de tip
funcie sau funcionale, de exemplu, de tipul limitrii
consumului de combustibil sau energie

1.5. Probleme uzuale de optimizare


Probleme de minimizare a cheltuielilor
 Se impune ca funcionarea unui proces s se desfoare
de aa manier a.. cheltuielile de funcionare i exploatare
s fie minime (sau beneficiul s fie maxim)
 Indicele de calitate (funcia de cost) ine seama n mod
global de mai muli factori care intervin n valoarea
cheltuielilor totale, el avnd forma general (2)
 n astfel de cazuri, considerarea unui singur indice
particular, de tipul celor prezentai, nu este suficient din
punct de vedere economic

1.5. Probleme uzuale de optimizare




Pentru stabilirea funciei de cost a unei instalaii, se pot lua


n considerare urmtoarele aspecte:


productivitatea instalaiei este cu att mai mare cu ct procesul se


desfoar mai rapid timpii corespunztori diferitelor etape de
lucru sunt mai mici, iar ncrcrile n diferite regimuri de lucru sunt
mai mari
uzura instalaiei, deci i cheltuielile de exploatare cresc odat cu
viteza de desfurare a procesului i cu gradul de ncrcare a
instalaiei (cerin evident contradictorie cu prima), cum se ntmpl
la mainile unelte, laminoare etc.
fiecrui mod de desfurare a procesului i este specific un anumit
consum energetic
Pentru funcionarea optim se poate considera o funcie de cost
care sumeaz cheltuielile corespunztoare fiecruia din factorii
menionai

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2. METODE VARIAIONALE CLASICE




Metodele clasice de rezolvare a problemelor de optimizare


au la baz algoritmul Euler Lagrange pentru problemele
variaionale
Algoritmul Euler Lagrange poate fi utilizat n rezolvarea
problemelor de optimizare



aplicarea este, n general, dificil n cazul problemelor cu restricii


n cazul problemelor cu restricii sunt mai utile metodele variaionale
moderne
au la baz principiul minimului i principiul optimalitii - metode strns
legate de rezultatele obinute n cadrul calculului variaional, fiind o
extindere a acestora

2.1. Metode pentru rezolvarea


problemelor variaionale


Se cere determinarea funciei x(t) care extremizeaz


integrala
tf

I=

L( x (t ), x (t ), t )dt , x =
t0

dx
dt

(1)

Se consider iniial c funcia L depinde de o singur


variabil dependent, adic x(t ) R
L are derivate de ordinul al doilea continue n raport cu
x(t ) este continu n intervalul [t0 , t f ]
toate argumentele, iar

2.1.1. Mrimi variaionale




Fie x variaia lui x(t ) - creterea lui x pentru t fixat

x = (t ), x = (t )
d
d
dx(t )

( x) = (t ) = (t ) =
dt
dt
dt

(2)

- operatorii i d/dt comut

(3)

Se pune problema determinrii modificrii funciei L, dar mai ales


a funcionalei I atunci cnd x variaz cu x
x + x = x + (t )

Creterea funcionalei I este


tf

I ( ) = I ( ) I =

L( x + , x + , t )dt L( x, x, t )dt
t0

tf

t0

(4)

dI ( )
2 d 2 I ( )
+
+ ... (5)
Se dezvolt n serie Taylor I ( ) =
2
d =0 2! d =0

2.1.1. Mrimi variaionale




Se noteaz
- prima variaie a funcionalei

dI ( )
I ( ) =
d =0

2 2
d I ( )

- a doua variaie a funcionalei 2 I ( ) =


2! d 2 =0
I ( ) = I ( ) + 2 I ( ) + ...



(6)

(7)
(8)

(9)
Pentru foarte mic I ( ) I ( )
Dac pentru un anumit x(t) funcionala I atinge minimul la = 0
atunci, ntr-o vecintate, creterea trebuie s fie pozitiv
dI ( )

0
d =0
dI ( )
(10)
= 0 sau I ( ) = 0
Condiia necesar de minim
d =0

2.1.2. Algoritmul Euler Lagrange


Se consider problema anterioar cu condiii de capt fixate

x =
x

x(t ) = x* +

tf

I ( ) =

(t0 ) = (t f )

x (t )

*
*

L
(
x
+

,
x
+ , t )dt

t0

tf

dI
L
L

= *
+

dt
*
d t ( x + )
( x + )

x* (t ) extremal
tf

t0

dI
d

tf

tf

=0

tf

L( x* , x* , t )
L( x* , x* , t )
=
+
dt = 0
*
*
x
x

t0
tf

L
L
d L
d L

dt
=

dt
=

dt

*
dt

x*
x* t0 t dt x*

x
t
0

I =

dI

tf

=0

L d L
= *
(t )dt = 0
*
x dt x
t0

2.1.2. Algoritmul Euler Lagrange


Lema fundamental a calculului variaional
Fie f (t ) o funcie difereniabil pe [t0 , t f ] i (t ) o funcie continu pe
acelai interval, cu

(t0 ) = (t f ) = 0
tf

Dac I =

f (t ) (t )dt = 0
t0

pe intervalul [t0 , t f ]

pentru orice (t ) atunci f (t ) 0

2.1.2. Algoritmul Euler Lagrange


dI
I =

tf

=0

L d L
= *
(t )dt = 0 pentru orice (t )
*
x dt x
t0

L( x, x , t ) d L( x, x , t )

= 0 - condiia necesar de extrem (Euler) (11)


x
dt
x

2L
2L
2 L L

x (t ) +
x (t ) +

=0
xx
xx
xt x
Ecuaia Euler se generalizeaz i pentru
integrale cu mai multe variabile independente
integrale care conin derivate de ordin superior
integrale cu mai multe variabile dependente

(12)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi de tip funcie


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus

h(t , x (t )) = 0, h R p , p < n


Se construiete funcia sintetic

F ( x , x , , t ) = L( x , x , t ) + T (t ) h( x , t )


(13)

(14)

Condiia necesar de extrem Euler Lagrange

F d F

=0
*
*
x dt x
ecuaie de aceeai form cu (11), scris ns pentru F
ecuaia Euler Lagrange a funciei F n raport cu variabila conduce la
legturile (13)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi izoperimetrice


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus
tf

f ( x , x , t )dt = k , k R p , f R p

(15)

t0


Problema poate fi redus la cea cu legturi de tip funcie prin


introducerea variabilei p-dimensionale
tf

x0 (t ) =

f ( x, x , t )dt , x0 (t ) R p

x 0 (t ) = f ( x , x , t )

(16)

t0


Formm funcia sintetic

F ( x, x , , t ) = L( x, x , t ) + T [ f ( x, x , t ) x 0 (t )]

(17)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange


Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x

F d F L f
d L f

=
+ T + T
x dt x x x
dt x x


= 0

Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x0

d
(t ) = 0 (t ) = const.
dt


(18)

(19)

Ecuaia Euler Lagrange n raport cu variabila x0 ofer doar (19)


se poate renuna la x0 din expresia lui F, obinnd astfel o alt
funcie sintetic

H ( x , x , , t ) = L( x , x , t ) + T f ( x , x , t )
funcia sintetic a lui Hamilton (Hamiltonian)

(20)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se consider sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R n , t [t0 , t f ] R

(21)

Se cere s se determine comanda u(t) care minimizeaz


indicele de performan
tf

I=

L( x (t ), u(t ), t )dt ,

(22)

t0

variabilele x(t) i u(t) fiind legate prin ecuaia (21) a sistemului,


condiiile iniiale i respectiv finale fiind fixate
problema se poate reformula ca o cerin de minimizare a
funcionalei (22) cu legtura suplimentar (21) impus de sistem
h( x , x , u, t ) = x f ( x , u, t ) = 0

(23)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se formeaz funcia sintetic

F ( x, x , , u, t ) = L( x, u, t ) + T (t )[ f ( x, u, t ) x ], R n

(24)

Obs.: (21) x (t ) = f ( x ( ), u( ), )d se putea formula problema


t0

ca una de extremizare a funcionalei (40) cu o condiie izoperimetric

Se introduce hamiltonianul
H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )
(24)+(25)

F ( x , x , u, , t ) = H ( x , u, , t ) T (t ) x (t )

(25)
(26)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Ecuaiile EL pentru funcia sintetic F n raport cu u, x i

F d F

=0

u dt u
F d F

=0
x dt x
F d F

=0

dt

H
= 0 - condiia necesar de extrem
*
u

(27)

H
* (t )
=

x*

(28)

H
*

=
x
(t )
*

- ecuaiile canonice
ale lui Hamilton
(29)

2.2. Probleme de conducere optimal


cu condiii terminale fixate
dH H
H
H H

= T x+ T u+ T +
dt x
t
u

dH H
=
dt
t
dH
Pentru problemele invariante
=0
dt
H ( x , u, ) este constant pe traiectoria extremal
Pe traiectoria extremal

Modalitate de rezolvare a ecuaiilor (27)-(29) ?

(30)

(31)
(32)

2.3. Probleme de conducere optimal cu


condiii terminale libere i semilibere
2.3.1. Probleme cu condiii finale libere


Se cere determinarea comenzii optimale u* (t ) , care transfer


sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R m

(33)

f
din condiiile iniiale x (t0 ) fixate ntr-o stare final x = x (t f ) liber
n R n , cu t f > t0 liber, astfel nct s se minimizeze criteriul
tf

I = M (t f , x f ) +

L( x(t ), u(t ), t )dt


t0

Nu se impun restricii asupra strii i comenzii

(34)

2.3.1. Probleme cu condiii finale libere


tf

I = M (t f , x f ) + [ H ( x , u, , t ) T (t ) x (t )]dt
t0
tf

H ( x, u, , t )dt (t ) x (t )

I = M (t f , x ) +
f

t0


tf
t0

(35)
tf

T (t ) x (t )dt

(36)

t0

Se consider o variaie u fa de comanda optimal u*(t)


variaiile x,
, tf, xf, I (t0=0, x0=0)
Se impune condiia necesar de extrem I=0 i avnd n vedere
c tf i xf sunt oarecare rezult:



satisfacerea ecuaiilor lui Hamilton (27, 28, 29)


satisfacerea condiiilor de transversalitate

M (t f , x f )
x f
M (t f , x f )
t f

= * (t f )
+ H ( x* (t f ), u* (t f ), * (t f ), t f ) = 0

(37)

(38)

2.3.2. Probleme cu stri terminale libere


pe o submulime
Starea final pe o traiectorie dat


Se consider problema de la 2.3.1 dar se impune ca

x f = g (t f )

(39)

Condiiile de transversalitate (37), (38) sunt nlocuite de


T

M (t f , x )

M
(
t
,
x
) *
f
*
*
*
+ H [ x (t f ), u (t f ), (t f ), t f ] +
(t f ) g (t f ) = 0 (40)
f
t f
x

2.3.2. Probleme cu stri terminale libere


pe o submulime
Strile terminale libere pe suprafee date


Se consider problema de la 2.3.1. dar se impune ca x(t0)X0 i


x(tf)Xf

X 0 definit de I ( x , t ) = 0; I are dim. q0

(41)

X f definit de F ( x , t ) = 0; F are dim. q1

(42)

tf

I ' = I T I ( x, t )

t =t0

+ T F ( x, t )

t =t f

= L( x, u, t )dt + M '(t0 , x0 , t f , x f ) (43)


t0

M '(t0 , x , t f , x ) = M (t0 , x , t f , x ) T I ( x , t )
0

M
(t0 ) =
x

M
(t f ) =
x

x , t0

x ,tf

I
+ T
x

x , t0

F
+ T
x

x ,tf

t = t0

+ T F ( x, t )

t =t f

(44)
(45)

condiiile de transversalitate
(46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare
1. n problemele cu condiii terminale fixate nu apar condiii de
transversalitate
2. n problemele cu momente terminale t0 i tf libere i stri terminale x0
i xf fixate apar condiii de transversalitate referitoare la aceste
momente (relaia (38) i similar acesteia pentru t0)
3. n problemele cu momente terminale t0 i tf fixate i stri terminale x0
i xf libere apar condiii de transversalitate referitoare la aceste stri
(relaia (37) i similara acesteia pentru x0)
4. n problemele cu momente i stri terminale libere apar ambele tipuri
de condiii de transversalitate precizate la 2. i 3.
5. n problemele cu t0 i x0 fixai, tf liber i xf fixat pe o curb, condiia de
transversalitate este (40); o condiie similar se poate scrie i pentru
captul iniial
6. n problemele cu t0 i tf fixai, x0 i xf libere pe anumite suprafee,
condiiile de transversalitate sunt de forma (45) i (46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare


La captul unde starea x(t) este liber, costarea (t) este


fixat, iar la captul unde starea x(t) este fixat, costarea (t)
este liber


Aceast situaie poate s apar doar n legtur cu anumite


variabile de stare, fr s se extind asupra ntregului vector de
stare x(t)

Specific n astfel de probleme este faptul c




unele variabile se pot fixa la ambele capete ale traiectoriei i


atunci se spune c avem o problem bilocal n raport cu
aceste variabile
alte variabile nu se fixeaz la nici un capt, ceea ce determin
fixarea multiplicatorilor la capete i avem o problem bilocal
n raport cu aceti multiplicatori

2.4. Condiii necesare i suficiente de


extrem



Satisfacerea ecuaiilor Euler Lagrange nu asigur n mod obligatoriu


extremizarea funcionalei
Ecuaiile i condiiile de transversalitate



n mulimea comenzilor admisibile


Nu orice soluie a acestor ecuaii determin o traiectorie extremal





uneori, considerente fizice conduc la concluzia c problema admite o


singur extremal i c aceasta reprezint traiectoria optim cutat

Condiiile suficiente de extrem se refer la extreme locale, deci nu


garanteaz c extremul obinut este absolut


din mulimea traiectoriilor extremale trebuie aleas cea optim, care


asigur minimul global

n general problema existenei i unicitii extremalei este dificil




nu admit nici o soluie


admit o soluie
admit mai multe soluii

cunoscnd toate extremele de pe mulimea traiectoriilor admise, separarea


extremului absolut nu prezint dificulti deosebite

Calculul variaional clasic ofer o serie de condiii necesare de extrem,


toate acestea la un loc formnd condiia suficient de extrem

2.4. Condiii necesare i suficiente de


extrem
a) Condiii Euler Lagrange - subcapitolul 2.1 pentru problemele
variaionale i 2.2 pentru problemele de comand optimal
b) Condiii de transversalitate subcapitolul 2.3 problemele de comand
optimal
c) Condiia Legendre


probleme variaionale cu condiii de capt fixate

xR :

2L
0
2
x

2L
2L

1 n
1 1
2

0
=
x Rn :
T
x x
2

2
L L
x x
xn xn
n 1

(47)

(48)

2.4. Condiii necesare i suficiente de


extrem


probleme de conducere optimal de tip Bolza cu condiii iniiale fixate


*

H
(i )
=0
u
*

2H
(ii ) 2 > 0
u
2H 2H
2

u
x

0
(iii )
2
2
H H

2
x
u

u
2H
0
(iv)
2
x
2M
0
2
x f

(49)

2.4. Condiii necesare i suficiente de


extrem
d) Condiia suficient Jacobi-Legendre
e) Condiia Weierstrass
f) Condiia Erdman-Weierstrass
Observaii:






Condiiile de extrem (a)...(f) sunt toate condiii necesare. Ansamblul


acestor condiii ofer condiia suficient de extrem
n anumite probleme nu trebuie considerate toate condiiile (a...f) pentru a
verifica suficiena
Pentru verificarea suficienei trebuie utilizate toate cele ase condiii de
extrem numai n cazul folosirii formelor mai puin restrictive ale acestora
Se pot folosi n afar de (a) doar condiiile Jacobi i Legendre, dac
aceasta din urm este verificat strict
n problemele de conducere optimal se poate apela doar la condiia
Legendre extins sub forma relaiilor (49)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2.5. Metode variaionale clasice de


optimizare n cazul discret


Forma discret a metodelor variaionale este important


deoarece permite



tratarea problemelor de optimizare n cazul discret


o abordare numeric a acestor probleme n cazul sistemelor
continue discretizate.

Ca i n cazul continuu, se vor prezenta iniial problemele


variaionale propriu-zise, iar apoi cele de control optimal

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.1. Algoritmul Euler Lagrange discret


Se consider echivalentul discret al funcionalei din cazul


continuu

I=

k f 1

k f 1

L( x (k ), x (k + 1), k ) = Lk

k = k0

k = k0

x ( k ) = x (tk ), x ( k0 ) = x (t0 ), x ( k f ) = x (t f )

tk


- valorile discrete ale timpului

Se consider cuantificarea n timp cu pas constant, deci

x(k ) = x(kT )
T - perioada de eantionare

(1)

2.5.1. Algoritmul Euler Lagrange


discret


Se pleac de la variaiile funciei fa de traiectoria extremal x*

x ( k ) = x * ( k ) + x ( k )
x (k + 1) = x (k + 1) + x ( k +1)
*

(2)

x (k ) = x ( k )
x ( k + 1) = x ( k +1)
x ( k0 ) = x ( k f ) = 0


(3)

Condiiile (3) sunt impuse de fixarea valorilor funciei x la capetele


intervalului

x ( k0 ) = x 0
x (k f ) = x f

2.5.1. Algoritmul Euler Lagrange


discret


Condiia de extrem

k f 1

Lk

Lk
, x(k+1) = 0 (5)
= 0 * , x(k) + *
x (k +1)
k =k0 x (k)

=0
k f 1
T
Lk
Lk
T
(6)

I
=

x
(
k
)
+

x
(
k
+
1)

=0
*
*
x ( k )
x (k + 1)
k = k0
k f 1
kf
L (x(k), x(k +1), k)
L(x(m1), x(m), m1)
k m 1 xT (k +1) k
= xT (m)
x(k +1)
x(m)
k=k0
m=k0+1

I
(4) I = 0 sau

Se revine la notaia k, punnd m = k i reinnd n cadrul sumei numai


termenii ntre k0 i kf-1
k f 1

k 1

f
L
L( x (k 1), x (k ), k 1)
T
T
+
x (k + 1) x (k + 1) = x (k )
x (k )
k = k0
k = k0

k =k f

L( x (k 1), x (k ), k 1)
+ x (k )
x (k )
k =k
T

(7)

2.5.1. Algoritmul Euler Lagrange


discret


(6) + (7)
k f 1

L( x ( k ), x (k + 1), k ) L( x (k 1), x (k ), k 1)
+
+
x (k )

x (k )
x (k )

k = k0
T

+ xT (k )

k =k f

(8)

L( x (k 1), x ( k ), k 1)
=0
x (k )
k =k
0

Termenul al doilea din (8) se anuleaz conform condiiilor (3), sau, n


lui
problemele n care aceste condiii nu sunt ndeplinite, anularea
conduce la condiiile de transversalitate
Primul termen din (8) se anuleaz pentru x(k) oarecare dac

L( x (k ), x (k + 1), k ) L( x (k 1), x (k ), k 1)
+
=0
x (k )
x (k )

ecuaia
Euler Lagrange

(9)

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.2. Condiii de extrem n problemele de conducere
optimal discret


Sistemul

x (k + 1) = f ( x ( k ), u(k ), k ), k = k0 ,..., k f 1, x (k ) R n , u(k ) R m (10)





Condiii iniiale i finale libere


Indicele de calitate

I =M


k =k f
( x ( k ), k ) k = k
0

k f 1

L( x (k ), u(k ), k ),

(11)

k = k0

Hamiltonianul

H ( x (k ), u(k ), ( k + 1), k ) =
= L( x (k ), u(k ), k ) + T (k + 1) f ( x (k ), u(k ), k ), (k ) R n

(12)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret


Pentru simplificare se consider problemele invariante

I =M


k =k f
( x(k )) k =k
0

k f 1

T
[
H
(
x
(
k
),
u
(
k
),

(
k
+
1))

(k + 1) f ( x(k ), u(k ))] (13)

k =k0

Se consider c o variaie u( k ) = ( k ) fa de comanda optimal


produce variaiile
x (k ) = (k ), x (k + 1) = (k + 1), (k + 1) = (k + 1)
fa de starea optimal i costarea optimal i, n final, variaia
indicelui de calitate I
(4) +(13)

T (k f )

M (k f )
x(k f )

T (k0 )

k f 1

M (k0 )
H (k ) T H (k )
+ [T (k )
+ (k )
+
x(k0 ) k =k0
x(k )
u(k )

k 1

f
H (k )
T
] [ T (k +1)(k + 1) + T (k +1) x(k +1)] = 0
+ (k +1)
(k + 1) k =k0

(14)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret
k f 1

T ( k + 1)(k + 1) =

k = k0

kf

T (k )(k ) =

k = k0 +1

= T (k f )(k f ) T ( k0 )(k0 ) +


(14) + (15)

(15)

k f 1

T (k )(k )

k = k0

M (k f )
T
M (k0 )

(k f )
( k f ) ( k0 )
( k0 ) +
x (k )

x (k0 )

k f 1
k f 1
H
(
k
)

H (k )

+ T (k )
( k ) + T ( k )
+
u(k )
x ( k )
k = k0
k = k0
T

k f 1

H (k )

+ T (k + 1)
x ( k + 1) = 0
(k + 1)

k = k0

(16)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret


(16)
H ( x* (k ), u* (k ), * (k + 1))
=0
*
u ( k )

(17)

H ( x* (k ), u* ( k ), * (k + 1))
*

(k )
=
*
x (k )

condiiile Hamilton
pentru cazul discret

(18)

H ( x * (k ), u* (k ), * (k + 1))
*
=
x
(k + 1)
*
( k + 1)

(19)

M ( x (k0 )) *
( k0 ) = 0
x (k0 )

(20)

M ( x (k f ))
x (k f )

* (k f ) = 0

condiiile de transversalitate
n raport cu capetele traiectoriei
(21)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret
Observaii
 relaiile (17)-(21) se generalizeaz i pentru cazul variant
 n cazul problemelor cu momente terminale libere apare i condiia
de transversalitate n raport cu acestea


de exemplu, pentru kf liber, condiia de transversalitate este

M ( x* (k f ), k f )
k f


(22)

Condiia suficient pentru ca extremul s fie un minim rezult i


acum din 2 I 0

2H
u2


+ H ( x* (k f ), u* (k f ) * (k f ), k f ) = 0

(23)

u = u*

Pentru celelalte condiii necesare i suficiente de extrem exist


extinderi similare n cazul discret

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.3. Comparaie ntre cazul continuu i cel discret


Att n cazul continuu ct i n cel discret, comanda


optimal se obine din condiia de minim a hamiltonianului
Condiiile de extrem stabilite n cele dou cazuri sunt
asemntoare
Se pune problema dac condiiile de minim pentru un
sistem discret conduc ntru totul la aceleai rezultate ca i
n cazul discretizrii acelorai condiii din cazul continuu


Rspunsul nu este afirmativ, coincidena (n general aproximativ)


putndu-se obine n anumite condiii

2.5.3. Comparaie ntre cazul continuu i


cel discret


Se consider sistemul continuu i indicele de calitate

x = f ( x, u, t ), cu x R ,
n

f
x (t0 ) = x 0 , t0 , t f , x fixate

(24)

tf

I=

L( x, u, t )dt

(25)

t0

H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )

(26)

H
L( x , u, t ) T f ( x, u, t )
=0
+ (t )
=0
u
u
u

(27)

H
L( x, u, t ) T f ( x , u, t )

=
+ (t )
= (t )
x
x
x

(28)

M ( x f )
= (t f ) (t f ) = 0
f
x

(29)

2.5.3. Comparaie ntre cazul continuu i


cel discret

Se apeleaz la discretizarea
x ((k + 1)T ) x ( kT )
x kT =
T
((k + 1)T ) (kT )
kT =
T
0
(24)+(30)+(31) x (k + 1) = x (k ) + Tf ( x (k ), u(k ), k ), x (k0 ) = x

(27)+(28)+(29)+(30)+(31)

L( x (k ), u(k ), k ) f ( x (k ), u(k ), k )
+
( k ) = 0
T
u(k )
u (k )
(k + 1) = (k ) T
( k f ) = 0

L( x (k ), u(k ), k ) f ( x (k ), u(k ), k )

( k )
T
u(k )
u (k )

(30)
(31)
(32)

(33)

(34)

(35)

2.5.3. Comparaie ntre cazul continuu i


cel discret


Se consider acum sistemul discretizat

x (k + 1) = x (k ) + Tf ( x (k ), u(k ), k ), x (k0 ) = x 0

(36)

i criteriul discret corespunztor lui (25)

I =T

k f 1

L( x (k ), u(k ), k )

(37)

k = k0


Hamiltonianul este
H ( k ) = TL( x ( k ), u( k ), k ) + T ( k + 1)[ x ( k ) + Tf ( x ( k ), u( k ), k )]

H (k )
L( x ( k ), u(k ), t )
f
=0
+ T
(k + 1) = 0
u( k )
u(k )
u ( k )

(38)
(39)

H (k )
L( x (k ), u(k ), k )
f
(k + 1) = (k ) (40)
= ( k ) T
+ In + T T

x (k )
x (k )
x (k )

2.5.3. Comparaie ntre cazul continuu i


cel discret


n cele dou variante, rezolvarea problemei se face pe baza


seturilor de relaii (32...35) i respectiv (32, 35, 39, 40)



Evident, aceste relaii nu coincid ntru totul


Dac variabila adjunct nu variaz prea mult de la un pas de
discretizare la altul, deosebirea ntre (33) i (39) nu este prea mare
acest lucru poate fi acceptat pentru T suficient de mic

O deosebire mai mare apare ntre (34) i (40)


relaia (40) se mai scrie
1

f ( x (k ), u(k ), k )
L( x (k ), u( k ), k )
(k + 1) = I n + T

(
k
)

T
x (k )

x
(
k
)

(41)

dac se dezvolt primul factor n serie Taylor dup T, reinnd doar


termenul de ordinul nti, se obine (34)


Prin urmare, rezultatele n cele dou variante sunt destul de


apropiate dac perioada de eantionare T este suficient de mic

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

PROBLEMA DE
OPTIMIZARE LINIAR
PTRATIC

Problema de optimizare liniar ptratic


(LQ Linear Quadratic)



sistem liniar
criteriu ptratic

Utilizarea frecvent a acestei probleme se explic prin





forma modelului matematic - se adopt pentru foarte multe procese


importana criteriului
asigur erori mici pentru sistemul automat, n condiiile unui consum de
energie redus

Datorit formei particulare a sistemului i criteriului,


aspectele de calcul au putut fi rezolvate ntr-un caz
general, care nu s-a obinut n alte probleme de optimizare

3.1. Problema liniar ptratic cu timp


final finit
3.1.1. Formularea problemei
x (t ) = A(t ) x (t ) + B (t )u(t ), x R n , u R m

(1)

tf

1
1
I = xT (t f ) Sx (t f ) + xT (t )Q (t ) x (t ) + uT (t ) P (t ) u(t ) dt
2
2t

(2)

S 0, Q (t ) 0, P (t ) > 0
t0 , t f - fixai



x 0 (t0 ) = x 0

- fixat

x (t f ) - liber

Nu se impun restricii asupra strii i comenzii


Se cere determinarea comenzii optimale n circuit nchis u*(t)=u*(x(t)) care
transfer sistemul (1) din condiiile iniiale n cele finale precizate, astfel nct
s se minimizeze criteriul (2)

3.1.1. Formularea problemei




Semnificaia problemei este de eroare medie minim (x(t) reprezint


abaterea fa de o stare dorit) i de consum minim de energie
Criteriul (2) penalizeaz




abaterile tranzitorii mari fa de starea de referin x(t)=0


abaterile mari la momentul final
valorile mari ale comenzii u(t)

Observaii referitoare la matricele criteriului








S, Q i P sunt dependente de t atunci cnd se dorete o ponderare n timp a


influenelor componentelor respective n diverse perioade ale intervalului de
optimizare [t0,tf]
P nu poate fi nul, cci indicele de calitate nu ar mai depinde de comand
Una din matricele S sau Q poate fi nul, dar nu ambele, cci problema de
optimizare ar admite n acest caz soluia trivial u(t)0
n general S, Q i P sunt diagonale
sunt i probleme n care ele apar ca matrice simetrice nediagonale, cel mai des
n urma unor transformri aplicate variabilelor de stare

3.1.2. Soluia problemei


H=

1 T
1
x (t )Q (t ) x (t ) + uT (t ) P (t )u(t ) + T (t )[ A(t ) x (t ) + B (t )u(t )]
2
2

H
= (t ) (t ) = Q (t ) x (t ) AT (t ) (t )
x
H
= 0 P (t ) u(t ) + BT (t ) (t ) = 0 u(t ) = P 1 (t ) BT (t ) (t )
u
M
= (t f ) (t f ) = Sx (t f )
f
x
2H
= P (t ) > 0
2
u

M
=S 0
2
x f
2

2 H
= Q (t ) 0
2
x
2 H 2 H
2
Q (t )
0

=
0

2
2
P (t )
H H 0

xu u 2

(3)
(4)

(5)
(6)

extremul este un minim

3.1.2. Soluia problemei




Se caut o dependen de forma (t ) = R (t ) x (t )

(7)

(6) + (7) R (t f ) = S

(8)

(t ) x (t ) + R(t ) A(t ) x (t ) R(t ) N (t ) (t )


(7) + (1) + (5) (t ) = R

(9)

(9) + (4) + (7)

N (t ) = B (t ) P 1 (t ) BT (t )

(10)

(t ) R(t ) N (t ) R(t ) + R(t ) A(t ) + AT (t ) R(t ) + Q(t )]x(t ) = 0, t [t , t ] (11)


[R
0 f


Relaia (11) trebuie s fie satisfcut pentru orice x(t)


R (t ) = R (t ) N (t ) R (t ) R (t ) A(t ) AT (t ) R (t ) Q (t )

(12)

(Ecuaie Matriceal Diferenial Riccati - EMDR, cu condiia final (8))




(1) + (5) + (7) traiectoria extremal satisface ecuaia omogen

x (t ) = [ A(t ) N (t ) R(t )] x (t )
0
cu condiia iniial x (t0 ) = x

(13)

3.1.3. Observaii privind soluia


problemei
i.

Exist o soluie global a ecuaiei (12) pe [t0, tf]

ii. Matricea R(t), soluie a EMDR cu R(t f ) = S este simetric


iii. Este posibil o factorizare a matricei R(t)
(1) + (5) + (4)


x (t ) = A(t ) x (t ) N (t ) (t )
(t ) = Q (t ) x (t ) AT (t ) (t )

Sistemului vectorial (14) i corespunde sistemul canonic matriceal

X (t ) = A(t ) X (t ) N (t ) (t )
(t ) = Q (t ) X (t ) AT (t ) (t )



(14)

(15)

pentru care se consider condiiile de capt X (t f ) = I n , (t f ) = S (16)


Matricele X(t) i (t) - matricele fundamentale (14)
Se demonstreaz c, dac X(t) nesingular atunci

R (t ) = (t ) X 1 (t )
Dac S 0, Q 0, P > 0 X(t) nesingular

(17)

3.1.3. Observaii privind soluia


problemei
iv. Dac exist comanda optimal, ea este unic i este dat de

u(t ) = P 1 (t ) BT (t ) R(t ) x (t )

(18)

v. Fie I* minimul funcionalei I(x(t),t). Se demonstreaz c

I * ( x (t ), t ) =

1 T
x (t ) R(t ) x (t )
2

(19)

n cazul n care comanda optimal u(t ) 0 pentru orice stare, atunci


R(t) este o matrice pozitiv definit pentru t0 t < t f i R (t f ) = S - pozitiv
semidefinit
iv. Valoarea minim a indicelui de calitate este

I* =

1 T
x (t0 ) R(t0 ) x (t0 )
2

(20)

3.1.4. Structura sistemului optimal


x (t 0 )
1

P B

u (t )

x (t )

x (t )

(t ) R(t )

matricea regulatorului optimal -

K (t ) = P 1 (t ) BT (t ) R(t )

F (t ) = A(t ) B (t ) P 1 (t ) BT (t ) R(t ) = A(t ) N (t ) R(t )


matricea sistemului nchis

(21)
(22)

3.2. Problema de optimizare liniar


ptratic cu timp final infinit - PLPI
x (t ) = Ax (t ) + Bu(t ), x (t ) R n , u(t ) R m , x (0) = x 0

1
I = [ xT (t )Qx (t ) +uT (t ) Pu(t )]dt
20

(23)
(24)

Q 0, P 0

Q i P matrice constante, simetrice,

Integrala (24) este convergenta numai n cazul n care lim x (t ) = 0

Sistemul optimal nchis trebuie s fie stabil, deci perechea (A,B) s fie
stabilizabil (eventual, se poate impune ca ea s fie complet
controlabil)


Dac este ndeplinit aceast condiie, se poate cuta o comand


depinznd liniar de x (t )

u(t ) = Kx (t )

(K matrice constant)

astfel nct sistemul nchis s fie stabil, iar I este mrginit

(25)

3.2. Problema de optimizare liniar


ptratic
cu
timp
final
infinit
t
f

1
= [ xT (t )Qx (t ) + uT (t ) Pu(t )]dt
20

Fie I t
f

S consider EMDR (12) corespunztoare acestei probleme

n acest caz R (t f ) = 0

(26)

(27)

Proprieti
i.

ii.

Dac perechea (A, B) este stabilizabil, atunci lim R(t , t f , 0) = R


t f

exist i R 0
n condiiile de la (i), R definit de (28) este soluie a ecuaiei matriceale
algebrice Riccati (EMAR)

RBP 1BT R RA AT R Q = 0

iii.

(28)

n condiiile de la (i), legea de comand u(t ) = P 1BT Rx (t )

(29)
(30)

este o soluie n c.. a PLPI, iar valoarea optim a criteriului (24) este

I *

1 0T 0
= x Rx
2

(31)

3.2. Problema de optimizare liniar


ptratic cu timp final infinit
Observaie. Proprietile anterioare nu garanteaz c

lim x (t ) este finit,

chiar n condiiile n care valoarea optim a criteriului este finit


Exemplu:



iv.

x = x + u

1
I = u 2 dt
20

R = 0 u(t) = 0 este comand optimal ()x 0 I * = 0


t 0
traiectoriile optimale sunt x (t ) = e x lim x (t ) =
se constat c

Dac perechea (A,B) este stabilizabil, iar perechea ( Q , A)


detectabil, legea de comand (optimal) (30) este stabilizatoare

este

Observaie: n condiiile de la (iv), o soluie simetric R a EMAR este


stabilizatoare dac i numai dac este pozitiv semidefinit
v.

n condiiile (iv), soluia R a EMAR este unica soluie pozitiv semidefinit

3.2. Problema de optimizare liniar


ptratic cu timp final infinit
Teorem: fie problema de optimizare liniar ptratic (cu timp final infinit)
referitoare la sistemul invariant (23) cu (A,B) stabilizabil i criteriul
(24), n care P > 0, Q 0 . Atunci:


are loc relaia

lim R(t , t f , 0) = R 0 n care R (t , t f , 0)

t f

este soluia

(pozitiv definit) a EMDR (12) corespunztoare problemei cu sistemul (23)


i criteriul (24), cu R (t f ) = 0
1 T
T
R verific EMAR RBP B R RA A R Q = 0

limita

legea de conducere optimal n circuit nchis este

*
valoarea minim a indicelui de calitate este I

u(t) = P1BT Rx(t ) = Kx(t )


0T

= x Rx 0 , unde x 0 = x (0)

1 T
Dac n plus perechea ( Q , A) este detectabil, matricea K = P B R
comanda corespunztoare u(t ) = Kx (t ) sunt stabilizatoare i matricea
este unica soluie pozitiv semidefinit a EMAR (29)

3.3. Soluionarea ecuaiilor matriceale


Riccati


Soluionarea PLP cu timp final finit / infinit impune rezolvarea unei


ecuaii matriceale Riccati difereniale / algebrice
Pentru EMDR nu exist soluii exprimabile prin formule analitice de
calcul,





i n cazul scalar, n general, soluia ecuaiei difereniale Riccati se poate


stabili numai dac se cunoate o soluie particular a ecuaiei

EMAR se reduce n cazul scalar la o ecuaie algebric de gradul 2


n cazul matriceal EMAR echivaleaz cu un sistem de n(n+1)/2 ecuaii
algebrice neliniare de grad 2



pentru n 3 devine practic nerezolvabil pe cale analitic


chiar metodele numerice care abordeaz aceast cale sunt deosebit de
laborioase

3.3.1. Rezolvarea EMDR


a) Soluia EMDR se poate determina prin aproximaii succesive din irul

R0 (t ), R1 (t ),..., Ri (t ),...,
care se poate demonstra c este convergent ctre soluia R(t) a EMDR
i ale crui elemente se calculeaz cu
t

Ri (t) = S + [Ri1( )N( )Ri1( ) Ri1( ) A( ) AT ( )Ri1( ) Q( )]d, i =1,2,...


tf





Iniializarea R0 (t ) > 0 poate fi oarecare, dar influeneaz eficiena procedurii


La fiecare iteraie se calculeaz matricea Ri la momentele kh, h = const.
Convergena este destul de lent, iar h trebuie ales destul de mic pentru a
se asigura stabilitatea procesului de calcul

Un procedeu oarecum echivalent const n aproximarea derivatei

R (t ) [ R(t + ) R(t )] /
(12)


R (t + ) = R(t ) + [ R (t ) N (t ) R(t ) R (t ) A(t ) AT (t ) R(t ) Q (t )]

Ecuaia se rezolv n timp invers pentru negativ, pornind de la


condiia de capt R (t f ) = S

3.3.1. Rezolvarea EMDR


b) Un alt procedeu iterativ calculeaz pe rnd aproximaiile succesive

R0 (t ), R1 (t ),..., Rk (t ),...,
obinute ca soluii ale ecuaiilor difereniale liniare

R0 =R0 A(t) AT (t)R0 Q(t), R0(t f ) = S


R =R [A(t) N(t)R (t)] [AT (t) R (t)N(t)]R R (t)N(t)R (t) Q(t),
1

R1(t f ) = S cu N(t) dat de (10)

(32)

....................
Rk =Rk[A(t) N(t)Rk1(t)] [AT (t) Rk1(t)N(t)]Rk Rk1(t)N(t)Rk1(t) Q(t),
Rk (t f ) = S.
Se poate arta c pentru R0 (t ) 0, t [t0 , t f ] derivabil n raport cu t,
exist relaia Rk (t ) Rk 1 (t ) iar irul de matrice { Rk (t )} converge
uniform ctre soluia EMDR (12)

3.3.1. Rezolvarea EMDR


c) O alt cale de stabilire a soluiei EMDR se bazeaz pe factorizarea
matricei R(t) prezentat n 3.1.3
Sistemul (15) se poate scrie

A(t) N(t)
X (t)
X(t)
,
= H(t) , H(t) =

(t)
(t)
Q(t) A (t)

0
JHJ = H , cu J =
In
T

(t , t f )

N (t ) = B(t ) P 1 (t ) BT (t )

(33)

In
0

- matricea de tranziie corespunztoare lui H(t)

X (t f )
11 (t , t f ) 12 (t , t f )
X (t )
In
(t ) = (t , t f ) (t ) = (t , t f ) S , (t , t f ) = (t , t ) (t , t )


f
22
f

21 f

R(t ) = [ 21 (t , t f ) + 22 (t , t f ) S ][ 11 (t , t f ) + 12 (t , t f ) S ]1

(34)

3.3.2. Rezolvarea EMAR


a) Dac perechea (A, B) este stabilizabil, soluia EMAR se obine ca
limit a soluiei EMDR pentru t f
Algoritm:




1. Se testeaz stabilizabilitatea perechii (A,B)


2. Se calculeaz soluia EMDR corespunztoare cu condiia de capt R(t f ) = 0
3. Se repet (2) cu tf lund valori cresctoare pn cnd diferenele dintre
dou soluii obinute la etapa (2) sunt mai mici dect o valoare impus;
ultima soluie determinat se adopt ca soluie EMAR
Procedeu de calcul al soluiei EMAR eficient
Pentru a asigura stabilitatea procesului de calcul, la stabilirea soluiei EMDR se
adopt de obicei un pas mic metod mai puin eficient
De asemenea, pentru valori mari ale lui tf, unele proceduri de calcul ale EMDR
pot conduce la numere foarte mari n expresiile unor matrice, ceea ce poate
determina euarea programului
Pentru aprecierea valorilor tf care trebuie considerate n etapa (3), se poate
considera c o valoare a lui tf mai mare de 5...10 ori dect cea mai mare
constant de timp a procesului conduce la un rspuns apropiat de cel oferit de
EMAR

3.3.2. Rezolvarea EMAR


b) O clas de metode se bazeaz pe construirea unei matrice de tip
Hamilton asociate i pe proprietile speciale ale acestei matrice
c) O alt clas de metode pentru rezolvarea EMAR o formeaz o serie de
proceduri iterative, care, n linii generale, apeleaz la algoritmi de tip
Newton Raphson

3.4. Problema de optimizare liniar


ptratic discret
x (k +1) = A(k ) x (k ) + B (k )u(k ), x (0) = x 0

(35)

x (k ) R n , u(k ) R m , x (k ) = x (tk ) = x (kT )


1
1
I = xT (k f ) Sx (k f ) +
2
2

k f 1

[ xT (k )Q(k ) x (k ) + uT (k ) P (k )u(k )]

(36)

k =0

S 0, Q 0, P > 0
1
1
H k = xT (k )Qx (k ) + uT (k ) Pu( k ) + T (k +1)[ Ax (k ) + Bu(k )]
2
2
H k
= (k ) Qx (k ) + AT (k +1) = (k )
x (k )
H k
= 0 Pu(k ) + BT (k +1) = 0 sau u(k ) = P 1 BT (k +1)
u( k )
Mx (k f )
= (k f ) Sx (k f ) = (k f )
x (k f )

(37)
(38)

(39)

(40)

3.4. Problema de optimizare liniar


ptratic discret




Se caut o dependen liniar ntre (k) i x(k): ( k ) = R ( k ) x ( k )


(39) + (35) x ( k +1) = Ax ( k ) BP 1 BT ( k +1)
Se introduce (42) n (38) i (41)

(41)
(42)

x (k +1) = Ax (k ) BP 1 BT R( k +1) x (k +1)


R(k ) x ( k ) = Qx (k ) + A R(k +1) x (k +1)
T

(43)

Explicitnd x(k+1) din prima relaie i introducnd n a doua, gsim

R(k ) x (k ) = Qx (k ) + AT R(k +1)( I n + BP 1BT R(k +1))1 Ax (k )

(44)

care este satisfcut pentru orice x(k) dac

R(k ) = Q + AT R(k +1)( I n + BP 1BT R(k +1))1 A

(45)

sau

R(k ) = Q + AT ( R 1 (k +1) + BP 1BT )1 A

(46)

3.4. Problema de optimizare liniar


ptratic discret



Din (40) i (41) R ( k f ) = S


(47)
Ecuaia (45) sau (46) reprezint ecuaia matriceal cu diferene Riccati



Se rezolv n timp invers, iterativ, pornind de la k=kf pn la k=0


Se obin astfel amplificrile regulatorului optimal la momentele kT.

Principalele proprieti ale acestui regulator i ale soluiei problemei din


cazul continuu i gsesc corespondent i n cazul discret
Se demonstreaz c

( R1(k +1) + BP 1BT )1 = R(k +1) R(k +1)B(BT R(k +1)B + P)1 BT R(k +1)
i atunci relaia (46) devine

R(k) = Q + AT R(k +1) A AT R(k +1)B(BT R(k +1)B + P)1 BT R(k +1) A (48)


Formula de calcul iterativ (48) este avantajoas cnd m<<n, deoarece


trebuie calculat inversa unei matrice de ordin mai mic dect cea din
relaiile (45)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

PROBLEMA DE
OPTIMIZARE LINIAR
PTRATIC

3.4. Problema de optimizare liniar


ptratic discret
x (k +1) = A(k ) x (k ) + B (k )u(k ), x (0) = x 0

(1)

x (k ) R n , u(k ) R m , x (k ) = x (tk ) = x (kT )


1
1
I = xT (k f ) Sx (k f ) +
2
2

k f 1

[ xT (k )Q(k ) x (k ) + uT (k ) P (k )u(k )]

(2)

k =0

S 0, Q 0, P > 0
1
1
H k = xT (k )Qx (k ) + uT (k ) Pu( k ) + T (k +1)[ Ax (k ) + Bu(k )]
2
2
H k
= (k ) Qx (k ) + AT (k +1) = (k )
x (k )
H k
= 0 Pu(k ) + BT (k +1) = 0 sau u(k ) = P 1 BT (k +1)
u( k )
Mx (k f )
= (k f ) Sx (k f ) = (k f )
x (k f )

(3)
(4)

(5)

(6)

3.4. Problema de optimizare liniar


ptratic discret




Se caut o dependen liniar ntre (k) i x(k): ( k ) = R ( k ) x ( k )


x ( k +1) = Ax ( k ) BP 1 BT ( k +1)
(5) + (1)
Se introduce (7) n (4) i (8)

(7)
(8)

x (k +1) = Ax (k ) BP 1 BT R( k +1) x (k +1)


R(k ) x ( k ) = Qx (k ) + A R(k +1) x (k +1)
T

(9)

Explicitnd x(k+1) din prima relaie i introducnd n a doua, gsim

R(k ) x (k ) = Qx (k ) + AT R(k +1)( I n + BP 1BT R(k +1))1 Ax (k )

(10)

care este satisfcut pentru orice x(k) dac

R(k ) = Q + AT R(k +1)( I n + BP 1BT R(k +1))1 A

(11)

sau

R(k ) = Q + AT ( R 1 (k +1) + BP 1BT )1 A

(12)

3.4. Problema de optimizare liniar


ptratic discret



R(k f ) = S
Din (6) i (7)
(13)
Ecuaia (11) sau (12) reprezint ecuaia matriceal cu diferene Riccati



Se rezolv n timp invers, iterativ, pornind de la k=kf pn la k=0


Se obin astfel amplificrile regulatorului optimal la momentele kT

Principalele proprieti ale acestui regulator i ale soluiei problemei din


cazul continuu i gsesc corespondent i n cazul discret
Se demonstreaz c

( R1(k +1) + BP 1BT )1 = R(k +1) R(k +1)B(BT R(k +1)B + P)1 BT R(k +1)
i atunci relaia (12) devine

R(k) = Q + AT R(k +1) A AT R(k +1)B(BT R(k +1)B + P)1 BT R(k +1) A (14)


Formula de calcul iterativ (14) este avantajoas cnd m<<n, deoarece


trebuie calculat inversa unei matrice de ordin mai mic dect cea din
relaiile (11)

3.5. Alte tipuri de probleme de optimizare


liniar ptratic


n paragrafele anterioare s-a discutat exclusiv problema


reglrii optimale a strii

ntr-un numr important de cazuri se formuleaz ns i alte


probleme de optimizare, care necesit o extindere a
rezultatelor de la reglarea strii
 problema reglrii mrimii de ieire
 problema urmririi optimale

3.5.1. Problema reglrii optimale a


mrimii de ieire


Se consider sistemul complet observabil

x (t ) = A(t ) x (t ) + B (t )u(t ),

x (t0 ) = x 0 , x R n , u R m
(15)

y (t ) = C (t ) x (t ), y R p


Indicele de calitate referitor la ieirea y(t)


tf

I=

1 T
1
y (t f ) Sy (t f ) + [ yT (t )Q (t ) y (t ) + uT (t ) P (t )u(t )]dt
2
2t

(16)

S 0, Q (t ) 0, P (t ) > 0

(17)

3.5.1. Problema reglrii optimale a


mrimii de ieire


Dac sistemul este complet observabil i dac S 0, Q(t) 0, atunci

C T (t f ) SC (t f ) 0,



C T (t )Q (t )C (t ) 0

sistem complet observabil C(t)0 t [t0 , t f ]


T
T
matricele S i Q(t) simetrice C (t f ) SC (t f ), C (t )Q (t )C (t ) simetrice

Q (t ) 0

y (t )Q (t ) y (t ) 0, y (t )
T

y (t ) = C (t ) x (t )

(18)

xT (t )C T (t )Q (t )C (t ) x (t ) 0,

C (t ) x (t )

sistem complet observabil fiecare ieire y(t) este generat de o stare


unic x(t), deci inegalitatea (19) este adevrat pentru orice x(t)

Q ' (t ) = C T (t )Q (t )C (t ) 0


(19)

Similar se demonstreaz c

S ' = C T (t f ) SC (t f ) 0

3.5.1. Problema reglrii optimale a


mrimii de ieire


Rezultatele din 3.1 se pot transpune pentru aceast problem


(deoarece sunt ndeplinite condiiile impuse n problema respectiv
pentru noile matrice Q ' i S ')

u(t ) = P 1BT R(t ) x (t )

(20)

R (t ) = R(t )B(t ) P 1(t )BT (t ) R(t ) R(t ) A(t ) AT (t ) R(t ) CT (t )Q(t )C (t ) (21)
R (t f ) = C (t f ) SC (t f )

x (t ) = [ A(t ) B (t ) P 1 (t ) BT (t ) R(t )] x (t ),

I* =

1 T
x (t0 ) R(t0 ) x (t0 )
2

(22)

x (t0 ) precizat

(23)

(24)

3.5.1. Problema reglrii optimale a


mrimii de ieire
Observaii





Dei problema este formulat n legtur cu mrimea de ieire y(t),


regulatorul optimal este realizat cu reacie dup stare, presupus
accesibil i msurabil
Dac strile nu sunt accesibile i msurabile, pentru rezolvarea
problemei trebuie introdus un estimator
Exist i posibilitatea de a utiliza reacia dup ieirea y i n acest caz,
n relaiile de calcul intervine pseudoinversa matricei C

3.5.2. Problema urmririi optimale






Se consider sistemul complet observabil (15) i z(t) ieirea dorit


Obiectivul conducerii optimale este de a face ca y(t) s fie ct mai
apropiat de z(t), dar fr un consum exagerat de energie
n acest scop se consider eroarea e (t ) = z (t ) y (t )
(25)
i se introduce criteriul
tf

1
1
I = eT (t f ) Se (t f ) + [eT (t )Q (t )e (t ) + uT (t ) P (t ) u(t )]dt
2
2t
0

Eroarea se poate exprima i n funcie de stare e (t ) = z (t ) C (t ) x (t )


i atunci criteriul I se rescrie corespunztor

(26)

3.5.2. Problema urmririi optimale


1
1
1
H = ( z Cx )T Q ( z Cx ) + uT Pu + T ( Ax + Bu )
2
2
2

(27)

H
= 0 u(t ) = P 1BT (t )
u

(28)

(t ) = H (t ) = C T QCx AT + C T Qz
x

(29)

(t f ) =

M
(t f ) = C T (t f ) SC (t f ) x (t f ) C T (t f ) Sz (t f )
x (t f )

T
1
Se noteaz BP 1BT = N , C QC = Q ,

CTQ = W

N (t ) x (t ) 0
x (t ) A(t )
(15) + (29)
+
z (t )

(t ) = 1

Q (t ) A (t ) (t ) W (t )

(30)

(31)

(32)

3.5.2. Problema urmririi optimale




Sistemul (32) nefiind omogen, nu putem impune o relaie ntre x(t) i


(t) de aceeai form ca n subcapitolul 3.1, aa c se va considera

(t ) = R(t ) x (t ) g (t )

(33)

(t ) = R (t ) x (t ) + R(t ) x (t ) g (t )

(34)

Din (32), (28), (34) se gsete o relaie care este satisfcut pentru
orice x(t) i z(t) dac

R (t ) = R (t ) N (t ) R(t ) R(t ) A(t ) AT (t ) R(t ) Q1 (t )


i g (t ) = [ R(t ) N (t ) AT (t )] g (t ) W (t ) z (t )



Din (33) se deduce condiia de capt (t f ) = R(t f ) x (t f ) g (t f )


(30) + (33) R(t f ) = C T (t f ) SC (t f )

g (t f ) = C T (t f ) Sz (t f )

(35)
(36)
(37)
(38)
(39)

3.5.2. Problema urmririi optimale


Etape n rezolvarea problemei
(1) Rezolvarea ecuaiei matriceale difereniale Riccati (35), cu condiia de
capt (38)
1
T
T
 Se poate demonstra c C (t f ) SC (t f ) 0, Q (t ) = C (t )Q (t )C (t ) 0


deci sunt ndeplinite aceleai condiii ca la EMDR din 3.1


Aceast etap presupune introducerea unei reacii dup stare, cu matricea
sistemului nchis

F (t ) = A(t ) + B(t ) K (t ) = A(t ) B(t ) P 1(t ) BT (t ) R(t ) = A(t ) N (t ) R(t )

(40)

(2) Soluionarea ecuaiei (36) cu condiia de capt (39); soluia este


tf

g (t ) = (t , t f ) g (t f ) + (t , )W ( ) z ( )d

(41)

T
- matricea de tranziie pentru [ A(t ) N (t ) R(t )]

nlocuind t=t0 n (41), se poate determina g(t0), deci soluia se poate


stabili n funcie de condiia iniial g(t0) (exprimabil, de fapt, n funcie
de g(tf))

3.5.2. Problema urmririi optimale


Observaii
 Determinarea lui g din (41) presupune cunoaterea aprioric a valorii
dorite z(t) pe ntreg intervalul [t0,tf], astfel nct g(t) s fie calculabil din
(41) n timpul desfurrii procesului de optimizare
 Dac variaia dorit z(t) este dinainte cunoscut, problema este
rezolvabil
 n caz contrar, sistemul optimal este irealizabil


Irealizabilitatea deriv din formularea problemei, care impune condiii


excesiv de pretenioase:

se cere minimizarea criteriului (26), adic urmrirea ct mai fidel a traiectoriei


z(t), fr a se cunoate aceast traiectorie
o urmrire aproximativ este principial posibil, folosind informaiile momentane
asupra lui z(t), dar indicele (26) nu va mai fi la fel de bun ca n cazul cunoaterii
apriorice a lui z(t), deci nu se poate atinge minimul criteriului (26) dac nu se
cunoate dinainte z(t)

3.5.2. Problema urmririi optimale




Pentru cazurile cnd z(t) este necunoscut aprioric, s-au propus soluii
suboptimale, bazate pe



introducerea unor corecii predictive, care apeleaz la rezultatele


msurrilor anterioare sau curente asupra traiectoriei z(t)
reformularea problemei, n esen determinist, ca una stochastic

Comanda optimal este

u(t ) = P 1BT [ R (t ) x (t ) g (t )] = K (t ) x (t ) + r (t )



(42)

prima component este obinut prin reacia de stare ntlnit i n celelalte


probleme de optimizare liniar ptratice i este independent de z(t)
a doua component reprezint o intrare r(t) impus de valoarea dorit z(t),
dar i de sistemul nchis (40)

3.5.2. Problema urmririi optimale

g (t0 )

z (t )

C Q

F T (t )

x (t0 )

g (t )

BP B

+
+

F (t )

x (t )
C

y (t )

3.5.3. Problema urmririi modelului de


referin


O cale atractiv de a realiza proiectarea unui sistem automat este de a


impune de la nceput comportarea n regim dinamic, n sensul unei
apropieri ct mai mari de comportarea unui model impus
Modelul poate exista fizic sau poate fi luat n considerare un model
implicit

x (t ) = Ax (t ) + Bu(t ) + w (t );
y (t ) = Cx (t )


x (t0 ) = x 0
(43)

Scopul este de a face ca dinamica procesului s fie ct mai apropiat


de cea a unui model


Pentru aceasta, se poate introduce un criteriu care s conin termeni de


forma y (t ) Ly (t ) sau x (t ) Lx (t ) unde L este matricea modelului

n prima variant, ordinul modelului este limitat la numrul de ieiri i atunci


exist mai puine posibiliti n proiectare
n ambele cazuri se are n vedere doar rspunsul liber al sistemului, nefiind
incluse informaii despre influenele perturbaiilor i ale comenzii

3.5.3. Problema urmririi modelului de


referin


Pentru a elimina aceste inconveniente se introduce un termen de forma

x (t ) Lx (t ) Bu(t ) w (t )

(44)

1
J = [ x(t f ) xd ]T S[ x(t f ) xd ] +
2
tf
1
+ {[ x (t ) Lx(t ) Bu(t ) w(t )]T Q1[ x (t ) Lx(t ) Bu(t ) w(t )] + (45)
2t
0

+ [ x(t ) xd ]T Q2[ x(t ) xd ] + uT (t ) P (t )u(t )}dt

1
J = [ x (t f ) xd ]T S[ x (t f ) xd ] +
2
tf
1
+ { xT (t )Q1 x (t ) + [ x (t ) xd ]T Q2 [ x (t ) xd ] + uT (t ) P (t )u(t )}dt
2t
0

Q1 = A T Q1 A ,

A = A L

(46)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

PROBLEME DE
OPTIMIZARE
DINAMIC CU
RESTRICII

PROBLEME DE OPTIMIZARE
DINAMIC CU RESTRICII


Metodele variaionale clasice, bazate pe algoritmul Euler Lagrange,


respectiv pe ecuaiile lui Hamilton, ofer un instrument util de rezolvare
a problemelor de optimizare dinamic fr restricii
Cnd apar restricii n legtur cu variabilele de comand sau de stare,
aceste metode conduc la soluii care se obin ntr-o form complicat,
chiar i n cazul unor probleme relativ simple


Soluiile problemelor de optimizare cu restricii se obin mai uor cu


ajutorul metodelor variaionale moderne



Este dificil att prelucrarea condiiilor necesare ct i verificarea condiiilor


suficiente de extrem

principiul minimului
programarea dinamic

n problemele de optimizare dinamic cu restricii, comanda optimal


nu mai rezult, n general, ca o funcie continu; n cele ce urmeaz, ea
va apare mai ales ca o funcie continu pe poriuni


Aceasta face ca rezultatele calculului variaional s nu mai fie aplicabile,


deoarece ele presupun c funciile care intervin sunt suficient de netede

4. PRINCIPIUL MINIMULUI


Principiul minimului are o formulare asemntoare cu cea rezultat din


metodele variaionale clasice, exprimndu-se tot cu ajutorul
hamiltonianului
 n acest caz nu mai poate fi ns utilizat condiia H / u = 0 , deoarece,

din cauza discontinuitilor lui u(t), nu mai are sens calcularea derivatei
respective
Condiia menionat se nlocuiete cu una mai general, care se refer la
determinarea comenzii optimale u(t) astfel nct H s ating un minim, sau
ntr-o formulare uor modificat un maxim

4.1. Enunul principiului minimului




Se consider o problem de tip Bolza variant, cu starea iniial fixat,


cu sistemul

x (t ) = f ( x (t ), u(t ), t ), x (t0 ) = x 0 , x R n

(1)

i indicele de calitate de forma


tf

I=

L( x (t ), u(t ), t )dt + M ( x (t f ))

(2)

t0

Asupra variabilelor de stare nu se impun restricii


(3)
Asupra comenzii se impun restricii u(t ) U R
restriciile sunt exprimate de obicei sub forma unor inegaliti
Vom considera n continuare drept comenzi admisibile comenzile care
se ncadreaz n (3) i sunt mrginite i continue pe poriuni, admind
un numr finit de discontinuiti de spea nti
Variabila x(t) este continu, iar funciile f i M se consider continue i
satisfcnd condiiile Lipschitz
m

4.1. Enunul principiului minimului




Se construiete hamiltonianul

H ( x , p, u, t ) = L( x , u, t ) + pT f ( x , u, t )

p(t ) R n - vectorul variabilelor adjuncte, sau de costare (continue)


H
H

; x (t ) =
Ecuaiile canonice Hamilton p(t ) =
x
p
M ( x (t f ))
Condiia de transversalitate p(t f ) =
x (t f )

(4)

(5)
(6)

Problema se transform ntr-o problem de tip Mayer


t

x0 (t ) = L( x (t ), u(t ), t )dt

(7)

t0

x0 (t ) = L( x (t ), u(t ), t )

(8)

f
x
(
t
)
=
x
x0 (t0 ) = 0, 0 f
0

(9)

4.1. Enunul principiului minimului




Se introduc vectorii n + 1 dimensionali

x0 f 0
x = ; f = , f 0 L
x
f


(10)

Se consider sistemul x (t ) = f ( x , u, t )
i indicele de calitate I = M ( x (t f )) = M ( x (t f )) + x0 (t f )

(12)

H ( x , p , u, t ) = p T (t ) f ( x , u, t ),

(13)

p = [ p0 p]T
H H

; x =
Ecuaiile (5) i (6) devin p =
x
p
p (t f ) =

M ( x (t f ))
x (t f )

H ( x , p , u, t ) = p0 f 0 + pT (t ) f ( x , u, t )
0 = H / x0 = 0 p0 = const.
H nu depinde de x0 p

(11)

(14)

(15)

(16)
(17)

4.1. Enunul principiului minimului




Expresia hamiltonianului H este aceeai ca i n calculul variaional


dac p0 = 1


n mod obinuit se atribuie valoarea 1 scalarului p0

Principiul minimului
Fiind dat sistemul (11) i indicele de calitate (12), condiia necesar ca
u*(t) s fie comanda extremal, iar x*(t) - traiectoria extremal
respectiv este ca s existe un vector adjunct nenul p (t ) dat de ecuaia
(14), cu condiia de capt (15) i cu H dat de (13), astfel nct s se
minimizeze valoarea hamiltonianului

H * = H ( x * , p * , u* , t ) = min H ( x * , p * , u, t )
uU

n problemele invariante H * = 0

(18)

(19)

4.1. Enunul principiului minimului




Se consider problema iniial de tip Bolza, pentru sistemul (1) i


criteriul (2)



se formeaz hamiltonianul (4)


principiul minimului se enun:
condiia necesar de extrem este s existe o soluie nenul p(t) pentru
ecuaiile canonice (5), astfel ca

p0 L( x* , u* , t ) + p*T (t ) f ( x* , u* , t ) p0 L( x* , u, t ) + p*T (t ) f ( x* , u, t ) (20)


cu p0 = const. > 0 (uzual p0 = 1)

4.1. Enunul principiului minimului


Condiiile de transversalitate
 Printre
condiiile necesare de extrem, intervin i cele de
transversalitate, care se formuleaz la fel ca i n problemele fr
restricii
 Se reiau aceste condiii pentru probleme de tip Bolza numai n raport cu
momentul i starea final, pentru momentul i starea iniial ele fiind
similare


n problemele cu momentul final liber

M (t f , x f )
t f


+ H ( x* (t f ), p* (t f ), u* (t f ), t f ) = 0, x f = x (t f )

(21)

n problemele cu stare final liber

M (t f , x f )
x

= p* (t f )

(22)

4.1. Enunul principiului minimului


Condiiile de transversalitate


n problemele cu stare final liber pe o mulime X X de obicei este


vorba de suprafeele finale specificate prin ecuaii de forma
f

F ( x ) = 0, F = [ F1 ( x )... Fq1 ( x )]T


p* (t f ) =


M (t f , x f )
x

+
*

x ,t f

F
x

(23)

* , = const.

(24)

x* ,t f

n cazul problemelor de tip Lagrange




n problemele cu stare final liber n X

p* (t f ) = 0


(25)

n problemele cu stare final liber pe o submulime

F
p (t f ) =
x

x ,t f

Xf X
(26)

4.1. Enunul principiului minimului


Condiiile de transversalitate


n problemele cu stare final fixat

x (t f ) = x f


p(t f )

- liber

(27)

Dac intervalul [t0 , t f ] este liber, atunci

H ( x* (ti ), u* (ti ), p* (ti ), ti ) = 0, ti = {t0 , t f }

(28)

4.2. Algoritmul bazat pe principiul minimului


a) Se formeaz hamiltonianul problemei de optimizare dinamic (4) i
ecuaiile canonice (adjuncte) (5)
b) Se formuleaz condiiile de transversalitate corespunztoare problemei
c) Se determin comanda u*(t) care minimizeaz
(exprimat, n general, n funcie de x i p)

hamiltonianul

d) Cu u* astfel exprimat, se integreaz ecuaiile canonice, cu condiiile de


capt precizate n problem sau derivate din condiiile de
transversalitate
e) Se revine la (c) nlocuind n u* soluiile x* i p* determinate la punctul
(d) i, cu aceasta, comanda optimal este complet precizat

4.2. Algoritmul bazat pe principiul minimului


Observaii
 Algoritmul se poate prezenta i n raport cu problema transformat
pentru hamiltonianul H


n acest caz p0 este neprecizat i, dac se adopt p0=1, rezult pentru


problema netransformat hamiltonianul (4)

n multe probleme de optimizare dinamic, comanda i starea sunt


separabile att n sistem, ct i n criteriu


De exemplu, n cazul invariant avem

x (t ) = f ( x ) + h( u)

(29)

L( x, u) = f 0 ( x ) + h0 ( u)


n acest caz, se observ n expresia (4) a hamiltonianului c termenii care


conin comanda u(t) nu depind de x

ca atare, din condiia de minim a hamiltonianului rezult comanda u exprimat


funcie de vectorul p
dac se cunosc condiiile de capt pentru p(t), acesta se poate determina prin
integrarea ecuaiei (5) i se stabilete astfel u*

4.2. Algoritmul bazat pe principiul minimului




Restricionarea comenzilor la domeniul U impune adoptarea unor


mijloace specifice de minimizare a hamiltonianului. Se pot ntlni
urmtoarele cazuri mai importante:
 extremul cutat u* se afl n interiorul domeniului U

dac funciile care intervin sunt derivabile n raport cu u, atunci condiia


necesar de extrem este

H / u u= u* = 0

dac n plus
funciei H(u)

2 H / u 2

u = u*

>0

este ndeplinit condiia de minim local al

problem invariant
comanda scalar este restricionat
la domeniul [um , uM ]

um

u*

uM

4.2. Algoritmul bazat pe principiul minimului




dac extremul u* se afl pe frontiera domeniului U sau


ntr-un punct interior n care H nu este derivabil n raport cu u,
minimizarea hamiltonianului se face prin studiul funciei H pentru x* i p*
fixai
H
H

u*
um


u*
uM

um

u*

uM

extremul cutat nu este un punct izolat (cazul normal sau regular), ci un


domeniu care aparine mulimii U (caz singular)
H

u*
um

u
u*

uM

4.2. Algoritmul bazat pe principiul minimului





Etapa (d) a algoritmului prezentat se rezolv n funcie de tipul


problemei respective, mai exact n funcie de tipul condiiilor terminale
Enunul principiului minimului i algoritmul corespunztor ofer
posibilitatea determinrii comenzii optimale u(t) n circuit deschis;






pentru conducerea proceselor tehnologice intereseaz ns cu precdere


obinerea comenzii optimale n circuit nchis, deci realizarea sintezei
optimale n funcie de starea u(x(t))
n principiu, aceast problem de sintez se rezolv construind (n sens
invers) traiectoriile care pleac din xf
Pentru o reea suficient de deas de astfel de traiectorii, se pot memora
comenzile pentru diverse situaii din spaiul strilor
De obicei comenzile optimale sunt continue pe poriuni, suferind nite
salturi (comutri) n anumite puncte din spaiul strilor

Aceste puncte nu sunt de regul izolate, formnd anumite suprafee de


comutare
Dac se pot stabili ecuaiile acestor suprafee de comutare, atunci se pot
preciza legile de variaie u(x) ale comenzii pentru fiecare domeniu din spaiul
strilor i sinteza este astfel rezolvat

Rezolvarea pe cale analitic a problemei sintezei optimale pornind de la


principiul minimului este practic posibil numai pentru sisteme de ordin cel
mult 2

5. PROGRAMAREA DINAMIC


Programare dinamic - abordare a problemelor de optimizare bazat pe


principiul optimalitii: orice segment final al unui proces de
conducere optimal constituie el nsui un proces de conducere optimal


Cu alte cuvinte, segmentul din traiectoria optimal situat ntre starea


intermediar x() i starea final x(tf) este el nsui o traiectorie optimal,
pentru un proces care pleac din starea x()

x ( )

x (t0 )

1'

1
x (t f )

5. PROGRAMAREA DINAMIC


Se poate spune c la fiecare moment al unui proces de conducere


optimal, comanda se determin operativ n funcie de starea curent
x() a sistemului condus, innd cont de ntreaga evoluie viitoare,
predictat de sistem
n mod obinuit, stabilirea traiectoriei optimale pe baza programrii
dinamice se face retrospectiv, pornind de la starea final i
determinnd pe rnd segmentele optimale pn la starea iniial
Un avantaj deosebit al programrii dinamice este acela c ofer direct
soluia problemei de sintez optimal (de conducere optimal n circuit
nchis), fiind de altfel singurul procedeu general cunoscut n prezent de
sintez a legii de comand n circuit nchis i sursa majoritii
procedurilor practice de calcul a acestei legi
n condiii destul de largi ecuaiile stabilite n cadrul programrii
dinamice ofer att condiii necesare, ct i suficiente de optim

5. PROGRAMAREA DINAMIC


Programarea dinamic se formuleaz mai ales n legtur cu probleme


de tip Lagrange, dar poate fi extins fr dificulti i la alte tipuri de
probleme
Dezavantajul metodei este acela c, odat cu creterea ordinului n al
sistemului, crete foarte mult volumul de calcule (creterea este
exponenial).


Bellman, care a enunat principiul optimalitii i a fundamentat metoda


programrii dinamice, a denumit acest aspect blestemul dimensionalitii

Metoda programrii dinamice se aplic att sistemelor continue ct i


celor discrete, cu meniunea c n cazul celor dinti, obinerea unor
soluii analitice este dificil chiar i n cazurile simple


Din acest motiv, de cele mai multe ori, n cazul sistemelor continue se
procedeaz la o discretizare, astfel c programarea dinamic se utilizeaz
de cele mai multe ori pentru cazul discret

5.1. PROGRAMAREA DINAMIC


DISCRET


Se consider o problem de tip Bolza pentru un sistem continuu care


se discretizeaz

t = (t f t0 ) / N


Ecuaia diferenial a sistemului x = f ( x , u)

xk +1 xk
f ( xk , uk )
t
xk = x (k t ), uk = u( k t )
xk +1 = xk + f ( xk , uk )t , k = 0,..., N 1

(1)

se aproximeaz prin
(2)
(3)
(4)

x (t0 ) = x0 , x (t f ) = x N oarecare
N 1

I = M ( x N ) + L( xk , uk )t
k =0

(5)

5.1. PROGRAMAREA DINAMIC


DISCRET








Vom presupune c s-au determinat comenzile u0 , u1 ,..., uN 2 i a


rmas de stabilit numai comanda uN 1 pe ultimul interval
Conform principiului optimalitii, uN 1 nu depinde de preistoria
procesului, ci numai de starea x N 1
Se consider ultima sum parial din (5):

I N 1 = M ( x N ) + L( x N 1, uN 1 ) t
(3) x N = x N 1 + f ( x N 1 , uN 1 )t
*
Trebuie determinat uN 1 U care minimizeaz (6) i satisface (7)
*
Ultimul segment al traiectoriei este optimal dac pleac din x N 1

(6)
(7)

S N 1 ( x*N 1 ) = min I N 1 = min M ( x N ) + L( x*N 1 , uN 1 )t =

uN 1U

u N 1

= min M [ x*N 1 + f ( x*N 1 , uN 1 )t ] + L( x*N 1 , uN 1 )t


uN 1

Prin determinarea acestui minim, se obin

u*N 1 i S N 1 (, x*N 1 )

(8)

5.1. PROGRAMAREA DINAMIC


DISCRET


S lum acum n considerare i penultimul segment al traiectoriei

I N 2 = I N 1 + L( x N 2 , uN 2 )t =
= M ( x N ) + L( x N 1 , uN 1 )t + L( x N 2 , uN 2 ) t

x N 1 = x N 2 + f ( x N 2 , uN 2 )t

(9)

(10)

I N 1 + L( x N 2 , uN 2 )t} =
{
U

S N 2 ( x*N 2 ) = min I N 2 = min


uN 2 U
uN 1U
S N 1 ( x*N 1 ) +

uN 2
uN 1U

L( x*N 2 , uN 2 )t} =
{
u
U
= min {S N 1[ x*N 2 + f ( x*N 2 , uN 2 )t ] + L( x*N 2 , uN 2 )t}
u
U
= min
N 2

N 2

Ca rezultat al acestei minimizri se obine u*N 2 i S N 2 ( x*N 2 )

(11)

5.1. PROGRAMAREA DINAMIC


DISCRET


Repetnd procedeul pentru ultimele k segmente, se gsete

SN k ( x*N k ) = min SN k +1 x*N k + f ( x*N k , uN k )t + L( x*N k , uN k )t (12)


uN k U

S N k ( x *N k ) = min I N k
uN k U

I N k = M ( x N ) +

i = N k

L( xi , ui )t = I N k +1 + L( xN k , uN k )t, k = 1,..., N

x N k +1 = x N k + f ( x N k , uN k )t


(13)

(14)
(15)

Ecuaia (12) - ecuaia de recuren a lui Bellman - condiia necesar


de optim


n condiii destul de largi pentru mulimile X i U, aceasta reprezint i o


condiie suficient de optim

5.1. PROGRAMAREA DINAMIC


DISCRET
Observaii
*
*
 Faptul c uN k depinde numai de x N k indic posibilitatea realizrii
unei reacii dup stare



Aceast comand poate fi elaborat de procesor pe baza relaiei de


recuren (12)
Acest fapt constituie un avantaj deosebit al metodei, ntruct, spre
deosebire de alte proceduri, ofer direct soluia n circuit nchis a
problemei de conducere optimal

Algoritmul este structurat, n principal, pe trei cicluri, interioare unul


altuia


n cadrul ciclului exterior se modific valoarea lui k, deci se calculeaz


soluiile la diverse momente de timp;

n interiorul acestuia este un ciclu n care se baleiaz toate valorile posibile


pentru vectorul x N k , ceea ce presupune s se atribuie, pe rnd, toate valorile
posibile pentru fiecare dintre componentele acestui vector n-dimensional

n sfrit, n ciclul interior, pentru fiecare vector x N k se baleiaz n acelai mod


toate valorile posibile ale vectorului uN k i de fiecare dat se calculeaz valoarea
*
criteriului, selectndu-se acea comand pentru care se obine minimul S N k ( x N k )

5.1. PROGRAMAREA DINAMIC


DISCRET


Volumul de calcule crete foarte mult (exponenial) cu dimensiunea


vectorilor de stare i de comand


Pentru atingerea unor precizii rezonabile, se ajunge la un numr enorm de


operaii pentru sisteme de ordin patru sau cinci, ceea ce constituie un
dezavantaj major al metodei

Problema de optim se rezolv similar i n cazul n care starea final


este impus, de exemplu x N = 0



n acest caz, n expresia (5) a indicelui de calitate se ia M ( x N ) = 0


*
comanda uN 1 la nceputul ultimului segment al traiectoriei este dat de
ecuaia (7) a traiectoriei, care se poate scrie

f ( x*N 1 , u*N 1 ) =


1 *
x N 1
t

u*N 1 = ( x*N 1 )

valoarea minim a indicelui de calitate pe ultimul segment este

S N 1 ( x*N 1 ) = L( x*N 1 , ( x*N 1 ))t




n continuare, calculul se desfoar conform formulei de recuren (12)

5.1. PROGRAMAREA DINAMIC


DISCRET


n legtur cu restriciile asupra variabilelor de stare nu apar deosebiri


eseniale ntre cazul problemelor cu i fr restricii


n problemele fr restricii, se va considera c x evolueaz n domeniul


determinat de mulimea de accesibilitate a strii iniiale (mulimea
punctelor care pot fi atinse din x0 prin comenzi admisibile)
n cazul problemelor cu restricii, cnd se impune ca x X , se va lua n
considerare intersecia dintre X i mulimea de accesibilitate

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

OPTIMIZAREA
STAIONAR

1. ASPECTE GENERALE PRIVIND


OPTIMIZAREA STAIONAR
1.1. Formularea i clasificarea problemelor de optimizare
staionar


O problem de optimizare staionar este o problem de


programare matematic:

min{ f (x) hi (x) = 0, i = 1,..., l ; g i (x) 0, i = 1,..., m}

f :Rn R

funcia obiectiv

hi : R n R, i = 1,...,l

restricii de tip egalitate (legturi)

g i : R n R, i = 1,..., m

restricii de tip inegalitate

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Clasificri






problem fr restricii - extrem liber


problema cu restricii extrem legat
problem de programare liniar
problem de programare neliniar




programarea convex
programarea ptratic
programarea geometric

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Definiii

Un punct x* se numete minim global pentru f dac f ( x*) f ( x)
pentru toate punctele admisibile x (adic pentru toate punctele ce
satisfac restriciile problemei).

Dac pentru orice x x* are loc inegalitatea strict, minimul este
unic.

Dac inegalitatea are loc pentru toi x dintr-o vecintate admisibil a
lui x*, atunci x* se numete minim local.
Observaii

Orice minim global este i minim local, dar reciproca nu este
ntotdeauna adevrat

Extremele unei funcii pot fi netede sau unghiulare.

Extremele se pot afla ntr-un punct din interiorul domeniului admisibil,
pe frontiera domeniului, sau intr-un punct de discontinuitate.

1.1. Formularea i clasificarea


problemelor de optimizare staionar
f(x)

x
x1








3
x2 x

x4

x5

x6

x7

9
x8 x

x6 - maxim global pe intervalul [x1,x9];


x8 - minim global pe acelai interval;
x1, x8 - minime locale unice;
toate punctele intervalului [x3,x4] - minime locale neunice;
x2, x5, x6, x9, - maxime locale;
x7 - punct de inflexiune (nu este punct de extrem local);
x6 - extrem unghiular.

1.2. Chestiuni preliminare


Reprezentarea grafic




funcii de o singur variabil - analiz matematic


funcii de dou sau mai multe variabile - reprezentrile grafice se
complic - sunt rareori folosite n problemele de extrem
pentru funcii de dou variabile - reprezentri bazate pe curbe de
nivel (curbe de contur sau de valoare constant a funciei)
x2

f(x)=c1
f(x)=c2

x1

1.2. Chestiuni preliminare


1 T
Funcii obiectiv ptratice f(x):
, f (x) = x Qx + b T x +
2
Q = QT - matrice simetric, bRn, - scalar
RnR

importana n studiul problemelor de extrem:





se ntlnesc frecvent n practic, mai ales n probleme cu restricii,


cnd ns rezolvarea este considerabil mai dificil;
foarte multe funcii se aproximeaz destul de bine cu funcii
ptratice, prin dezvoltare n serie Taylor i diverse metode apeleaz
la o succesiune de aproximri cu astfel de funcii;
exist o serie de proprieti ale unor algoritmi care au fost
demonstrate numai pentru funcii ptratice, ele fiind "extinse" i la
funcii mai generale, n baza a numeroase testri, care le-au validat;
funciile ptratice sunt folosite ca un prim test pentru diverse
proceduri de optimizare.

1.2. Chestiuni preliminare


Aproximarea funciilor


aproximarea pe baza dezvoltrii n serie Taylor

1
f(x) = f(x ) + (x x ) f(x ) + (x x0 )T H(x0 )(x x0 ) + e(x, x0 ) x x0
2
0




0 T

f(x):RnR este de dou ori derivabil n raport cu toate argumentele ntr-o


vecintate a punctului x0
e(x,x0)0 pentru xx0

f x1
f (x)
f ( x) =
= ;
x
f x n


2f

1
2
f (x)
=

H (x) =
2

x
2f

x n x 1

dac derivatele de ordinul 2 sunt continue, H este simetric

2f

x1 x n

2
f

2
x n

1.2. Chestiuni preliminare


Aproximarea funciilor
1
f ( x) = f ( x 0 ) + ( x x 0 )T f ( x 0 ) + ( x x 0 ) T H ( x 0 )( x x 0 ) + e( x, x 0 ) || x x 0 ||2
2


notm

x x 0 = h,

cu

h R n , || h ||2 = 1

h vector de lungime unitar care indic direcia de deplasare


- lungimea pasului pe direcia h


Aproximarea Taylor de ordinul 2

2
f (x + h ) = f (x) + h, f (x) +
h , H ( x ) h + e( x 0 , h ) 2
2


Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor


Convergena



exist algoritmi care au o eficien ridicat, dar nu au asigurat


convergena n condiii suficient de largi
pentru a preveni rezultate eronate:
stabilirea unui numr limit de iteraii;
introducerea unor testri periodice, care asigur continuarea corect a
programului;
combinarea procedurilor respective cu altele care au convergena
garantat, dar i o eficien mai sczut.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Viteza de convergen



ofer informaii asupra numrului de iteraii necesar


ordinul de convergen - apreciaz cantitativ viteza de convergen

ln f (x k )
dac f(x*) = 0: = lim
k ln f (x k +1 )
ln[f (x k ) f (x* )]
dac f(x*) 0: = lim
k ln[f (x k +1 ) f (x * )]




= 1 convergena liniar f(xk+1)af(xk), a0 scderea valorii


funciei se face n progresie geometric
= 2 convergen ptratic f(xk+1)[f(xk)]2, la fiecare iteraie
se dubleaz numrul de zerouri dup virgul
1< < 2 convergena supraliniar

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Volumul total de calcule


unul din criteriile cele mai importante privind eficiena

poate fi apreciat prin


numrul total de operaii
timpul total de rulare pe calculator

acest criteriu nu este decisiv n aprecierea unei metode


volumul total de calcule depinde de
calitatea programului ntocmit
tipul calculatorului utilizat
operaiile pregtitoare care se efectueaz .a.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Generalitatea metodei


se refer la posibilitatea aplicrii acesteia pentru categorii ct mai


largi de probleme

n multe cazuri sunt preferai algoritmi specifici unor clase de


probleme
sunt mai eficieni dect procedurile cu mare generalitate

De regul generalitatea este apreciat drept o calitate important a


procedurilor

1.2. Chestiuni preliminare




Criterii de evaluare specifice metodelor numerice de calcul







uurina n utilizare i simplitatea;


sigurana n funcionare;
precizia;
stabilitatea numeric
algoritmul nu induce o cretere a sensibilitii problemelor la perturbaii
de date;
un algoritm instabil poate da rezultate eronate chiar i pentru probleme
bine condiionate;

fiabilitatea
robusteea - evitarea excepiilor aritmetice i minimizarea erorilor de
rotunjire;
invariana la scalare;
alegerea corespunztoare a criteriului de terminare (stop);

portabilitatea - posibilitatea utilizrii pe diferite echipamente de


calcul, fr nici o modificare.

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Funcia scalar f(x) este definit pe ntreg spaiul Rn (sau


pe un domeniu maxim din Rn pe care este definit funcia
n mod natural)
Se cere determinarea punctului de minim global x*, adic a
punctului pentru care

f (x*) f (x), x R n


Diverse metode impun ca funcia s ndeplineasc anumite


condiii




continuitate
derivabilitate
convexitate

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Clasificare din punct de vedere al valorilor calculate





metode directe - se calculeaz doar valorile funciei obiectiv


metode indirecte se folosesc i derivate ale funciei

Clasificare din punct de vedere al principiului folosit






metode de explorare
metode de eliminare
metode analitice

greoaie n cazul funciilor de mai multe variabile


- se folosesc, de regul, pentru stabilirea grosier a
domeniului n care se afl minimul
-

metode generale ce stau la baza majoritii procedurilor de cutare


sunt mai rar folosite n calculul numeric


metode de cutare
proceduri iterative - se pornete de la o iniializare oarecare x0 i se
k
stabilete un ir de iteraii {xk}, astfel ca lim x = x * adic

f ( x ) > f (x ) > f (x ) > ... > f (x ) > ... > f (x * )

2.1. Metode de explorare i de eliminare







Pentru un numr de variabile 3 proceduri greoaie


Se utilizeaz frecvent n cazul extremizrilor
unidimensionale
Precizia este destul de redus n cazul utilizrii unui
numr rezonabil de iteraii
Sunt folosite pentru stabilirea iniial a domeniului n
care se afl extremul


Determinarea mai precis a extremului se face prin alte


proceduri

Se pleac de la un anumit domeniu pe care este


definit funcia.



Probleme fr restricii - rezolvarea pornete cu stabilirea


domeniului respectiv (ntr-un anumit mod)
Probleme cu restricii - se pornete de la domeniul definit de
restricii.

2.1.1. Metode de explorare




n interiorul domeniului iniial se stabilesc puncte n care se


calculeaz valoarea funciei obiectiv

Se alege punctul n care funcia are valoarea cea mai mic




astfel se stabilete un subdomeniu n jurul acestui punct, n


interiorul cruia se afl minimul funciei.

Acest subdomeniu alctuiete domeniul de incertitudine n


care se afl minimul.

Avantaj: n majoritatea cazurilor se evit punctele de minim


local

Clasificare


explorare exhaustiv

explorare aleatoare

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Principiu


domeniul considerat se mparte pe fiecare ax ntr-un numr de


subintervale o reea multidimensional (rectangular)
nu este obligatoriu s se adopte acelai pas de divizare pe direcia
fiecrei axe




se calculeaz f(x) n nodurile reelei i se selecteaz cel pentru care


s-a obinut cea mai mic valoare pentru f(x)
domeniul de incertitudine n care se afl minimul este fixat de
nodurile vecine celui selectat.

Dezavantajul principal


numrul mare de evaluri necesar pentru a obine o precizie


acceptabil,
numrul de evaluri crete cu creterea numrului de variabile

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Algoritm pentru funcii unidimensionale


se stabilete un punct iniial x0, se adopt un pas i se calculeaz


f(x0)

se calculeaz f(x0+) i f(x0), stabilind sensul deplasrii

se calculeaz f(x0+k), kZ
dac f[x0+(k1)] > f(x0+k), se repet aceast etap pentru k
modificat cu o unitate
dac f[x0+(k1)] < f(x0+k), a fost depit punctul de minim i
se consider c noul interval de incertitudine este
[x0+(k2), x0+k]

pentru diminuarea acestui interval, se prefer aplicarea unor


metode mai precise

2.1.1. Metode de explorare


Metode de explorare aleatoare
 Principiu


Avantaje



testarea funciei obiectiv se face n mai multe puncte, stabilite pe


baz de numere aleatoare se obine o zon n care, cu o mare
probabilitate, se afl minimul funciei
volumul de calcule este dependent doar n mic msur de ordinul
sistemului
pot fi folosite i n cazul problemelor cu variabile discrete

Domeniu de aplicare



rezolvarea unor probleme specifice de mari dimensiuni - mai ales


din domeniul economic
sunt utilizate adeseori pentru stabilirea iniial a domeniului sau a
punctului de start

2.1.2. Metode de eliminare




Funcia obiectiv trebuie s satisfac ipoteza de unimodalitate




Principiu




unimodalitate - pe domeniul de definiie exist un singur punct de extrem


domeniul considerat se mparte n dou pri printr-un plan (dreapt) de
separare
se testeaz valoarea funciei n cele dou subdomenii printr-o procedur
specific i se elimin acela care nu prezint interes
pentru domeniul rmas se continu procedura, prin mprirea cu un plan
de separare etc., pn se ajunge la un domeniu suficient de mic, funcie de
precizia impus

Exist diverse variante n ceea ce privete modul de mprire n


subdomenii i al celui de efectuare a testrii
Metodele de eliminare multidimensionale sunt mai rar folosite datorit
eficienei sczute.
n cazul extremizrilor unidimensionale, metodele de eliminare sunt
eficiente

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

OPTIMIZAREA
STAIONAR

1. ASPECTE GENERALE PRIVIND


OPTIMIZAREA STAIONAR
1.1. Formularea i clasificarea problemelor de optimizare
staionar


O problem de optimizare staionar este o problem de


programare matematic:

min{ f (x) hi (x) = 0, i = 1,..., l ; g i (x) 0, i = 1,..., m}

f :Rn R

funcia obiectiv

hi : R n R, i = 1,...,l

restricii de tip egalitate (legturi)

g i : R n R, i = 1,..., m

restricii de tip inegalitate

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Clasificri






problem fr restricii - extrem liber


problema cu restricii extrem legat
problem de programare liniar
problem de programare neliniar




programarea convex
programarea ptratic
programarea geometric

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Definiii

Un punct x* se numete minim global pentru f dac f ( x*) f ( x)
pentru toate punctele admisibile x (adic pentru toate punctele ce
satisfac restriciile problemei).

Dac pentru orice x x* are loc inegalitatea strict, minimul este
unic.

Dac inegalitatea are loc pentru toi x dintr-o vecintate admisibil a
lui x*, atunci x* se numete minim local.
Observaii

Orice minim global este i minim local, dar reciproca nu este
ntotdeauna adevrat

Extremele unei funcii pot fi netede sau unghiulare.

Extremele se pot afla ntr-un punct din interiorul domeniului admisibil,
pe frontiera domeniului, sau intr-un punct de discontinuitate.

1.1. Formularea i clasificarea


problemelor de optimizare staionar
f(x)

x
x1








3
x2 x

x4

x5

x6

x7

9
x8 x

x6 - maxim global pe intervalul [x1,x9];


x8 - minim global pe acelai interval;
x1, x8 - minime locale unice;
toate punctele intervalului [x3,x4] - minime locale neunice;
x2, x5, x6, x9, - maxime locale;
x7 - punct de inflexiune (nu este punct de extrem local);
x6 - extrem unghiular.

1.2. Chestiuni preliminare


Reprezentarea grafic




funcii de o singur variabil - analiz matematic


funcii de dou sau mai multe variabile - reprezentrile grafice se
complic - sunt rareori folosite n problemele de extrem
pentru funcii de dou variabile - reprezentri bazate pe curbe de
nivel (curbe de contur sau de valoare constant a funciei)
x2

f(x)=c1
f(x)=c2

x1

1.2. Chestiuni preliminare


1 T
Funcii obiectiv ptratice f(x):
, f (x) = x Qx + b T x +
2
Q = QT - matrice simetric, bRn, - scalar
RnR

importana n studiul problemelor de extrem:





se ntlnesc frecvent n practic, mai ales n probleme cu restricii,


cnd ns rezolvarea este considerabil mai dificil;
foarte multe funcii se aproximeaz destul de bine cu funcii
ptratice, prin dezvoltare n serie Taylor i diverse metode apeleaz
la o succesiune de aproximri cu astfel de funcii;
exist o serie de proprieti ale unor algoritmi care au fost
demonstrate numai pentru funcii ptratice, ele fiind "extinse" i la
funcii mai generale, n baza a numeroase testri, care le-au validat;
funciile ptratice sunt folosite ca un prim test pentru diverse
proceduri de optimizare.

1.2. Chestiuni preliminare


Aproximarea funciilor


aproximarea pe baza dezvoltrii n serie Taylor

1
f(x) = f(x ) + (x x ) f(x ) + (x x0 )T H(x0 )(x x0 ) + e(x, x0 ) x x0
2
0




0 T

f(x):RnR este de dou ori derivabil n raport cu toate argumentele ntr-o


vecintate a punctului x0
e(x,x0)0 pentru xx0

f x1
f (x)
f ( x) =
= ;
x
f x n


2f

1
2
f (x)
=

H (x) =
2

x
2f

x n x 1

dac derivatele de ordinul 2 sunt continue, H este simetric

2f

x1 x n

2
f

2
x n

1.2. Chestiuni preliminare


Aproximarea funciilor
1
f ( x) = f ( x 0 ) + ( x x 0 )T f ( x 0 ) + ( x x 0 ) T H ( x 0 )( x x 0 ) + e( x, x 0 ) || x x 0 ||2
2


notm

x x 0 = h,

cu

h R n , || h ||2 = 1

h vector de lungime unitar care indic direcia de deplasare


- lungimea pasului pe direcia h


Aproximarea Taylor de ordinul 2

2
f (x + h ) = f (x) + h, f (x) +
h , H ( x ) h + e( x 0 , h ) 2
2


Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor


Convergena



exist algoritmi care au o eficien ridicat, dar nu au asigurat


convergena n condiii suficient de largi
pentru a preveni rezultate eronate:
stabilirea unui numr limit de iteraii;
introducerea unor testri periodice, care asigur continuarea corect a
programului;
combinarea procedurilor respective cu altele care au convergena
garantat, dar i o eficien mai sczut.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Viteza de convergen



ofer informaii asupra numrului de iteraii necesar


ordinul de convergen - apreciaz cantitativ viteza de convergen

ln f (x k )
dac f(x*) = 0: = lim
k ln f (x k +1 )
ln[f (x k ) f (x* )]
dac f(x*) 0: = lim
k ln[f (x k +1 ) f (x * )]




= 1 convergena liniar f(xk+1)af(xk), a0 scderea valorii


funciei se face n progresie geometric
= 2 convergen ptratic f(xk+1)[f(xk)]2, la fiecare iteraie
se dubleaz numrul de zerouri dup virgul
1< < 2 convergena supraliniar

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Volumul total de calcule


unul din criteriile cele mai importante privind eficiena

poate fi apreciat prin


numrul total de operaii
timpul total de rulare pe calculator

acest criteriu nu este decisiv n aprecierea unei metode


volumul total de calcule depinde de
calitatea programului ntocmit
tipul calculatorului utilizat
operaiile pregtitoare care se efectueaz .a.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Generalitatea metodei


se refer la posibilitatea aplicrii acesteia pentru categorii ct mai


largi de probleme

n multe cazuri sunt preferai algoritmi specifici unor clase de


probleme
sunt mai eficieni dect procedurile cu mare generalitate

De regul generalitatea este apreciat drept o calitate important a


procedurilor

1.2. Chestiuni preliminare




Criterii de evaluare specifice metodelor numerice de calcul







uurina n utilizare i simplitatea;


sigurana n funcionare;
precizia;
stabilitatea numeric
algoritmul nu induce o cretere a sensibilitii problemelor la perturbaii
de date;
un algoritm instabil poate da rezultate eronate chiar i pentru probleme
bine condiionate;

fiabilitatea
robusteea - evitarea excepiilor aritmetice i minimizarea erorilor de
rotunjire;
invariana la scalare;
alegerea corespunztoare a criteriului de terminare (stop);

portabilitatea - posibilitatea utilizrii pe diferite echipamente de


calcul, fr nici o modificare.

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Funcia scalar f(x) este definit pe ntreg spaiul Rn (sau


pe un domeniu maxim din Rn pe care este definit funcia
n mod natural)
Se cere determinarea punctului de minim global x*, adic a
punctului pentru care

f (x*) f (x), x R n


Diverse metode impun ca funcia s ndeplineasc anumite


condiii




continuitate
derivabilitate
convexitate

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Clasificare din punct de vedere al valorilor calculate





metode directe - se calculeaz doar valorile funciei obiectiv


metode indirecte se folosesc i derivate ale funciei

Clasificare din punct de vedere al principiului folosit






metode de explorare
metode de eliminare
metode analitice

greoaie n cazul funciilor de mai multe variabile


- se folosesc, de regul, pentru stabilirea grosier a
domeniului n care se afl minimul
-

metode generale ce stau la baza majoritii procedurilor de cutare


sunt mai rar folosite n calculul numeric


metode de cutare
proceduri iterative - se pornete de la o iniializare oarecare x0 i se
k
stabilete un ir de iteraii {xk}, astfel ca lim x = x * adic

f ( x ) > f (x ) > f (x ) > ... > f (x ) > ... > f (x * )

2.1. Metode de explorare i de eliminare







Pentru un numr de variabile 3 proceduri greoaie


Se utilizeaz frecvent n cazul extremizrilor
unidimensionale
Precizia este destul de redus n cazul utilizrii unui
numr rezonabil de iteraii
Sunt folosite pentru stabilirea iniial a domeniului n
care se afl extremul


Determinarea mai precis a extremului se face prin alte


proceduri

Se pleac de la un anumit domeniu pe care este


definit funcia.



Probleme fr restricii - rezolvarea pornete cu stabilirea


domeniului respectiv (ntr-un anumit mod)
Probleme cu restricii - se pornete de la domeniul definit de
restricii.

2.1.1. Metode de explorare




n interiorul domeniului iniial se stabilesc puncte n care se


calculeaz valoarea funciei obiectiv

Se alege punctul n care funcia are valoarea cea mai mic




astfel se stabilete un subdomeniu n jurul acestui punct, n


interiorul cruia se afl minimul funciei.

Acest subdomeniu alctuiete domeniul de incertitudine n


care se afl minimul.

Avantaj: n majoritatea cazurilor se evit punctele de minim


local

Clasificare


explorare exhaustiv

explorare aleatoare

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Principiu


domeniul considerat se mparte pe fiecare ax ntr-un numr de


subintervale o reea multidimensional (rectangular)
nu este obligatoriu s se adopte acelai pas de divizare pe direcia
fiecrei axe




se calculeaz f(x) n nodurile reelei i se selecteaz cel pentru care


s-a obinut cea mai mic valoare pentru f(x)
domeniul de incertitudine n care se afl minimul este fixat de
nodurile vecine celui selectat.

Dezavantajul principal


numrul mare de evaluri necesar pentru a obine o precizie


acceptabil,
numrul de evaluri crete cu creterea numrului de variabile

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Algoritm pentru funcii unidimensionale


se stabilete un punct iniial x0, se adopt un pas i se calculeaz


f(x0)

se calculeaz f(x0+) i f(x0), stabilind sensul deplasrii

se calculeaz f(x0+k), kZ
dac f[x0+(k1)] > f(x0+k), se repet aceast etap pentru k
modificat cu o unitate
dac f[x0+(k1)] < f(x0+k), a fost depit punctul de minim i
se consider c noul interval de incertitudine este
[x0+(k2), x0+k]

pentru diminuarea acestui interval, se prefer aplicarea unor


metode mai precise

2.1.1. Metode de explorare


Metode de explorare aleatoare
 Principiu


Avantaje



testarea funciei obiectiv se face n mai multe puncte, stabilite pe


baz de numere aleatoare se obine o zon n care, cu o mare
probabilitate, se afl minimul funciei
volumul de calcule este dependent doar n mic msur de ordinul
sistemului
pot fi folosite i n cazul problemelor cu variabile discrete

Domeniu de aplicare



rezolvarea unor probleme specifice de mari dimensiuni - mai ales


din domeniul economic
sunt utilizate adeseori pentru stabilirea iniial a domeniului sau a
punctului de start

2.1.2. Metode de eliminare




Funcia obiectiv trebuie s satisfac ipoteza de unimodalitate




Principiu




unimodalitate - pe domeniul de definiie exist un singur punct de extrem


domeniul considerat se mparte n dou pri printr-un plan (dreapt) de
separare
se testeaz valoarea funciei n cele dou subdomenii printr-o procedur
specific i se elimin acela care nu prezint interes
pentru domeniul rmas se continu procedura, prin mprirea cu un plan
de separare etc., pn se ajunge la un domeniu suficient de mic, funcie de
precizia impus

Exist diverse variante n ceea ce privete modul de mprire n


subdomenii i al celui de efectuare a testrii
Metodele de eliminare multidimensionale sunt mai rar folosite datorit
eficienei sczute.
n cazul extremizrilor unidimensionale, metodele de eliminare sunt
eficiente

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

OPTIMIZAREA
STAIONAR

1. ASPECTE GENERALE PRIVIND


OPTIMIZAREA STAIONAR
1.1. Formularea i clasificarea problemelor de optimizare
staionar


O problem de optimizare staionar este o problem de


programare matematic:

min{ f (x) hi (x) = 0, i = 1,..., l ; g i (x) 0, i = 1,..., m}

f :Rn R

funcia obiectiv

hi : R n R, i = 1,...,l

restricii de tip egalitate (legturi)

g i : R n R, i = 1,..., m

restricii de tip inegalitate

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Clasificri






problem fr restricii - extrem liber


problema cu restricii extrem legat
problem de programare liniar
problem de programare neliniar




programarea convex
programarea ptratic
programarea geometric

1.1. Formularea i clasificarea


problemelor de optimizare staionar
Definiii

Un punct x* se numete minim global pentru f dac f ( x*) f ( x)
pentru toate punctele admisibile x (adic pentru toate punctele ce
satisfac restriciile problemei).

Dac pentru orice x x* are loc inegalitatea strict, minimul este
unic.

Dac inegalitatea are loc pentru toi x dintr-o vecintate admisibil a
lui x*, atunci x* se numete minim local.
Observaii

Orice minim global este i minim local, dar reciproca nu este
ntotdeauna adevrat

Extremele unei funcii pot fi netede sau unghiulare.

Extremele se pot afla ntr-un punct din interiorul domeniului admisibil,
pe frontiera domeniului, sau intr-un punct de discontinuitate.

1.1. Formularea i clasificarea


problemelor de optimizare staionar
f(x)

x
x1








3
x2 x

x4

x5

x6

x7

9
x8 x

x6 - maxim global pe intervalul [x1,x9];


x8 - minim global pe acelai interval;
x1, x8 - minime locale unice;
toate punctele intervalului [x3,x4] - minime locale neunice;
x2, x5, x6, x9, - maxime locale;
x7 - punct de inflexiune (nu este punct de extrem local);
x6 - extrem unghiular.

1.2. Chestiuni preliminare


Reprezentarea grafic




funcii de o singur variabil - analiz matematic


funcii de dou sau mai multe variabile - reprezentrile grafice se
complic - sunt rareori folosite n problemele de extrem
pentru funcii de dou variabile - reprezentri bazate pe curbe de
nivel (curbe de contur sau de valoare constant a funciei)
x2

f(x)=c1
f(x)=c2

x1

1.2. Chestiuni preliminare


1 T
Funcii obiectiv ptratice f(x):
, f (x) = x Qx + b T x +
2
Q = QT - matrice simetric, bRn, - scalar
RnR

importana n studiul problemelor de extrem:





se ntlnesc frecvent n practic, mai ales n probleme cu restricii,


cnd ns rezolvarea este considerabil mai dificil;
foarte multe funcii se aproximeaz destul de bine cu funcii
ptratice, prin dezvoltare n serie Taylor i diverse metode apeleaz
la o succesiune de aproximri cu astfel de funcii;
exist o serie de proprieti ale unor algoritmi care au fost
demonstrate numai pentru funcii ptratice, ele fiind "extinse" i la
funcii mai generale, n baza a numeroase testri, care le-au validat;
funciile ptratice sunt folosite ca un prim test pentru diverse
proceduri de optimizare.

1.2. Chestiuni preliminare


Aproximarea funciilor


aproximarea pe baza dezvoltrii n serie Taylor

1
f(x) = f(x ) + (x x ) f(x ) + (x x0 )T H(x0 )(x x0 ) + e(x, x0 ) x x0
2
0




0 T

f(x):RnR este de dou ori derivabil n raport cu toate argumentele ntr-o


vecintate a punctului x0
e(x,x0)0 pentru xx0

f x1
f (x)
f ( x) =
= ;
x
f x n


2f

1
2
f (x)
=

H (x) =
2

x
2f

x n x 1

dac derivatele de ordinul 2 sunt continue, H este simetric

2f

x1 x n

2
f

2
x n

1.2. Chestiuni preliminare


Aproximarea funciilor
1
f ( x) = f ( x 0 ) + ( x x 0 )T f ( x 0 ) + ( x x 0 ) T H ( x 0 )( x x 0 ) + e( x, x 0 ) || x x 0 ||2
2


notm

x x 0 = h,

cu

h R n , || h ||2 = 1

h vector de lungime unitar care indic direcia de deplasare


- lungimea pasului pe direcia h


Aproximarea Taylor de ordinul 2

2
f (x + h ) = f (x) + h, f (x) +
h , H ( x ) h + e( x 0 , h ) 2
2


Aproximarea Taylor de ordinul 1

o()
f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim
=0
0

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor


Convergena



exist algoritmi care au o eficien ridicat, dar nu au asigurat


convergena n condiii suficient de largi
pentru a preveni rezultate eronate:
stabilirea unui numr limit de iteraii;
introducerea unor testri periodice, care asigur continuarea corect a
programului;
combinarea procedurilor respective cu altele care au convergena
garantat, dar i o eficien mai sczut.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Viteza de convergen



ofer informaii asupra numrului de iteraii necesar


ordinul de convergen - apreciaz cantitativ viteza de convergen

ln f (x k )
dac f(x*) = 0: = lim
k ln f (x k +1 )
ln[f (x k ) f (x* )]
dac f(x*) 0: = lim
k ln[f (x k +1 ) f (x * )]




= 1 convergena liniar f(xk+1)af(xk), a0 scderea valorii


funciei se face n progresie geometric
= 2 convergen ptratic f(xk+1)[f(xk)]2, la fiecare iteraie
se dubleaz numrul de zerouri dup virgul
1< < 2 convergena supraliniar

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Volumul total de calcule


unul din criteriile cele mai importante privind eficiena

poate fi apreciat prin


numrul total de operaii
timpul total de rulare pe calculator

acest criteriu nu este decisiv n aprecierea unei metode


volumul total de calcule depinde de
calitatea programului ntocmit
tipul calculatorului utilizat
operaiile pregtitoare care se efectueaz .a.

1.2. Chestiuni preliminare


Criterii de evaluare a calitii algoritmilor
 Generalitatea metodei


se refer la posibilitatea aplicrii acesteia pentru categorii ct mai


largi de probleme

n multe cazuri sunt preferai algoritmi specifici unor clase de


probleme
sunt mai eficieni dect procedurile cu mare generalitate

De regul generalitatea este apreciat drept o calitate important a


procedurilor

1.2. Chestiuni preliminare




Criterii de evaluare specifice metodelor numerice de calcul







uurina n utilizare i simplitatea;


sigurana n funcionare;
precizia;
stabilitatea numeric
algoritmul nu induce o cretere a sensibilitii problemelor la perturbaii
de date;
un algoritm instabil poate da rezultate eronate chiar i pentru probleme
bine condiionate;

fiabilitatea
robusteea - evitarea excepiilor aritmetice i minimizarea erorilor de
rotunjire;
invariana la scalare;
alegerea corespunztoare a criteriului de terminare (stop);

portabilitatea - posibilitatea utilizrii pe diferite echipamente de


calcul, fr nici o modificare.

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Funcia scalar f(x) este definit pe ntreg spaiul Rn (sau


pe un domeniu maxim din Rn pe care este definit funcia
n mod natural)
Se cere determinarea punctului de minim global x*, adic a
punctului pentru care

f (x*) f (x), x R n


Diverse metode impun ca funcia s ndeplineasc anumite


condiii




continuitate
derivabilitate
convexitate

2. METODE DE REZOLVARE A PROBLEMELOR


DE OPTIMIZARE STAIONAR FR RESTRICII


Clasificare din punct de vedere al valorilor calculate





metode directe - se calculeaz doar valorile funciei obiectiv


metode indirecte se folosesc i derivate ale funciei

Clasificare din punct de vedere al principiului folosit






metode de explorare
metode de eliminare
metode analitice

greoaie n cazul funciilor de mai multe variabile


- se folosesc, de regul, pentru stabilirea grosier a
domeniului n care se afl minimul
-

metode generale ce stau la baza majoritii procedurilor de cutare


sunt mai rar folosite n calculul numeric


metode de cutare
proceduri iterative - se pornete de la o iniializare oarecare x0 i se
k
stabilete un ir de iteraii {xk}, astfel ca lim x = x * adic

f ( x ) > f (x ) > f (x ) > ... > f (x ) > ... > f (x * )

2.1. Metode de explorare i de eliminare







Pentru un numr de variabile 3 proceduri greoaie


Se utilizeaz frecvent n cazul extremizrilor
unidimensionale
Precizia este destul de redus n cazul utilizrii unui
numr rezonabil de iteraii
Sunt folosite pentru stabilirea iniial a domeniului n
care se afl extremul


Determinarea mai precis a extremului se face prin alte


proceduri

Se pleac de la un anumit domeniu pe care este


definit funcia.



Probleme fr restricii - rezolvarea pornete cu stabilirea


domeniului respectiv (ntr-un anumit mod)
Probleme cu restricii - se pornete de la domeniul definit de
restricii.

2.1.1. Metode de explorare




n interiorul domeniului iniial se stabilesc puncte n care se


calculeaz valoarea funciei obiectiv

Se alege punctul n care funcia are valoarea cea mai mic




astfel se stabilete un subdomeniu n jurul acestui punct, n


interiorul cruia se afl minimul funciei.

Acest subdomeniu alctuiete domeniul de incertitudine n


care se afl minimul.

Avantaj: n majoritatea cazurilor se evit punctele de minim


local

Clasificare


explorare exhaustiv

explorare aleatoare

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Principiu


domeniul considerat se mparte pe fiecare ax ntr-un numr de


subintervale o reea multidimensional (rectangular)
nu este obligatoriu s se adopte acelai pas de divizare pe direcia
fiecrei axe




se calculeaz f(x) n nodurile reelei i se selecteaz cel pentru care


s-a obinut cea mai mic valoare pentru f(x)
domeniul de incertitudine n care se afl minimul este fixat de
nodurile vecine celui selectat.

Dezavantajul principal


numrul mare de evaluri necesar pentru a obine o precizie


acceptabil,
numrul de evaluri crete cu creterea numrului de variabile

2.1.1. Metode de explorare


Metode de explorare exhaustiv
 Algoritm pentru funcii unidimensionale


se stabilete un punct iniial x0, se adopt un pas i se calculeaz


f(x0)

se calculeaz f(x0+) i f(x0), stabilind sensul deplasrii

se calculeaz f(x0+k), kZ
dac f[x0+(k1)] > f(x0+k), se repet aceast etap pentru k
modificat cu o unitate
dac f[x0+(k1)] < f(x0+k), a fost depit punctul de minim i
se consider c noul interval de incertitudine este
[x0+(k2), x0+k]

pentru diminuarea acestui interval, se prefer aplicarea unor


metode mai precise

2.1.1. Metode de explorare


Metode de explorare aleatoare
 Principiu


Avantaje



testarea funciei obiectiv se face n mai multe puncte, stabilite pe


baz de numere aleatoare se obine o zon n care, cu o mare
probabilitate, se afl minimul funciei
volumul de calcule este dependent doar n mic msur de ordinul
sistemului
pot fi folosite i n cazul problemelor cu variabile discrete

Domeniu de aplicare



rezolvarea unor probleme specifice de mari dimensiuni - mai ales


din domeniul economic
sunt utilizate adeseori pentru stabilirea iniial a domeniului sau a
punctului de start

2.1.2. Metode de eliminare




Funcia obiectiv trebuie s satisfac ipoteza de unimodalitate




Principiu




unimodalitate - pe domeniul de definiie exist un singur punct de extrem


domeniul considerat se mparte n dou pri printr-un plan (dreapt) de
separare
se testeaz valoarea funciei n cele dou subdomenii printr-o procedur
specific i se elimin acela care nu prezint interes
pentru domeniul rmas se continu procedura, prin mprirea cu un plan
de separare etc., pn se ajunge la un domeniu suficient de mic, funcie de
precizia impus

Exist diverse variante n ceea ce privete modul de mprire n


subdomenii i al celui de efectuare a testrii
Metodele de eliminare multidimensionale sunt mai rar folosite datorit
eficienei sczute.
n cazul extremizrilor unidimensionale, metodele de eliminare sunt
eficiente

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2. METODE DE REZOLVARE
A PROBLEMELOR DE
OPTIMIZARE STAIONAR
FR RESTRICII

2.2. Metode analitice




Sunt metodele cele mai puternice i care stau la baza unui


mare numr de metode de cutare
Dac se dispune de expresiile analitice ale derivatelor
funciei obiectiv n raport cu toate variabilele, problema se
reduce la rezolvarea unui sistem de ecuaii
Transpunerea metodelor analitice n proceduri numerice
este mai rar folosit, fiind preferai algoritmii de cutare


algoritmii de cutare sunt mai direct adaptai problemelor de


optimizare staionar, chiar i n cazurile n care se dispune de
expresiile analitice ale derivatelor

2.2.1. Proprieti ale gradientului


a. n orice punct al suprafeei f(x) = const., vectorul gradient
este ortogonal la aceast suprafa

Demonstraie
T

f
f
df (x) =
dx i = dx = f (x),dx
i =1 xi
x
n

f (x) = const. df (x) = 0

f (x),dx = 0

2.2.1. Proprieti ale gradientului


b. Aproximarea Taylor de ordinul 1

o()
=0
0

f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim

f (x + h) f (x)
o()
= f ( x), h +

Presupunem c exist

f ( x + h) f (x) f
lim
=
0

o()
=0
0
lim

f = f (x), h

2.2.1. Proprieti ale gradientului


c. Inegalitatea Cauchy-Schwarz x, y


x, x y, y , x,yRn

egalitatea se obine dac x i y au aceeai direcie

f (x), h

h, h f (x), f (x)
f (x + h) f (x)
o()
dac h, h = 1 i
= f (x), h +

f (x + h) f (x)
o()
1/2

f (x), f (x)

egalitatea se obine atunci cnd vectorii f ( x) i h au aceeai direcie




ntr-o vecintate a punctului x, creterea maxim a funciei


f(x) are loc pe direcia gradientului, respectiv scderea cea
mai rapid se face pe direcia invers gradientului

2.2.1. Proprieti ale gradientului


d. Fie x* un punct precizat i h o direcie oarecare fixat f(x*+h) se
modific doar n funcie de parametrul scalar .

df (x * +h)
=0
d
f
= f (x), h

f (x * +h), h = 0
h este oarecare

f ( x*) = 0

Punctele n care se anuleaz gradientul se numesc staionare (critice)


Condiia necesar ca un punct x* s fie extrem (maxim sau minim)
este ca acest punct s fie staionar.

2.2.1. Proprieti ale gradientului

e. Presupunem aleas o direcie h astfel nct


f (x), h < 0
f ( x + h) f ( x)
o()
= f (x), h +

f (x + h) f (x)
<0
0

lim

f (x + h) f (x)
<0
a.i. , cu < avem

f ( x + h ) < f ( x )

Dac deplasarea din x se face pe o direcie h care face un unghi mai


mare de 90o cu direcia gradientului atunci, ntr-o vecintate a
punctului x, se va obine o descretere a valorii funciei f(x)
n cadrul problemelor de minim, direciile de deplasare h care
ndeplinesc condiia f (x), h < 0 se numesc admisibile

2.2.1. Proprieti ale gradientului




n orice punct al suprafeei f(x) = const., vectorul gradient


este ortogonal la aceast suprafa
ntr-o vecintate a punctului x, creterea maxim a
funciei f(x) are loc pe direcia gradientului, respectiv
scderea cea mai rapid se face pe direcia invers
gradientului
Condiia necesar ca un punct x* s fie extrem (maxim
sau minim) este ca acest punct s fie staionar
Dac deplasarea din x se face pe o direcie h care face
un unghi mai mare de 90o cu direcia gradientului atunci,
ntr-o vecintate a punctului x, se va obine o descretere
a valorii funciei f(x)

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii necesare


Fie f(x):RnR continuu derivabil n raport cu toate


argumentele. Condiia de minim local este condiia de
punct critic (staionar):

f ( x*) = 0


generalizeaz condiia cunoscut (anularea derivatei) din cazul


funciilor de o singur variabil

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii suficiente
 Fie f(x):RnR, avnd derivatele de ordin doi continue; condiia
suficient ca x* s fie punct de minim local este ca n acest punct s fie
ndeplinit condiia f(x*)=0 i matricea hessian s fie pozitiv definit
(H(x*)>0).

1
f(x) = f(x*) + (x x*)T f(x*) + (x x*)T H(x*)(x x*) + e(x x*) || x x* ||2
2

H(x*) > 0 (x x* )T H(x* )(x x* ) > 0


f(x ) = 0
*

f(x) f(x ) > 0


*

- x* este punct de minim local tare

Fie f(x):RnR, continuu derivabil i convex. Atunci relaia f(x*)=0


este condiie de minim global.

2.2.2. Condiii necesare i suficiente


de extrem liber


Dac este ndeplinit condiia f(x*)=0 i H(x*) < 0, atunci


x* este punct de maxim local tare.
Dac n punctul staionar H(x*) este de semn nedefinit,
atunci x* este punct ea (prezint maxim n raport cu
anumite variabile i minim n raport cu altele), numai dac
det H(x*) 0.
Dac n x* matricea H(x*) este semidefinit (H(x*) 0 sau
H(x*) 0), nu se pot face aprecieri asupra naturii punctului
critic.

2.3. Metode de cutare


2.3.1. Aspecte generale privitoare la metodele de cutare

Prezentare general

Cele mai eficiente i folosite metode de rezolvare a problemelor de


extremizare fr restricii
n cazul problemelor de minim - metode de coborre

Se pornete de la un punct iniial oarecare x0 care poate fi ales





la ntmplare n domeniul de definiie al funciei,


ntr-un domeniu n care se bnuiete c se afl minimul
ntr-un domeniu stabilit printr-o procedur oarecare (ex. explorare)

i se stabilesc iterativ aproximaii din ce n ce mai bune ale


minimului x*, procedura ncheindu-se cnd este ndeplinit un
criteriu de stop (de convergen).

2.3.1. Aspecte generale privitoare la


metodele de cutare


Formula de calcul

x k +1 = x k + k h k


Metodele difer ntre ele prin modul n care se face


alegerea



direciei de deplasare
pasului de deplasare

La majoritatea metodelor, la fiecare iteraie se stabilete


mai nti direcia de deplasare i apoi lungimea pasului pe
direcia respectiv

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea direciei de deplasare




Clasificare
metode de ordinul I (directe): se calculeaz numai valorile funciei
obiectiv
metode de ordinul II: se calculeaz i derivatele de ordinul unu
metode de ordinul al III-lea: se calculeaz i derivatele de ordinul al
doilea

Utilizarea derivatelor
Avantaj: vitez de convergen crescut
Dezavantaj: efort de calcul suplimentar

Calculul derivatelor
Dac derivatele pot fi exprimate analitic fr un efort prea mare, se
specific expresiile analitice ale derivatelor
Dac nu dispunem de expresiile analitice ale derivatelor, acestea
trebuie evaluate numeric
creterea timpului de calcul
introducerea de erori suplimentare

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea lungimii pasului la fiecare iteraie


 pas constant
 pas variabil
de regul este din ce n ce mai mic, pe msur ce ne apropiem
de punctul staionar


pas optim
deplasarea pe direcia respectiv se face pn cnd se atinge
minimul pe aceast direcie
determinarea pasului optim crete volumul de calcule la fiecare
iteraie
exist metode care impun utilizarea pasului optim la fiecare
iteraie
determinarea pasului optim pe o anumit direcie se mai
numete cutare liniar exact
determinarea pasului optim const n a stabili min f (x k + h k )

2.3.1. Aspecte generale privitoare la


metodele de cutare


Interpretarea geometric a pasului optim

xk
f(x)=c1
f(x)=c2

hk
xk+1

2.3.1. Aspecte generale privitoare la


metodele de cutare


Calcularea pasului optim


f ( x k +1 ) = f (x k ) + f ( x k ), h k

2 k
+
h , Hkhk
2

Minimizez f (x k +1 ( ))

df (x

k +1

d




( ))

= 0 f (x k ), h k + h k , H k h k = 0

* =

f (x k ), h k
h k , H (x k )h k

valoare aproximativ a pasului optim


pentru cutarea liniar exact se folosesc proceduri mai precise metode de eliminare i de interpolare
n cazul funciilor ptratice formula este exact

2.3.1. Aspecte generale privitoare la


metodele de cutare
Convergena procedurilor de cutare
 Teorem
k +1

Fie un ir de iteraii de forma x = x + k h n care direciile hk sunt


admisibile ( f (x), h < 0 ). Dac n punctele xk ale irului gradientul
este continuu i Hk > 0, atunci este posibil s alegem paii de
deplasare k la fiecare iteraie astfel nct s obinem convergena
irului xk ctre punctul staionar x*.


Observaii



Dac H(x*)>0, atunci x* este punct de minim.


Conform proprietii anterioare, convergena este legat de semnul
matricei Hessian, putnd fi asigurat atunci cnd aceasta este pozitiv
definit n punctele irului de iteraii.

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop
 n cadrul metodelor iterative de cutare trebuie introdus un
criteriu se stop (de oprire a calculelor sau de convergen)
 Alegerea criteriului de stop este funcie de particularitile
problemei i este dictat de o serie de consideraii:


dac exist dubii privind convergena procedurii iterative, se


recomand limitarea numrului de iteraii, n afara introducerii
criteriului de stop propriu-zis;
la metodele care apeleaz la calcularea gradientului f(x) al funciei
obiectiv, pentru problemele fr restricii se poate folosi:
f (x k )

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


criterii absolute de stop bazate pe variaia argumentului sau a


funciei:

x k x k 1


f (x k ) f (x k 1 )

n locul criteriilor absolute sunt preferate criteriile relative:

x k x k 1
x


sau

sau

f (x k ) f (x k 1 )

f (x k )

dac ||x*|| sau f(x*) sunt foarte apropiate de zero, atunci criteriile
relative nu sunt utilizabile i se folosesc:

x k x k 1
1+ x

sau

f (x k ) f ( x k 1 )
1 + f (x )
k

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


folosirea exclusiv a unui criteriu bazat pe variaia argumentului sau


a funciei poate conduce la rezultate eronate
f(x)
f

f(x)

x
x

x
(a)

x (b)

aceste situaii pot fi prentmpinate prin utilizarea combinat, n cadrul


aceluiai program, a ambelor criterii

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

2. METODE DE REZOLVARE
A PROBLEMELOR DE
OPTIMIZARE STAIONAR
FR RESTRICII

2.2. Metode analitice




Sunt metodele cele mai puternice i care stau la baza unui


mare numr de metode de cutare
Dac se dispune de expresiile analitice ale derivatelor
funciei obiectiv n raport cu toate variabilele, problema se
reduce la rezolvarea unui sistem de ecuaii
Transpunerea metodelor analitice n proceduri numerice
este mai rar folosit, fiind preferai algoritmii de cutare


algoritmii de cutare sunt mai direct adaptai problemelor de


optimizare staionar, chiar i n cazurile n care se dispune de
expresiile analitice ale derivatelor

2.2.1. Proprieti ale gradientului


a. n orice punct al suprafeei f(x) = const., vectorul gradient
este ortogonal la aceast suprafa

Demonstraie
T

f
f
df (x) =
dx i = dx = f (x),dx
i =1 xi
x
n

f (x) = const. df (x) = 0

f (x),dx = 0

2.2.1. Proprieti ale gradientului


b. Aproximarea Taylor de ordinul 1

o()
=0
0

f ( x + h ) = f ( x ) + h , f ( x ) + o( ), lim

f (x + h) f (x)
o()
= f ( x), h +

Presupunem c exist

f ( x + h) f (x) f
lim
=
0

o()
=0
0
lim

f = f (x), h

2.2.1. Proprieti ale gradientului


c. Inegalitatea Cauchy-Schwarz x, y


x, x y, y , x,yRn

egalitatea se obine dac x i y au aceeai direcie

f (x), h

h, h f (x), f (x)
f (x + h) f (x)
o()
dac h, h = 1 i
= f (x), h +

f (x + h) f (x)
o()
1/2

f (x), f (x)

egalitatea se obine atunci cnd vectorii f ( x) i h au aceeai direcie




ntr-o vecintate a punctului x, creterea maxim a funciei


f(x) are loc pe direcia gradientului, respectiv scderea cea
mai rapid se face pe direcia invers gradientului

2.2.1. Proprieti ale gradientului


d. Fie x* un punct precizat i h o direcie oarecare fixat f(x*+h) se
modific doar n funcie de parametrul scalar .

df (x * +h)
=0
d
f
= f (x), h

f (x * +h), h = 0
h este oarecare

f ( x*) = 0

Punctele n care se anuleaz gradientul se numesc staionare (critice)


Condiia necesar ca un punct x* s fie extrem (maxim sau minim)
este ca acest punct s fie staionar.

2.2.1. Proprieti ale gradientului

e. Presupunem aleas o direcie h astfel nct


f (x), h < 0
f ( x + h) f ( x)
o()
= f (x), h +

f (x + h) f (x)
<0
0

lim

f (x + h) f (x)
<0
a.i. , cu < avem

f ( x + h ) < f ( x )

Dac deplasarea din x se face pe o direcie h care face un unghi mai


mare de 90o cu direcia gradientului atunci, ntr-o vecintate a
punctului x, se va obine o descretere a valorii funciei f(x)
n cadrul problemelor de minim, direciile de deplasare h care
ndeplinesc condiia f (x), h < 0 se numesc admisibile

2.2.1. Proprieti ale gradientului




n orice punct al suprafeei f(x) = const., vectorul gradient


este ortogonal la aceast suprafa
ntr-o vecintate a punctului x, creterea maxim a
funciei f(x) are loc pe direcia gradientului, respectiv
scderea cea mai rapid se face pe direcia invers
gradientului
Condiia necesar ca un punct x* s fie extrem (maxim
sau minim) este ca acest punct s fie staionar
Dac deplasarea din x se face pe o direcie h care face
un unghi mai mare de 90o cu direcia gradientului atunci,
ntr-o vecintate a punctului x, se va obine o descretere
a valorii funciei f(x)

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii necesare


Fie f(x):RnR continuu derivabil n raport cu toate


argumentele. Condiia de minim local este condiia de
punct critic (staionar):

f ( x*) = 0


generalizeaz condiia cunoscut (anularea derivatei) din cazul


funciilor de o singur variabil

2.2.2. Condiii necesare i suficiente


de extrem liber
Condiii suficiente
 Fie f(x):RnR, avnd derivatele de ordin doi continue; condiia
suficient ca x* s fie punct de minim local este ca n acest punct s fie
ndeplinit condiia f(x*)=0 i matricea hessian s fie pozitiv definit
(H(x*)>0).

1
f(x) = f(x*) + (x x*)T f(x*) + (x x*)T H(x*)(x x*) + e(x x*) || x x* ||2
2

H(x*) > 0 (x x* )T H(x* )(x x* ) > 0


f(x ) = 0
*

f(x) f(x ) > 0


*

- x* este punct de minim local tare

Fie f(x):RnR, continuu derivabil i convex. Atunci relaia f(x*)=0


este condiie de minim global.

2.2.2. Condiii necesare i suficiente


de extrem liber


Dac este ndeplinit condiia f(x*)=0 i H(x*) < 0, atunci


x* este punct de maxim local tare.
Dac n punctul staionar H(x*) este de semn nedefinit,
atunci x* este punct ea (prezint maxim n raport cu
anumite variabile i minim n raport cu altele), numai dac
det H(x*) 0.
Dac n x* matricea H(x*) este semidefinit (H(x*) 0 sau
H(x*) 0), nu se pot face aprecieri asupra naturii punctului
critic.

2.3. Metode de cutare


2.3.1. Aspecte generale privitoare la metodele de cutare

Prezentare general

Cele mai eficiente i folosite metode de rezolvare a problemelor de


extremizare fr restricii
n cazul problemelor de minim - metode de coborre

Se pornete de la un punct iniial oarecare x0 care poate fi ales





la ntmplare n domeniul de definiie al funciei,


ntr-un domeniu n care se bnuiete c se afl minimul
ntr-un domeniu stabilit printr-o procedur oarecare (ex. explorare)

i se stabilesc iterativ aproximaii din ce n ce mai bune ale


minimului x*, procedura ncheindu-se cnd este ndeplinit un
criteriu de stop (de convergen).

2.3.1. Aspecte generale privitoare la


metodele de cutare


Formula de calcul

x k +1 = x k + k h k


Metodele difer ntre ele prin modul n care se face


alegerea



direciei de deplasare
pasului de deplasare

La majoritatea metodelor, la fiecare iteraie se stabilete


mai nti direcia de deplasare i apoi lungimea pasului pe
direcia respectiv

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea direciei de deplasare




Clasificare
metode de ordinul I (directe): se calculeaz numai valorile funciei
obiectiv
metode de ordinul II: se calculeaz i derivatele de ordinul unu
metode de ordinul al III-lea: se calculeaz i derivatele de ordinul al
doilea

Utilizarea derivatelor
Avantaj: vitez de convergen crescut
Dezavantaj: efort de calcul suplimentar

Calculul derivatelor
Dac derivatele pot fi exprimate analitic fr un efort prea mare, se
specific expresiile analitice ale derivatelor
Dac nu dispunem de expresiile analitice ale derivatelor, acestea
trebuie evaluate numeric
creterea timpului de calcul
introducerea de erori suplimentare

2.3.1. Aspecte generale privitoare la


metodele de cutare


Alegerea lungimii pasului la fiecare iteraie


 pas constant
 pas variabil
de regul este din ce n ce mai mic, pe msur ce ne apropiem
de punctul staionar


pas optim
deplasarea pe direcia respectiv se face pn cnd se atinge
minimul pe aceast direcie
determinarea pasului optim crete volumul de calcule la fiecare
iteraie
exist metode care impun utilizarea pasului optim la fiecare
iteraie
determinarea pasului optim pe o anumit direcie se mai
numete cutare liniar exact
determinarea pasului optim const n a stabili min f (x k + h k )

2.3.1. Aspecte generale privitoare la


metodele de cutare


Interpretarea geometric a pasului optim

xk
f(x)=c1
f(x)=c2

hk
xk+1

2.3.1. Aspecte generale privitoare la


metodele de cutare


Calcularea pasului optim


f ( x k +1 ) = f (x k ) + f ( x k ), h k

2 k
+
h , Hkhk
2

Minimizez f (x k +1 ( ))

df (x

k +1

d




( ))

= 0 f (x k ), h k + h k , H k h k = 0

* =

f (x k ), h k
h k , H (x k )h k

valoare aproximativ a pasului optim


pentru cutarea liniar exact se folosesc proceduri mai precise metode de eliminare i de interpolare
n cazul funciilor ptratice formula este exact

2.3.1. Aspecte generale privitoare la


metodele de cutare
Convergena procedurilor de cutare
 Teorem
k +1

Fie un ir de iteraii de forma x = x + k h n care direciile hk sunt


admisibile ( f (x), h < 0 ). Dac n punctele xk ale irului gradientul
este continuu i Hk > 0, atunci este posibil s alegem paii de
deplasare k la fiecare iteraie astfel nct s obinem convergena
irului xk ctre punctul staionar x*.


Observaii



Dac H(x*)>0, atunci x* este punct de minim.


Conform proprietii anterioare, convergena este legat de semnul
matricei Hessian, putnd fi asigurat atunci cnd aceasta este pozitiv
definit n punctele irului de iteraii.

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop
 n cadrul metodelor iterative de cutare trebuie introdus un
criteriu se stop (de oprire a calculelor sau de convergen)
 Alegerea criteriului de stop este funcie de particularitile
problemei i este dictat de o serie de consideraii:


dac exist dubii privind convergena procedurii iterative, se


recomand limitarea numrului de iteraii, n afara introducerii
criteriului de stop propriu-zis;
la metodele care apeleaz la calcularea gradientului f(x) al funciei
obiectiv, pentru problemele fr restricii se poate folosi:
f (x k )

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


criterii absolute de stop bazate pe variaia argumentului sau a


funciei:

x k x k 1


f (x k ) f (x k 1 )

n locul criteriilor absolute sunt preferate criteriile relative:

x k x k 1
x


sau

sau

f (x k ) f (x k 1 )

f (x k )

dac ||x*|| sau f(x*) sunt foarte apropiate de zero, atunci criteriile
relative nu sunt utilizabile i se folosesc:

x k x k 1
1+ x

sau

f (x k ) f ( x k 1 )
1 + f (x )
k

2.3.1. Aspecte generale privitoare la


metodele de cutare
Criterii de stop


folosirea exclusiv a unui criteriu bazat pe variaia argumentului sau


a funciei poate conduce la rezultate eronate
f(x)
f

f(x)

x
x

x
(a)

x (b)

aceste situaii pot fi prentmpinate prin utilizarea combinat, n cadrul


aceluiai program, a ambelor criterii

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2. METODE VARIAIONALE CLASICE




Metodele clasice de rezolvare a problemelor de optimizare


au la baz algoritmul Euler Lagrange pentru problemele
variaionale
Algoritmul Euler Lagrange poate fi utilizat n rezolvarea
problemelor de optimizare



aplicarea este, n general, dificil n cazul problemelor cu restricii


n cazul problemelor cu restricii sunt mai utile metodele variaionale
moderne
au la baz principiul minimului i principiul optimalitii - metode strns
legate de rezultatele obinute n cadrul calculului variaional, fiind o
extindere a acestora

2.1. Metode pentru rezolvarea


problemelor variaionale


Se cere determinarea funciei x(t) care extremizeaz


integrala
tf

I=

L( x (t ), x (t ), t )dt , x =
t0

dx
dt

(1)

Se consider iniial c funcia L depinde de o singur


variabil dependent, adic x(t ) R
L are derivate de ordinul al doilea continue n raport cu
x(t ) este continu n intervalul [t0 , t f ]
toate argumentele, iar

2.1.1. Mrimi variaionale




Fie x variaia lui x(t ) - creterea lui x pentru t fixat

x = (t ), x = (t )
d
d
dx(t )

( x) = (t ) = (t ) =
dt
dt
dt

(2)

- operatorii i d/dt comut

(3)

Se pune problema determinrii modificrii funciei L, dar mai ales


a funcionalei I atunci cnd x variaz cu x
x + x = x + (t )

Creterea funcionalei I este


tf

I ( ) = I ( ) I =

L( x + , x + , t )dt L( x, x, t )dt
t0

tf

t0

(4)

dI ( )
2 d 2 I ( )
+
+ ... (5)
Se dezvolt n serie Taylor I ( ) =
2
d =0 2! d =0

2.1.1. Mrimi variaionale




Se noteaz
- prima variaie a funcionalei

dI ( )
I ( ) =
d =0

2 2
d I ( )

- a doua variaie a funcionalei 2 I ( ) =


2! d 2 =0
I ( ) = I ( ) + 2 I ( ) + ...



(6)

(7)
(8)

(9)
Pentru foarte mic I ( ) I ( )
Dac pentru un anumit x(t) funcionala I atinge minimul la = 0
atunci, ntr-o vecintate, creterea trebuie s fie pozitiv
dI ( )

0
d =0
dI ( )
(10)
= 0 sau I ( ) = 0
Condiia necesar de minim
d =0

2.1.2. Algoritmul Euler Lagrange


Se consider problema anterioar cu condiii de capt fixate

x =
x

x(t ) = x* +

tf

I ( ) =

(t0 ) = (t f )

x (t )

*
*

L
(
x
+

,
x
+ , t )dt

t0

tf

dI
L
L

= *
+

dt
*
d t ( x + )
( x + )

x* (t ) extremal
tf

t0

dI
d

tf

tf

=0

tf

L( x* , x* , t )
L( x* , x* , t )
=
+
dt = 0
*
*
x
x

t0
tf

L
L
d L
d L

dt
=

dt
=

dt

*
dt

x*
x* t0 t dt x*

x
t
0

I =

dI

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

2.1.2. Algoritmul Euler Lagrange


Lema fundamental a calculului variaional
Fie f (t ) o funcie difereniabil pe [t0 , t f ] i (t ) o funcie continu pe
acelai interval, cu

(t0 ) = (t f ) = 0
tf

Dac I =

f (t ) (t )dt = 0
t0

pe intervalul [t0 , t f ]

pentru orice (t ) atunci f (t ) 0

2.1.2. Algoritmul Euler Lagrange


dI
I =

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

pentru orice (t )

L( x, x , t ) d L( x, x , t )

= 0 - condiia necesar de extrem (Euler) (11)


x
dt
x

2L
2L
2 L L

x (t ) +
x (t ) +

=0
xx
xx
xt x
Ecuaia Euler se generalizeaz i pentru
integrale cu mai multe variabile independente
integrale care conin derivate de ordin superior
integrale cu mai multe variabile dependente

(12)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi de tip funcie


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus

h(t , x (t )) = 0, h R p , p < n


Se construiete funcia sintetic

F ( x , x , , t ) = L( x , x , t ) + T (t ) h( x , t )


(13)

(14)

Condiia necesar de extrem Euler Lagrange

F d F

=0
*
*
x dt x
ecuaie de aceeai form cu (11), scris ns pentru F
ecuaia Euler Lagrange a funciei F n raport cu variabila conduce la
legturile (13)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi izoperimetrice


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus
tf

f ( x , x , t )dt = k , k R p , f R p

(15)

t0


Problema poate fi redus la cea cu legturi de tip funcie prin


introducerea variabilei p-dimensionale
tf

x0 (t ) =

f ( x, x , t )dt , x0 (t ) R p

x 0 (t ) = f ( x , x , t )

(16)

t0


Formm funcia sintetic

F ( x, x , , t ) = L( x, x , t ) + T [ f ( x, x , t ) x 0 (t )]

(17)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange


Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x

F d F L f
d L f

=
+ T + T
x dt x x x
dt x x


= 0

Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x0

d
(t ) = 0 (t ) = const.
dt


(18)

(19)

Ecuaia Euler Lagrange n raport cu variabila x0 ofer doar (19)


se poate renuna la x0 din expresia lui F, obinnd astfel o alt
funcie sintetic

H ( x , x , , t ) = L( x , x , t ) + T f ( x , x , t )
funcia sintetic a lui Hamilton (Hamiltonian)

(20)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se consider sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R n , t [t0 , t f ] R

(21)

Se cere s se determine comanda u(t) care minimizeaz


indicele de performan
tf

I=

L( x (t ), u(t ), t )dt ,

(22)

t0

variabilele x(t) i u(t) fiind legate prin ecuaia (21) a sistemului,


condiiile iniiale i respectiv finale fiind fixate
problema se poate reformula ca o cerin de minimizare a
funcionalei (22) cu legtura suplimentar (21) impus de sistem
h( x , x , u, t ) = x f ( x , u, t ) = 0

(23)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se formeaz funcia sintetic

F ( x, x , , u, t ) = L( x, u, t ) + T (t )[ f ( x, u, t ) x ], R n

(24)

Obs.: (21) x (t ) = f ( x ( ), u( ), )d se putea formula problema


t0

ca una de extremizare a funcionalei (40) cu o condiie izoperimetric

Se introduce hamiltonianul
H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )
(24)+(25)

F ( x , x , u, , t ) = H ( x , u, , t ) T (t ) x (t )

(25)
(26)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Ecuaiile EL pentru funcia sintetic F n raport cu u, x i

F d F

=0

u dt u
F d F

=0
x dt x
F d F

=0

dt

H
= 0 - condiia necesar de extrem
*
u

(27)

H
* (t )
=

x*

(28)

H
*

=
x
(t )
*

- ecuaiile canonice
ale lui Hamilton
(29)

2.2. Probleme de conducere optimal


cu condiii terminale fixate
dH H
H
H H

= T x+ T u+ T +
dt x
t
u

dH H
=
dt
t
dH
Pentru problemele invariante
=0
dt
H ( x , u, ) este constant pe traiectoria extremal
Pe traiectoria extremal

Modalitate de rezolvare a ecuaiilor (27)-(29) ?

(30)

(31)
(32)

2.3. Probleme de conducere optimal cu


condiii terminale libere i semilibere
2.3.1. Probleme cu condiii finale libere


Se cere determinarea comenzii optimale u* (t ) , care transfer


sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R m

(33)

f
din condiiile iniiale x (t0 ) fixate ntr-o stare final x = x (t f ) liber
n R n , cu t f > t0 liber, astfel nct s se minimizeze criteriul
tf

I = M (t f , x f ) +

L( x(t ), u(t ), t )dt


t0

Nu se impun restricii asupra strii i comenzii

(34)

2.3.1. Probleme cu condiii finale libere


tf

I = M (t f , x f ) + [ H ( x , u, , t ) T (t ) x (t )]dt
t0
tf

H ( x, u, , t )dt (t ) x (t )

I = M (t f , x ) +
f

t0


tf
t0

(35)
tf

T (t ) x (t )dt

(36)

t0

Se consider o variaie u fa de comanda optimal u*(t)


variaiile x,
, tf, xf, I (t0=0, x0=0)
Se impune condiia necesar de extrem I=0 i avnd n vedere
c tf i xf sunt oarecare rezult:



satisfacerea ecuaiilor lui Hamilton (27, 28, 29)


satisfacerea condiiilor de transversalitate

M (t f , x f )
x f
M (t f , x f )
t f

= * (t f )
+ H ( x* (t f ), u* (t f ), * (t f ), t f ) = 0

(37)

(38)

2.3.2. Probleme cu stri terminale libere


pe o submulime
Starea final pe o traiectorie dat


Se consider problema de la 2.3.1 dar se impune ca

x f = g (t f )

(39)

Condiiile de transversalitate (37), (38) sunt nlocuite de


T

M (t f , x )

M
(
t
,
x
) *
f
*
*
*
+ H [ x (t f ), u (t f ), (t f ), t f ] +
(t f ) g (t f ) = 0 (40)
f
t f
x

2.3.2. Probleme cu stri terminale libere


pe o submulime
Strile terminale libere pe suprafee date


Se consider problema de la 2.3.1. dar se impune ca x(t0)X0 i


x(tf)Xf

X 0 definit de I ( x , t ) = 0; I are dim. q0

(41)

X f definit de F ( x , t ) = 0; F are dim. q1

(42)

tf

I ' = I T I ( x, t )

t =t0

+ T F ( x, t )

t =t f

= L( x, u, t )dt + M '(t0 , x0 , t f , x f ) (43)


t0

M '(t0 , x , t f , x ) = M (t0 , x , t f , x ) T I ( x , t )
0

M
(t0 ) =
x

M
(t f ) =
x

x , t0

x ,tf

I
+ T
x

x , t0

F
+ T
x

x ,tf

t = t0

+ T F ( x, t )

t =t f

(44)
(45)

condiiile de transversalitate
(46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare
1. n problemele cu condiii terminale fixate nu apar condiii de
transversalitate
2. n problemele cu momente terminale t0 i tf libere i stri terminale x0
i xf fixate apar condiii de transversalitate referitoare la aceste
momente (relaia (38) i similar acesteia pentru t0)
3. n problemele cu momente terminale t0 i tf fixate i stri terminale x0
i xf libere apar condiii de transversalitate referitoare la aceste stri
(relaia (37) i similara acesteia pentru x0)
4. n problemele cu momente i stri terminale libere apar ambele tipuri
de condiii de transversalitate precizate la 2. i 3.
5. n problemele cu t0 i x0 fixai, tf liber i xf fixat pe o curb, condiia de
transversalitate este (40); o condiie similar se poate scrie i pentru
captul iniial
6. n problemele cu t0 i tf fixai, x0 i xf libere pe anumite suprafee,
condiiile de transversalitate sunt de forma (45) i (46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare


La captul unde starea x(t) este liber, costarea (t) este


fixat, iar la captul unde starea x(t) este fixat, costarea (t)
este liber


Aceast situaie poate s apar doar n legtur cu anumite


variabile de stare, fr s se extind asupra ntregului vector de
stare x(t)

Specific n astfel de probleme este faptul c




unele variabile se pot fixa la ambele capete ale traiectoriei i


atunci se spune c avem o problem bilocal n raport cu
aceste variabile
alte variabile nu se fixeaz la nici un capt, ceea ce determin
fixarea multiplicatorilor la capete i avem o problem bilocal
n raport cu aceti multiplicatori

2.4. Condiii necesare i suficiente de


extrem



Satisfacerea ecuaiilor Euler Lagrange nu asigur n mod obligatoriu


extremizarea funcionalei
Ecuaiile i condiiile de transversalitate



n mulimea comenzilor admisibile


Nu orice soluie a acestor ecuaii determin o traiectorie extremal





uneori, considerente fizice conduc la concluzia c problema admite o


singur extremal i c aceasta reprezint traiectoria optim cutat

Condiiile suficiente de extrem se refer la extreme locale, deci nu


garanteaz c extremul obinut este absolut


din mulimea traiectoriilor extremale trebuie aleas cea optim, care


asigur minimul global

n general problema existenei i unicitii extremalei este dificil




nu admit nici o soluie


admit o soluie
admit mai multe soluii

cunoscnd toate extremele de pe mulimea traiectoriilor admise, separarea


extremului absolut nu prezint dificulti deosebite

Calculul variaional clasic ofer o serie de condiii necesare de extrem,


toate acestea la un loc formnd condiia suficient de extrem

2.4. Condiii necesare i suficiente de


extrem
a) Condiii Euler Lagrange - subcapitolul 2.1 pentru problemele
variaionale i 2.2 pentru problemele de comand optimal
b) Condiii de transversalitate subcapitolul 2.3 problemele de comand
optimal
c) Condiia Legendre


probleme variaionale cu condiii de capt fixate

xR :

2L
0
2
x

2L
2L

1 n
1 1
2

0
=
x Rn :
T
x x
2

2
L L
x x
xn xn
n 1

(47)

(48)

2.4. Condiii necesare i suficiente de


extrem


probleme de conducere optimal de tip Bolza cu condiii iniiale fixate


*

H
(i )
=0
u
*

2H
(ii ) 2 > 0
u
2H 2H
2

u
x

0
(iii )
2
2
H H

2
x
u

u
2H
0
(iv)
2
x
2M
0
2
x f

(49)

2.4. Condiii necesare i suficiente de


extrem
d) Condiia suficient Jacobi-Legendre
e) Condiia Weierstrass
f) Condiia Erdman-Weierstrass
Observaii:






Condiiile de extrem (a)...(f) sunt toate condiii necesare. Ansamblul


acestor condiii ofer condiia suficient de extrem
n anumite probleme nu trebuie considerate toate condiiile (a...f) pentru a
verifica suficiena
Pentru verificarea suficienei trebuie utilizate toate cele ase condiii de
extrem numai n cazul folosirii formelor mai puin restrictive ale acestora
Se pot folosi n afar de (a) doar condiiile Jacobi i Legendre, dac
aceasta din urm este verificat strict
n problemele de conducere optimal se poate apela doar la condiia
Legendre extins sub forma relaiilor (49)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2. METODE VARIAIONALE CLASICE




Metodele clasice de rezolvare a problemelor de optimizare


au la baz algoritmul Euler Lagrange pentru problemele
variaionale
Algoritmul Euler Lagrange poate fi utilizat n rezolvarea
problemelor de optimizare



aplicarea este, n general, dificil n cazul problemelor cu restricii


n cazul problemelor cu restricii sunt mai utile metodele variaionale
moderne
au la baz principiul minimului i principiul optimalitii - metode strns
legate de rezultatele obinute n cadrul calculului variaional, fiind o
extindere a acestora

2.1. Metode pentru rezolvarea


problemelor variaionale


Se cere determinarea funciei x(t) care extremizeaz


integrala
tf

I=

L( x (t ), x (t ), t )dt , x =
t0

dx
dt

(1)

Se consider iniial c funcia L depinde de o singur


variabil dependent, adic x(t ) R
L are derivate de ordinul al doilea continue n raport cu
x(t ) este continu n intervalul [t0 , t f ]
toate argumentele, iar

2.1.1. Mrimi variaionale




Fie x variaia lui x(t ) - creterea lui x pentru t fixat

x = (t ), x = (t )
d
d
dx(t )

( x) = (t ) = (t ) =
dt
dt
dt

(2)

- operatorii i d/dt comut

(3)

Se pune problema determinrii modificrii funciei L, dar mai ales


a funcionalei I atunci cnd x variaz cu x
x + x = x + (t )

Creterea funcionalei I este


tf

I ( ) = I ( ) I =

L( x + , x + , t )dt L( x, x, t )dt
t0

tf

t0

(4)

dI ( )
2 d 2 I ( )
+
+ ... (5)
Se dezvolt n serie Taylor I ( ) =
2
d =0 2! d =0

2.1.1. Mrimi variaionale




Se noteaz
- prima variaie a funcionalei

dI ( )
I ( ) =
d =0

2 2
d I ( )

- a doua variaie a funcionalei 2 I ( ) =


2! d 2 =0
I ( ) = I ( ) + 2 I ( ) + ...



(6)

(7)
(8)

(9)
Pentru foarte mic I ( ) I ( )
Dac pentru un anumit x(t) funcionala I atinge minimul la = 0
atunci, ntr-o vecintate, creterea trebuie s fie pozitiv
dI ( )

0
d =0
dI ( )
(10)
= 0 sau I ( ) = 0
Condiia necesar de minim
d =0

2.1.2. Algoritmul Euler Lagrange


Se consider problema anterioar cu condiii de capt fixate

x =
x

x(t ) = x* +

tf

I ( ) =

(t0 ) = (t f )

x (t )

*
*

L
(
x
+

,
x
+ , t )dt

t0

tf

dI
L
L

= *
+

dt
*
d t ( x + )
( x + )

x* (t ) extremal
tf

t0

dI
d

tf

tf

=0

tf

L( x* , x* , t )
L( x* , x* , t )
=
+
dt = 0
*
*
x
x

t0
tf

L
L
d L
d L

dt
=

dt
=

dt

*
dt

x*
x* t0 t dt x*

x
t
0

I =

dI

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

2.1.2. Algoritmul Euler Lagrange


Lema fundamental a calculului variaional
Fie f (t ) o funcie difereniabil pe [t0 , t f ] i (t ) o funcie continu pe
acelai interval, cu

(t0 ) = (t f ) = 0
tf

Dac I =

f (t ) (t )dt = 0
t0

pe intervalul [t0 , t f ]

pentru orice (t ) atunci f (t ) 0

2.1.2. Algoritmul Euler Lagrange


dI
I =

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

pentru orice (t )

L( x, x , t ) d L( x, x , t )

= 0 - condiia necesar de extrem (Euler) (11)


x
dt
x

2L
2L
2 L L

x (t ) +
x (t ) +

=0
xx
xx
xt x
Ecuaia Euler se generalizeaz i pentru
integrale cu mai multe variabile independente
integrale care conin derivate de ordin superior
integrale cu mai multe variabile dependente

(12)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi de tip funcie


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus

h(t , x (t )) = 0, h R p , p < n


Se construiete funcia sintetic

F ( x , x , , t ) = L( x , x , t ) + T (t ) h( x , t )


(13)

(14)

Condiia necesar de extrem Euler Lagrange

F d F

=0
*
*
x dt x
ecuaie de aceeai form cu (11), scris ns pentru F
ecuaia Euler Lagrange a funciei F n raport cu variabila conduce la
legturile (13)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi izoperimetrice


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus
tf

f ( x , x , t )dt = k , k R p , f R p

(15)

t0


Problema poate fi redus la cea cu legturi de tip funcie prin


introducerea variabilei p-dimensionale
tf

x0 (t ) =

f ( x, x , t )dt , x0 (t ) R p

x 0 (t ) = f ( x , x , t )

(16)

t0


Formm funcia sintetic

F ( x, x , , t ) = L( x, x , t ) + T [ f ( x, x , t ) x 0 (t )]

(17)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange


Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x

F d F L f
d L f

=
+ T + T
x dt x x x
dt x x


= 0

Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x0

d
(t ) = 0 (t ) = const.
dt


(18)

(19)

Ecuaia Euler Lagrange n raport cu variabila x0 ofer doar (19)


se poate renuna la x0 din expresia lui F, obinnd astfel o alt
funcie sintetic

H ( x , x , , t ) = L( x , x , t ) + T f ( x , x , t )
funcia sintetic a lui Hamilton (Hamiltonian)

(20)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se consider sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R n , t [t0 , t f ] R

(21)

Se cere s se determine comanda u(t) care minimizeaz


indicele de performan
tf

I=

L( x (t ), u(t ), t )dt ,

(22)

t0

variabilele x(t) i u(t) fiind legate prin ecuaia (21) a sistemului,


condiiile iniiale i respectiv finale fiind fixate
problema se poate reformula ca o cerin de minimizare a
funcionalei (22) cu legtura suplimentar (21) impus de sistem
h( x , x , u, t ) = x f ( x , u, t ) = 0

(23)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se formeaz funcia sintetic

F ( x, x , , u, t ) = L( x, u, t ) + T (t )[ f ( x, u, t ) x ], R n

(24)

Obs.: (21) x (t ) = f ( x ( ), u( ), )d se putea formula problema


t0

ca una de extremizare a funcionalei (40) cu o condiie izoperimetric

Se introduce hamiltonianul
H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )
(24)+(25)

F ( x , x , u, , t ) = H ( x , u, , t ) T (t ) x (t )

(25)
(26)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Ecuaiile EL pentru funcia sintetic F n raport cu u, x i

F d F

=0

u dt u
F d F

=0
x dt x
F d F

=0

dt

H
= 0 - condiia necesar de extrem
*
u

(27)

H
* (t )
=

x*

(28)

H
*

=
x
(t )
*

- ecuaiile canonice
ale lui Hamilton
(29)

2.2. Probleme de conducere optimal


cu condiii terminale fixate
dH H
H
H H

= T x+ T u+ T +
dt x
t
u

dH H
=
dt
t
dH
Pentru problemele invariante
=0
dt
H ( x , u, ) este constant pe traiectoria extremal
Pe traiectoria extremal

Modalitate de rezolvare a ecuaiilor (27)-(29) ?

(30)

(31)
(32)

2.3. Probleme de conducere optimal cu


condiii terminale libere i semilibere
2.3.1. Probleme cu condiii finale libere


Se cere determinarea comenzii optimale u* (t ) , care transfer


sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R m

(33)

f
din condiiile iniiale x (t0 ) fixate ntr-o stare final x = x (t f ) liber
n R n , cu t f > t0 liber, astfel nct s se minimizeze criteriul
tf

I = M (t f , x f ) +

L( x(t ), u(t ), t )dt


t0

Nu se impun restricii asupra strii i comenzii

(34)

2.3.1. Probleme cu condiii finale libere


tf

I = M (t f , x f ) + [ H ( x , u, , t ) T (t ) x (t )]dt
t0
tf

H ( x, u, , t )dt (t ) x (t )

I = M (t f , x ) +
f

t0


tf
t0

(35)
tf

T (t ) x (t )dt

(36)

t0

Se consider o variaie u fa de comanda optimal u*(t)


variaiile x,
, tf, xf, I (t0=0, x0=0)
Se impune condiia necesar de extrem I=0 i avnd n vedere
c tf i xf sunt oarecare rezult:



satisfacerea ecuaiilor lui Hamilton (27, 28, 29)


satisfacerea condiiilor de transversalitate

M (t f , x f )
x f
M (t f , x f )
t f

= * (t f )
+ H ( x* (t f ), u* (t f ), * (t f ), t f ) = 0

(37)

(38)

2.3.2. Probleme cu stri terminale libere


pe o submulime
Starea final pe o traiectorie dat


Se consider problema de la 2.3.1 dar se impune ca

x f = g (t f )

(39)

Condiiile de transversalitate (37), (38) sunt nlocuite de


T

M (t f , x )

M
(
t
,
x
) *
f
*
*
*
+ H [ x (t f ), u (t f ), (t f ), t f ] +
(t f ) g (t f ) = 0 (40)
f
t f
x

2.3.2. Probleme cu stri terminale libere


pe o submulime
Strile terminale libere pe suprafee date


Se consider problema de la 2.3.1. dar se impune ca x(t0)X0 i


x(tf)Xf

X 0 definit de I ( x , t ) = 0; I are dim. q0

(41)

X f definit de F ( x , t ) = 0; F are dim. q1

(42)

tf

I ' = I T I ( x, t )

t =t0

+ T F ( x, t )

t =t f

= L( x, u, t )dt + M '(t0 , x0 , t f , x f ) (43)


t0

M '(t0 , x , t f , x ) = M (t0 , x , t f , x ) T I ( x , t )
0

M
(t0 ) =
x

M
(t f ) =
x

x , t0

x ,tf

I
+ T
x

x , t0

F
+ T
x

x ,tf

t = t0

+ T F ( x, t )

t =t f

(44)
(45)

condiiile de transversalitate
(46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare
1. n problemele cu condiii terminale fixate nu apar condiii de
transversalitate
2. n problemele cu momente terminale t0 i tf libere i stri terminale x0
i xf fixate apar condiii de transversalitate referitoare la aceste
momente (relaia (38) i similar acesteia pentru t0)
3. n problemele cu momente terminale t0 i tf fixate i stri terminale x0
i xf libere apar condiii de transversalitate referitoare la aceste stri
(relaia (37) i similara acesteia pentru x0)
4. n problemele cu momente i stri terminale libere apar ambele tipuri
de condiii de transversalitate precizate la 2. i 3.
5. n problemele cu t0 i x0 fixai, tf liber i xf fixat pe o curb, condiia de
transversalitate este (40); o condiie similar se poate scrie i pentru
captul iniial
6. n problemele cu t0 i tf fixai, x0 i xf libere pe anumite suprafee,
condiiile de transversalitate sunt de forma (45) i (46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare


La captul unde starea x(t) este liber, costarea (t) este


fixat, iar la captul unde starea x(t) este fixat, costarea (t)
este liber


Aceast situaie poate s apar doar n legtur cu anumite


variabile de stare, fr s se extind asupra ntregului vector de
stare x(t)

Specific n astfel de probleme este faptul c




unele variabile se pot fixa la ambele capete ale traiectoriei i


atunci se spune c avem o problem bilocal n raport cu
aceste variabile
alte variabile nu se fixeaz la nici un capt, ceea ce determin
fixarea multiplicatorilor la capete i avem o problem bilocal
n raport cu aceti multiplicatori

2.4. Condiii necesare i suficiente de


extrem



Satisfacerea ecuaiilor Euler Lagrange nu asigur n mod obligatoriu


extremizarea funcionalei
Ecuaiile i condiiile de transversalitate



n mulimea comenzilor admisibile


Nu orice soluie a acestor ecuaii determin o traiectorie extremal





uneori, considerente fizice conduc la concluzia c problema admite o


singur extremal i c aceasta reprezint traiectoria optim cutat

Condiiile suficiente de extrem se refer la extreme locale, deci nu


garanteaz c extremul obinut este absolut


din mulimea traiectoriilor extremale trebuie aleas cea optim, care


asigur minimul global

n general problema existenei i unicitii extremalei este dificil




nu admit nici o soluie


admit o soluie
admit mai multe soluii

cunoscnd toate extremele de pe mulimea traiectoriilor admise, separarea


extremului absolut nu prezint dificulti deosebite

Calculul variaional clasic ofer o serie de condiii necesare de extrem,


toate acestea la un loc formnd condiia suficient de extrem

2.4. Condiii necesare i suficiente de


extrem
a) Condiii Euler Lagrange - subcapitolul 2.1 pentru problemele
variaionale i 2.2 pentru problemele de comand optimal
b) Condiii de transversalitate subcapitolul 2.3 problemele de comand
optimal
c) Condiia Legendre


probleme variaionale cu condiii de capt fixate

xR :

2L
0
2
x

2L
2L

1 n
1 1
2

0
=
x Rn :
T
x x
2

2
L L
x x
xn xn
n 1

(47)

(48)

2.4. Condiii necesare i suficiente de


extrem


probleme de conducere optimal de tip Bolza cu condiii iniiale fixate


*

H
(i )
=0
u
*

2H
(ii ) 2 > 0
u
2H 2H
2

u
x

0
(iii )
2
2
H H

2
x
u

u
2H
0
(iv)
2
x
2M
0
2
x f

(49)

2.4. Condiii necesare i suficiente de


extrem
d) Condiia suficient Jacobi-Legendre
e) Condiia Weierstrass
f) Condiia Erdman-Weierstrass
Observaii:






Condiiile de extrem (a)...(f) sunt toate condiii necesare. Ansamblul


acestor condiii ofer condiia suficient de extrem
n anumite probleme nu trebuie considerate toate condiiile (a...f) pentru a
verifica suficiena
Pentru verificarea suficienei trebuie utilizate toate cele ase condiii de
extrem numai n cazul folosirii formelor mai puin restrictive ale acestora
Se pot folosi n afar de (a) doar condiiile Jacobi i Legendre, dac
aceasta din urm este verificat strict
n problemele de conducere optimal se poate apela doar la condiia
Legendre extins sub forma relaiilor (49)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2. METODE VARIAIONALE CLASICE




Metodele clasice de rezolvare a problemelor de optimizare


au la baz algoritmul Euler Lagrange pentru problemele
variaionale
Algoritmul Euler Lagrange poate fi utilizat n rezolvarea
problemelor de optimizare



aplicarea este, n general, dificil n cazul problemelor cu restricii


n cazul problemelor cu restricii sunt mai utile metodele variaionale
moderne
au la baz principiul minimului i principiul optimalitii - metode strns
legate de rezultatele obinute n cadrul calculului variaional, fiind o
extindere a acestora

2.1. Metode pentru rezolvarea


problemelor variaionale


Se cere determinarea funciei x(t) care extremizeaz


integrala
tf

I=

L( x (t ), x (t ), t )dt , x =
t0

dx
dt

(1)

Se consider iniial c funcia L depinde de o singur


variabil dependent, adic x(t ) R
L are derivate de ordinul al doilea continue n raport cu
x(t ) este continu n intervalul [t0 , t f ]
toate argumentele, iar

2.1.1. Mrimi variaionale




Fie x variaia lui x(t ) - creterea lui x pentru t fixat

x = (t ), x = (t )
d
d
dx(t )

( x) = (t ) = (t ) =
dt
dt
dt

(2)

- operatorii i d/dt comut

(3)

Se pune problema determinrii modificrii funciei L, dar mai ales


a funcionalei I atunci cnd x variaz cu x
x + x = x + (t )

Creterea funcionalei I este


tf

I ( ) = I ( ) I =

L( x + , x + , t )dt L( x, x, t )dt
t0

tf

t0

(4)

dI ( )
2 d 2 I ( )
+
+ ... (5)
Se dezvolt n serie Taylor I ( ) =
2
d =0 2! d =0

2.1.1. Mrimi variaionale




Se noteaz
- prima variaie a funcionalei

dI ( )
I ( ) =
d =0

2 2
d I ( )

- a doua variaie a funcionalei 2 I ( ) =


2! d 2 =0
I ( ) = I ( ) + 2 I ( ) + ...



(6)

(7)
(8)

(9)
Pentru foarte mic I ( ) I ( )
Dac pentru un anumit x(t) funcionala I atinge minimul la = 0
atunci, ntr-o vecintate, creterea trebuie s fie pozitiv
dI ( )

0
d =0
dI ( )
(10)
= 0 sau I ( ) = 0
Condiia necesar de minim
d =0

2.1.2. Algoritmul Euler Lagrange


Se consider problema anterioar cu condiii de capt fixate

x =
x

x(t ) = x* +

tf

I ( ) =

(t0 ) = (t f )

x (t )

*
*

L
(
x
+

,
x
+ , t )dt

t0

tf

dI
L
L

= *
+

dt
*
d t ( x + )
( x + )

x* (t ) extremal
tf

t0

dI
d

tf

tf

=0

tf

L( x* , x* , t )
L( x* , x* , t )
=
+
dt = 0
*
*
x
x

t0
tf

L
L
d L
d L

dt
=

dt
=

dt

*
dt

x*
x* t0 t dt x*

x
t
0

I =

dI

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

2.1.2. Algoritmul Euler Lagrange


Lema fundamental a calculului variaional
Fie f (t ) o funcie difereniabil pe [t0 , t f ] i (t ) o funcie continu pe
acelai interval, cu

(t0 ) = (t f ) = 0
tf

Dac I =

f (t ) (t )dt = 0
t0

pe intervalul [t0 , t f ]

pentru orice (t ) atunci f (t ) 0

2.1.2. Algoritmul Euler Lagrange


dI
I =

tf

=0

L d L
= *
(t )dt = 0
*
dt x
t0 x

pentru orice (t )

L( x, x , t ) d L( x, x , t )

= 0 - condiia necesar de extrem (Euler) (11)


x
dt
x

2L
2L
2 L L

x (t ) +
x (t ) +

=0
xx
xx
xt x
Ecuaia Euler se generalizeaz i pentru
integrale cu mai multe variabile independente
integrale care conin derivate de ordin superior
integrale cu mai multe variabile dependente

(12)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi de tip funcie


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus

h(t , x (t )) = 0, h R p , p < n


Se construiete funcia sintetic

F ( x , x , , t ) = L( x , x , t ) + T (t ) h( x , t )


(13)

(14)

Condiia necesar de extrem Euler Lagrange

F d F

=0
*
*
x dt x
ecuaie de aceeai form cu (11), scris ns pentru F
ecuaia Euler Lagrange a funciei F n raport cu variabila conduce la
legturile (13)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange
Legturi izoperimetrice


Se consider problema minimizrii funcionalei (1) cu condiiile de


capt fixate i n plus
tf

f ( x , x , t )dt = k , k R p , f R p

(15)

t0


Problema poate fi redus la cea cu legturi de tip funcie prin


introducerea variabilei p-dimensionale
tf

x0 (t ) =

f ( x, x , t )dt , x0 (t ) R p

x 0 (t ) = f ( x , x , t )

(16)

t0


Formm funcia sintetic

F ( x, x , , t ) = L( x, x , t ) + T [ f ( x, x , t ) x 0 (t )]

(17)

2.1.2. Probleme cu legturi. Multiplicatori


Lagrange


Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x

F d F L f
d L f

=
+ T + T
x dt x x x
dt x x


= 0

Ecuaia Euler Lagrange pentru funcia sintetic F n raport cu


variabila x0

d
(t ) = 0 (t ) = const.
dt


(18)

(19)

Ecuaia Euler Lagrange n raport cu variabila x0 ofer doar (19)


se poate renuna la x0 din expresia lui F, obinnd astfel o alt
funcie sintetic

H ( x , x , , t ) = L( x , x , t ) + T f ( x , x , t )
funcia sintetic a lui Hamilton (Hamiltonian)

(20)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se consider sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R n , t [t0 , t f ] R

(21)

Se cere s se determine comanda u(t) care minimizeaz


indicele de performan
tf

I=

L( x (t ), u(t ), t )dt ,

(22)

t0

variabilele x(t) i u(t) fiind legate prin ecuaia (21) a sistemului,


condiiile iniiale i respectiv finale fiind fixate
problema se poate reformula ca o cerin de minimizare a
funcionalei (22) cu legtura suplimentar (21) impus de sistem
h( x , x , u, t ) = x f ( x , u, t ) = 0

(23)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Se formeaz funcia sintetic

F ( x, x , , u, t ) = L( x, u, t ) + T (t )[ f ( x, u, t ) x ], R n

(24)

Obs.: (21) x (t ) = f ( x ( ), u( ), )d se putea formula problema


t0

ca una de extremizare a funcionalei (40) cu o condiie izoperimetric

Se introduce hamiltonianul
H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )
(24)+(25)

F ( x , x , u, , t ) = H ( x , u, , t ) T (t ) x (t )

(25)
(26)

2.2. Probleme de conducere optimal


cu condiii terminale fixate


Ecuaiile EL pentru funcia sintetic F n raport cu u, x i

F d F

=0

u dt u
F d F

=0
x dt x
F d F

=0

dt

H
= 0 - condiia necesar de extrem
*
u

(27)

H
* (t )
=

x*

(28)

H
*

=
x
(t )
*

- ecuaiile canonice
ale lui Hamilton
(29)

2.2. Probleme de conducere optimal


cu condiii terminale fixate
dH H
H
H H

= T x+ T u+ T +
dt x
t
u

dH H
=
dt
t
dH
Pentru problemele invariante
=0
dt
H ( x , u, ) este constant pe traiectoria extremal
Pe traiectoria extremal

Modalitate de rezolvare a ecuaiilor (27)-(29) ?

(30)

(31)
(32)

2.3. Probleme de conducere optimal cu


condiii terminale libere i semilibere
2.3.1. Probleme cu condiii finale libere


Se cere determinarea comenzii optimale u* (t ) , care transfer


sistemul

x (t ) = f ( x (t ), u(t ), t ), x R n , u R m

(33)

f
din condiiile iniiale x (t0 ) fixate ntr-o stare final x = x (t f ) liber
n R n , cu t f > t0 liber, astfel nct s se minimizeze criteriul
tf

I = M (t f , x f ) +

L( x(t ), u(t ), t )dt


t0

Nu se impun restricii asupra strii i comenzii

(34)

2.3.1. Probleme cu condiii finale libere


tf

I = M (t f , x f ) + [ H ( x , u, , t ) T (t ) x (t )]dt
t0
tf

H ( x, u, , t )dt (t ) x (t )

I = M (t f , x ) +
f

t0


tf
t0

(35)
tf

T (t ) x (t )dt

(36)

t0

Se consider o variaie u fa de comanda optimal u*(t)


variaiile x,
, tf, xf, I (t0=0, x0=0)
Se impune condiia necesar de extrem I=0 i avnd n vedere
c tf i xf sunt oarecare rezult:



satisfacerea ecuaiilor lui Hamilton (27, 28, 29)


satisfacerea condiiilor de transversalitate

M (t f , x f )
x f
M (t f , x f )
t f

= * (t f )
+ H ( x* (t f ), u* (t f ), * (t f ), t f ) = 0

(37)

(38)

2.3.2. Probleme cu stri terminale libere


pe o submulime
Starea final pe o traiectorie dat


Se consider problema de la 2.3.1 dar se impune ca

x f = g (t f )

(39)

Condiiile de transversalitate (37), (38) sunt nlocuite de


T

M (t f , x )

M
(
t
,
x
) *
f
*
*
*
+ H [ x (t f ), u (t f ), (t f ), t f ] +
(t f ) g (t f ) = 0 (40)
f
t f
x

2.3.2. Probleme cu stri terminale libere


pe o submulime
Strile terminale libere pe suprafee date


Se consider problema de la 2.3.1. dar se impune ca x(t0)X0 i


x(tf)Xf

X 0 definit de I ( x , t ) = 0; I are dim. q0

(41)

X f definit de F ( x , t ) = 0; F are dim. q1

(42)

tf

I ' = I T I ( x, t )

t =t0

+ T F ( x, t )

t =t f

= L( x, u, t )dt + M '(t0 , x0 , t f , x f ) (43)


t0

M '(t0 , x , t f , x ) = M (t0 , x , t f , x ) T I ( x , t )
0

M
(t0 ) =
x

M
(t f ) =
x

x , t0

x ,tf

I
+ T
x

x , t0

F
+ T
x

x ,tf

t = t0

+ T F ( x, t )

t =t f

(44)
(45)

condiiile de transversalitate
(46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare
1. n problemele cu condiii terminale fixate nu apar condiii de
transversalitate
2. n problemele cu momente terminale t0 i tf libere i stri terminale x0
i xf fixate apar condiii de transversalitate referitoare la aceste
momente (relaia (38) i similar acesteia pentru t0)
3. n problemele cu momente terminale t0 i tf fixate i stri terminale x0
i xf libere apar condiii de transversalitate referitoare la aceste stri
(relaia (37) i similara acesteia pentru x0)
4. n problemele cu momente i stri terminale libere apar ambele tipuri
de condiii de transversalitate precizate la 2. i 3.
5. n problemele cu t0 i x0 fixai, tf liber i xf fixat pe o curb, condiia de
transversalitate este (40); o condiie similar se poate scrie i pentru
captul iniial
6. n problemele cu t0 i tf fixai, x0 i xf libere pe anumite suprafee,
condiiile de transversalitate sunt de forma (45) i (46)

2.3.3. Observaii privind condiiile


terminale n problemele de optimizare


La captul unde starea x(t) este liber, costarea (t) este


fixat, iar la captul unde starea x(t) este fixat, costarea (t)
este liber


Aceast situaie poate s apar doar n legtur cu anumite


variabile de stare, fr s se extind asupra ntregului vector de
stare x(t)

Specific n astfel de probleme este faptul c




unele variabile se pot fixa la ambele capete ale traiectoriei i


atunci se spune c avem o problem bilocal n raport cu
aceste variabile
alte variabile nu se fixeaz la nici un capt, ceea ce determin
fixarea multiplicatorilor la capete i avem o problem bilocal
n raport cu aceti multiplicatori

2.4. Condiii necesare i suficiente de


extrem



Satisfacerea ecuaiilor Euler Lagrange nu asigur n mod obligatoriu


extremizarea funcionalei
Ecuaiile i condiiile de transversalitate



n mulimea comenzilor admisibile


Nu orice soluie a acestor ecuaii determin o traiectorie extremal





uneori, considerente fizice conduc la concluzia c problema admite o


singur extremal i c aceasta reprezint traiectoria optim cutat

Condiiile suficiente de extrem se refer la extreme locale, deci nu


garanteaz c extremul obinut este absolut


din mulimea traiectoriilor extremale trebuie aleas cea optim, care


asigur minimul global

n general problema existenei i unicitii extremalei este dificil




nu admit nici o soluie


admit o soluie
admit mai multe soluii

cunoscnd toate extremele de pe mulimea traiectoriilor admise, separarea


extremului absolut nu prezint dificulti deosebite

Calculul variaional clasic ofer o serie de condiii necesare de extrem,


toate acestea la un loc formnd condiia suficient de extrem

2.4. Condiii necesare i suficiente de


extrem
a) Condiii Euler Lagrange - subcapitolul 2.1 pentru problemele
variaionale i 2.2 pentru problemele de comand optimal
b) Condiii de transversalitate subcapitolul 2.3 problemele de comand
optimal
c) Condiia Legendre


probleme variaionale cu condiii de capt fixate

xR :

2L
0
2
x

2L
2L

1 n
1 1
2

0
=
x Rn :
T
x x
2

2
L L
x x
xn xn
n 1

(47)

(48)

2.4. Condiii necesare i suficiente de


extrem


probleme de conducere optimal de tip Bolza cu condiii iniiale fixate


*

H
(i )
=0
u
*

2H
(ii ) 2 > 0
u
2H 2H
2

u
x

0
(iii )
2
2
H H

2
x
u

u
2H
0
(iv)
2
x
2M
0
2
x f

(49)

2.4. Condiii necesare i suficiente de


extrem
d) Condiia suficient Jacobi-Legendre
e) Condiia Weierstrass
f) Condiia Erdman-Weierstrass
Observaii:






Condiiile de extrem (a)...(f) sunt toate condiii necesare. Ansamblul


acestor condiii ofer condiia suficient de extrem
n anumite probleme nu trebuie considerate toate condiiile (a...f) pentru a
verifica suficiena
Pentru verificarea suficienei trebuie utilizate toate cele ase condiii de
extrem numai n cazul folosirii formelor mai puin restrictive ale acestora
Se pot folosi n afar de (a) doar condiiile Jacobi i Legendre, dac
aceasta din urm este verificat strict
n problemele de conducere optimal se poate apela doar la condiia
Legendre extins sub forma relaiilor (49)

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

METODE
VARIAIONALE
CLASICE

2.5. Metode variaionale clasice de


optimizare n cazul discret


Forma discret a metodelor variaionale este important


deoarece permite



tratarea problemelor de optimizare n cazul discret


o abordare numeric a acestor probleme n cazul sistemelor
continue discretizate

Ca i n cazul continuu, se vor prezenta iniial problemele


variaionale propriu-zise, iar apoi cele de control optimal

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.1. Algoritmul Euler Lagrange discret


Se consider echivalentul discret al funcionalei din cazul


continuu

I=

k f 1

k f 1

L( x (k ), x (k + 1), k ) = Lk

k = k0

k = k0

x ( k ) = x (tk ), x ( k0 ) = x (t0 ), x ( k f ) = x (t f )

tk


- valorile discrete ale timpului

Se consider cuantificarea n timp cu pas constant, deci

x(k ) = x(kT )
T - perioada de eantionare

(1)

2.5.1. Algoritmul Euler Lagrange


discret


Se pleac de la variaiile funciei fa de traiectoria extremal x*

x ( k ) = x * ( k ) + x ( k )
x (k + 1) = x (k + 1) + x ( k +1)
*

(2)

x (k ) = x ( k )
x ( k + 1) = x ( k +1)
x ( k0 ) = x ( k f ) = 0


(3)

Condiiile (3) sunt impuse de fixarea valorilor funciei x la capetele


intervalului

x ( k0 ) = x 0
x (k f ) = x f

2.5.1. Algoritmul Euler Lagrange


discret


Condiia de extrem

k f 1

Lk

Lk
, x(k+1) = 0 (5)
= 0 * , x(k) + *
x (k +1)
k =k0 x (k)

=0
k f 1
T
Lk
Lk
T
(6)

I
=

x
(
k
)
+

x
(
k
+
1)

=0
*
*
x ( k )
x (k + 1)
k = k0
k f 1
kf
L (x(k), x(k +1), k)
L(x(m1), x(m), m1)
k m 1 xT (k +1) k
= xT (m)
x(k +1)
x(m)
k=k0
m=k0+1

I
(4) I = 0 sau

Se revine la notaia k, punnd m = k i reinnd n cadrul sumei numai


termenii ntre k0 i kf-1
k f 1

k 1

f
L
L( x (k 1), x (k ), k 1)
T
T
+
x (k + 1) x (k + 1) = x (k )
x (k )
k = k0
k = k0

k =k f

L( x (k 1), x (k ), k 1)
+ x (k )
x (k )
k =k
T

(7)

2.5.1. Algoritmul Euler Lagrange


discret


(6) + (7)
k f 1

L( x ( k ), x (k + 1), k ) L( x (k 1), x (k ), k 1)
+
+
x (k )

x (k )
x (k )

k = k0
T

+ xT (k )

k =k f

(8)

L( x (k 1), x ( k ), k 1)
=0
x (k )
k =k
0

Termenul al doilea din (8) se anuleaz conform condiiilor (3), sau, n


lui
problemele n care aceste condiii nu sunt ndeplinite, anularea
conduce la condiiile de transversalitate
Primul termen din (8) se anuleaz pentru x(k) oarecare dac

L( x (k ), x (k + 1), k ) L( x (k 1), x (k ), k 1)
+
=0
x (k )
x (k )

ecuaia
Euler Lagrange

(9)

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.2. Condiii de extrem n problemele de conducere
optimal discret


Sistemul

x (k + 1) = f ( x ( k ), u(k ), k ), k = k0 ,..., k f 1, x (k ) R n , u(k ) R m (10)





Condiii iniiale i finale libere


Indicele de calitate

I =M


k =k f
( x ( k ), k ) k = k
0

k f 1

L( x (k ), u(k ), k ),

(11)

k = k0

Hamiltonianul

H ( x (k ), u(k ), ( k + 1), k ) =
= L( x (k ), u(k ), k ) + T (k + 1) f ( x (k ), u(k ), k ), (k ) R n

(12)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret


Pentru simplificare se consider problemele invariante

I =M


k =k f
( x(k )) k =k
0

k f 1

T
[
H
(
x
(
k
),
u
(
k
),

(
k
+
1))

(k + 1) f ( x(k ), u(k ))] (13)

k =k0

Se consider c o variaie u( k ) = ( k ) fa de comanda optimal


produce variaiile
x (k ) = (k ), x (k + 1) = (k + 1), (k + 1) = (k + 1)
fa de starea optimal i costarea optimal i, n final, variaia
indicelui de calitate I
(4) +(13)

T (k f )

M (k f )
x(k f )

T (k0 )

k f 1

M (k0 )
H (k ) T H (k )
+ [T (k )
+ (k )
+
x(k0 ) k =k0
x(k )
u(k )

k 1

f
H (k )
T
] [ T (k +1)(k + 1) + T (k +1) x(k +1)] = 0
+ (k +1)
(k + 1) k =k0

(14)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret
k f 1

T ( k + 1)(k + 1) =

k = k0

kf

T (k )(k ) =

k = k0 +1

= T (k f )(k f ) T ( k0 )(k0 ) +


(14) + (15)

(15)

k f 1

T (k )(k )

k = k0

M (k f )
T
M (k0 )

(k f )
( k f ) ( k0 )
( k0 ) +
x (k )

x (k0 )

k f 1
k f 1
H
(
k
)

H (k )

+ T (k )
( k ) + T ( k )
+
u(k )
x ( k )
k = k0
k = k0
T

k f 1

H (k )

+ T (k + 1)
x ( k + 1) = 0
(k + 1)

k = k0

(16)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret


(16)
H ( x* (k ), u* (k ), * (k + 1))
=0
*
u ( k )

(17)

H ( x* (k ), u* ( k ), * (k + 1))
*

(k )
=
*
x (k )

condiiile Hamilton
pentru cazul discret

(18)

H ( x * (k ), u* (k ), * (k + 1))
*
=
x
(k + 1)
*
( k + 1)

(19)

M ( x (k0 )) *
( k0 ) = 0
x (k0 )

(20)

M ( x (k f ))
x (k f )

* (k f ) = 0

condiiile de transversalitate
n raport cu capetele traiectoriei
(21)

2.5.2. Condiii de extrem n problemele


de optimizare dinamic discret
Observaii
 relaiile (17)-(21) se generalizeaz i pentru cazul variant
 n cazul problemelor cu momente terminale libere apare i condiia
de transversalitate n raport cu acestea


de exemplu, pentru kf liber, condiia de transversalitate este

M ( x* (k f ), k f )
k f


(22)

Condiia suficient pentru ca extremul s fie un minim rezult i


acum din 2 I 0

2H
u2


+ H ( x* (k f ), u* (k f ) * (k f ), k f ) = 0

(23)

u = u*

Pentru celelalte condiii necesare i suficiente de extrem exist


extinderi similare n cazul discret

2.5. Metode variaionale clasice de


optimizare n cazul discret
2.5.3. Comparaie ntre cazul continuu i cel discret


Att n cazul continuu ct i n cel discret, comanda


optimal se obine din condiia de minim a hamiltonianului
Condiiile de extrem stabilite n cele dou cazuri sunt
asemntoare
Se pune problema dac condiiile de minim pentru un
sistem discret conduc ntru totul la aceleai rezultate ca i
n cazul discretizrii acelorai condiii din cazul continuu


Rspunsul nu este afirmativ, coincidena (n general aproximativ)


putndu-se obine n anumite condiii

2.5.3. Comparaie ntre cazul continuu i


cel discret


Se consider sistemul continuu i indicele de calitate

x = f ( x, u, t ), cu x R ,
n

f
x (t0 ) = x 0 , t0 , t f , x fixate

(24)

tf

I=

L( x, u, t )dt

(25)

t0

H ( x , u, , t ) = L ( x , u, t ) + T f ( x , u, t )

(26)

H
L( x , u, t ) T f ( x, u, t )
=0
+ (t )
=0
u
u
u

(27)

H
L( x, u, t ) T f ( x , u, t )

=
+ (t )
= (t )
x
x
x

(28)

M ( x f )
= (t f ) (t f ) = 0
f
x

(29)

2.5.3. Comparaie ntre cazul continuu i


cel discret

Se apeleaz la discretizarea
x ((k + 1)T ) x ( kT )
x kT =
T
((k + 1)T ) (kT )
kT =
T
0
(24)+(30)+(31) x (k + 1) = x (k ) + Tf ( x (k ), u(k ), k ), x (k0 ) = x

(27)+(28)+(29)+(30)+(31)

L( x (k ), u(k ), k ) f ( x (k ), u(k ), k )
+
( k ) = 0
T
u(k )
u (k )
(k + 1) = (k ) T
( k f ) = 0

L( x (k ), u(k ), k )
f ( x (k ), u(k ), k )
T
( k )
T
x ( k )
x (k )

(30)
(31)
(32)

(33)

(34)

(35)

2.5.3. Comparaie ntre cazul continuu i


cel discret


Se consider acum sistemul discretizat

x (k + 1) = x (k ) + Tf ( x (k ), u(k ), k ), x (k0 ) = x 0

(36)

i criteriul discret corespunztor lui (25)

I =T

k f 1

L( x (k ), u(k ), k )

(37)

k = k0


Hamiltonianul este
H ( k ) = TL( x ( k ), u( k ), k ) + T ( k + 1)[ x ( k ) + Tf ( x ( k ), u( k ), k )]

H (k )
L( x ( k ), u(k ), t )
f
=0
+ T
(k + 1) = 0
u( k )
u(k )
u ( k )

(38)
(39)

H (k )
L( x (k ), u(k ), k )
f
(k + 1) = (k ) (40)
= ( k ) T
+ In + T T

x (k )
x (k )
x (k )

2.5.3. Comparaie ntre cazul continuu i


cel discret


n cele dou variante, rezolvarea problemei se face pe baza


seturilor de relaii (32...35) i respectiv (32, 35, 39, 40)



Evident, aceste relaii nu coincid ntru totul


Dac variabila adjunct nu variaz prea mult de la un pas de
discretizare la altul, deosebirea ntre (33) i (39) nu este prea mare
acest lucru poate fi acceptat pentru T suficient de mic

O deosebire mai mare apare ntre (34) i (40)


relaia (40) se mai scrie
1

f ( x (k ), u(k ), k )
L( x (k ), u( k ), k )
(k + 1) = I n + T

(
k
)

T
x (k )

x
(
k
)

(41)

dac se dezvolt primul factor n serie Taylor dup T, reinnd doar


termenul de ordinul nti, se obine (34)


Prin urmare, rezultatele n cele dou variante sunt destul de


apropiate dac perioada de eantionare T este suficient de mic

Tehnici de optimizare
- note de curs -

.l.dr.ing. Florin Ostafi


fostafi@ac.tuiasi.ro
www.ac.tuiasi.ro/~fostafi

PROBLEMA DE
OPTIMIZARE LINIAR
PTRATIC

Problema de optimizare liniar ptratic


(LQ Linear Quadratic)



sistem liniar
criteriu ptratic

Utilizarea frecvent a acestei probleme se explic prin





forma modelului matematic - se adopt pentru foarte multe procese


importana criteriului
asigur erori mici pentru sistemul automat, n condiiile unui consum de
energie redus

Datorit formei particulare a sistemului i criteriului,


aspectele de calcul au putut fi rezolvate ntr-un caz
general, care nu s-a obinut n alte probleme de optimizare

3.1. Problema liniar ptratic cu timp


final finit
3.1.1. Formularea problemei
x (t ) = A(t ) x (t ) + B (t )u(t ), x R n , u R m

(1)

tf

1
1
I = xT (t f ) Sx (t f ) + xT (t )Q (t ) x (t ) + uT (t ) P (t ) u(t ) dt
2
2t

(2)

S 0, Q (t ) 0, P (t ) > 0
t0 , t f - fixai



x 0 (t0 ) = x 0

- fixat

x (t f ) - liber

Nu se impun restricii asupra strii i comenzii


Se cere determinarea comenzii optimale n circuit nchis u*(t)=u*(x(t)) care
transfer sistemul (1) din condiiile iniiale n cele finale precizate, astfel nct
s se minimizeze criteriul (2)

3.1.1. Formularea problemei




Semnificaia problemei este de eroare medie minim (x(t) reprezint


abaterea fa de o stare dorit) i de consum minim de energie
Criteriul (2) penalizeaz




abaterile tranzitorii mari fa de starea de referin x(t)=0


abaterile mari la momentul final
valorile mari ale comenzii u(t)

Observaii referitoare la matricele criteriului








S, Q i P sunt dependente de t atunci cnd se dorete o ponderare n timp a


influenelor componentelor respective n diverse perioade ale intervalului de
optimizare [t0,tf]
P nu poate fi nul, cci indicele de calitate nu ar mai depinde de comand
Una din matricele S sau Q poate fi nul, dar nu ambele, cci problema de
optimizare ar admite n acest caz soluia trivial u(t)0
n general S, Q i P sunt diagonale
sunt i probleme n care ele apar ca matrice simetrice nediagonale, cel mai des
n urma unor transformri aplicate variabilelor de stare

3.1.2. Soluia problemei


H=

1 T
1
x (t )Q (t ) x (t ) + uT (t ) P (t )u(t ) + T (t )[ A(t ) x (t ) + B (t )u(t )]
2
2

H
= (t ) (t ) = Q (t ) x (t ) AT (t ) (t )
x
H
= 0 P (t ) u(t ) + BT (t ) (t ) = 0 u(t ) = P 1 (t ) BT (t ) (t )
u
M
= (t f ) (t f ) = Sx (t f )
f
x
2H
= P (t ) > 0
2
u

M
=S 0
2
x f
2

2 H
= Q (t ) 0
2
x
2 H 2 H
2
Q (t )
0

=
0

2
2
P (t )
H H 0

xu u 2

(3)
(4)

(5)
(6)

extremul este un minim

3.1.2. Soluia problemei




Se caut o dependen de forma (t ) = R (t ) x (t )

(7)

(6) + (7) R (t f ) = S

(8)

(t ) x (t ) + R(t ) A(t ) x (t ) R(t ) N (t ) (t )


(7) + (1) + (5) (t ) = R

(9)

(9) + (4) + (7)

N (t ) = B (t ) P 1 (t ) BT (t )

(10)

(t ) R(t ) N (t ) R(t ) + R(t ) A(t ) + AT (t ) R(t ) + Q(t )]x(t ) = 0, t [t , t ] (11)


[R
0 f


Relaia (11) trebuie s fie satisfcut pentru orice x(t)


R (t ) = R (t ) N (t ) R (t ) R (t ) A(t ) AT (t ) R (t ) Q (t )

(12)

(Ecuaie Matriceal Diferenial Riccati - EMDR, cu condiia final (8))




(1) + (5) + (7) traiectoria extremal satisface ecuaia omogen

x (t ) = [ A(t ) N (t ) R(t )] x (t )
0
cu condiia iniial x (t0 ) = x

(13)

3.1.3. Observaii privind soluia


problemei
i.

Exist o soluie global a ecuaiei (12) pe [t0, tf]

ii. Matricea R(t), soluie a EMDR cu R(t f ) = S este simetric


iii. Este posibil o factorizare a matricei R(t)
(1) + (5) + (4)


x (t ) = A(t ) x (t ) N (t ) (t )
(t ) = Q (t ) x (t ) AT (t ) (t )

Sistemului vectorial (14) i corespunde sistemul canonic matriceal

X (t ) = A(t ) X (t ) N (t ) (t )
(t ) = Q (t ) X (t ) AT (t ) (t )



(14)

(15)

pentru care se consider condiiile de capt X (t f ) = I n , (t f ) = S (16)


Matricele X(t) i (t) - matricele fundamentale (14)
Se demonstreaz c, dac X(t) nesingular atunci

R (t ) = (t ) X 1 (t )
Dac S 0, Q 0, P > 0 X(t) nesingular

(17)

3.1.3. Observaii privind soluia


problemei
iv. Dac exist comanda optimal, ea este unic i este dat de

u(t ) = P 1 (t ) BT (t ) R(t ) x (t )

(18)

v. Fie I* minimul funcionalei I(x(t),t). Se demonstreaz c

I * ( x (t ), t ) =

1 T
x (t ) R(t ) x (t )
2

(19)

n cazul n care comanda optimal u(t ) 0 pentru orice stare, atunci


R(t) este o matrice pozitiv definit pentru t0 t < t f i R (t f ) = S - pozitiv
semidefinit
iv. Valoarea minim a indicelui de calitate este

I* =

1 T
x (t0 ) R(t0 ) x (t0 )
2

(20)

3.1.4. Structura sistemului optimal


x (t 0 )
1

P B

u (t )

x (t )

x (t )

(t ) R(t )

matricea regulatorului optimal -

K (t ) = P 1 (t ) BT (t ) R(t )

F (t ) = A(t ) B (t ) P 1 (t ) BT (t ) R(t ) = A(t ) N (t ) R(t )


matricea sistemului nchis

(21)
(22)

3.2. Problema de optimizare liniar


ptratic cu timp final infinit - PLPI
x (t ) = Ax (t ) + Bu(t ), x (t ) R n , u(t ) R m , x (0) = x 0

1
I = [ xT (t )Qx (t ) +uT (t ) Pu(t )]dt
20

(23)
(24)

Q 0, P 0

Q i P matrice constante, simetrice,

Integrala (24) este convergenta numai n cazul n care lim x (t ) = 0

Sistemul optimal nchis trebuie s fie stabil, deci perechea (A,B) s fie
stabilizabil (eventual, se poate impune ca ea s fie complet
controlabil)


Dac este ndeplinit aceast condiie, se poate cuta o comand


depinznd liniar de x (t )

u(t ) = Kx (t )

(K matrice constant)

astfel nct sistemul nchis s fie stabil, iar I este mrginit

(25)

3.2. Problema de optimizare liniar


ptratic
cu
timp
final
infinit
t
f

1
= [ xT (t )Qx (t ) + uT (t ) Pu(t )]dt
20

Fie I t
f

S consider EMDR (12) corespunztoare acestei probleme

n acest caz R (t f ) = 0

(26)

(27)

Proprieti
i.

ii.

Dac perechea (A, B) este stabilizabil, atunci lim R(t , t f , 0) = R


t f

exist i R 0
n condiiile de la (i), R definit de (28) este soluie a ecuaiei matriceale
algebrice Riccati (EMAR)

RBP 1BT R RA AT R Q = 0

iii.

(28)

n condiiile de la (i), legea de comand u(t ) = P 1BT Rx (t )

(29)
(30)

este o soluie n c.. a PLPI, iar valoarea optim a criteriului (24) este

I *

1 0T 0
= x Rx
2

(31)

3.2. Problema de optimizare liniar


ptratic cu timp final infinit
Observaie. Proprietile anterioare nu garanteaz c

lim x (t ) este finit,

chiar n condiiile n care valoarea optim a criteriului este finit


Exemplu:



iv.

x = x + u

1
I = u 2 dt
20

R = 0 u(t) = 0 este comand optimal ()x 0 I * = 0


t 0
traiectoriile optimale sunt x (t ) = e x lim x (t ) =
se constat c

Dac perechea (A,B) este stabilizabil, iar perechea ( Q , A)


detectabil, legea de comand (optimal) (30) este stabilizatoare

este

Observaie: n condiiile de la (iv), o soluie simetric R a EMAR este


stabilizatoare dac i numai dac este pozitiv semidefinit
v.

n condiiile (iv), soluia R a EMAR este unica soluie pozitiv semidefinit

3.2. Problema de optimizare liniar


ptratic cu timp final infinit
Teorem: fie problema de optimizare liniar ptratic (cu timp final infinit)
referitoare la sistemul invariant (23) cu (A,B) stabilizabil i criteriul
(24), n care P > 0, Q 0 . Atunci:


are loc relaia

lim R(t , t f , 0) = R 0 n care R (t , t f , 0)

t f

este soluia

(pozitiv definit) a EMDR (12) corespunztoare problemei cu sistemul (23)


i criteriul (24), cu R (t f ) = 0
1 T
T
R verific EMAR RBP B R RA A R Q = 0

limita

legea de conducere optimal n circuit nchis este

*
valoarea minim a indicelui de calitate este I

u(t) = P1BT Rx(t ) = Kx(t )


0T

= x Rx 0 , unde x 0 = x (0)

1 T
Dac n plus perechea ( Q , A) este detectabil, matricea K = P B R
comanda corespunztoare u(t ) = Kx (t ) sunt stabilizatoare i matricea
este unica soluie pozitiv semidefinit a EMAR (29)

3.3. Soluionarea ecuaiilor matriceale


Riccati


Soluionarea PLP cu timp final finit / infinit impune rezolvarea unei


ecuaii matriceale Riccati difereniale / algebrice
Pentru EMDR nu exist soluii exprimabile prin formule analitice de
calcul,





i n cazul scalar, n general, soluia ecuaiei difereniale Riccati se poate


stabili numai dac se cunoate o soluie particular a ecuaiei

EMAR se reduce n cazul scalar la o ecuaie algebric de gradul 2


n cazul matriceal EMAR echivaleaz cu un sistem de n(n+1)/2 ecuaii
algebrice neliniare de grad 2



pentru n 3 devine practic nerezolvabil pe cale analitic


chiar metodele numerice care abordeaz aceast cale sunt deosebit de
laborioase

3.3.1. Rezolvarea EMDR


a) Soluia EMDR se poate determina prin aproximaii succesive din irul

R0 (t ), R1 (t ),..., Ri (t ),...,
care se poate demonstra c este convergent ctre soluia R(t) a EMDR
i ale crui elemente se calculeaz cu
t

Ri (t) = S + [Ri1( )N( )Ri1( ) Ri1( ) A( ) AT ( )Ri1( ) Q( )]d, i =1,2,...


tf





Iniializarea R0 (t ) > 0 poate fi oarecare, dar influeneaz eficiena procedurii


La fiecare iteraie se calculeaz matricea Ri la momentele kh, h = const.
Convergena este destul de lent, iar h trebuie ales destul de mic pentru a
se asigura stabilitatea procesului de calcul

Un procedeu oarecum echivalent const n aproximarea derivatei

R (t ) [ R(t + ) R(t )] /
(12)


R (t + ) = R(t ) + [ R (t ) N (t ) R(t ) R (t ) A(t ) AT (t ) R(t ) Q (t )]

Ecuaia se rezolv n timp invers pentru negativ, pornind de la


condiia de capt R (t f ) = S

3.3.1. Rezolvarea EMDR


b) Un alt procedeu iterativ calculeaz pe rnd aproximaiile succesive

R0 (t ), R1 (t ),..., Rk (t ),...,
obinute ca soluii ale ecuaiilor difereniale liniare

R0 =R0 A(t) AT (t)R0 Q(t), R0(t f ) = S


R =R [A(t) N(t)R (t)] [AT (t) R (t)N(t)]R R (t)N(t)R (t) Q(t),
1

R1(t f ) = S cu N(t) dat de (10)

(32)

....................
Rk =Rk[A(t) N(t)Rk1(t)] [AT (t) Rk1(t)N(t)]Rk Rk1(t)N(t)Rk1(t) Q(t),
Rk (t f ) = S.
Se poate arta c pentru R0 (t ) 0, t [t0 , t f ] derivabil n raport cu t,
exist relaia Rk (t ) Rk 1 (t ) iar irul de matrice { Rk (t )} converge
uniform ctre soluia EMDR (12)

3.3.1. Rezolvarea EMDR


c) O alt cale de stabilire a soluiei EMDR se bazeaz pe factorizarea
matricei R(t) prezentat n 3.1.3
Sistemul (15) se poate scrie

A(t) N(t)
X (t)
X(t)
,
= H(t) , H(t) =

(t)
(t)
Q(t) A (t)

0
JHJ = H , cu J =
In
T

(t , t f )

N (t ) = B(t ) P 1 (t ) BT (t )

(33)

In
0

- matricea de tranziie corespunztoare lui H(t)

X (t f )
11 (t , t f ) 12 (t , t f )
X (t )
In
(t ) = (t , t f ) (t ) = (t , t f ) S , (t , t f ) = (t , t ) (t , t )


f
22
f

21 f

R(t ) = [ 21 (t , t f ) + 22 (t , t f ) S ][ 11 (t , t f ) + 12 (t , t f ) S ]1

(34)

3.3.2. Rezolvarea EMAR


a) Dac perechea (A, B) este stabilizabil, soluia EMAR se obine ca
limit a soluiei EMDR pentru t f
Algoritm:




1. Se testeaz stabilizabilitatea perechii (A,B)


2. Se calculeaz soluia EMDR corespunztoare cu condiia de capt R(t f ) = 0
3. Se repet (2) cu tf lund valori cresctoare pn cnd diferenele dintre
dou soluii obinute la etapa (2) sunt mai mici dect o valoare impus;
ultima soluie determinat se adopt ca soluie EMAR
Procedeu de calcul al soluiei EMAR eficient
Pentru a asigura stabilitatea procesului de calcul, la stabilirea soluiei EMDR se
adopt de obicei un pas mic metod mai puin eficient
De asemenea, pentru valori mari ale lui tf, unele proceduri de calcul ale EMDR
pot conduce la numere foarte mari n expresiile unor matrice, ceea ce poate
determina euarea programului
Pentru aprecierea valorilor tf care trebuie considerate n etapa (3), se poate
considera c o valoare a lui tf mai mare de 5...10 ori dect cea mai mare
constant de timp a procesului conduce la un rspuns apropiat de cel oferit de
EMAR

3.3.2. Rezolvarea EMAR


b) O clas de metode se bazeaz pe construirea unei matrice de tip
Hamilton asociate i pe proprietile speciale ale acestei matrice
c) O alt clas de metode pentru rezolvarea EMAR o formeaz o serie de
proceduri iterative, care, n linii generale, apeleaz la algoritmi de tip
Newton Raphson

You might also like