P. 1
Cap2_Tehnici de programare liniara si neliniara

Cap2_Tehnici de programare liniara si neliniara

|Views: 824|Likes:
Published by carmen_du2003

More info:

Published by: carmen_du2003 on Feb 26, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/16/2013

pdf

text

original

Sections

  • 2.1.1 Problema tara restrictii
  • 2.1.2 Problema eu restricti i
  • 2.1.3 Conditiile necesare Karush-Kuhn-Tucker
  • 2.2 Metode de rezolvare a problemelor neliniare
  • 2.3.1 Metoda branch and bound (BB)
  • 2.3.2 Exemplu ilustrativ
  • 2.4.1 Metoda descompunerii generalizate Benders (GBD)
  • 2.4.2 Metoda aproxirnarii externe (OA)
  • 2.4.3 Metoda aproxirnarii externe cu relaxarea egalitatilor
  • 2.4.4 Metoda aproximarii exteme cu relaxarea egalitati lor ~l
  • 2.4.5 Metoda aproximarii externe generalizate (GOA)
  • 2.4.6 Metoda descompunerii generalizate incrucisate (GCD)
  • 2.4.7 Compararea algoritmilor GBO si OA
  • 2.5 Programarea stohastica
  • 2.6 Concluzii

Tehnici de programare liniara si neliniara

CAPITOLUL2

TEHNICI DE PROGRAMARE LIN lARA ~I

.....

NELINIARA

Introducere

Problemele de optimizare a instalatiilor chimice care proceseaza mai multe produse sunt in general de forma neliniara. Neliniaritatile pot aparea fie In functia obiectiv, fie In restrictii,

Problemele de optimizare au inceput sa tie studiate inca din mijlocul secolului al 18- lea in domenii precum matematica si fizica, Problemele din inginerie si economie aparute ca urmare a dezvoltarii industriale au impulsionat astfel de studii. Ultimul secol a cunoscut 0 dezvoltare impresionanta a unor astfel de tehnici cunoscute indeosebi sub numele de programare matematica.

Prol::rlema alocarii resurselor a depasit stadiul de cercetare teoretica si a fost rapid irnplementata in practica, Deciziile economice, guvernamentale si militare au constituit terenul pe care cercetarea teoretica din acest domeniu a fost transpusa in practica.

Datorita multiplelor aplicatii practice cu rezultate concrete imediate a existat si exist a un interes constant in dezvoltarea acestor tehnici.

Dezvoltarea exploziva in domeniul tehnicii de calcul a perrms abordari n01 care necesita un mare volum de calcul, dar si dezvoltarea vechilor metode.

In ingineria chimica pentru problemele de optimizare exista un interes crescut mai ales in ultimele decenii, de cand tehnica de calcul a putut sustine dezvoltarile teoretice.

Desi exista 0 gama de tehnici de rezolvare a problemelor de optimizare, datorita forme lor modelelor, programarea maternatica este foarte frecventa.

Modelele matematice, in functie de natura variabilelor pot f modele deterministe, in care variabilele au un caracter determinist si modele stohastice, in care variabilele sunt de natura aleatorie.

7

Telmici de programare liniara ~i neliniara

Cercetarile efectuate 'in cadrul prezentei teze de doctorat au folosit cu precadere programul GAMS impreuna cu solvere adecvate tipului problemei abordate. Principiile fundamentale ale acestora au la baza cunostintele teoretice expuse in cadrul capitolului de fata.

2.1 Programarea neliniara intr-un domeniu continuu

Deoarece modelele matematice ce descriu problemele de optimizare contin atat ecuatii, cat si inecuatii neliniare a fost necesar studiul metodelor de rezolvare a unoI' astfel de prohleme. Astfel de prohleme pot aparea intr-o varietate de aplicatii industriale.

2.1.1 Problema tara restrictii

In cazul in care variabilele pot lua orice valori problema este una fara restrictii. Astfel de prohleme au forma:

minf(x)

X E R"

2.1

unde f(x) este 0 functie de n variabile reale x = (X1,X2, ... ,x,,), fiecare din variabilele Xl' X 2 , •.. , XII putand lua orice valoare intre - 00 si + 00 •

Rezolvarea aceastei probleme are ca punct de plecare conditia necesara ca x" sa fie minimul functie pseudoconvexe f(x) In R" :

2.2

2.1.2 Problema eu restricti i

o problema de optimizare in care variabilele sunt supuse unui set de restrictii are

forma:

min/ex)

2.3

Tehnici de programare Iiniara $i nel iniara

eu restrictiile:

h(x) = 0 g(x) ::; 0

X E X C R"

Pentru aeest tip de probleme trebuie preeizat ee inseamna un punet fezabil: un punet x E X in care sunt indeplinite toate restrictiile atat cele de tip egalitate, cat ~i eele de tip inegalitate, este un punet fezabil. Prin unnare toate punetele fezabile ale lui f(x) sunt

definite astfel:

F = {x EX <:; R" : h(x) = O,g(x)::; O}

Pentru rezolvarea acestui tip de problema prineipala dircctie este aeeea de a transforma problema eu restrictii in una tara restrictii folosind multiplieatiorii Lagrange. Acesti multiplieatori sunt implicati in definirea de functii eompuse de forma:

L(X,A,~) = f(x) + ATh(x) + ~Tg(X),

2.4

unde:

Multiplieatorii Lagrange A sunt asociati restrictiilor de egalitate, iar eei notati eu ~

restrictiilor de tip inegalitate.

Problema este transformata intr-una tara restrictii, urmand a fi stabilite punetele stationare ale functiei Lagrange:

min L(x, A,~) = f(x) + ATh(x) + J..lTg(X)

'·).,·1120

2.5

9

I chnici de progrumnre IIIHal.\ ~I ncliniara

Acestc puncte snuionare pot 11 minime locale sau minimul global. maximo locale sal! maximul global, precum :;;i puncte de inflexiune (de schirnbare de punta).

Forma restrictiilor determine existcnta sau nu a multiplicatorilor Lagrange. Pcntru verificarca existentei multiplicutorilor l.agrunge sunt mui multe conditii necesarc ~i suficiente (Floudas, 1995).

2.1.3 Conditiile necesare Karush-Kuhn-Tucker

Fie x E: X 0 solutio fezabila a ecuatiei 2.3. Fie t(xl si g(x) ditcrentiahile in punctul

x si h( x) avand derivata partial .. ! continua in punctul x . Exista urmatoarele conditii:

a) Conditia de independcnta liniara:

Gradicntii Vg/(x) i E.1 si Y'}z(x) i = 1.2 ..... m stint liniar indepcudenti. unde

.1= U:g (x)=Ol·

b) Conditia Slater:

- restrictiile g! (x) .i E J sunt pseudoconvexe in punctul x ;

- restrictiile II (x), i = 1.2 ..... m sunt cvasiconvexe ~i cvasiconcave:

- gradientii v/z,(x), i = 1.2, .... m sUIH liniari independenti:

- exista x t= X astfel incat g (x) S; 0 pentru .i E:.! si II, (X) := 0 pentru

i == [,2 ..... 111.

c) Condi tia Kuhn-Tucker:

Exista un vector nenul Z E: W pentru care:

:Z \'h(x)= 0 si r \?g (x) n. iF J :

~i deasemeni t'xistEI \I lunctic vcctoriala n dimcnsionala 1'I("t) pc intervalul 10.11 cu urmatoarele proprictati:

- (!I(O) .0.= x :

III

Tehnici de programare liniara si neliniara

- (o('t) E X pentru 0 ~ 't ~ 1;

- co este diferentiabila la 't = 0 si

dtot. 0) '\

-- = ""z pentru ').. > 0 . ch

d) Conditia inversei restrictiei convexe:

Restrictiile hex) si g(x) sunt continuu diferentiabile in x. Fieeare gl (x) j E.J este

.

pseudoconcava sau Iineara la x. Fiecare h, (x), i = 1,2, ... , m este atat pseudoconcava

cat~ipseudoconvexaln x.

-

Dad x este un optim local, iar una din restrictiile (a)-(d) este indeplinita, atunci

multiplieatorii Lagrange X i u exista (au valori finite) astfel incat:

- - -

Vf(x) + ')..TVh(x) + ).lTVg(X) = 0

hex) = 0

g(x) ~ 0

Plgl(x)=O j=I,2, ... ,p PI 2: 0 j = L2 .... ,p

2.1A Conditiile suficiente Karush-Kuhn- Tucker

,

Fie x E X un punct fezabil a lui 2.3 ~i de asemenea un punct la care sunt indeplinite

conditiile necesare Karush-Kuhn-Tucker, Fie I " = [i:A, > 0] ~i r = U:/L, < 0] la x. Daca:

- lex) este pseudoconvexa la x eu toate punetele fezabile x :

- -

- h,(x) pentru i E I" este pseudoconvexa la x cu toate punetele fezabilc x :

- h,(x) pentru iE/ este pseudoconcava la x eu toate punetele fezabile x ;

-

- g- I (x) pentru j E J este pseudoconvexa la x cu toate punetele fezabile x ,

J 1

Tehnici de programare liniara si nel iniara

atunci x este optimul global al functiei 2.3 .

Daca conditiile de mai sus sunt valabile doar pentru 0 hipersfera de raza e in jurul

-

punctului x, atunci x este optimullocal al functiei 2.3.

2.2 Metode de rezolvare a problemelor neliniare

Conditiile prezentate anterior reprezinta baza teoretica a metodelor de rezolvare a problemelor neliniare de optimizare care contin sau nu restrictii privind valoarea variabilelor, In functie de utilizarea valorii derivatelor metodele pot fi impartite In (Smigelschi ~i

Woinaroschy, 1978):

a) Metode care nu necesita evaluarea derivatelor;

b) Metode care folosesc valoarea derivatei de ordinul 1 sau 2.

In prima categorie se gasesc algoritmii Simplex, Complex. Hooke ~l Jeeves, Rosenbrock.

Algoritmi care evalueaza derivatele sunt metode de gradient, metode bazate pe directii conjugate, metode cvasi-Newton. Metoda gradientului in pasi realizeaza 0 cautare liniara de lungul directiei de descrestere a functiei obiectiv. Metoda Newton utilizeaza derivatele de ordinul II ale functiei obiectiv. Metodele cvasi-Newton folosesc aproxirnarii a inversei matricii hessiene obtinute prin diferiti algoritmi.

