optimizari metode numerice in inginerie
TRANSCRIPT
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
1/42
1
METODENUMERICENINGIN
ERIE
TUDOR PAUNESCU
MN4
7.OPTIMIZRINUMER
ICE1
CERCETRI OPERAIONALE
BIBLIOGRAFIE
DEFINIRE OPTIMIZRI
SISTEMATIZAREA TIPURILOR DE PROBLEME
OPTIMIZAREA NELINIAR FR RESTRICII
OPTIMIZAREA NELINIAR CU RESTRICII
OPTIMIZAREA NELINIAR N MATHCAD
OPTIMIZARE FLEXIBIL
"The human brain is unique in that it is the only container of which
it can be said that the more you put into it, the more it will hold."
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
2/42
2
BIBLIOGRAFIE
[RAD92] D. Rdulescu, O. Gheorghiu. Optimizarea flexibil i decizia asistat de calculator. Ed. tiinific. Bucureti.
1992.
[KOL95] B. Kolman, R.E. Beck. Elementary Linear Programming with Applications. Elsevier Science & Technology
Books, 1995, ISBN: 012417910X; ISBN-13: 9780124179103
[ACK75] R.L.Ackoff, M.W.Sasieni. Bazele cercetriioperaionale. Ed. Tehnic. Bucureti .1975.
[DAN76] I.Dancea. Metode de optimizare. Algoritmi-programe. Ed. Dacia. Cluj-Napoca.1976.
[MAL75] M.Malia, C.Zidroiu. Matematica organizrii. Ed. Tehnic. Bucureti .1975.
[SMI78] O. Smigelski, A. Woinaroschi. Optimizarea proceselor n industria chimic. Ed. Tehnic. Bucureti .1978.
[RUH08] S. Ruhul, C. S. Newton. Optimization modelling : a practical introduction. CRC Press Taylor & Francis Group.
ISBN 13: 978-1-4200-4310-5, 2008
[NOR99] J Nocedal, Stephen J. Wright.Numerical Optimization. ISBN 0-387-98793-2. 1999 Springer-Verlag New Yorkc.
[MAR73] I. Marusciac. Metode de rezolvare a problemelor de programare neliniar. Ed. Dacia. 1973
--------------------------------------------------------------------------------------------------------------------------------------------------------------
[NEOS] http://www.ece.northwestern.edu/OTC/
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
3/42
3
1. CERCETRI OPERAIONALE
1.1. Definire, instrumente, istoric
Cercetrile operaionale(CO) sunt o ramur a matematicilor aplicate care utilizeaz diferite metode pentru
a atinge soluii optime sau aproape optime pentru probleme complexe.
CO sunt strns legate de Ingineria Industrial(II), fiind considerate un instrument de baz al II.
Principalele instrumente matematice utilizate de ctre CO sunt:
statistica i teoria probabilitilor;
teoria optimizrii;
teoria ateptrii;
teoria jocurilor;
grafurile;
analiza deciziilor;
simularea.
Glosar
Operations Research (SUA)
Operational Research (Europa)
Operation Research ~ Management science
Istoric- Charles Babbage (1791-1871)- Al II-lea Rzboi mondial: SUA, Anglia i URSS probleme de logistic: mrimea convoaielor mixte formate din vasecomerciale i de rzboi care traversau Altanticul, logistica bombardamentelor aeriene, logistica transporturilor feroviare spreSiberia etc.- Dup al II-lea Rzboi mondial aplicare CO n industrie, amd.- 1947, George B. Dantzig a elaborat algoritmul SIMPLEX de rezolvare a problemelor de programare matematicliniar.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
4/42
4
1.2. Probleme tip ale CO
Probleme de alocare: distribuirea i repartizarea resurselor.
Optimizri.
Teoria stocurilor.
Teoria rennoirii utilajelor-echipamantelor i fiabilitate.
Programarea dinamic.
Teoria ateptrii.
Probleme de ordonanare i de ordonare (Pert i drum critic)
Probleme de drumuri i reele.
Probleme de competiie (teoria jocurilor).
Probleme de cutare.
Probleme de decizie.COA
BORDEA
ZPROBLEME
LENANSAMB
LU
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
5/42
5
1.3. Etapele unei cercetri operaionale [KOL95]
De obicei departamamtul management al unei firme identific problema de CO pe care o rezolv analistul CO, care de obicei
are rol de consultant.1. Definirea problemei i formularea ei. Este definit clar scopul studiului bazat pe CO, ntr-o prim etap, rolul
consultantului CO este de a ajuta departamentul management s-i clarifice obiectivele, apoi acesta trebuie s identifice
variantele decizionale care pot fi filtrate de limitrile de capital, for de munc, tehnologiile existente etc.
2. Elaborarea modelului. Consultantul CO dezvolt modelul matematic al problemei. Limitrile,restriciile trebuie traduse n
termeni matematici. n multe cazuri scopurile pot fi cuantificate n expresii matematice care trebuie
maximizate/minimizate. Alternativele decizionale sunt variabilele problemei.3. Soluia modelului. Metoda de rezolvare a modelului trebuie s fie relativ simpl. Nu sunt rare situaiile n care nu exist
metod de rezolvare i aceasta trebuie dezvoltat, eventual apelndu-se la euristic, sau se revine la etapa a 2-a i se
revizuiete modelul.
4. Analiza sensibilitii. Frecvent valorile numerice pe baza cruia consultantul CO a elaborat modelul matematic sunt
aproximative. Este important s se determine cum se modificsoluia la variaia datelor de intrare. Pentru multe probleme
standard s-au elaborat tehnici care rezolv problema analizei sensibilitii.5. Evaluarea modelului. Dup ce a fost obinutsoluia consultantul CO determindac acesta rspundecerinelorfirmei,
este realist, poate fi implementat.
6. Implementarea studiului CO de ctre firm. Managementul firmei decide cum va implementa rezultatele studiului.
Uneori sentmpl ca acesta s fie ignorat din cauza proastei comunicri ntre management i consultantul CO sau din
cauza msurilorprea radicale pe care le propune, de cele mai multe ori din ignorarea unorlimitri/restricii ale problemei.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
6/42
6
2. DEFINIRE OPTIMIZRI
n matematic, termenul de optimizare sau de programare matematic se refer la studiul unor probleme
n care se caut maximizarea/minimizatea uneia sau mai multorfuncii reale (funcii scop, funcii obiectiv) n
condiiile n care variabilele aparin unei mulimi determinate de limitarea unor resurse (restriciile problemei).
Problemele de programare matematic (PM) au patru elemete de baz:
1. Funcia obiectiv (FO) care trebuie maximizat/minimizat . De exemplu n producie se urmrete
maximizarea profitului sau minimizarea costului.
2. Variabilele/necunoscutele problemei. De exemplu n producie variabilelele problemei pot fi
cantitile diferitelor materiale, semifabricate sau timpii necesari desfurrii unoroperaii.
3. Restriciilecare limiteaz valorile variabilelor la anumite mulimi. De exemplu n producie timpii
de execuie nu pot avea valori negative, cantitile disponibile de materiale, semifabricate sunt
limitate.
4. Parametrii problemei. Sunt date de intrare care, n general pot fi modificate, de exemplu preuri
de materii prime, materiale, consumuri specifice.
Problema de programare matematicconst n maximizarea/ minimizarea funciei obiectiv cu
respectarea restriciilor
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
7/42
7
Deci o problem de minimizare/maximizare n programarea matematic impune determinarea
componentelor vectorului
X=[x1, x2, ,xn]T
care minimizeaz/maximizeazfuncia obiectiv
F(X) minim/maxim
n prezenarestriciilor
ri(X) {; = ; } o, i=1,2, ,m---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Exemplul 1
Pentru realizarea a dou produse Pi, i=1,2 o firm are la dispoziie trei feluri de materiale Mj, j=1,2,3 n cantitile cj,j=1,2,3. Un produs Piconsum ci,jmateriale i aduce un beneficiu bi. S se determine numrul de produse de pe urm
croras se obin un beneficiu maxim.
Notaii: x1 cantitatea de produse P1
x2 cantitatea de produse P2
P1[buc]
P2[buc]
Resurse
M1 [buc] 2 1 12
M2 [buc] 1 3 8
M3 [buc] 4 - 15
Beneficiu[ub]
200 300
Modelul matematic 1
200x1+300x2 max
2x1+x2 12
x1+3x2 8
4x1 15
x10, x20,
Problema are un model liniar
monoobiectiv, n numere ntregi
(1)
(2)
Detalii rezolvare
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
8/42
8
continuare
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
9/42
9Fig. 1.Tabloul/arborele tipurilor de probleme de optimizare [NEOS]
3. SISTEMATIZRI ALE TIPURILOR DE PROBLEME
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
10/42
10
C1. Numrul de funcii obiectiv: PM monoobiectiv (vezi exemplul 1),
PM multiobiectiv (vezi exemplul 2).
Exemplul 2
Dezvoltat din exemplul 1. Pentru producerea Pi, i=1,2 este
necesar un consum energetic e i , i=1, 2 (e1=1.5 ub, e2=1.6 ub).
A doua funcie scop minimizarea consumului energetic.
C2. Tipul restriciilor:
C21. Existena restriciilor: problema de optimizare are sau nu are restricii.
C22. Restricii tip egalitate (probleme de extrem condiionat), tip inegalitate.
C3. Tipul variabilelor
C31. Variabile deterministe sau stohastice (probabilistice).
C32. Variabile continue, discrete/ntregi. Dac M={0,1} problem n variante bivalente.
C4. Tipul funciilor
C41. Funcii liniare, neliniare
C42. Funcii convexe, neconvexe
C43. Funcii difereniabile, nedifereniabile
Modelul matematic 2
200x1+300x2 max
1.5x1
+1.6x2
min
2x1+x2 12
x1+3x2 8
4x1 15
x10, x20,
Problema are un model liniar
biobiectiv, n numere ntregi
(3)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
11/42
11
Anumite fenomene i activiti care apar n conducerea firmelor sunt procese de decizie n mai multe
etapei pot fi modelate ca probleme de programare matematic. Dac acestea au dimensiuni mari sunt
rezolvate prin metodele specifice programrii dinamice, folosind ecuaii funcionale i principiul de
optimalitate a lui R. Bellman. Strategia de optimizare se bazeaz pe descompunerea problemei de mari
dimensiuni n probleme mai simple abordate succesiv.
Principiul optimalitii Bellman (condiie necesar): O politic optim are proprietatea c,
oricare ar fi starea iniial (final) i decizia iniial (final), deciziile care rmn trebuie s
constituie o politicoptim n raport cu starea care rezult din adoptarea primei (ultimei) decizii
[MAL75].
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
12/42
12
4. OPTIMIZARE FLEXIBIL [RD92]
4.1. Definire optimizare flexibil
Optimizare flexibil = optimizare prin adaptare
Analogii:
- optimizarea clasic - sistem complicat (varietate redus de componente, calculabilitate mare )
- optimizarea flexibil - sistem complex (varietate mare de componente, calculabilitate medie )
Concepte asociate:
- analiz postoptimal;- abordare recursiv;
- unicitatea optimului;
- stabilitatea soluiilor.
ANALIZPOSTOPTIMAL:
- identificare restriciiloractive, inactive;
- stabilire ecarturi (distane) la restricii inactive;
- comparaii ale optimului unic cu soluiile admisibile de bazi intermediare.
Aciunile de mai sus sunt necesare decidentului pentru a se situa n concretul problemei decizionale
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
13/42
13
ABORDARE RECURSIV:
- aplicare repetat a dubletului: procedur de optimizare- analizpostoptimal:
- este necesar cnd formularea problemei decizionale este imprecis;
- readucerea i reevaluarea n context a soluiei permit formularea mai precis a problemei.
UNICITATE OPTIM:
- postulat caracteristic algoritmilor de optimizare clasic, care se dovedete de multe ori o condiie
artificial;
- n practic se prefer, ca fundament al deciziei, o vecintate convenabil a optimului, care s
acopere, cu o anumittoleran, imprecizia global a modelului.
STABILITATEA SOLUIILOR:
- proprietatea problemei de a avea soluii neglijabil modificate n cazul perturbaiilormici n informaia
iniial;
- o problem cu soluii stabile se numetebinedefinit.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
14/42
14
4.2. Demers metodologic - calitate informaie
Calitate informaie: precizie, completitudine, oportunitate
Fig. 2
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
15/42
15
5. OPTIMIZAREA NELINIAR FR RESTRICII
5.1. OPTIMIZAREA MONOVARIABIL NELINIAR FR RESTRICII
Metodele directe de rezolvare a problemelor de extrem optimizare fr restricii, propuse de matematica
clasicutilizeaz ca instrumente principale calculul difereniali calculul variaiilor. Acestea sunt de cele mai
multe ori sunt inaplicabile n optimizare frrestricii fiind necesar utilizarea de metode iterative.
5.1.1. Extreme ale funciilorreale (PRE)
Dac f(x) este derivabil pentru orice problema:
Se rezolv calculnd rdcinile reale ale ecuaiei:
Aceste rdcini se numesc puncte staionare ale funcieif. Punctele de maxim, minim (puncte de extrem)
se afl printre aceste rdcini.
Dacfuncia are derivate de ordinul doi n aceste puncte idac c este un punct staionar, pentru
avem un minim, pentru valoare negativ un maxim. Dac este posibil s nu avem un punct de
extrem.
Pentru n par avem punct de extrem, pentru nimpar nu.
Rbax ,
ba,x
f(x)max
0)(' xf
0)('' cf
0)('' cf
2,0)(,0)(,...,0)(,0)( )()1(''' ncfcfcfcf nn
(4)
(5)
(6)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
16/42
16
Fig. 3 [MAL75] Fig. 4 [MAL75]
n figura 3 exist 9 puncte staionare, cu maxime i minime relative
i un punct x3 care nu este extrem. Maxim absolut/global este x9.
Conform figurii 4 dac maximul absolut nu se gsete
printre punctele staionare ci este limita superioar a intervalului.
Sconsidermfunciamultivaribil
Unde f este o funciedifereniabil pe o mulimedeschis
Punctele staionare ale funcieifrezult din rezolvarea sistemului:
Acest sistem este greu rezolvabil pe cale analitic, dari numeric.
bax ,
nRE
j
n
x
xxxf
),...,,( 21 nj 1,0
(7)
(8)Fig. 5. Minim global ntr-un punct de inflexiune
),...,,()( 21 nxxxfXf
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
17/42
17
Fie (a1,a2, ... ,an) o soluie a sistemului 8
Dac toate numerele
Sunt pozitive, atunci funcia fare n punctul (a1,a2, ... ,an) un minim.
Dac toate numerele
Sunt negative, atunci funcia fare n punctul (a1,a2, ... ,an) un maxim.
unde
AAA
AAA
AAA
AA
AAA
nnnn
n
n
n ,
..... ...... ... .
...
...
,...,,
21
22221
11211
2221
1211
2111
ji
nij
xx
aafA
,...,12
(9)
unde
AAA
AAA
AAA
AA
AAA
nnnn
n
n
n
n ,
...
.. ...... ....
...
...
)1(,...,,
21
22221
11211
2221
1211
2111
ji
nij
xx
aafA
,...,12
(10)
Fig.6. Punct de minim, maxim i punct a la funcii reale de dou variabile
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
18/42
18
Punct a al funciei y=x3
z=x2
y2
Maxim global al unui paraboloid Minim local al funciei
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
19/42
19
5.1.2. Optimizarea neliniar fr restricii prin metode iterative
Principalele metode de cutare a extremelor unei funcii multivariabile sunt: Metode aleatoare.
Metode de cutare unidirecionale.
Metode de cutare bazate pe gradient.
5.1.2.1. Metode de cutare aleatoare
Metoda are la baz generarea unei mulimi de numere aleatoare ntr-un domeniu de investigare, pentru
fiecare punct n Rn astfel determinat, se compar valoarea funciei cu cea din punctul anteriori se reine
cea mai mare/mic valoare. Se lucreaz cu distribuii uniforme, i un numrmare, predeterminat de puncte.
Metoda este foarte simpl,determin un extrem global,ns controlabilitatea preciziei este slab. De aceea
se folosete de multe ori pentru determinarea punctului de start pentru alte metode iterative.
Metoda poate fi rafinat: dup o prim estimare a punctului de extrem se trece la un domeniu mai mic n
vecintatea acestuia amd.Aceastvariant poate duce la rezultate mai bune dect cea n care se lucreaz
cu un singur domeniu i un numrfoarte mare de puncte.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
20/42
20
Exemplul 3.Min global al unei funcii monovariabil real, ntr-un interval dat.
Metoda drumului aleator [DAN76]
Metoda este destinatdeterminrii unui extrem local i se bazeaz pe relaia:
Xk+1=Xk+g.r
Unde Xk este vectorul de poziie al punctului de aproximaie anterior, g este un scalar (pasul) i r un vector
unitate cu direcie aleatoare.
(11)
Fig.7
Rezolvarea problemei prin bloc solve
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
21/42
21
Paii algoritmului:
1. Alegere punct de start X0i a mrimiig (saltul).
2. Generare r.
3. Calcul F(Xk+g.r).
4. Comparare F(Xk+g.r) cu F(Xk) i n caz de obinere a unei valori mai mici/ mari se face nlocuirearel.11.
5. Se continupaii 2,3,4 un numrpredeterminat de ori, dac valorile nu se modific semnificativ se
reduce g.
5.1.2.2. Metode de cutare unidirecionale(relaxrii)
Dezvoltai o aplicaie Mathcad pentrudeterminarea minimului local a unei funciioarecare reale bivariabile, bazat pe metodadrumului aleator
Fig.8
[D
AN75]
Metoda relaxrii determin, de exemplu minimul unei funcii F
modificnd pe rnd componentele vectorului X.
n primul pas se incrementeaz prima variabil cu un pas p,
celelalte variabile meninndu-se nemodificate, att timp ct F
scade. Dac scdereanceteaz se continu cu incrementarea
celei de a doua variabile amd. Un ciclu presupune lucrul cu toatevariabilele. Dup finalizarea unui ciclul se ncepe cu alt ciclu i se
incrementeaziari prima variabilamd.
Eficiena metodei depinde de alegerea pasului iniial, punctului de
start, converge mai lent dect metodele de gradient dar are
avantajul c nu trebuie calculate derivate pariale.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
22/42
22
5.1.2.3. Metode de gradient [SMI78]
Definirea i semnificaia gradientului (PRE)
pe
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
23/42
23
Fig.9
Pentru o funcie obiectiv continu i difereniabil f gradientul n
punctul k este definit ca vectorul derivatelor pariale de ordinul I n
raport cu x, evaluate n x=x(k)
este un vector ortogonal la conturul funcieifcare trece
prin punctul de coordonate x(k)
. Direcia vectorului gradientcorespunde celei mai rapide creteri a lui f.
)(
.. .)(1
)(
kxxn
k
x
xf
x
xf
xf
(12)
)( )(kxf
Metoda gradientului simplu
Pentru o problem de minim principiul metodei de gradient
simplueste urmtorul: Alegnd dup fiecare nou punct determinat,direcia de cutare n sens contrar gradientului ( ), se
obine cea mai rapid descetere a funciei f. Se va urmri acest
direcie ct timp valoarea funciei scade, dup care se schimb
direcia dup o nou orientare a gradientului amd pn se atinge
minimul (fig. 10).
)()(kxf
Fig.10
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
24/42
24
Vectorul unitate al direciei gradientului este:
Se alege + dac se urmrete maximizarea funciei obiectiv i pentru minimizare.
O deplasare din punctul k n k+1pe direcia d (k)este dat de relaia:
unde reprezint pasul de investigare.
Cnd se anuleaz s-a atins un punct staionar, care ns poate fi nu numai un extrem local ci i un
punct de inflexiune.
Dac se alege o valoare prea mic pentru rezult un numr exagerat de pai, n caz contrar exist
posibilitatea unor salturi prea mari, de exemplu n cazul minimizrii se poate ajunge la creteri a funciei. O
politicraional este de a descrete la apropierea de optim.
kk
k
xf
xfd
(13)
kkkk dxx 1(14)
k
)(xf
Algoritmul gradientului simplu are o deficienmajor care se manifest la funcii care au viicreste,
deoarece datoritdeplasrii punctelor n zig-zag se poate ajunge la un proces foarte slab convergent. n
general, algoritmii sunt testai sub acest aspect cu funciabanan Rosenbrok (fig. 10) care are un minim
la (1,1).
Pentru depirea punctelor slabe ale metodei gradientului simplu s-au propus numeroase alte metode
printre care cele mai eficiente sunt:
- Metoda gradienilorconjugai (Fletcher-Reevs).
- Metoda Davidon-Fletcher-Powel.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
25/42
25Fig.11
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
26/42
26
Exemplul 4. Min local al unei funcii bivariabil real prin metoda gradientului simplu.
Fig.12
Notaii
sufix a - anterior
sufix c curent
vfuvaloare funcie,u={a,b}
dixu,diyuderivata partialde x, respectiv de z din
funcie
mgu modulul gradientului
pas
i index iteraii
Rezolvare prin blocul solve
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
27/42
27
6. OPTIMIZAREA NELINIAR CU RESTRICII
6.1. Definire PNR
n general, o problem de programarea matematic impune determinarea componentelor vectorului
X=[x1, x2, ,xn]T
care minimizeaz/maximizeazfuncia obiectiv
F(X) minim/maxim
n prezenarestriciilor
ri(X) {; = ; } o, i=1,2, ,m
Problema este neliniar (PNR) dac:
- restriciile sunt liniare ifuncia obiectiv este neliniar;
- restriciile sunt neliniare ifuncia scop este liniar;
- ambele sunt neliniare.
n cazul general, cnd restriciileifuncia scop sunt neliniare, aceste probleme sencadreaz n dou mari categorii (pentru
comoditate discuia se face pentru probleme de minim i probleme bidimensionale):
- Minimul local cade n interiorul domeniului fezabil al variabilelor, caz n care restriciile nu contribuie direct la determinarea
optimului (fig. 13b). Dac F(X) are derivate continue condiiile sunt cele cunoscute, vezi subcap 5.1.1.
- Funcia obiectiv este minimizat pentru un punct de pe grania domeniului fezabil al variabilelor (domeniul admisibil al
soluiilor) (fig. 13a).
O rezolvare algoritmic a problemei generale de programare neliniar nu este pn n prezent posibil.
Fig.13 [MAL75]
a b
(15)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
28/42
28
Fig.14. [DAN76]
O mulimede puncte S n spaiul euclidian cu
n dimensiuni Rn este convex, dac
segmentul de dreapt cu capetele n oricare
dou puncte ale mulimii este coninut n
ntregime n S.
Mulimea S este convexdac pentru toi
estendeplinitcondiia:
O funcieF(X) este denumitconvexdac, n domeniul su de definiie presupus convex, pentru oricare
dou puncte X1iX2 este valabil inegalitatea:
Membrul drept al inegalitii reprezint interpolarea liniar
a funcie de-a lungul dreptei care uneteX1iX2.
SXSX 21 ,
10,1 21 YXX
6.2. Funcii i domenii convexe, condiiile Kuhn-Tucker [DAN76](S)
(16)
(17)
10,)1()())1(( 2121 XFXFXXF (18)
Fig.1
5.
[DAN76]
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
29/42
29
Orice punct de minim local al unei funcii covexe este de asemenea un punct de de minim global
n ipotezele de mai sus problema de programare neliniar definit anterior este o problem de
programare convex. Doar n acest domeniu al programrii neliniare s-au obinut rezultate notabile dpdv.
teoretic i practic.
n cele mai multe aplicaii este dificil de demonstrat c funcia este convex,ns rezultatele teoretice
obinutedac se respectcondiia de convexitate pot fi aplicate i problemelor neconvexe, cu observaia
c se obin minime locale nu globale.
Condiiile Kuhn-Tucker (1950)stau la baza multor algoritmi operani n programarea neliniar, acestea
generalizeaz metoda clasic a multiplicatorilor lui Lagrange.
Acestea stabilesc condiiile necesare pentru o problem de programare neliniar cu restricii egalitate, ca
un punct staionars fie un minim.
Conceptul multiplicatorilor lui Lagrange a fost extins de Kuhn-Tucker i n cazul restriciilorinegalitate.
S-au elaborat numeroi algoritmi eficieni pentru anumite clase de probleme de programare neliniar, de
exemplu algoritmi pentru programarea ptratic, programarea geometric.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
30/42
30
6.3. Algoritmi pentru rezolvarea problemelor de PNR
6.3.1. Metoda multiplicatorilor lui Lagrange
Metoda multiplicatorilor lui Lagrange (MML) st la baza altor algoritmi de rezolvare a problemelor PNR.
MML calculeazpunctele staionare a unei funcii constrnse, deci poate determina puncte de extrem dari
puncte a. Dac avem o funcie cu n variabile i k restricii MML transform problema la o funcie
neconstrns cu n+k variabile prin introducerea cte unei noi variabile scalare (multiplicatorul lui Lagrange)
pentru fiecare restricie.
Cazul bidimensional
Funcia obiectivf(x,y) max/min, o singur restricie egalitate g(x,y)=c, unde c este o constant.
Fig.1
6.
[WiK]
Curbele de nivel ale funciei scop pot fi vizualizate prin
f(x,y)=dn. Cnd f(x,y)=diig(x,y)=c sunt tangente s-a atins un
punct staionar. Cele dou curbe au n punctul comun igradienii pentru figsunt paraleli.
a fost introdus deoarece modulele gradienilornu sunt egale.
yx
undegf yxyxyx ,, ,,, (19)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
31/42
31
Pentru a ncorpora aceste condiii ntr-o singurrelaie se introduce funciaauxiliar:
i rezolvm (determinm punctele staionare prin rezolvarea sistemului format prin anularea derivatelor
pariale de x, y i):
cyxgyxfyxF ,,),,( (20)
0),,(,, yxFyx (21)
0),(
min22),(
2
2
chrhrg
hrrhrf
(22)
Exemplul 5
S se determine consumul minim de material n cazul
unei conserve cilindrice cu capac cu capacitate impus.
Dacnotm cu: r-raza, h-nlimea conservei,
c-capacitatea, rezult modelul matematic:
Se observc optimul aste atins dach=2r.
O interpretare: sfera este suprafaa care include un volum
maxim ntr-o suprafanchisminim. n cazul problemei
cutia cilindric care arenlimeaegal cu diametrul tinde
spre dimensiunile unei sfere.
Rezultatul putea fiobinutuoripe caleanalitic, cu instrumentele
analizei matematice, ca problema de extrem a functiei f(r). Vezi rezolvareaSALT
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
32/42
32
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
33/42
33
Exemple de interpretare geometric a problemelor tip f(x,y) min/maxi g(x,z)=c
f(x,y) = x + y
x2 + y2 = 1.
(x,y,) = f(x,y) + g(x,y) = x+ y+ (x2 + y2 1)
f(x,y) = x2y
x2 + y2 = 3.
(x,y,) = f(x,y) + g(x,y) = x+ y+ (x2 + y2 3)
Exemplul 6 Exemplul 7
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
34/42
34
Cazul n dimensional.
Fie f(x)funcia obiectiv i gk(x)=0restriciile problemei.
Domeniul admisibil al soluiilor este o mulime care conine punctele care satisfac restriciile.
Fi gktrebuie s aib derivate pariale de ordin 1 continue i grad(gk) nenul n domeniu.
Lagrangianul este:
dac i numai dac
MLP poate fi aplicat i n cazul restriciilor inegaliti prin introducerea unor variabile suplimentare caretransform restriciile inegaliti n egaliti [NOR99].
k
kkgfx , (22)
0x k
kxkx gf
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
35/42
35
6.3.2. Algoritmul pailor mici ( M.A.P Methof of Approximation Programming) [MAR73]
Metoda MAP face parte din categoria metodelor care liniarizeaz modelul neliniar. Prin liniarizri succesive
i rezolvri mult mai uoare ale modelelor liniarizate se poate atinge un optim. Uneori volumul de
calcule este foarte mare, dar pentru probleme de mrimemici medie pe PC-urile actuale timpul de
rulare este rezonabil.
Etape
1. Se pornete de la o soluieadmisibil oarecare x0.
2. Cunoscndu-se aproximaia iteraiei anterioare xk se liniarizeaz funcia scop f(x)i toate restriciile.
Liniarizarea n raport cu xk conduce la urmtoareaproblemliniar:
Unde keste un numrpozitiv suficient de mic, pasul.
3. De obicei criteriul de oprire este variaiafunciei scop sub o valoare dat.
Metoda are avantajul c se poate aplica i n cazul modelelor neconvexe.
Dezavantaj nu exist metode de setare a mrimii pasului, nu este demonstratconvergena.
nixx
mjxgxxgxxg
xxf
kkii
k
j
kk
j
k
j
k
...1,
...1,)()(
max
(23)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
36/42
36
Liniarizri (PRE)
Seria Taylor pentru funcii monovariabile
Fie fo funcie definit pe un interval I, indefinit derivabil n punctul a din I.
Seria Taylor pentru funcii bivariabileFie o funcie f(x,y) de dou variabile definit , derivabil de n+1 ori pe X, cu toate derivatele mixte
egale, nu are importan ordinea de derivare, i un punct P(a,b) interior X.
)(!1
)()(
)(!
...)(!1
)()(
'
'
afax
afxf
xRafn
axaf
axafxf n
n
n
(24)
2RX
),(!1
1),(),(
....),(!2
1),(
!1
1),(),(
2
bafyby
xaxbafyxf
bafyby
xaxbaf
yby
xaxbafyxf
(25)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
37/42
37
Exemplul 8
2
1
2
1
21
2
2
2
11
2
2
2
11
21
2
2)(2,
2
2)(1,
1
2)(
0,0
07)(
025)(
max2
x
xxg
x
xxgxf
xx
xxxg
xxxg
xx
Rezolvarea problemei cu algoritmulgradientului conjugat implementat de Mathcad
mulime soluiiloradmisibile
Pasul 1
Este ales =1 i un punct de start n interiorul mulimii soluiiloradmisibile x0=(1,1), aplicnd liniarizarea funciei scop (relaia 21) iliniarizarea restriciilor(vezi relaiile 19) rezult problema liniar:
0,0
11,11
7)1(2)1(2
23)1(2)1(2
max2
21
21
21
21
21
xx
xx
xx
xx
xx
care are soluia (2,2)Acesta este uor determinabil i grafic
Pasul 2Urmtoareaproblem de programare liniar rezult din liniarizarea pebaza punctului x1=(2,2):
0,0
12,12
7)2(4)2(4
17)2(4)2(4
max2
21
21
21
21
21
xx
xx
xx
xx
xx
care are soluia (3,3)urmeaz pasul 3 i n final 4 prin care seobine soluia optim (4,3)
Pentru problema dat igrafic este evidentsoluia optim, deorece
funcia obiectiv esteliniar, optimul estesituat pe frontieradomeniului admisibil,punctul de intersecie afunciilor g1 i g2 estesoluiaoptim.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
38/42
38
6.3.3. Algoritmul SUMT al lui Fiacco i McCormick [S]
( Sequencial Unconstrained Minimization Technique) [MAR73]
Principiul metodei: Metoda SUMT este o metod secvenial de penalizare prin care se nlocuietefunciea scop iniial cu una care s nglobeze irestriciile problemei de PN i care spermit rezolvarea
ca problem fr restricii. Funcia scop modificat trebuie s difere puin de funcia iniial n interiorul
domeniului admisibil iar n exteriorsaib valori mari.
Problema:
S se maximizeze funciaconcavf(x)n condiiilegj(x)0 j=1,2, ...,munde gjsunt funcii convexe.
Se ataeazfunciaauxiliar:
Unde este o constantpozitiv, iar(u)este o funciemrginit inferior pentru orice ui negativ, care este
supuscondiiei:
Deseori se utilizeazfunciile de penalizare
Evident metoda este aplicabili pentru minimizarea funciilorconvexe.
)(),...,()()( 1 xgxgxfxG m (26)
mjoricepentrugg mg j
,...,2,1),...,(lim 10
(27)
m
j
jm
m
j j
m xgggxg
gg1
1
1
1 ))(log(),...,(,)(
1),...,( (28)
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
39/42
39
Etape:
1.Se pleac de la un punct arbitrar xoaparinnd domeniulul admisibil.
2.Se rezolv problema 26 pentru un numr arbitrar 0 >0. Fie x1 rezultatul.
3. Se alege 1 < 0i se repet procedura de la etapa 2.
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
40/42
40
7. OPTIMIZAREA NELINIAR N MATHCAD
Problemele de programare matematic neliniar pot fi rezolvate n Mathcad prin blocul solve
apelndu-se la funciiloeMaximizeiMinimize.
Arhitectura unui bloc de calcul solve utilizat n programarea matematic, cu respectarea strict a ordinii
elementelor, este:
1. Setarea soluiei de start
2. Cuvntul predefinit Given
3. Restriciile problemei (se utilizeaz simbolurileegal, mai mic etc. din paleta Boolean)
4. Una din funciileMaximize / Minimize cu parametrii:
Minimize(f, var1, var2, ...)
Maximize(f, var1, var2, ...)
Numele funciei obiectiv(atenie fr variabile)
Numele variabilelor de caredepinde funcia obiectiv
Dup cum s-a amintit n C06 putem controla metodade rezolvarea prin meniul asociat ferestreicontextuale, plus precizia prin variabilele predefiniteTOL i CTOL
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
41/42
41
Exemplul 9 [MAL75]
O problem de investiii
S presupunem c exist mai multe moduri de a face investiii, fie ele M1, M2, ... , Mn. Dac se
plaseaz o sumxjn modul Mj se obine un venit cj(xj) liniar n xj :
Dac se noteaz cu Q(x) venitul total avem:
De obicei restriciile sunt liniare i provin din condiii impuse sumelor investite.
Problema este de programare
matematicptratic.
Exemplu numeric.
Se presupune c suma investit
este de 1000 ub.
Exist plafoane de investiie la cele
dou firme beneficiare
max)()(1
'''
n
j
jjjjxxccxQ
jjjj xccc'''
0
1
j
n
jjjij
x
bxa
-
7/30/2019 OPTIMIZARI METODE NUMERICE IN INGINERIE
42/42
42
Exemplul 10
Regresie liniar.
Funcia de regresie liniar este determinat din conditia minimizrii sumei ptratelor erorilor, oproblem de programare neliniarfrrestricii.
Elaborai o aplicaie Mathcad care sdetermine o funciepolinomial de regresie,cu un grad oarecare.
Unde p este vectorul punctelor (reprezentate mai jos prin x),
cu --- este reprezentat drepta de regresie
Drepta de regresie, a,b necunoscute
Suma patratelorerorilor
Valorile de start