Sunteți pe pagina 1din 133

MELNIC LUCIA CHIRCOR MIHAEL

ZGAN REMUS

CERCETRI OPERAIONALE
FUNDAMENTAREA DECIZIILOR N MANAGEMENTUL SISTEMELOR DE PRODUCIE

2004

CUPRINS
1. INTRODUCERE 1.1. Scurt istoric al evoluiei tiinei Cercetare Operaional 1.2. Teoria Deciziei i Cercetare Operaional 1.3. Modelarea matematic n Cercetarea Operaional 2. PROGRAMARE LINIAR 2.1. Probleme de programare liniar 2.1.1. Formularea problemei de programare liniar 2.1.2. Forme ale problemei de programare liniar 2.1.3. Modelul matematic al problemei de programare liniar 2.2. Consideraii generale privind problemele de programare liniar 2.2.1. Soluii i fundamente ale problemei de programare liniar 2.2.2. Baze ale problemei de programare liniar 2.2.3. Interpretarea geometric a problemei de programare liniar 2.3. Metoda Simplex 2.3.1. Fundamente teoretice n aplicarea metodei Simplex 2.3.2. Algoritmul simplex primal 2.3.3. Metode de determinare a unei soluii de baz iniiale 2.3.4. Interpretarea economic a algoritmului simplex primal 2.4. Dualitatea n programarea liniar 2.4.1. Problema dual. Fundamente teoretice 2.4.2. Algoritmul simplex dual 2.4.3. Interpretarea economic a dualitii 3. PROGRAMAREA LINIAR DE TIP TRANSPORT 3.1. Formularea unei probleme de transport 3.2. Exemple de probleme de tip transport 3.3. Determinarea unei soluii de baza iniiale a problemei de transport 3.4. Metoda de determinare a soluiei optime pentru probleme de transport. Metoda potenialelor. 3 4 5 7 7 7 9 12 16 16 20 22 26 26 28 35 39 41 41 45 49 53 53 55 57 59

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

4. ELEMENTE DE TEORIA GRAFURILOR 4.1. Fundamente n teoria grafurilor 4.1.1. Noiunea de graf 4.1.2. Orientare i neorientare n graf 4.1.3. Drumuri i circuite n graf 4.1.4. Lanuri i circuite n graf 4.2. Matrici ataate grafurilor 4.2.1. Matricea arcelor (conexiunilor directe) 4.2.2. Matricea drumurilor (conexiunilor totale) 4.2.3. Descompunerea grafului n componente tari conexe 4.3. Drumuri hamiltoniene n graf 4.4. Drumuri de valoare optim n graf 4.5. Cuplaje. Probleme de repartiie (afectare) 5. TEHNICA DIAGRAMELOR DE TIP REEA 5.1. Generaliti privind modelarea prin reele 5.2. Metoda drumului critic (Critical Path Method - C.P.M.) 5.3. Metoda potenialelor (Metro Potential Method - M.P.M.) 5.4. Metoda PERT (Program Evaluation and Review Technique) 5.5. Tehnica GERT (Graphical Evaluation and Review Technique) 6. ELEMENTE DE TEORIA DECIZIEI 6.1. Procesul i sistemul decizional al ntreprinderii 6.2. Utiliti decizionale 6.3. Optimizarea deciziilor n condiii de certitudine 6.3.1. Metoda utilitilor globale 6.3.2. Metoda Electre 6.3.3. Metoda Ledear-ului 6.4. Optimizarea deciziilor n condiii de risc BIBLIOGRAFIE 64 64 64 69 70 71 71 73 75 78 87 93 97 97 99 106 108 111 114 114 117 121 121 121 122 123 131

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

CAPITOLUL 1 INTRODUCERE
1.1. Scurt istoric al evoluiei tiinei Cercetare Operaional

Cercetarea operaional ca tiin a aprut ctre sfritul primei jumti a secolului nostru i s-a dezvoltat spectaculos n special n ultimii ani, n strns legtur cu tiina organizrii i conducerii, teoria sistemelor, cibernetica, informatica i analiza sistemelor. coala clasic are marele merit al abordrii unui domeniu nou, considerndu-se pionier a organizrii tiinifice (F.W. Taylor-1900, H.L.Gantt-1901, A.Fayol-1915) i aceasta pune pentru prima dat problema abordrii raionale a mecanismului funcionrii unei ntreprinderi. n perioada urmtoare se lrgete considerabil problematica organizrii i conducerii, iar aspectele informaional-decizionale (pn atunci ignorate) i aspectele relaiilor umane dau un alt sens abordrii mecanismului funcionrii ntreprinderii. Cercetare operaional exista naintea declanrii celui de al doilea rzboi mondial prin lucrrile elaborate de Erlang (1917) firele de ateptare, Harrris (1915) gestiunea tiinific a stocurilor, Vorra (1931) rennoirea echipamentelor. Utilizarea cercetrii operaionale n practic era dificil de realizat deoarece din punct de vedere intelectual exista o anumit aversiune fat de modele i de caracterul descriptiv al tiinei, iar din punct de vedere material datorit complexitii mici a organizailor i talia relativ modest a ntreprinderilor din aceea perioad, investiiile n mijloace de calcul eficace, respectiv a ordinatoarelor nu era justificat. n ceea ce privete procesele de decizie, pentru prima oar se pune n mod riguros i pe scar larg problema gsirii unor soluii optime sau apropiate de cele optime, n marea diversitate de probleme organizatorice i de conducere. Prima aplicaie a cercetrii operaionale moderne la scar larg o constituie aplicarea regulilor definite de Sir Blackett n timpul celui de al doilea rzboi mondial cu deosebit succes n Anglia i care a debutat n 1937. Termenul de Cercetare Operaional (Operational Research)a fost utilizat pentru prima dat n 1939, fiind legat de contribuia oamenilor de tiin la utilizarea eficient a radiolocatoarelor n sistemul aprrii antiaeriene al Angliei. n S.U.A. ptrunderea tiinei cercetrii operaionale (Management Science) n dezvoltarea problemelor de conducere a industriei se datoreaz celei de-a doua revoluii industriale i posibilitilor de comercializare a calculatoarelor electronice. n prezent, mai mult de jumtate din firmele americane au sau folosesc specialiti n cercetarea operaional. n 1953 s-a format Societatea American de Cercetri Operaionale, iar n 1957 s-a constituit Federaia Internaional a Societilor de Cercetri Operaionale. Au aprut reviste i s-au introdus cursuri i seminarii de cercetare operaional att n S.U.A. ct i n alte ri ale lumii. n practic, ntreprinderea poate fi privit ca un sistem ale crui elemente componente (oameni, capital, materiale, informaie) sunt intercorelate prin fluxuri materiale, informaionale i energetice ce au un comportament orientat spre atingerea unor obiective precise. Cercetrile operaionale au consacrat n domeniul optimizrii deciziei, un mod de abordare tiinific asupra problemelor ce intervin n cadrul unei ntreprinderi industriale i totodat nu se concepe conducerea i gestionarea ntreprinderii, fr a face apel la metodele cercetrii operaionale, mpreun cu celelalte tehnici moderne ca informatica, cibernetica, teoria sistemelor, statistica. Obiectul cercetrii operaionale l constituie sistemele i ele i propun elaborarea unor metode de analiza a operaiilor ndreptate spre un anumit scop, precum i estimarea obiectiv 3

Introducere

a deciziilor ce pot fi adoptate. Cercetarea operaional este un ansamblu de metode care i propune, n vederea pregtirii deciziilor, s determine n mod raional soluiile cele mai eficiente. 1.2. Teoria Deciziei i Cercetare Operaional

Creterea productivitii i obinerea rentabilitii ntreprinderii industriale pe termen lung, ntr-un mediu dinamic i ntr-o continu schimbare, depinde, ntr-o mare msur de capacitatea managementului ntreprinderii de a anticipa schimbarea i de a adapta decizia noilor situaii ntr-un mod planificat. Accelerarea evoluiei tehnologice n industrie, influeneaz i comportamentul consumatorilor, care se va orienta spre noi concepte i produse, mai inovate, mai atractive i adaptate modului i ritmului lor de via. Utilizarea raional a celor patru tipuri de resurse conduc la flexibilitatea organizaiei i astfel activitatea poate fi planificat n prognoze pentru a releva anumite aspecte semnificative ale viitorului. n aceste condiii, managerul trebuie s adopte decizii, fundamentate tiinific i performant. Decizia reprezint soluia aleas, din mai multe variante posibile cu scopul atingerii unui obiectiv prestabilit n condiii de eficien maxim. Este actul deliberat al unui individ sau al unui grup de oameni investii cu puterea de a alege varianta de concepere/realizare a unui scop i de a declana aciuni. Procesul de decizie pornete de la un anumit rezultat care trebuie s fie obinut, iar decidentul trebuie ca prin prelucrarea diferitelor informaii s aleag cea mai bun variant pentru atingerea acestuia (fig. 1.1).
Rezultat dorit Obiective Variante Criterii DECIZIE Control Actiune Rezultat dorit

Fig.1.1. Cercetare operaional alturi de Teoria deciziei a absorbit noile dezvoltri n domeniul activitii de management industrial i al sistemelor economice. Necesitatea modelrii n managementul produciei industriale rezult din faptul c efectuarea unor experimente asupra organizaiilor este foarte greu de realizat, dar experimente de acest fel (de exemplu modificarea parametrilor funcionali) se pot face uor n condiiile folosirii unui model. Utilizarea modelelor este impus i de complexitatea sistemelor industriale, care necesit existena unei activiti desfurat astfel nct deciziile s fie n concordan cu evoluia eficient a acestora. Operaia de investigarea a sistemelor reale prin reprezentri convenionale se numete modelare. Ea reprezint mulimea activitilor care se extind de la simpla prezentare a problemei la proceduri abstracte i raionale. Ele produc n final premisele cantitative formale ale dinamicii procesului. Modelul este o reprezentare izomorfa a realitii ce ofer o imagine intuitiv dar riguroas n sensul structurii logice a fenomenului studiat. Modelarea ca metod de fundamentare a deciziilor n activitatea economic ofer urmtoarele avantaje: - reprezint riguros fenomenele i legturile lor la nivelul sistemului; - permite verificarea prin analogie a teoriei cu practica; 4

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

- nlesnete descoperirea unor corelaii ntre fenomene i predeterminarea performanelor firmei, necesare pentru adoptarea unor decizii raionale; - reflect teorii ale proceselor cuantificabile i necuantificabile; - urmrete obinerea unor soluii optime. Modelarea utilizeaz un suport material fizic (de exemplu simulatoarele), o reprezentare grafic (de exemplu un grafic reea), un model abstractizat sub forma unui model matematic. Din impactul ntre modelele fizice cu dispozitive logice de calcul i cele matematice au rezultat modelele de simulare. n managementul produciei industrial se aplic toate aceste tipuri de modele, de exemplu: modelele fizice se pot folosi pentru studiul privind planul general al firmei, modelele grafice la analiza relaiilor om main, modelele matematice pentru alocarea resurselor sau analiza proceselor aleatoare. Corelaia teorie-model-realitate reprezint un aspect logic - privind corespondena dintre teorie i model i un aspect gnoseologic urmrind corespondena dintre model i realitate. Modelul intervine ntre teorie i obiectul real i trebuie testat n raport cu realitatea exprimat ca obiect. n funcie de modul n care se ajunge la soluia optim exist dou direcii principale de lucru: atingerea obiectivului prin deducerea soluiei optime; atingerea aceluiai obiectiv prin practici oferite de teoria deciziei Deducerea soluiei se caracterizeaz prin certitudinea rezultatului obinut pe baza unor informaii obiective i complete. Dificultatea const n formularea problemei ntr-un limbaj matematic adecvat i n volumul mare al calculelor. Metoda a doua solicit decidentului s estimeze consecinele posibile ale aciunilor sale pe baza unor informaii obiective, dar incomplete, introducndu-se n rezolvarea problemei elemente subiective. Prima direcie a condus la dezvoltarea unui ansamblu de discipline n cadrul CERCETRII OPERAIONALE. A doua direcie de lucru a condus la constituirea unei discipline aparte TEORIA DECIZIEI. ntre cele dou direcii exist raporturi strnse, biunivoce, ceea ce a condus la apariia unei tiine multidisciplinare: TEORIA DECIZIEI i CERCETARE OPERAIONAL Teoria deciziei este legat intrinsec de cercetarea operaional care poate fi considerat pregtirea tiinific a deciziilor. 1.3. Modelarea matematic n cercetarea operaional

Condiiile n care se desfoar activitatea analizat din cadrul ntreprinderii, conduc la un sistem de relaii tip ecuaii i inecuaii ce cuprind variabilele problemei i coeficienii tehnico economici ce o caracterizeaz. Aceste relaii reprezint restriciile problemei matematice. Obiectivul studiului l constituie optimizarea unui anumit rezultat dependent de aceleai variabile ce figureaz n restricii. Obiectivul este sub forma unei funcii ale crei valori maxime sau minime le cutm i care se numete funcia obiectiv (scop, eficien). Restriciile problemei i funcia obiectiv formeaz modelul matematic al problemei. Modelele matematice se prefer pentru capacitatea lor de condensare riguroas a esenialului. Modelele cercetrii operaionale se caracterizeaz prin cutarea unei soluii optime sau apropiate de optim pentru operaia studiat. Modelele cercetrii operaionale se bazeaz pe o mare diversitate de procedee matematice i au aplicaii la nivel macro, dar n special la nivel microeconomic. Ele reprezint principalul instrument pentru optimizarea deciziilor n analiza de sistem.

Introducere

Decizia obinut cu ajutorul modelului nu poate fi recomandat nemijlocit pentru realizare, deoarece modelul face abstracie de o serie de aspecte ale fenomenului studiat. Principalele faze ale elaborrii unui model matematic ntr-o problema de organizare conducere sunt urmtoarele: Prima faz a modelrii este cunoaterea realitii n organismul studiat, n scopul mbuntirii mecanismului informaional decizional i descrierea logicii proceselor decizionale, aceast faz avnd un caracter pregtitor; A doua faz a modelrii constituirea propriu - zis a modeluluiacesta cu ajutorul unui instrument clasic de modelare. Elaborarea unui model matematic realmente original reclam, pe lng profunda cunoatere a realitii care urmeaz a fi modelat, o foarte solid cultur matematic, imaginaie i talent. Modelelor clasice ale cercetrii operaionale, sunt diverse funcie de structura matematica i logic, i variaz de la modele simple cum sunt cele ale programrii liniare, la modele combinatorice, n probleme de teoria grafelor, analiza drumului critic i programarea operativ a produciei i pn la modele complexe cum sunt cele ale utilitii sau deciziilor de grup. A treia faz a modelrii este confruntarea modelului cu realitatea prin implementarea rezultatului obinut i eventual experimentarea sa. Exist o gam larg de probleme tehnico economice care se preteaz a fi modelate matematic cu ajutorul procedeelor cercetrii operaionale, dintre care putem meniona: programarea operativ a produciei; repartizarea raional a resurselor; gestiunea stocurilor; ealonarea n timp a activitilor unei investiii. In contextul celor artate mai sus trebuie subliniat importana metodelor cercetrii operaionale n fundamentarea i elaborarea deciziilor. Sarcina cercetrii operaionale este de a pregti decizia i nu de a o adopta . Conducerea executiv care va lua decizia final trebuie s in seama pe lng recomandrile cercetrii operaionale i de o serie de factori ce nu pot fi formalizai. Una din principalele caracteristici ale tuturor metodelor cercetrii operaionale este faptul c problemele cercetrii operaionale sunt privite, din perspectiv pur teoretic, ca probleme de matematic pur. n cele ce urmeaz vom privi metodele cercetrii operaionale strns legate de problemele practice. n prezent nu se mai poate concepe conducerea unei activiti tehnico-economice importante fr a face apel la metodele cercetrii operaionale, bineneles mpreun cu celelalte tehnici moderne cum ar fi informatica, analiza de sistem .a..

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

CAPITOLUL 2 PROGRAMAREA LINIAR


2.1. Probleme de programare liniar

Orice activitate industrial se desfoar n condiiile existenei unor resurse limitate de materii prime i materiale, de resurse umane, iar folosirea eficient, a acestora, conduce la rezultate optime att din punct de vedere tehnic ct i economic. Modelele de programare matematic i mai ales modelele de programare liniar, constituie o clas special, att n teorie ct i n practica industrial. Pentru decizii referitoare la structura optim de producie, la cantitatea ce urmeaz a se produce, la sortimente, abordarea acestora cu modele ale programrii matematice conduce la rezultate optime. Programarea matematic reprezint un instrument deosebit de util fundamentrii deciziilor n practica industrial. 2.1.1. Formularea problemei de programare liniar Principala problem cu caracter decizional, cu care se confrunt producia o constituie determinarea structurii optime de producie pe termen mediu i scurt printr-o folosire eficient a resurselor. Condiiile n care se desfoar activitatea de producie analizat, conduc la un sistem de relaii tip ecuaii i inecuaii ce cuprind variabilele problemei i coeficienii tehnico economici ce o caracterizeaz . Modelul matematic de programare liniar se constituie din mulimea de activiti (operaii){A1, A2, ..Aj,.. An}, (j=1,...,n) pentru producerea unei uniti din produsul Pj (ca rezultat al activitii Aj), mulimea de resurse disponibile materiale, financiare, de capaciti de producie {b1, b2, ... bm}, (i = 1,...,m) precum i din relaiile tehnico-economice dintre acestea. n practica industrial, legtura dintre activiti (operaii) i resurse este determinat de procesul tehnologic de fabricaie corespunztor realizrii produsului. Elementele aij, (i = 1,...,m; j = 1,...,n) se numesc coeficieni tehnico-economici, acetia fiind constani ntr-un interval de timp determinat i arat ce cantitate din resursa bi (i = 1,...,m) se consum pentru producerea unei uniti din produsul Pj. Toate aceste legturi (restricii) definite de vectorii coloan a(j) se pot organiza ntr-o matrice A cu m linii i n coloane (2.1); fiecare linie se refer la o resurs bi i fiecare coloan se refer la o activitate aj.

a11 .........a1n A Mm.n; A= ( ai,j ), i = 1,..,m, j= 1,...,n; A = a ..........a mn m1


b1 b2 ,b= . b m

(2.1)

b R

(2.2)

Notnd cu xj (j = 1,...,n) (2.3) programul activitii aj ntr-o perioad dat i cu bi cantitile disponibile din resursele bi, se pot scrie matematic restriciile tehnico-economice. Aceste restricii reprezint restriciile problemei de programare liniar (2.4).
7

Programare liniar

x1 x n x R ,x= 2 . x n
a11 x1 + a12 x2 + ... + a1n x n b1 a x + a x + ... + a x b 21 1 22 2 2n n 2 a m1 x1 + a m2 x 2 + ... + a mn x n bm

(2.3)

(2.4)

Fiecare restricie (inecuaie de tipul ) cuprinde afirmaia prin care cantitatea consumat dintr-o resurs nu poate depi volumul disponibil din resursa respectiv. Obiectivul studiului l constituie optimizarea unui anumit rezultat dependent de aceleai variabile ce figureaz n restricii. Obiectivul este sub forma unei funcii ale crei valori maxime sau minime le cutam i care se numete funcia obiectiv (scop, eficien). n practica industrial, ea reprezint criteriul de performan urmrit: maximizarea beneficiului, maximizarea produciei marf, minimizarea costului produciei, maximizarea gradului de ncrcare al utilajelor sau minimizarea timpului de staionare al acestora, maximizarea veniturilor etc. Variaia funciei obiectiv arat evoluia volumului activitilor, prin intermediul coeficienilor c j , ce pot fi costuri unitare n cazul problemelor de minim, sau profituri unitare pentru probleme de maxim (2.5). c1 c2 c = ; c T = (c1 c 2 ...c j ...c n ) . c n

cj R, c Rn

(2.5)

Decizia cu scopul unei eficiene maxime presupune minimizarea efortului i maximizarea rezultatului, Conceptul de optim se definete, n acest caz, ca un program (soluie) x Rn care minimizeaz sau maximizeaz o funcie obiectiv i, n acelai timp, satisface toate restriciile tehnico-economice. Presupunnd c fiecare coeficient .cj msoar eficiena unei uniti din rezultatul activitii Aj, atunci se poate introduce funcia obiectiv liniar (2.6) : z = c1x1 + c2x2 + ... + cnxn (2.6)

Sintetiznd toate datele de mai sus, obinem urmtorul model (2.7, 2.8, 2.9)de programare liniar. Relaiile (2.7), (2.8) i (2.9) constituie mpreun modelul matematic al unei probleme de programare liniar, avnd fiecare un rol specific: 1. relaia (2.7), denumit funcia obiectiv a problemei, evalueaz eficiena/performana fiecrei soluii (program) x;

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

min(max) z = c j x j
x j =1

(2.7)

n aij x j bi =1 jn aij x j bi j =1 xj 0
n

1 i k k +1 i l 1 j n

(2.8)

(2.9)

2. relaiile (2.8) de tipul aij x j bi reprezint restricii ce coreleaz volumul consumului


j =1

activitilor cu cel al disponibilului pentru fiecare resurs; iar restriciile de tipul


j =1

aij x j bi impun un consum peste limitele minimale, sunt restricii tehnico-economice

de tip calitativ; 3. relaia (2.9) xj 0 j = 1,...,n, numit condiia de nenegativitate a variabilelor, asigur obinerea unei soluii realizabile n practica industrial. Decizia obinut cu ajutorul modelului nu poate fi recomandat nemijlocit pentru realizare, deoarece modelul face abstracie de o serie de aspecte ale fenomenului studiat, cele ce au la baz o serie de factori ce nu pot fi formalizai. n practica industrial programarea liniar ofer soluii care pot motiva tiinific luarea unor decizii de natur strategic, tactic sau a unor decizii cu coninut tehnico organizatoric.
2.1.2. Forme ale problemei de programare liniar

O problem de programare liniar este, un caz particular al problemelor de programare matematic i, innd cont de forma oricrei funcii liniare, se poate defini forma general a problemei de programare liniar. Funcia liniar (2.10), notat cu z reprezint funcia obiectiv a problemei. Relaiile (2.11) reprezint sistemul de restricii ale problemei, iar membrul stng al fiecrei relaii aste o funcie liniar n variabilele x1, x2,,xn, la fel ca i funcia obiectiv. Problema de programare liniar const n optimizarea unei funcii liniare cu restricii liniare.
Forma general a problemei de programare liniar
min(max) z = c1 x1 + c 2 x 2 + ... + c n x n a x + a x + ...a x ( )(= )b 11 1 12 2 1n n 1 a 21 x1 + a 22 x 2 + ...a 2 x n ( )(= )b2 ...................................................... a m1 x1 + a m 2 x 2 + ...a mn x n ( )(= )bm (2.10)

(2.11)

unde: c j R ( j = 1, n), aij R (i = 1, m, j = 1, n), bi R (i = 1, m) Din analiza mai multor probleme de programare liniara deducem c ntr-o astfel de problema pot apare restricii scrise sub forma de inegaliti sau egaliti, iar criteriul de optimizare ales impune n unele cazuri maximizarea iar n alte cazuri minimizarea funciei obiectiv.

Programare liniar

Rezolvarea problemei de programare liniar presupune determinarea valorilor variabilelor xi, care satisfac restriciile i optimizeaz funcia obiectiv a problemei. Forma standard a problemei de programare liniar

O problema de programare liniar este dat sub form standard dac toate restriciile sale sunt date sub form de ecuaii (egaliti) i tuturor variabilelor li se impun condiii de nenegativitate. Problema de programare liniar dat n form standard se scrie n mod explicit (2.12):
n max(min) z = c j x i j =1 n 1 i m a ij x j = b i j = 1 xj 0 1 j n

(2.12)

Problema de programare liniar n form standard poate fi scris i sub form matricial (2.13) :
min(max)c T x , unde Ax = b x0 c, x R n A M ( R ) m ,n b Rm

(2.13)

unde cT reprezint componentele matricei c transpus. Sistemul de restricii liniare ( Ax=b ) poate fi un sistem compatibil, compatibil unic determinat sau nedeterminat de m ecuaii i n necunoscute. Pentru ca problema de optimizare s aib sens, numrul de ecuaii trebuie s fie mai mic dect numrul de necunoscute (m<n)(sistem compatibil nedeterminat). Forma canonic a problemei de programare liniar

O restricie a unei probleme de programare liniar se numete concordant (neconcordant) dac pentru o inegalitate de tip " (" ") funcia obiectiv este minimizat sau respectiv pentru o inegalitate de tip " " (" ") funcia obiectiv este maximizat . O problem de programare liniar este data sub form canonic dac toate restriciile sale sunt concordante i toate variabilele sunt supuse condiiei de nenegativitate. Problema de programare liniar dat n form canonic se scrie n mod explicit (2.14):
n min(max) z = c j x i j =1 n (2.14) 1 i m a ij x j ( ) b i j =1 xj 0 1 j n Problema de programare liniar n form canonic poate fi scris i sub form matricial (2.15) :

10

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

min(max)c T x Ax ()b x0

unde

C , x R n A M m ,n b Rm

(2.15)

Orice problem de programare liniar n form general poate fi adus la forma standard sau canonic cu ajutorul unor transformri elementare efectuate asupra operatorului aplicat funciei obiectiv restriciilor i variabilelor: a) o problem de minimizare n form matricial se poate transforma ntr-o problem de maximizare i invers, schimbnd semnul coeficienilor din funcia obiectiv, astfel: max c T x = min(c) T x
; min c T x = max(c) T x (2.16)

b) o variabil x arbitrar (variabil creia nu i se impune restricie de semn) se poate nlocui cu dou variabile nenegative x1, x 2 , prin relaia :
x = x1 x 2 , unde x1 , x 2 0

(2.17)

c) o variabil x supus condiiei de nepozitivitate ( x 0 ) se transform ntr-o variabil nenegativ prin substituia

x1 = x, unde x1 0

(2.18)

d) Restriciile de tip inecuaie se transform n restricii de tip ecuaii innd cont de urmtoarele :
a T x y = b a T x + y = b a T x b a T x b i (2.19) x, y 0 x, y 0 x0 x0 unde y se numete variabil ecart. Variabilele ecart nu apar n funcia obiectiv sau astfel spus apar n funcia obiectiv dar cu coeficieni nuli: c j = 0 (unde c j = coeficieni ai variabilelor ecart).
e e

e) sensul unei inegaliti se schimb prin nmulirea cu 1. n aplicaiile practice apar frecvent situaii n care modelul conine simultan restricii de toate tipurile (concordante, neconcordante, egaliti), problema fiind dat n form general, iar rezolvarea ei poate fi abordat fr a restrnge generalitate.

Exemplul 2.1
S se scrie formele echivalente ale problemei de programare liniar: Problema dat este n forma general. Pe baza transformrilor echivalente vom construi formele echivalente ale problemei iniiale. Deoarece variabila x3 nu are restricii de semn, o vom nlocui, cu diferena a dou variabile

11

Programare liniar

max(3 x1 x 2 + 2 x3 ) 3 x1 x 2 = 4 , x1 5 x 2 + 2 x3 3, x1 + 4 x3 2, 2 x1 + 3 x 2 2 x 3 0 , x1 , x 2 0, x3 , oarecare

(1) ( 2) ( 3) (4 )

pozitive: x3 = x4 x5. Pentru ca problema s aib forma standard, toate restriciile trebuie s fie egaliti, de aceea n restriciile (2), (3) i (4) vom introduce variabilele de egalizare x6, x7, x8. Forma standard va fi: max(3 x1 x 2 + 2 x4 2 x5 ) 3 x1 x 2 = 4 , x1 5 x 2 + 2 x4 2 x5 x6 = 3, x1 + 4 x4 4 x5 x7 = 2, 2 x1 + 3 x 2 x 4 + x 5 + x 8 = 0 , x1 , x 2 ,..., x8 0 Forma canonic se obine transformnd restricia (1) n dou inegaliti i toate inegalitile le transformm n inegaliti deoarece problema este dat de maximizare. Astfel, x3 trebuie nlocuit cu diferena x4 x5. Se obine astfel forma canonic
max(3 x1 x 2 + 2 x4 2 x5 ) 3 x1 x 2 4 , 3 x1 + x 2 4, x1 + 5 x 2 2 x4 + 2 x5 3,. x 4 x + 4 x 2, 4 5 1 2 x1 + 3 x 2 x 4 + x 5 0 , x1 , x 2 , x 4 , x 5 0

2.1.3. Modelul matematic al problemei de programare liniar

Pentru a nelege modelul matematic al problemelor de programare liniar sub forma general, vom analiza cteva exemple din practica industrial: Alocarea optim a resurselor n producia industrial O firm urmeaz s produc n tipuri de produse Pj , j = 1, n , folosind m tipuri de

resurse Ri i = 1, m . Se cunosc coeficienii tehnologici aij ; cantitile disponibile bi din resursele Ri ; profitul unitar cj pentru fiecare produs Pj. S se ntocmeasc planul optim de producie al firmei astfel nct profitul total realizat s fie maxim.

12

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Elaborare modelului matematic al problemei Condiii generale de desfurare a activitii analizate : - restriciile problemei apar din urmtoarea condiie: cantitatea totala din resursa i folosit pentru producerea celor n produse nu poate fi mai mare dect cantitatea disponibila:

j =1

aij x j bi , i = 1, m

(2.20)

condiiile de nenegativitate asigur obinerea unei soluii realizabile din punctul de vedere al logicii practice industriale. xj 0 , j = 1, n (2.21)

Sistemul de inecuaii (2.20) i (2.21) poate avea o infinitate de soluii, deci putem organiza procesul de producie pentru realizarea produsului P ntr-o infinitate de moduri dar respectnd condiiile anterioare . Acest fapt face evident imposibilitatea practic a managerului de a compara toate variantele de plan posibile deci este necesar introducerea unui alt criteriu. Adoptarea unei variante de plan (n fapt fundamentarea deciziei) se face, preferabil, pe baza unui criteriu economic (cel mai uzual maximizarea profitului sau n alte cazuri minimizarea costurilor). Aplicarea acestui criteriu economic, presupune cunoaterea profitului total. Deci : c j x j reprezint profitul total pentru produsele Pj
j =1 n

Funcia obiectiv (scop, eficien) va fi : max f = c j x j


j =1 n

(2.22)

Deci, modelul de programare liniar ce urmeaz a fi rezolvat pentru determinarea planului optim de producie astfel nct profitul total realizat s fie maxim este:
n = max f cjxj j =1 aij x j bi xj 0

(2.23)

Problema de transport Un produs omogen P este stocat n m depozite Di, n cantitile ai , i = 1, m i este cerut

de spre a fi transportat la n centre de consum Cj ,n cantitile bj, j = 1, n . Se cunosc costurile cij pe unitatea de produs transportat de la centrul Di la centrul Cj . Se cere determinarea unui plan de transport astfel nct costul total de transport s fie minim.

13

Programare liniar

Elaborarea modelului matematic al problemei Notaii : ai = cantitatea din produs care se afl n depozitul i; bj = cantitatea cerut de consumatorul j ( 1<j<n); xij= cantitatea ce urmeaz a fi transportat de la depozitul i la consumatorul j ; cij= costul unitar al transportului din depozit la consumator. Cu aceste notaii se pot exprima urmtoarele mrimi ce ne ajut s stabilim restriciile problemei i funcia obiectiv: cantitatea transportat de la depozitele Di la toate cele n centre de consum este cantitatea sa disponibil:

x
j =1

ij

= ai ,

i = 1, m

(2.24)

cantitatea transportat de la toate cele m depozite la consumatorul Cj reprezint necesarul acestuia, bj , j = 1, n .

x
i =1

ij

= bj

j = 1, n

(2.25)

pentru scrierea modelului se pleac de la forma echilibrat a problemei de transport i anume cantitatea total expediat de la cele m depozite este egal cu cantitatea sa disponibil:

a = b
i i =1 j =1

(2.26)

variabilele satisfac evident condiia de nenegativitate : xij 0 (2.27)

funcia obiectiv este urmtoarea : min cij xij


i =1 j =1 m n

(2.28)

Se obine un program liniar, ce se va supune metodelor programrii liniare i poart denumirea de program de transport :
m n min( f ) = cij xij i =1 j =1 n xij = ai , i = 1, m j =1 n xij = bi , j = 1, n j =1 x 0, i = 1, m, j = 1, n ij

(2.29)

14

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Problem de repartizare a sarcinilor de producie ntr-un atelier de montaj echipele E j , j = 1, n , pot monta cu randamente diferite,

produsele Pi , i = 1, m . Activitatea atelierului este caracterizat de urmtoarele date cunoscute: aij - timpul necesar pentru montajul unei cantiti de produs Pi de ctre echipa

E j ; cij - cheltuielile necesare pentru montajul unei uniti de produs Pi de ctre echipa E j ; bi - cantitatea planificat din produsul Pi , i = 1, m ; t j - timpul de lucru disponibil al echipei E j , j = 1, n . S se stabileasc o repartizare a produselor, echipelor, din atelierul de montaj astfel nct cheltuielile totale necesare s fie minime. Elaborarea modelului matematic al problemei: Variabilele de decizie (necunoscutele) se noteaz cu xij i reprezint cantitatea din produsul Pi ce trebuie realizat de echipa Ej. Funcia obiectiv este o funcie de cost, respectiv, cheltuielile celor n echipe, necesare pentru montajul cantitilor repartizate din cele m produse; funcia trebuie minimizat:
min f = cij xij
i =1 j =1 m n

(2.30)

Cantitatea de produse de fiecare tip planificat trebuie realizat:

x
j =1

ij

= bi , i = 1, m

(2.31)

Oricare echip poate executa produse n limita fondului de timp disponibil:

a x
i =1

ij ij

t j , j = 1, n

(2.32)

Variabilele xij se supun condiiei de nenegativitate: xij 0, i = 1, m, j = 1, n Deci, modelul matematic al problemei este:
m n min f = cij xij i =1 j =1 n x = b , i = 1, m i ij j =1 m aij xij t j , j = 1, n i =1 xij 0, i = 1, m, j = 1, n

(2.33)

(2.34)

Problem de utilizare a capacitii utilajelor


15

Programare liniar

O firm produce n tipuri de produse care pot fi fabricate pe m utilaje care au capaciti de producie limitate pe o anumit perioad. Se cunosc: procentul aij din capacitatea utilajului i necesar pentru producerea unei uniti din produsul j; profitul unitar cj al produsului j = 1, n . S se stabileasc un program de fabricaie care s permit utilizarea optim a capacitii disponibile a celor m utilaje. Elaborarea modelului matematic al problemei: Variabilele problemei sunt cantitile de produse fabricate n perioada considerat. Se noteaz cu xj, numrul de produse de tipul j = 1, n . Funcia obiectiv este profitul total obinut de firm pentru cele n tipuri produse; funcia trebuie maximizat:
max f = c j x j
j =1 n

(2.35)

Restriciile de capacitate ale celor m utilaje se exprim sub forma:

a
j =1

ij

xij 1, i = 1, m

(2.36)

Variabilele xj se supun condiiei de nenegativitate: x j 0, j = 1, n Atunci, modelul matematic al problemei este:


n cjxj max f = j =1 m aij xij 1, i = 1, m j =1 x 0, j = 1, n j

(2.37)

(2.38)

2.2.

Consideraii generale privind problemele de programarea liniar

2.2.1. Soluii i fundamente ale problemei de programare liniar

Fie problema de programare liniar dat n form standard matricial:


min(max)c T x , unde Ax = b x0
C , x R n A M m ,n b Rm

(2.39)

Sistemul de ecuaii Ax=b are o infinitate de soluii, deci trebuie s se gseasc n mulimea soluiilor o soluie ce realizeaz valoarea optim (minim sau maxim ) a funciei obiectiv.

16

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Soluie admisibil Un vector x = ( x1 x 2 ... x n ) R n care satisface restriciile si condiia de nenegativitate se numete soluie admisibil sau posibil a problemei de programare liniar. Mulimea soluiilor admisibile, S, este: S = x R n / Ax = b, x 0