Metodele bazate pe directii conjugate comb ina informatiile privitoare la gradientul din iteratia curenta cu inforrnatiile privitoare la gradientii din iteratiile anterioare pentru a genera un nou set de coordonate conjugate.

In programele care rezolva anumite probleme concrete pot aparea 0 serie probleme tehnice. Astfel atunci cand se utilizeaza 0 metoda de penalizare cu punct interior sau exterior trebuie prevenita situatia In care se paraseste domeniul interior, respectiv exterior. De asemenea pot aparea situatii in care este necesara efectuarea unor operatii nepermise (logaritmarea unor numere negative, impartiri Ia zero). Solutiile pentru a evita astfel de situatii sunt particulare fiecarui caz in parte.

Dificultatca unei probleme de optimizare sporeste in cazul In care exista restrictii de tip egalitate ~i mai ales daca acestea sunt neliniare.

12

Tehnici de programare liniara si neliniara

Teoria dualitatii

Problemele de optimizare neliniara au doua reprezentari diferite, problema prirnala si problema duala (Floudas, 1995).

Legatura intre problema primal a si cea duala este data de teo ria dualitatii,

Problema primala (P) are forma:

minf(x)

2.6

cu restrictiile:

hex) = 0 g(x) ::; 0

XEX

unde:

x este un vector de n variabile;

hex) este un vector de m functii cu valori reale;

g(x) este un vector de p functii cu valori reale; f(x) este 0 functie cu valori reale;

X esteun set convex nevid.

Problema duala (D) are forma:

maxinf L(x,A,~)

A 'EX

2.7

unde: L(X,A,~) = f(x) + A1h(x) + ~ Ig(X), iar ).! ::::: o.

L(x, A,~) este functia Lagrange, A este un vector m -dimensional al multiplicatorilor

Lagrange asociati restrictiilor de egalitate, iar ).!

este un vector p -dimensional al

multiplicatorilor Lagrange asociati restrictiilor de inegalitate.

13

Tehnici de programare liniara si neliniara

Problema primala ~i cea duala au proprietatea di valorile optime ale primalei si dualei sunt egale ~i corespund valorii functiei Lagrange in punctul respectiv. Dad'! optimul reprezinta minimul primalei conform teoriei dualitatii acesta trebuie sa corespunda valorii maxime a dualei. Rezulta ca primala si duala au un singur punct comun si anume optimul.

Proprietatile de mai sus pot fi folosite pentru gasirea optimului prin rezolvarea problemei duale in locul primalei, lucru care in unele situatii este mai avantajos.

Criteriul de stop in anumiti algoritmi il constitue atingerea unei valori a diferentei intre prirnala ~i duala sub 0 limita prestabilita ..

2.3 Optimizarea 111 problemele liniare continand variabile continue si intregi

Un numar mare de modele au atat variabile continue, cat si variabile discrete, care apar in functia obiectiv si/sau in restrictii.

In practica, datorita standardizarii, capacitatea utilajelor nu poate avea decat valori discrete. Numarul de utilaje ee alcatuiesc 0 instalatie nu poate fi decat un numar intreg. De asemenea, exista 0 serie de variabile care nu pot avea decat valorile 0 si 1. Existenta sau nu a unui utilaj este descrisa de 0 astfel de variabila binara. Loeul oeupat intr-o secventa de loturi de un anum it lot este de asemenea deseris prin alocarea valorii I, daca acel lot ocupa acea pozitie, sau prin alocarea valorii 0 in caz contrar.

Un vast numar de aplicatii pot fi formulate ca probleme de progamare maternatica liniara eu variabile mixte, continue si intregi (MILP). Aceste aplicatii sunt problemele de infrastructura a instalatiilor sau problemele de alocare. In ingineria chimica modelele MILP se aplica pe scara larga in domenii prccum proiectarea si exploatarea instalatiilor, Aceste aplicatii includ sinteza coloanelor multicomponent pentru mai multe produse, sinteza sistemelor de separare, sinteza retelelor de schimbatoare de caldura, planificarea pe tennen scurt ~i lung a productiei, etc. Din punct de vedere matematic 0 astfel de problema este formulata astfel:

. , d'

mmcx+ y

2.8

14

ell rcstrictiilc: Ax + By b

x u, x c X (~ R'

yc:O.l:

unde: x este un vector de n variabile continue: y este un vector de {/ variabile hinare:

c .d sunt vectori ui pararnetrilor de dimensiune 11 respectiv q :

A. B sunt matrici piitrate de dimensiuni corespunzatoarc n » n , respectiv q x (I;

b este \ ectorul corespunzator celor II inegalitati.

Dificultatea majora a acestui tip de problemc dcriva din natura combinatoric a dorneniului variabilelor y. Ficcure alegere dintre 0 ~i I pcntru elementele vcctorului y , determina o problema de programme liniara (LP). Urmeaza gasirea vectorului x care s[t furnizeze solutia optima,

o solutie consta in rezolvarea problemelor LP pentru riecurc combinatie posibila a elementelor vectorului y. Dar crestcrea dimensiunii \ ectorului y conduce la cresterca exponentiala a efortului de calcul. De exemplu pentru 100 de variabilc binarc avem itiil combinatii posibile. en rezultat vor fi de rezolvat 2liili probleme LP. Desigur cii 0 astfel de metoda flU ponte fi uplicata datorita volumului excesiv de calcul,

in ciuda complexitatii analizci ce rezulta din natura combinatoric a variabilclor, s-au identificat mai multe metode can: au putut fi tolosite ell succes la aplicatii ell un numar mediu sau chiar mare de variabile.

Astfel de algoritrni sunt: branch and bound (ramificare ~i limitate ~ Land si Doig, 1960: Dakin. 1965: Driebeek. 1966: Beale ~i Tomlin, 1970: 'Tumlin, 1971: Beale :;;i Forrest, 1976: Beale, 1968. ]979: Martin :;;i Schrage, 1985: Pardalos ~i Rosen, 1(87): metoda sectionarii (Gomory, 1958, 196(): Crowder s, a" 19::-:3: Van Roy ~i Wesley, 19S6, 1987:

Padberg :;;i Rinaldi, 199 L Boyd. 1994): metoda descornpunerii (Benders, 11)62: Fisher, 1981:

Geoffrion ~i Mcltridc. 1978: Magnanti si Wong. 1 9X I: Van R(lY. 191013. 19i'i61 ~i metodcle lug icc (Balas, 1975, 1979: Jeroslow, 1977: Hooker. 198:-1: Jeroslow ~i LO\\e, 1984, 1985: .lcroslnv, ~i Wang. Il/lIO; Raman ~i Grussmann. l(j\)~l.

in algorimul branch and bound, exte folosit un arbore binar pentru reprezentarea combinatiilor 0-1, iar domcniul fczahil este div izut sistemutic in subdumcnii, ell caleularea limitei maxime ~i minime ale uptimului.

Tehnici de programare liniara si neliniara

In metoda sectionarii sunt introduse noi restrictii, numite sectiuni (care sunt hiperplanuri), ce divid domeniul fezabil, pana cand 0 solutie optima este gasita.

In metoda descompunerii structura matematica a modelului este prelucrata pnn diferite metode de descompunere, iar apoi se aplica metoda adecvata (metoda relaxarii, teoria dualitatii).

2.3.1 Metoda branch and bound (BB)

Metoda generals branch and bound pentru probleme descrise de formularea 2.8 se bazeaza pe trei clemente cheie: partitionarea, relaxarea :;;i eliminarea subdomeniilor care nu contin optimul.

- Partitionarea

Fie 0 problema MILP notata cu (P) avand solutiile fezabile FS(P). Un set de subprobleme (Pi). (P2), ... ,(Pn) este definit ca 0 parte a lui (P) daca sunt indeplinite urmatoarele conditii:

a) 0 solutie fezabila a oricarei subprobleme (PI), (P2), ... ,(Pn) este 0 solutie fezabila a lui (P);

b) Fiecare solutie fezabila a luiIP) este 0 solutie fezabila a unei singure subprobleme.

- Relaxarea

o problema de optimizare (RP) este definita ca 0 relaxare a problemei (P) daca un set de solutii a lui (P) este un subset de solutii fezabile a lui (RP) adica

FS( P) ~ FS( RP)

2.9

- Eliminarea subdomeniilor

Fie (CS) 0 subproblema candidat in rezolvarea problemei (P). Se doreste sa se determine daca domeniul fezabil a lui (eS), F(eS), contine 0 solutie optima a lui (P) si daca e cazul, sa se determine acest optim.

16

Tehnici de programare Iiniara si neliniara

o subproblems candidat (CS) va fi eliminant daca se indeplineste una din urmatoarele

conditii:

a) Se poate demonstra ca solutia fezabila din F(CS) nu este mai buna dedit cea mai buna solutie gas ita pana in momentul respectiv;

b) 0 solutie optima a lui (CS) a fost deja gasita.

Modul general de functionare a algoritmilor bazati pe metode de tip branch and bound rezolva 0 subproblerna relaxata pentru obtinerea unui optim si apoi aplica testele de eliminare mentionate mai sus. Exista variante care nu rezolva subproblema relaxata dar, in schimb aplica criterii de eliminare eficiente (prin utilizarea unei solutii suboptime bune a problemei duale).

Obiectivul urmarit in algoritmul branch and bound este de a studia altemativele fara a exam ina toate cornbinatiile posibile ale variabilelor binare. Un element cheie al acestei evaluari este reprezentarea alternativelor printr-o structura arborescenta.

Modul de functionare al algoritmului este urmatorul: Se rezolva problema considerand ca nu avem variabile binare ~i ca acestea pot lua si valori diferite deO si 1. In cazul in care solutia nu contine doar valori binare pentru variabilele binare se creaza 0 lista de subprobleme candidat (de nivel 1). Se rezolva una dintre ele, daca solutia are valorile binare corespunzatoare se rezolva urrnatoarea subproblerna. In caz contrar se divide subproblema in mai multe subprobleme (de nivel 2). Se continua procedura pana cand lista de subprobleme este epuizata si se obtine solutia optima.

