Sunteți pe pagina 1din 42

1

M
E
T
O
D
E

N
U
M
E
R
I
C
E

N

I
N
G
I
N
E
R
I
E

TUDOR PAUNESCU
MN4
7
.

O
P
T
I
M
I
Z

R
I

N
U
M
E
R
I
C
E

1

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."
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 cercetrii operaionale. 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/
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 vase
comerciale i de rzboi care traversau Altanticul, logistica bombardamentelor aeriene, logistica transporturilor feroviare spre
Siberia 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 matematic liniar.
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. C
O

A
B
O
R
D
E
A
Z


P
R
O
B
L
E
M
E
L
E

N

A
N
S
A
M
B
L
U

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 modific soluia 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 obinut soluia consultantul CO determin dac acesta rspunde cerinelor firmei,
este realist, poate fi implementat.
6. Implementarea studiului CO de ctre firm. Managementul firmei decide cum va implementa rezultatele studiului.
Uneori se ntmpl ca acesta s fie ignorat din cauza proastei comunicri ntre management i consultantul CO sau din
cauza msurilor prea radicale pe care le propune, de cele mai multe ori din ignorarea unor limitri/restricii ale problemei.
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 multor funcii 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 unor operaii.
3. Restriciile care 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 matematic const n maximizarea/ minimizarea funciei obiectiv cu
respectarea restriciilor
7
Deci o problem de minimizare/maximizare n programarea matematic impune determinarea
componentelor vectorului
X=[x
1
, x
2
, ,x
n
]
T

care minimizeaz/ maximizeaz funcia obiectiv
F(X) minim/maxim
n prezena restriciilor
r
i
(X) {; = ; } o, i=1,2, ,m
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Exemplul 1
Pentru realizarea a dou produse P
i
, i=1,2 o firm are la dispoziie trei feluri de materiale M
j
, j=1,2,3 n cantitile c
j
,
j=1,2,3. Un produs P
i
consum c
i,j
materiale i aduce un beneficiu b
i
. S se determine numrul de produse de pe urm
crora s se obin un beneficiu maxim.








Notaii: x
1
cantitatea de produse P
1
x
2
cantitatea de produse P
2

P
1
[buc]
P
2
[buc]
Resurse
M
1
[buc]

2 1 12
M
2
[buc]

1 3 8
M
3
[buc]

4 - 15
Beneficiu
[ub]
200 300
Modelul matematic 1

200x
1
+300x
2
max

2x
1
+x
2
12
x
1
+3x
2
8
4x
1
15
x
1
0, x
2
0,

Problema are un model liniar
monoobiectiv, n numere ntregi
(1)
(2)
Detalii rezolvare
8
continuare
9 Fig. 1.Tabloul/arborele tipurilor de probleme de optimizare [NEOS]
3. SISTEMATIZRI ALE TIPURILOR DE PROBLEME
10

C1. Numrul de funcii obiectiv: PM monoobiectiv (vezi exemplul 1),
PM multiobiectiv (vezi exemplul 2).

Exemplul 2