(2.40)

Sistemul de ecuaii, avnd m ecuaii i n necunoscute, cu m<n i rang A=m are m necunoscute principale i n-m necunoscute secundare. O soluie de baz se obine prin anularea celor n-m necunoscute secundare, deci are cel mult m componente nenule. Soluie admisibil de baz

Se numete soluie admisibil de baz pentru sistemul Ax=b, vectorul x , ce satisface condiiile : a) x soluie a sistemului : Ax=b ; b) coloanele din A, corespunztoare componentelor lui x nenule, formeaz o mulime liniar independent. n cazul cnd o soluie de baz are mai puin de m componente diferite de zero, atunci ea se numete soluie degenerat, n caz contrar ea fiind nedegenerat. Soluie optimal O soluie admisibil care face optim funcia z=min(max)c T x se numete soluie optimal. Este posibil ca problema de programare liniara s aib soluie optim unic, s aib mai multe soluii optime sau s nu admit soluie optim. Soluie grafic Acest tip de soluie va fi studiat detaliat n paragraful 2.2.3.

Teoremele i definiiile care urmeaz, specific unele proprieti ale soluiilor ce justific clasificarea realizat anterior. Teorema 2.1 (Teorema fundamental a programrii liniare): Dac problema de programare liniar n form standard admite un program (soluie admisibil), atunci ea are cel puin un program de baz. Dac problema are un program optim, atunci are un program optim de baz. Demonstraie: Fie xS un program al urmtoarei problemei de programare liniar:
min c T x Ax = b . x 0

(2.41)

Notm cu p numrul componentelor nenule ale vectorului x. Fr a restrnge generalitatea problemei putem presupune c cele p componente nenule sunt chiar primele componente din cele n ale vectorului x adic: 17

Programare liniar

x = ( x1 , x2 , x3 , xp , 0, 0 ,0)T

(2.42)

Dac p = 0, atunci x = 0 deci afirmaia teoremei este evident. Dac p > 0, atunci exist dou posibiliti: - dac vectorii a1 , a2 , ..ap A corespunztori celor p componente nenule ale lui x sunt liniari independeni, atunci x este program de baz. - dac vectorii a1 , a2 , ..ap A corespunztori celor p componente nenule ale lui x sunt liniari dependeni atunci exist numerele reale: y1, y2,.. yp nu toate nule astfel nct s fie satisfcut relaia: a1y1 + a2y2 +..+apyp = 0 (2.43)

Relaia (2.43) se poate scrie sub urmtoarea form echivalent : Ay = 0 cu y 0. Notm cu y vectorul cu primele p componente nenule i urmtoarele componente n-p nule: y = (y1, y2 , yp, 0, 0 .0 )T. Atunci, obinem: A( x + y ) = Ax + Ay = b, ( ) R Deci, x + y este soluia sistemului Ax=b astfel putem determina valori ale lui pentru care x + y este program pentru problema (2.41), deci este ndeplinit i condiia: x + y > 0 Notm: I1 = mulimea indicilor i , 1< i < p , yi > 0; I2 = mulimea indicilor i , 1< i <p , yi < 0. Fie: x ( i ), I 1 max yi 1 = iI1 , I1 = x ( i ), I 2 min 2 = iI 2 y i , I2 = +

(2.44)

Deci pentru oricare [1 , 2 ] , avem ndeplinit condiia: x + y 0, deci vectorul x + y este program. Rezult c c T y = 0 ,deoarece n caz contrar alegnd pe de semn contrar valorii lui c T y , avem urmtoarele: c T ( x + y ) = c T x + c T y < c T x , ceea ce contrazice faptul c x este program optim. Prin urmare c T ( x + y ) = c T x , adic x+ y este program optim. Astfel putem alege o valoare 0 pentru care vectorul x + 0y s aib cel mult p-1 componente nenule, deci 0 (1 + 2 ) ( 1 , 2 nu pot fi ambele infinit) x n caz particular, = 0 = min ( i ) deci se va obine programul soluie x + 0y cu p-1 yi <0 yi componente pozitive i astfel vom avea dou cazuri : Dac coloanele corespunztoare componentelor sunt liniar independente atunci programul anterior este program de baz. Dac coloanele corespunztoare componentelor sunt liniar dependente atunci se reia algoritmul ntr-un numr finit de pai, cel mult p pn se va ajunge la primul caz i se obine un program optim de baz pentru problema dat. Definiia 2.1: Fie V un spaiu liniar peste corpul R i x, y doi vectori din V. Mulimea vectorilor [x, y ] = {X V / X = (1 ) x + y,0 1 } se numete segment al lui V (unete vectorul x cu vectorul y ). Definiia 2.2: O mulime M de vectori din V se numete mulime convex dac () x, y M i 18

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

() [ 0,1] , atunci [ x, y] M . Deci se poate spune c mulimea M din V este convex, dac odat cu doi vectori x, y M conine i segmentul determinat de aceti vectori. Definiia 2.3: Vectorul X M se numete vrf sau punct extrem al mulimii M dac nu exist vectorii x, y M astfel nct {X = (1 ) x + y,0 1 } . n caz contrar X se numete punct interior mulimii M . Definiia 2.4 : Prin combinaie liniar convex a vectorilor x1 ,x2 ,xm M se nelege o expresie de forma 1x1 + 2x2 + + mxm cu [ 0,1 ] i 1 + 2 + + m = 1 Concluzie: Orice punct interior X al unei mulimi convexe M se poate exprima ca o combinaie liniar convex de un numr finit de puncte extreme. Teorema 2.2: Mulimea soluiilor admisibile ale unei probleme de programare liniar este o mulime convex . Demonstraie : Fie mulimea soluiilor admisibile dat de relaia (2.40). Fie dou soluii: x1 , x2 S. Atunci pentru [0,1] avem x = x1 +(1- )x2 0 nlocuind relaia (2.45) n relaia (2.40) obinem : Ax= A[x1 +( 1- )x2]=Ax1 + (1- ) Ax2 = b + (1- )b = b+ b - b = b, deci mulimea soluiilor problemei de programare liniar este o mulime convex. Teorema 2.3: Orice soluie admisibil de baz a unei probleme de programare liniar este vrf sau punct de extrem al mulimii soluiilor admisibile. Demonstraie. Presupunem c soluia admisibil de baz x are forma x=(x1 x2 xm 0 0T. Aceasta nseamn c xi 0 (i = 1, m), vectorii p1, p2, ,pm sunt liniar independeni i x satisface sistemul de restricii, deci x1P1 + x2P2 + + xmpm +0pm+1 + + 0pn = p0 (2.46) (2.45)

Trebuie artat c x este vrf al mulimii S a soluiilor admisibile. Presupunem prin absurd c x nu este vrf, ci punct interior, adic exist doi vectori x' , x' ' S astfel nct: x = x'+(1 )x' ' , (0,1) Scris pe componente:
' '' ' '' ' '' + (1 )x m + (1 )x n x1 = x1' + (1 )x1' , x 2 = x 2 + (1 )x 2 ,., x m = x m ,.., 0 = x n

ns (0,1) , deci 1 > 0 , iar xi' 0 i = 1, n i xi'' 0 x' , x' ' S , astfel c, din cele n m relaii se obin: ' ' '' '' xm +1 = 0  x n = 0 ; x m +1 = 0  x n = 0 i deci vectorii x ' , x ' ' au formele: 19

(i = 1, n)

deoarece

Programare liniar
' x' = x1' x 2

' xm 0

'' x' ' = x1'' x 2

'' xm 0

(2.47)

Exprimm faptul c x' , x' ' S verific restriciile


' ' ' x1 p1 + x 2 p2 +  + xm p m = p0 '' x1 p1

(2.48) (2.49)

'' x2

p2 +  +

'' xm

p m = p0

ns vectorii pi ,,pm sunt liniari independeni. Rezult:


' '' ' '' x1' = x1'' , x 2 = x2 , x m = xm adic x' = x' '

(2.50)

Aceasta nseamn c nu exist vectorii x' , x' ' S astfel ca x = x'+(1 )x' ' (0,1) prin urmare x este vrf sau punct de extrem n S. Teorema 2.4: Funcia obiectiv a unei probleme de programare liniar ia valoare optim ntr-un punct extrem a mulimii convexe M a tuturor soluiilor admisibile ale problemei de programare liniar. Demonstraie: Presupunem c se cere ca funcia obiectiv s fie minimizat. ~ Notam cu M = { xi , i I } mulimea punctelor extremale ale lui M i fie x1 punct extrem pentru care c T x1 = min{c T xi } = z1
iI

Presupunem prin absurd c aceast afirmaie nu este adevrat, atunci exist x0 ~ M M astfel nct : c T x0 = z0 < z1, deoarece x0 nu este punct extrem atunci :

x0 =

x
i iI

, I 0 ,

iI

=1

(2.51)

Dar z0 = c T x0 = i c T ' xi > i c T x1 = cT x1 = z1, ceea ce este o contradicie. Deci


iI iI

x1 este un program minimal pentru problema de programare liniar.

Consecin : Dac funcia obiectiv ia aceeai valoare optim n mai multe puncte extremale, atunci orice combinaie liniar convex a acestora este soluie optim a problemei de programare liniar.
2.2.2. Baze ale problemei de programare liniar

Fie problema de programare liniar n forma standard (2.13), n care matricea A are m linii i n coloane, iar rang A = m < n. Ecuaiile ce compun sistemul liniar Ax = b sunt liniar independente, iar sistemul are o infinitate de soluii. Astfel, n matricea A exist cel puin un grup de m coloane liniar independente, care formeaz o baz a spaiului Rm. Definiiile ce urmeaz reprezint fundamente ce stau la baza rezolvrii modelelor de programare liniar.

Definiia 2.5 Se numete baz a problemei de programare liniar n form standard un grup de m coloane liniar independente.
20

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie


m Problema (2.13) are un numr finit de baze i anume C n . Fie B o baz format cu m coloane, ale matricei A. Matricea A se poate scrie partiionat sub forma:

A = [B, S ] , cu B = a (i ) iI , S = a ( j ) j J

[ ]

[ ]

(2.52)

unde prin I i J s-au notat mulimile de indici corespunztori coloanelor din baza B i, respectiv, a celorlalte coloane:

I = i = 1, n a (i ) B J ={ 1,2,..., n}/ I

}
[ ]

(2.53)

Partiionarea vectorului x al variabilelor problemei este urmtoarea:


xB x = S , cu x B = [xi ]iI , x
xS = x j

jJ

(2.54)

iar partiionarea vectorul c al coeficienilor funciei obiectiv este:

c B c = S , cu c B = [ci ]iI , c

cS = c j

[ ]

jJ

(2.55)

n raport cu baza B aleas, variabilele xi (i I ) se vor numi variabile de baz, iar x j ( j J ) variabile secundare. Sistemul de ecuaii Ax = b se poate scrie dup partiionare sub forma:

[B, S ] x S = b Bx B + Sx S
x

=b

(2.56)

Matricea B fiind o baz a spaiului Rm este inversabil. Astfel prin nmulirea relaiei (2.56) la stnga cu B-1 se obine forma explicit a sistemului de ecuaii:
x B = B 1b B 1 Sx S

(2.57)

Notm cu:
x = B 1b
B

1 ( j ) yB j = B a , j = 1, n

(2.58) (2.59)

nlocuind relaiile (2.58) i (2.59) n relaia (2.57) obinem:


B xB = x yB j xj jJ B

(2.60)

Scris pe componente relaia (2.60) devine:


21

Programare liniar
B B xiB = x i y ij x j ,i I jJ B

(2.61)

Definiia 2.6. Soluia de baz corespunztoare bazei B este: B x B = x Rn 0


B

(2.62)

O soluie de baz este o soluie admisibil (program) a unei probleme de programare liniar dac x 0 .
Definiia 2.7 Baza B care satisface condiia
B 1b 0

(2.63)

se numete baz primal admisibil.

innd seama de relaiile (2.54) i (2.55), funcia obiectiv a problemei de programare liniar, z = c T x , poate fi exprimat prin:
B ' x B T S T 1 1 S S z = c B c S S = cT + cT B x + c S x = c B B b B Sx Sx x T 1 ' 1 T' S z = cB B b cT B B S cS x

(2.64)

Notm cu:
z = cT Bx zB j = cT B
B B

(2.65)
j = 1, n

yB j ,

(2.66)

nlocuind relaiile (2.65) i (2.66) n relaia (2.64) obinem:


z = z z iB c j x B j
jJ B B

(2.67)

Definiia 2.7. Constanta z din relaia (2.67) reprezint valoarea funciei obiectiv n soluia asociat bazei B.

Diferentele z B j c j ( j J ) se mai numesc costuri reduse i au rolul esenial n caracterizarea optimalitii unei soluii admisibile de baz a unei probleme de programare liniar.
2.2.3. Interpretarea geometric a problemei de programare liniar

O interpretare geometric a unei probleme de programare liniara se poate obine simplu n cazul cnd problema are dou variabile (spaiu R2) i se prezint sub forma canonic. 22

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Fie modelul de programare liniar (2.11) exprimat n funcie de dou variabile de decizie x1 i x2. 1) Restriciile unui astfel de model pot fi exprimate prin a) egaliti : a11 x1 + a12 x 2 = b1 b) inegaliti : sau
a12 x1 + a 22 x 2 b2 a 21 x1 + a 22 x 2 b2

(2.68) (2.69) (2.70)

2) Condiii de nenegativitate : x1 0, x 2 0 3) Funcia obiectiv (2.10) poate fi: min(max) z = c1 x1 + c 2 x 2

Realiznd o analiz din punct de vedere grafic putem observ urmtoarele : egalitatea a11 x1 + a12 x 2 = b1 , reprezint o dreapta. Mulimea soluiilor ( x1 x 2 ) , aparine acestei drepte (d), iar aceast dreapt (curb de nivel), mparte planul (0 x1 x 2 ) n dou semiplane. inegalitatea a11 x1 + a12 x 2 < b1 , - mulimea soluiilor fiind reprezentat n acest caz printr-o arie, dreapta mparte planul (0 x1 x 2 ) n doua semiplane ce au o arie comun i n final un punct comun. Pentru aflarea soluiei optime, dac ea exist, trebuie aflat mai nti mulimea soluiilor admisibile S mulime ce satisface sistemul de restricii i condiiile de nenegativitate. n reprezentarea grafic acesta va fi o mulime convex, reprezentat printr-un domeniu, numit admisibil.
Exemplul 2.2 S se rezolve problema de programare liniar
z = max(2 x1 + x 2 ) 2 x x 2 1 2 x 2 x 2 2 1 x1 + x 2 5 x1 0 , x 2 0

Pentru determinarea domeniului admisibil se procedeaz n modul urmtor: se afl domeniul care satisface cele trei restricii i condiiile x1 0, x 2 0 . Se figureaz dreptele: (d1) (d2) (d3) 2x1- x2 = -2, trece prin A1(-1,0), B1(0,2) x1- 2x2 = 2, trece prin A2(2,0), B2(0,-1) x1+ x2 = 5, trece prin A3(5,0), B3(0,5)

i apoi se ia, n cadranul nti intersecia domeniilor ce reprezint soluiile, respectiv, ale celor trei inecuaii, fig. 2.1. Prin intersecia celor trei semiplane s-a obinut domeniul admisibil, ce este o mulime convex. Coordonatele oricrui punct din acest domeniu satisfac toate restriciile i condiiile de nenegativitate ale problemei. Conform teoremei 2.4, dac funcia obiectiv i atinge valoarea maxim, atunci z ia valoarea maxim ntr-un vrf ( punct extrem al mulimii convexe). Acestea sunt vrfurile poligonului, notate cu: O, A, B, C, D. 23

Programare liniar

Coordonatele acestor puncte se afl uor astfel:


x2 d1

C( 1 ,4)

d2

(D )

D(0,2)

B (4, 1 ) d3 0 A(2,0) x1

Fig.2.1

x 2 x2 = 2 B (d 2 )  (d 3 ) 1 x1 + x2 = 5 2 x 2 x 2 = 2 C (d 1 )  (d 3 ) 1 x1 + x 2 = 5

B(4,1) C (1,4 )

Aflarea soluiei optime se bazeaz pe faptul c funcia obiectiv, avnd dou variabile se poate reprezenta printr-o dreapt (D). (D): c1x1 + c2x2 = z Adus la forma y = mx + n unde m este panta, iar n ordonata la origine, rezult: (D): x 2 =
c1 z x1 + c2 c1 c1 c2

care reprezint o mulime de drepte paralele ntre ele, avnd panta constant m = i ordonata la origine variabil, n =

z . c1 n problemele de maxim vom alege poziia care are ordonata la origine astfel ca ea s furnizeze valoarea maxim pentru z. Analog pentru problemele de minim.

Pentru exemplul de mai sus rezult: (D) : x2 = -2x1 + z ; se alege acea dreapt ce trece prin unul din vrfuri, ce are m = -2 i ordonata n = z = max Ea este figurat punctat n figura 2.1. Ordonata la origine maxim corespunde punctului B deci
x1 = 4 i x2 = 1 z = 2*4 +1*1 = 9 = max

Deoarece panta dreptei (D) este m = -2 = tg , rezult c unghiul = 116,560.

24

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Exemplul 2.3. Pentru fabricarea a dou produse P1 i P2, o firm dispune de patru tipuri de resurse Ri 1,4 . Cantitile de resurse Ri folosite pentru fabricarea fiecrei uniti din produsele P1 i P2, n uniti convenionale (tone etc) sunt date n tabelul 2.1. Se mai cunosc cantitile disponibile ale firmei din fiecare resurs Ri i = 1,4 i beneficiile pentru fiecare unitate din cele dou produse. S se determine planul de producie astfel ca beneficiul total s fie maxim.

( )

Tabelul 2.1
Resurse R1 R2 R3 R4 Beneficiu R1 2 1 4 0 2 um R1 2 2 0 4 3 um Disponibil 12 8 16 12

Introducnd variabilele de decizie: x1 = numrul de uniti din produsul P1 i x2 = numrul de uniti din produsul P2 , rezult urmtorul model matematic de P.L.:
2 x1 + 2 x 2 12 x + 2x 8 1 2 4 1 6 x 1 4 x 2 12

x1 0, x 2 0, z = 2 x1 + 3 x 2 = max

Soluia grafic (2.2) se obine determinnd domeniul admisibil:


(d 1 )2 x1 + 2 x 2 = 12 (d )x + 2 x = 8 2 1 2 ( ) d 3 4 x1 = 16 (d 4 )4 x 2 = 12 (D) 2x1 + 3x2 = z

C (d 2 )

Se observ c dreptele (d1 ) , (d 2 ) i (d 3 ) sunt concurente n punctul B(4,2), iar (d 3 ) are coordonatele C(2,3).
x2

d3

(D )

D(0,3)

C(2,3)

d4

B(4,2)

d1 0 A(4,0)

d2 x1

Fig.2.2

25

Programare liniar

Soluia optim a problemei este:


x1 = 4; x2 = 2 f(x) = 14 = max

Verificm soluia n restriciile problemei. Rezult c resursele R1, R2 i R3 sunt resurse rare, utilizate n ntregime n timp ce resursa R4 nu a fost n ntregime utilizat. Cantitatea din resursa R4, ce rmne disponibil poate fi determinat i ulterior folosit cunoscnd preul umbr (dual). Aceast analiz urmeaz a fi detaliat n subcapitolul 2.4.
2.3. Metoda Simplex

Metoda Simplex sau metoda mbuntirilor succesive evit cercetarea exhaustiv a tuturor soluiilor de baz ale unei probleme de programare liniar, construind succesiv soluii realizabile de baz din ce n ce mai bune ale modelului pn cnd este obinut o soluie de baz optim. Prin soluie mai bun nelegnd soluia ce d funciei de eficien (obiectiv) o valoare mai mic, respectiv mai mare dect cele precedente dup cum funcia de eficien este de minim sau de maxim. Deci acest algoritm este o metod de examinare sistematic a programelor de baz ce d funciei de eficien o valoare optim. Aceast metod pune n eviden cazul n care problema admite un optim infinit sau mulimea programelor este vid.
2.3.1. Fundamente teoretice n aplicarea metodei Simplex

Prezentarea metodei simplex se realizeaz pe un model de programare liniar dat n form standard i n care funcia obiectiv este o funcie de minimizare.
min c T x Ax = b , unde x0
C , x R n A M m ,n b Rm

(2.71)

B Fie B o baz primal admisibil extras din matricea A i x = B 1b o soluie de baz iniial a problemei de programare liniar. Pentru ordonarea i facilitarea calculelor se utilizeaz n aplicarea practic a algoritmului tabele ce poart denumirea de tabele simplex. Aceste tabele sunt tabele simple ce au m+1 linii i n+1 coloane i cuprind coeficienii numerici al problemei (2.71) corespunztori bazei primal admisibile B (tab 2.2). Tabelul conine n prima coloan, variabilele de baz (V.B.), n coloana a doua valoarea variabilelor de baz (V.V.B), iar n urmtoarele n coloane vectorii y B j , j = 1, n . Pe ultima linie a tabelului se trece valoarea funciei obiectiv pentru baza B notat cu

i diferenele z B j c j , j = 1, n . Acestui tabel se ataeaz o linie deasupra variabilelor x j i o coloan la stnga

coloanei V.B cu coeficienii corespunztori funciei obiectiv c j , j = 1, n .

26

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Tabelul 2.2
cl CB c1 V.B.
B x1

... ... ...

ck xk yB

... ... ...

cj xj yB
1j

... ... ...

cn xn yB
1n

V.V.B
B x1

xl yB

11

1k

ci

xiB

xiB

yB

i1

...

yB

ik

...

yB
ij

...

yB

in

cl

xlB

xlB

yB

l1

...

yB

lk

...

yB
lj

...

yB

ln

cm

B xm

B xm

yB

m1

...

yB

mk

...

yB

...

mj

yB

mn

zB

B- c ... z1 1

zB -ck k

... z B - c j j

... z B - c n n

Tabelul simplex se ataeaz fiecrei baze B din algoritm i are ca fundamente rezultatele teoretice ce sunt prezentate n continuare.
Teorema 2.5 Criteriu de optimalitate Fie B o baz primal admisibil pentru probleme de programare liniar (2.71). Dac B 1 zB j c j 0 , oricare ar fi j J , atunci programul de baz asociat bazei B, x = B b este o soluie optim a problemei de programare liniar considerat.

Teorema 2.6 Criteriu de infinitudine a soluiilor Fie B o baz primal admisibil pentru probleme de programare liniar (2.71). Dac
B B ck 0 i yik 0 , oricare ar fi i I atunci problema exist indicele k J astfel nct z k are un optim infinit.

Teorema 2.7 Criteriu de mbuntire a soluiilor Fie B o baz primal admisibil pentru probleme de programare

B B ck > 0 (2.72) i I + = iI / yik > 0 . Pentru liniar 2.71. Fie k J astfel nct z k indicele i I + determinat cu relaia:

min
i I +

xi

B yik

xl

B ylk

(2.73)
~ B

se obine un nou program de baz x cel puin la fel de bun ca x , corespunztor unei noi ~ (l ) baze B care are aceleai coloane ca i B, cu excepia coloanei a ce se nlocuiete cu (k ) coloana a . Observaii: ~ Baza B este primal admisibil i verific toate teoremele anterioare. Relaia (2.73) reprezint criteriul de ieire din baz i ne arat indicele l I + , al coloanei a (l ) ce urmeaz s prseasc baza B.
27

Programare liniar

n cazul n care exist mai muli indici k J pentru care se ndeplinesc (2.72) i (2.73) atunci se pot construi mai multe baze primal admisibile i fiecare dintre acestea modific valoarea funciei obiectiv. Pentru a obine mai repede optimul cutat este indicat a alege acel indice pentru care se verific relaia. xl B max (( z j c j ) B ) = j J ylk
B

xl

B ylk

B (zk c ) k

(2.74)

n practic utilizndu-se pentru evitarea calculelor urmtorul criteriu: B B max ( z j c j ) = z k ck j J


Relaia 2.75 reprezint criteriul de intrare n baz i ne arat indicele
a ( k ) ce urmeaz s intre n baza B. ylk din tabelul simplex poart denumirea de pivot. ~ Pentru calculul elementelor tabelului simplex asociat bazei B n raport cu elementele tabelului simplex asociat bazei B se utilizeaz formulele de schimbare a bazei n cadrul unei operaii numit pivotare gaussin. n practic formulele de schimbare a bazei se echivaleaz cu urmtoarele reguli de transformare a tabelelor simplex : Elementele situate pe linia pivotului se mpart la valoarea pivotului ; Elementele situate pe coloana pivotului devin zero cu excepia pivotului ce va avea valoarea unu ; Celelalte elemente ale tabelului simplex se transform dup regula dreptunghiului. Se consider dreptunghiul imaginar a crui diagonal este determinat de k J al coloanei Elementul
B B B elementul yij i pivotul yij (fig. 2.3) ; noua valoare yij se obine mprind la pivot diferena
B B B B ylk i ylj yik dup formula : dintre produsul yij

(2.75)

~ B yij

B B B B yij ylk ylj yik B ylk

(2.76)
elementul de transformat

B ij

B y ik

B y ij

B y ik

pivotul

Fig.2.3
2.3.2. Algoritmul simplex primal.

Rezultatele teoretice obinute anterior permit enunarea algoritmului simplex. Acest algoritm pentru rezolvarea problemelor de programare liniar date n form standard (2.13) este diferit n raport cu tipul funciei obiectiv, respectiv, probleme de minimizare sau maximizare.

28

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Algoritmul simplex primal pentru probleme de minimizare Pasul 1 : Se determin o baza B primal admisibil. B B B Pasul 2 : Se determin urmtoarele elemente : x , z , z B j c j, y j Pasul 3 : Se analizeaz toate diferenele z B j cj :
B Dac toate diferenele z B j c j 0 , j = 1, n atunci programul x este optim.

Dac exist cel puin un indice j J + , J + = j J / z B j cj > 0

astfel nct

zB j c j > 0 se trece la pasul 4. Pasul 4 Se determin indicele k J + cu criteriul de intrare n baz


B ck = max ( z B zk j cj) j J +

B Dac y k 0 atunci problema are un optim infinit. B > 0 se trece la pasul 5. Dac ()k J + pentru care y k Pasul 5: Se determin indicele l I cu criteriul de ieire din baz: xB xB l i min B = B i I yij ylk y B >0 ik

(l ) (k ) Pasul 6 : Se nlocuiete n baza iniial B vectorul a cu vectorul a , ~ obinndu-se astfel o nou baz B , iar pivotul corespunztor este y lk . ~ Mrimile tabelului simplex corespunztor noii baze B , se vor determina cu ajutorul unei reguli denumit regula dreptunghiului (pivotare n jurul elementului y lk ), dup care se trece la Pasul 2.

Algoritmul simplex primal pentru probleme de maximizare


Acest algoritm are paii 1,2,5,6 identici cu algoritmul pentru probleme de minimizare.

Pasul 3 : Se analizeaz toate diferenele z B j cj :


B Dac toate diferenele z B j c j 0 , j = 1, n atunci programul x este optim.

Dac exist cel puin un indice j J , J = j J / z B j cj < 0

astfel nct

zB j c j < 0 se trece la pasul 4. Pasul 4 Se determin indicele k J + cu criteriul de intrare n baz


B zk ck = min ( z B j cj) j J

B 0 atunci problema are un optim infinit. Dac y k

B > 0 se trece la Pasul 5. Dac ()k J + pentru care y k Algoritmul simplex poate fi exprimat sintetic sub urmtoarea schem logic ( fig.2.4).

29

Programare liniar
START

Construieste tabel simplex initial

Exista valori pozitive (negative) pe linia diferentelor?

Nu

Indica solutia optima

STOP

Da Determina coloana pivotului

Exista valori pozitive in coloana pivotului?

Nu

Indica solutia optima

STOP

Da Determina linia pivotului

Calculeaza un nou tabel simplex

Fig.2.4

Exemplul 2.4 . S se rezolve urmtoarea problem de programare liniar:


x1 x 2 4, 3 x x 18, 1 2 x1 + 2 x 2 6, x , x 0 1 2 max (2 x1 + x 2 ).

Pentru a aplica algoritmul simplex, vom aduce mai nti problema la forma standard. n acest scop introducem variabilele ecart x3, x4 i x5:
x1 x 2 + x3 = 4, 3 x x + x = 18, 1 2 4 2 x + x + x5 = 6, 1 2 x , x ,..., x 0 6 1 2 max(2 x1 + x 2 ).

Iteraia 1 Pasul 1 Fie B o baz admisibil a problemei format din coloanele matricii A i anume a3, a4 i a5 : 1 0 0 3 4 5 B = a , a , a = 0 1 0 0 0 1 Pasul 2 Baza B este matricea unitate, astfel vom calcula urmtoarele elemente:

B 1 = B = I i x

= B 1b = b = [4 18 6] ;

30

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

1 yB j = B a j = a j , elementele matricii A.
' 1 zB j c j = c B a j c j = (0 0 0 ) a j c j = c j = ( 2 1 0 0 0) B

= c B B 1b = 0.

Cunoscnd toate aceste date, putem forma tabelul simplex iniial ( tab.2.3).
B Pasul 3. Deoarece exist j J , J = j J / z B j c j < 0 astfel nct z j c j < 0 , baza iniial nu este optim. Pasul 4 Se determin indicele k J + cu criteriul de intrare n baz B zk ck = min ( z B j c j ) =min ( 2,1 )=-2. Deci indicele k = 1, astfel variabila x1 va intra j J

~ B > 0. n noua baz B i ()k J + pentru care y k Pasul 5: Se determina indicele l I cu criteriul de ieire din baz xB xB 4 18 4 l i min B = B = min , = , 1 3 1 i I yij ylk
y B >0 ik

deci indicele l = 3. Variabila x3 va prsi baza B. Pivotul este y31= 1 Pasul 6: Se nlocuiete n baza iniial B variabila x3 cu variabila x1 obinndu-se astfel o noua ~ baza B ceea ce nsemn c se vor transforma toate mrimile urmtorului tabel simplex cu regula dreptunghiului. Interaia 2 Se realizeaz un pivotaj n jurul elementului y42 (tab.2.3). Interaia 3. Se realizeaz un pivotaj n jurul elementului y53 (tab.2.3). Interaia 4 Deoarece z j c j 0 pentru toi j, baza actual este optim. Deci programul optim 42 36 14 , x2 = , x3 = , x 4 = 0 , x5 = 0 ( x 4 i x5 au valoarea 5 5 5 0, deoarece sunt variabile secundare). al problemei noastre este x1 =

Interpretare geometric.
Pentru problema examinat mai sus se poate da o interpretare geometric simpl n spaiu R2. n planul x1Ox2, mulimea punctelor (x1, x2) care satisfac restricia x1 x 2 4 constituie unul din semiplanele determinate de dreapta (d 1 ) : x1 x 2 = 4 , i anume semiplanul care conine originea. Celelalte dou restricii determin analog alte dou semiplane. Mulimea programelor problemei va fi format din mulimea punctelor din primul cadran (x1 0, x 2 0 ) care se afl la intersecia celor trei semiplane. Aceast mulime este poligonul OABCD (fig. 2.5). Funcia obiectiv este max(2x1 +x2). Ecuaia 2x1 +x2 = z reprezint o familie de drepte paralele ntre ele. n figura 2.4 sunt reprezentate punctat cteva din aceste drepte. Pentru z=z2, funcia obiectiv ia valori mai mari dect pentru z = z1, iar pentru z = z3 valori i mai mari. 31

Programare liniar

Tabelul 2.3
2 C
B

1 x2 -1 -1 2 -1 1 x2 -1 2 1 -3 1 x2 0 1 0 0 1 x2 0 1 0 0

0 x3 1 0 0 0 0 x3 1 -3 1 2 0 x3 -1/2 -3/2 5/2 -5/2 0 x3 0 0 1 0

0 x4 0 1 0 0 0 x4 0 1 0 0 0 x4 1/2 1/2 -1/2 -3/2 0 x4 2/5 1/5 -2/5 1

0 x5 0 0 1 0 0 x5 0 0 1 0 0 x5 0 0 1 0 0 x5 1/5 3/5 2/5 1

V.B. x3 x4 x5

V.V.B 4 18 6 0

xl 1 3 -1 -2 2

0 0 0

CB 2 0 0

V.B. V.V.B x1 x4 x5 4 6 10 8

xl 1 0 0 0 2 xl 1 0 0 0 2

CB 2 1 0

V.B. V.V.B x1 x2 x5 7 3 7 17

V.B. V.V.B x1 x2 x3 42/5 36/5 14/5 24

xl 1 0 0 0

2 1 0

x2
42 36 C , 5 5

(d2) B(7,3) (d1)

D (0,3)

O (0,0)

A(4,0)

x1

Fig.2.5 ns, dup cum se vede din figur, nu exist nici un program care s dea funciei obiectiv valoarea z3 (dreapta 2x1 +x2 =z3 nu intersecteaz poligonul OABCD domeniul soluiilor). Cea mai mare valoare pe care o poate lua z pentru punctele din poligonul OABCD se obine atunci cnd dreapta 2x1 +x2 = z trece prin punctul C. Valoarea lui z n acest caz este 2. 42/5 + 36/5 = 24. 32

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Cnd am aplicat algoritmul simplex, drept baz iniial am luat baza B = (a3, a4, a5). Variabilele x1 i x2 sunt variabile secundare, deci au valoarea 0; reiese c ne-am gsit n vrful O (0,0) al poligonului OABCD, iar valoarea funciei obiectiv era z = 0. n continuare, variabila x1 intr n baz i am obinut programul x1 = 4, x2 = 0. Geometric aceasta nseamn c din vrful O ne-am deplasat pn n vrful A (4,0) de-a lungul muchiei OA. n continuare, din vrful A am ajuns n vrful B, mergnd pe muchia AB (variabila x3 a pstrat tot valoarea 0, deci ne gseam pe dreapta d1). De aici am ajuns n vrful optim C, urmnd muchia BC. Valoarea funciei obiectiv a crescut de la 0 la 8, apoi la 17 (n vrful B) i, n sfrit, la valoarea maxim 24. Acest lucru este valabil i n cazul general: fiecrei baze admisibile a problemei adus la forma standard i corespunde un vrf al domeniului soluiilor. Concluzie: Fiecare iteraie simplex reprezint o deplasare de la un vrf al domeniului soluiilor, pe o muchie, pn la un vrf, care confer funciei obiectiv o valoare mai bun.

Exemplul 2.5. O companie produce trei tipuri de produse A, B, C. Fiecare dintre aceste produse trebuie prelucrate tehnologic aceeai main unealt, timp de 2 ore, 3 ore respectiv 1 or. Maina unealt este disponibil pentru perioada analizat, 400 ore. Pentru produsele A i C se folosesc componente speciale, cte o bucat pentru fiecare produs, firma avnd un stoc disponibil pe perioada analizat de 150 de uniti din aceste componente. Tot pentru produsele A i C se utilizeaz un aliaj special: pentru o unitate din produsul A se utilizeaz 2 kg de aliaj special, iar pentru o unitate din produsul C, 4 kg. Stocul disponibil este de 200 kg din acest aliaj special. Studiul de pia pentru produsul B arat c se pot vinde pe perioada analizat cel mult 50 de uniti din acest produs. Beneficiul unitar al produselor A, B i C este respectiv: 8 um (uniti monetare), 5 um, 10 um. Compania dorete s stabileasc planul de producie care maximizeaz beneficiul total pe perioada analizat.
Elaborarea modelului matematic Notm x1 = numrul de produse A x2 = numrul de produse B x3 = numrul de produse C unde x1, x2, x3 pentru modelul analizat reprezint variabilele de decizie. 2 x1 + 3 x 2 + x3 400 x + x 150 1 3 x + 2 1 4 x3 200 x 2 50 x1 0 , x 2 0 , x3 0 z = max(8 x1 + 5 x 2 + 10 x3 ) Se observ c problema nu are form standard. Introducem variabilele de compensare x4, x5, x6, x7 i nlocuim max(z)=min(-z), dorind s aplicm algoritmul simplex pentru probleme de minim. Calculele efectuate sunt grupate n tabelele simplex reunite n tabelul 2.4. Soluia optim este: x = (100, 50, 0, 50, 50, 0, 0), iar funcia obiectiv este min (f)= 1050, deci max(z) = 1050 Interpretarea soluiei: Variabilele de decizie au valorile : x1 = 100, x2 = 50, x3 = 0 33