Pentru a evita evaluarea tuturor subproblemelor se aplica testul de elirninare. Succesul metodei este detenninat de procentul de eliminari. Cu cat se elimina mai mult din domeniul solutiilor fezabile, cu atat efortul de ca1cul este mai mic.

Pasii algorimului branch and bound sunt urmatorii (Floudas, 1996):

Pasul 1) Initializarea. Se initializeaza lista de subprobleme candidat si solutia curenta

z = +00.

Pasul 2) Terminarea. Dad s-a terminat lista de subprobleme atunci solutia optima este solutia curenta. Daca aceasta nu exista, atunci problema MILP nu are solutii fezabile. Pasul 3) Selectarca unei subproblerne candidat. Se selecteaza 0 subproblema din I ista de subprobleme candidat (CS).

Pasul 4) Relaxarea. Se selecteaza 0 relaxare (RCS) a subproblemei candidat curente (CS) si se obtine solutia acesteia Z/ilS.

17

Tehnici de programare liniara si neliniara

Pasul 5) Eliminarea. Se aplica urmatoarele criterii de eliminare:

Criteriul 1: Daca (RCS) nu are solutii fezabile, atunci subproblema candidat curenta (CS) nu are solutie. Se revine la pasul2.

Criteriul 2: Daca z//{'s ~ z· atunci problema candidat curenta (CS) nu are 0 solutie mai buna dedit solutia curenta, Se revine la pasul 2.

Criteriul 3: Daca solutia optima a lui (ReS) este fezabila integral pentru (CS), adica are numai valori binare pentru variabilelor binare, atunci aceasta este solutia optima a

lui (CS). Daca Z/I('S S; z" atunci aceasta devine noua solutie curenta, adica z' = z1I('s' Se revine la pasul 2.

Pasul 6) Divizarea. Se divide subproblema candid at curenta (CS) si se adauga la lista de probleme candiat subproblemele rezultate prin diviziune. Se revine la pasul 2.

Programarea liniara (LP) este modul de relaxare a problemei MILP in algoritmul branch and bound. Aceasta problema relaxata are forma:

2.10

cu restrictiile: Ax + By S; b .

x ~ 0, X E X s;:::; R"; OS;yS;l

Diferenta fata de problema initiala 2.8 este aceea ca variabilele y sunt continue in intervalul [O,1J si nu binare.

2.3.2 Exemplu ilustrativ

Ilustrarea metodei se va face pentru urmatorul exemplu:

cu restrictiile: Xl + Yl + .Y2 + Y; ~ 2

IX

Tehnici de programare Iiniara si neliniara

Rezolvand problema LP In primul nod se obtine:

z = -6,8

6

(y, 'Y2 'Y3) = (10 ,1,1)

x=o

Dupa cum se observa solutia nu corespunde situatiei in care toate variabilele y au valori binare.

In acest punct sunt de rezolvat 2 probleme impunand pe rand restrictia ca lui y, sa i se atribuie valoarea O. si respectiv 1. Acest lucru inseamna ca pentru tie care etapa se introduce o noua restrictie, Se obtin rczultatele:

z =-5

(y, ,.Y'} ,J'3) = (0.1,1) x=o

respectiv:

z = -6,667

1 (y, ,y, 'Y1) = (1.-,1)

"- 3

x=o

Prima solutie este fezabila, dar adoua solutie desi nu este fezabila are valoarea functiei obiectiv superioara si se poate explora in continuare pornind de la acest nod. Impunand restrictia ca lui y, sa i se atribuie valoarca 1. se obtine:

z =-6

(y, 'Y2 'YJ) = (1,0,1) x=o

19

Tehnici de programm-e liniara si neliniara

respectiv:

z = -6,5

1 (Y1 'Y2 'Y3) = (l,l, 2)

x=o

In pnma situatie exista 0 solutie fezabila si valoarea functiei obieetiv este imbunatatita, iar in al doilea caz exists 0 solutie infezabila, dar valoarea functiei obieetiv este mai buna dedit in eazul solutiei fezabile. In continuare se porneste de la acest nod impunand conditiile: YI = 1 ~i Y2 = 1. Apare deei eu fieeare nod cate 0 restrictie suplimentara. In situatia in care vectorul yare valoarea (YI'Y2'Y_l) = (1,1,1) restrictiile sunt incalcate. In cealalta situatie se obtine rezultatul:

z =-5

(YI 'Y2 'YJ) = (1,1,0) x=o

Se observa ca solutia este fezabila, dar rezultatul este inferior celui obtinut anterior.

Cum toate posibilitatile au fost epuizate rezultatul (YI 'Yl ,y)) = (1,0,1) si x = 0 este solutia

problemei, pentru care z' = -6 .

Grafic acest lucru se reprezinta astfel:

z = -6.8

[ 0.6.1.1)

z ==-6

[ 1 .0.1 J

z = -6.667

[ ] • 0_333 , 1 )

z =-5

[0,1,1]

z = -6.5

[ 1 , 1 .0.5

z:: -s

[ 1 ,1,0 ]

Infeasible

20

Tehnici de programare liniara ~i neliniara

2.4 Optimizarea In problemele neliniare continand variabile continue si intregi

In general ecuatiile care descriu fenomenele din ingineria chirnica sunt neliniare. Prin urmare modelele !iniare pot rezolva doar a parte a problemelor din ingineria chimica, Pentru rezolvarea problemelor in care neliniaritatile pot aparea atat in functia obiectiv cat si in restrictii iar variabilele sunt atat continue, cat si discrete (intregi) se utilizeaza 0 clasa de metode denumita Mixed Integer Nonliniar Programming - (MINLP) prograrnarea neliniara cu variabile intregi ~i continue.

Formularile de tip MINLP sunt utilizate la rezolvarea unor probleme de planificare pe termen scurt si lung, proiectare ~i reproiectare a instalatiilor muitiscop, de reproiectare a sistemelor de schirnbatoare de caldura, etc. De asernenea acest tip de modele sunt prezente ~i in alte domenii decat ingineria chimica, precum electrotehnica, sau transporturile.

Finnularea rnatematica a problemeior de tip MINLP este:

min/(x,y)

x.y

2.11

cu restrictiile:

h(x,y)=O g(x,y) :S 0

X E X c R" YEY

unde:

x este un vector de n variabile continue; y este vectorul variabilelor intregi;

h(x,y) = 0 sunt 111 restrictii de egalitate;

g(x,y) :S () sunt P restrictii de inegalitate;

f(x,y) este functia obiectiv.

Acest model poate fi transformat in unul in care variabilele intregi sunt exprimate in variabile binare prin utilizarea formulei:

21

Tehnici de programare liniara ~i neliniara

Y - )' f. + ~ + 2 ~ + 47 + +2 X -I ~

-, "'I ""2 -3 ... ""s

2.12

unde:

yf. = valoarea minima a variabilei y;

z, = variabila binara;

N = nurnarul rrururn de variabile binare necesare dat de relatia

(' r

N = 1 + INTllog(y - y ) I in care )/' este valoarea maxima a variabilei y.

I log2 J

Formularea in variabile binare este deci urmatoarea:

minf(x,y)

x.y

2.13

cu restrictiile:

h(x,y) = 0 g(x,y) ~ 0

X E X C R"

Y E Y = { O,1}Q

unde y este un vector de q variabile binare.

Cautarea optimului in domeniul continuu cuplat cu eel discret, In conditiile existentei unor ecuatii sau restrictii neliniare, face din aceasta clasa de probleme una dintre cele mai dificile atat din punct de vedere teoretic, cat ~i din punet de vedere practic al algoritmilor de rezolvare si al efortului de calcul implieat.

Cele mai importante metode de rezolvare a probleme1or de tip MINLP, in ordine

cronologica sunt:

1. Generalized Benders Decomposition GBD - descompunerea generalizata Benders;

2. Branch and bound BB - ramificare si limitare;

3. Outer approximation OA - aproximare externa;

4. Feasibility approach FA - aproximarea fezahilitatii:

5. Outer approximation with equality relaxation OA/ER - aproximare externa cu relaxarea egalitatilor;

22

Tehnici de programare liniara si neliniara

6. Outer approximation with equality relaxation and augmented penalty OA/ERJ AP - aproximare externa cu relaxarea egalitatilor si penalizare;

7. Generalized outer approximation GOA - aproximare externa generalizata;

8. Generalized cross decomposition GCD - descompunerea incrucisata generalizata.

Descornpunerea generalizata consta in crearea a doua siruri care reprezinta limita superioara (sir necrescator) si lirnita inferioara (sir nedescrescator) care converg intr-un numar finit de iteratii, Limita superioara corespunde problernei in care variabilele binare y sunt fixate si se rezolva problema de tip programare matematica neliniara (NLP), iar sirul inferior se construieste pomind de Ia teoria duala,

Metoda branch and bound consta in rezolvarea relaxarii in domeniu continuu a problemei MINLP, iar ulterior se continua cu evaluarea alternative lor. Limita inferioara corespunde solutiei NLP in fiecare nod. Daca relaxarea NLP in domeniu continuu a problemci de tip MINLP are solutii discrete pentru variabilele y , atunci metoda se termina in acel punct. Totusi numarul mare de subproblerne de tip NLP nu fac la fel de atractiva metoda precum in cazul problemelor liniare.

Metoda OA creeaza secvente de limite inferioare ~l supenoare ca si GBD, eu deosebirea ca utilizeaza problema primala ca limita superioara si ca se liniarizeaza functia obiectiv si restrictiile in jurul punctului de acumulare pentru limita superioara,

Metoda F A rotunjeste solutia NLP a problemei relaxate in domeniu continuu a problemei MINLP la 0 solutie intrcga.

Algoritmul OA/ER extinde metoda OA la situatia existentei unor neliniaritati in restrictiile de tip egalitate prin relaxarea acestora la inegalitati,

Metoda OA/ERJ AP este 0 rafinare care imbunatateste limita inferioara pnn introduce rea unei functii de penalizare.

Metoda GOA extinde domeniul de actiune al metodei OA pnn introdueerea unor functii de penalitate exaete.

Metoda GeD utilizeaza simultan informatiile furnizate de catre problema primala si

duala,

23

Tehnici de programare liniara si neliniara

2.4.1 Metoda descompunerii generalizate Benders (GBD)

Geoffrion a generalizat in 1972 metoda propusa de Benders (1962) care foloseste metodele de programare maternatica la problemele de optimizare definite ca :

minf(x,y)

~C~'

2.14

cu restrictiile:

h{x,y) = ° g(x,y) ~ °

X E X ~ R"

care indeplinesc conditiile:

Conditia C 1: X este un set nevid convex, iar functiile:

f : R" x R" --; R, g:R"XRI'--;RI'

sunt convexe pentru fiecare Y E Y = {O,l}" impus, iar functia h este liniara pentru fiecare

Y EY= {O,l}" impus.

Conditia C2: Setul

Z; = {z E R" : h(x,y) = O,g(x,y) ~ z pentru anumiti .\' E Xl este inchis pentru fiecare

Conditia C3: Pentru fiecare y E Y n V impus, unde V = (y : h(x,y) = O,g(x,y) ~ °

pentru anumiti x E Xl este valabila una din urmatcarele conditii:

i) problema care rezulta in formularea 2.13 are 0 solutie finita si exista un vector de valori optime al multiplicatorilor pentru restrictiile tip egalitate si inegalitate.

Ii) problema care rezulta in formularea 2.13 nu are limita, astfel err valoarea functiei obiectiv tinde catre - if).

24

Tehnici de programare liniara ~i neliniara

Ideea de baza in GOB este generarea la fiecare iteratie, a unei limite superioare ~i a unei limite inferioare a problemei MINLP. Limita superioara rezulta din problema primala, in timp ce limita inferioara rezulta din problema master.

Problema prirnala corespunde problemei 2.13 unde valorile variabilelor y sunt

impuse.

Problema master provine din teoria dual a, utilizand multiplicatorii Lagrange obtinuti In problema primala, iar solutia da inforrnatii atat asupra limitei inferioare, cat si asupra urmatorului set de valori impuse pentru variabilele fixate y. Sirul valorilor solutiei problemei

primale este necrescator, iar eel al solutiilor problemei master este nedescrescator, iar sirurile converg intr-un numar limitat de iteratii,

Problema prirnala la iteratia k are forma:

minr'(x.y")

x

2.15

eu restrictiile:

htx.y") = 0 g(X,yk) ::;; 0

X E X ~ R"

Solutionarea acestei probleme conduce la doua situatii: i) Solutie fezabila,

Daca solutia obtinuta este fezabila, acest lucru fumizeaza informatii despre Xk, l(xk, l), eare reprezinta limita superioara, precum ~l asupra vectorilor multiplicatorilor

')} ,Jlk • In continuare functia Lagrange ia forma:

L(x,y ,'Ak ".l) = f(x, y) + 'Akl h(x, y) + J.l"lg(X, y)

2.16

ii) Solutie infezabila,

Daca solverul NLP detecteaza ca problema primal a este infezabila, atunci restrictiile trebuie reconsiderate. Pentru a detcnnina un punct fezabil se rezolva problema minimizarii valorii cu care sunt incalcate restrictiile, formulata astfel:

f'

mi~La,

XEX 1=1

2.17

25

Tehnici de programare liniara si neliniara

eu restrictiile:

hj x.y") = ° gj (x, /) ::; al

i = 1,2, ... ,p

i = 1,2, ... ,p

Problema master utilizeaza teoria duala si este caracterizata de trei idei principale si

anume:

i) Reprezentarea problemei 2.13 in spatiul definit de variabilele y. ii) Reprezentarea duala a lui V .