Dezvoltat din exemplul 1. Pentru producerea P
i
, i=1,2 este
necesar un consum energetic e
i
, i=1, 2 (e
1
=1.5 ub, e
2
=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
200x
1
+300x
2
max
1.5x
1
+1.6x
2
min

2x
1
+x
2
12
x
1
+3x
2
8
4x
1
15
x
1
0, x
2
0,
Problema are un model liniar
biobiectiv, n numere ntregi
(3)
11
Anumite fenomene i activiti care apar n conducerea firmelor sunt procese de decizie n mai multe
etape i 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 politic optim n raport cu starea care rezult din adoptarea primei (ultimei) decizii
[MAL75].


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.
ANALIZ POSTOPTIMAL:

- identificare restriciilor active, inactive;
- stabilire ecarturi (distane) la restricii inactive;
- comparaii ale optimului unic cu soluiile admisibile de baz i intermediare.
Aciunile de mai sus sunt necesare decidentului pentru a se situa n concretul problemei decizionale
13
ABORDARE RECURSIV:

- aplicare repetat a dubletului: procedur de optimizare- analiz postoptimal:
- 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 anumit toleran, imprecizia global a modelului.
STABILITATEA SOLUIILOR:

- proprietatea problemei de a avea soluii neglijabil modificate n cazul perturbaiilor mici n informaia
iniial;
- o problem cu soluii stabile se numete bine definit.
14
4.2. Demers metodologic - calitate informaie

Calitate informaie: precizie, completitudine, oportunitate

Fig. 2
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
clasic utilizeaz ca instrumente principale calculul diferenial i calculul variaiilor. Acestea sunt de cele mai
multe ori sunt inaplicabile n optimizare fr restricii fiind necesar utilizarea de metode iterative.

5.1.1. Extreme ale funciilor reale (PRE)

Dac f(x) este derivabil pentru orice problema:


Se rezolv calculnd rdcinile reale ale ecuaiei:

Aceste rdcini se numesc puncte staionare ale funciei f. Punctele de maxim, minim (puncte de extrem)
se afl printre aceste rdcini.
Dac funcia are derivate de ordinul doi n aceste puncte i dac 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 n impar nu.
( ) R b a x c e ,
( )

e b a, x
f(x) max
0 ) (
'
= x f
0 ) (
' '
> c f
0 ) (
' '
= c f
2 , 0 ) ( , 0 ) ( ,..., 0 ) ( , 0 ) (
) ( ) 1 ( ' ' '
> = = = =

n c f c f c f c f
n n
(4)
(5)
(6)
16
Fig. 3 [MAL75] Fig. 4 [MAL75]
n figura 3 exist 9 puncte staionare, cu maxime i minime relative
i un punct x
3
care nu este extrem. Maxim absolut/global este x
9
.
Conform figurii 4 dac maximul absolut nu se gsete
printre punctele staionare ci este limita superioar a intervalului.

S considerm funcia multivaribil

Unde f este o funcie difereniabil pe o mulime deschis
Punctele staionare ale funciei f rezult din rezolvarea sistemului:


Acest sistem este greu rezolvabil pe cale analitic, dar i numeric.
| | b a x , e
n
R E c
j
n
x
x x x f
c
c ) ,..., , (
2 1
n j s s = 1 , 0
(7)
(8)
Fig. 5. Minim global ntr-un punct de inflexiune
) ,..., , ( ) (
2 1 n
x x x f X f =
17
Fie (a
1
,a
2
, ... ,a
n
) o soluie a sistemului 8
Dac toate numerele




Sunt pozitive, atunci funcia f are n punctul (a
1
,a
2
, ... ,a
n
) un minim.

Dac toate numerele




Sunt negative, atunci funcia f are n punctul (a
1
,a
2
, ... ,a
n
) un maxim.
unde
A A A
A A A
A A A
A A
A A
A
nn n n
n
n
n
,
...
... ... ... ...
...
...
,..., ,
2 1
2 22 21
1 12 11
22 21
12 11
2 11 1
= A = A = A
( )
j i
n
ij
x x
a a f
A
c c
c
=
,...,
1
2
(9)
unde
A A A
A A A
A A A
A A
A A
A
nn n n
n
n
n
n
,
...
... ... ... ...
...
...
) 1 ( ,..., ,
2 1
2 22 21
1 12 11
22 21
12 11
2 11 1
= A = A = A
( )
j i
n
ij
x x
a a f
A
c c
c
=
,...,
1
2
(10)
Fig.6. Punct de minim, maxim i punct a la funcii reale de dou variabile
18
Punct a al funciei y=x
3
z=x
2
y
2

Maxim global al unui paraboloid Minim local al funciei
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 R
n
astfel determinat, se compar valoarea funciei cu cea din punctul anterior i se reine
cea mai mare/mic valoare. Se lucreaz cu distribuii uniforme, i un numr mare, 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. Aceast variant poate duce la rezultate mai bune dect cea n care se lucreaz
cu un singur domeniu i un numr foarte mare de puncte.
20
Exemplul 3. Min global al unei funcii monovariabil real, ntr-un interval dat.
Metoda drumului aleator [DAN76]

Metoda este destinat determinrii unui extrem local i se bazeaz pe relaia:
X
k+1
=X
k
+g
.
r
Unde X
k
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
21
Paii algoritmului:
1. Alegere punct de start X
0
i a mrimii g (saltul).
2. Generare r.
3. Calcul F(X
k
+g
.
r).
4. Comparare F(X
k
+g
.
r) cu F(X
k
) i n caz de obinere a unei valori mai mici/ mari se face nlocuirea
rel.11.
5. Se continu paii 2,3,4 un numr predeterminat de ori, dac valorile nu se modific semnificativ se
reduce g.

5.1.2.2. Metode de cutare unidirecionale (relaxrii)
Dezvoltai o aplicaie Mathcad pentru
determinarea minimului local a unei funcii
oarecare reale bivariabile, bazat pe metoda
drumului aleator
F
i
g
.
8

[
D
A
N
7
5
]

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 scderea nceteaz se continu cu incrementarea
celei de a doua variabile amd. Un ciclu presupune lucrul cu toate
variabilele. Dup finalizarea unui ciclul se ncepe cu alt ciclu i se
incrementeaz iari prima variabil amd.
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.
22
5.1.2.3. Metode de gradient [SMI78]
Definirea i semnificaia gradientului (PRE)
pe
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 funciei f care trece
prin punctul de coordonate x
(k)
. Direcia vectorului gradient
corespunde celei mai rapide creteri a lui f.
( )
( )
) (
... ) (
1
) (
k
x x
n
k
x
x f
x
x f
x f
=
c
c
c
c
= V
(12)
) (
) (k
x f V
Metoda gradientului simplu

Pentru o problem de minim principiul metodei de gradient
simplu este 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).
) (
) (k
x f V
Fig.10
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+1 pe 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
politic raional este de a descrete la apropierea de optim.

( )
( )
( )
( )
( )
k
k
k
x f
x f
d
V
V
=
(13)
( ) ( ) ( ) ( ) k k k k
d x x + =
+

1
(14)
( ) k

) (x f V
Algoritmul gradientului simplu are o deficien major care se manifest la funcii care au vi i creste,
deoarece datorit deplasrii punctelor n zig-zag se poate ajunge la un proces foarte slab convergent. n
general, algoritmii sunt testai sub acest aspect cu funcia banan 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 gradienilor conjugai (Fletcher-Reevs).
- Metoda Davidon-Fletcher-Powel.
25
Fig.11
26
Exemplul 4. Min local al unei funcii bivariabil real prin metoda gradientului simplu.
Fig.12
Notaii
sufix a - anterior
sufix c curent
vfu valoare funcie,u={a,b}
dixu,diyu derivata partial
de x, respectiv de z din
funcie
mgu modulul gradientului
pas
i index iteraii

Rezolvare prin blocul solve
27
6. OPTIMIZAREA NELINIAR CU RESTRICII
6.1. Definire PNR
n general, o problem de programarea matematic impune determinarea componentelor vectorului
X=[x
1
, x
2
, ,x
n
]
T

care minimizeaz/ maximizeaz funcia obiectiv
F(X) minim/maxim
n prezena restriciilor
r
i
(X) {; = ; } o, i=1,2, ,m

Problema este neliniar (PNR) dac:
- restriciile sunt liniare i funcia obiectiv este neliniar;
- restriciile sunt neliniare i funcia scop este liniar;
- ambele sunt neliniare.
n cazul general, cnd restriciile i funcia scop sunt neliniare, aceste probleme se ncadreaz 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)
28
Fig.14. [DAN76]
O mulime de puncte S n spaiul euclidian cu
n dimensiuni R
n
este convex, dac
segmentul de dreapt cu capetele n oricare
dou puncte ale mulimii este coninut n
ntregime n S.
Mulimea S este convex dac pentru toi