Programare liniar

2 x1 + 3 x 2 + x3 + x 4 = 400 x + x + x = 150 1 3 5 x + x + x6 = 200 2 4 3 1 x 2 + x7 = 50

xi 0

(i = 1,7)

f = min(8 x1 5 x 2 10 x3 ) Matricea coeficienilor tehnico - economici este: 2 3 1 1 0 0 0 1 0 1 0 1 0 0 A= 2 0 4 0 0 1 0 0 1 0 0 0 0 1 Se vor fabrica 100 uniti din produsul A, 50 uniti din produsul B, zero uniti din produsul C. Se va obine beneficiul maxim, egal cu 1050 uniti monetare. Semnificaia variabilelor de compensare rezult din modul cum au fost introduse. Verificnd restriciile iniiale ale problemei cu soluia optim x1 = 100, x2 = 50, x3 = 0 i comparnd cu sistemul de restricii n care s-au introdus variabilele de compensare, rezult: - orele de lucru pe main nu s-au folosit integral, rmnnd disponibile x4 = 50 ore; - componentele nu s-au folosit integral, rmnnd x5 = 50 uniti. - stocul de aliaj dup efectuarea prelucrrilor este nul x6 = 0 - este satisfcut condiia de vnzare pentru B, x7 = 0. Tabelul 2.4
-8 C
B

-5 x2 3 0 0 1 5 x2 3 0 0 1 5 -5 x2 0 0 0 1 0

-10 x3 1 1 4 0 10 x3 0 0 1 0 0 -10 x3 0 0 1 0 0

0 x4 1 0 0 0 0 0 x4 1 0 0 0 0 0 x4 1 0 0 0 0 0 x4 1 0 0 0 0

0 x5 0 1 0 0 0 0 x5 0 1 0 0 0 0 x5 0 1 0 0 0 0 x5 0 1 0 0 0

0 x6 0 0 1 0 0 0 x6 -1/4 -1/4 1/4 0 5/2 0 x6 -1/4 1/4 1/4 0 5/2 0 x6 -1 -1/2 1/2 0 -4

0 x7 0 0 0 1 0 0 x7 0 0 0 1 0 0 x7 -3 0 0 1 -5 0 x7 -3 0 0 1 -5

V.B. x4 x5 x6 x7

V.V.B 400 150 200 50 0

xl 2 1 2 0 8 -8

0 0 0 0

-5 -10

CB 0 0 -10 0

V.B. V.V.B x4 x5 x3 x7 350 100 50 50 -500

xl 3/2 1/2 1/2 0 3 -8 xl 3/2 1/2 1/2 0 3 -8

CB 0 0 -10 -5

V.B. V.V.B x4 x5 x3 x2 200 100 50 50 -750

-5 -10 x2 0 0 0 1 0 x3 -3 -1 2 0 -6

V.B. V.V.B x4 x5 x1 x2 50 50 100 50 -1050

xl 0 0 1 0 0

0 0 -8 -5

34

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

2.3.3. Metode de determinarea unei soluii de baz iniiale

Algoritmul simplex necesit, pentru pornire, ca problema s fie dat n forma standard i s aib o soluie admisibil de baz. Prima dintre condiii se realizeaz folosind transformri utilizate n programarea liniar. Pentru cea de-a doua condiie alegerea la ntmplare a unei baze format din m vectori ai matricei A, conduce la soluii de baz nerealizabile cu care algoritmul simplex nu poate ncepe. Gsirea unei baze pur i simplu prin ncercri repetate nu este indicat, aceast cutare putnd dura foarte mult. Rezolvarea problemei pleac de la observaia c singura baz pentru care calculul de mai sus se poate face imediat este matricea unitate, caz n care soluia de baz corespunztoare este chiar vectorul termenilor liberi. Aceasta presupune ca problema s aib toi termenii liberi mai mari sau egali cu 0 i n matricea A s existe toate coloanele matricei unitate. n acest sens plecm de la observaia c existena unui vector din matricea unitate este echivalent cu existena unei variabile care apare doar n ecuaia corespunztoare lui 1 din acel vector, cu coeficientul 1. Acest lucru poate fi obinut n dou moduri: Alegem o nou funcie obiectiv care s-i ating extremul printre soluiile 1) pozitive chiar pentru y = 0 i n momentul cnd am obinut soluia respectiv pornim cu aceasta ca soluie iniial algoritmul simplex pentru fosta problem (Metoda celor dou faze). Adugm la vechea funcie obiectiv noi variabile y cu coeficieni alei astfel 2) nct aportul variabilelor la valoarea funciei s fie contrar scopului dorit (infinit pozitiv ntr-o problem de minim i infinit negativ ntr-o problem de maxim) (Metoda coeficienilor de penalizare) Vom detalia n continuare cele dou metode:

Metoda celor dou faze Fie dat problema de programare liniar la forma standard de maxim:
max c T' x A x = b x0

(2.77)

n care am aranjat deja ca toi termenii liberi s fie pozitivi .

Faza 1 Const n rezolvarea unei probleme de programare liniar auxiliar, asociat problemei iniiale. Astfel construim problema:
a a a f ( x a ) = min( x m +1 + x m + 2 + ... + x m + n ) Ax + I m x a = b x ,xa 0

(2.78)

unde xa sunt variabilele artificiale ce se introduc n restriciile problemei att ct sunt necesare n scopul formrii bazei unitare; Im matricea unitate de ordin m. Rezolvm cu algoritmul simplex aceast problem, pornind rezolvarea de la baza matrice unitate, putem ajunge la dou situaii: 35

Programare liniar

1. minimul funciei f este strict pozitiv, aceasta fiind echivalent cu faptul c egalitatea Ax + Imxa = b se poate obine doar pentru Imxa > 0 sau altfel spus Ax > b pentru orice x 0, deci sistemul Ax = b nu are soluii admisibile i n concluzie problema iniial nu are soluie. 2. minimul funciei f este 0, n acest caz, soluia optim obinut verific Ax = b, fiind n concluzie o soluie admisibil de baz a primei probleme.

Faza 2
ncepnd de la soluia gsit la Faza 1 se rezolv problema iniial cu algoritmul simplex. Se ndeprteaz din tabelul simplex toate elementele corespunztoare variabilelor artificiale (cu excepia celor care rmn n baz), introducnd coeficienii funciei obiectiv din problema iniial. Dezavantajul metodei const n faptul c tabelul simplex final de la faza 1 trebuie modificat pentru a se obine tabelul simplex iniial de la faza 2, eliminndu-se coloanele corespunztoare lui y i totodat nu vom avea n tabelele simplex ale problemei iniiale inversa bazei (se gsea n dreptul coloanelor matricei unitate din prima faz) necesar n anumite variante ale algoritmului simplex.
Metoda coeficienilor de penalizare Fie problema de programare liniar la forma standard de minimizare: min c T x A x = b x0

(2.79)

n care toi termenii liberi sunt pozitivi i matricea A nu conine nici un vector coloan unitar. Construim problema:
f = max(c T x My) A x + y = b x, y 0

(2.80)

n care M este o constant presupus foarte mare (mai mare dect orice constant care ar putea apare n rezolvarea problemei). Rezolvm problema cu algoritmul simplex pornind rezolvarea de la baza matrice unitate, putnd ajunge la trei situaii: 1) problema are optim infinit, n acest caz, problema iniial are optim infinit ( nu prezint interes din punct de vedere tehnico-economic). 2) problema are optim finit i n soluia de baz avem cel puin o variabil din vectorul y. n acest caz problema iniial nu are soluii admisibile. 3) problema are optim finit i n soluia de baz nu avem nici o variabil din vectorul y. n acest caz problema iniial are optim finit, soluia optim i maximul funciei fiind aceleai cu cele ale problemei modificate. Se remarc faptul c variabilele y nu au aceeai semnificaie economic ca celelalte variabile, ele fiind introduse doar ca un artificiu de calcul pentru a putea porni algoritmul simplex.

Observaii : Dac matricea restriciilor conine vectori unitari, atunci numrul variabilelor artificiale introduse este egal cu m, numrul vectorilor unitari, indiferent de tipul funciei obiectiv.
36

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Dac la aplicarea algoritmului simplex, o variabil artificial iese din baz ea nu va mai intra niciodat, ceea ce arat eliminarea din calculele ulterioare. Exemplu 2.6 Un atelier de prelucrri mecanice fabric dou produse P1 i P2. Din structura de dezagregarea produselor se deduce c pentru realizarea produsului P1 sunt necesare 3 componente de tip A i un component de tip B, iar pentru realizarea produsului P2 sunt necesare 1 component de tip A i 4 componente de tip B. Atelierul dispune n stoc de 10 componente de tip A. Contractele cu furnizorii pentru componentele de tip B, arat c se poate realiza aprovizionarea cu acesta n cantitate de cel puin dou componente B. Beneficiul unitar pentru produsele P1 i P2 sunt de 2 um, respectiv de 3um. Se dorete s se stabileasc planul de producie care s maximizeze beneficiul total.
Modelul matematic este urmtorul:
f = max(2 x1 + 3 x 2 ) 3 x1 + x 2 10 x1 + 4 x 2 2 x ,x 0 1 2 unde x1 , x 2 , reprezint numrul de produse de tip P1 respectiv P2. Forma standard a problemei va fi: (max ) f = 2 x1 + 3 x2 3 x1 + x 2 + x3 = 10 x1 + 4 x 2 x 4 = 2 x ,x ,x ,x 0 1 2 3 4

n matricea A vom introduce variabila x5 cu coeficientul 1 n a doua ecuaie i mpreun cu coeficienii variabilei x3 n final vom avea de rezolvat problema prin cele dou metode: Metoda celor dou faze Metoda coeficienilor de penalizare min( x5 ) max(2 x1 + 3 x 2 Mx 5 ) 3 x1 + x2 + x3 = 10 3 x1 + x 2 + x3 = 10 x1 + 4 x2 x4 + x5 = 2 x1 + 4 x 2 x 4 + x 5 = 2 x ,x ,x ,x ,x 0 x ,x ,x ,x ,x 0 1 2 3 4 5 1 2 3 4 5 Aplicnd Metoda celor dou faze vom obine succesiv tabele:
cB 0 1 cB 0 0 xB x3 x5 xB x3 x2
xB 10 2 2 xB 19/2 1/2 0

0 x1 3 1 1 0 x1 11/4 1/4 0

0 x2 1 4 4 0 x2 0 1 0

0 x3 1 0 0 0 x3 1 0 0

0 x4 0 -1 -1 0 x4 1/4 -1/4 0

1 x5 0 1 0 1 x5 -1/4 1/4 -1

37

Programare liniar

Am obinut optimul egal cu 0 n soluia de baz (x3,x2) care va fi soluia iniial pentru algoritmul simplex aplicat problemei iniiale n a doua faz. Eliminm din tabel coloana lui x5, nlocuim valorile coeficienilor funciei obiectiv i deci i valoarea acesteia, valorile z B j c j i rezolvm problema n continuare, plecnd de la baza primal admisibil determinat, cu algoritmul simplex primal, obinnd tabelele de mai jos:
cB 0 3 cB 0 2 cB 0 2 cB 0 3 xB x3 x2 xB x3 x1 xB x4 x1 xB x4 x2
xB 19/2 1/2 3/2 xB 4 2 4 xB 4/3 10/3 20/3 xB 38 10 30

2 x1 11/4 1/4 -5/4 2 x1 0 1 0 2 x1 0 1 0 2 x1 11 3 7

3 x2 0 1 0 3 x2 -11 4 5 3 x2 -11/3 1/3 -7/3 3 x2 0 1 0

0 x3 1 0 0 0 x3 1 0 0 0 x3 1/3 1/3 2/3 0 x3 4 1 3

0 x4 1/4 -1/4 -3/4 0 x4 3 -1 -2 0 x4 1 0 0 0 x4 1 0 0

Soluia optim a primei probleme este deci x1 = 0 i x2 = 10 care d un maxim al funciei egal cu 30. Aplicnd Metoda coeficienilor de penalizare vom obine succesiv urmtoarele tabele:
cB 0 -M xB x3 x5
xB 10 2 -2M

cB 0 3 cB 0 2 cB 0 2 cB 0 3

xB x3 x2 xB x3 x1 xB x4 x1 xB x4 x2

xB 19/2 1/2 3/2 xB 4 2 4 xB 4/3 10/3 20/3 xB 38 10 30

2 x1 3 1 -M -M-2 2 x1 11/4 1/4 -5/4 2 x1 0 1 0 2 x1 0 10/3 0 2 x1 11 3 7

3 x2 1 4 -4M -4M-3 3 x2 0 1 0 3 x2 -11 4 5 3 x2 -11/3 1 -7/3 3 x2 0 1 0

0 x3 1 0 0 0 0 x3 1 0 0 0 x3 1 0 0 0 x3 1/3 1/3 2/3 0 x3 4 1 3

0 X4 0 -1 M M 0 x4 -1/4 -3/4 0 x4 3 -1 -2 0 x4 1 0 0 0 x4 1 0 0

-M x5 0 1 -M 0 -M x5 -1/4 1/4 M+3/4 -M x5 -3 1 2+M -M x5 -1 0 M -M x5 -1 0 M

38

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

2.3.4. Interpretarea a algoritmului simplex primal

Se consider problema de optimizare a activitii unei firme productoare. Aceasta realizeaz n produse , cu un profit unitar cj , j = 1, n . Firma utilizeaz mai multe resurse prime

Ri , i = 1, m , disponibile n cantitile limitate bi. Consumurile specifice de resurse pentru fiecare produs sunt aij , i = 1, m , j = 1, n . Obiectivul firmei este obinerea unui profit total maxim, cu restriciile ce provin din consumul integral al resurselor disponibile . Modelul de optimizare a activitii firmei este reprezentat de problema de programare liniar n forma standard :
(max) z = c T x Ax = b x0

(2.81)

n care xj , j = 1, n , este cantitatea din produsul j ce urmeaz a fi fabricat. Consumarea (utilizarea) integral a resurselor nu este strict, deoarece n lista operaiilor productive se poate include un numr de operaii fictive (corespunztoare variabilelor ecart) ale cror valori s reprezinte cantitatea din resurse neconsumat. n soluia de baz a algoritmului simplex numrul componentelor nenule nu depete numrul restriciilor. De aceea, n orice soluie optim a problemei, numrul produselor ce urmeaz a fi fabricate nu depete numrul resurselor folosite . Coloanele a(j) din baza B ce corespund operaiilor j le vom numi operaii de baz, celelalte fiind operaii secundare. Programul optim prevede obinerea, numai prin operaiile de baz, a produselor, astfel nct s fie consumate integral resursele disponibile. O posibilitate de a obine un program mai bun const n identificarea unor operaii secundare care s nlocuiasc o parte din operaiile de baz curente. Pentru acesta este necesar un criteriu de comparare a operaiilor secundare cu cele de baz . n ipoteza c baza B=[a(1), a(2), ..,a(m)], din relaia (2.59)

yBj=B-1a(j) , j = 1, n
deducem :

(2.82)

A(j)= ByBj , j = 1, n
care se poate scrie
B (1) B (2) B ( m) A( j ) = y1 + y2 + ... + y mj A jA jA

(2.83)

(2.84)

Relaia de mai sus are urmtoarea semnificaie din punct de vedere tehnico-economic, B B B fabricarea unei uniti de produs j este echivalent cu fabricarea cantitilor y1 , j , y 2 j ,..., y mj din produsele operaiilor de baz. Ca urmare, pentru fabricarea unei uniti din produsul j este B B B necesar a diminua producia operaiilor de baz cu cantitile y1 j , y 2 j ,..., y mj .

39

Programare liniar

Aportul produsului j la creterea profitului firmei poate fi comparat cu aportul valoric B B B al cantitilor y1 , j , y 2 j ,..., y mj . n consecin, dac:
B B B zB j c j = c1 y 1 j + c 2 y 2 j + ... + c m y mj c j 0

(2.85)

fabricarea produsului j nu este rentabil ntruct nu conduce la o majorarea valorii (profitului) produciei curente. Dac pentru toate operaiile secundare avem

zB j c j 0 , j = 1, n

(2.86)

atunci programul de fabricaie curent este optim. Acesta este, criteriul de optimalitate al algoritmului simplex. Dac z B j c j < 0 , atunci activitatea secundar j conduce la o majorare a profitului realizabil prin programul curent, egal cu ( z B j c j ). Dintre operaiile secundare j J rentabile n raport cu operaiile de baz se va alege acea operaie k care asigur cea mai mare vitez de cretere a valorii curente a produciei ( interpretarea criteriului de intrare n baz). O alt problem care se mai pune este stabilirea cantitii din produsul j care se poate realiza n condiiile date. Fabricarea unei cantiti din acest produs implic diminuarea produciei din produsele operaiilor de baz astfel:
B B B B B x1 = x1B y1 k , x 2 = x 2 y 2 k ,..., x m = x m y mk

(2.87)

Evident, desfurarea unei activiti la un nivel negativ este lipsit de sens economic. Astfel este necesar ca :
B xi = xiB yik 0 , i = 1, m

(2.88)

de unde obinem condiia:

0 = min

xiB

B i yik y B >0 ik

(2.89)

Presupunem c valoarea 0 se obine pentru indicele 1. Atunci:


xB B B xl = xlB 0 ylk = xlB l ylk =0 B ylk

(2.90)

Ca urmare, operaia l nu va mai fi folosit, iar n locul ei se va utiliza operaia k, care asigur creterea maxim a valorii curente a produciei i, implicit, maximizeaz profitului firmei. 40

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Aceasta este interpretarea a criteriului de ieire din baz al algoritmului simplex. Cazul optimului infinit, ca soluie a problemei de programare liniar, nu este semnificativ din punct de vedere economic.
2.4. Dualitatea n programarea liniar

2.4.1. Problema dual. Fundamente teoretice.

Problema dual Dualitatea n programarea liniar ocup un rol important att din punct de vedere teoretic ct i din punct de vedere practic. Pe teoremele de dualitatea se bazeaz muli algoritmi de rezolvare a problemelor de programare liniar. Fie problema de programare liniara dat sub forma general numit problema primal :
a11 x1 + a12 x 2 + a13 x3 b1 a x + a x + a x = b 21 1 22 2 31 3 2 a31 x1 + a32 x 2 + a33 x3 b3 x 0 ; x arbitrar ; x 0 2 3 1 min c x + c x + c 1 1 2 2 3 x3

problema primal

(2.91)

Numim problem dual a problemei de programare liniara urmtoarea problema de programare liniara:
max b u + b u + b u 1 1 2 2 3 3 a11 u1 + a 21 u 2 + a31 u 3 c1 a12 u1 + a 22u 2 + a32u 3 = c2 a13 u1 + a 23 u 2 + a33 u 3 c3 u1 0 ; u 2 arbitrar ; u 3 0

problema dual

(2.92)

Observm c duala problemei dualei este chiar problema primal. Datorit legturii strnse ce se stabilete ntre aceste probleme care sunt duale una celeilalte, vom spune ca problema (2.91) i problema (2.92) formeaz un cuplu de probleme duale. Problema dual se obine din problema primal folosind urmtoarele transformri : Termenii liberi din problema primal devin coeficieni ai funciei obiectiv din problema dual. Coeficienii funciei obiectiv din problema primal devin termeni liberi n problema dual. O problem de maximizare primal devine problem de minimizare dual. Matricea coeficienilor din problema dual este transpusa matricei coeficienilor din problema primal Variabilele duale corespunztoare unor restricii concordante din problema primal sunt nenegative, iar cele corespunztoare unor restricii primale neconcordante sunt nepozitive. Variabilele primale negative le corespund n problema dual restricii concordante, iar variabilelor primale pozitive le corespund n problema dual restricii neconcordante.

41

Programare liniar

- Variabilele duale corespunztoare restriciilor primale care sunt ecuaii, pot fi de semn oarecare. - Variabilelor primale oarecare le corespund restricii duale care sunt ecuaii. Exemplul 2.7 Determinai duala problemei de programare liniar: f = max(2x1 5x2 + 4x3)

x1 x2 + 4 x3 7 x 5x + 3x = 6 2 1 3 x1 + 2 x3 3 x3 + 2 x1 5x2 8 x1 0, x2 oarecare, x3 0
Conform regulilor de mai sus vom avea: duala este de minim deoarece primala este de maxim; variabilele dualei vor fi: corespunztoare restriciei: x1 x2 + 4x3 7 u1 corespunztoare restriciei: x2 5x1 + 3x3 = 6 u2 u3 corespunztoare restriciei: x1 + 2x3 3 corespunztoare restriciei: x3 + 2x1 - 5x2 8 u4 funcia obiectiv a dualei va fi produsul dintre termenii liberi ai restriciilor primalei cu variabilele corespunztoare din dual: g = 7u1 + 6u2 + 3u3 + 8u4 duala va avea 3 restricii, cte variabile are primala, ele obinndu-se astfel: Prima restricie (asociat variabilei x1) - termenul stng al restriciei se obine nmulind coeficienii variabilei x1 din cele 4 restricii ale primalei cu variabilele corespunztoare acestora din dual: u1 5u2 + u3 + 2u4 - termenul liber al restriciei va fi coeficientul lui x1 din funcia obiectiv a primalei, adic b1 = c1 = 2 - deoarece variabila corespunztoare acestei restricii, x1, este negativ, restricia va fi neconcordant i deoarece duala este problem de minim rezult c va fi cu . n concluzie, prima restricie va fi: u1 5u2 + u3 + 2u4 2 Analog se vor determina i celelalte dou restricii: -u1 + u2 - 5u4 = -5 4u1 + 3u2 + 2u3 - u4 4 restriciile de semn ale variabilelor dualei vor fi: u1 0, deoarece restricia corespunztoare este neconcordant; u2 oarecare, deoarece restricia corespunztoare este egalitate; u3 0, deoarece restricia corespunztoare este concordant; u4 0, deoarece restricia corespunztoare este neconcordant. n final, problema dual este: (min) 7u1 + 6u2 + 3u3 + 8u4 u1 5u 2 + u 3 + 2u 4 4 u1 + u 2 5u 4 = 5 4u + 3u + 2u u 4 2 3 4 1

u1 0, u2 oarecare, u3 0, u4 0 42

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Exemplul 2.8 S se scrie duala problemei de programare liniar dat n form canonic: max (3 x1 + 2 x 2 + 5 x3 + x 4 ) x x + 3 x + x 15 1 2 3 4 2 x1 x3 x 4 5 x + 2 x x 10 3 4 2 x1 ,..., x 4 0 Se construiete tabelul cu datele problemei iniiale:
max min u1 u2 u3 3 1 2 0 x1 2 -1 0 1 x2 5 3 -1 2 x3 1 1 -1 -1 x4 15 5 10

Aadar, problema dual este:


min (15u1 + 5u 2 + 10u 3 ) u + u 3 2 1 u1 + u 3 2 3u1 u 2 + 2u 3 5 u1 u 2 u 3 1 u1 , u 2 , x3 0

Fundamente teoretice Fr a restrnge din generalitate ne vom ocupa n continuare de cuplul de probleme duale (2.91) - (2.92), prima fiind considerat problema primal, iar cea de-a doua, problema dual. Se noteaz P = x R n Ax = b, x 0

D = u R A u c, u 0

(2.93) 2.94)

Mulimile soluiilor admisibile (sau programelor) ale problemei primale (2.91), respectiv, duale (2.92). Teorema 2.8. Dac x P i u D , atunci c T x b T u . Teorema 2.9. Fie x * P , u * D i c T x * b T u * . Atunci x* nu este soluie optim a problemei primale, iar u* este soluie optim a problemei duale Propoziia 2.1. Dac L este o matrice antisimetric (LT = -L), atunci sistemul de inegaliti liniare

43

Programare liniar

l t 0 t 0

(2.95)

are cel puin o soluie t astfel nct L t > 0 (2.96)

Teorema 2.10. (Teorema fundamental a dualitii) Fie cuplul de probleme duale (2.91) (2.92). Atunci una i numai una din urmtoarele situaii este posibil : a) Ambele probleme au soluii admisibile. n acest caz, ambele probleme au soluii optime i valori optime ale funciilor obiectiv sunt egale. b) Una din probleme are soluii admisibile, iar cealalt nu are (este incompatibil). n acest caz, problema compatibil are optim infinit. c) Nici una dintre probleme nu are soluii admisibile. Teorema 2.11. (Teorema ecarturilor complementare). Fie cuplul de probleme duale canonice (2.91) - (2.92). Atunci x P i u D sunt soluii optime pentru cele dou probleme dac i numai dac:
T u A x b = 0 T T u c A u = 0

( (

(2.97)

Exemplul 2.9 ntr-un atelier mecanic se produc dou de tipuri de piese P1, P2. Timpii unitari de prelucrarea celor dou piese pe cele dou maini unelte M1, M2, profitul unitar i disponibilul de timp al mainilor unelte sunt date n tabelul de mai jos:
P1 M1 M2 Profit unitar 4 1 3um P2 3 2 7um Disponibil resurse 16sp 6sp

Modelul matematic pentru problema dat este:

f = max(3 x1 + 7 x 2 ) 4 x + 3 x 16 1 2 x1 + 2 x 2 6 x1 , x 2 0
Mulimea soluiilor admisibile ale problemei (primale) este reprezentat n fig. 2.6. Problema admite soluia optim x1 = 0 , x 2 = 3 , pentru fiecare funcia obiectiv are valoarea f max = 21 .
* *

44

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie


x2

d1

C(0,3)

B( 1 4/5,8/5) d2 0 A(4,0) x1

Fig.2.6 Problema dual este:

g = min(16 u 1 + 6 u 2 ) 4u + u 3 1 2 3u 1 + 2u 2 7 u 1 , u 2 0
Mulimea soluiilor admisibile ale problemei duale este reprezentat n fig.2.7.
u2 d2 d1

A(0,3/4)

B(0,7/2)

u1

Fig.2.7 Problema admite soluia optim u 1 = 0 , u 2 = 7 / 2 .Valoarea funciei obiectiv este g min = 21 , evident aceeai ca i n cazul problemei primale. Din cele artate se constat c prin rezolvarea uneia dintre cele dou probleme duale se poate determina i soluia celeilalte. Tabelul simplex final corespunztor uneia dintre probleme conine componentele soluiilor optime ale ambelor probleme. Aceste rezultate teoretice se utilizeaz n practica industrial n cazul cnd planul de producie conine o varietate mare de produse ce se fabric n aceleai condiii tehnico economice.
2.4.2. Algoritmul simplex dual
* *

Fie problema de programare liniar n forma standard


min c T x Ax = b x 0 n unde x, c R , b R m , A M mn , cu rang A = m < n.

(2.98)

45

Programare liniar

Duala acestei probleme este :


max b T u ' A u c u arbitrar

(2.99)

Definiia 2.9 O baz B format cu m coloane liniar independente a lui A se numete dual admisibil dac sunt satisfcute condiiile zB j c j 0, j = 1, n Propoziia 2.2. Dac B este o baz dual admisibil, atunci
T 1 uB = cT BB

(2.100)

(2.101)

este o soluie a problemei duale (2.98). Teorema 2.12. (Teorema de optimalitate). Fie B o baz dual admisibil pentru problema primal (2.98). Fie mulimea I _ = i I x i < 0 I_=, atunci soluia de baz asociat bazei B, x = B 1b , este o soluie optim a problemei (2.98). Teorema 2.13. (Teorema de incompatibilitate a problemei primale). Fie B o baz dual admisibil pentru problema primal (2.92), iar I_, Deci exist i I _ astfel nct B 0, j J , atunci problema (2.92) nu are soluii. y ij Teorema 2.14. (Teorema de mbuntire a soluiei) Fie B o baz dual admisibil pentru problema primal (4.29), iar I_. Dac pentru orice i I _ exist j J astfel nct B y ij < 0 , i dac se alege l I _ arbitrar, iar k J astfel nct s fie satisfcut condiia :
B B zj cj z k ck = min B B j y lk y lj B <0 ylj
B

(2.102)

atunci matricea B obinut din B prin nlocuirea coloanei A(l) cu coloana A(k) este o baz dual admisibil, iar programul dual asociat uB este cel puin la fel de bun ca programul uB Algoritmul simplex dual Pentru problema primal de minimizare sau maximizare este: Pasul 1. Se determin o baz dual admisibil iniial B.
B Pasul 2. Se calculeaz x , z , y B j , z j , c j , j = 1, n . B B

46

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Pasul 3. Se determin mulimea


I _ = i I xi < 0

Dac I_, atunci STOP : x urmtor.

este program optim al problemei; astfel se trece la pasul

Pasul 4. Se determin indicele k I _ cu criteriul de ieire din baz

min x i = x l
iI _

{}
B

B Dac y ij 0, j = 1, n , atunci STOP : problema nu are soluii; astfel se determin indicele

k J cu criteriul de intrare n baz:


B zj cj min B j y lj B <0 ylj B z k ck = B y lk

Pasul 5. Fie baza B obinut din B prin nlocuirea coloanei A(l) cu coloana A(k). Se trece la Pasul 2, nlocuind peste tot baza B cu baza B.

Algoritmul simplex dual poate fi exprimat sintetic sub forma schemei logice din fig.2.8
START

Construieste tabel simplex initial

Exista variabile de baza cu valori negative ? Da Determina linia pivotului

Nu

Indica solutia optima

STOP

Exista valori negative in linia pivotului? Da Determina coloana pivotului

Nu

Nu exista solutii

STOP

Calculeaza un nou tabel simplex

Fig.2.8

47

Programare liniar

Exemplul 2.10 S se rezolve problema de programare liniar:


max( 3 x1 2 x 2 ) x 2 x + 3x 4 1 2 3 2 + x x x 2 3 2 1 x1 , x 2 , x3 0

Se aduce problema la forma standard prin introducerea variabilelor de compensare x4, x5 i se nmulesc cu 1 cele dou restricii:
max( 3x1 2 x 2 ) x + 2 x 3 x + x = 4 1 2 3 4 2 x1 x 2 + x3 + x5 = 2 x1 ,..., x5 0

Baza iniial B este matricea unitate format cu coloanele A(4), A(5) . Tabelul simplex asociat are ca variabile de baz pe x4 i x5:
-3 -2 cB 0 0 V.B. V.V.B. x1 x2 x4 -1 2 -4 x5 -2 -2 -1 3 2 0 0 x3 -1 1 0 0 x4 1 0 0 0 x5 0 1 0

Baza iniial este dual admisibil deoarece z B j c j 0 . Se poate aplica deci algoritmul simplex dual. Soluia asociat bazei B admisibil ntruct: x1 = x 2 = x 3 = 0 , x 4 = 4 , x 5 = 2 . Mulimea I _ = {4,5} . Conform criteriului de ieire din baz avem:
min x i = min{ 4,2} = 4 = x 4 ; se obine l = 4 , deci din baz va iei vectorul A(4).
B B iI _

{}

Conform criteriului de intrare n baz avem:


B zj cj min B j B <0 y4 y4 j j

3 0 zB c , =0= 3 B 3 ; = min j y43 y4B j <0 1 1

se obine k = 3, deci n baz va intra vectorul corespunztor variabilei x3. Noul tabel simplex este:
-3 -2 cB 0 0 V.B. V.V.B. x1 x2 x4 1 -2 4 x5 -6 -3 1 3 2 0 0 x3 1 0 0 0 x4 -1 1 0 0 x5 0 1 0

48

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Soluia nu este optim ntruct x 5 = 6 . Din baz va iei vectorul corespunztor variabilei x3=5 i va intra vectorul corespunztor variabilei x1. Se obine tabelul simplex :
-3 -2 cB 0 0 0 0 x5

V.B. V.V.B. x1 x2 x3 x4 x4 0 -5/3 1 -2/3 1/3 2 x 1 -1/3 0 -1/3 -1/3 -3 5 2 1 0 1 0 0 3

2.4.3 Interpretarea economic a dualitii

Introducerea dualitii este motivat din mai multe puncte de vedere:


Teoretic. Una din problemele centrale ale programrii matematice este caracterizarea situaiilor n care exist optimul unei probleme i gsirea unor metode prin care s recunoatem optimalitatea unei soluii. Teorema fundamental a dualitii i teorema ecarturilor complementare reprezint rezultate chiar n acest sens, n care se folosete dualitatea. Practic. Putem rezolva o problem rezolvnd problema dual a acesteia sau cunoscnd soluia dualei. n unele cazuri, rezolvarea dualei este mult mai uoar dect rezolvarea primalei, de exemplu cnd numrul de restricii al primalei este mai mare dect numrul de variabile al acesteia sau cnd primala necesit mai multe variabile suplimentare dect duala. Economic. n cele mai multe probleme economice, a cror rezolvare se face printr-un model de programare liniar, soluia dualei aduce o serie de informaii suplimentare despre problema studiat. Semnificaia economic a soluiei dualei depinde de specificul problemei i trebuie gsit de la caz la caz. Avnd n vedere c max[f(x)] = min [g(u)], rezult c, dac, cantitatea disponibil din resursa Ri crete cu o unitate, atunci valoarea funciei obiectiv crete cu ui, deci ui msoar creterea valorii funciei obiectiv determinat de creterea cu o unitate a cantitii disponibile bi. Aceste evaluri obinute dintr-un program optim au fost denumite n literatura de specialitate "preuri umbr"(shadow price). Preul umbr ui arat cu ct se modific funcia obiectiv a problemei duale, atunci cnd termenul liber al restriciei Ri se "relaxeaz" cu o unitate. A "relaxa" are semnificaia de a spori cantitatea disponibil bi a unei resurse deficitare sau, pentru restriciile de tip calitativ cu

limit inferioar impus ( a ij x j bi), de a reduce nivelul termenului liber bi.


j=1

Este evident c, dac o resurs nu este utilizat n ntregime pentru satisfacerea programului optimal xB ( a ij x j < bi), atunci ui = 0 iar funcia obiectiv nu este afectat de
j=1 n

sporire a cantitii disponibile bi. Preurile umbr (preuri duale) aduc informaii suplimentare pentru analiza eficienei economice a resurselor i a diferiilor indicatori economici sau tehnici care apar n restriciile unei probleme de programare liniar. Pe baza lor se pot fundamenta deciziile privind alocarea judicioas a resurselor, se pot stabili msuri de stimulare a consumului raional al resurselor, se determin ct mai corect nivelul minim i maxim al diferiilor indicatori tehnici i economici de care depinde structura planului optim. 49

Programare liniar

Soluia optim obinut prin utilizarea datelor iniiale poate constitui un punct de plecare pentru analiza economic privind alocarea eficient a resurselor. Pentru problemele n care se cere maximizarea funciei f(x), indicatorii zj reprezint costul unitar de fabricaie al produsului j, rezultat din evaluarea coeficienilor aij prin preurile umbr ataate restricii1or. Rezult c, prin calcularea diferenei zj-cj, se compar acest cost unitar cu coeficientul cj (pre unitar, beneficiu unitar etc.) din funcia obiectiv. Dac exist diferene negative (zj-cj < 0) nseamn c, la activitile respective, preul umbr al produsului j (costul unitar de fabricaie exprimat n indicatori ui) este mai mic dect venitul realizat i de aceea activitatea aj este eficient. Aa se explic faptul c va intra n baz vectorul a(k) ce corespunde diferenei (zj-cj) minime. n momentul n care toate diferenele sunt pozitive (zj-cj 0) rezult c nu mai exist activiti eficiente i prin urmare soluia de baz analizat este optim. n cazul problemelor de minim, indicatorii zj se pot interpreta ca venituri, exprimate n preurile umbr ale restriciilor, ce se obin prin realizarea unei uniti din produsul j. Prin urmare, dac exist diferene pozitive (zj-cj > 0), activitile aj corespunztoare sunt eficiente, deoarece se realizeaz un venit unitar mai mare dect costul unitar de fabricaie (zj > cj). De aceea, va intra n baz activitatea ak, corespunztoare diferenei maxime, iar soluia de baz se consider optim atunci cnd toate diferenele (zj-cj) sunt nepozitive .
Exemplul 2.11 O firm fabric trei tipuri de produse P1, P2, P3, utiliznd patru tipuri de resurse R1, R2, R3, R4. Procesul tehnologic de realizare a celor trei produse, timpul disponibil al fiecrei resurse, cererea minim i maxim din fiecare produs conform studiului de marketing, precum i profitul unitar sunt date n tabelul 2.5.

Tabelul 2.5
Produs Cerere Timp de prelucrare pe unitatea de produs
SN 400

min

max

R1

FU32

R2

RU320

R3

Banc de control

R4

Profitul unitar um/buc

P1 20 200 P2 0 100 P3 70 180 Timp disponibil pe resurs

0.10 0.12 0.15 36

0.06 0.05 0.09 30

0.18 0 0.07 37

0.13 0.10 0.08 38

10 12 15 -

S se determine programul de producie astfel nct s se asigure satisfacerea cererii cu un profit total maxim. Not m cu x1, x2 x3 variabilele de decizie ce reprezint cantitile din produsele P1, P2 respectiv P3 ce trebuie fabricate astfel nct s se ating obiectivul propus. Modelul matematic liniar al problemei cuprinde restriciile problemei, ce provin din limitarea disponibilitii resurselor i a cererii produselor pe pia, funcia obiectiv ce maximizeaz profitul total i condiiile de nenegativitate care sunt evidente din punct de vedere economic. Modelul matematic al problemei este urmtorul:

50

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

f = max(10 x1 + 12 x 2 + 15 x3 ) 0.1x + 0.12 x + 0.15 x 36 1 2 3 0.06 x1 + 0.05 x 2 + 0.09 x3 30 0.18 x1 + 0.07 x 2 37 0.13 x1 + 0.1x 2 + 0.08 x3 38 20 x1 200 0 x 2 100 70 x3 180 x1 , x 2 , x 3 0 Programul de producie este dat de variabilele de decizie i este urmtorul: x1 = 135 x 2 = 100 x3 = 70 F .O. = 3.600u.m Din produsul P1 se produc 135 uniti, din produsul P2 se produc 100 uniti, din produsul P3 se produc 70 uniti. n aceste condiii valoarea funciei obiectiv este de 3.600 uniti monetare. Variabilele de compensare (ecart) arat utilizarea resurselor astfel: Y1 = 100 - pre umbr x4 = 0, 0.1 135 + 0.12 100 + 0.15 70 = 36 = 36 Prima restricie este satisfcut cu semnul = ceea ce nseamn c resursa R1 este utilizat n totalitate, deci R2 este o resurs rar resurs a crei lips / indisponibil ar limita sau modifica. n acelai timp dac n prima restricie mrim timpul disponibil cu o unitate (din 36u.t. la 37u.t.), valoarea F.O. se modific n sens pozitiv tocmai cu valoarea preului umbr, deci profitul va fi de 3.700 u.m. Y2 = 0 - pre umbr x5 = 10.6 0.06 135 + 0.05 100 + 0.09 70 = 19.4 < 30 cu 10.6 u.t. A doua restricie este satisfcut cu semnul <, deci din resursa R2 rmne un timp disponibil de 10.6 u.t. care nu este utilizat n procesul de producie, astfel resursa R2 nu este o resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul. Y3 = 0 - pre umbr x6 = 5.7 0.18 135 + 0.07 100 = 31.3 < 37 cu 5.7 u.t. A treia restricie este satisfcut cu semnul <, deci din resursa R3 rmne un timp disponibil de 5.7 u.t. care nu este utilizat n procesul de producie, astfel resursa R3 nu este o resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul. Y4 = 0 - pre umbr x7 = 4.85 0.13 135 + 0.1 100 + 0.08 70 = 33.15 < 38 cu 4.85 u.t. A patra restricie este satisfcut cu semnul <, deci din resursa R4 rmne un timp disponibil de 4.85 u.t. care nu este utilizat n procesul de producie, astfel resursa R4 nu este o resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul. Y5 = 0 - pre umbr x8 = 65 1 135 = 135 < 200 cu 65 uniti de produs P1.

51

Programare liniar

Restricia cinci este satisfcut cu semnul <, deci din produsul P1 rmn nevndute o cantitate de 65 uniti de produs (u.p), astfel P1 nu este o resurs rar deci are preul umbr nul. Y6 = 0 - pre umbr x9 = 115 1 135 = 135 > 20 cu 115 uniti de produs P1. Restricia ase este satisfcut cu semnul >, deci produsul P1 are o cerere maxim de 115 u.p., astfel P1 nu este o resurs rar deci are preul umbr nul. x10 = 0 Y7 = 0 - pre umbr 1 100 = 100 = 100 Restricia apte este satisfcut cu semnul = ceea ce arat c produsul P2 este vndut n totalitate deci este o resursa rar, deci preul umbr ar trebui s fie nenul. El totui este nul, lucru uor de explicat din teorema ecarturilor complementare: condiia necesar i suficient ca dou soluii admisibile X,Y s fie soluii optime respectiv la problema primal i dual este s fie simultan satisfcute relaiile: Y T ( P0 AX ) = 0 T (Y A C ) X = 0 Pentru ca un produs s fie zero este necesar ca un termen sa fie zero sau ambii egali cu zero. Prin creterea cu o unitate a restriciei n loc de 100 s avem 101 valoarea funciei obiectiv rmne aceeai F.O.=3.600u.m. Y8 = 0 - pre umbr x11 = 110 1 70 = 70 < 180 cu 110 uniti de produs P3 Restricia opt este satisfcut cu semnul <, deci din produsul P3 rmn nevndute o cantitate de 110 uniti de produs (u.p), astfel P3 nu este o resurs rar deci are preul umbr nul. Y9 = 0 - pre umbr x12 = 0 1 70 = 70 = 70 Restricia apte este satisfcut cu semnul = ceea ce arat c produsul P3 este vndut n totalitate i cererea maxim este corect deci este o resursa rar, deci preul umbr ar trebui s fie nenul. El totui este nul, lucru uor de explicat din teorema ecarturilor complementare. Prin creterea cu o unitate a restriciei n loc de 70 s avem 71 valoarea funciei obiectiv rmne aceeai F.O.=3.600u.m. n concluzie acelai plan de producie se putea face, cu acelai profit i dac restriciile problemei erau urmtoarele: f = max(10 x1 + 12 x 2 + 15 x3 ) 0.1x + 0.12 x + 0.15 x 36 1 2 3 0.06 x1 + 0.05 x 2 + 0.09 x3 19.4 0.18 x1 + 0.07 x 2 31.3 0.13 x1 + 0.1x 2 + 0.08 x3 33.15 115 x1 135 0 x 2 100 65 x3 70 x1 , x 2 , x 3 0

52

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

CAPITOLUL 3 PROGRAMAREA LINIAR DE TIP TRANSPORT


3.1. Formularea unei probleme de transport

Se consider c un produs este disponibil n m centre productoare (fabrici, depozite) notate cu Pi (i = 1,m ). Acest produs trebuie transportat la n centre consumatoare (de desfacere, destinatari), notai cu C j

j = 1, m ) .

Transportul se poate efectua de la orice Pi la orice C j

j = 1, m ) , iar costul unitar