iii) Reprezentarea duala a proiectiei problemei 2.13 in spatiul definit de variabilele y.

Problema 2.13 transpusa in spatiul variabilelor yare forma:

min inf j'{x.y)

)' x

2.18

eu restrictiile:

h(X,yk)=O g(x,/) ::; 01 x E X

Y E Y = {O,1j'1

Reprezentarea duala a lui V este descrisa in teorema lui Geoffrion (1972).

Se considera adevarate conditiile C 1 si C2, un punet y E Y apartinand deasemenea

setului V si se impune satisfaeerea sistemului:

02: inf L (X,y,A ,Ji), '1/ A .ii E A,

I'

uncle A = :i E Rill Ji E R1':ji 2: O,L;t, = I.

1=1

Reprezentarea duala a lui v(y) este descrisa in teorema urrnatoare:

26

Tehnici de programare liniara $i neliniara

v(y)= h(x,y)=O =[~~~o~~fL(X,y'A'Jl)]''lfYEY(\V g(x,y) sO,..

X E X

inf f(x,y)

x

2.19

unde L(X,y,A,Jl) = f(x,y) + A'h(x,y) + Jlig(X,y).

Pornind de la teorema anteriora se obtine problema master in forma urmatcare:

Jlll ~ inf L(X,y,A,~), 'lfA,j.! ~ 0

'EX

~ ~ ~

o ~ inf L(x,y,A,ji),'If(A,ji) E 1\

XEX

2.20

unde:

L(X,y,A,j.!) = f(x,y) + A' h(x,y) + j.!ig(X,y) L(x,y,5:,)I) = .:Ph(x,y,)+jiig(X,y)

Algoritmul de rezolvare prin metoda GBD

Problema prirnala estc 0 problema de tip NLP care se poate rezolva cu ajutorul unui solver comercial. Problema master consta din doua probleme de optimizare corespunzatoare celor doua cazuri si anume a obtinerii unei solutii fezabile, sau a unei solutii infezabilc la problema primala. Aceasta inseamna considerarea tuturor A si a tuturor J.! ~ 0 pentru cazul

solutiei fezabile, sau a tuturor (A ,ji) E 1\ pentru cazul solutiei infezabile. Metoda eea mai

naturala este relaxarea. Ideea consta in ignorarea restrictiilor eu cateva exceptii, rezolvarea aeestei aproximatii a problernei, verificand daca solutia obtinuta respects sau nu restrictiile ignorate. Se mai adauga cateva restrictii la setul eelor care trebuie respectate si se rezolva din nou problema astfel relaxata, Se continua pana cand problema master respecta toate restrictiile.

Pasii acestui algoritm sunt:

Pasul 1. Se initializcaza yl E Y (\ V fixand y = yl pentru generarea unei solutii

fezabile initiale a primalei. Se rezolva problema primala si se obtine solutia problemei

27

Tehnici de programare liniara ~i neliniara

primale x", preeum si multiplieatorii Lagrange sub forma unor veetori ",I .u'.

Considerand ca se gaseste functia suport ¢"(y;",1 .u') pentru multiplicatorii ",1'1l1 obtinuti, se initializeaza un eontor k = 1 pentru solutiile fezabile si un altul ! = 1 pentru solutiile infezabile, iar limita superioara curenta se seteaza la UBD = V(yl) . Se

alege valoarea tolerantei pentru convergenta [; 2': O. Pasul 2. Se rezolva problema master relaxata:

m,m IlH YE) .Jl/l

Jl/i ~ ¢"(y;",k,l-/),k = 1,2, ... ,K o ~ :t(y;):_1 ,ill),! = 1,2, ... ,A

Fie (:y,liH) solutia optima a problemei de mai sus, unde lili este limita inferioara a

problemei 2.13, adica limita inferioara curenta LBD = liH. Daca: UBD - LBD :::; [;, atunei algoritmul este terminat.

Pasul 3. Se rezolva problema primala pentru y = y avand doua cazuri:

Pasul 3.a Solutia problemei primale este fezabila.

Problema primala are 1'(y) finit eu 0 solutie optima x si eu multiplicatori "',Ii. Se actualizeaza limita superioara UBD = min {UDB, v(y») . DacaUBD - LBD:::; [;,

Atunci algoritmul este tenninat. Altfel se incrernenteaza k = k + 1, si se fixeaza '" k = i.. si J.l k = ji . Se revine la pasul 2, presupunand ea se determina functia

suport ¢"(y;",k+I,llk+I).

Pasul 3.b Solutia problemei primale este infezabila.

Problema primala nu are solutii fezabile pentru y = y. Se rezolva problema

fezabilitatii 2.17 pentru a detennina vcetorul multiplieatorilor A si Ii . Se seteaza

I = f + 1 , XI = i si Jil = Ii. Se revine la pasul 2, presupunandu-se ca se

deterrnina functia suport s(y;J:I cl,Jil+l) .

2R

2.4.2 Metoda aproxirnarii externe (OA)

Duran :;.i Grossmann (1986) au propus aceast;I metoda pentru urmatoarca clastl de problcme de tip I'vllNLP,

mine' y + I (x)

:t.~

2.21

ell restrictiile:

g( x) + By (j

X E X= : x : x E=: R':. Ai X S ai: ~ R' Y E Y=i Y : Y E : (1.1: • A _:Y :.:: 0, :

care indepl ineste urmatoarele conditii:

Conditia C I: X este un set nevid compact ~i convex, iar functiile:

t : R' ---, R. g: R"' -)0 R'

sunt convexe in x ,

Conditio C2: Functiile f ~i g au prima derivata continuu definita.

Conditia C3: Una din conditiile necesare Karush-Kuhn-Tucker este valabila pentru solutia fiecarei problcme de programare neliniare ce rezulta din 2.21 prin impunerea valorilor vuriabilelor y.

Ideea de badl este similura ell cea a metodei GBD. adieu generarea unci limite superioare ~i a unci limite inferioarc pentru solutia problemei r'dINLP. Limita superiora rezulta din problema 2.21 unde sc fixeuza variabilele binare ) (y = y"), Limita interioara

rczultu din solutia prohlemei master. Problema master se detertnina prin liniurizarea functiilor neliniare (functia ohiectiv ~i restrictiile) In jurul vectorul solutiei x' a problemei primale. Solutia problemei master lurnizeaza. pe langa limitn interioara, ~i informatii privind urmatorul set de variubile hinure y cc unncaza a f utili/ate la urmatoarea iteratie in cadrul problemei

primalc. Iteratiilc succcsive determine doua siruri de valori ale limitei inlcrioarc. respectiv superioare care sunt primul nedescrcscator. iar ul doilca necrescatur. Aceste siruri converg catre 0 limita cumuna (ell tolcranta /.:) inrr-un nunuir finit de pasi,

Problema primul.i corcspunde problemei 2.11 unde variahilele binurc y' sunt impuse:

mine'}' +- fIx)

,

')')')

1.:t1 restrictiile:

g(x) + B(y~) '" 0

X EX:::;: :X: x E R . Aix :.: a.: \~ R'

in runctie de vectorul variubilelor binare y' problema primala poute uvea solutii

fezabilc sau infezabile.

In cuzul in care solutia este tezabila aceasta furnizeaza solutii dcspre valoarea optima a lui x", f( X') si devine limita superioara curenta ('BD = c y +- f( x' ). Prin liniarizare in

jurullui x' a functiilor convexe f( x) ~i g(x) rezulta relatiile:

f(xl2: f(x') + \'/(x')(x +x"),

I]xi' EX

2.23

g( x) ·.2 g( Xi. ) + \'g( Xi. )( X - x' ).

In cazul in care solutia la iterutia k este infezabila, este necesur SCI se considerc

identificarea unui punct fezabil intr-un mod similar ca in metoda GBD. ~i anume:

n1.in"a. H.X L. . , I

2.24

ell restricti ile:

i == L2 ..... P

«. ?:()

Solutia acestei problerne corcspunde punctului x in jurul caruia se liniarizeaza restrictiile:

g( xl .:c: g(x!) + Vg(x' )(x - x), vx

F0I111111an:a problcmci muster SI.' bazenza pI..' doua idei: il Proicctia problcmei 2.21 ill sputiul variabilclor ~ :

ii) Aproximarea externa a tunctici obicctiv ~i a rcgiunii tezahilc.

Problema proiectuta in spatiul variabilelor y cunst:l in:

Tehnici de programare liniara si neliniara

min inf cy + f(x)

y x

2.25

cu restrictiile:

g(x)+By~O x E X

YEY

Definind v(y):

v(y) = ely +infj(x)

x

2.26

cu restrictiile:

g(x) + By ~ 0 bx E X

Problema 2.24 devine:

minv(y)

).

2.27

cu restrictia

YEYnV

Aproximarea externa a lui v(y) este definita sub forma intersectiei unui set infinit de

functii suport. Aceste functii corespund liniarizarii lui f(x) si g(x) pentru to ate punetele x'" EX. Datorita conditiilor de convexitate si continuitate a primei derivate se pot serie relatiile:

2:28

g(x) ~ g( Xk ) + 'Vg(XI )(x - x"),

'v'x" EX

unde 'Vl( x") reprezinta vcctorul n-dimensional al gradienti lor lui I( x ) , rar 'Vg( x") este

Jacobianul matricii evaluat la 'Vg(Xk) avand dimensiunea n x p.

Algoritrnul de rezolvare prin metoda OA are ea punet central rezolvarea problemei master deoarece problema primala este 0 problema neliniara convexa. Metoda naturala de a

31

Tehnici de programare liniara si neliniara

rezolva aceasta problema master este relaxarea, care consta in examinarea la fiecare iteratie a functiilor liniare suport at at pentru functia obiectiv, cat si pentru restrictii, Astfel, la fiecare iteratie un nou set de restrictii generate de functiile suport sunt adaugate imbunatatind valoarea limitei inferioare.

Pasul 1. Se porneste de la 0 valoare initiala yl E Y. Rezolvand problema prirnala se

obtine solutia optima Xl. Se initializeaza eontorul k = 1. Se initializeaza limita superioara curenta UBD = p(yl) = v(y!) .

Pasul 2. Se rezolva problema master relaxata:

• T

mm c y + 111/.-1

X,)"POI

110.1 ~ f(xk)+'Yl<xk)(X-Xk)

o ~ g(Xk) + Vg(Xk )(x - Xk) + By XEX

YEY

2:>; - LY; ~IBkl-l

IEB' IENB'

}\i kEF

2.29

k = 1,2, ... ,K-l

Solutia obtinuta (yk+1 ,Jl:/!) este solutia optima a problemei master relaxata, unde

noua limita inferioara curenta este LBD = Jl:;.J + CTyk+!, v'" fiind noul punet de pornire

pentru problema primala. Daca UBD - LBD ~ & atunei algoritmul s-a terminat, daca nu se revine la pasul 1. Daca problema master nu are solutie fezabila, atunei algoritmul s-a sfarsit eu solutia data de limita superioara curenta si eu valorile corespunzatoare ale veetorilor (x,y)

asociati.

Duran si Grossmann (1986) au demonstrat ca in situatia in care sunt respeetate condiitile CI-C3, iar Y este un domeniu discret, limita superioara si cea inferioara eonverg catre 0 limita cornuna si ca aceasta este atinsa intr-un numar finit de iteratii. De asernenea, au mai demonstrat ca limita inferioara la algoritmul OA are valori superioare sau eel putin egale eu eea furnizata de algoritmul GBD adica:

2.30

Acest lucru inseamna ca pentru a atinge solutia optima algoritmul OA are nevoie de mai putine iteratii decat algoritrnul GBD.

32

2.4.3 Metoda aproxirnarii externe cu relaxarea egalitatilor

(OA/ER)

Pentru a rezolva probleme in cure apar restrictii de tip egalitate ncliniare, Kocis si Grossmann ( 1(78) au propus (I metoda in can: egalitatile sunt relaxate. Aceste probleme au forma:

mm c y+/(x)

l.~

2.31

cu restrictiilc:

h(x);::::() g( x) :s: 0

ex + By S'- 0

X E X := : x : x E R". Ai x :::: a, : I:;;; R Y E: Y ,,- [y : y E: :U,W.A_y~:, u.:

unde stint indeplinite conditiile urmatoare:

Conditia C I: X este un set nevid, compact. convex iar tunctiile satisfac urmatoarele conditii:

I(x) este convexn in x :

g,(x) i E I:'. = U: g,(x) < 0: sunt convexe In x ;

gi (x) i E I, ". =li : g, (x) = 0: este pseudoconvex in x :

Tht x) este pseudoconvex in x , unde T estc \I matrice diagonala de dimensiuni

(m x m) ell elementele I, :

-I pcntru I., ()
-- + I pe III I'll I" .> (I i -- 1.2 ... .cm
0 Ih'IIlrII ...... , =: 0 Ii sunt multiplicatorii Lagrange usociati restrictiilor de lip egulitate.

Conditia ('2: Functiile t , g ~i h sunt continuu dilcrentiabile.

, . , ,

Tehnici de programare liniara si neliniara

Conditia C3: Una din conditiile neeesare Karush-Kuhn-Tueker este valabila pentru solutia fieearei probleme de programare neliniara ee rezulta din 2.31 prin fixarea variabilelor y.

Ideea pe care se fundamenteaza aceasta metoda consta in relaxarea ecuatiilor neliniare de tip egalitate la inegalitati, ulterior aplicandu-se algoritmul OA multiplicatorilor Lagrange asociati dupa ee problema primala 2.22 a fost rezolvata, Daca multiplicatorii AI sunt pozitivi,

atunci egalitatile neliniare corespunzatoare hi (x) = 0 sunt relaxate sub forma hi (x) :s; O.Daca

rnultiplieatorii A.I sunt negativi, atunei egalitatile neliniare corespunzatoare hi (x) :s; 0 sunt

relaxate sub forma - hJx) s:; o. Daca AI = 0, atunei egalitatile neliniare pot fi serise sub

forma o· hJx) = 0, eeea ee inseamna ca aeeste restrictii pot f eliminate. Transformand in

acest fel egalitatile neliniare in inegalitati se poate formula problema master pe baza prineipiilor de la algoritmul ~A. Aceasta relaxare este singura diferenta intre eei doi algoritmi.

Problema primala este in esenta aceiasi ell diferenta cii vectorul restrictiilor de tip inegalitate este eompletat eu restrictiile de tip egalitate transformate in inegalitati:

Forma generala a problemei master pentru algoritmul OA/ER este:

. r

mm c y + Jill. I

x,y.p

j.l ~ f(xh ) + \If(x'' )(x - x') }

o ~ g(x' ) + \lg(x' )(x - x") , \j k = 1,2, ... , K

o ~ T" [htx") + \lh(x - Xi,)' (x - x')]