este ndeplinit condiia:
O funcie F(X) este denumit convex dac, n domeniul su de definiie presupus convex, pentru oricare
dou puncte X
1
i X
2
este valabil inegalitatea:


Membrul drept al inegalitii reprezint interpolarea liniar
a funcie de-a lungul dreptei care unete X
1
i X
2.

S X S X e e
2 1
,
( ) 1 0 , 1
2 1
s s = + Y X X
6.2. Funcii i domenii convexe, condiiile Kuhn-Tucker [DAN76] (S)
(16)
(17)
( ) 1 0 , ) 1 ( ) ( ) ) 1 ( (
2 1 2 1
s s + s + X F X F X X F (18)
F
i
g
.
1
5
.


[
D
A
N
7
6
]

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
obinute dac se respect condiia 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 staionar s fie un minim.
Conceptul multiplicatorilor lui Lagrange a fost extins de Kuhn-Tucker i n cazul restriciilor inegalitate.

S-au elaborat numeroi algoritmi eficieni pentru anumite clase de probleme de programare neliniar, de
exemplu algoritmi pentru programarea ptratic, programarea geometric.
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 calculeaz punctele staionare a unei funcii constrnse, deci poate determina puncte de extrem dar i
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 obiectiv f(x,y) max/min, o singur restricie egalitate g(x,y)=c, unde c este o constant.
F
i
g
.
1
6
.


[
W
i
K
]

Curbele de nivel ale funciei scop pot fi vizualizate prin
f(x,y)=d
n
. Cnd f(x,y)=d
i
i g(x,y)=c sunt tangente s-a atins un
punct staionar. Cele dou curbe au n punctul comun i
gradienii pentru f i g sunt paraleli.


a fost introdus deoarece modulele gradienilor nu sunt egale.
|
|
.
|

\
|
c
c
c
c
= V V = V
y x
unde g f
y x y x y x
, ,
, , ,

(19)
31
Pentru a ncorpora aceste condiii ntr-o singur relaie se introduce funcia auxiliar:


i rezolvm (determinm punctele staionare prin rezolvarea sistemului format prin anularea derivatelor
pariale de x, y i ):
( ) ( ) ( ) c y x g y x f y x F + = , , ) , , ( (20)
0 ) , , (
, ,
= V

y x F
y x
(21)
0 ) , (
min 2 2 ) , (
2
2
= =
+ =
c h r h r g
h r r h r f
t
t t
(22)
Exemplul 5
S se determine consumul minim de material n cazul
unei conserve cilindrice cu capac cu capacitate impus.
Dac notm cu: r-raza, h-nlimea conservei,
c-capacitatea, rezult modelul matematic:


Se observ c optimul aste atins dac h=2r.
O interpretare: sfera este suprafaa care include un volum
maxim ntr-o suprafa nchis minim. n cazul problemei
cutia cilindric care are nlimea egal cu diametrul tinde
spre dimensiunile unei sfere.

Rezultatul putea fi obinut uor i pe cale analitic, cu instrumentele
analizei matematice, ca problema de extrem a functiei f(r). Vezi rezolvarea
SALT
32
33
Exemple de interpretare geometric a problemelor tip f(x,y) min/max i g(x,z)=c
f(x,y) = x + y
x
2
+ y
2
= 1.
(x,y,) = f(x,y) + g(x,y) = x + y + (x
2
+ y
2
1)
f(x,y) = x
2
y
x
2
+ y
2
= 3.
(x,y,) = f(x,y) + g(x,y) = x + y + (x
2
+ y
2
3)
Exemplul 6 Exemplul 7
34
Cazul n dimensional.
Fie f(x) funcia obiectiv i g
k
(x)=0 restriciile problemei.
Domeniul admisibil al soluiilor este o mulime care conine punctele care satisfac restriciile.
F i g
k
trebuie s aib derivate pariale de ordin 1 continue i grad(g
k
) nenul n domeniu.
Lagrangianul este:


dac i numai dac

MLP poate fi aplicat i n cazul restriciilor inegaliti prin introducerea unor variabile suplimentare care
transform restriciile inegaliti n egaliti [NOR99] .
( )

+ = A
k
k k
g f x , (22)
0 = A V
x
V = V
k
k x k x
g f
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 mrime mic i medie pe PC-urile actuale timpul de
rulare este rezonabil.
Etape
1. Se pornete de la o soluie admisibil oarecare x
0
.
2. Cunoscndu-se aproximaia iteraiei anterioare x
k
se liniarizeaz funcia scop f(x) i toate restriciile.
Liniarizarea n raport cu x
k
conduce la urmtoarea problem liniar:




Unde
k
este un numr pozitiv suficient de mic, pasul.
3. De obicei criteriul de oprire este variaia funciei 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 demonstrat convergena.
( )
( )
n i x x
m j x g x x g x x g
x x f
k
k
i i
k
j
k k
j
k
j
k
... 1 ,
... 1 , ) ( ) (
max
= s
= V s V
V
o
(23)
36
Liniarizri (PRE)

Seria Taylor pentru funcii monovariabile

Fie f o funcie definit pe un interval I, indefinit derivabil n punctul a din I.






Seria Taylor pentru funcii bivariabile
Fie 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
) ( ) (
'
'
a f
a x
a f x f
x R a f
n
a x
a f
a x
a f x f
n
n
n

+ ~
+

+ +

+ =
(24)
2
R X c
( ) ( ) ( ) ( )
( ) ( ) ) , (
! 1
1
) , ( ) , (
.... ) , (
! 2
1
) , (
! 1
1
) , ( ) , (
2
b a f
y
b y
x
a x b a f y x f
b a f
y
b y
x
a x b a f
y
b y
x
a x b a f y x f
|
|
.
|

\
|
c
c
+
c
c
+ ~
+
|
|
.
|

\
|
c
c
+
c
c
+
|
|
.
|

\
|
c
c
+
c
c
+ =
(25)
37
Exemplul 8
(

= V
(

= V
(

= V
> >
s =
s + =
+
2
1
2
1
2 1
2
2
2
1 1
2
2
2
1 1
2 1
2
2
) ( 2 ,
2
2
) ( 1 ,
1
2
) (
0 , 0
0 7 ) (
0 25 ) (
max 2
x
x
x g
x
x
x g x f
x x
x x x g
x x x g
x x
Rezolvarea problemei cu algoritmul
gradientului conjugat implementat de Mathcad
mulime soluiilor
admisibile
Pasul 1
Este ales =1 i un punct de start n interiorul mulimii soluiilor
admisibile x
0
=(1,1), aplicnd liniarizarea funciei scop (relaia 21) i
liniarizarea restriciilor (vezi relaiile 19) rezult problema liniar:
0 , 0
1 1 , 1 1
7 ) 1 ( 2 ) 1 ( 2
23 ) 1 ( 2 ) 1 ( 2
max 2
2 1
2 1
2 1
2 1
2 1
> >
s s
s
s +
+
x x
x x
x x
x x
x x
care are soluia (2,2)
Acesta este uor determinabil i grafic
Pasul 2
Urmtoarea problem de programare liniar rezult din liniarizarea pe
baza punctului x
1
=(2,2):
0 , 0
1 2 , 1 2
7 ) 2 ( 4 ) 2 ( 4
17 ) 2 ( 4 ) 2 ( 4
max 2
2 1
2 1
2 1
2 1
2 1
> >
s s
s
s +
+
x x
x x
x x
x x
x x
care are soluia (3,3)
urmeaz pasul 3 i n final 4 prin care se
obine soluia optim (4,3)
Pentru problema dat i
grafic este evident
soluia optim, deorece
funcia obiectiv este
liniar, optimul este
situat pe frontiera
domeniului admisibil,
punctul de intersecie a
funciilor g
1
i g
2
este
soluia optim.
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 nlocuiete
funciea scop iniial cu una care s nglobeze i restriciile problemei de PN i care s permit rezolvarea
ca problem fr restricii. Funcia scop modificat trebuie s difere puin de funcia iniial n interiorul
domeniului admisibil iar n exterior s aib valori mari.

Problema:
S se maximizeze funcia concav f(x) n condiiile g
j
(x)0 j=1,2, ...,m unde g
j
sunt funcii convexe.
Se ataeaz funcia auxiliar:

Unde este o constant pozitiv, iar (u) este o funcie mrginit inferior pentru orice u
i
negativ, care este
supus condiiei:

Deseori se utilizeaz funciile de penalizare


Evident metoda este aplicabil i pentru minimizarea funciilor convexe.
| | ) ( ),..., ( ) ( ) (
1
x g x g x f x G
m
u = (26)
m j orice pentru g g
m
g
j
,..., 2 , 1 ) ,..., ( lim
1
0
= = u

(27)

= =
= u = u
m
j
j m
m
j
j
m
x g g g
x g
g g
1
1
1
1
)) ( log( ) ,..., ( ,
) (
1
) ,..., ( (28)
39
Etape:
1.Se pleac de la un punct arbitrar x
o
aparinnd domeniulul admisibil.
2.Se rezolv problema 26 pentru un numr arbitrar
0
>0. Fie x
1
rezultatul.
3. Se alege
1
<
0
i se repet procedura de la etapa 2.
40
7. OPTIMIZAREA NELINIAR N MATHCAD
Problemele de programare matematic neliniar pot fi rezolvate n Mathcad prin blocul solve
apelndu-se la funciiloe Maximize i Minimize.

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 simbolurile
egal, mai mic etc. din paleta Boolean)
4. Una din funciile Maximize / Minimize cu parametrii:
Minimize(f, var1, var2, ...)
Maximize(f, var1, var2, ...)
Numele funciei obiectiv
(atenie fr variabile)
Numele variabilelor de care
depinde funcia obiectiv
Dup cum s-a amintit n C06 putem controla metoda
de rezolvarea prin meniul asociat ferestrei
contextuale, plus precizia prin variabilele predefinite
TOL i CTOL
41
Exemplul 9 [MAL75]

O problem de investiii
S presupunem c exist mai multe moduri de a face investiii, fie ele M
1
, M
2
, ... , M
n
. Dac se
plaseaz o sum x
j
n modul M
j
se obine un venit c
j
(x
j
) liniar n x
j
:

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
matematic ptratic.

Exemplu numeric.

Se presupune c suma investit
este de 1000 ub.
Exist plafoane de investiie la cele
dou firme beneficiare
max ) ( ) (
1
' ' '
+ =

=
n
j
j j j j
x x c c x Q
j j j j
x c c c
' ' '
+ =
0
1
>
s

=
j
n
j
j j ij
x
b x a
42
Exemplul 10

Regresie liniar.
Funcia de regresie liniar este determinat din conditia minimizrii sumei ptratelor erorilor, o
problem de programare neliniar fr restricii.
Elaborai o aplicaie Mathcad care s
determine o funcie polinomial 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 patratelor
erorilor
Valorile de start

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