de transport este ci j . Acest cost depinde de distantele respective, de mijloacele de transport folosite i altele, ceea ce se presupune cunoscut. Se cunosc de asemenea i cantitile disponibile, aflate n cele m centre productoare, notate cu a i cu (i = 1, m ) i cantitile necesare n cele n centre consumatoare, notate b j cu

( j = 1, n ) .

Se noteaz cu xi j , cantitatea transportat n condiiile de mai sus iar datele problemei de transport sunt sintetizate conform tabelului 3.1 ce este prezentat mai jos: Tabelul 3.1
Pi Cj P1 C1 c11 c21 ci1 C2 c12 c22 ci 2 Cj c1 j c2 j cij cmj bj Cn c1n c2 n cin cmn bn ai a1 a2 ai am

P2 Pi Pm bj

cm1 cm 2 b1 b2

Caracteristicile unei probleme de transport clasice sunt: - fiecare centru productor aprovizioneaz cel puin un centru consumator i fiecare centru consumator este aprovizionat de la cel puin un centru productor; - pot exista perechi productor - consumator ntre care nu se poate face transfer; - nu exist limitri n ceea ce privete cantitatea transportat pe fiecare rut; - fiecrei rute i s-a asociat un cost care nu depinde de sensul de parcurgere. Obiectivul problemei de transport este gsirea cantitilor care trebuie transportate pe fiecare rut astfel nct s se asigure necesarul fiecrui centru consumator, n limitele cantitilor aflate n centru productor, i aceasta cu costuri minime.
Teorema 3.1 : O problem de transport echilibrat admite ntotdeauna programe (soluii); orice program este mrginit dac valorile sale a i , b j sunt mrginite (finite ). Numim model matematic echilibrat, dac cantitatea disponibila total este egal cu cererea total. Modelul matematic de mai sus se poate nlocui cu un model echivalent n care toate restriciile sunt ecuaii.

In forma sa matematic modelul problemei de transport se poate scrie ca n relaia 3.1.

53

Programare liniar de tip transport

m n 1 ci j xi j min i =1 j =1 _____ n 1 xi j a i , i 1, m j =1 m _______ xi j b j , j 1, n 1 i =1 m, n 1 a i > b j , a i 0 , b j 0 j =1 i =1

(3.1)

Astfel n urma acestor transformri se va obine urmtorul model matematic echilibrat (3.2):
m n 1 min ci j xi j i =1 j =1 _____ n 1 xi j = a i , i 1, m j =1 m _______ xi j = b j , j 1, n 1 i =1 xi j 0

(3.2)

Orice problem poate fi transformat ntr-o problem de tipul (3.2). Acest caz este foarte rar n practic, ns el este cel mai simplu din punct de vedere matematic i astfel va fi ales pentru formalizarea problemei. O astfel de problem se numete problem de transport echilibrat. In practic pot exista urmtoarele cazuri: Dac ai < b j , se poate aduga un depozit fictiv Pm+1 care are un disponibil
i =1 j =1 m n

a m +1 , astfel nct costurile de transport de la depozitul Pm+1 la centrele C j sunt nule.

Daca ai > b j , se poate aduga un centru fictiv C n +1 ce necesita bn +1 uniti,


i =1 j =1

astfel nct costurile s fie nule. Numrul total de restricii este de m+n i sunt o combinaie liniar de celelalte, deci numrul celor independente este de m+n-1. Orice problema de transport admite soluii admisibile, adic sistemul de ecuaii este compatibil. O astfel de problema are soluia urmtoare :
xi j = ai b j

a
i =1

(3.3)
i

Aplicarea algoritmului simplex este dificil n acest caz datorit numrului foarte mare de necunoscute i a determinrii soluie admisibile de baz. ntr-o problem de transport nu poate aprea dect varianta de optim finit, existnd ntotdeauna soluii admisibile, iar minimul nu este posibil, innd cont c avem de minimizat o funcie liniar cu toi coeficienii pozitivi pe o mulime de soluii cu toate componentele pozitive. 54

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Algoritmul specific problemelor de transport au urmtoarele etape: 1. Se determin o soluie admisibila de baza de pornire X, prin folosirea uneia din urmtoarele metode : coltului N-V, metoda costului minimal, metoda costului minim pe linie, metoda costului minim pe coloan. 2. Determinarea soluiei optime pornind de la soluia X.
3.2. Exemple de probleme de tip transport

Probleme de transport cu capaciti limitate

Se consider o problem de tip transport n care exist limitri ale capacitilor de transport pe anumite rute. Se noteaz cu ij > 0 capacitatea maxim ce poate fi transportat pe ruta de la centru productor i la centrul consumator j. Modelul matematic al acestei probleme, cu pstrarea semnificaiilor notaiilor cunoscute, este urmtoarea:
m n min( cij xij ) i =1 j =1 n x = a , i = 1, m ij i j =1 m xij = b j , j = 1, n i =1 0 xij ij , i = 1, m, j = 1, n

(3.4)

Condiiile necesare i suficiente de existena a soluiilor pentru problema (3.4) sunt:


n m ai = b j j =1 i =1 n ij ai , i = 1, m j =1 n ij b j , j = 1, n j =1

(3.5)

Acestei probleme i se poate asocia un tabel de forma celui de la problema de transport, n care se specific i capacitile maxime de transport ij , i = 1, m, j = 1, n . Tabelul 3.2
Pi / Cj P1 ... Pi ... Pm bj Cl c1l 1l x1l ... cil il xil ... cml ml xml bl ... Cj ... Cn c1n 1n x1n ... cin in xin ... cmn mn xmn bn ai al ... ai ... am ... c1j ... 1j x1j ... ... ... ... cij ij xij ... ... ... ... cmj ... mj xmj ... ... bj

55

Programare liniar de tip transport

Probleme de transport cu centre intermediare

n practica industrial exist cazuri n care transportul direct de la un centru productor la un centru consumator nu este economic. Ca urmare, el poate trece prin mai multe centre intermediare, de tranzit, o astfel de problem numindu-se problem de transport cu centre intermediare sau problem de transfer. Se consider p centre intermediare i se noteaz cu k , k = 1, p , capacitile acestora. Modelul matematic al acestei probleme are forma:
p n m p ' ' '' '' + min( c x c kj x kj ) ik ik i =1 k =1 k =1 j =1 p ' = ai , i = 1, m xik k =1 m x ' = , k = 1, p k ik i =1 n '' x kj = k , k = 1, p j =1 n '' x kj = b j , j = 1, n k =1 ' '' xik , x kj 0, i = 1, m, k = 1, p, j = 1, n

(3.6)

unde: ' xik - reprezint cantitatea ce urmeaz a fi transportat de la centrul productor i la centrul intermediar k ; ' cik - costul unitar de transport dintre centrele i i k ;
'' x kj - cantitatea ce urmeaz a fi transportat de la centrul k la centrul consumator j ; '' c kj - costul unitar de transport dintre centrele k i j. Condiia necesar i suficient de existen a soluiilor pentru problema (3.6) este:
m p n

a =
i i =1 k =1

= bj
j =1

(3.7)

Avnd n vedere faptul c fiecare intermediar este att centru destinaie ct i centru surs, se pot considera urmtoarele dou probleme de transport:
m p ' ' cik xik ) min(i =1 k =1 p x ' = a , i = 1, m ik i k =1 m ' xik = k , k = 1, p i =1 ' xik 0, i = 1, m, k = 1, p

(3.8)

56

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

i
p n '' '' min( c kj x kj ) k =1 j =1 n x '' = , k = 1, p kj k j =1 p '' x kj = b j , j = 1, n k =1 '' x kj 0, k = 1, p, j = 1, n

(3.9)

Se poate arta c x ik i x kj reprezint o soluie optim a problemei de transport cu centre intermediare (3.6) dac i numai dac x ik
'

( ) ( )
' ''

transport (3.8), iar x kj este o soluie a problemei de transport (3.9). n consecin, rezolvarea problemei (3.6) este echivalent cu rezolvarea celor dou probleme (3.8) i (3.9).

( )
''

( ) este o soluie optim a problemei de

Probleme de repartiie
ntr-un atelier mecanic exist m utilaje, care au disponibilul de timp a i , i = 1, m . Pe acestea se vor prelucra n tipuri de piese, n cantitile b j , i = 1, n . Se cunosc randamentul orar, rij , i cheltuielile de producie, cij , la utilajul i ale piesei j. Se pune problema de a determina o repartiie a sarcinilor, respectiv a timpului n care utilajul i prelucreaz piesele de tip j astfel nct cheltuielile totale de producie sa fie minime. Se noteaz cu xij numrul de ore n care utilajul i prelucreaz piesele de tip j. Modelul matematic al problemei este de forma (3.10):
m n min( cij xij ) i =1 j =1 n x a , i = 1, m i ij j =1 m rij xij = b j , j = 1, n i =1 xij 0, i = 1, m, j = 1, n

(3.10)

3.3.

Determinarea unei soluii de baza iniiale a problemei de transport.

Soluia admisibile de baza iniiale, care are cel mult (m+n-1) componente nenule, este o soluie nedegenerat. Dac numrul soluiilor este mai mic dect (m+n-1) soluia este degenerat.

Metoda colului Nord-Vest (NV)


Aceast metod se mai numete Metoda diagonalei principale sau Metoda lui Dantzing. Metod nu ine cont de costurile de transport cij i numai de cantitile disponibile n centrele productoare i cererea centrelor consumatoare. 57

Programare liniar de tip transport

Etapele metodei:
Se alege x11 = min (a1b1 ) ( (1,1) fiind colul stnga sus NV). Sunt posibile urmtoarele cazuri: 1) min(a1 , b1 ) = a1 x11 = a1 , iar x1 j = 0, j = 1, n . Necesarul centrului C1 devine b1 a1 .

2) min(a1 , b1 ) = b1 x11 = b1 , iar xi1 = 0, i = 1, m . Disponibilul centrului P1 devine a1 b1 . 3) a1 = b1 x11 = a1 = b1 , iar x1 j = 0, j = 1, n i xi1 = 0, i = 1, m . Se elimin de sus n jos sau de la stnga la dreapta prima linie respectiv prima coloan din tabel. Urmtoarele componente strict pozitive ale soluiei de baz iniiale se determin n mod analog, considernd colul NV rmas dup eliminarea anterioar.

Exemplul 3.1 : Pentru problema de transport ale crei date sunt centralizate n tabelul 3.3 s se determine soluia de baz iniial utiliznd metoda lui Dantzing.
Tabelul 3.3 Q3 Q4 5 3 11 5 9 11 1 2 8 9 7 30

Q1 P1 P2 P3 7 2 6 5

Q2 8 4 3 9

Notm cu xij cantitile ce urmeaz a fi transportate n condiiile indicate n tabelul iniial. Pasul 1 Problema dat poate fi scris ca n tabelul 3.4. ' min(a1 , b1 ) = b1 x11 = min(11,5) = 5 , iar xi1 = 0, i = 1, m i a1 = a1 b1 = 11 5 = 6 (tab.3.5)
x11 x 21 x 31 5 x12 x 22 x32 x13 x 23 x33 x14 x 24 x 34 7 11 11 8 5 0 0 0 x12 x 22 x 32 9 x13 x 23 x33 x14 x 24 x 34 6 11 8

9 9 tabelul 3.4

9 7 tabelul 3.5 x1 j = 0, i = 1, m

Pasul 2 Calculm:

min(a1 , b2 ) = a1

x12 = min(6 ,9 ) = 6 , iar x 22 = min(11,3) = 3 , iar

' b2 = b2 a1 = 9 6 = 3 (tab.3.6)

Pasul 3 Calculm: min(a 2 , b2 ) = b2


' a2

xi 2 = 0, i = 1, m i

= a 2 b2 = 11 3 = 8 (tab.3.7)

5 0 0 0

6 x 22 x 32 3

0 x 23 x33 9

0 x 24 x 34 7

0 11 8

5 6 0 3 0 0 0 0

0 x 23 x33 9

0 x 24 x34 7

0 8 8

58

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

tabelul 3.6 Pasul 4 Calculm: min(a 2 , b3 ) = a 2


'' b2 = b3 a 2 = 9 8 = 1 (tab.3.8)

x 23

tabelul 3.7 = min(8,9) = 8 , iar

x 2 j = 0, i = 1, m

i i

Pasul 3 Calculm:
' a3

min(a3 , b3 ) = b3

x33 = min(8,1) = 1 , iar

xi 3 = 0, i = 1, m

= a3 b3 = 8 1 = 7 (tab.3.9)
5 6 0 3 0 0 0 8 x33 0 0 x34 0 0 8 5 6 0 0 0 0 3 8 0 0 0 0 1 7 0 0 0 0 0 tabelul 3.9

0 0 1 7 tabelul 3.8

Soluia admisibila de baza X este data de tabelul 3.9 . Dac notm cu V(X) valoarea funciei de optimizat a problemei date, pentru soluia admisibil X, avem: V(X) = 7*6 + 8*6 + 3*4 + 8*5 + 1*1 + 7*2 =150

Metoda costului minimal


Metod ine cont att de costurile de transport cij ct i de cantitile disponibile n centrele productoare i cererea centrelor consumatoare.

Se alege clk = min cij . Se determin x lk = min(al , bk ) Sunt posibile urmtoarele cazuri:

( )

1) min(al , bk ) = al x lk = al , iar xlj = 0, j = 1, n . Necesarul centrului Cj devine bk al . 2) min(al , bk ) = bk x lk = bk , iar xik = 0, i = 1, m . Disponibilul centrului Pi devine al bk . 3) al = bk x lk = al = bk , iar xlj = 0, j = 1, n i xik = 0, i = 1, m . Se elimin de sus n jos sau de la stnga la dreapta linia respectiv coloan din tabel. Se determin n mod analog, considernd variabila de cost minim din subtabelul rmas dup eliminarea anterioar. Dac sunt mai multe costuri minime egale, atunci se ia n considerare mai nti variabile care ia valoare maxim.
3.4. Metoda de determinare a soluiei optime pentru probleme de transport. Metoda potenialelor.

Generaliti Rezolvarea problemei de transport prin metoda simplex este, n general, puin eficient. Cteva dintre motive sunt urmtoarele: - numrul mare de variabile, egal cu m, n - absena unei baze iniiale. Varianta de rezolvare prin considerarea unor variabile auxiliare pentru fiecare linie i coloan i aplicarea metodei celor dou faze este laborioas; - apariia frecvent a cazurilor de degenerare datorit numrului mare de elemente ale matricei coeficienilor A egale cu 0 i 1 . Metoda potenialelor reprezint o metod special de testare i mbuntire a soluiei unei probleme de transport.
59

Programare liniar de tip transport

Procesul de mbuntire a unei soluii const n a trece de la o soluie la o alta mai bun. Pentru aceasta se recurge la problema dual a problemei de transport i anume :
n m max ai u i + b j v j j =1 i =1 u i + v j cij , i = 1, m, j = 1, n ui arbitrar , i = 1, m v j arbitrar , j = 1, n

(3.11)

Conform teoremei ecarturilor complementare aplicat cuplului de probleme duale, rezult c soluia de baz x ij a problemei primale i soluia (u i , v j ) a problemei duale sunt optime dac i numai dac satisfac condiiile:
(cij u i v j ) x ij = 0, i = 1, m, j = 1, n )

(3.12)

Pentru ca relaia de mai sus s fie satisfcut este suficient ca (u i , v j ) s fie soluii ale sistemului

ui + v j = cij , (i, j ) J
n care s-a notat mulimea de indici J = {(i, j ) xij este variabila de baz }.

(3.13)

Propoziia 3.1 Sistemul de ecuaii are o infinitate de soluii. Dac (ui0 , v 0 j ) este o soluie particular i k o constant oarecare, atunci orice soluie a sistemului este de forma:
0 u i = ui + k , i = 1, m (3.14) 0 v = v k , j = 1 , n j j Pentru rezolvarea sistemului se poate fixa arbitrar una dintre necunoscute, fr a influena optimalitatea soluie problemei de transport; de obicei se alege ui = 0 . Observaie. Rezolvarea sistemului se poate efectua direct pe tabelul de rezolvare al problemei. Valorile variabilelor ui i v j se nscriu la marginile tabelului ; din acest motiv ele se mai numesc i valori marginale . Algoritmul metodei potenialelor

Pasul 1. Se determin o soluie de baz iniial ( x ij ) . Pasul 2. Se calculeaz valorile variabilelor duale ui i v j ca soluii ale sistemului de ecuaii
u i + v j = cij , (i, j ) J

Pasul 3. Se calculeaz valorile ij = ui + v j cij , (i, j ) J


Dac ij 0, (i, j ) J , atunci STOP: soluia ( x ij ) este optim; n caz contrar se trece la pasul 4 60

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Pasul 4. Se calculeaz cu criteriu de intrare n baz ij = max{ ij (i, j ) J } Variabila xlk ce va intra n baz . Se construiete pentru csua (l, k) un ciclu care pornete din csua (l, k), care trece numai prin csue (i, j) ocupate cu valori x ij > 0 , cu treceri alternative pe linii i coloane, i care revine la csua (l, k). Se adopt un sens oarecare de parcurgere al acestui ciclu i se numeroteaz csuele sale ncepnd cu csua (l, k). Pasul 5. Se calculeaz criteriul de ieire din baz = x st = min{x ij (i, j ) este csu de rang
par n ciclu }i se determin variabila x st va iei din baz.

Pasul 6. Se determin o nou soluie de baz admisibil (~ xij ) cu ajutorul formulelor de schimbare a bazei x ij , (i, j ) are rang par in ciclu ~ xij = x ij + , (i, j ) are rang impar in ciclu x ij , (i, j ) nu apartine ciclului
Se revine la pasul 2 cu noua soluie de baz obinut.

Observaii : 1) Soluia iniial de baz obinut la pasul 1 al algoritmului depinde de metoda folosit pentru determinarea ei. Aceasta nu influeneaz, soluia optim a problemei, ci eventual numrul de iteraii pentru obinerea soluiei optime.
2) Alegerea sensului de parcurgere al ciclului n cadrul pasului 4 al algoritmului este arbitrar. 3) Tabelele ce se vor construi la aplicarea algoritmului vor fi formate din csue (i, j) ce pot avea una din configuraiile
cij +(-) xij

cij

ij
xij=0

Prima indic o csu corespunztoare unei valori de baz ( xij > 0 ), iar cea de-a doua o csu corespunztoare unei valori nebazice ( xij = 0 ) , pentru care se calculeaz valoarea

ij .
Simbolurile + sau apar dac csua face parte din ciclul construit la pasul 4 al algoritmului. Simbolul + indic o csu de rang impar , iar simbolul indic o csu de rang par.

Exemplul 3.2 Fie date trei fabrici productoare (P1, P2, P3) ale aceluiai produs, care trebuie s aprovizioneze cu acest produs patru consumatori (C1, C2, C3, C4). n tabelul 3.10 sunt date cantitile disponibile n centrele productoare (ai), cantitile necesare n centrele consumatoare (bj) i costurile pe unitatea de transport. S se determine planul optim de transport n condiiile costurilor minime.
61

Programare liniar de tip transport

Tabelul 3.10
Pi / Cj P1 P2 P3 bj C1 8 4 3 15 C2 7 6 4 12 C3 3 7 2 14 C4 6 3 5 14 ai 19 20 16 55 3

Problema de transport este echilibrat deoarece

ai =
i =1

b j = 55 ,
j =1

iar pentru

rezolvarea ei se va aplica metoda potenialelor si pentru determinarea soluiei de baz se va aplica metoda costului minim din tabel.

Iteraia 1. Pasul 1. Prin metoda costului minimal se determin soluia de baz iniial iar calculele sunt prezentate n tabelul 3.11: Tabelul 3.11
7 6 2 15 13 7 0 12 0 0 12 0 0 14 14 0 0 14 0 14 0
19 20 16 12 6 2 0 0

Se obine urmtoarea soluie de baz iniial : x11 = 7, x12 = 12, x 21 = 6, x 24 = 14, x 31 = 2, x 33 = 14. Valoarea funciei obiectiv corespunztoare acestei soluii iniiale este : z = 8 7 + 7 12 + 4 6 + 3 14 + 2 14 = 240 . Soluia de baz iniial este nscris n tabelul 3.12 alturi de costurile unitare de transport date iniial: Tabelul 3.12
8 7 4 6 3 2 4 0 6 0 2 14 7 12 7 0 5 0 3 0 3 14 6 0

Pasul2. Se rezolv sistemul: ui + v j = cij , (i, j ) J , unde J = {(1,1), (1,2), (2,1), (2,4), (3,1), (3,3)}, pornind de la u1 = 0
Tabelul 3.13
u1=0 u2=-4 u3=-5 v1=8 8 7 4 6 3 2 4 6 v2=7 7 v3=7 v4=7 3 4 6 1 12 0 0 -3 7 -4 3 0 0 14 -2 2 5 -3 0 14 0

Pasul 3. Valorile ij = ui + v j cij , (i, j ) J sunt scrise n tabelul 3.13.


Deoarece ij 0, (i, j ) J rezult c soluia nu este optim.

62

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Pasul 4. Se calculeaz lk = max ij / ()(i, j ) J = 13 = 4 variabila x13 va intra n baz


Se construiete ciclul : (1,3), (1,1), (3,1), (3,3), (1,3) care este indicat n tabelul 3.13. Pasul 5. Se determin = x st = min xij / (i, j )este casuta de ordin par = min{7,14} = x11 = 7 variabila x11 va

iei din baz. Pasul 6. Se modific valorile csuelor din ciclul de mai sus: x13 = 0 + 7 = 7, x11 = 7 7 = 0, x 31 = 2 + 7 = 9, x 33 = 14 7 = 7 . Noua soluie de baz admisibil este nscris in tabelul 3.14
Tabelul 3.14
u1=0 u2=0 u3=-1 v1=4 v2=7 v3=3 v4=3 8 -4 7 3 6 -3 7 12 7 0 4 6 1 7 -4 3 6 0 0 14 3 4 2 2 5 -3 9 0 7 0

Valoarea funciei obiectiv devine : z = 7 12 + 3 7 + 4 6 + 3 14 + 3 9 + 2 7 = 212 Iteraia a 2 Pasul 2. Se rezolv ui + v j = cij , (i, j ) J , unde J = {(1,2), (1,3), (2,1), (2,4), (3,1), (3,3)}, iar soluia este indicat n tabelul 3.14. Pasul 3. Se calculeaz valorile ij = ui + v j cij , (i, j ) J Deoarece ij 0, (i, j ) J , soluia nu este optim (tab.3.14).

Pasul 4. lk = 23 = 2 variabila x32 va intra n baz . Se construiete ciclul (3,2), (3,3), (1,3), (1,2), (3,2) (tab.3.14) Pasul 5 . = min{7,12} = x 33 = 7 x33 va iei din baz . Pasul 6. Se modific valorile csuelor din ciclul de mai sus : x 32 = 0 + 7 = 7, x 33 = 7 7 = 0, x13 = 7 + 7 = 14, x12 = 12 7 = 5 (tab.3.15) Valoarea funciei obiectiv devine : z = 7 5 + 3 14 + 4 6 + 3 14 + 3 9 + 4 7 = 198 Iteraia 3 . Rezultatele sunt consemnate n tabelul 3.15, deoarece ij < 0, (i, j ) J rezult c
soluia este optim . Tabelul 3.15
u1=0 u2=-2 u3=-3 v 1=6 v2=7 8 -2 7 0 5 4 6 -1 6 0 3 4 9 7 v3=3 3 14 7 -6 0 2 -2 0 v4=5 6 -1 0 3 5 14 -3 0

S-a obinut soluia optim a problemei de transport :

x 12 = 5, x 13 = 14, x 24 = 14, x 31 = 9, x 32 = 7. Creia i corespunde costul total al transportului minim z*=198


63

Elemente de teoria grafurilor

CAPITOLUL 4 ELEMENTE DE TEORIA GRAFURILOR


4.1. Fundamente n teoria grafurilor

Teoria grafurilor s-a constituit ca un capitol de sine stttor n cadrul cercetrilor operaionale, datorit multiplelor avantaje pe care le ofer activitii de planificare i analiza tehnico - economic. Cu ajutorul grafurilor se surprind i se analizeaz n detaliu legturile dintre componentele sistemului tehnico - economic, iar elaborarea modelului este mult mai uoar. 4.1.1. Noiunea de graf Prin definiie un graf este o pereche (X, U ) unde mulimea X este numit mulimea nodurilor (sau vrfurilor) iar mulimea U este mulimea muchiilor.

Notaii utilizate : X = mulime finit i diferit de mulimea vid de orice natur. X = x1, x2, ..xn - unde xi = elemente numite vrfuri sau noduri X poate fi infinit, dar numrabil.
U = submulime nevid a produsului cartezian X x X U= ( xi,xj ) / ( xi,xj) ( xj , xi ) - unde ( xi , xj) = pereche ordonat de vrfuri numit arc. Arcul u este orientat de la nodul xi, numit extremitatea iniial, la nodul xj, numit extremitatea final. A ( xj , xj ) se numete bucl. G =( X ,U) = graf orientat (digraf)
U = mulime de de arce neorientate care reprezint perechi ordonate de vrfuri din X U = ( xi,xj ) / ( xi,xj)=( xj , xi ) - ( xi,xj) este un arc neorientat numit muchie G =( X , U ) = graf neorientat In practic un graf neorientat se poate nlocui cu un graf orientat astfel: fiecarei muchii ( xi,xj) U i corespund dou arce de semne contrare (x1 , x2) i (x2 , x1). In cazul n care se asociaz arcelor grafului o valoare sau o funcie valoare v : U R sau v : U R unde v( xi,xj) R funcia valoare ataat arcelor. G ( X, U, v ) = se numete graf valuat ( evaluat, ponderat )

4.1.2. Orientare i neorientare n graf Cazul grafurilor orientate Prin urmtorul exemplu vom pune n eviden un graf orientat: n practica industrial pentru realizarea unei lucrri de investiii sunt necesare o serie de activiti distincte: alegerea amplasamentului, ntocmirea proiectului, avizarea acestuia, aprobarea lui, contractarea utilajelor tehnologice, organizarea antierului .a. Aceste activiti sunt condiionate ntre ele i execuia fiecrei activiti nu poate fi nceput nainte de terminarea altor activiti. Exist i activiti care se execut n paralel. Pentru realizarea modelului de graf corespunztor proiectului de investiii se stabilesc condiionrile ntre activiti. Nodul reprezint momentul n care se termin o activitate i ncepe o alta. 64

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Activitile proiectului sunt reprezentate prin muchii (arce) n graf. Orice activitate trebuie executat pn la capt ca s poat ncepe o alta pe care ea o condiioneaz. Asemenea grafuri sunt orientate Dac un graf orientat G = ( X , U ) are X = n i U = m atunci graful G este un - graf orientat, iar numrul n reprezint ordinul grafului G, iar m dimensiunea grafului G. Dou arce avnd aceleai extremiti sunt paralele. Un graf orientat care nu are nici bucle nici arce paralele este un graf simplu.

Reprezentarea geometric a unui graf orientat

Un graf orientat G = ( X , U ) se reprezint geometric printr-o figur n plan n care nodurile xi X se vizualizeaz prin puncte n plan ncadrate n cercuri, iar arcele u = (xi , x j ) U prin linii drepte sau curbate care unesc nodurile xi i xj i pe care se afl o sgeat cu sensul de la xi la xj
Exemplul 4.1. Fie X = {x1 , x 2 , x3 , x 4 , x5 , x6 } i U = {u1 , u 2 , u 3 , u 4 , u 5 , u 6 , u 7 , u 8 , u 9 , u10 } unde u1 = (x1 , x 2 ) , u 2 = (x1 , x3 ) , u 3 = (x 2 , x3 ) , u 4 = ( x 2 , x 4 ) , u 5 = (x3 , x 4 ) , u 6 = ( x3 , x5 ) , u 7 = ( x5 , x 4 ) , u 8 = (x 4 , x6 ) , u 9 = ( x5 , x 6 ) , u10 = ( x 4 , x 4 ) . Arcul u10 = ( x 4 , x 4 ) este o bucl. Reprezentarea geometric a grafului G = ( X , U ) este cea din fig 4.1.
u10 u1 x1 u2 x3 x2 u4 x4 u7 u6 x5 u8 u9 x6

u3 u5