ex + By :s; d

X f R" A < I R"

X E =IX: x E , ,x - a, J <;;;;;

Y E Y =(y: y E (O,1J",A2Y::; a2]

LY~ - LY~ :s; IB"I-1,k = 1,2, ... , K

,.,B' IENII'

2.32

34

Il'Il!lI(1 de prugramarc liniara ':-! neliniara

unde I.. r L'slc limita interioara lu itcratia k- I. iur I, e-tc limitu xupcrioara curenta.

Pa~ii algoritmului OAER sunt urmutorii:

Pasul I. Se porneste de Ia 0 solutio initialu ~,! (: Y. Sc rezolva problema primala 2.22

;;i se obtine solutia x' ~i vectorul multiplicatorilor optimi l corespunzatori restrictiilor de tip egalitate h( x)::: O. Se fixeaza limita superioaru curcnta {'BD ca fiind rezultatul functiei

obiectiv ell variubilele date de vectorul solutiilor x' ~i variabilcle yl fixate anterior.

Pusul 2. Sc defineste matricea de dimensiuni (m x. m; T", Se culeuleaza

W" w,'"s' .S'. R' .r .

Pasul -'. Se rczolva problema master rclaxata:

r '~~';~ C), + 1'" ,

I u « (:: ,) x - ~

I o ; (S ) x - s

IO;;::T'R'x-T'r'

Cx s-By s d

2.33

X E X = [x : x E R', Alx S. 31: s;;; R' y E Y "" ly :}' E :O,W.A2y::; a.:

LJ_f,- I.v' siB'I-l.k=I,2, .... K

z; I S. c' Y + .u ~ Z.

L

Daca problema master arc 0 solutie fezabila atunci solutia optima este (y" I.,d') . undc

z: == c' y t I-/' este limita curcnta. iar y' este urnuitorul set al variubilelor binure y ell care

sc \<1 rezolvu problema primula de ln iteratia urrnatoare.

Dad L BD --I:' s ,'; algoritrnul se termina, in cal' contrar SL' reia de la pasul 1.

Dac~i problema master cstc infezahila. ulgoritmul SL' term ina ntr[t obtinerea vreunei

solutii.

Tehnici de program are liniara si neliniara

2.4.4 Metoda aproximarii exteme cu relaxarea egalitati lor ~l penalizare (OA/ER! AP)

Metoda OA/ER se bazeaza pe presupunerea ca functiile lex) 91 g(x) sunt convexe, tar egalitatile relaxate Tkh(x) sunt evasiconvexe. In aceste conditii algoritmul OA/ER garanteaza din punet de vedere teoretie gasirea optimului global. In eazul in care conditiile de eonvexitate a functiilor lex) si g(x) nu sunt indeplinite, atunei solutia problemei NLP din eadrul problemei primale poate f un optim local. Aeest lueru influenteaza solutia problemei master in sensul eEL liniarizarile functiei obiectiv .l(x) , inegalitatilor g(x) 9i a egalitatilor

relaxate T'h(x) pot sa nu aprecieze corect limita inferiora a functiilor originale si In consecinta se pot elimina subdomenii fezabile ale problemei originale. Drept urmare se poate intampla ca sa existe combinatii ale variabilelor intregi fezabile care sunt eliminate datorita liniarizarii si in consecinta pot fi gasite doar solutii suboptime.

Viswanathan si Grossmann (1990) au propus metoda OA/ERlAP,care este 0 varianta a metodei OA/ER. cu scopul de a rezolva probleme in care sa nu fie strict necesar ca functiile .l(x) si g(x) sa tie eonvexe.

Formularea problemei se prezinta astfel:

mincy + .l(x)

x~~'

2.34

ell restrictiile:

hex) = 0 g(x) ::;; 0 Cx+By z, d

Y - 1· 1011'1 A < I

Y E - ,Y . Y EI , f, 2Y - a2 1

si ell urrnatoare le conditii:

Conditia C 1: Functiile f ,g si h sunt continuu diferentiabile.

Conditia C2: Una din conditiile necesare Karush-Kuhn- Tucker este valabila pentru solutia fiecarei probleme de programare neliniara ce rezulta din formularea 2.34 prin fixarea variabilelor y.

36

Tehnici de programare liniara ~i neliniara

Datorita faptului ca functiile l(x) ~1 g(x) pot sa nu tie convexe pot surveru

urmatoarele situatii:

i) inlocuirea lui hex) cu Tkh(x) ::; ° poate sa nu mai tie corecta;

