Sunteți pe pagina 1din 58

Tehnici de optimizare in programare

curs: prof. dr. ing. Ovidiu Grigore


contact: ovidiu.grigore@ai.pub.ro ovidiu.grigore@upb.ro
tel.: 021 402 4897
sala: B319a ( B134 )

Curs: cf. orar sala B312


Laborator: cf. Orar
- incepe in saptamana 3
Mod de notare.

1. Punctaj laborator 40p


2. Tema de casa 10p
3. Verificare finala (ultimul curs) - scris 50p

Punctajele 2 si 3 se pot reface in sesiunea de restante


Mod de notare.

Se poate intra in verificarea finala numai daca:


- S-a parcurs intregul laborator (fara nicio
absenta)
- S-a promovat laboratorul (s-a obtinut min
50% din punctaj laborator)

La orice proba de evaluare, studentul este obligat sa


aiba si sa prezinte la cerere carnetul de student si
act de identitate (CI, pasaport, etc)
Bibliografie:
Bibliografie.
• Ov. Grigore, Note de curs (ai.pub.ro).
• Ov. Grigore, V. Velican, B.F. Florea, “Inteligenta computationala si recunasterea
formelor”, Ed. Politehnica Press, 2013.
• L. S. Lasdon, "Teoria optimizarii sistemelor mari", Ed. Tehnica, 1975.
• I. Maruisciuc, "Metode de rezolvare a problemelor de programare neliniara", Ed.
Academiei, 1970.
• P. Pardalos, M. Resende, “Applied Optimization”, Oxford University Press, 2002.
• D. B. Fogel, "Evolutionary computation: toward a new philosophy of machine
intelligence", IEEE Press 1995.
• I. Dumitrache, C. Buiu, "Introduction to genetic algorithms", Ed. Politehnica,
1995.
• T. Weise, “Global Optimization Algorithms. Theory and Application”, www.it-
weise.de, 2009.
• M. Buneci, “Optimizari”, Ed. Academica Brâncuşi, 2008
(http://www.utgjiu.ro/math/mbuneci/book.html )
Surse internet.

• Cuvinte cheie:
– Mathematical optimization
– Optimization algorithms
– Line search
– Genetic algorithms
– Stochastic optimization

• http://www.it-weise.de/projects/book.pdf
• http://www.ee.bilkent.edu.tr/~microwave/programs/utilities/
optimize.htm
• http://www.riccati.pub.ro/teaching/ot/cursul1.pdf
Introducere
• Optimizare = gaseste “ce este mai bun?” discutie “ce este cel mai bun?”

.
Introducere
• Optimizare = gaseste “ce este mai bun?” discutie “ce este cel mai bun?”
Trebuie: - sa existe o masura cantitativa a “mai bun” (exista si abordari calitative
fuzzy, sintactico-lingvistice)
- cunoscute marimile in raport cu care se cauta “mai bun”
(optimul)

.
Introducere
• Optimizare = gaseste “ce este mai bun?” discutie “ce este cel mai bun?”
Trebuie: - sa existe o masura cantitativa a “mai bun” (exista si abordari calitative
fuzzy, sintactico-lingvistice)
- cunoscute marimile in raport cu care se cauta “mai bun”
(optimul)
• Formulare matematica:
– Variabile de control (stare): x = (x1, x2 …, xn )T
– Functie obiectiv f ( x )
Scop : Sa se gaseasca combinatia de variabile de stare x* a.i.
f ( x* ) = min ( f ( x ) )
Obs: max ( f ( x ) ) = min ( - f ( x ) )
Pot exista conditii suplimentare → constrangeri: ci ( x ) = 0
cj (x) > 0
Introducere
Introducere
• Aplicatii:
Matematica, fizica, chimie, economie, prelucrari de
semnal, retele neuronale, clasificare, teoria deciziei,
etc.
Probleme tipice (utilizate in testarea algoritmilor)
(detalii la tabla)

• Problema dietei (nutritie)


• Problema rucsacului (impachetare, depozitare)
• Problema croitorului
• Problema comis-voiajorului
• Problema maximizarii profitului
Exemplu
Exemplu. (probl. ec.: maximizare
(probl. ec. : maximizare profit)
profit)
Descrierea problemei
Decrierea problemei → Matematizarea
→ Matematizarea problemeiproblemei
Intr-o companie miniera se prelucreaza 2 tipuri de minereu:
• cu continut de Fe,
• cu continut de Cu.
Profitul obtinut pentru unitatea de greutate (kg) de metal este:
• pt. Fe = 4 lei
• pt. Cu = 30 lei
Etapele de prelucrare sunt:
1. extractia minereu,
2. separare metal din minereu,
3. transport
Din motive tehnologice, folosirea utilajelor in etapele de prelucrarea este de maxim:
• 12 ore/zi in extractie
• 10 ore/zi in separarea
• 8 ore/zi in transport
Timpul necesar prelucrarii fiecarei kg de metal, in fiecare etapa, utilizand aceleasi utilaje:
Extractie Separare Transport
1 kg. Fe 3 ore 2 ore 4 ore
1 kg. Cu 5 ore 4 ore 2 ore
Sa se determine cantitatile de Fe si Cu care trebuie prelucrate zilnic pentru ca profitul companiei sa
fie maxim
Exemplu (probl. ec. : maximizare profit)
Descrierea problemei → Matematizarea problemei
Formularea matematica:
Variabilele de control (stare):
x1 = cantitatea de Fe prelucrata in fiecare zi
x2 = cantitatea de Cu prelucrata in fiecare zi
Functia obiectiv (care trebuie maximizata)
Profitul: f(x1, x2) = 4 x1 + 30 x2
Constrangerile:
Extractie: 3 x1 + 5 x2  12
Separare: 2 x1 + 4 x2  10
Transport: 4 x1 + 2 x2  8
Evident: x1  0 , x2  0
TEMA: Rezolvare geometrica
Notiuni
Notiunimatematice
matematicededebaza.
baza.Notatii
(Recapitulare)

Scalar xi
Vector xj = (x1j x2j ... xnj )T ,
Matrice B = ( bij ) i=1,n; j=1,m

In spatiu vectorial V = R n def.


Produsul scalar a doi vectori

Norma euclidiana, bazata pe prod scalar ( ):


Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Pt. matricele: A = ( aij ) i=1,m; j=1,n B = ( bij ) i=1,m; j=1,n C = ( cij ) i=1,m; j=1,n
se def operatiile:
adunarea: C = A + B, cij = aij + bij , pt. i=1,m; j=1,n
inmultirea cu un scalar : C = A, cij =  aij , pt. i=1,m; j=1,n

Pentru A = ( aij ) i=1,m ;j=1,n B = ( bij ) i=1,n; j=1,p C = ( cij ) i=1,m; j=1,p
se def produsul a 2 matrice: C = A B

pt. i=1,m; j=1,p

Transpusa matricei A = ( aij ) i=1,m; j=1,n este B = ( bij ) i=1,n; j=1,m


B = AT bij = aji pt. i=1,n; j=1,m
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

O matrice A = ( aij ) i=1,m; j=1,n cu m=n se numeste patratica


Pentru acest caz, elementul neutru la inmultire este matricea
unitate:

In =

O matrice A = ( aij ) i=1,n; j=1,n este inversabila daca exista matricea


B = ( bij ) i=1,n; j=1,n a.i.:
A B = B A = In
A este inversabila = det(A)  0, adica A este nesingulara
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

O matrice A = ( aij ) i=1,n; j=1,n este:

simetrica daca A = AT
ortogonala daca A-1 = AT
unitara daca A-1 = A* (matricea conjugata )
diagonala daca aij = 0 pentru ij

Proprietati:

( A B )T = BT A T

( A B )-1 = B-1 A-1


Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Fiecarei matrice A = ( aij ) i=1,m; j=1,n i se asociază operatorul


liniar S(A) definit prin:

Pentru matricea A = ( aij ) i=1,m; j=1,n cu aij C, scalarul λ C se


numeşte valoare proprie pentru A daca exista vectorul nenul
xCn a.i.:
Ax=λx
x se numeste vector propriu atasat valorii proprii λ

Mulţimea valorilor proprii ale lui A formează spectrul lui A şi


se notează cu σ(A), iar raza spectrala se def:
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Norme pentru matrice:


Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

O matrice A = ( aij ) i=1,n; j=1,n se numeste:

• pozitiv definită dacă este simetrică şi dacă


< A x, x > > 0 pentru orice x ≠ 0

• negativ definită dacă este simetrică şi dacă


< A x, x > < 0 pentru orice x ≠ 0

• pozitiv semidefinită dacă este simetrică şi dacă


< A x, x > ≥ 0 pentru orice x

• negativ semidefinită dacă este simetrică şi dacă


< A x, x > ≤ 0 pentru orice x
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Dacă A = ( aij ) i=1,n; j=1,n este o matrice simetrică, atunci:


• toate valorile ei proprii sunt reale
• există o bază ortonormată a lui Rn formată din vectori
proprii ai lui A.
În consecinţă, există o matrice ortogonală Q (având pe coloane
vectori proprii al lui A) astfel încât:
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Matricea simetrică A = ( aij ) i=1,n; j=1,n este:

• pozitiv semidefinită = toate valorile ei proprii sunt


nenegative.
i  0 , i=1,n

• pozitiv definită = toate valorile ei proprii sunt (strict)


pozitive.
i > 0 , i=1,n
Notiuni
Notiunimatematice
matematicededebaza.
baza.Calcul matriceal
(Recapitulare)

Factorul de condiţionare al unei matrice pătrate


A = ( aij ) i=1,n; j=1,n se defineşte prin:

• Prin convenţie cond(A) = ∞ dacă A este singulară


• Dacă A este pozitiv definită:

Deoarece:
Notiuni
Notiunimatematice
matematicededebaza.
baza.Diferentiabilitate
Diferentiabilitate
Fie X Rn si x 0 X, x 0 =(x10, x20,... , xn0)T

Fie f : X→ R , daca exista si este finita limita:

ea se numeste derivata partiala de ordinul 1 a lui f in raport cu


xi , in x o si se noteaza

In acest caz f se numeste derivabila partial.


Notiuni
Notiunimatematice
matematicededebaza.
baza.Diferentiabilitate
Diferentiabilitate
Daca f admite derivate partiale de ordinul 1 într-o
vecinatate a lui x 0 si daca functiile:

, i=1,n

sunt derivabile de ordinul 1 in x 0, atunci f este derivabila


partial de ordinul al 2-lea în x 0, cu derivatele:
Notiuni
Notiunimatematice
matematicededebaza.
baza.Diferentiabilitate
Diferentiabilitate

Functia f : X → Rm se numeste diferentiabila în x0 daca si


numai daca exista o aplicatie liniara T : Rn → Rm astfel încât

T se numeste diferentiala lui f în x 0.

Functia f se numeste diferentiabila pe X daca este


diferentiabila în fiecare punct din X.
Notiuni
Notiunimatematice
matematicededebaza.
baza.Diferentiabilitate
Diferentiabilitate

Daca f(x) = ( f1(x), f2(x), ..., fm(x) )T , fi : X → Rn


(se numesc componente scalare)

Se poate arata ca:

• Daca f este diferentiabila în x 0, atunci toate


componentele sale scalare fi admit derivate partiale de
ordinul 1 în x 0. Reciproca nu este adevarata !!
• Daca toate componentele fi admit derivate partiale de
ordinul 1, continue în x 0, atunci f este diferentiabila în x 0
Notiuni matematice de baza. Diferentiabilitate

Pt. f : X → Rm diferentiabila în x 0, se def.


matricea jacobiana a functiei f calculata în punctul x 0 :
Notiuni matematice de baza. Diferentiabilitate
Criteriul comutativitatii al lui Schwarz:
Daca derivatele partiale de ordinul doi
sunt continue in x0, atunci:

Criteriul comutativitatii al lui Young:


Daca f este de doua ori diferentiabila in x0, atunci:
Notiuni matematice de baza. Diferentiabilitate
Obs.: Daca se cunoaste matricea jacobiana, atunci
diferentiala functiei f : X → Rm este:
Notiuni matematice de baza. Diferentiabilitate

Obs.: In cazul particular m=1 (adica f : X → R )


Notiuni matematice de baza. Gradient

Def. gradientul functiei f : X → R (obs.: m=1)

Obs.: Este un vector n – dimensional


In cazul 1-dim corespunde derivatei functiei
• vectorul gradient este normal pe
planul tangent suprafetei f(x) = ct. in
punctul x0

• vectorul gradient este orientat in


sensul valorilor crescatoare ale functiei
f(x)
Notiuni matematice de baza. Hessiana
Def. matricea hessiana a functiei f : X → R (obs.: m=1)

Obs.: Conform criteriului lui Young, hessiana este matrice


simetrica:
Hf(x0) = Hf(x0)T
In cazul 1-dim corespunde derivatei a 2-a a functiei

Functia f : X → Rm se numeste de clasa Ck (k  1) daca toate


componentele scalare ale lui f admit derivate partiale de ordinul
k continue pe X.
Notiuni matematice de baza. Tipuri de functii

O functie f : X R n → R este liniara daca este de forma:

f( x ) = bT x + c

unde: x  X este vectorul variabilelor (de control)


b  R n este un vector de valori constante
c  R este un scalar

Gradientul: g f = f( x ) = b
Hessiana: H f (x) = 0
Notiuni matematice de baza. Tipuri de functii

O functie f : X R n → R se numeste forma patratica daca


este de forma:
f( x ) = xT A x

unde: x  X este vectorul variabilelor (de control)


A = ( aij ) i=1,n; j=1,n matrice nxn de val. const.

Gradientul: g f = f( x ) = (A + AT) x , daca A nesimetrica


2A x , daca A simetrica

Hessiana: H f (x) = A + AT , daca A nesimetrica


2A , daca A simetrica
Notiuni matematice de baza. Tipuri de functii
O functie f : X R n → R este patratica daca este de forma:

f( x ) = xT A x + bT x + c
unde: x  X este vectorul variabilelor (de control)
A = ( aij ) i=1,n; j=1,n matrice nxn de val. const.
b  R n este un vector de valori constante
c  R este un scalar
Gradientul: g f = f( x ) = (A + AT) x + b , daca A nesimetrica
2 A x + b , daca A simetrica

Hessiana: H f (x) = A + AT , daca A nesimetrica


2A , daca A simetrica
Notiuni matematice de baza. Seria lui Taylor

Fie o functie f : X R n → R , de k ori diferentiabila in x0  X


Dezvoltare in serie Taylor exprima variatia functiei in jurul
unui punct dat x0, cu o deplasare x
1 (1) 1 (2) 1 (k)
f(x + δ x ) = f(x ) + f x 0 (δ x ) + f x 0 (δ x , δ x ) + ... + f x 0 (δ x ,..., δ x ) + . . .
0 0

1! 2! k!
 ( δ kx +1 )
(k)
unde: f x0
(...) este diferentiala lui f de ordinul k in x0

In particular, seria Taylor pana la la gradul 2:


1 T
f(x + δ x ) = f(x ) + δ f (x ) + δ x H f (x 0 ) δ x +  ( δ3x )
0 0 T
x
0

2
Obs: diferentiala ord 2
Notiuni matematice de baza. Seria lui Taylor
Consecinta a dezvoltarii in serie Taylor:

In vecinatatea optimului:
• gradientul: f(x*+x)  0
• deci, functia se aproximeaza foarte bine cu o
functie de gradul 2:
1 T
f(x + δ x )  f(x ) + δ x H f (x* ) δ x
* *

• deci, algoritmii de optimizare pentru functii patratice


se pot aplica, cu performante de convergenta similare,
pentru functii “neliniare”
Notiuni matematice de baza. Seria lui Taylor
Alegerea lui x
Atat pentru aproximarea fct. prin serie Taylor cat si pentru
aproximarea derivatelor prin diferente finite, se foloseste o
deviate , care, in mod normal trebuie sa fie cat mai mica
pentru ca aproximarea sa fie cat mai buna.

Cat de mica poate fi aleasa aceasta valoare???

Daca alegem  =  → precizia masinii de procesare = cel


mai mare numar pentru care 1.0 +  = 1.0

• pt. var. reale simpla precizie, de 4-byte (float)   10-7


• pt. var. dubla precizie, de 8-byte (double)   10-16
Notiuni matematice de baza. Seria lui Taylor

Pentru ca termenul in 2 sa conteze (de ex. pt. a calcula


aproximarea de ord.2) atunci:

2 > , adica  >3∙10-4 (4-bytes)

Daca termenul in 3 trebuie sa conteze (de ex. pentru a


calcula diferenta intre functia reala si aproximarea de ordin
2), atunci

3 > , adica  >5∙10-3 (4-bytes)


Notiuni matematice de baza. Aproximarea derivatelor

Formule pentru aproximarea derivatelor:

• diferente finite (forward difference). Direct din Taylor:

𝑓 𝑥+ −𝑓 𝑥
𝑓′ 𝑥 ≅ + 𝑂(2)

deci: 2 > , adica  >3∙10-4 (4-bytes)


Notiuni matematice de baza. Aproximarea derivatelor

Formule pentru aproximarea derivatelor:

• diferente centrale (central differences method):


2 3
𝑓 𝑥 +  = 𝑓 𝑥 + 𝑓 ′ 𝑥 + 𝑓 ′′ (x)+ 𝑓 ′′′ + . . .
2 2
2  3
𝑓 𝑥 −  = 𝑓 𝑥 − 𝑓 ′ 𝑥 + 𝑓 ′′ (x) − 𝑓 ′′′ + . . .
2 2
prin diferenta lor:
𝑓 𝑥+ −𝑓 𝑥−
𝑓′ 𝑥 ≅ + 𝑂(3)

deci: 3 > , adica  >5∙10-3 (4-bytes)
Notiuni matematice de baza. Aproximarea derivatelor

Formule pentru aproximarea derivatelor:

• prin estimarea functie in 4 puncte :


In mod similar, se obtine:

′ 8 𝑓 𝑥+ −𝑓 𝑥− − 𝑓 𝑥+2 −𝑓 𝑥−2


𝑓 𝑥 ≅ + 𝑂(5)
12

deci: 5 > , adica  >4∙10-2 (4-bytes)


Notiuni matematice de baza. Aproximarea derivatelor

Eroarea obtinuta in calculul derivatei f(x) = ln(sin2(x)) in x = 1


Clasificarea problemelor de optimizare
Criteriu de clasificare Proprietatea criteriului Tipul problemei de optimizare

Numar variabile de control Una Univariabila


Mai multe Multivariabila
Tipul variabilelor de control Valori reale, Continua
in domeniu continuu
Valori intregi Discreta (intreaga)
Reale si intregi Mixta
Intregi, domeniu finit, Combinatorica
solutie prin permutari (Combinatoriala)
Tipul functiei obiectiv Liniara Liniara
Patratica Patratica
Alte tipuri NELINIARA
Formularea problemei Fara restrictii asupra Fara contrangeri
variabilelor de control
Cu restrictii asupra Cu constrangeri
variabilelor de control
Clasificareaproblemelor
Clasificarea problemelordedeoptimizare
optimizare
In functie de tipul functiei obiectiv, abrevieri (limba engleza):

LP (Linear Programming): linear objective function and linear constraints

QP (Quadratic Programming): quadratic objective function and linear constraints

NLP (NonLinear Programming): nonlinear objective function and nonlinear constraints

IP (Integer Programming): LP with integer variables only

MILP (Mixed Integer LP): LP with integer variables and continuous variables

MINLP (Mixed Integer NLP): NLP with integer variables and continuous variables
Clasificarea...
Clasificarea Comentarii
problemelor de optimizare. Comentarii
Probleme opt. liniare, patratice, neliniare → exista algoritmi
specifici (cu performante optime) pentru functii obiectiv de tip
liniar si patratic. Pentru restul tipurilor de functii (cate sunt??)
nu exista algoritmi specifici, insa se aplica algoritmi pentru
functii patratice pentru aproximarile de gradul 2 ale functiei
obiectiv in etape succesive de optimizare, pana la obtinerea
unui optim suficient de bun.
Probleme opt. combinatoriala→ clasa speciala de probleme, in
care exista un numar limitat de “entitati”, de obicei etichetate
cu valori intregi (1...N), solutiile posibile fiind combinatii
(permutari) a “entitatilor” (siruri, de obicei de lungime
constanta, ale etichetelor in diverse oridini).
Ex.: Problema comis-voiajorului (TSP – traveling salesman
problem), detalii la tabla
Clasificarea...
Clasificarea Comentarii
problemelor de optimizare. Comentarii
Exista o mare diversitate de probleme de optimizare si, ca
urmare, s-au dezvoltat foarte multe metode/algoritmi pentru
determinarea solutiei de optim.

Alegerea celei mai bune (adecvate) metode de optimizare se


face in raport cu:
• Calitatea solutiei dorite (eroarea de aproximare)
• Proprietatile de convergenta → timpul de lucru
• Dimensiunile, numarul parametrilor/marimilor utilizate →
dimensiunea memoriei
Conditiidedeoptimalitate.
Conditii optimalitateDefinitii.
• X* este optim global pentru functia obiectiv f( X ) daca:
f( X* ) < f( Y ),  Y  V , Y  X*
V este domeniul de valori posibile pentru variabilele de control Y

• Y* este optim local in sens strict (puternic), pentru functia obiectiv


f( X ) daca:
f( Y* ) < f( Y ),  Y  N(Y*, ) , Y  Y*
N(Y*, ) este domeniul de valori posibile pentru variabilele de control Y
aflate la o distanta mai mica decat  fata de Y*

• Z* este optim local in sens larg (slab), pentru functia obiectiv f( X )


daca:
f( Z* )  f( Y ),  Y  N(Z*, ) , Y  Z*
Conditii
Conditiidedeoptimalitate.
optimalitateDefinitii.
Puncte de optim in probleme fara constrangeri

f( x )

optime locale in sens larg optime locale in sens strict

optim global

z1* z2* x* y1* y2* y3* x

Ce se poate intampla cand apar constrangeri?


Conditii
Conditiidedeoptimalitate.
optimalitateDefinitii.
Puncte de optim in probleme cu constrangeri (ex.: x > xP )

f( x ) x > xP

optime locale in sens strict

optim
global

x* y1* y2* y3* x


xP
Conditiidedeoptimalitate.
Conditii optimalitateConditii necesare.

Conditii necesare de ordinul 1


Fie o functie f : X R n → R , diferentiabila pe X.
Daca x* este o solutie de optim pentru f atunci:

f( x*) = 0

Conditii necesare de ordinul 2


Fie o functie f : X R n → R , diferentiabila pe X.
Daca x* este o solutie de optim pentru f atunci:

Hf(x*)  0 (pozitiv semidefinita)


Conditiidedeoptimalitate.
Conditii optimalitateConditii necesare.

Obs.: Daca f( x0 ) = 0 si Hf (x0 )  0 , atunci x0 se


numeste punct stationar si este un “candidat” la
solutia problemei de optimizare
Conditiidedeoptimalitate.
Conditii optimalitateConditii necesare.

Exemplu 1D
f‘ = 0 si f”  0
f(x)=x3, x=0 pct inflexiune f(x)=x4, x=0 pct minim
Conditiidedeoptimalitate.
Conditii optimalitateConditii suficiente.

Conditii suficiente de ordinul 2

Fie o functie f : X R n → R , diferentiabila pe X.


Daca:
f( x*) = 0 si Hf(x*) > 0 (pozitiv definita)
Atunci:
x* este un optim local pentru f
Caracterizarea convergentei
Ordin de convergenta. Rata de convergenta

Fie secventa de valori { xk} convergenta catre x*.


Notam eroarea de aproximare a optimului la pasul k:
k = ║ x k - x* ║
Ordinul de convergenta al secventei { xk } este cel mare
numar p astfel incat:
ε k +1
k+1   k p sau lim p = 
k → εk
iar  se numeste rata de convergenta
• daca p = 1 si β < 1 avem o convergenta liniara (k+1   k)
• daca p = 1 si β → 0 convergenta este superliniara.
• daca p = 2 convergena se numeste patratica (k+1   k2 )
Metode deterministe vs. stocastice
Functii test
Functia Rosenbrock (ex. Fig. pentru caz 2D)
ConditiidedeSTOP
Conditii optimalitate

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