Fig. 4.1
Gradul unui nod.

Fie G = ( X , U ) un graf orientat. Un vrf xi are urmtoarele caracteristici:

- gradul de intrare d (xi ) ca fiind numrul de arce u U de forma u = x j , xi care au extremitatea final n xi. - gradul de ieire d + ( xi ) ca fiind numrul de arce u U de forma u = xi , x j extremitatea iniial n xi. Dac X = n i U = m avem relaia:

care au

d (x ) = d (x ) =m
i + i i =1 i =1

(4.1)

d + (x 6 ) = 0 .

Pentru graful din fig. 4.1 avem d ( x1 ) = 0 , d + ( x1 ) = 2 , d ( x 2 ) = 1 , d + ( x 2 ) = 2 , d ( x3 ) = 2 , d + ( x 3 ) = 2 , d ( x 4 ) = 4 , d + ( x 4 ) = 2 , d ( x 5 ) = 1 , d + ( x5 ) = 2 , d ( x 6 ) = 2 ,

Dac d (xi ) = 0 nodul xi este nod de intrare n graf, iar dac d + ( xi ) = 0 nodul xi este nod de ieire din graf.
65

Elemente de teoria grafurilor

n graful din fig. 4.1 nodul de intrare este nodul x1, iar nodul de ieire este nodul x6. Gradul unui nod xi X , notat cu d ( xi ) , n cazul grafurilor orientate, este dat de relaia:
d ( xi ) = d ( xi ) + d + ( x i )

(4.2)

Gradul de inciden Dou noduri xi i xj sunt noduri adiacente dac exist un arc xi , x j U sau x j , xi U .

Dou arce sunt adiacente dac au n comun o extremitate. Arcele care converg ntr-un nod xi de forma x j , xi sunt arce incidente spre interior, iar arcele care ies din nodul xi de forma xi , x j sunt arce incidente spre exterior. Fie A X o submulime a mulimii X. Toate arcele u U , u = (xi x j ) cu xi A i x j A sunt arce incidente spre interior n

A i mulimea lor se noteaz cu U ( A) : U ( A) = u = xi , x j , u U / xi A, x j A

{ (

(4.3)

Toate arcele u U , u = (xi x j ) cu xi A i x j A sunt arce incidente spre exterior n

A i mulimea lor se noteaz cu U + ( A) : U + ( A) = u = xi , x j , u U / xi A, x j A

{ (

(4.4)

Gradul de inciden al submulimii A n raport cu graful G este dat de relaia:

U ( A ) = U ( A) U + ( A )
Dac A = {x3 x 4 } n graful din figura 4.1 atunci :
U ( A) = {( x1 , x3 ), ( x 2 , x3 ), ( x 2 , x 4 ), ( x5 , x 4 )}, U + ( A) = {(x3 , x5 ), (x 4 , x6 )}

(4.5)

iar gradul de inciden al submulimii A este U ( A) = 6 .

U ( A) = {( x1 , x3 ), ( x 2 , x3 ), ( x 2 , x 4 ), ( x5 , x 4 ), ( x3 , x5 ), ( x 4 , x6 )}

Graf parial. Un graf G * = (X ,U * ) este un graf parial al grafului orientat G = ( X , U ) dac U * U . Un graf parial se obine din graful G prin suprimarea a cel puin un arc din U. Prin suprimarea arcelor (x3 , x 2 ) i (x 2 , x 4 ) din graful de referin din figura 4.2 se obine graful parial din figura 4.2b. Subgraf Fie Y X i V U mulimea tuturor arcelor din U care au ambele extremiti n submulimea Y. Graful H = (Y ,V ) este un subgraf al grafului G. Un subgraf se obine din graful G prin suprimarea nodurilor care nu sunt coninute n Y i arcelor corespunztoare lor.
66

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Prin suprimarea nodului x4 i a arcelor (x 2 , x 4 ) , ( x3 , x 4 ) , (x 4 , x1 ) din graful din figura 4.2a se obine graful din figura 4.2c.
x1 x2 x1 x2 x1 x2

x3

x4

x3

x4

x3

a) G

b) G* Fig. 4.2

c) H

Grafuri simetrice i antisimetrice. Un graf orientat G = ( X , U ) este simetric dac pentru oricare dou noduri xi i xj din (xi , x j ) U (x j , xi ) U . ntr-un graf simetric ntre dou noduri vor exista dou arce de sens contrar sau nici unul. n fig.4.3a este reprezentat un graf simetric. Un graf orientat G este antisimetric dac pentru oricare dou noduri xi i xj din (xi , x j ) U (x j , xi ) U . ntr-un graf antisimetric ntre dou noduri exist cel mult un arc. n figura 4.3b este reprezentat un graf antisimetric.
x1 x3 x2 x4 x3 x1 x2 x4

a)

b)

Fig.4.3

Graf complet Un graf orientat G este complet dac pentru oricare dou noduri xi i xj din (xi , x j ) U (x j , xi ) U . ntr-un graf complet ntre oricare dou noduri exist cel puin un arc. n figura 4.4 este reprezentat un graf complet. Graful din figura 4.3b nu este complet pentru c nu exist arce ntre nodurile x1 i x4 sau x3 i x4.
x1 x2

x3

x4

Fig.4.4
Cazul grafurilor neorientate

Prin definiie un graf neorientat G este o pereche ( X , U ) , unde mulimea X este numit mulimea nodurilor, iar U este mulimea muchiilor. Nodurile xi i xj ale unei muchii u = {xi , x j } , definesc extremitile muchiei.

67

Elemente de teoria grafurilor

Dou muchii avnd aceleai extremiti sunt muchii paralele, iar o muchie cu extremiti identice u = {xi , xi } se numete bucl. Un graf orientat care nu are nici bucle nici arce paralele este un graf simplu.

Reprezentarea geometric a unui graf neorientat


Un graf neorientat G = X ,U (fig.4.5) se reprezint geometric printr-o figur n plan. Nodurile xi X se vizualizeaz prin puncte n plan ncadrate n cercuri, iar muchiile
u = xi , x j U prin linii ( drepte sau curbe ) care unesc nodurile xi i xj.

Exemplul 4.2 Graf neorientat


u1
x1 x2

u3 u4

x4

u5
x6

u2

u6

x3

x5

Fig.4.5

Gradul unui nod. Fie G = X , U un graf i xi , x j X . Nodurile xi i x j sunt noduri adiacente dac

exist o muchie u = {xi , x j } care le unete. Dac u = {xi , x j } , muchia u i nodul xi sunt incidente. Dou muchii u1 i u 2 ale grafului sunt muchii adiacente dac sunt incidente n acelai nod. Gradul unui nod xi X , notat cu d ( xi ) reprezint numrul de muchii din graful G incidente cu nodul xi. Un nod izolat are gradul 0. Pentru graful din fig. 4.5 gradele nodurilor sunt: d ( x1 ) = 2 , d ( x 2 ) = 2 , d ( x3 ) = 2 , d ( x 4 ) = 3 , d ( x5 ) = 0 , d ( x 6 ) = 3 . Dac X = n i U = m avem relaia:

d (x ) = 2 m .
i i =1

(4.6)

Aceast relaie rezult din faptul c fiecare muchie este inciden n dou noduri.

Graf parial

* * Un graf G * = X ,U este un graf parial al unui graf G = X , U dac U U .

Graful G * se obine din graful G prin suprimarea a cel puin unei muchii. Graful din fig.4.6b este un graf parial al grafului de referin din fig.4.6a.

Subgraf. Un graf H = (Y , F ) este un subgraf al grafului G = X , U

dac Y X , iar F

conine toate muchiile din U i care au ambele extremiti n mulimea Y . 68

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

a) G

b) G* Fig.4.6

c) H

Sugraful H se obine din graful G prin eliminarea a cel puin un nod i a tuturor muchiilor incidente n nodurile eliminate. Graful din figura 4.6c este un subgraf al grafului din fig. 4.6a.

Graf complet Graful G = X , U


muchie xi , x j U .

este complet dac ntre orice dou noduri xi , x j X exist o

Un graf complet cu n noduri se noteaz Gn. n figura 4.7 sunt reprezentate cinci grafuri complete.

G1 G2

G3

G4

G5

Fig.4.7
4.1.3. Drumuri i circuite n graf

Fie G = ( X , U ) un graf orientat i nodurile a i b, a X , b X . Un drum ntre nodurile a i b, n graful G, este un ir ordonat de noduri:

= a , xi1 , xi 2 ,..., xip ,b

) )

(4.7)

cu proprietatea c (a , xi1 )( xi1 , xi 2 ),..., xip ,b U sunt arce ale grafului G. Nodurile a i b, sunt numite extremitile drumului. Un drum este elementar dac trece o singur dat prin fiecare din nodurile sale.

Propoziia 4.1 ntr-un graf G cu n noduri, un drum elementar conine cel mult n1
arce. n graful din figura 4.8, 1 = ( x1 , x 2 , x 4 , x5 , x6 ) este un drum elementar, dar 2 = (x1 , x 2 , x 4 , x3 , x 2 , x 4 , x6 ) nu este un drum elementar.
x2 x1 x3 x5 x4 x6

Fig.4.8 69

Elemente de teoria grafurilor

Un drum elementar care trece prin toate nodurile grafului este un drum hamiltonian. n fig.4.8, 2 = (x1 , x3 , x 2 , x4 , x5 , x6 ) este un drum hamiltonian. Un circuit este un drum finit care ncepe i se termin n acelai nod. Un circuit format dintr-un singur arc este bucl. Un circuit este elementar dac trece o singur dat prin fiecare din nodurile sale. Un circuit este elementar este 2 = ( x 2 , x4 , x3 , x 2 ) . Un circuit hamiltonian este un drum hamiltonian n care extremitile sale coincid. Drumul 6 = (x1 , x2 , x4 , x3 , x2 , x5 , x6 , x1 ) este un circuit hamiltonian. Denumirile de drum hamiltonian i circuit hamiltonian au fost introduse de matematicianul Hamilton n anul 1865 Se numete lungimea unui arc l( d) numrul de arce componente (p). Se numete valoarea unui drum suma valorilor arcelor ce formeaz drumul respectiv i acesta sub forma :

v[d ( xi , x j ) ] = v( x k , xl )

(4.8)

Numrul vrfurilor ce pot fi atinse da la vrful xk poart denumirea de puncte de atingere de la virful xk
4.1.4. Lanuri i cicluri n graf

Fie G = X ,U un graf neorientat i nodurile ai b, s X , t X . Un lan ntre dou noduri a i b ale grafului G este o mulime ordonat de noduri notat:

L = a , xi1, xi 2 ,..., xip ,b

] [ ]

(4.9)

cu proprietatea c [a , xi1, ] , [xi1 , xi 2, ] , , xip ,b sunt muchii ale grafului. Lanul este definit prin succesiunea nodurilor, fiecare muchie component, exceptndo pe prima si pe ultima, are o extremitate comun cu muchia precedent i cealalt extremitate n comun cu muchia urmtoare. Alternativ, un lan poate fi definit prin succesiunea muchiilor adiacente care-l formeaz:

L = u1 , u 2 ,..., u p

(4.10)

Nodurile a i b sunt extremitile lanului. De asemenea, n a doua reprezentare, ui i up sunt extremitile lanului. Lungimea unui lan este dat prin numrul de muchii din care se compune. O muchie este un lan de lungime 1. Un lan de lungime 2 este format din dou muchii adiacente.

Exemplul 4.3
x2 x1 x3 x5 x4 x6

Fig.4.9 70

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

L1 = [x1 , x 2 , x 4 , x 6 ] este un lan ntre nodurile x1 i x6 de lungime 3. lanul L2 = [x3 , x5 ] este o muchie de lungime 1. Un lan este elementar dac trece o singur dat prin fiecare din nodurile sale. L3 = [x1 , x 2 , x 4 , x3 , x5 ] este simplu i elementar, n timp ce lanul L4 = [x1 , x 2 , x 4 , x3 , x5 , x 4 , x3 ] este compus i nu este elementar. Un lan elementar care trece prin toate nodurile grafului este un lan hamiltonian. L5 = [x1 , x 2 , x 4 , x3 , x5 , x6 ] este un lan hamiltonian. Lanul n care extremitile sale coincid este un ciclu, sau un ciclu este un lan care ncepe i se termin cu acelai nod. Un ciclu hamiltonian n care extremitile coincid este un ciclu hamiltonian. L6 = [x1 , x 2 , x 4 , x3 , x1 ] formeaz un ciclu, iar lanul L7 = [x1 , x 2 , x 4 , x 6 , x5 , x3 , x1 ] este un ciclu hamiltonian. Diferena ntre un drum i un lan const n faptul c ntr-un drum toate arcele sunt orientate n acelai sens pe cnd ntr-un lan ele pot avea orice orientare. Orice drum este i lan dar nu orice lan este un drum. ntr-un graf orientat noiunea de drum este echivalent cu cea de lan.
4.2. Matrici ataate grafurilor

Pentru rezolvarea unor grafuri de dimensiuni mari si a unor probleme practice, se asociaz grafului o serie de matrici ce uureaz studiul acestora. Cu ajutorul matricelor ataate grafurilor se pot determina: succesiunile optime a unor procese de producie, legturile ce se stabilesc ntre-un proces tehnologic, modul de transmitere a unei informaii direct sau indirect, rute strategice din punct de vedere economic, etc..
4.2.1. Matricea arcelor (matricea conexiunilor directe)

Fie G = ( X , U ) un graf orientat cu X = {x1 , x 2 ,..., x n }. Grafului orientat G i se asociaz o matrice boolean ptratic A = (aij ), i = 1,..., n, j = 1,...n numit matricea arcelor (conexiunilor directe) cu urmtoarele elementele:
1 daca xi , x j U aij = 0 daca xi , x j U

( (

) )

(4.11)

Obsevaii :
- Dac n matricea A se pune n locul valorii 1, valoarea arcului, se va obine matricea capacitilor arcului ; - Dac pe diagonala principal nu exist elemente egale cu 1, atunci graful dat nu are bucle ; - n linia i (1 i n ) a matricei A sunt marcate cu 1 arcele incidente spre exterior n nodul xi; - n coloana j (1 j n ) sunt marcate cu 1 arcele incidente spre interior n nodul xj; - n cazul unei bucle (xi , x j ) , elementul de pe diagonal aij este egal cu 1; - Gradul de intrare d (x j ) pentru nodul xj este dat de relaia d (x j ) = aij ; - Gradul de ieire d + x j pentru nodul xj este dat de relaia d + (x j ) = a ij .
j

( )

71

Elemente de teoria grafurilor

Exemplu 4.4 Unui graf orientat G cu patru noduri x1, x2, x3, x4 i cu arcele ( x1 , x 2 ) , (x1 , x3 ) , (x 2 , x 2 ) , (x 2 , x3 ) , (x 2 , x4 ) , (x3 , x 4 ) , i se asociaz matricea boolean: x1 0 x2 0 A= x3 0 x4 1
1 1 0 0 1 1 0 0 0 1 1 0

Avnd n vedere matricea A avem urmtoarele proprieti:

P1. Dac un graf este antisimetric, atunci n matricea asociat A: a ij a ji = 0, ()xi , x j X , i j


(4.12)

P2. Matricea asociat unui graf parial G* se obine din matricea asociat grafului G prin nlocuirea cu zero a elementelor asociate arcelor suprimate. P4. Matricea asociat unui subgraf parial H se obine prin suprimarea din matricea asociat grafului G a liniilor i coloanelor corespunztoare nodurilor excluse. Matricea unui subgraf este o matrice ptratic extras din matricea grafului G. Dac graful G = X ,U este neorientat muchiile sale se orienteaz n ambele sensuri:

[x , x ] (x , x ) i (x , x )
i j i j j i

(4.13)

i elementele matricei A = (aij ) asociat grafului G se definesc prin:


1 daca xi , x j U aij = 0 daca xi , x j U

[ [

] ]

(4.14)

n cazul unui graf neorientat, matricea asociat A este o matrice simetric. Pentru un graf cu patru noduri x1, x2, x3, x4 cu muchiile (x1 , x 2 ) , (x1 , x3 ) , (x 2 , x3 ) , (x 2 , x4 ) , (x3 , x 4 ) matricea asociat A este:

x1 0 x2 1 A= x3 1 x4 0

1 0 1 1

1 1 0 1

0 1 1 0

Astfel, matricei booleene ptratice A i se asociaz un graf orientat cu arcele (xi , x j ) pentru toatele elementele a ij = 1 .

Exemplul 4.5
Corespunztor matricei booleene:

72

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

0 1 A = 0 0 1

0 1 1 1 0

1 0 0 1 1

1 0 0 0 1

0 0 1 0 0

se asociaz graful din fig.4.10 cu cinci noduri, notate x1, x2, x3, x4,,x5 n matricea A, a 22 = 1 semnific existena unei bucle n nodul x2.
x2 x1 x3 x5 x4

Fig.4.10
4.2.2. Matricea drumurilor (matricea conexiunilor totale)

Fie G = ( X , U ) un graf orientat cu X = {x1 , x 2 ,..., x n } i A matricea arcelor. n matricea A avem: pe linia i,1 i n sunt marcate cu 1 drumurile de lungime 1 care pleac din nodul xi; n coloana j ,1 j n sunt marcate cu 1 drumurile de lungime 1 care converg n nodul xj ; Astfel, matricea A este matricea boolean a drumurilor de lungime 1. . + 0 1 0 0 1 1 1 1 . x 0 1 0 0 0 1 0 1

Adunarea i nmulirea boolean:

Dac notm cu A(k) matricea boolean obinut prin ridicarea boolean la puterea k a matricei A:
. . . . . A(k ) = A A A A = A (k 1) A, k = 2,3, de k ori

atunci, A este matricea booleana a drumurilor de lungime k n graful G sau matricea conexiunilor totale. (k ) = 1 exist un drum de lungime k de la xi la xj. Dac un element a ij Astfel, n matricea boolean A(k): - elementele de pe linia i,1 i n arat drumurile de lungime k de la nodul xj la nodurile n coloanele crora apare 1 pe aceast linie; - elementele de pe coloana j ,1 j n arat drumurile de lungime k de la nodurile pe a crora linie apare 1 n aceast coloan la nodul xj; Dac ridicm la puteri succesive matricea A prin operaiile obinuite de nmulire i adunare a numerelor naturale reale se obine numrul drumurilor de o anumit lungime. Pentru exemplul 4.5 avem urmtoarele puteri booleene succesive ale matricei A:

(k)

73

Elemente de teoria grafurilor

A (2 )

0 1 = 1 1 0

1 1 1 1 1

1 1 1 0 1

0 1 1 0 1

1 0 0 1 1

A (3 )

1 1 = 1 1 1

1 1 1 1 1

1 1 1 1 1

1 1 1 1 1

1 1 1 , . 0 1

Elementele acestor matrice egale cu 1 asigur existena drumurilor de lungime 2 i 3, iar cele cele de pe diagonal existena circuitelor. De exemplu, de la x1 la x4 nu exist drum de lungime 2, dar exist drum de lungime 3. (3 ) = 0 ) nu exist drum de lungime 3 de la x4 la x5. Circuite de n A(3) (elementul a 45 ordinul 2 se realizeaz n nodurile x2, x3 i x5, iar de ordinul 3 n toate nodurile. Puterea A(4) are toate elementele 1. Pentru a determina numrul drumurilor i circuitelor de lungime 2, 3 i 4 se calculeaz puterile succesive A2, A3 i A4:
0 1 = 2 1 0

A (2 )

2 1 1 2 2

1 1 1 0 2

0 1 1 0 1

1 3 3 0 1 3 (3 ) 0 , A = 1 3 1 3 2 3 5 1 5 9 8 6 8 5 3 4 5 6 4 2 2 3 5 1 2 3 2 2

1 2 3 2 2

1 1 2 2 1

1 1 1 , 0 2

A (4 )

4 4 = 4 2 7

De la nodul 1 la nodul 2 exist dou drumuri de lungime 2: x1 x 4 x 2 i x1 x3 x 2 , trei drumuri de lungime 3: x1 x 4 x3 x 2 ; x1 x3 x 2 x 2 ; x1 x 4 x 2 x 2 i cinci drumuri de lungime 4. Evident, multe drumuri sunt neelementare. Bucla din nodul x2 poate crea drumuri de orice lungime prin repetarea parcurgerii ei. Exist trei circuite elementare de lungime 4:

x3 x 2 x 5 x 4 x3 x3 x 2 x1 x 4 x3 x3 x5 x1 x 4 x3
si un circuit de lungime 5:

x1 x3 x5 x 4 x 2 x1 .
Dac A este matricea asociat unui graf neorientat G = ( X , E ) , puterile succesive A(k) ofer informaii despre existena si numrul lanurilor i circuitelor de lungime egal cu puterea matricei. n acest caz matricea A este simetric. 74

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

4.2.3. Descompunerea grafului n componente tari conexe

Un graf G = ( X ,U ) este conex dac pentru oricare dou noduri distincte xi , x j X exist un lan cu extremitile xi i xj. Graful din fig.4.9 este conex. Proprietatea c exist un drum cu extremitile xi i xj este o relaie de echivalen care mparte graful G n clase de echivalen numite componente conexe. O component conex a unui graful G este un subgraf conex al grafului G. S considerm un nod xi X n graful G = ( X ,U ) . Componenta conex xi se poate evidenia printr-o mulime C(xi) format din xi i din toate nodurile legate prin drumuri de xi:

C ( xi ) = {xi } {x j X / exist un drum ntre xi i x j }


Evident C ( xi ) X mulimii X, atunci X =
xi X

(4.15)

C ( xi ) .

xi X

C ( xi ) X . Dar

xi X

C ( xi ) conine toate elementele

Un graf orientat este un graf tare conex dac pentru oricare dou noduri distincte xi i x j (i j ) , dac exist cel puin un drum de la xi la xj sau de la xj la xi. O component tare conex a unui graf orientat G este un subgraf tare conex. Un graf G este tare conex numai dac admite o singur component tare conex.

Algoritm de descompunere a grafului n componente tari conexe Pas 1: Se determin mulimea vrfurilor atinse de la vrful xi ( o notam cu Vi i este format din elementele egale cu 1 de pe o linie suplimentar atasat matricei ) Pas 2: Se determin mulimea vrfurilor ce ating pe xi (o vom nota cu Vi' i este formata din elementele egale cu 1 de pe coloana suplimentar ataat matricei. Pas 3: Se determin componenta tare conexa care conine vrful xi cu ajutorul relaiei urmtoare :
C( xi ) = ( Vi Vi' ) {xi }

(4.16)

Pas 4 : Iterativ : se elimin din matricea A toate liniile i toate coloanele corespunztoare vrfurilor din C(xi) . Pas 5 : n matricea rmas se caut n mod asemntor o nou component tare conex. Operaiile continu pn cnd toate vrfurile grafului au fost luate n consideraie (nu se va exclude nici un virf.) Exemplul 4.6 O ntreprindere trebuie s fabrice succesiv opt tipuri de produse Pi (i =1,2,,8). Pentru a trece de la producerea produsului Pi la producerea produsului Pj, trebuie suportat un cost de lansare sau un cost de trecere cij. Cunoscndu-se tabelul tuturor costurilor de lansare, dat sub forma matricei de mai jos, s se determine o asemenea ordine a producerii celor opt produse, astfel nct cheltuielile totale de lansare s fie minime
75

Elemente de teoria grafurilor

P1 P 2 P3 P 4 P 5 P6 P 7 P8 P1 0 3 P2 7 0 P3 8 8 P4 4 8 P5 8 7 P6 5 5 P7 P8 6 4 6 6 6 8 7 7 6 7 4 5 8 0 6 6 7 4 4 9 7 0 5 7 6 8 7 6 5 5 2 7 6 6 8 0 4 4 5 0 6 3 4 0 4 5 5 6 5 4 7 0

Evident c exist 8! = 40.320 de moduri de a trece prin fabricarea celor opt produse, fiecare nod avnd cte un cost de total de lansare. O soluie suficient de bun este aceea de a compara costurile de trecere cij i cji de la producerea lui Pi la Pj i invers i astfel se va elimina posibilitatea unei variante cu cost mare, pstrnd-o pstrndu-o numai pe cea cu costul mai mic. Astfel, dac cij < cji, vom renuna n graf la arcul (Pi, Pj) i vom pstra arcul (Pj, Pi). Compararea celor dou costuri de acest fel se poate face direct pe matricea dat, deoarece ele sunt simetrice fa de diagonala principal; n locul costului mai mare vom scrie zero, iar n locul costului mai mic vom scrie unu. n cazul n care avem cij = cji, vom schimba n mod arbitrar una din valori prin unu i cealalt prin zero. Se obine n acest fel matricea conex a unui graf cu numai 28 de arce:
P1 0 1 P2 0 0 P3 0 0 P4 0 0 P5 0 1 P6 1 1 P7 P8 P1 P2 P 3 P4 P5 P6 P7 P8 0 1 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 0 0 0 0 1 1 0 1 1 1 1 1 1 0 0

(C)

Vom determina drumurile hamiltoniene cu algoritmul mai sus enunat i le vom compara din punct de vedere al costului total de lansare. Dup cum vom vedea, numrul drumurilor hamiltoniene n acest graf este mult mai mic faa de cel al grafului dat de problem. Cu ajutorul algoritmului ajuttor descris, se determin componentele tare conexe ale grafului G obinut:

C1 = {P1 ; P5 ; P6 } C 2 = {P2 } C 3 = {P3 ; P4 ; P7 ; P8 }


Matricea conex C* a grafului condensat G* este urmtoarea:

76

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

C1 C2 C3 C1 0 1 1 (C*) C2 0 0 1 C3 0 0 0

Fig.4.11 Deci graful condensat G* are un drum hamiltonian dat de succesiunea C1, C2, C3. Toate drumurile hamiltoniene ale celor trei componente tare conexe se scriu uor: I II III P1 P5 P 6 P 3 P4 P8 P7 P5 P6 P1 x2 P4 P8 P7 P3 P7 P3 P4 P8 P6 P1 P5 P8 P7 P3 P4 Se observ c graful cercetat are 12 drumuri hamiltoniene, ce se obin prin legarea drumurilor pariale prin arcele ce leag componentele succesive. Cteva din aceste drumuri sunt scrise mai jos: pentru fiecare din ele s-a calculat costul de lansare total corespunztor:
P1 P1 P1 P1 P5 P5 P5 P5 P5 P6 P 6 P2 P 3 P6 P2 P4 P 6 P2 P7 P 6 P2 P8 P 1 P2 P 3 P4 P8 P3 P7 P4 P8 P7 P4 P3 P8 P7 P3 P8 P4 P7 : cost 39 : cost 39 : cost 38 : cost 36 : cost 35 etc.

Drumul hamiltonian, optim corespunde drumului (P5, P6, P1, P2, P8, P7,P3, P4). Aceasta trebuie s fie ordinea n care trebuie lansat producia celor opt tipuri de produse, ordine ce conduce la un cost total de lansare egal cu 32 de uniti monetare. Practica arat c acest cost de lansare aflat n modul de mai sus, chiar dac nu este cel minim, este de obicei foarte aproape de cel minim.

77

Elemente de teoria grafurilor

4.3.

Drumuri hamiltoniene

Pentru a nelege noiunea de drum hamiltonian cu aplicativitate practic vom pleca de la urmtorul exemplu: O firma are de realizat n cursul unei sptmni n produse Pi. Pentru trecerea de la fabricarea produsului Pi la fabricarea produsului Pi+1 pe linia de fabricaie, trebuie suportat un cost de lansare sau de trecere cij de la un produs la un alt produs. Astfel, trebuie aleas ordinea n care se vor succeda produsele pe linia de fabricaie, astfel nct costul total pe sptmn s fie ct mai mic (minim). Rezolvarea problemei se reduce la determinarea drumului hamiltonian optim din modelul de graf asociat problemei, unde produsele sunt reprezentate prin vrfurile grafului, sensul arcelor reflect ordinea de lansare n lucru, iar valorile asociate arcelor fiind legate de costurile de lansare n fabricaie. n continuare vom prezenta algoritmi de determinare a drumurilor hamiltoniene din grafuri.
Determinarea drumurilor hamiltoniene n grafuri cu circuite

Un drum hamiltonian este un drum care trece prin toate vrfurile unui graf, o singur dat. Fie G =(X,U) un graf orientat. Vom prezenta n continuare un algoritm pentru determinarea drumurilor hamiltoniene bazat pe ideea mpririi grafului G, n clase de echivalen adic n subgrafuri tari conexe ale grafului G.

Algoritmul Foulkes Etapa 1. Se scrie matricea booleana asociat grafului G (A) i matricea M ( 1 ) = I A , unde matricea I este matricea unitate iar este adunarea boolean. Etapa 2. Se ridic succesiv matricea M ( 1 ) = I A , la puterile 2, 22, 23,,2r Ridicrile la putere sunt booleene i se efectueaz pn cnd dou puteri consecutive sunt egale Pentru scurtarea calculelor se determina : k k k 1 2 (I M) pn cnd (I M)2 = (I M)2 Ridicarea la putere boolean:
M(2)= M(1)*M(1) =| m ij |(2)= mi1*m1j + mi2*m2j + .+ min*mnj Unde produsul mik*mkj = 1 mik= 1 si mkj = 1

Etapa 3 k n matricea (I M)2 , liniile pline i1, i2 ,.ip (acele linii care sunt formate numai cu cifra 1), determin clasa de echivalenta C1 (componentele tari conexe), format din nodurile xi1 , xi2 , xip Se elimin liniile i coloanele care corespund nodurilor din clasa de echivalen stabilit. Se reia raionamentul pe matricea redus i se obine urmtoarea clas de echivalen. Se continu formarea claselor de echivalen pn se epuizeaz toate liniile matricei.

78

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Etapa 4. Nodurile care formeaz o clasa de echivalen sunt reprezentate prin puncte n interiorul unui dreptunghi, iar ntre acestea se traseaz arcele existente n graful iniial G. Se traseaz legturile dintre clasele consecutive. Ele sunt reprezentate prin arcele existente n graful iniial G ntre nodurile clasei C1 i cele ale clasei C2 , ntre nodurile clasei C2 i cele ale clasei C3 .a.m.d.. Etapa 5. Un drum hamiltonian se identific plecnd de la un nod din clasa C1 trecnd prin toate nodurile acesteia i din ultimul nod se trece la un nod din C2. dac exist un astfel de arc. Dac nu exist un astfel de arc se pleac de la un nod n clasa C1. n continuare se identific drum hamiltonian n clasa C2 .a.m.d. pn la ultima clas. Trecnd prin toate clasele se parcurg toate nodurile grafului iniial o singur dat, obinndu-se astfel un drum hamiltonian. Aplicnd acest procedeu, n toate modurile posibile, se obin toate drumurile hamiltoniene n graful iniial G. Drumurile aflate prin trecere succesiva de la o clasa de echivalen la alt clas de echivalen sunt drumurile hamiltoniene ale grafului. Observaii - n graful G poate s nu existe nici un drum hamiltonian; - dac un graf are o singur component tare conex, algoritmul lui Foulkes nu este eficient, n acest caz se aplic ali algoritmi. Exemplul 4.7 : S considerm graful din fig.4.12 cu matricea asociat A:
x2 x1 x3 x4 x5

Fig.4.12 0 1 0 1 0 0 1 0 1 0 1 0 , 1 0 0 0 0 1 1 1 Clasele C1 i C2, deduse, pentru graful din fig4.12, se prezenta grafic, conform etapei IV din algoritmul Foulkes precum n fig. 4.13. Drumurile hamiltoniene n graful G sunt urmtoarele: 1 = ( x1 , x5 , x3 , x2 , x4 ) , 2 = (x3 , x1 , x5 , x4 , x2 ) , 3 = ( x1 , x5 , x3 , x4 , x2 ) , 4 = ( x5 , x3 , x1 , x1 , x4 ) .
0 1 A = 0 0 0
x3 x1 x5 x4 x2

C2 C1 Fig.4.13

79

Elemente de teoria grafurilor

Exemplul 4.8 Problema succesiunii operaiilor. n practica industrial, pentru realizarea unui produs pe baza unui proces tehnologic trebuie parcurse o serie de operaii tehnologice, fiecare efectuat n condiiile tehnice specifice. Stabilirea unei succesiuni a operaiilor, ntr-un graf asociat procesului tehnologic revine la determinarea unui drum hamiltonian. n graful asociat procesului tehnologic pot fi evideniate diversele restricii tehnologice, crend o mulime de variante ale procesului tehnologic. Prin stabilirea unei succesiuni a operaiilor se caut s se proiecteze un proces tehnologic n condiiile tehnice date i cu eficien economic. S presupunem c astfel de proces este dat prin graful din fig.4.14.
x2 x1 x3 x5 x7 x4 x6

Fig.4.14 Fie A matricea boolean asociat grafului G i M ( 1 ) = I A :


0 0 0 A = 0 0 0 0

1 0 0 1 0 0 0

1 1 0 0 0 0 0

0 0 1 0 0 0 0

0 0 1 1 0 0 0

0 0 0 1 0 0 1

0 1 0 0 0 0 0 , M ( 1 ) = I A = 0 0 1 0 1 0 0

1 1 0 1 0 0 0

1 1 1 0 0 0 0

0 0 1 1 0 0 0

0 0 1 1 1 0 0

0 0 0 1 0 1 1

0 0 0 0 1 1 1

Ridicnd la puteri succesive matricea M(1) obinem urmtoarea matrice:

11 1 1 1 2 0 1 1 1 3 0 1 1 1 ( I M )( 4 ) = 4 0 1 1 1 5 0 0 0 0 6 0 0 0 0 7 0 0 0 0 Prima clasa de echivalen este C1 = {x1 } (numai i coloana 1 obinem matricea redus B1:
21 31 41 B1 = 50 60 7 0

1 1 1 1 1 1 1 1 1 1 0 1 0 1 linia 1

1 1 1 1 1 1 1 este plin). Suprimnd linia 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 1 1

80

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

A doua clas de echivalen este C 2 = {x 2 , x3 , x 4 } (liniile 2, 3 i 4 sunt cele pline). Suprimnd liniile i coloanele 2, 3 i 4 obinem matricea redus B2: 5 1 1 1 B2 = 6 0 1 1 7 0 1 1

A treia clas de echivalen este C 3 = {x5 } (linia 5 este plin). Suprimnd linia i coloana 5 obinem matricea redus B3: 6 1 1 B3 = 7 1 1 Iar patra clas de echivalen este C 4 = {x6 , x7 } . Conform etapei IV ntre nodurile componentele C1, C2, C3, C4, se traseaz graful din fig.4.15:
x3 x1 x2 x4 x5 x7 x6

C1

C2 C3 Fig.4.15

C4

Trecnd de la o component la alta obinem drumul hamiltonian:

= {x1 , x 2 , x3 , x 4 , x5 , x7 , x6 },
care este i succesiunea operaiilor procesului tehnologic. Exemplul 4.9 Problema costurilor de trecere Pe o linie de fabricaie se execut cinci produse xi, i = 1, ..., 5. La trecerea de la un produs xi la un alt produs xj pe linia de fabricaie se efectueaz diverse pregtiri tehnice care necesit un "cost" cij pentru lansarea n fabricaie a produsului xj (vom nelege prin cost variaia unei anumite mrimi legate de procesul respectiv). Exemple de acest tip pot fi: trecerea la fabricarea unui tip de oel pe convertor, laminarea unui nou tip de lingou etc., care presupun diverse reglri, un anumit consum al cilindrilor n cajele de laminare .a., deci costuri de trecere. Costurile de trecere cij i cji sunt, n general, diferite. Aceste costuri au semnificaia, de exemplu, de timpi necesari de trecere de la un produs la altul. S se gseasc succesiunea n care trebuie executate produsele pentru ca suma costurilor de trecere s fie minim. Aceast problem revine la determinarea drumurilor hamiltoniene ntr-un graf fr bucle n care nodurile reprezint cele cinci produse, iar arcele posibilitile de trecere de la un produs la altul. Se consider matrice costurilor de trecere (C), unde liniua (-) n locul elementului (i, j) reprezint faptul c trecerea de la produsul xi la produsul xj nu este posibil. Se asociaz problemei o matrice boolean i se definete matricea boolean A asociat problemei:
81

Elemente de teoria grafurilor

x1 0 9 x2 8 0 C = x3 7 10 x4 4 x5 3

7 2 6 5 9 0 11 6 6 0 4 7 2 0 10 21 A = 30 40 5 1 0 0 0 1 0 0 1 0 1 0

1dacacij < c ji A = (a ij )n, n cu a ij = 0dacacij c ji

1 0 0 0 1

0 0 1 0 0

Problema se rezolv fie utiliznd algoritmul clasic de determinarea a componentelor tare conexe, fie utiliznd algoritmul Foulkes.
Determinarea drumurilor hamiltoniene n grafuri fr circuite

Fie G = ( X , U ) un graf orientat. i A matricea asociat grafului G. Puterea de atingere a unui nod xi X n graful G este dat de numrul de noduri la care se poate ajunge din xi. Puterea de atingere se noteaz cu p (xi ),1 i n . Astfel, definim o matrice D numit matricea drumurilor cu elementele d ij ( d(xi , xj ) reprezint drumul de la nodul xi la nodul xj), ce se definesc n modul urmtor:
1 daca ( )d ( xi , x j ) d ij = 0 daca ( )d ( xi , x j )

(4.17)

Deci, puterea de atingere p(xi) este dat de numrul de elemente egale cu 1 de pe linia i n matricea D. Dac n matricea D elementele de pe diagonala principal sunt egale cu 0 atunci graful G nu are circuite, iar dac exist d ij = 1 atunci n graful G exist cel puin un circuit care ncepe i se termin n nodul xi. Matricea D a drumurilor ntr-un graf se poate obine prin aplicarea urmtorului procedeu: Etapa 1. n matricea arcelor ( conexiunilor directe ) A se consider linia i,1 i n . a) n linia i se identific coloanele j1 , j 2 , , j S cu elementele egale cu 1 (aij1 = 1,..., aijS = 1). b) Se adun boolean linia i cu liniile j1 , j 2 , , j S i se obine linia i ntr-o nou matrice booleana D. c) Se repet a) i b) pentru liniile rmase. Etapa 2. n matricea D se consider linia i,1 i n . a) n linia i se identific coloanele k1 , k 2 , , k p cu elemente egale cu 1