Ii) liniarizarea sa nu mai fie un suport valid;

iii) problema master sa nu calculeze 0 limita inferioara valida.

Principiul metodei OA/ER/AP consta in a relaxa limitarile de mai sus, permitand ca aceste lucruri sa se produca, dar introducand functii de penalizare care sa sanctioneze respectivele incalcari ale restrictiilor, in acest fel, domeniul fezabil este extins, iar posibilitatea de a elimina regiuni fezabile ale problemei originale ca urmare a liniarizarilor este redusa. Metoda nu garanteaza excluderea acestei posibilitati, ci doar reduce sansele ca acest fapt sa se produca, Optimul global prin urmare nu este garantat.

Deoarece diferenta dintre algoritmii OA/ER si OA/ERI AP consta in principal in forrnularea problemei master, doar aceasta va fi prezentata.

Problema master relaxata in metoda OA/ER/AP deriva din problema master relaxata in metoda OA/ER si are forma:

II+S~ ~f(Xk)+Vf(Xk)(X_Xk) }

P, ~ g(Xk)+Vg(Xk)(X_Xk) ,Vk = 1,2, ... ,K

qk ~ Tk [h(xk) + Vh(x - xk)' (x - Xk)]

ex +By S; d

X f· R" A < 1 R"

X E = {x . x E , IX - al J <:;

y E Y = [y : y E {O,1},',A2y::; all

2.35

'" k '" k 1 "I

~y, - ~Y, ::; B-1,

""B' IE \111/'

k = 1,2, ... ,K

k = 1,2, ... , K

unde: P, = (P,.k 1 si q" = {tJ,.k} sunt vectori ai variabilelor pozitive de relaxare, s: sunt

scalari ai variabilelor pozitive de rei ax are, iar 1I'~1, »", , ")'V;'k sunt ponderile variabilelor de

relaxare s: ' P,,,, ,tJ,.k care satisfac relatiile:

37

H' , > fl.,

undc fl, ·1.'1 . u, sunt multiplicatorii Lagrange a prohlemei primale pentru

y = y' scrisa sub forma:

mine' y' .j.. p

2.36

ell restricti ile:

/( Xi, I -,lI < (I ~-. ii, h(x) c: 0 f. ... ).4

g(x) ~~ 0 {- 1-',

Cx+ By' :::: d

X E X = [x : x E R",A,x :::. a.] c R

! ,-

Pasii algoritmului OIVERAP sunt urmatorii:

Pasul I. Se rezolva 0 relaxare a problemci NLP 2.34. 111 sensul ca se trateaza variabilele Y' ca fiind continue in domeniul 10.11 obtinandu-se solutiile (x" .y"). Daca y' este

o combinatie binaru atunci algoritrnul este terrninat. Daca r1U st' trecc la pasul 2.

Pusul 2, Se rezolva problema master rclaxata 2.35 identificandu-se yl .

Pasul 3. Se rezolva problema primala 2.36. solutia Iiind limita superioara L'BD ~I sc determina valorile multiplicatorilor Lagrange.

Pasul-l, Se detincste matricea T' de dimensiuni ! m » m)

Pastil .5. Se rczolva problema 2.35 detenuinandu-sc y ·f ~i limita infcrioara notata ell

/:' .

Pasul fl. Se repcta pasii 3.4 si 5 pana c .. lnd se obtine o crcstcre a vulorii solutiei optime fezabilc a problemei NLP, moment in care algoritmul Sl.? termina,

Tehnici de programare liniara ~i neliniara

2.4.5 Metoda aproximarii externe generalizate (GOA)

Fletcher si Leyffer (1994) au generalizat metoda OA pentru 0 clasa de probleme de optimizare transpusa matematic In forma:

minf(x,y)

x.y

2.37

cu restrictiile:

g(x,y) s o

X E X ~ R"

Y E Y = {O,l}"

cu indeplinirea urmatoarelor conditii:

Conditia C 1: X este un set convex. nevid si compact. iar functiile:

f : R" x R" ~ R, g : R" x R'I ~ R r

sunt convexe.

Conditia C2: Functiile f si g sunt continuu diferentiabile.

Conditia C3: Una din conditiile Karush-Kuhn-Tucker este valabila pentru solutia fiecarei problemc de programare neliniara ce rezulta din fonnularea 2.37 prin fixarea variabilelor y.

Modul de rezolvare este similar cu modul de rezolvare folosit in algoritmul OA eu urmatoarele diferente:

i) tratarea intr-un mod diferit al nefezabilatilor;

ii) problema master este formulata in mod diferit, cu considerarea explicita a nefezabilitatilor;

iii) tratarea unitara a functiilor de penalitate.

In cazul In care solutia problemei primale este infezabila. a fost propusa urmatoarea forma general a a problemei:

39

Tehnici de programare liniara si neliniara

min L H',R,+(X,yk)

x .

1"(

2.38

cu restrictiile:

X E X

unde y = yk este impus, WI sunt ponderi, e; (x, yk) = max[O, gJ x, yk)], I este un set

de restrictii de tip inegalitate care sunt respectate, iar I' este un set de restrictii de tip inegalitate care nu sunt respectate.

Fletcher ~i Leyffer (1994) au indicat ca problema master propusa de Duran ~i Grossmann (1986) nu tine cant de infezabilitatile din problema primala ~i au propus 0 alternativa care se bazeaza pe urmatoarele idei:

i) Proiectia problemei 2.37 in spatiul variabilelor binare poate fi scrisa astfel:

minminf(x,y)

~. x

g(x,y) ~ 0 x E X YEY

2.39

Detinind:

v(y) = minf(x,y)

x

g(x,y) ~ 0 x E X

si fie un set V in y pentru care exista 0 solutie fezabila in x definit astfel:

2.40

V = {y : g(x,y) ~ 0 pentru cativa x E X]

2.41

problema 2.37 devine:

min v(y)

y

2.42

YEYUV

40

Tehnici de programare liniara si neliniara

ii) Aproximarea functiei obiectiv si a regiunii fezabile:

Daca conditia C3 este indeplinita, pentru fiecare solutie a problemei primale yk E Y n V , atunci problema 2.42 proiectata In spatiul variabilelor binare are aceaiasi solutie ca ~l problema:

m.in l(xk, yk) + Vl(xk, vk )r(x - Xk 1

x . •• 0

m;D g(x',y') + Vg(x' ,y'fO[ ~ - x' 1 < a XEX

2.43

Pasii algoritmului GOA sunt:

Pasul 1. Fie un punct initial yl E Y. Se rezolva problema primala corespunzatoare sau

in cazul solutiei infezabile se rezolva problema 2.38 obtinandu-se solutia x". Se fixeaza contorul la valoarea k = 1. Se fixeaza valoarea curenta a limitei superioare la valoarea

UBD = p(yl) = V(yl).

Pasul2. Se rezolva problema master relaxata:

min P(;().I

/1""., 2: f(x',y') + Vf(x',y' 1'[ : =:: J 1

a 2: g(x' .y") + Vg(x' -: =::) (kE F'

a 2: g(x' , y') + Vg(x' ,y')t =;:)}:17' kEF'

x EX YEY

Il- Iy,k :s;IB"I-l

JEB1• 'El\B'

2.44

41

Tehnici de programare liniara si neliniara

unde:

F' = {k I k S; i : j 0 solutie fezabila "x la problema primala} ;

F' = {k I k S; i : p(yk) este infezabila, iar Xk rezolva problema 2.37 pentru y = yk}.

O • (k+l k ) 1" blernei 1 li .•

aca Y ,I'm,j este so una optima a pro erne I master re axata, noua imita

inferioara curenta este:

si v'" este urmatoarea cornbinatie a valorilor binare y cu care se va rezolva

urmatoarea problema prirnala p(l+!).

Daca UBD - LBD S; E: algorimul este terminat, daca nu se revine la pasul I.

Daca problema master relaxata nu are 0 solutie fezabila, atunci algoritmul se termina cu solutia optima data de limita superioara curenta.

2.4.6 Metoda descompunerii generalizate incrucisate (GCD)

Holmberg(1990) a generalizat metoda propusa de van Roy (1983) de rezolvare a problemelor de forma:

minf(x,y)

x,~'

2.45

ell restrictiile:

g!(x,y)::;O g2(X,y)::; 0 x E X<:;;:; R"

Y E Y = {O,IJ"

care indeplineste urrnatoarele conditii:

Conditia CI: Functiile:

42

Tehnici de programare liniara si neliniara

f : R" x R" ----j. R,

gl : R" x R" ----j. R'" g2 : R" x R" ----j. R Pi

sunt convexe pentru fiecare y E Y = {O,l},'.

Conditia C2: X este un set compact, convex si nevid si functiile f, g, si g2 sunt

marginite.

Conditia C3: Optimizarea in raport eu variabilele continue x poate fi facuta independent de variabilele binare y .

Algoritmul QCD este com pus din doua etape: problema prirnala si subproblema duala in prima etapa, urmate de problema master si testul de convergenta in a doua etapa, In prima Iaza subproblema primala furnizeaza limita supericara si multiplicatorii Lagrange Jlt ,p;. pentru problema duala. Problema duala fumizeaza limita inferioara a problemei 2.45 ~i calculeaza valorile yk necesare subproblemei primale. La fiecare iteratie e rezolvata 0 problema primala si 0 subproblema duala, un test de convcrgenta fiind aplicat pentru variabilele binare y si un test de convergenta dual pentru JL( ,1-'; . Daca unul din testele de

convergenta da un raspuns negativ, atunci se trece la etapa a doua in care se rezolva problema master, revenindu-se ulterior la faza initiala,

Algoritrnul poate f reprezentat grafic astfel:

8

~t I .. Subproblema x,Y
j duala . 1
~ ~t [
ICTD ! ~ Problema CT

-
master
y
~ll. P2 Subproblcma y
primala CTD si CTP sunt conditiile de terminare pentru problema dual a, respectiv primala,

43

Tehnici de programare liniara si neliniara

In prima faza subproblema duala este urmatoarea:

minr(x.y")

x

2.46

cu restrictiile:

g) (x,y) s 0 g2(X,y) s 0

X E X c R"

Pot aparea doua situatii:

Cazul 1. Solutie fezabila a subproblemei primale:

Solutia subproblemei primale consta in valorile variabilelor Xk care reprezinta limita

superioara, precum si in valorile corespunzatoare ale multiplicatorilor Lagrange

Functia Lagrange are forma:

Cazul 2. Solutia subproblemei primale este infezabila:

in aceasta situatie se forrnuleaza urrnatoarea problema de fezabilitate:

mmex

2.47

cu restrictiile:

g)(x,y)sa g2(X,y) s ex x E X ~ R"

Solutia acestei probleme furnizeaza multiplicatorii Lagrange liJl ,jill, functia Lagrange avand

forma:

44

Tehnici de programare liniara ~i neliniara

Daca subproblema primala are 0 solutie nefezabila, atunei subproblema duala se formuleaza astfel:

2.48

eu restrictiile:

X E X ~ R"

y E Y = {O,l}'1

unde ~I sunt multiplieatorii Lagrange eorespunzatori restrictiilor gl(x,y")::;; 0 din problema

de fezabilitate 2.47.

ii) Faza a doua consta in rezolvarea problemei master. Aceasta problema poate f formulata utilizand informatiile fie din problema primala, fie din problema duala. Ca rezultat exista doua tipuri de probleme master: problema primala master si problema Lagrange relaxata master.

Problema primala master deriva din problema master corespunzatoare metodei GBD.

Aeeasta are forma:

2.49

ell restrictiile:

45

Tehnici de programare liniara ~i neliniara

Problema Lagrange relaxata master are forma:

max il12()

min ,f(x,y) + p/ gJx,y)

XEX,YE\

g2(X,y) :s; 0 x EX

Y EY

2.50

Testele de convergent a utilizeaza notiunile de Iirnita superioara imbunatatita, limita inferioara lmbunatatita si taietura imbunatatita. Limita superioara imbunatatita corespunde unei discretizari a limitei superioare UBO obtinuta din problema primala. Limita inferioara imbunatatita corespunde unei cresteri a limitei inferioare LBD obtinuta din problema duala. Taietura imbunatatita corespunde generarii unor noi taieturi care devin active si care nu elirnina zone deja eliminate prin taieturile anterioare.

ldeea de baza in testul de convergenta consta in raspunsurile la urmatoarele trei intrebari:

1. Poate cornbinatia valorilor variabilelor binare imbunatatii limita superioara?

2. Poate cornbinatia valorilor variabilelor binare imbunatatii limita inferioara?

3. Se poate reduce domeniul solutiilor folosind functia Lagrange relaxata? Matematic aceste intrebari sunt formulate astfel:

Testul CTP: Daca lJ,'(Y') < UBD pentru k = 1,2, ... , K ~1

q~ (y' ) < 0 pentru

I = 1,2, ... , Lunde v' este combinatia curenta a variabilelor binare, at unci y' este valoarea imbunatatita a limitei superioare. In caz contrar se foloseste problema master.

Testul CTO: Dad. hk Cut) < LBD pentru k = 1,2, ... ,K, unde pt este valoarea

curenta a multiplicatorilor p" atunci pi este valoarea imbunatatita a limitei inferioare. In caz

contrar se foloseste problema master.

Testul CTDU: Daca hi Cut) < 0 pentru 1= 1,2, ... , L, unde ji.,' este valoarea curenta a

multiplicatorilor ii. atunci ji.,' deterrnina micsorarea domeniului solutiilor, In caz contrar se

Ioloscste problema master.

46

Algoritmul (,C'D bet: apel Iu urmutoarele notiuni:

/1' : vuloarcu optima a subproblemei primale PI y' ), Aceasta \.:'ste o Iimita xuperioara

valid • ."'i a problcmei 2.45,

fBD: cea rna! mica valoare actuulizata a tunctiei obiectiv din problema 1.45. adieu

(BD=minP(r').

~ ,~

(,it. r : valoarea optima a functiei obiectiv din problema relaxata avand A: domenii eliminate. Aceasta estc n valoare limita superioara valida a problernci 2.45.

/)' : valoarea optima a subproblernei duale D<,lIt). Accasta este 0 valoare .. alidu doar daca subproblema duala este convexa,

LDB: valoarea actualizata maxima a limitei inferioarc.

(p,' )' : valoarea optima a functiei obiectiv a problemci master reluxata,

Pa;'iii algoritmului (jeD sunt:

Pasul 1. Se initializcuza contorul k = I pentru suhproblcma primala fezabila si I", I pentru subproblema primala intezabila. fBD == +x ~I LBD = -:F:'. Se alege valoarea

tolerantei de convergenta I: ~i un punct initial y' .

Pasul 2. Se aplica testul CTP pentru y ::;: y ( adica pentru valoarea curenta a lui Y cu

exceptia valorii initiale / ). Dad rezultatul este pozitiv se merge la pasul 3. in caz contrar se

merge la punctul 4.

Pasul 3, Se rezolva problema primala pentru y= 5' . Sunt doua cazuri:

Pasul 3a. Solutie fezabila a problernei primate. Se obtine 0 valuate optima a problcmei primale, valorile variahilelor continue x ~i vectorii multiplicatorilor ill.j.le ' Se actualizeaza

valoarca limitei superioure iBD == min: P: . Daca [BD - UJD. :::: I: algoritmul este terminat,

\

Dad! lit! se merge la pasul Sa,

Pasul 3h. Solutio infezabila a problemei primale. Suhproblcrna primala nu arc (1

solutie fczabila. Se rezolva problema

de fezabilitate 2.47 pentru determinarea

rnultiplicatorilor ,1I1 .p .. Se merge la pasul 5h.

Pasul-l, Se rezolva problema master rclaxau, Sunt posibile i' cazuri:

Tehnici de programare liniara si neliniara

Pasul 4a. Dad. (y,il() este solutia optima a problemei primale relaxate, atunci /I(

este limita inferioara curenta pentru problema 2.45 (LBD = iie). Daca IUBD - LBDI :::; E:

algoritmul este tenninat, in caz contrar se revine la pasul 3.

Pasul 4b. Pentru problema relaxata Lagrange a problemei master relaxata este obtinuta

solutia (/ll' /l,'). Aceasta este limita superioara valida a problemei 2.45 numai daca aceasta problema este convexa. Se merge la pasul 6.

Pasul 5. Se aplica testul CTD pentru PI = /ll corespunzator testului CTDU pentru

Pasul Sa. Se aplica testul CTD pentru PI = /ll' Daca testul este trecut se merge la pasul 6, in caz contrar se merge tie la pasul 8, fie la pasul 4b.

Pasul 5b. Se aplica testul CTDU pentru PI = ~ . Daca testul este trecut se merge la pasul 7, in caz contrar se merge fie la pasul 8, tie la pasul 4b.

Pasul 6. Se rezolva subproblema duala pentru PI = /ll' obtinandu-se solutia optima

(i,y,D). Se actualizeaza limita inferioara LBD=max{LBD,D) presupunandu-se ca subproblema duala este convexa. Daca IUBD - LBDI :::; E: algoritmul este tenninat, in caz contrar se fixeaza I = 1+1, v'" = Y ~i se revine la pasul 2.

Pasul 7. Se rezolva subproblema duala derivata din problema 2.47 rescrisa pentru situatia subproblemei primale infezabile. Dupa ce se obtine solutia (i,y) se seteaza

I = 1+1, v'" = Y si se revine la pasul 2.

Pasul 8. Se rezolva problema primala master relaxata derivata din problema 2.48

obtinandu-se solutia (Y"Ll(). Se actualizeaza limita inferioara LBD = /l( Daca

IUBD - LBDI :::; E: atunci algoritmul este tenninat, in caz contrar se seteaza

k k 1 k +1 - • I I "

= +, y = y ~l se se merge a pasu -'.

4R

Tehnici de prcgramare liniara ~i neliniara

2.4.7 Compararea algoritmilor GBO si OA

Principalii algoritmi folositi pentru rezolvarea problemelor de optimizare de tip MINLP sunt OBD si OA impreuna cu variantele lor. In ultimul deceniu algoritmii care rezolva probleme de tip MTNLP au fost obiectul unor studii de importanta sernnificativa. Acest lucru a fost sustinut de dezvoltarea rapida a tehnicii de calcul. Astfel au putut fi rezolvate probleme din ce in ce mai complexe, corespunzatoare situatiilor reale din industria chimica precum si din alte domenii tehnice sau stiintifice. In domeniul ingineriei chimice s-au remarcat datorita cercetarilor lor in special doua scoli: una la Carnegie-Mellon condusa de I.E.

Grossmann

si alta laUniversitatea Princeton condusa de C.A. Floudas. Exists desigur

cercetatori ~i in alte parti precum Imperial College of Science din Londra (C.C. Pantelides), Universitatea Purdue (G.V. Reklaitis), ca ~i scolile din Asia precum Coreea de Sud si China. Scoala de la Carnegie-Mellon s-a concentrat asupra algoritmilor bazati pe metoda OA ;;i a variantelor acestora. Scoala de la Princeton s-a concentrat asupra variantelor algoritmului GBD. Aceste studii s-au concretizat in solvere comerciale precum DICOPT++ (Viswanathan si Grossmann) sau APROS (Paules si Floudas) scrise pentru a f aplicate in cadrul programului GAMS. Aceste solvere reprezinta unelte larg utilizate pentru rezolvarea problemelor de tip MINLP.

Comparativ cele doua tipuri de algoritmi au atat asemanari, cat si deosebiri. Principala asernanare 0 reprezinta faptul ca in ambele cazuri se genereaza doua succesiuni de limite, una superioara necrescatoare si una inferioara nedescrescatoare. Prin urmare ambele tipuri de algoritmi se bazeaza pe descompunerea problemei in doua subprobleme fiecare dintre ele producand 0 valoare actualizata pentru limita superioara, respectiv inferioara,

Diferentele constau in: formularea problemei, restrictiile de tip egalitate, neliniaritatile in spatiul variabilelor binare y sau in spatiul variabilelor x - y , forma problemei primale si a problemei master, cu consecinte in ceea ce priveste calitatea limitei inferioare.

49

(iBD

Formularea ulgoritmilor este:

OA

I··minl (x.yl

\~~

( ht x v) _. ()

I 'I.,

1

i g( X, V) .. 0

I •

I X E X

,

rmn c y+/(x)

gtx) ::; 0

Cx + By ::_; 0

X E X G R'

Dupa cum se observa In cazul algoritrnului ()A variabilele binare trehuic Sfl tic separabile de cdc continue.

In cadrul algoritmului GBD nu cstc nevoie de prelucrarca restrictiilor neliniare de tip egalitate, in cazul algoritmului OA aceste sunt transformate in incgalitati.

Neliniuritatile pentru variabilelc binare y sau a sp .. itiului comun ul variabilelor x - y sunt tratate cu atarein cadrul algoritmului GBD. In cnzul algoritrnului 0:\. datorita ipotezci eli aceste variabile sunt separubile, este necesar Sfl se prelucreze aceste neliniaritati adaugand variahile sal! restrictii suplimentare.

Problema primala are urmatoarele forme:

GBD

minztx, y)

ht x.y ) > 0 g(x.y)::; 0 X E X

OAJER

r min c' y + f(x) I \.\

I g(x) s n

I Cx + By ; 0 Lx EX

Pentru algoritmului GBD problema primula poate ti LP sau NtP in tunctie de vectorul variahilelor binare y. Pentru algoritmului 0:\ problema \H fi Nl.P dadl una din Iunctiile

t(x), g(x) sau ht x) este neliniara.

Problema master in ulgoritmului (IBn implicu ad;hlgarl'U unci restricrii lu Iiecure iteratic. Acest lucru restrungc dimensiuneu problemei, chiar in cazul cand Ill! sunt necesurc multc iteratii pentru utingcrca solutici optime.

Tehnici de programare liniara si neliniara

Problema master la algoritmului OA implica liniarizarea functiei obiectiv ~1 a restrictiilor neliniare In jurul solutiei optime Xk la fiecare iteratie. Ca urmare, daca criteriile de terrninare a calculelor nu sunt atinse rapid, efortul corespunzator de calcul creste considerabil.

in ceea ce priveste limita inferioara prod usa de cele doua tipuri de algoritmi Duran si Grossman (1986) au ararat ca:

unde (LBD):;RIJ este limita inferioara produsa de 0 varianta a algoritmului OBD. Rezulta ca pentru atingerea solutiei optime sunt necesare mai putine iteratii pentru algoritmul OA, dar aceasta nu inseamna neaparat un efort de calcul mai mic intrucat efortul necesar pentru efectuarea unei iteratii pentru algoritmul OA este mai mare dedit pentru algoritmul OBD.

Prin urmare exista un echilibru intre calitatea limitei inferioare si volumul de calcul necesar. Pentru fiecare problema acest echilibru se poate deplasa intr-o parte sau alta.

2.5 Programarea stohastica

Valorile optime ale variabilelor de decizie depind de diferiti paramctrii. Acestia nu sunt intotdeauna cunoscuti precis in momentul rezolvarii problemei sau pot avea fluctuatii. in general functia obiectiv este de natura economica. in aceasta functie intervin intr-o forma sau alta diferite costuri. Dar costul diferitelor materii prime, intennediare sau produse finite variaza intr-un mod imprevizibil. Valorire unor parametrii pot varia aleator intr-un anumit domeniu. Acesti parametri pot aparea atat In functia obiectiv, cat si in restrictii. Problema poate fi formulata astfel:

minf(x,9)

2.51

cu restrictiile:

51

Tehnici de programare liniara si neliniara

h(x,O) = 0 g(x,O) S; 0 01 S; 0 S; 01/

unde:

0= parametrii cu valori aleatoare.

o parte a parametrilor au valori cunoscute, in timp ce restul au valori aleatoare. Modul de rezolvare a problemelor de programare stohastica consta in identiticarea unor valori de lucru pentru valorile aleatoare ~i rezolvarea problemei clasice. Exista mai multe directii de investigare pentru identificarea acestor valori de lucru.

i) Rezolvarea problemei pentru cele mai defavorabile situatii. In aceasta maniera de rezolvare se atribuie variabilelor stohastice cele mai nefavorabile valori si se rezolva problema. Avantajul acestei metode este ca orice situatie previzibila ar apare, solutia problemei este fezabila. Dezavantajul consta in alocarea de resurse suplimentare care sunt folosite doar in situatii extreme.

Nishida s. a. (1974) au rezolvat urmatoarea problema de tip minmax:

min max j'(x,O)

x ()'

ii) Metoda tip scenarn. In aceasta metoda sunt date un set de scenarn, iar solutia problemei trebuie sa fie fezabila pentru oricare din aceste scenarii.

cu restrictiile:

Ax S; B

Tx + Dy' ~ ri 'V k

x~O

k > 0 Y -

unde:

2.52

52

Tehnici de programare liniara si neliniara

x = variabile cu valoare impusa (variabile first-stage);

yk = variabile second-stage corespunzatoare scenariului k ;

pk = probabilitatea de aparitie a scenariului k.

iii) Calculul valorii asteptate pentru parametrii aleatori. Se calculeaza pe baze statistice valoarea asteptata a parametrilor aleatori si in continuare se lucreaza pe modele deterministe cu aceste valori.

iv) Metoda solutiei robuste. In aceasta metoda se cauta sa se rrunmuzeze efectul fluctuatiilor, Solutia gas ita are proprietatea ca valoarea functiei obiectiv este eel mai putin influentata de fluctuatia parametrilor. Aceasta valoare a functiei obiectiv nu este probabil optima, dar pentru orice situatie previzibila ea este aproximativ constanta.

2.6 Concluzii

Metodele de programare neliniara all inceput sa paraseasca domeniul teoriei si patrund in practica industriala, Acest lucru se datoreaza atat cercetarilor care au Iargit sfera aplicatiilor practice, cat si datorita dezvoltarii spectaculoase a tehnicii de ca1cul care a potentat si sustinut aceasta tendinta, Desi sunt fundamentate pe baze matematice ce par deosebit de abstracte, aceste metode au aplicatii practice de importanta economica semnificativa. Probleme de planificare pe termen scurt si lung a productiei, rezolvate in mod optim pot conduce la marirea sernnificativa a profitului, fara mari investitii. In acest domeniu, cu resurse financiare relative reduse, dar avand cunostiinte terneinice, se pot realiza aplicatii importante si foarte utile. [n conditiile actuale din Romania, folosirea aces tor metode in planificarea pe tennen scurt, mediu si lung a productiei poate determina 0 sporire a cornpetivitatii agentilor economici. Acest lucru se datoreaza faptului ca desi bine studiate in tari precum Statele Unite ale Americi, Marea Britanie, China, Coreea de Sud, Japonia, etc. aceste metode nu sunt inca introduse frecvent in practica industriala, Motivul principal este faptul ca inca pentru probleme de mari dimensiuni este dificil sa se lucrezc Cll aceste metode. Deocamdata rezultate satisfacatoare S-,1U obtinut cloar pentru probleme de dimensiuni mici si mijlocii. In practica industriala insa, problemele au dimensiuni mari si foarte mari pentru care rezultatele se Iasa inca asteptate, Dezvoltarea tehnicii de caleul poate furniza instrumentele CLl care problemele de aceasta magnitudine urrneaza a f rezolvate. Un alt motiv pentru care aceste met ode sunt

Tehnici de programare liniara si neliniara

cunoscute cu precadere doar in mediul academic este ~1 faptul ca limbajul matematic al acestor metode este mult prea dificil pentru practicieni.

Aceste metode rezolva pentru 0 firma din industria chimica nu doar probleme specifice ingineriei chimice, precum planificarea productiei sau proiectarea si reproiectarea instalatiilor. Cu astfel de metode se pot rezolva probleme manageriale aparute in alte departamente, precum alocarea optima a resurselor financiare sau planificarea achizitiilor si optimizarea stocurilor de materii prime si produse finite, precum si problema clasica a optimizarii transporturilor.

A vand un spectru larg de actiune, utilizate corect de catre specialisti, aceste metode pot determina aparitia unor noi standarde in ceea ce priveste solutionarea unor probleme dintro larga gama de activitati practice.

54

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->