(d

ik 1

= 1,..., a ikp = 1) .

82

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

b) Se adun boolean linia i cu liniile k1 , k 2 , , k p rezultatul se nlocuiete n linia i ntr-o nou matrice booleana D. c) Se repet a) i b) pentru liniile rmase. Procedura se termin cnd matricea D nu se mai modific (devine un invariant). D este matricea drumurilor numit matricea conexiunilor totale. Dac n graful G exist un drum de la nodul xi la nodul xj, evident, p(xi)>p(xj), deci orice nod atins de xj este atins din xi.
Teorema 4.1 (Chen) Un graf fr circuite cu n noduri conine un drum hamiltonian dac i numai dac exist relaia: p( xi ) =
n

i =1

n( n 1 ) 2

(4.18)

Teorema 4.2 (Chen) Dac ntr-un graf orientat fr circuite exist un drum hamiltonian atunci acesta este unic.

Observaie: Conform proprietii c un graf condensat G* asociat unui graf G nu are circuite, se poate studia existena drumurilor hamiltoniene n graful condensat cu ajutorul teoremelor lui Chen. Dac graful condensat conine un drum hamiltonian atunci i graful iniial are drum hamiltonian determinat de existena arcelor de legtur ntre componentele tari conexe ce formeaz graful condensat. Algoritmul Chen Fie G = ( X , U ) un graf orientat fr circuite. Etapa 1. Fie matricea arcelor A asociat grafului G i se determin matricea D a drumurilor. Dac toate elementele de pe diagonala principal sunt nule, graful nu are circuite i se continu cu etapa 2. n caz contrar, algoritmul se oprete. Etapa 2. Se calculeaz puterile de atingere pentru fiecare nod. Dac relaia n n(n 1) p ( xi ) = se verific, atunci graful G conine un drum hamiltonian. n caz contrar, n 2 i =1 graful G nu exist nici un drum hamiltonian i algoritmul se oprete. Etapa 3. Un drum hamiltonian se gsete prin ordonarea nodurilor descresctor dup puterile de atingere. Exemplul 4.10 n prelucrarea unui produs, acesta trebuie s treac prin apte secii, folosind benzile de transport existente ntre aceste secii, benzi reprezentate prin arce n graful din fig. 4.16 Presupunnd c nu exist o ordine preferenial n prelucrarea produsului n cele apte secii, s se arate daca sistemul de benzi existent poate asigura transportul efectiv al produsului succesiv prin toate seciile, iar dac nu, ce benzi mai trebuie construite (ct mai puine la numr), astfel nct s se rezolve problema transportului.

83

Elemente de teoria grafurilor

x7

x6 x5

x1 x4 x2 x3

Fig.4.16 Matricea arcelor grafului este urmtoarea:


x1 x2 x3 0 0 0 1 0 1 1 0 0 0 0 1 0 0 1 1 0 1 1 0 0 x4 0 0 0 0 0 0 0 x5 0 1 0 1 0 1 0 x6 x7 0 0 1 1 0 0 0 0 0 0 0 0 0 0

x1 x2 x3 (A) x4 x5 x6 x7

Din aceast matrice deducem matricea D:


P1 P 2 P3 P4 P1 0 0 0 0 P2 1 0 1 0 P3 1 0 0 0 (D) P4 1 0 1 0 P5 1 0 1 0 P6 1 0 1 0 P7 1 0 0 0 P5 0 1 0 1 0 1 0 P6 P 7 0 0 1 1 0 0 0 0 0 0 0 0 0 0

1
3 2 3 1

Pe diagonala principal nu avem nici un element egal cu unu, dar numrul de elemente n(n 1) = 21 . diferite de zero ale matricei D este: 15 2 Deci asigurarea transportului nu se poate face cu sistemul de benzi existent. Triunghiularizarea matricei D, se realizeaz n mai multe feluri, deoarece exist dou vrfuri cu puterea de atingere 3 (x4 i x6) i alte dou vrfuri cu puterea de atingere 1 (x3 i x7). Vom alege mai nti pe aceea a crei coloan corespunztoare are mai puine zerouri. n acest fel, vom obine matricea din fig 4.17. Se observ c adugarea arcelor (x6, x4) i (x3, x7) va asigura i deasupra locurilor corespunztoare ncadrate cifre de unu, deci se impune construcia a cte dou benzi, una ntre seciile x6 i x4, iar cealalt ntre seciile x3 i x7. Dup aceasta, transportul produsului n cele apte secii trebuie organizat n ordinea
x2 x6 x4 x5 x3 x7 x1.

84

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

x2 x6 x2 0 1 x6 0 0 x4 0 0 (D') x5 0 0 x3 0 0 x7 0 0 x1 0 0

x4 0 0 0 0

x5

1 1 1 0 0 0 0 0 0 0 Fig.4.17

x3 x7 x1 1 1 1 1 0 1 1 0 1 1 0 1 0 0 1 0 0 1 0 0 0

Exemplul 4.11 Fie ase produse care trebuie prelucrate conform proceselor tehnologice n cadrul unui sistem de producie cu un numr limitat de resurse. Din acest motiv se definesc urmtoarele relaii de ordine pentru realizarea produselor: - Produsul P2 precede produsele P1, P3 i P6; - Produsul P3 precede produsul P1; - Produsul P4 precede produsele P3, P5 i P6; - Produsul P5 precede produsele P1, P2 i P6; - Produsul P6 precede produsul P3. Problema care se pune este aceea de posibilitate de prelucrare a tuturor produselor, fr s se ncalce relaiile de ordine stabilite. Relaiile de ordine determin matricea arcelor (A) pentru cazul n care cele ase produse se reprezint ca vrfuri ale unui graf (fig.4.18) i relaia de succesiune prin arce . Evident c acest graf nu trebuie s conin circuite, iar gsirea unei ordini de prelucrare a tuturor produselor nseamn gsirea unui drum hamiltonian n graf.
P1 P 2 P3 P1 0 0 0 P2 1 0 1 P3 1 0 0 P4 0 0 1 P5 1 1 0 P6 0 0 1 P4 0 0 0 0 0 0 P5 0 0 0 1 0 0 P6 0 1 0 1 1 0

(A)

x2 x5 x1 x3 Fig.4.18 Matricea drumurilor (D): x4 x6

85

Elemente de teoria grafurilor

P1 P2 P 3 P1 0 0 0 P2 1 0 1 P3 1 0 0 (D) P4 1 1 1 P5 1 1 1 P6 1 0 1

P4 0 0 0 0 0 0

P5 0 0 0 1 0 0

P6 0 1 0 1 1 0

0 3 1 5 4 2

Deoarece aceast matrice nu conine elemente egale cu unu pe diagonala principal, se verific c graful nu are circuite, iar deoarece numrul total al elementelor egale cu unu este n(n 1) graful conine un drum hamiltonian. 15 = 2 n partea dreapt a matricei D s-au scris puterile de atingere ale vrfurilor corespunztoare celor ase linii. Punnd aceste vrfuri n ordinea descresctoare a puterilor de atingere, obinem d H = (P4 , P5 , P2 , P6 , P3 , P1 ) . Aceasta va fi succesiunea optim Triangularizarea matricei D se poate face scriind liniile n aceast ordine descresctoare a puterilor de atingere, i schimbnd apoi locurile coloanelor n aceiai ordine. Obinem astfel matricea D:
P1 P2 P1 0 1 P2 0 0 P 0 0 (D') 3 P4 0 0 P5 0 0 P6 0 0 P3 1 1 0 0 0 0 P4 1 1 1 0 0 0 P5 1 1 1 1 0 0 P6 1 1 1 1 1 0

Drumul hamiltonian gsit corespunde elementelor ncadrate n aceast matrice.

86

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

4.4.

Drumuri de valoare optim n grafuri

Una dintre aplicaiile teoriei grafurilor const n determinarea drumurilor de valoare optim minim (maxim) ntre dou vrfuri xl , xk care aparin grafului G ( X,U ). Fiecrui arc ui U, i se asociaz o valoarea v(ui)>0 sau v(xl, xk)>0 numit valoarea arcului i care n funcie de problem poate avea una din semnificaiile: Costul sau durata transportului pe ruta (xl, xk); Costul de fabricaie al unui produs pe locul de munc reprezentat prin arcul (xl,xk) ; Timpul de munc necesar executrii unui produs ; Capacitatea maxim pe ruta (xl, xk);; Ctigul realizat prin trecerea de la o stare la alta a sistemului (xl, xk); Consum de energie pentru efectuarea trecerii de la o stare la alta (xl, xk); Dac considerm drumul =(u1 , u2 uk ) atunci mrimea:

v( ) =

v(u )
i i =1

(4.19)

reprezint valoarea drumului .

Proprieti :
ntr-un graf cu valori ale arcelor mai mari dect 0 i finite exist drumuri de valoare minima finite ntre oricare 2 vrfuri ce sunt legate prin cel puin un drum (orice drum de valoare minim se numete drum elementar ). ntr-un graf cu circuite, cu valori pozitive, exist vrfuri ntre care se pot obine valori orict de mari. De aceea determinarea unui drum de valoare maxim i pierde sensul. In continuare ne intereseaz valoarea optim a drumului format din succesiunea de arce ui ce leag x1 de xn .

Algoritmul Ford Pentru aflarea drumului de valoare oprim ntre dou vrfuri x1 i xn ale grafului G(X,U) se parcurg urmtorii pai : Pasul 1: Fiecrui vrf xi al grafului i se asociaz (ataeaz) o variabil i ce are semnificaia de valoare a drumului de la x1 la xi . Prima valoare a acestei variabile este 1 = 0 i i = . Pas 2 : Se caut un arc (xi , xj) pentru care s se ndeplineasc condiia:

j -i > v( xi , xj )

(4.20)

Dac un astfel de arc a fost gsit se nlocuiete j cu j unde acesta se scrie sub forma:

j = i + v( xi , xj ) < j

(4.21)

Dac exist mai multe variante ce permit micorarea variabilei j se alege acel j cu valoarea cea mai mic. Se continu n acest mod pn cnd nici un arc nu mai poate micora valorile lui j.

Pas 3 : Deoarece pentru fiecare vrf xi valorile luate de i ,formeaz un ir descresctor de numere nenegative, exist nodul xp1 cu urmtoarea proprietate:
87

Elemente de teoria grafurilor

n - p1 = v( xp1 ,xn )
unde xp1 este vrful ce a contribuit ultima oar la micorarea valorii lui n . Anolog va exista i xp2 pentru care se ndeplinete condiia: p1 - p2 = v( xp2 ,xp1 ) pn la: pk - 1 = v( x1 ,xpk ) Deci valoarea minim: v (0) = n

(4.22)

0 = (x1 , , xpk . xp2 , xp1 , xn )

(4.23)

Observaie: n cazul n care se cere aflarea drumului de valoare maxim, apar urmtoarele diferene:

1 = 0 si i = - , j -i < v( xi , xj ), j = i - v( xi , xj ) < j

(4.24)

Exemplul 4.11 O firm industrial are la dispoziie mai multe variante tehnologice de prelucrare a unui produs. Variantele sunt redate prin succesiunea unor arce adiacente care reprezint fazele de prelucrare a produsului, iar stadiile de prelucrare ale produsului sunt redate prin nodurile unui graf ce reprezint modelul problemei de stabilire a variantei optime de prelucrare. Fiecrei faze i corespunde un cost parial de prelucrare. Conducerea firmei urmrete alegerea variantei tehnologice care permite obinerea unui cost total minim. Problema urmeaz a se rezolva prin determinarea unui drum de valoare minim n modelul graf asociat problemei. Trebuie s se determine drumul de valoare minim dintre vrfurile x1 x6 pentru graful G(X,U) de mai jos :

x2 5 x1 14 15

11 10 x4 12 x3
Fig.4.19

x5 6 10 18 19 x6

Se ntocmete tabelul 4.1 ce conine n primele 2 coloane arcele grafului i valorile asociate acestora. In celelalte coloane sunt trecute diferenele j - i calculate la fiecare iteraie. (Se trec n acest tabel la nceput arcele incident interior lui x n i apoi x n 1 ) 2 = 3 = = i toate aceste valori ale lui pe iteraii se vor trece Iteraia 0: 1 = 0 n tabelul 4.2.

Iteraia

1:

Efectund

j i

cu

relaia

observm (4.20) dect

diferenele: arcelor

5 1 ; 4 1 ; 3 1 ; 2 1 sunt mai mari corespunztoare (ele sunt marcate n tabelul 4.1 cu *).
88

valoarea

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

j i > v (xi , x j ) i astfel se vor recalcula cu relaia (4.21): (1) 5 = 1 + v( x1 x5 ) = 0 + 10 = 10

4 (1) = 1 + v( x1 x 4 ) = 0 + 15 = 15 3 (1) = 1 + v( x1 x3 ) = 0 + 14 = 14 2 (1) = 1 + v( x1 x 2 ) = 0 + 5 = 5


Noile valori se vor trece n tabelul 4.2. Iteraia 2 Se calculeaz j n cazul n care: j
(1)

(1)

(1)

analiznd diferenele: 6

(1)

> v(xi x j ) j
(1)

(1)

i se compara cu v(xi x j )
(2 )

; 6

(1)

(1)

= i

(1)

; 6

(1)

+ v(xi x j ) ,

(1)

; 6

(1)

(1)

> v (xi x j )

Se observ c exist trei variante de micorare a lui 6 :

6 (2 ) = 5 (1) + v( x5 x6 ) = 10 + 19 = 29 6 (2 ) = 4 (1) + v( x 4 x6 ) = 15 + 10 = 25
Deoarece problema este de minim se va alege valoarea minima i anume : 6 (2 ) = 25 , iar 5 ( 2 ) = 2 (1) + v( x 2 x5 ) = 5 + 4 = 9 Celelalte valori j
(2 )

6 (2 ) = 3 (1) + v( x3 x 6 ) = 14 + 18 = 32

se menin aceleai.

Iteratia 3: Se calculeaz j (2 ) i (2 ) . Observm c aceste diferene nu mai pot fi micorate n raport cu valoarea arcului, deci 6 (2 ) = 25 este valoarea minim a drumului de la nodul x1 la nodul x6. n tabelul 4.1 se centralizeaz toate datele. Pentru stabilirea succesiunii de arce ce formeaz drumul de valoare minim se rein arcele adiacente pentru care n ultima coloan avem relaia :

j (2 ) i (2 ) = v (xi x j ) 1 = {x1 x 4 x6

2 = {x1 x 2 x5

} = 25 x 4 x6 } = 25

Astfel exist dou variante tehnologice pentru care costul total este minim ( ) = 25 i anume 1 , 2 . Algoritmul Bellman-Kalaba Acest algoritm se bazeaz pe principiul general al programrii dinamice care n cazul grafurilor capt urmtoarea exprimare: dac drumul de valoare minim (maxim) care unete x1 xn trece prin vrfurile intermediare xh , xk atunci drumul parial xh xk este un drum de valoare minim.

89

Elemente de teoria grafurilor

( x 5 x6 ) ( x 4 x6 ) ( x 3 x6 ) (x 2 x5 ) ( x1 x 5 ) (x5 x4 ) ( x 3 x4 ) ( x 2 x4 ) ( x1 x 4 ) ( x1 x 3 ) ( x1 x 2 )

(xi x j ) v(xi x j )
19 10 18 4 10 6 12 11 15 14 5

Tabelul 4.1

j (0 ) i (0 ) j (1) i (1) j (2 ) i (2 ) * 0 14 * 0 10 * 0 11 0 5* 4 * 10 9 0 5 6 0 1 1 0 10 10 * 15 15 * 14 14 * 5 5
Tabelul 4.2 3 4 5 6 14 15 10 14 15 9 25

x4 x2 x5

x1 x1

Nr 1
0 1 2 0 0 0

2 5 5

n cazul n care se cere determinarea drumului de valoare minim, grafului G( X ,U ) i se ataeaz matricea C cu componentele: c= ( cij ) i i, j = 1,..,n i

v( xi , x j ), ( xi , x j ) U (i j ) cij = , ( xi , x j ) U (i j ) 0, i = j

(4.25)

Fiecrui vrf al grafului G i se asociaz o variabil vi, ce are semnificaia de valoare a drumului minim x1 xn.. Rezolvarea sistemului de mai jos duce la aflarea soluiei problemei:

vi = min(v j + cij ) j i v n = 0

(4.26)

Pentru rezolvarea sistemului de mai sus se utilizeaz un procedeu iterativ, n acest mod se pleac de la informaia iniial definit n modul urmtor: vi( 0) = cin , i = 1,2,..,n-1 (4.27) ( 0) vn = 0 Pentru fiecare iteraie k ( k = 1,2,..,n ) se rezolv urmtorul sistem:
(k ) (v (jk 1) + cij ) vi = min i j vn = 0

(4.28)

90

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

unde: i = 1, n 1, j = 1, n , k N Acest proces de calcul se nchide n momentul n care:


vi( k 1) = vi( k ) , i = 1,2,...,n-1.

(4.29)

Atunci avem urmtoarele:


vi = vi( k ) = xi min x n (k ) min v1 = v1 = x1 x n

(4.30)

Determinarea arcelor drumului de valoare minima se face n modul urmtor: Fie xj1 vrful pentru care avem urmtoarea relaie:
k 1) v1( k ) = min(v j + cij ) = v (j1 + c1 j

(4.31)

Analog xj2 vrful pentru care avem urmtoarea relaie :


2) v1( k 1) = min(v j + c j1 j 2 ) = v (jk + c j1 j 2 2

(4.32)

Astfel drumul cutat este : =( x1,xj1,xj2,..,xn ) k 1) reprezint Drumul de valoare minima trece prin xj1 si conform programrii dinamice v (j1
valoare minim a drumului xj1 xn Exemplul 4.12 O ntreprindere de montaj are la dispoziie mai multe variante tehnologice de montaj a ansamblelor pentru un produs. Din datele existente n evidenele ntreprinderii reies costurile pariale de trecere (tabelul 4.3). Conducerea urmrete alegerea variantei tehnologice care permite realizarea montajului cu obinerea unui cost total minim.

M1 M1 M1 M1 M1 M1 M1

S1 -

S2 20 -

S3 30 20 -

S4 70 10 10 20 -

S5 50 -

S6 50 -

Tabelul 4.3 S7 40 20 30 -

Problema urmeaz a se rezolva prin determinarea unui drum de valoare minim n modelul graf asociat problemei (fig.4.20). (1) Pentru calcularea elementului vectorului vi s-a efectuat suma dintre elementele
vi si elementele corespunztoare ale rndului I din C i j
v1
(1)

(0 )

v2

(1)

= max ( ;;20 ;110;70;30 ; + 0) = 110

91

Elemente de teoria grafurilor

v3

(1 )

= max( ; ;10 + 40; + 20;50 + 30; + 0 ) = 80


x2 20 x1 30 20 10 x3 50 70 x4 50 10 40 20 x6 x5 20 x7 30

Fig.4.20
Matricea asociata acestui graf : C x1 x1 0 x2 x3 x4 x5 x6 x7 vi (1) vi ( 2 ) vi (3) vi (4 ) v (5 )
i

vi (0 )

x2 20 0

x3 x4 30 20 70 0 10 0 10 20 40 40 40 40 40 40 80

x5 50 0 20 50 50 50 50 50

x6 x7 50 40 20 0 30 0 30 60 60 60 60 60 0 0 0 0 0 0
(1)

110 130 110 110 140 130 110 150 130 110 150 130 110

In iteraiile urmtoare se nsumeaz elementele vectorului vi cu elementele corespunztoare liniei i din matricea C i se reine valoarea maxim. (5 ) (4 ) ntruct vi = vi s-a obinut soluia optim. Determinarea vrfurilor prin care trece drumul de valoare optima se realizeaz astfel:
v1
(5 )
(4 )
(3 )

= max j 1 v j
= max j 2 = max j 3 = max j 4

v2 v3

v6
v4

(2 )
(1)

= max j 6

( ( ) +c (v ( ) + c (v ( ) + c (v ( ) + c (v ( ) + c
4
3

1j

2j

3j

6j

4j

) = v ( ) + c = 130 + 20 ) = v ( ) + c = 110 + 20 ) = v ( ) + c = 60 + 50 ) = v ( ) + c = 40 + 20 ) = v ( ) + c = 0 + 40
4 2 j1 12
3 3 j2 2 23 6 36

x j1 = x 2
x j 2 = x3 x j3 = x6

64

x j4 = x 4
x j5 = x7

47

= ( x1 x 2 x3 x6 x 4 x7 )
vi = v1
(k )

= v1

(5 )

= 150

92

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

4.6.

Cuplaje. Probleme de repartiie (afectare)

n practica industrial situaii cum sunt: distribuia produselor la locurile de vnzare, repartizarea operaiilor tehnologice pe o resurs tehnologic suprancrcat, repartizarea activitilor n cadrul unui proiect de producie, repartizarea muncitorilor pe posturi de lucru etc, reprezint momente n care afectarea activitilor pe resurse are un rol esenial n optimizarea procesului de producie. Aceast afectare se poate asimila cu o asocierea a elementelor unei mulimi X = {x1, x2, ... , xn} cu elementele unei alte mulimi Y = {y1, y2, ... , ym} n condiiile unor condiii impuse. Fiecare asociere conduce la un anumit efect (regim, profit, cost etc) care poate fi calculat. Afectarea optim ntre elementele celor dou mulimi presupune: s se realizeze maximul de afectri sau suma efectelor afectrilor s fie maxim (sau minim, n funcie de semnificaia acestora). Reprezentarea geometric a situaiei de mai sus este un graf bipartit de forma urmtoare : x1 y1 x2 y2

xn

ym

Graful G = (X, U) se numete graf bipartit dac mulimea nodurilor poate fi mprit n dou mulimi disjuncte A i B astfel nct orice arc are extremitatea iniial n A i cea final n B. Submulimea de arce W U se numete cuplaj al unui graf bipartit dac are proprietatea c nu exist dou arce adiacente (sau, pentru orice nod exist cel mult un arc incident acestuia). Un cuplaj cu proprietatea c orice arc care nu face parte din cuplaj este adiacent cu un arc din cuplaj se numete cuplaj maxim. Numrul de arce ale unui cuplaj este mai mic sau egal cu numrul de elemente din fiecare din mulimile A i B. Determinarea unei afectri optime a dou mulimi X i Y, este echivalent cu determinarea unui cuplaj maxim de valoare optim (minim sau maxim) n graful bipartit asociat. n 1955, H.W. Kuhn a elaborat un algoritm, cunoscut n literatura de specialitate sub denumirea de algoritmul ungar, cu ajutorul cruia se poate determina un cuplaj maxim de valoare minim ntr-un graf bipartit pentru care A=B= n. Funcia obiectiv pentru problema de repartiie poate fi minimizat sau maximizat. Astfel se poate minimiza timpul total pentru a determina n sarcini sau se maximizeaz beneficiul prin repartizarea produselor la locurile de vnzare. Din matricea C (matricea costurilor asociata sarcinilor) se aleg n componente n aa fel nct niciodat dou elemente s nu figureze pe aceeai linie sau n aceeai coloana a matricei respective, alegerea fiind fcut astfel nct suma respectivelor elemente s fie minim. Astfel s-a obinut permutarea optim pentru problema dat Algoritmul ungar se bazeaz pe proprietatea c soluia optim a unei problemei s nu se schimbe dac se micoreaz sau se mrete cu o aceeai mrime fiecare element de pe o linie sau de pe o coloana a matricei . 93

Elemente de teoria grafurilor

Modelul matematic asociat unei astfel de probleme este sub forma :


n n min cij xij i =1 j =1 n xij = 1, j = 1,2.. i =n1 xij = 1, i = 1,2.. j =1

(4.37)

Fie matricea C= (cij)m,n unde cij> 0 si reprezint valoarea cuplajului. In cazul in care nu exista cuplaj atunci cij = .
Algoritmul de afectare ungar

Pasul 1 : Se transform matricea C = ( cij ) ntr-o matrice de forma C(1) = (cij)(1) care s conin cte un zero pe fiecare linie i pe fiecare coloana . Acesta se efectueaz alegnd din fiecare linie elementul cel mai mic dup care se scade din toate elementele liniei. Dac vor rmne coloane fr elemente nule se repet acest pas. Pasul 2 : a. pe linia cu cele mai puine zerouri se ncadreaz unul din zerouri i se noteaz (bareaz)cu X toate zerourile situate pe linia i pe coloana zeroului ncadrat; b. din cele n-1 linii rmase se considera linia cu cele mai puine zerouri i se procedeaz ca la punctul a; c. n ultima linie neconsiderat pn acum se alege un zero care se ncadreaz i se vor bara toate zerourile. Dac toate zerourile ncadrate sunt n numr de n atunci algoritmul se ntrerupe, soluia fiind cuplajul definit de aceste zerouri i care tot odat este cuplaj maxim. Pasul 3: Se stabilete un numr minim de linii i coloane ale matricei C(1) care sa-i conin zerourile. Se va bifeaz cu (*) lateral urmtoarele: a) linii care nu au nici un zero se ncadreaz; b) coloanele care conin zerouri barate pe linii marcate; c) linii care au cel puin un zero ncadrat n coloane marcate. Operaiile b) i c) se repeta pn cnd nu se mai poate marca nici o linie i mici o coloan. Suportul minimal este dat de mulimea liniilor marcate reunite cu mulimea coloanelor marcate. Pasul 4: Dup terminarea suportului minimal n matricea C(1) se definesc trei tipuri de mulimi de elemente : M1 mulimea elementelor netiate (nesituate pe linii i coloane tiate) M2 mulimea elementelor situate la intersecia liniilor tiate cu coloane tiate. M3- mulimea elemente situate pe linii si coloane tiate Dac m cel mai mic element din M1. Valoarea m se scade din toate elementele mulimii M1 i se aduna la toate elementele mulimii M2 Elementele mulimii M3 nu se vor modifica. Astfel se va obine o noua matrice C(2) pentru care se va aplica algoritmul ungar ncepnd cu Pasul 1.

94

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Exemplul 4.13 Un manager de proiect de producie trebuie s repartizeze 5 echipe de muncitori (Mi) calificaii la 5 lucrari de producie (Lj). Managerul estimeaz n matricea C n ct timp (ore) execut o echip fiecare lucrare, dorind s realizeze o repartiie a echipelor pe lucrari astfel ca suma timpilor de execuie s fie minim.
C L1 L2 L3 L4 L5 M1 100 225 550 500 300 M2 200 75 375 400 75 M3 80 325 100 300 400 M4 50 350 100 700 600 M5 60 450 400 600 200

Se construiete matricea ptratic C(1) care are elementele:


valoarea arcului (x i , x j ) daca exista arcul (x i , x j ) cij = daca nu exista arcul (x i , x j ) 100 200 80 50 225 75 300 325 (1 ) Pentru exemplul ales vom avea: C = 550 375 100 100 500 400 300 700 300 75 400 600

60 450 400 600 200

Pasul 1 Din fiecare linie se scade minimul acesteia apoi, n matricea obinut, din fiecare coloan minimul acesteia. Obine succesiv matricele: 0 10 0 0 50 150 30 0 150 30 150 0 225 250 375 100 0 225 250 365 (1) = 450 275 0 = 400 275 0 0 300 i C 2 0 290 200 100 0 400 300 150 100 0 400 290 225 0 325 525 125 175 0 325 525 115

(1) C1

Pe fiecare linie i pe fiecare coloan se afl cel puin un 0, care corespunde celui mai mic timp.
Pasul 2 n finalul acestui pas, pe fiecare linie i pe fiecare coloan va fi cel mult un zero ncadrat. Dac n final sunt n=5 zerouri, acesta este cuplajul maxim. 0 0 0 150 30 100 0 225 250 365 = 400 275 0 0 290 150 100 0 400 290 175 0 325 525 115

(1) C2

n total sunt 4 zerouri ncadrate i deci trecem la pasul 3. 95

Elemente de teoria grafurilor

Pasul 3 La acest se determin suportul minimal. Se va bifeaz cu (*) lateral urmtoarele: a) linii care nu au nici un zero se ncadreaz; se marcheaz linia L5 b) coloanele care conin zerouri barate pe linii marcate; se marcheaz coloana M2; c) linii care au cel puin un zero ncadrat n coloane marcate; se marcheaz linia L2 Rezult suportul minimal S={L1, L3,L4, M2} i se trece la pasul 4. Pasul 4 Cel mai mic element este m1=100 n linia L2, coloana L1. Matricea C(2) se obine dup regul astfel: Dac m cel mai mic element din M1. Valoarea m se scade din toate elementele mulimii M1 i se aduna la toate elementele mulimii M2 Elementele mulimii M3 nu se vor modifica. Matricea C(2) este urmtoarea, dup care se reia pasul 2 i obinem: 0 0 0 250 30 0 125 150 265 0 = 400 375 0 0 290 150 200 0 400 290 75 0 225 425 15

C ( 2)

Deoarece avem 5 zerouri ncadrate, am obinut cuplajul maxim de valoare minim, cruia i va corespunde repartizarea echipelor de muncitorilor pe lucrri astfel:
M1 M2 M3 M4 M5 L1 L2 L3 L4 L5

Cuplajul maxim are valoarea egal cu suma tuturor elementelor sczute pentru obinerea matricelor C(1) i C(2). V = 50+75+100+300+75+50+10+100=760ore

96

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

CAPITOLUL 5 TEHNICA DIAGRAMELOR DE TIP REEA


5.1. Generaliti privind modelarea prin reele

n practica industrial, proiectele de producie presupun efectuarea unor activiti (operaii) intercondiionate. Deoarece proiectele de acest tip dureaz sptmni, luni sau chiar ani, n desfurarea lor pot interveni schimbri care au implicaii directe asupra costurilor, resurselor sau tehnologiei. Pentru a modela arhitectura unui proiect de producie se pot utiliza trei tipuri de reprezentri: relaii de preceden, tabelare, reele. Analiza acestor reele ce modeleaz sistemul analizat, i permite managerului de producie, s coordoneze, planifice, urmreasc i s reorganizeze resursele umane i materiale astfel nct obiectivele propuse s se ating n mod optim i la timp. Dezvoltarea tehnicilor de optimizarea n reea a luat amploare ndeosebi dup cel de-al doilea rzboi mondial. Cele mai cunoscute astfel de tehnici: - tehnica diagramelor tip Gantt sau cu bare (dezvoltare a anilor 1910); - tehnica reelele de tip: - CPM (Critical Path Method) - Metoda Drumului Critic (1950); - MPM (Metro Potenial Method) - Metoda Potenialelor; - PERT (Program Evaluation and Review Technique) - Metoda PERT (1958); - GERT (Graphical Evaluation and Review Technique) - Tehnica GERT (1970) La planificarea unui proiect de producie, pentru a putea folosi o tehnic de tip reea, trebuie ca acesta s fie definit n cadrul unui sistem pe la baza un proces, a unei tehnologii i resurse de producie i totodat trebuie mprit n prile sale componente: activiti (operaii) i evenimente (fig.5.1). PRODUCIA capacitatea de a mri utilitatea unui produs sau serviciu motorul economiei. SISTEM reprezint ansamblul elementelor ce ascult de un ansamblu de reguli de funcionare bine definite n vederea ndeplinirii unui anumit scop. PROCES reprezint ansamblul operaiilor desfurate ntre recepionarea intrrilor i elaborarea ieirilor prin intermediul crora sistemul i ndeplinete o parte din funcia sa. TEHNOLOGIA reprezint orice tip de produs se realizeaz pe baza unei tehnologii, ce poate fi de produs, de procedeu, etc. RESURSA reprezint elementul cheie cu ajutorul caruia se poate reliza tehnologia ACTIVITATEA este specific resursei, iar componentele de baz ale unei activiti sunt: descrierea / denumirea activitii i codul acesteia; durata activitii (minute, ore, zile, sptmni, luni); resursele necesare realizrii activitii (umane, materiale, echipamente); Fig.5.1 costurile necesare realizrii activitii. Activitatea este simbolizat n reea prin litere majuscule (Ai). EVENIMENTUL simbolizeaz momentul de nceput sau de terminare a unei activiti i este simbolizat n reea cu cifre i nu au durat, ele delimitnd activitile. Pentru proiectele de producie, setul complet de activiti (operaii), necesare realizrii acestuia ca conine o combinaie de activiti n serie i paralel, formnd astfel reeaua logic a proiectului de producie ce poate fi reprezentat grafic. 97

Tehnica diagramelor de tip reea

Ealonarea n timp a operaiilor componente proiectului de producie, presupune determinarea duratei totale de realizare a proiectului adic intervalul dintre prima operaie i ultima operaie. Acest interval de timp este mai mare sau egal cu suma intervalelor luate pe drumul cel mai defavorabil i anume drumul critic. Algoritmul de determinare a drumului critic este acela de determinare a operaiilor critice, acestea fiind operaiile a cror ntrziere perturb desfurarea celorlalte operaii i necesit parcurgerea urmtoarelor etape: a. etapa cantitativ n care se stabilesc: - activitile (operaiile) componente ale proiectului; - durata activitilor (operaiilor); - condiionrile ce exprim legturile dintre activiti preciznd pentru fiecare activitate, activitile imediat precedente; - reprezentarea grafic a proiectului de producie prin reeaua logic. b. etapa calitativ n care se determin: - termenele activitilor datele la care pot sa nceap sau sa se termine activitile; - termenul final a proiectului. Drumul critic conduce la durata minim de execuie a proiectului de producie. Exemplul 5.1 n tabelul 1 este prezentat un proiect n care activitile sunt notate prin litere mari A, B, C, D, E, F, G. Activitile A i B sunt activitile de nceput ale proiectului. Activitatea A este direct precedent activitii C. De asemenea, activitatea C este direct precedent activitilor E i F etc. Toate relaiile de preceden sunt prezentate n tabelul 5.1 Tabelul 5.1
Nr. crt. 1 2 3 4 5 6 7 Activitile proiectului A B C D E F G Activitile direct precedente (condiionri) A B B C,D,E E Durate 3 2 2 6 4 4 1

Exist mai multe moduri de a reprezenta un proiect printr-o grafic-reea. Cele mai folosite dintre aceste tehnici sunt CPM i PERT. Metodele PERT i CPM au aprut n perioada 1958-1959, pentru a putea face fa nevoilor epocii dezvoltrii masive a ingineriei, n care tehnicile de planificare industrial ale lui Taylor i Gantt nu mai corespundeau. Diagramele Gantt presupun divizarea unei aciuni complexe ( proiect) n pari componente ( lucrri ) si apoi ealonarea acestora n timp, innd seama de succesiunea operaiilor n cazul proceselor tehnologice, resurse, termene impuse, etc. Diagrama Gantt confer informaii privind desfurarea lucrrilor i informaii derivate privind ealonarea resurselor necesare ( for de munc, resurse materiale). n cazul unor aciuni complexe cu sute de operaii se observ c avantajele acestor diagrame Gantt scad simitor, datorit imposibilitilor de corelare a lucrrilor componente. Eventuale modificri de durat n cazul proiectelor de producie, conduc la refacerea grafului Gantt (fig.5.1) la orice modificare ce apare. Graficul Gantt reprezint o form de vizualizare i de planificare a proiectelor, i reprezint o reea n care activitile i evenimentele sunt transpuse calendaristic pe o ax orizontal a timpului.

98

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Unei activiti i se asociaz o bar de lungime direct proporional cu durata estimat. Graficele Gantt au dezavantajul c nu arat interdependenele dintre activiti i evenimente. Exemplul 5.2 Este prezentat un proiect de construcii sub forma codificat conform tabelului de precedena 5.2. Graficul Gantt pentru acest proiect este reprezentat n fig.5.1. Tabelul 5.2
Nr.crt. 1 2 3 4 5 6 7 8 9 10 11 12 13 Denumirea activitaii Proiectare Achiziionare Comenzi Utilaje Organizare antier (etI) Formare cadre calificate Execuie dr interioare (et I) Execuie reele electrice (etI) Livrri, recepie utilaje Lucrri constr.montaj (etI) Organizare antier (et II) Execuie dr interioare (et II) Execuie reele (etII) Lucrri constr.montaj (etII) Cod P A CU OS1 F D1 R1 LU C1 OS2 D2 R2 C2 Activ. prec. P P P P A,OS1 A, OS1 CU A,OS1 OS1 D1,OS2,R1 R1 LU,C1,R2 Durat 7 2 3 1 10 2 5 6 4 2 3 5 10

Activitate 1 Proiectare(P) Achizitonare(A) Comenzi util(CU) Org.santier (OS) Exec dr.int ( D) Exec.retele ( R) Livr util (LU) Lucr.constrmont (C) Formare cadre (F) 2 3 4 5 6 7 8 9 10 11

Evaluare calendaristica 12 13 14 15 16 17 18 19 20 21

22

23

Fig.5.1 5.2. Metoda drumului critic (C.P.M.)

Metoda CPM este o metoda fundamental de analiz a drumului critic i un procedeu de analiz n care singurul parametru analizat este timpul n funcie de modalitatea de reprezentarea a reelei CPM distingem dou categorii i anume : reea ADC de tip activitate arc i reea CPM de tip activitate nod. Avantaje ale modelelor cu reele CPM: oblig la o analiz amnunit a structurii logice a proiectului; evideniaz n mod explicit legturile logice ntre activiti, determin durata real a proiectului, evideniaz activitile critice (activiti cheie ) i activitile necritice permind anumite rezerve de timp cu posibilitatea de distribuire spre activiti critice; Graful ntocmit i pstreaz configuraia chiar dac au loc modificri de durate sau termene, permit optimizarea proiectelor n funcie de timp. Reea CPM de tip Activitatea Arc (A-A) Construcia reelei CPM de tip A-A n reprezentarea reelei CPM de tip A-A se ine seama de urmtoarele convenii: 99

Tehnica diagramelor de tip reea

fiecrei activiti este reprezent printr-un arc cu orientarea dat de modul desfurrii activitii definit prin capetele sale; fiecare arc este delimitat de dou noduri (unul de nceput i cellalt de sfrit) ce simbolizeaz evenimentele (momentele) de nceput respectiv sfrit. Evenimentele reprezentnd stadii de realizare a activitilor. fiecrui arc i se asociaz deasupra sa denumirea activitii iar sub, o valoare egal cu durata activitii pe care o reprezint; Reeaua poate fi notat G(X,U), n care X-mulimea nodurilor i U-mulimea arcelor condiionarea a dou activiti se reprezint prin succesiunea a dou arce adiacente. Tipurile de activiti existente intr-o reea CPM sunt: - propriu zise cele ce consum i timp i resurs pentru realizarea ei; - ateptrile cele ce consum numai timp pentru a fi realizate; - fictive cele care nu consum nici timp nici resurs pentru realizare, ele exist datorit intercondiionrilor i reprezentrii grafice. Situaii posibile de condiionare (preceden) sunt reprezentate n fig.5.2 (a, b, c) - Activitatea A este direct predecesoare unei activiti B (A i B se numesc activiti succesoare fig.5.2 a) - Activitile B i C au aceeai activitate predecesoare A (fig.5.2b) - Activitile A i B sunt precedate direct de activitatea C (fig.5.2c)
1
A

2 a)

3
C

2 b)

1 3
C

2 B c)

Fig.5.2 La trasarea reelei CPM trebuie respectate urmtoarele reguli: - activiti care se execut n paralel, adic care pot ncepe n acelai moment i se pot termina n acelai moment, este interzis ca cele dou arce corespunztoare activitilor s aib ambele extremiti comune. n fig.5.3 care este reprezentarea corect, F fiind o activitate fictiv: A B incorect Fig.5.3 - nu trebuie introduse dependene nereale ntre activitile proiectului (neprevzute n tabelul de condiionri). Astfel, dac n tabelul de condiionri vom avea situaia: Tabelul 5.3
Activitate A B C D Activitate direct precedent (condiionri) A,B B

A B

F sau corect B

A F

atunci reprezentarea din fig.5.4 este incorect, deoarece introduce condiionarea dintre activitatea A i activitatea D, inexistent n tabel. 100

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Reprezentarea corect este dat n fig.5.5 n care a fost introdus activitatea fictiv F care anuleaz condiionarea ntre A i D: A C

B Figura 5.4

D A C

B Figura 5.5

- n reeaua CPM nu sunt admise circuite (existena unuia ar nsemna c orice activitate a acestuia ar fi precedent ei nsui). - reeaua CPM are un singur nod iniial (semnificnd "nceperea proiectului") i un singur nod final (semnificnd "sfritul proiectului"); - orice activitate trebuie s aib cel puin o activitate precedent i cel puin o activitate succesoare, exceptnd activitile care ncep din nodul iniial al proiectului i pe cele care se termin n nodul final al proiectului; - forma, lungimea i orientarea arcelor reelei CPM sunt arbitrare. Exemplul 5.3 Cu ajutorul tabelului (tab.5.1, tab.5.2) intercondiionrilor se construiete reeaua CPM (fig.5.6, fig.5.7).
2 CU 0 P 7 1 1 3 A 2 f1 0 3 OS2 2 F 10 4 LU 6 C1 R1 5 D1 2 5 0 f3 0 f2 R2 5 D2 3 7 6 10 C2

OS 1

Fig.5.6 A 1 B 3 E 4 G 2 C 5 F 6

Figura 5.7 101

Tehnica diagramelor de tip reea

Analiza reelei CPM de ti A-A Aceast analiz const n determinarea termenelor evenimentelor, termenelor i rezervelor de timp ale activitilor, determinarea activitilor critice i determinarea duratei minime a proiectului (lungimea drumului de valoare maxim). Avem deci de gsit drumul de lungime maxim dintr-un graf fr circuite, pentru care se poate aplica algoritmul lui Ford simplificat. Conform acestui algoritm, se calculeaz pentru fiecare nod al grafului: Pasul 1 Determinarea termenelor evenimentelor A. Termenul minim de realizare a evenimentului j ( t -j ). - reprezint momentul cel mai devreme posibil de terminare a mulimii (U-(j)) activitilor care converg n nodul j Termenul cel mai devreme a evenimentului j, se calculeaz astfel:

, dac U-(j)= 0 t -j = max (t + d (i, j )), dac U-(j) i jU - ( j )

(5.1)

B. Termenul maxim a evenimentului j ( t + j ) reprezint momentul cel mai trziu posibil de + ncepere a mulimii a activitilor (U (j)) care pleac din nodul j . Termenul cel mai trziu de realizare a unui eveniment j se calculeaz astfel:
, dac U (j)= t j + tj = + , dac U-(j) min ( t d ( j , k )) k kU + ( j ) -

(5.2)

Intervalul [ t -j , t + j ] se numete intervalul de fluctuaie al evenimentului j. Evenimentul j se poate plasa n orice moment al acestui interval de fluctuaie, fr a periclita durata total a ntregului proiect. Termenele maxime i minime pentru fiecare eveniment, calculate cu relaiile (5.1) i (5.2), se completeaz n reeaua CPM n mici dreptunghiuri ataate nodurilor (fig.5.8a), sau fiecare nod al reelei se reprezint printr-un cerc divizat n trei pri (fig.5.8b), n care se trece n partea de sus numrul nodului j, n partea inferioar-stnga termenul minim de realizare t -j i n partea inferioar-dreapta termenul maxim de realizare t + j .
1
ti ti* A d(i, j)

2
tj tj*

i
m tj
M tj

a) Fig.5.8

b)

Exemplul 5.4 Pentru reeaua din fig5.7


3 6 A 0 0

8 8

3 2 3
2 2

2
D 6 E

4 4
6 8

F 1 G

6 12 12

Fig.5.9

102

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Pasul 2 Determinarea termenelor i rezervelor de timp ale activitilor


Se calculeaz pentru fiecare activitate (i,j), urmtoarele termene ale activitilor: a) Termenul minim de ncepere a activitii (i,j):

t - (i,j) = t ib) Termenul minim de terminare a activitii (i,j):

(5.3)

t t- (i,j) = t - (i,j)+d(i,j) = t i- + d(i,j)


c) Termenul maxim de terminare a activitii (i,j):

(5.4)

t t+ (i,j) = t + j
d) Termenul maxim de ncepere a activitii (i,j):

(5.5)

t + (i,j) = t t+ (i,j)-d(i,j)= t + j -d(i,j)

(5.6)

Aceste termene arat n ce interval poate fi situat o activitate, dar nu dau informaii n legtur cu diferene dintre o plasare posibil sau alta. n acest scop se vor calcula, pentru fiecare activitate (i,j), urmtoarele rezerve de timp: a) Rezerva total de timp (Rt) a unei activiti (i,j) reprezint intervalul maxim cu care poate fi amnat (ntrziat) o activitate fr ca durata total a proiectului s fie periclitat. Rezerva total este diferena dintre termenul maxim de terminare i termenul minim de terminare: Rt(i,j) = t + (5.7) j - t i - d(i,j) b) Rezerva liber de timp (Rl) a unei activiti (i,j) reprezint intervalul cu care poate fi prelungit activitatea cu respectarea termenelor minime de ncepere a tuturor activitilor adiacente succesoare.
Rl(i,j) = t j - t i - d(i,j)

(5.8)

c) Rezerva independent de timp (Rs) a unei activiti (i,j) reprezint intervalul n care poate fi plasat o activitate fr a consuma nici din rezervele de timp ale activitilor ce o preced, nici din cele ale celor ce o succed.
+ Ri(i,j) = max( t j - t i -d(i,j))

(5.9)

Intervalele de fluctuaie pentru termene i rezervele libere de timp pentru activiti caracterizeaz elasticitatea unui program de planificare. Cu ct aceste intervale sunt mai mici cu att programul este mai rigid. Drumul cel mai lung din reea a crui lungime este egal cu durata minim de execuie a proiectului se numete drum critic. Orice amnare a unei activiti a acestui drum duce la lungirea duratei de execuie a proiectului. Activitile de pe drumul critic nu dispun de rezerv de timp i se numesc activiti critice. 103

Tehnica diagramelor de tip reea

O activitate critic (i,j) este caracterizat prin:


+ t i- = t i+ , t -j = t + j , t j t i = d(i,j)

(5.10) (5.11)

Rt(i,j) = Rl(i,j) = Ri(i,j) = 0

n practic industrial este nevoie s ne interesm de activiti, n ceea ce privete realizarea acestora, dect de termene. Activitile (operaiile) critice trebuind s fie realizate la datele calculate deoarece nu dispun de rezerv de timp i aceasta pentru a nu depi termenul de finalizare al proiectului. Celelalte activiti pot fi amnate cu rezervele lor de timp, dar consumarea acestora face ca proiectul s devin rigid. Pentru activitile proiectului analizat n fig.5.7, termenele activitilor i rezervele de timp sunt date n tabelul de mai jos: Tabelul 5.4 + + tm tm tM tM Activiti Cond. Durate R R R
t l i

A = (1,2) B = (1,3) C = (2,4) D = (3,4) E = (3,5) F = (4,6) G = (5,6)

A B B C,D,E E

3 2 2 6 4 4 1

0 0 3 2 2 8 6

3 2 5 8 6 12 7

3 0 6 2 4 8 11

6 2 8 8 8 12 12

3 0 3 0 2 0 5

0 0 3 0 0 0 5

0 0 0 0 0 0 0

Printre avantajele metodei CPM evideniem: determinarea cu anticipaie a duratei de execuie a proiectelor complexe; explicitarea legturilor logice i tehnologice dintre activiti; evidenierea activitilor critice; evidenierea activitilor necritice, care dispun de rezerve de timp; permite efectuarea de actualizri periodice fr a reface reeaua CPM reprezint o metod operativ i raional care permite programarea n timp a activitilor innd seama de resurse. Dezavantajele acestei metode sunt n principal: greutatea desenrii reelei CPM, reprezentarea exact a tuturor condiionrile din proiect, n condiiile n care acestea sunt foarte complicate iar reeaua logic trebuie s fie simpl, clar, complet nct s fie util; dac se respect toate regulile de construire a reelei CPM, rmn variante de reprezentare astfel nct dou reprezentri ale aceluiai proiect fcute de doi indivizi pot s nu semene aproape deloc.
Reea CPM de tip Activitatea Nod (A-N)

Construcia reelei CPM de tip A-N


n reprezentarea reelei CPM de tip A-N se ine seama de urmtoarele convenii: fiecare activitate este reprezent printr-un nod notat printr-un dreptunghi; fiecare arc al reelei delimitat de dou noduri (unul de nceput i cellalt de sfrit) simbolizeaz relaiile de preceden ntre activiti. reeaua CPM de tip A-N trebuie s aib un singur nod iniial i un sigur nod final i n mod curent se introduce un nod fictiv de nceput (START) i un nod fictiv de final (FINISH), iar aceste dou noduri (activiti) sunt singurele fictive din cadrul reprezentrii A-N. 104

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

n reprezentare A-N fiecare nod este simbolizat printr-un dreptunghi iar acesta este compartimentat n ase csue (fig.5.11) unde se nscriu urmtoarele: - simbolul activitii (operaiei) i; - durata activitii d(i); - termenul minim de ncepere t - (i) termenul minim de terminare t t- (i) termenul maxim de terminare t t+ (i) termenul maxim de ncepere t + (i)
t-(i)
i t t(i) t+(i) d(i) t+t(i)

Fig.5.10 a) Termenul minim de ncepere a activitii:


0, (i ) = max t (k ), i k (i ) daca

(i ) = daca (i )

(5.12)

b) Termenul minim de terminare a activitii:

t t (i ) = t (i ) + d (i )
c) Termenul maxim de terminare a activitii:
t t (i ), t (i ) = min t + ( j ), j + (i )
+ t

(5.13)

daca + (i )

daca + (i ) =

(5.14)

d) Termenul maxim de ncepere a activitii:

t + (i ) = t t+ (i ) d (i )

(5.15)

Exemplul 5.5 Este prezentat un proiect de producie, sub forma codificat, conform tabelului de precedena 5.5. S se determine temenele activitilor proiectului i activitile critice ale acestuia, ce determin durata maxima a proiectului utiliznd ambele reprezentri ale reelei CPM (A-A, A-N) Tabelul 5.5
Denumire activitate
A B C D E F G H I J K L M N P

Activitati directe precedente A A A A B, C B, C D D, E F, G, H H K, L I, J, M K, L

Durata
5 4 1 4 5 4 2 2 6 4 6 5 2 3 3

105

Tehnica diagramelor de tip reea

Reprezentarea A-A (fig.5.11):


D

55 2
B

9 11 4 0

6
J

1 00

5 4

5 4
F G

1C 3 67

5 4 10 13

17 17 9 N 3
M2 K

10 3 20 20

99 7 0
L

6 5

15 15

6 89

Fig.5.11 Reprezentarea A-N (fig.5.12):


5 E 10 8 5 13 5D 9 7 4 11 0A5 055 0Y0 000 0B4 347 5 F9 5 49 5C6 617 6G 8 7 29 6H 8 7 29 8 L 13 10 5 15 15 P 18 17 3 20 10 J 14 13 4 17 9 I 15 11 6 17 9 K 15 9 6 15 15 N 17 15 3 17 17 N 20 17 3 20

20 Z 20 20 0 20

Fig.5.12 Planificarea detaliat sub forma unei reele permite echipei de management de proiect s defineasc tot ceea ce trebuie efectuat ntr-un mod detaliat pentru atingerea la timp a obiectivului proiectului. Crearea reelei CPM i analiza drumului critic evideniaz interdependenele i zonele cu probleme care nu sunt nici evidente, nici bine definite prin alte metode de planificare. Reprezentarea CPM reduce posibilitatea de a lua decizii la nivelul conducerii superioare i totodat necesit mult timp pentru detalii conducnd la o lips a unui istoric privind costurile.
5.3. Metoda potenialelor (Metro Potenial Method)

Metoda potenialelor sau MPM este un procedeu de analiz a drumului critic care ncearc s depeasc neajunsurile metodei CPM, n care, ca i n metoda CPM, se analizeaz parametrul timp, diferena constnd n felul n care se construiete graful reea: fiecrei activiti A i se asociaz un nod A; fiecrui nod i se asociaz o valoare dat de durata activitii pe care o reprezint; condiionarea (succesiunea) a dou activiti se reprezint printr-un arc, orientat de la o activitate la alta; fiecrui arc dintre dou activiti A i B i se asociaz un numr reprezentnd valoarea tAB.

Determinarea termenelor i rezervelor:


a) Termenul minim de ncepere a activitii: 106

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

0, (i ) = max t - (k ) + t (k , i ) , k (i )

daca (i ) = daca

(i )

(5.16)

b) Termenul minim de terminare a activitii:


t t (i ) = t i (i ) + d (i )

(5.17)

c) Termenul maxim de ncepere a activitii:


t - (i ), daca + (i ) = t + (i ) = min t + ( j ) t (i , j ) , daca + (i ) j + (i )

(5.18)

d) Termenul maxim de terminare a activitii:


t t+ (i ) = t + (i ) + d (i )

(5.19)

Rezerva total Rt(i) a activitii se calculeaz cu relaia:


Rt (i ) = t * (i ) t (i )

(5.20)

Exemplul 5.6 Condiionrile de preceden din cadrul unui proiect de producie sunt sintetizate n tabelul 5.6. S se determine activitile critice ale proiectului.

Tabelul 5.6
Denumire Durata Activitati directe Conditionari activitate precedente 6 A
B C D E F G H I J K 4 2 4 3 2 3 4 5 3 0 A A A B B D E, F C, D, F G, I H, J

tAB = 2 tAC = 3 tAD = 2 tBE = 3 tBF= 3 tDG = 1 tEH = 1, tFH = 2 tCI=4, tDI=3, tFI=3 tGJ = 3, tIJ = 2 tHK = 3, tJK = 3

Reeaua asociat proiectului este dat n fig.5.13. Se parcurge reeaua n sens direct de desfurare i se determin termenele minime de ncepere i terminare a activitilor proiectului cu relaia (5.16, 5.17), dup care acesta se parcurge n sens invers de desfurare i se determin termenele maxime de ncepere i terminare a activitilor proiectului cu relaiile (5.18, 5.19). Rezervele totale se determin cu relaia 5.20. Drumul critic este format din activitile critice :A, C, I, J, K.

107

Tehnica diagramelor de tip reea

3 2 0A6 066 3 2 2B6 3 47 3 3C5 325 2D 6 44 8

5E 8 8 3 11 5 F7 628 4 3 1 2

1 7 H 11 9 4 13 7 I 12 7 5 12 2 3G 6 6 39 3 3 12 K 12 12 0 12 9 J 12 9 3 12 3

Fig.5.13
5.3. Metoda PERT

Metodele CPM i MPM furnizeaz informaii care sunt utile n procesul de management, ns ele nu in seama de posibilele variaii ale duratelor de execuie ale activitilor i lucreaz cu timpi bine determinai asociai fiecrei activiti permind att estimarea costurilor, ct i a timpului de execuie a proiectului. Aceste metode sunt deterministe, iar controlul timpului i costului de execuie a unui proiect se realizeaz prin determinarea drumului critic al acestuia. Metoda PERT permite calcularea timpului mediu de finalizare a unui proiect, identificarea activitilor critice, precum i estimarea probabilitilor de realizare a termenelor planificate. Deoarece n practic, duratele activitilor sunt insuficient cunoscute sau incerte prin considerarea conceptelor statistice, duratele activitilor sunt considerate variabile aleatoare caracterizate prin media i dispersia lor. Metoda PERT folosete trei durate de timp asociate fiecrei activiti (optimist-a, probabil-m i pesimist-b), formnd o medie ponderat, care reprezint durata ateptat/estimat a proiectului. Durata optimist a unei activiti i (ai), este considerat durata minim de execuie pentru activitatea i, n condiii generale normale. Durata probabil a unei a unei activiti i (mi) ca fiind estimaia cu cea mai mare ans de realizare a proiectului n condiii normale; Durata pesimist a unei activiti i (bi) este considerat durata maxim de realizare a activitii i, atunci cnd exist condiiile cele mai defavorabile de realizarea a proiectului. Astfel, timpul de execuie a unui proiect este calculat pe baza teoriei probabilitilor. Metoda PERT este o metod probabilist bazat pe distribuia beta pentru timpul fiecrei activiti i pe o distribuie normal (Gauss) pentru durata de timp estimat, permind astfel planificarea i controlul timpului de execuie a ntregului proiect. Reeaua PERT este o reea CPM sau MPM n reprezentare, iar fiecare activitatea din reea este caracterizat cu cele trei tipuri de durate (a, m, b). Durata fiecrei activiti a proiectului are o distribuie . Durata medie de execuie ( t ) (sperana matematica) a unei activiti (i) este dat de expresia: a +4m+b E(t)= t = (5.20) 6 Dispersia duratei de execuie ( 2 (i ) ) a activitii (i) caracterizat i ca o msur a gradului de nesiguran n estimarea duratei activitii se calculeaz cu expresia:
ba (i ) = 6
2

(5.21) 108

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Durata total a proiectului este o variabil aleatoare cu distribuie normal avnd media i dispersia:
T = t (i)
iDcrit

2 = 2 (i)
iDcrit

(5.22)

unde Dcrit reprezint mulimea tuturor activitilor care sunt pe drumul critic. Probabilitatea de realizare a duratei planificate Tplan a unui proiect se determin calculnd, factorul de probabilitate Z, dup relaia (5.23) i apoi se deduce din tabelul valorilor funciei Laplace probabilitatea p ( T Tplan).

Z=

T plan T

(5.23)

Algoritmul PERT pentru determinarea probabilitii de finalizare a unui proiect la termenul planificat Pasul 1 Se calculeaz durata medie a fiecrei activiti din reeaua PERT, utiliznd relaia (5.20); Pasul 2 Se calculeaz termenele activitilor reelei PERT, utiliznd una din metodele CPM sau MPM; Pasul3 Se calculeaz dispersia duratei fiecrei activiti cu relaia (5.21); Pasul 4 Se calculeaz durata total de execuie a ntregului proiect ( T ) i dispersia ( 2 ) cu relaiile (5.22); Pasul 5 Se determin probabilitatea de realizare a duratei planificate a proiectului dup relaia 5.23 folosind tabelul funciei Laplace; Pasul 6 Se face analiza proiectului, conform probabilitilor de realizare a duratei a proiectului: - dac p 25 % arat un risc foarte mare ca proiectul s nu se realizeze la termenul planificat i se impune revizuirea duratelor de execuie ale activitilor n sensul urgentrii desfurrii acestora; - dac p 50% planificarea activitilor este corect i se poate aplica; - dac p 60% se respect termenul planificat dar exist o risip de resurse. Exemplul 5.7 Se consider un proiect de producie a crui activiti i condiionri sunt indicate n tab.5.7. Se cer urmtoarele: - s se determine activitile critice ale proiectului de producie; - s se determine probabilitatea ca realizarea proiectului de producie s se ncadreze ntr-o perioad planificat de 41 u.t.

109

Tehnica diagramelor de tip reea

Tabelul 5.7 Denumire Activitati directe Durata [u.t.] activitate precedente a m b A 9 6 3


B C D E F G H I J A A B B, C B D, E F, G B, C H, I 4 5 2 2 4 4 2 6 5 7 8 4 5 5 6 4 10 8 10 11 9 8 12 11 6 20 17

a) Pentru fiecare activitate a proiectului se determin durata medie de execuie i dispersia cu relaiile (5.20), respectiv (5.21.)(tab.5.8), dup care se construiete reeaua CPM n reprezentarea A-A (fig.5.14). Tabelul 5.8 Denumire Durata Dispersia activitate 2
A B C D E F G H I J 6 7 8 4,5 5 6 6,5 4 11 9 1 1 1 1,17 1 1,34 1,17 0,67 2,33 2

Se determin termenele minime i maxime pentru ale evenimentelor proiectului i se nscriu n csue alturate nodurilor reelei CPM.
13 14,5

1
0 0

A 6

2
6 6

B 7 C 8

3
0 4,5 E

G 5 6,5 5 19 19 I 11

F 6

25,5 25,5 6
4 H J 7 9 29,5 29,5

4 14 14

8 38,5 38,5

Fig.5.14 Activitile critice ale proiectului sunt A, C, E, G, H, J, iar durata medie de execuie a proiectului este T = 38,5 u.t. b) Dispersia total a proiectului este:

2 = 2 ( A) + 2 (C ) + 2 ( E ) + 2 (G ) + 2 ( H ) + 2 ( J ) = 6.84
Factorul de probabilitate Z este:

Z=

T plan T

41 38.5 0.95 2.62

Pe baza tabelului lui Laplace obinem probabilitatea P(Z<0.95)=0.83=83%.

110

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Metodele PERT i CPM nu sunt metode lipsite de dezavantaje. Complexitatea lor se adaug problemelor de implementare. Prin urmare de cele mai multe ori aceste metode devin foarte costisitoare i greu de folosit n cazul proiectelor complexe, de mare anvergur. Alte dezavantaje n folosirea metodelor PERT i CPM sunt: - efort mare n ceea ce privete munca i timpul necesare aplicrii lor; - reducerea posibilitii de a lua decizii la nivelul conducerii superioare; - lipsa datelor istorice pentru estimarea costurilor; Metoda PERT permite specificarea probabilitilor de realizare la termen, n avans sau cu ntrziere a proiectelor Metoda CPM permite evaluarea compromisului timp cost (efectul costului mrit pentru reducerea timpului de execuie fa de costul n condiii normale pentru unele activiti).
5.4. Tehnica GERT

GERT (Grafical Evaluation and Review Technique Tehnica de analiz i evaluare grafic ) este o schem-model dezvoltat pentru situaii mai complexe dect cele care pot fi rezolvate de PERT/CPM. GERT combin teoria grafurilor, schema probabilistic PERT/CPM i arborele de decizie. Elementele utilizate de metod sunt nodurile schemei logice (etapele) i activitile reprezentate prin sgei i caracterizate prin doi parametri respectiv, probabilitatea ca o activitate dat s fie realizat i funcia de distribuie care estimeaz timpul necesar realizrii activitii. Evaluarea schemei GERT arat probabilitatea de realizarea a fiecrei etape i intervalul de timp dintre acestea. Cteva dintre diferenele celor dou metode sunt relevate n tabelul 5.1. Tabelul 5.1
Tehnica GERT - ramificaia n schema-model; este probabilistic - sunt posibile diverse distribuii pentru estimarea timpului - exist flexibilitate n realizarea etapelor - este acceptat ntoarcerea la evenimentele anterioar - este dificil folosirea ca metod de control Metoda PERT/CPM - ramificaia n reeaua logic este determinist - este utilizat numai distribuia beta - nu exist flexibilitate n realizarea etapelor - ntoarcerea la evenimentele anterioare nu este permis - poate fi folosit pentru control

Pentru optimizarea problemelor PERT/CPM exist programe de calculelor. Diversele probleme de tip GERT se rezolv prin simulri cu ajutorul calculatorului. Cel mai nou model GERT se numete Q-GERT i simuleaz reele ale liniilor de ateptare. Exist i alte variante ale metodei PERT care au trsturi similare cu GERT cum ar fi exemplu, Q-GERT-VERT, dar GERT se pare c are rspndirea cea mai mare. Etapele folosite n GERT sunt urmtoarele: Transpunerea descrierii calitative a proiectului ntr-o schem, dup modelul folosit n PERT/CPM Strngerea informaiilor necesare pentru a descrie activitile schemei, cu accentul nu numai pe activitile specifice care sunt luate ca model, dar i pe cele cu posibilitile de realizare, precum i pe orice activiti alternative care exist Stabilirea funciilor de echivalen a reelei. 111

Tehnica diagramelor de tip reea

Transformarea funciei echivalente a schemei n urmtoarele dou msuri de performan: - probabilitatea ca etapele specifice s fie realizate - funcia generatoare a momentului de timp. Analiza rezultatelor i stabilirea concluziilor legate de sistem.

Lista simbolurilor utilizate n metoda GERT, mpreun cu cteva exemple este prezentat n fig.5.1: n aceast figur, n partea stng sunt prezentate intrrile cu noduri iar n partea dreapt sunt ieirile. Aa cum se arat n exemplu, toate combinaiile de intrare i ieire a simbolurilor sunt posibile. Aceast metod poate fi utilizat n cazul proiectelor pentru introducerea de noi tehnologii de fabricaie a produselor industriale, cercetarea i dezvoltarea tehnologic .a.
A a. Inceput la inceput (EST)

>2

b. Sfirsit la sfirsit (LST)

B >3

c. Sfirsit la inceput (EFT)

>4

d. Inceput la sfirsit (LFT)

B >8

EST = 2 Activitatea = R D urata = 5 LST = 3

EFT = 4

LFT = 8 e. Nomenclatura activitatii

Fig.5.1 Exemplu de utilizare a metodei GERT: Un subansamblu al unui produs este fabricat n 4 ore. Controlul tehnic de calitate refuz 25% dintre piesele subansamblului pentru c nu sunt corespunztoare, sunt deci rebuturi i trebuie refcute. Timpul necesar pentru control este variabil i este distribuit exponenial n intervalul de o or. Refacerea pieselor rebuta necesit 3 ore dar, la controlul acestora sunt refuzate 30%, dintre ele. Piesele care sunt acceptate la primul control i la cel de-al doilea (al pieselor refcute) sunt transmise spre finisare, operaie care necesit 10 ore i respectiv 14 ore. Controlul tehnic de calitate respinge 5% din piesele finisate care, deci, trebuie refinisate. Aceast situaie poate fi modelat sub forma unei scheme GERT astfel nct s fie rezolvat pentru procentajul ateptat i timpul cerut de producerea unui subansamblu bun, corespunztor normelor de calitate. Cu ajutorul simbolurilor grafice GERT prezentate n figura se ntocmete schema modelului GERT din figur

112

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Inceputul evenimentului cu ramificatii care trebuie sa se produca

a b a b c a b c

Sfirsitul evenimentului ce rezulta oricind se produce a sau b

Evenimentul intermediar ce rezulta cand dupa a se produce b sau c

Evenimentul intermediar ce rezulta cand dupa a , b, c se produc d sau e

Fig.5.2.
Fabricare a Control 1 b Refacere d Control 2 e Refacere

f c i g j h Finisare Control 3

Piese bune

Fig.5.3 Activitatea a reprezentrii 4 ore de fabricaie a pieselor unui subansamblu. Rezultatul acestei activiti este verificat de ctre controlul tehnic de calitate n urma cruia rezult urmtoarele categorii de piese : 75% din piesele fabricate sunt recepionate ca bune (a) i trimise spre finisare (c), iar 25% sunt rebutate (b). Acestea din urm se ntorc pe linia de fabricaie i sunt refcute (d). Controlul le verific i rezult c 30% din ele sunt rebuturi i trebuie refcute (e=30% din 25% rebuturi = 7,5% dn total ) . Piesele bune din lotul refcut ( f=70% din 25% rebuturi =17,5% din total ) sunt trimise mpreun cu lotul c (c+f=70%+17,5%=87,5% din total ) spre finisare ; efectuarea operaiei de finisare pentru 60% din piesele acestui (g) necesit 10 ore iar restul de 40 % din piesele (h) necesit 14 ore. Dup controlul tehnic de calitate al pieselor finisate rezult c 5% dintre ele sunt rebuturi (i) i trebuie trimise spre refacere iar restul sunt piese bune ( j=955 din 87,55=83,125% din totalul pieselor componente ale subansamblului). Timpul pentru ca un lot mediu s parcurg traseul din schem poate fi aflat n acelai mod n care s-a calculat i rezultatul final. Rezultatul analizei este mbogit fa de simplu PERT/CPM, dar i rezolvarea informatic este mai complex, n special pentru schemele mari.

113

Elemente de teoria deciziei

CAPITOLUL 6 ELEMENTE DE TEORIA DECIZIEI Actul de a decide este un atribut al fiinei umane. Istoria preocuprilor pentru a aeza procesul decizional pe baze raionale coincide cu nsi istoria societii omeneti, la nceput manifestndu-se n activitatea individual i apoi n cele colective. Se pot gsi elemente n legend (fondarea Cartaginei), n istoria antic (asediul Siracusei i intervenia lui Arhimede) i n Evul mediu. Marocanul Sidi belAbbes es Sebti, n secolul al XII lea, a inventat prima main cu program nregistrat, util prediciei, i este precursorul ameliorrii optimumului. Galileo Galilei a reabilitat teoria deciziilor, Pascal i Fermat au introdus noiunea de speran matematic, Bernoulli a avut preocupri n domeniul deciziilor n condiii de incertitudine. Decizia n activitatea managerial se prezint sub dou forme: actul decizional; procesul decizional. O decizie ia forma unui act decizional dac se desfoar ntr-o perioad foarte scurt de timp. Se refer la situaii decizionale cu complexitate redus sau cu caracter repetitiv, cnd variabilele implicate sunt bine cunoscute de decident. La baza actelor decizionale stau experiena i intuiia managerilor. Procesul decizional reprezint ansamblul fazelor prin intermediul crora se pregtete, adopt, aplic i evalueaz decizia. 6.1. Procesul i sistemul decizional al ntreprinderii

Situaiile decizionale in cadrul ntreprinderii sunt variate i conduc la procese decizionale eterogene din punct de vedere al parametrilor constructivi i funcionali. Acesta este motivul pentru care se impune o abordare analitic a principalelor elemente implicate n procesul decizional. Principalele elementele care definesc procesul decizional sunt: - decidentul o persoan sau un grup; - o situaie complex ce poate fi rezolvat pe mai multe ci; - variantele (criterii) de rezolvare ale situaiei; - criteriile de apreciere a variantelor care precizeaz punctul de vedere care se ia n considerare n alegerea celei mai bune variante; - rezultatele pentru fiecare variant de rezolvare n condiiile date marcheaz nivelul cantitativ sau calitativ pentru fiecare variant; - strile de condiii obiective, formate din totalitatea condiiilor interne i externe ale firmei n care aplic variantele; - obiectivele decidentului ca elemente finale ale procesului de decizie, care pot s constituie att cauza declanrii deciziei, ct i efectul aplicrii ei. Pentru ca procesul decizional s fie eficient, decidenii trebuie s progreseze ntr-un ritm rapid pentru a face fa cerinelor i situaiilor dificile generate de transformrile survenite n mediul micro i macroeconomic. n funcie de condiiile din mediul decizional apar situaii decizionale, care pot s fie: Certitudine unui criteriu i corespunde o singur consecin, iar n proces intervin variabile controlabile, ale cror caracteristici sunt cunoscute i evoluia lor poate fi preconizat; Risc - unui criteriu i corespund dou sau mai multe consecine O parte din variabile sunt necontrolabile i chiar evoluia unor variabile controlabile este greu de anticipat, iar fenomenele sunt de natur stohastic i strile aleatoare;

114

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Incertitudine probabilitatea de apariie a consecinelor nu este cunoscut i nu poate fi determinat. Exist un numr mare de variabile, cu puine excepii controlabile; Fuzzy condiiile obiective n care se desfoar procesul decizional i funcionarea sistemului nu pot fi descrise precis, fiind caracterizate prin concepte vagi. n funcie de strile de condiii obiective n care se iau deciziile, procesul decizional se poate clasifica astfel: a) Decizii deterministe (exacte) consecinele ataate criteriilor sunt rezultatul unor calcule exacte; b) Decizii probabilistice consecinele ataate criteriilor nu au valoare cert, nici constant, dar se cunoate prin mijloace matematice sau statistice evoluia acestor imperfeciuni; c) Decizii apreciative nu se cunosc probabilitile de evoluie a consecinelor, care ns se apreciaz. Sistemul decizional al ntreprinderii reprezint ansamblul deciziilor adoptate i aplicate n cadrul su, structurate conform obiectivelor urmrite i ierarhiei manageriale. Principalele funcii ale sistemului decizional sunt: anticiparea i pregtirea evoluiei pe termen lung i mediu a ntreprinderii; armonizarea i direcionarea deciziilor de natur organizatoric (armonizarea activitii resursei umane); declanarea aciunilor resursei umane al nivelul ntreprinderii i al compartimentelor sale. Sistemul decizional alturi de sistemul informaional i sistemul operaional alctuiesc sistemul managerial al ntreprinderii (fig.6.1).

Fig.6.1 Activitatea desfurat n cadrul unei ntreprinderi (sistemul managerial) este rezultatul interaciunii a trei subsisteme . SUBSISTEMUL DECIZIONAL (S.S.D ) are rol de conducere a activitilor desfurate n cadrul unui sistem n vederea realizrii obiectivului fixat i ndeplinirii scopului pentru care a fost creat. SUBSISTEMUL OPERAIONAL ( S.S.O.) are rol de a executa deciziile conducerii folosind metode i instrumente disponibile. SUBSISTEMUL INFORMAIONAL asigur legtura n ambele sensuri ntre S.S.D. i S.S.O. DATA reprezint elementele constitutive ale unei informaii ce sunt supuse unor prelucrri pentru a obine informaia. INFORMAIA acumulare cantitativ de date care se ordoneaz, combin, compar, transmite i nregistreaz. 115

Elemente de teoria deciziei

Se poate face o sistematizare a deciziilor dup apartenena la funciile managementului (tabelul 6.1). Tabelul 6.1
FUNCIA PLANIFICARE ORGANIZARE COMANDCOORDONARE CONTROL EXEMPLE DE DECIZII Care sunt obiectivele pe termen lung ale firmei Ce strategii rezolv optimal aceste obiective Care sunt obiectivele pe termen mediu Ci subordonai trebuie s raporteze direct unui manager Ce grad de centralizare este necesar n organizaie Cum trebuie s fie proiectate sarcinile Cum trebuie lucrat cu salariaii care par a fi slab motivai Care este stilul de ndrumare cel mai eficient ntr-o anumit situaie Cnd este momentul potrivit pentru a dezamorsa un conflict Ce activiti ale firmei trebuie controlate Cum trebuie efectuat controlul Ce tip de sistem informaional trebuie s aib firma

n concepie cibernetic modelul general privind etapele procesului decizional este prezentat n fig.6.2..
Scanarea situatiei interne si externe

Se cere luata o decizie? Da

Nu

Este o decizie de rutina? Se aplica regula de decizie programata

Nu Da

Se genereaza o decizie neprogramata prin metoda de rezolvare a problemelor

6 Se monotorizeaza rezultatul

Fig.6.2 Eficientizarea procesului decizional reprezint conceperea i operaionalizarea proceselor decizionale sub aspectul definirii coninutului, a instrumentelor i metodelor folosite, a modalitilor de implementare subordonat permanent ndeplinirii unor obiective economice, tehnice, umane i manageriale precis definite. Variabilele care o influeneaz sunt: potenialul i gradul de motivare a personalului, caracteristicile sistemului economic al firmei, parametrii sistemului tehnic i trsturile definitorii ale sistemului managerial al organizaiei, evoluia pieelor, starea economicosocial a regiunii/rii n care funcioneaz firma, strategia i politicile naionale i regionale implicate, gradul de profesionalism al managerilor. Avantajele eficientizrii decizionale sunt: valorificarea superioar a resurselor organizaiei, creterea profitabilitii, sporirea prestigiului firmei. Desfurarea unor limite legate de resursele utilizabile, de complexitatea i dificultile implicate, dovedesc c eficiena decizional este o realitate n ntreprinderilor contemporane.

116

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

6.2.

Utiliti decizionale

Utilitatea decizional exprim efectul pe care l urmrete decidentul n urma realizrii unei anumite consecine a variantei alese. Ea reprezint gradul de satisfacie pe care l nregistreaz cel care ia o decizie optnd pentru o cale de rezolvare a problemei manageriale n raport cu interesele i obiectivele sale. Creatorii teoriei utilitii, care definesc funciile, proprietile i modul n care se poate folosi aceasta n procesul decizional, sunt Von Neumann, i Morgenstern. n lucrarea Teoria jocurilor i comportamentul economic, elaborat n 1944, au formulat o serie de axiome, utiliznd conceptele de preferin i indiferen, care reprezint reacii subiective ale decidentului fa de variantele ntre care trebuie s aleag. Obiectivele pot fi exprimate cantitativ sau calitativ, n funcie de posibilitatea de a exprima numeric consecinele. De exemplu, considernd problema alegerii unei tehnologii pentru realizarea unui produs industrial i admind dou criterii: mrimea profitului i calitatea produsului, consecinele variantelor examinate pot fi exprimate cantitativ, pentru primul criteriu (n 109lei), i calitativ, sub form de calificativ, pentru al doilea criteriu. Caracterul obiectivelor influeneaz asupra nivelului de subiectivism care intervine n evaluarea utilitii, calificativele oferind mai puine informaii pentru estimarea sa. Este greu de stabilit o regul precis de dependent ntre utiliti i valorile bneti. Dac S este o sum de bani, iar u(S) este utilitatea ei, exist relaiile:
u[(n 1)S ] < u (nS ) < nu (S )

(6.1)

ceea ce exprim faptul c utilitatea unei sume de bani crete cu mrimea sumei, ns ritmul su de cretere este descresctor. Utilitatea este dependent de timp, ea scade cu ct durata de timp pn la realizarea consecinelor este mai mare. Axiomele formulate de Von Neumann, i Morgenstern sunt: 1. Un decident care compar dou variante Vi i Vj de rezolvare a unei probleme poate exprima una i numai una din urmtoarele relaii:

(V PV ), (V PV ), (V IV )
i j j i i j

(6.2)

n care P este operatorul logic de preferin, iar I operatorul logic de indiferen. 2. Relaiile de preferin sunt tranzitive:

(V PV ) i (V PV ) (V PV ) (V PV ) (V PV )
i j j k i k i j j i

(6.3) (6.4)

3. n afara mulimii V = { V1 ,V2 , ,Vn } a variantelor simple, decidentul poate lua n considerare i variante complexe, de tipul: V ' = pVi + (1 p )V j (6.5)

unde p este probabilitatea utilizrii variantei Vi, iar 1-p este probabilitatea realizrii variantei Vj . Se introduc astfel probabilitile n teoria utilitii acceptndu-se c dou variante simple pot alctui mpreun o nou variant, denumit mix probabilistic, dac li se asociaz probabiliti, cu condiia ca suma probabilitilor respective s fie egal cu 1.
117

Elemente de teoria deciziei

4. Fiind date trei variante V1, V2 i V3 i un decident care exprim relaia (V1PV2PV3), exist un mix V=[pV1+(1-p)V3] , astfel nct (VPV2) i un alt mix V=[pV1+(1-p)V3] , astfel nct (V2PV). Deci, folosind dou variante (V1 i V3), se poate construi o infinitate de mixuri probabilistice care variaz continuu pe scara preferinelor ntre V1 i V3. 5. Fiind date trei variante V1, V2 i V3, dac un decident exprim relaia (V1PV2), atunci implicit va exprima i relaia [pV1+(1-p)V3]P[pV2+(1-p)V3] . Aceast axiom evideniaz faptul c o variant V1 fiind preferat alteia V2, i mixul lui V1 cu o a treia V3 va fi preferat mixului V2 cu V3. Cele cinci axiome prezentate permit s se defineasc funcia de utilitate u(V) care asociaz fiecrei variante o valoare din mulimea numerelor reale sub forma (6.6). U(V):V R 6.6)

Utilitatea u(Vi) a variantei Vi se determin cunoscnd utilitile u(V1) i u(V0) a doua variant ntre care exist relaia (V1PV0). Admind u(V1)=1 i u(V0)=0 se pot distinge urmtoarele trei cazuri: I. (V1PViPV0); n acest caz se apreciaz probabilitatea p pentru care ViI[pV1=(1-p)V0] , cu 0 p 1; rezult 0 u(Vi) = p 1. II. (ViPV1PV0); n aceast situaie se calculeaz probabilitatea q pentru care 1 V1I[qVi+(1-q)V0], 0 q 1; rezult u (Vi ) = 1 . q III. (V1PV0PVi); n acest caz se estimeaz probabilitatea r pentru care V0I[rVi+(1-r)Vi], r 0 r 1; i se va lua u (Vi ) = 0. r 1 Pentru a se opera cu funcia de utilitate trebuie s se exprime urmtoarele proprieti ale acesteia: 1. Dou variante decizionale Vi i Vj se afl n relaia de preferin (ViPVj) dac i numai dac u(Vi) > u(Vj). 2. Utilitatea unui mix probabilistic de forma V=[pVi+(1-p)Vj] este egal cu sperana matematic a utilitilor variantelor mixului:
u(V) = pu (Vi) + (1-p) u (Vj) forma: u (Vj) = a + b (Vi), a 0, b > 0 (6.8) (6.7)

3. Proprietile anterioare permit o transformare liniar In funcie de utilitatea de

Dac utilitatea evalueaz gradul de satisfacie dup mai multe criterii (de exemplu, n cazul produselor dup calitate, dup pre, dup serviciile postvnzare) trebuie ca fiecrei variante decizionale Vi s i se atribuie un indicator de utilitate de ansamblu Ui de forma:
U i = u ij k j ,
j =1 n

i = 1, m, j = 1, n .

(6.9)

n care uij este utilitatea corespunztoare variantei i pentru criteriul Cj, iar kj coeficientul de importan al criteriului Cj. Coeficientul de importan poate lua valori astfel:
0 k j 1;

k
j =1

=1

(6.10)

118

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Valorile acestor coeficieni se pot stabili cu relaia:

k j = k j1 =

a
j2 j2 j2

j1 j 2

;
j1 j 2

j1 j 2 = j = 1, n,

(6.11)

n care aj1j2 sunt elementele unei matrice ptrate, n care liniile sunt numerotate cu j1 i coloanele cu j2, att pe linii ct i pe coloane figurnd aceleai criterii Cj. Pentru a stabili elementele aj1j2 se poate utiliza relaia:
1, daca C j1 este la fel de impor tan t ca C j 2 = 2, daca C j1 este mai impor tan t decat C j 2 0, in rest

a j1 j 2

(6.12)

n unele cazuri funcia utilitii nu poate fi apreciat ca liniar, fiind considerat aa cum rezult din aprecierile subiective ale decidenilor, n funcie de factura lor psihic (optimiti, pesimiti) i de impactul riscurilor. Exemplul 6.1: O firm care fabric ascensoare i scri rulante trebuie s opteze pentru cea mai bun variant de asimilare n fabricaie din trei posibiliti V1, V2 i V3, caracterizate sumar prin datele din tab.6.1 unde V1 reprezint asimilarea pe baz de componente din ar, V2 pe baz de elemente importate din Italia, iar V3 pe baz de import din Germania. Se iau n considerare trei criterii: C1 costul, C2 fiabilitatea, iar C3 efortul valutar necesar. Tabelul 6.1
Criteriul / Varianta V1 V2 V3 C1 1 1,5 1,2 C2 2 2,5 2,3 C3 sczut mediu ridicat

Criteriului C3 i se asociaz notele 10, 8, respectiv 5. Soluia optim se alege pe baza relaiei 6.9. Pentru a determina coeficienii de importan asociai criteriilor se alctuiete matricea A, ale crei elemente se fixeaz de ctre un specialist (tab.6.2) Tabelul 6.2
A = 1 2 0 0 1 0 2 2 1

Rezult coeficienii de importan:


1 3 5 k1 = ; k 2 = ; k 3 = 9 9 9 Se determin utilitile uij pentru fiecare variant Vi i criteriu Cj. Pentru criteriul cost, pe baza datelor din coloana 1 a matricei din tab.6.2, se poate scrie relaia:(V1PV3PV2)

119

Elemente de teoria deciziei

Se atribuie valorile 1 i 0 unitii variantelor extreme din relaia de preferin respectiv: u(V1)=1;u (V2) = 0 Se formeaz un mix probabilistic QV1 + (1-p)V2 i se scrie relaia de indiferen ntre V3 i acest mix : V3I[pV1 + (1-p) V2] Aplicnd proprietatea I a funciei de utilitate rezult: u (V3)1 = p Valoarea lui p se calculeaz utiliznd relaia de liniaritate a funciei de utilitate, prin interpolare (fig.6.3) X max X i p= X max X min n care Xmax = 1,5 i Xmin = 1
p= 1,5 1,2 3 = = u (V3 )1 1,5 1 5
X Xmax 1,2 Xmin

3/5

u(V)

Fig.6.3 Reprezentarea din fig.6.3 corespunde pentru criteriile la care utilitatea este invers proporional cu valoarea lor numeric (exemplu costul). Pentru criteriul efort valutar, rezultnd: 2 u (V1 )3 = 1; u (V3 )3 = 0; u (V2 )3 = 5 Pentru criteriul fiabilitate, care are valoarea direct proporional cu utilitatea, se aplic formula de interpolare X i X min p= X max X min Utilitile variantelor sunt: 3 u (V2 )2 = 1; u (V1 )2 = 0; u (V3 )2 = 5 Se calculeaz utilitile globale Ui pe baza relaiei 3 5 1 4 1 + 0 + 1 = ; 9 9 9 9 3 5 1 2 3 U 2 = 0 + 1 + = ; 9 9 9 5 5 3 3 5 3 1 8 U3 = + + 0 = ; 9 5 9 5 9 15

U1 =

Pentru a le compara aducem la acelai numitor Ui i avem relaia de preferin pentru cele trei variante este (V2 PV3 PV1). Rezult c varianta optim este V2, respectiv realizarea ascensorului importnd elemente componente din Italia. 120

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

U1 =

20 ; 45

U2 =

27 ; 45

U3 =

4 , 45

6.3.

Optimizarea deciziilor n condiii de certitudine

Situaia de certitudine se caracterizeaz prin faptul c predomin variabilele controlabile, iar rezultatele obinute pentru fiecare variant se pot anticipa uor. Tabelul 6.3
Criterii / Variante V1 . . Vi . . Vn C1 R11 . . Ri1 . . Rn1 . . . . Cj R1j Rij . . Rnj . . . . Cm R1m . . Rim . . Rnm

Matricea decizional din tabelul 6.3 corespunde unei probleme cu n variante decizionale Vi i = 1, n , m criterii de decizie C j j = 1, m i conine rezultatele sau consecinele decizionale Rij. Se apeleaz la metode i tehnici de optimizare a deciziilor multidimensionale care au la baz teoria utilitii, care permite s se aduc la acelai numitor comun consecinele decizionale exprimate diferit prin transformarea lor n uniti (tab.6.4).

Tabelul 6.4
Criterii / Variante V1 . . Vi . . Vn C1 u11 . . ui1 . . un1 . . . . Cj u1j uij . . unj . . . . Cm u1m . . uim . . unm

Metoda aditiv Dac coeficienii de importan ai criteriilor decizionale sunt identici, stabilirea variantei optime, n ipoteza c criteriile sunt independente, se face pe baza relaiei:
Vopt = max u ij ,
i j =1 m

(6.13)

respectiv varianta optim este cea care are cel mai ridicat nivel al sumei unitilor.
6.3.1. Metoda utilitilor globale

Criteriile de decizie pot s aib coeficieni de importan diferii, stabilii n funcie de: - Situaia economicofinanciar a firmei;

Specificul economic i manageriala domeniului n care se integreaz problema decizional; - Atitudinea decidentului fa de criteriile de decizie;

121

Elemente de teoria deciziei

Amploarea i complexitatea mediului nconjurtor i intensitatea influenei exercitat de acesta asupra firmei i asupra problemei care trebuie rezolvat. n aceast situaie se determin utilitatea global pentru fiecare variant decizional cu relaia:
U gi = k j u ij
j =1 m

(6.14)

n care: kj coeficientul de importan al criteriului Cj; uij - utilitatea aferent variantei i, determinat de criteriul j. Varianta optim se stabilete pe baza relaiei..
Vopt = max U gi
i

(6.15)

Metoda are avantaje, legate de simplitatea n utilizare i alegerea relativ rapid a variantei optime, dar i limite, generate de subiectivismul stabilirii coeficienilor de importan ai criteriilor decizionale.
6.3.2. Metoda ELECTRE

Metoda ELECTRE (Elimination et Choix Traduisant la Ralit metod de clasament i alegere n prezena unor puncte de vedere multiple) a fost elaborat de coala francez de management. Ea folosete pentru rezolvarea unor probleme decizionale complexe. La baza utilizrii acestei metode st matricea utilitilor. Etapa I. Se stabilesc indicatorii de concordan care evideniaz msura n care o variant Vl surclaseaz, pe baza valorii criteriilor, o alt variant Vk, dup relaia:
C (Vl ,Vk ) =

k
jJ c m

k
j =1

; l , k = 1, m
j

(6.16)

n care: kj coeficientul de importan al criteriului Cj; Jc mulimea indicilor criteriilor concordante, respectiv al criteriilor crora le corespunde (VlPVk), ul uk
0 C(Vl, Vk) 1

(6.17)

Etapa II. Se calculeaz indicatorii de discordan, care arat depirea variantei Vl de ctre Vk utiliznd formula:
0, daca u l u k d (Vl ,Vk ) = 1 max (u k u l ), pentru u l < u k e

(6.18)

n care e este marja maxim ntre utilitile aceluiai criteriu; dac u [0,1], atunci e = 1.

0 d (Vl , Vk ) 1

(6.18)

122

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Din relaiile (6.16) i (6.18) se observ c indicatorii de concordan se determin n raport cu coeficienii de importan ai criteriilor, iar indicatorii de discordan n raport de utilitile variantelor care se compar, ceea ce reprezint o limit a metodei ELECTRE. Etapa III. Determinarea variantei optime se face prin operaii succesive de surclasare a variantelor cu ajutorul unor relaii de forma: C (Vl ,Vk ) p d (Vl ,Vk ) q (6.19)

n care p i q constituie o pereche de valori ( p, q [0,1] ), cu condiia ca p s fie ct mai apropiat de 1 i q ct mai aproape de 0. Fiecrei perechi p, q i se asociaz un graf G(p, q). Prin scderea pragului p i creterea pragului q se obin grafuri succesive avnd tot mai multe legturi ntre variante, pn ce se poate stabili care variant le surclaseaz pe toate celelalte. Pentru a elimina volumul mare de munc pe care l presupune construirea grafurilor se poate folosi o metod ELECTRE analitic ce permite stabilirea variantei optime pe baza relaiei:
max Pi (k ) min C (Vl ,Vk ) max d (Vl ,Vk ) Vopt i j j

(6.20)

6.3.3. Metoda LEADER-ului

Metoda LEADER-ului are la baz determinarea variantei dominante n ansamblul soluiilor pe baza relaiei:
max Pi (k ) = max a ij Pi ( k 1) Vopt
i i

(6.21)

n care Pi (k ) este puterea de ordinul k a liniei i, iar aij elementul din linia i i coloana j a matricei M. Matricea M se construiete pe baza grafurilor relaiilor de dominan n care variantele sunt noduri, iar arcurile cu sgei indic dominana i a punctajului stabilit astfel:

Dac soluia Vl domin varianta Vk, se acord lui Vl 2 puncte i lui Vk 0;


Dac dou variante au aceeai influen una asupra celeilalte, se d fiecreia un

punct;

Se consider c fiecare variant se autodomin:

M = M Cj
j =1

(6.22)

unde M Cj este matricea corespunztoare criteriului Cj. Exemplul 6.2 Se analizeaz mai multe variante de procese tehnologice de obinere a unui produs (V1, V2, V3, V4). Variantele sunt analizate n funcie de urmtoarele criterii:

123

Elemente de teoria deciziei

1 costul de implementarea a procesul tehnologic (uniti monetare);


2 cheltuieli anuale de mentenan (uniti monetare) 3 posibilitatea de automatizare a sistemului de producie; 4 eficiena de reducere a noncalitii.

n tabelul 6.5. se prezint performanele variantelor, corespunztoare acestor criterii; se observ c unele sunt exprimate cantitativ, iar altele calitativ. Tabelul 6.5
Criteriul / Varianta V1 V2 V3 V4 C1 540 540 150 350 C2 360 150 100 200 C3 Medii Dificile Bune Dificile C4 Bun F. bun Slab F. bun

Pentru stabilirea deciziei optime se utilizeaz conceptul de utilitate, admind o dependen liniar intre consecine i utiliti i 0 u 1. Se alctuiete matricea unitilor (tabelul 6.6) Tabelul 6.6
Criteriul / Varianta V1 V2 V3 V4 C1 0 0,077 1 0,487 C2 0 0,807 1 0,615 C3 0,5 0 1 0 C4 0,5 1 0 1
4

u
j =1

ij

1 1,884 3 2,02

Conform Metodei aditive sau Von Neumann Morgenstern se aplic relaia 6.14 i rezult:
max u ij = 3
i j =1 4

Varianta optim este V3. Pentru a aplica Metoda utilitii globale se acord criteriilor coeficieni de importan diferii i C4 va avea coeficientul de importan maxim pentru c obiectivul urmrit l constituie creterea eficienei n reducerea noncalitii. Valorile acestor coeficieni sunt: k1 = 3; k2 = 3; k3 = 2; k4 = 7. n acest caz se aplic relaiile 6.15 i 6.16 pe baza datelor din tabelul 6.7 care constituie utilitile globale. Tabelul 6.7
Vj / Cj V1 V2 V3 V4 C1 0 0,231 3 1,461 C2 0 2,421 3 1,845 C3 1 0 2 0 C4 3,5 7 0 7

k u
j j =1

ij

4,5 9,652 8 10,306

124

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

max k j u ij = 10,306
i j =1

Rezult ca varianta optim este V4. Pentru a aplica Metoda ELECTRE se calculeaz indicatorii de concordan (tabelul 6.8) i indicatorii de discordan (tabelul 6.9) utiliznd relaiile (6.16), respectiv (6.18) i utilitile din tabelul 6.6. Tabelul 6.8
V1 V1 V2 C (V L ,V k ) V3 V4 0,533 0,867 0,533 0,8 0,4 67 0,533 0,867 V2 V3 V4

0,133 0 ,467 0,133 0 ,463 0,8

Tabelul 6.9
V1 V1 V2 d(V L ,V k ) V3 V4 0,5 0,5 1 0,192 1 0,5 V2 0,807 V3 1 1 V4 0,615 0,41

Stabilirea variantei optime aplicnd Metoda LEADER-ului se face pe baza grafurilor relaiilor de dominan ntre variante i a matricei M, care nsumnd matricele asociate grafurilor corespunztoare celor patru criterii decizionale considerate. Pe baza relaiei (6.21), admind puterea de ordinul 0 egal cu 1, se calculeaz pentru fiecare linie puterea de ordinul 1. Dac apare o situaie de indecidabilitate, se stabilete puterea de ordinul 2 .a.m.d., pn se deprteaz varianta optim. Dac soluia dominant nu se poate determina, se accept oricare dintre variante. P1(1) = 10; P2(1) = 16; P3(1) = 22; P4(1) = 16

Se alege varianta optim V3. n urma aplicrii celor patru metode rezult ca optim decizia privind varianta V3.

125

Elemente de teoria deciziei

Grafurile relaiilor de dominan ntre variante

Matricile asociate fiecrui graf

V1

V2 MC1 = 1 2 2 2 0 1 2 2 0 0 1 0 0 0 2 1

V4 GC1 V1

V3

V2 MC2 1 = 2 2 2 0 1 2 0 0 0 1 0 0 2 2 1

V4 GC2

V3

V1

V2 MC3 1 = 0 2 0 2 1 2 1 0 0 1 0 2 1 2 1

V4 GC3 V1

V3

V2 MC4 1 = 2 0 2 0 1 0 1 2 2 1 2 0 1 0 1

V4 GC4

V3

M=

4 6 6 6

2 4 6 4

2 2 4 2

2 4 6 4

126

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

6.4.

Optimizarea deciziilor n condiii de risc

Existena mai multe stri de condiii obiective pentru care se cunosc probabilitile de realizare, procesul de decizie se desfoar n condiii de risc. Asemenea probleme stohastice apar frecvent n anumite domenii de activitate: producie, cercetare-dezvoltare, marketing .a. Strile de condiii obiective nu sunt controlabile de ctre decident, dar acesta caut s aleag ci cu evenimente care minimizeaz pericolele. Astfel, el minimizeaz riscul la care se poate expune, fr a-l elimina complet, dac fenomenele sunt aleatoare. Pentru aceasta se procedeaz la o analiz probabilistic de evaluare i selecie decizional. Metodele cantitative ntrebuinate cel mai des n acest scop sunt metoda speranei matematice i tehnica arborelui decizional.

Metoda speranei matematice


Metoda speranei matematice folosete modelul aditiv pornind de la o matrice, cu cel puin dou stri de condiii obiective, anumite stri ale naturii (care nu sunt controlabile de ctre decident), i care cuprinde utilitile consecinelor (rezultatelor) pentru fiecare variant, criteriu sau stare a naturii. Fie o mulime de stri ale naturii (N1, ,Nk,,Np) pentru care se cunosc probabilitile pk care satisfac condiiile (6.23). 0 p k 1,

p
k =1

=1

(6.23)

Matricea utilitilor corespunztoare celor m variante, n criterii i p stri ale naturii se prezint n tabelul 6.10, care corespunde i utilitile sintez. Tab.6.10
Criterii / Variante V1 Vi Vm X1 u111 ui11 um11 Xn u1n1 uin1 umn1 STRI ALE NATURII - PROBABILITI N1,p1 U1 U11 Ui1 Um1 X1 u11p ui1p um1p Xn u1np uinp umnp Np,pp Up U1p Uip Ump

Utilitatea sintez a variantei decizionale i n starea de condiii obiective k se determin cu relaia:


U ki = U ijk ,
k =1 n

i = 1, m, k = 1, p

(6.24)

Sperana matematic a rezultatelor n varianta Vi va fi:


E (Vi ) = U ik p k
k =1 p

(6.25) 127

Elemente de teoria deciziei

Dac rezultatele (consecinele) sunt exprimate prin efecte economice, cum sunt: profitul, ncasrile din vnzri, productivitatea, varianta optim va fi cea care satisface condiia (6.26). max E (Vi ) Vopt (6.26)
i

Dac rezultatele exprim eforturi, de exemplu: investiii, cheltuieli de exploatare, consumuri specifice, varianta optim se determin din condiia de minimizare a riscului.
min E (Vi ) Vopt
i

(6.27)

Exemplul 6.3 1. O instalaie energetic compus din dou pri A i B se defecteaz aleatoriu. Exist trei variante de mentenan corectiv pentru aceast instalaie. V1 Cnd se produce defectarea, s se abordeze mai nti subsistemul A; dac defectul este gsit n A costul mentenanei se consider nul, iar dac defectul este n B mentenana va costa 2000 $. V2 Cnd se produce defeciunea se abordeaz la nceput partea B; dac defectul se gsete n B se consider c mentenana are cost zero, iar dac defectul este n A costul mentenanei va fi 4000 $. V3 Se apeleaz la o firm de service specializat, costul fiind 1000 $. Se cere s se stabileasc varianta optim.
Se calculeaz speranele matematice ale costurilor pentru fiecare variant, admind c :

p
j =1

= 1 pB = 1 p A ,
2

n care pj este probabilitatea ca defectul s fie n partea j.

E (Vi ) = M ij p j
j =1

n care E(Vi) este sperana matematic a costurilor corespunztoare variantei Vi; Mij-costul mentenanei dac se aplic varianta Vi i defectul este n partea j. E (V1 ) = 0 p A + 2000(1 p A ) = 2000 2000 p A ;

E (V3 ) = 1000$; Cele trei sperane matematice se pot reprezenta grafic, n funcie de pA (fig.)
E(Vi) 103$ 4 3 2 E(V1) E(V3)

E (V2 ) = 4000 p A + 0(1 p A ) = 4000 p A ;

E(V2)

0,25

0,5 0,75

pA

Fig.6.3 128

Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

Se observ c soluia optim se gsete n trapezul haurat, mrginit superior de costurile minime asociate celor trei variante. Se constat c la valori diferite ale lui pA corespunde decizii diferite, respectiv: 0 pA 0,25 decizia optim este V2; 0,25 < pA 0,5 decizia optim este V3; 0,25 < pA 1 decizia optim este V1. Deci rezolvarea problemei depinde de valoarea probabilitii pA. De exemplu, dac s-a stabilit c pA = 0,3 atunci decizia optim este s se ncheie contract cu firma de service.

Modelul arborelui de decizie


Modelul arborelui de decizie se aplic n probleme de decizii n condiii de risc, cnd abordarea chestiunii complexe se face pe un interval mai lung de timp, deci este necesar o succesiune de decizii. Reprezentarea grafic a succesiunii proceselor decizionale se face printr-un arbore de decizie, n care ramurile reprezint evenimente, iar nodurile sunt punctele n care apar diversele variante. Nodurile pot s fie de decizie (O) n care decidentul efectueaz alegerea - i noduri ( ) n care responsabilitatea alegerii uneia dintre variantele posibile revine naturii, adic unor factori independeni de cel care ia hotrrea. Principiile care stau la baza aplicrii modelului arborelui decizional sunt: - Valoarea fiecrui nod n care natura efectueaz alegerea depinde numai de evenimentele viitoare(nu i de deciziile precedente);

Zn nodurile n care alegerea revine decidentului este preferat acea decizie pentru care urmtorul nod la care se ajunge este cel mai avantajos; valoarea nodului actual se obine scznd costul deplasrii din valoarea nodului urmtor;
Din proprietile exprimate anterior rezult c evaluarea ntregului sistem i determinarea deciziei optime se poate face ncepnd cu nodurile finale i efectund deplasarea n sens invers celui urmat de procesul real, pn se ajunge la nodul iniial. Acest procedeu de evaluare a consecinelor fiecrei variante, cunoscut sub numele de rollback simplific tratarea problemelor decizionale complexe, deoarece de fiecare dat se ia n considerare doar setul de factori sau evenimente implicate ntr-o singur faz a procesului decizional i nu ntreaga succesiune a acestora. Avantajele folosirii acestui model n adoptarea deciziilor sunt: prevederea implicaiilor unui set de decizii strategice succesive ealonate de-a lungul unei perioade lungi de timp (uneori civa ani); probabilitatea sporit de a lua decizii fundamentale n condiii deosebit de complexe. Dezavantajele sunt legate de numrul relativ sczut de variante care se pot lua n considerare i de faptul c erori mici n determinarea probabilitilor de producere a evenimentelor aleatoare pot s aib mari repercursiuni asupra valorilor finale cu consecine asupra exactitii anticiprii rezultatelor economice. Pentru a micora influena dezavantajelor prezentate se impune studierea aprofundat de ctre specialiti i manageri a factorilor care condiioneaz situaia decizional. Este necesar s se alctuiasc o echip de folosire a arborelui decizional, dirijat de un manager de nivel superior i format din: specialiti n elaborarea strategiei i politicii globale a firmei, economiti profilai pe studiul pieei, specialiti n investiii, tehnologi, economiti specializai n probleme de costuri i preuri, matematicieni i informaticieni. Modelul arborelui de decizie se utilizeaz n domenii ca: definirea deciziilor strategice ale firmei, stabilirea unui program de cercetare dezvoltare, lansarea unui nou produs.

129

Elemente de teoria deciziei

130

Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie

BIBLIOGRAFIE
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] Armeanu A. Bazele ingineriei i managementului sistemelor de producie, Note de curs, UPB, 1999 Brbatu Gh.I., Ionescu V. Cercetarea operaional n ntreprinderile industriale, Ed.Tehnic, Bucureti 1981; Blajin Ovidiu. Programarea liniar, Ed. Printech 1999; Blajin Ovidiu. Cercetri operaionale, Ed.Printech 2001 Boldur-Lescu G., Scuiu I., ignescu E. Cercetare operaional cu aplicaii n economie, Ed. Didactic i Pedagogic, Bucureti, 1979; Ciobanu Gh., Nica V., Musta F., Mrcine V.- Cercetri operaionale cu aplicaii n economie, Ed. MatrixRom, Bucureti, 1996; Ciobanu Gh., Nica V., Musta F., Mrcine V., Mitru D. Cercetri Operaionale, Ed. MatrixRom, Bucureti, 2002; Dumitrescu M., Niculescu C. Teoria deciziei i Cercetare Operaional, Ed. Niculescu, Bucureti, 2001; Dijmrescu I. Bazele Managementului, Ed. Didactic i Pedagogic, Bucureti, 1995 Hillier F., Limberman G., Introduction to operational research, McGraw-Hill Publishing Company, New-York, 1990 Ionescu H., Dinescu C., Svulescu B. Probleme ale cercetrii operaionale - Ed. Didactic i Pedagogic, Bucureti, 1972; Kaufmann A., Desbazeille G., Metoda Drumului Critic, Ed.Tehnic, Bucureti 1971; Kaufmann A, Metode i modele ale cercetrii operaionale, Ed,tiinific, Bucureti, 1967 Neagu C. Modele de programare i conducere a proceselor economice EDPRA, Bucureti, 1995. Neagu C., Melnic L., Rou M. Managementul operaional al proiectelor Ed Bren, Bucureti, 2002; Nica V., Ciobanu Gh., Musta F., Mrcine V. - Cercetri Operaionale, Ed. MatrixRom, Bucureti 1998; Ndejde I., Zidroiu C. Probleme de cercetare operaional Ed. Academiei, Bucureti, 1971; Rusu Elisabeta, Fundamentarea deciziilor n management , Ed.Junimea , Iai, 2000 131

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