Sunteți pe pagina 1din 103

Cercetri Operaionale

Aplicate n Economie
Note de curs
Lector dr. Sbughea Corina
Cercetrile Operaionale reprezint arta
de a ctiga rzboaie fr a lupta cu
adevrat
Aurther Clarke
Aceast prelegere se adreseaz studenilor specializrii Informatic Economic,
anul II i are la baz urmtoarele materiale:
Bazele Cercetrii Operaionale Prof.dr. E.ignescu,Prof.dr. D. Mitru,
(disponibil la http://www.asecib.ase.ro/cursuri_online.htm)
Capitole speciale ale Cercetrii Operaionale Prof.dr. V. Nica (disponibil la
http://www.asecib.ase.ro/cursuri_online.htm)
Operations Research Simplified (disponibil la
http://www.universalteacherpublications.com/univ/ebooks/or)
Modele i algoritmi de optimizare R. Trandafir, Ed. AGIR, Bucureti, 2004
Cercetari operationale. Optimizari in retele. Teorie si aplicatii economice - G.
Ciobanu, V. Mrcine, V. Nica, D. Mitru , Ed. Matrixrom, Bucureti, 2002
Cercetri operaionale cu aplicaii n economie: optimizri liniare - G. Ciobanu,
E. ignescu , Ed. ASE, Bucureti, 2002
Modele, algoritmi i produse software n cercetarea operational -M. Cocan,
Ed. Albastr, Bucureti, 2008
Tematic
Cercetri Operaionale: concepte, istoric, metode
Programare liniar. Forme ale problemei de programare liniar
Metoda Simplex: funadamente teoretice
Algoritmul simplex primal interpretarea economic
Dualitatea n programarea liniar fundamente teoretice
Programarea liniar de tip transport
Metoda de determinare a soluiei optime pentru probleme de transport
Elemente de teoria grafurilor
Drumuri i circuite n graf. Matrice ataate grafurilor
Drumuri hamiltoniene n graf. Drumuri de valoare optim n graf
Modelarea prin reele - concepte
Metoda drumului critic (Critical Path Method - C.P.M.)
Metoda potenialelor (Metro Potential Method - M.P.M.)
Metoda PERT (Program Evaluation and Review Technique)
Cercetarea operaional
A aprut n perioada celui de-al doilea razboi mondial, cnd conducerea militar
britanic a convocat un grup de oameni de tiin cu scopul studierii alocrii
eficiente a resurselor pentru operaiunile militare.
Cercetrile asupra operaiunilor militare au trezit interesul apoi i n alte domenii:
industrie, transporturi, economie.
Disciplina Cercetri Operaionale s-a dezvoltat n legtur cu alte discipline ale
conducerii:
Cibernetica
Management
Informatica
Analiza Sistemelor.
Cercetarea operaional reprezint coala matematic ntre disciplinele
organizrii i conducerii
Obiect
utilizarea metodelor matematice i tehnicilor cantitative n
fundamentarea tiinific a deciziilor manageriale dintr-o
organizaie.
Instrumente
modelare matematica,
optimizare,
teoria algoritmilor,
teoria grafurilor,
programare matematica,
simulare
coala clasic
principalii reprezentani ai nceputurilor organizrii tiinifice (Taylor,
Gantt, Fayol )
se stabilesc o serie de principii ale conducerii tiinifice
pun pentru prima oar problema abordrii raionale a mecanismului
funcionrii unei ntreprinderi.
concepte precum informaia i decizia nu sunt utilizate n abordrile
timpurii
o abordare excesiv teoretizat
coal neoclasic
obiectiv: rentoarcerea la practic
creterea dimensiunilor i complexitii organizaiilor economice
abordarea problemelor informaional - decizionale cu rezolvri
empirice
circuite informaionale redundante
procesul decizional se bazeaz n mare parte pe improvizaie
coala comportamental
studierea comportamentului uman i a mecanismului de motivare
descentralizarea deciziilor
promovarea ncrederii
accentul pus pe responsabilitate (i nu pe control)
procesul decizional gsirea de soluii optime
Etape i procese ale Cercetrii Operaionale:
Formularea problemei - cunoaterea realitii, colectarea informaiilor
despre sistemul studiat, stabilirea obiectivelor.
Construirea modelului - exprimarea problemei printr-un model matematic,
utiliznd ecuaii, relaii i formule pentru descrierea proceselor i contextului
real
Selectarea datelor de intrare adecvate scopul acestei etape e de a
aduna destule date de intrare pentru funcionarea i testarea modelului
Rezolvarea modelului determinarea soluiei
Validarea modelului un model este valid dac poate oferi o imagine a
comportamentului sistemului
Implementarea soluiei - o soluie obinut prin tehnicile Cercetrii
Operaionale, corect implementat, optimizeaz activitatea organizaiei
Sistem = un ansamblu de elemente (fenomene, obiecte, procese, concepte
i fiine), conectate printr-o mulime de relaii reciproce, precum i cu mediul
nconjurtor i care acioneaz ca un tot unitar, n vederea realizrii unor
obiective.
Structura sistemului = mulimea elementelor i a relaiilor dintre acestea
Starea sistemului = mulimea caracteristicilor unui sistem, msurate la un
moment de timp dat
Analiza comportamentului sistemului - conceptul de "cutie neagr
Sistemul - este studiat, fcnd abstracie de procesele sale interne:
- se analizeaz modalitatea n care intrrile n sistem (impulsurile
din partea mediului nconjurtor) sunt transformate n ieiri din
sistem (aciuni asupra mediului).
Se descrie mecanismul transformrii intrrilor n ieiri cu ajutorul funciilor
de transfer, care au diverse forme, particulare, dup natura sistemului.
Sistemul devine cibernetic - cnd apare reglarea
(conexiunea invers, feedback-ul)
Este o tehnic versatil de alocare a unor cantiti limitate de resurse
ntre anumite activiti concurente, n aa fel nct un anumit obiectiv s
fie optimizat, cu satisfacerea anumitor restricii.
Este aplicat cu succes ntr-o varietate de probleme de management:
producie, desfacere, transport, analiza investiiilor, etc.
S-a demonstrat utilitatea acesteia nu doar n economie i industrie, ci i
n activitatea organizaiilor non-profit: sistem sanitar, educaie, etc.
Crete calitatea deciziilor, prin mbuntirea calitilor analitice ale
decidentului
PROGRAMAREA LINIAR
Structura modelului general de programare liniar
mulimea de activiti {A
1
, A
2
, ... A
n
} care compun sistemul economic analizat
mulimea de resurse utilizate {R
1
, R
2
, ... R
m
}
relaiile tehnico-economice dintre acestea
- determinate de tehnologia de fabricaie corespunztoare
fiecrei activiti A
j
(j=1,...,n)
- caracterizate numeric prin vectorii coloan a(j) de
componente (a
1j
, a
2j
, ... a
mj
).
- {a
ij
, i = 1,...,m; j = 1,...,n} - coeficieni tehnici
- coeficieni de consum specific
- arat ce cantitate din resursa R
i
se consum pentru
producerea unei uniti din produsul (serviciul) P
j
(ca
rezultat al activitii A
j
).
- Matricea A cu m linii i n coloane
- fiecare linie se refer la o resurs R
i
(i = 1,...,m)
- fiecare coloan se refer la o activitate A
j
(j = 1,...,n).
- Se noteaz :
- x
j
(j = 1,...,n) rezultatul activitii A
j
ntr-o perioad dat
- b
i
(i = 1,...,m) cantitile disponibile din resursele R
i
(i = 1,...,m)
Sistemul restriciilor tehnico-economice
cantitatea consumat dintr-o resurs nu poate depi cantitatea
total disponibil din resursa respectiv
consumul total R
ij
din resursa R
i
pentru efectuarea activitii A
j
este
R
ij
= a
ij
x
j
- Criteriul de "performan" - un indicator (care permite evaluarea
eficienei fiecrei activiti):
care msoar efortul
care msoar rezultatul
exprimat ca raport ntre rezultat i efort
- Conceptul de optim se definete ca un vector x R
n
, care
minimizeaz sau maximizeaz o funcie obiectiv i, n acelai timp,
satisface toate restriciile tehnico-economice
f(x) = c
1
x
1
+ c
2
x
2
+ ... + c
n
x
n
- evalueaz performana vectorului x
unde fiecare component a vectorului linie c = (c
1
, c
2
, ..., c
n
) msoar eficiena
unei uniti din rezultatul activitii A
j
relaia (1) - funcia obiectiv de eficien a problemei
relaiile (2) - restricii de tip resurse i restricii tehnico-economice de tip
calitativ
relaia (3) - condiia de nenegativitate a variabilelor, asigur obinerea unei
soluii realizabile din punctul de vedere al logicii economice
Modelul general al unei probleme de programare liniar

=
=
) 3 ( 0
) 2 ( } ,..., 2 , 1 { ,
) 1 ( )] ( [
1
1
j
n
j
k j kj
n
j
i j ij
x
m k i
b x a
b x a
x f optim
Exemple:
Problema folosirii optime a resurselor
Se cunosc:
- cantitile disponibile din fiecare materie prim {b
i
, i =1,...,m}
- coeficienii tehnologici {a
ij
, i = 1,...,m, j = 1,...,n} (a
ij
reprezint
cantitatea din materia prim i necesar fabricrii unei uniti din
produsul de tipul j)
- cantitile maxime { , j = 1,...,n} i minime { , j = 1,...,n} ce pot fi
produse din fiecare sortiment
- profiturile unitare {p
j
, j = 1,...,n} ale fiecrui tip de produs
Se cer:
- cantitile x
j
care trebuie fabricate din fiecare tip de produs astfel nct
s se obin profitul maxim, n condiiile nedepirii disponibilurilor
din fiecare resurs.
j
x
j
x
Problema matematic echivalent
-n unele probleme, n loc de profiturile p
j
se cunosc veniturile unitare v
j
sau costurile unitare c
j
, scopul fiind maximizarea venitului, respectiv
minimizarea costurilor.
Problema planului optim de producie
restriciile se refer la mainile (utilaje) cu care se execut produsele dorite,
b
i
fiind disponibilul de timp al utilajului i
a
ij
timpul necesar prelucrrii unui produs de tipul j pe utilajul i,
scopul - maximizarea produciei.
( )

=
= + + +
+ + +
=
n 1,..., i 0 x
m 1,..., i b x a ... x a x a
x ... x x max
j
i n in 2 i2 1 i1
n 2 1
n) 1,..., j ( x
j
Problema dietei
trebuie s se asigure necesarurile {b
i
, i = 1,...,m} dintr-un numr de
m substane eseniale organismului
avnd la dispoziie un numr de n alimente
cunoscndu-se cantitile {a
ij
, i = 1,...,m, j = 1,...,n} din fiecare
substan pe care le conine o unitate de msur din fiecare aliment
costurile {c
j
, j = 1,...,n} unei uniti de msur din fiecare aliment
se determin x
j
- cantitatea din fiecare aliment ce va intra n meniu
( )

=
= + + +
+ + +
=
n 1,..., j 0 x
m 1,..., i b x a ... x a x a
x c ... x c x c min
j
i n in 2 i2 1 i1
n n 2 2 1 1
n) 1,..., j (
j
x
Alocarea optim a fondurilor financiare
Se cunosc:
- Suma total disponibil pentru a fi investit: S
- Investiiile I
j
, cu profiturile unitare p
j
, unde j=1,n
Se determin suma x
j
corespunztoare plasamentului j, a..:
n j x
S x
x a x f
j
n
j
j
n
j
j j

=
=


=
=
1 , 0
) ( max
1
1
Generalizare - Problema de programare matematic
( )
( )
) 3 (
) 2 (
) 1 (
x ,..., x , x
m 1,..., i b x ,..., x , x
x ,..., x , x
n
n 2 1
i n 2 1
n 2 1


=
R U
g
f optim
i
x
j
f,g
i
: R
n
R pot avea orice form i proprieti
U = orice submulime a lui R
n
-n care se caut minimul sau maximul funciei
f n variabilele x
i
care ndeplinesc restriciile (2) i (3)
Se numete:
- soluie a problemei de optimizare = un vector x R
n
care verific restriciile
(2)
- soluie admisibil a problemei de optimizare = un vector x R
n
care verific
restriciile (2) i (3)
- soluie optim a problemei de optimizare = un vector x R
n
care verific
restriciile (2) i (3) i optimizeaz funcia obiectiv pe mulimea tuturor
vectorilor cu aceast proprietate
Problema de programare liniar - forma canonic i forma standard
( ) ( )

= = + + +
+ + + =
0 x ,..., x , x
n 1,..., i b x a ... x a x a
x c ... x c x c max sau min
n 2 1
i n in 2 i2 1 i1
n n 2 2 1 1
f
Forma standard
Orice problem de programare liniar poate fi adus la forma canonic
sau la forma standard, utiliznd urmtoarele transformri:
1. Problema de maxim poate fi transformat n problem de minim i invers:
max f(x)= -min(-f(x))
2. Shimbarea sensului unei inegaliti se realizeaz prin nmulire cu -1:
x b -x -b
3. Orice restricie inegalitate poate fi transformat n egalitate prin introducerea variabilelor
de ecart sau de compensare (care n funcia obiectiv au coeficieni nuli):
x b x +y=b sau x b x -y=b
4. O restricie egalitate poate fi transformat n dou restricii inegalitate:
x=b x b i x b
5. Orice variabil negativ poate fi transformat ntr-o variabil nenegativ:
x=-y, x 0, y 0
6.Orice variabil fr restricie de semn poate fi nlocuit cu dou variabile nenegative:
x=y-z, y,z 0
Programare liniar
Etapa 1 - Formularea modelului
- transformarea unei probleme reale de decizie ->model de cercetri operaionale
- Ex 1: O fabric produce 2 produse P1 si P2, care au profiturile unitare de
50 si 60 u.m. Ambele produse necesit procesarea pe 3 utilaje. Datele din
tabel indica numarul disponibil de ore utilaj pe saptaman i timpul
necesar pe fiecare masin, pentru fiecare unitate din P1 si P2. S se
formuleze modelul de programare liniar pentru maximizarea profitului
firmei.
P2 P1
60 50 Profit
unitar
812 7 4 3
509 4 3 2
300 1 2 1
Timp disponibil
(ore utilaj pe
saptamana)
Produs Utilaj
max f=50x
1
+ 60x
2
2x
1
+ x
2
300
3x
1
+ 4x
2
509
4x
1
+ 7x
2
812
x
1
0, x
2
0
Ipoteze:
- aditivitate: totalul input-urilor i profitul corespunztor
acestora, reprezint suma input-urilor, respectiv a
profiturilor, pe fiecare proces individual
- divizibilitate: se admit i valori fracionare pentru cantiti
- proporionalitate: totalul input-urilor i profitul
corespunztor acestora este direct proporional cu nivelul
produciei.
- analiz static o singur perioad de timp
Ex. 2:
ntr-o diet format din dou alimente se regsesc 3 substane nutriente: tiamina, fosfor i
fier
Cantitatea din fiecare nutrient (mg/uncie) coninut de fiecare aliment este:
1.10 1.20 Fier
1.70 0.75 Fosfor
0.10 0.12 Tiamina
B A
Aliment Nutrient
Costul per uncie al celor doua alimente este de 2 u.m. respectiv 1.7 u.m.
Necesarul minim pe zi, de nutrienti in dieta este de cel putin 1.00 mg, 7.50 mg de
fosfor i 10.00 mg de fier
S se formuleze modelul de programare liniar
min f=2x
1
+1.7x
2
0.12x
1
+ 0.10x
2
300
0.75x
1
+ 1.70x
2
7.5
1.20x
1
+ 1.10x
2
10.0
x
1
0, x
2
0
Ex. 3:
Managerul unei rafinrii trebuie s decid care este combinaia optim a dou
tehnologii de amestecare, pentru care se cunosc: input-urile disponibile i
output-urile necesare, fiecrui proces de producie
P2 P1
120
4
6
Output
100
5
8
I2 I1
Necesar 250 300 Disponibil
500 6 3 B
400 2 6 A
Profit Input Proces
x
1
i x
2
= numrul de procese de producie de tip A i B
max f=400x
1
+ 500x
2
6x
1
+ 3x
2
300
2x
1
+ 6x
2
250
6x
1
+ 4x
2
120
8x
1
+ 5x
2
100
x
1
0, x
2
0
Forma standard a unei probleme de programare liniar de minim
(sau program liniar de minimizare) se prezint astfel:


=
=

=
=
n i x
b m i b x a
cu x c f
PL
j
i i
n
j
j ij
n
j
j j
1 , 0
0 , 1 ,
le restrictii min
min
1
1
iar a unui program liniar de maximizare:


=
=

=
=
n j x
b m i b x a
x c f
PL
j
i i
n
j
j ij
n
j
j j
1 , 0
0 , 1 ,
conditiile in max
max
1
1
Metode de soluionare a problemelor de programare liniar
( ) ( ) A a X x x x
n j
m i
ij
T
n
= =


1
1
2 1
; ,..., ,
( ) ( )
b b b L c c c C
m
T
n 1 2 1 2
, ,..., ; , ,..., = =

PL min
PL max
( )

=
=
0
min
X
L X A
X C x f
T
( )

=
=
0
max
X
L X A
X C x f
T
Dac notm:
Sistemul de restricii poate fi:
incompatibil
compatibil unic determinat (numai n cazul m=n)
compatibil nedeterminat.
Presupunem c rangul lui A este m. Dac notm coloanele matricei A
cu atunci restriciile problemei se transcriu:
A X L =
a j n
j
, 1
L x a x a x a
n
n
= + + + ...
2
2
1
1
Definiia 1. Un vector XR
n
, ale crui componente satisfac
restriciile unei probleme de programare liniar, se numete program
admisibil (soluie admisibil sau soluie posibil)
Definiia 2 Un program admisibil X
o
care minimizeaz (sau
maximizeaz) funcia liniar asociat acelei probleme se numete
program optim (sau soluie optim).
Daca notm cu U mulimea soluiilor posibile ale unei probleme PL
i notm cu U
o
mulimea programelor optime ale aceleai probleme:
Teorema 1. Mulimile U i U
o
sunt convexe.
{ } 0 , = = X L AX R x U
n
( ) { } U X X C X C U X U
T T
= ;
o o o
Definiia 3 Un program X=(x
1
,x
2
,x
n
)
T
se numete program de
baz dac vectorii coloan a
j
, corespunztori componentelor nenule
x
j
, sunt liniar independeni.
- Deoarece rangA=m un program de baz are cel mult m componente
nenule
Definiia 4. Dac un program de baz are exact m componente
nenule (m= rang A), atunci programul de baz se numete
nedegenerat. n caz contrar, degenerat.
Definiia 5. Matricea B de tipul m x m format din coloanele lui A
corespunztoare componentelor nenule ale unui program de baz
nedegenerat X se numete baz a programului X.
Definiia 6. Fie CR
n
o mulime convex, un punct vC este vrf al
mulimii C, dac nu exist nici o pereche de vectori, x
1
i x
2
C i
(0,1) a.. v= x
1
+(1- ) x
2
Teorema 2. Orice soluie posibil de baz este vrf al mulimii
soluiilor posibile i reciproc.
Teorema 3. Soluia optim a problemei de programare liniar se
afl printre vrfurile mulimii soluiilor admisibile ale problemei
Metoda grafic
Probleme de decizie cu 2 sau 3 variabile
Multimea sol. admisibile U este convex
Frontiera lui U este un contur poligonal cu un numr finit de
vrfuri, iar soluia optim se gsete intr-unul din ele
Etape:
1. Se formuleaz modelul de PL
2. Se rezolv ecuaiile asociate inecuaiilor i se determin dreptele
corespunzatoare n plan
3. Se determin punctele de intersecie i mulimea sol.posibile
4. Se calculeaz funcia obiectiv n vrfuri
5. Se determin valoarea optim a funciei obiectiv
REZOLVAREA GRAFIC A UNEI
PROBLEME DE PROGRAMARE LINIAR
Se consider urmtoarea problem de programare liniar:
Max f(x)=3x
1
+6x
2
x
1
+x
2
8
-x
1
+2x
2
4
x
2
2
x
1,
,x
2
0
a) S se determine mulimea soluiilor posibile ale problemei
b) S se determine mulimea soluiilor posibile de baz ale
problemei
c) S se determine mulimea soluiilor optime ale problemei
Rezolvare
a) Se determin i se reprezint grafic dreptele ataate restriciilor problemei
2 :
) 0 , 4 ( 4 ; 0
) 2 , 0 ( 2 ; 0
4 2 :
) 0 , 8 ( 8 ; 0
) 8 , 0 ( 8 ; 0
8 :
2 3
1 2
2 1
2 1 2
1 2
2 1
2 1 1
=

= =
= =
= +

= =
= =
= +
x d
x x
x x
x x d
x x
x x
x x d
Se determin mulimea punctelor din plan care respect fiecare restricie:
-Deoarece punctul O(0,0) verific prima restricie, semiplanul S
1
(care conine originea)
reprezint mulimea punctelor de coordonate x
1
i x
2
care verific prima inegalitate
- Deoarece punctul O(0,0) verific a doua restricie, semiplanul S
2
(care conine
originea) reprezint mulimea punctelor de coordonate x
1
i x
2
care verific a doua
inegalitate
-Deoarece punctul O(0,0) nu verific a treia inegalitate, semiplanul S
3
(care nu conine
originea) este mulimea punctelor ce respect a treia restricie
Mulimea soluiilor posibile ale problemei
este reprezentat de interiorul i
frontiera triunghiului ABC
) 2 , 0 (
) 2 , 6 ( 2 ; 6
2
8
) 4 , 4 ( 4 ; 4
4 2
8
2 1
2
2 1
3 1
2 1
2 1
2 1
2 1
A
C x x
x
x x
C d d
B x x
x x
x x
B d d

= =
=
= +
=

= =
= +
= +
=
I
I
b) Mulimea soluiilor posibile de baz este {A,B,C}
c) f(A)=12
f(B)=36
f(C)=30
Mulimea soluiilor optime este format din elementele mulimii soluiilor posibile
de baz, n care funcia obiectiv i atinge valoarea optim: {B}={(4,4)}
Metoda Simplex
- propus n 1947 de matematicianul Dantzing
-cea mai utilizat metod de rezolvare a problemelor de programare matematic
- const n trecerea de la o soluie admisibil de baz, la alt soluie admisibil de
baz, a.. s se creasc (sau s se scad) continuu, valoarea funciei obiectiv,
pn se atinge optimul.
Metoda Simplex pentru PPL n form canonic
se adaug fiecrei restricii cte o variabil de ecart, a.. inegalitile s fie
transformate n egaliti
n funcia obiectiv variabilele de ecart vor avea coeficieni egali cu zero
din punct de vedere economic, aceste variabile reprezint cantitatea sau
capacitatea rmas nefolosit.
Fie forma canonic a problemei de maxim:
( )


=
0
max
X
L X A
X C x f
T
b
m
1 ... 0 ... 0 a
mn
... a
ms
... a
m2
a
m1
x
n+m
... ... ... ... ... ... ... ... ... ... ... ... ...
b
r
0 ... 1 ... 0 a
rn
... a
rs
... a
r2
a
r1
x
n+r
... ... ... ... ... ... ... ... ... ... ... ... ...
b
2
0 ... 0 ... 0 a
2n
... a
2s
... a
22
a
21
x
n+2
b
1
0 ... 0 ... 1 a
1n
... a
1s
... a
12
a
11
x
n+1
x
0
x
n+m
... x
n+r
x
n+1
x
n
... x
s
... x
2
x
1
0 ... 0 ... 0 c
n
... c
s
... c
2
c
1
-variabilele x
i
cu i=1,n sunt variabilele decizionale, iar variabilele x
n+i
, cu
i=1,m, sunt de ecart.
- deoarece valorile b
i
sunt nenegative se poate porni de la soluia admisibil
de baz obinut prin egalarea variabilelor decizionale cu zero i a
variabilelor de ecart cu valorile termenilor liberi b
i
: X=(0,...,0,b
1
,...,b
m
)
T
Coloanele matricei extinse (A I), corespunztoare variabilelor de ecart, formeaz
matricea unitate (inversabil) - acestea sunt asociate bazei.
Notm
cu X
B
={ x
n+i
}, i=1,m, componentele asociate bazei
cu X
N
={ x
i
}, i=1,n, restul componentelor vectorului X.
L X I X A
X
X
I A
s
s
= + = ) )( (
Matriceal, restriciile devin:
unde X
s
este vectorul variabilelor de ecart
metoda Simplex descrie procesul de nlocuire a lui x
r
X
B
cu un element
x
s
X
N
, spunnd c x
r
iese din baz, iar x
s
intr n baz.
aceast operaie se numete de pivotare, iar elementul din tabel, care se
gsete la intersecia liniei r cu coloana s, a
rs
, se numete pivot.
linia r i coloana s, din tabel se vor numi linia i coloana pivot.
Actualizarea tabelului se va face dup urmtoarele reguli:
1. elementele liniei pivot, a
rj
vor fi nlocuite cu raportul a
rj
/ a
rs
, pentru j=1,
n+m;
2. elementele coloanei pivot a
is
vor fi nlocuite cu 0, n afar de pivot care
va fi nlocuit cu 1;
3. celelalte elemente vor fi nlocuite cu a
ij
- a
rj
*a
is
/ a
rs
aceste reguli realizeaz eliminarea variabilei x
s
din toate restriciile,
n afar de restricia r, iar n ecuaia r, coeficientul lui x
s
este egal cu
1.
regula 1 corespunde normalizrii liniei pivot, a.. elementul pivot s
devin 1.
regula 2 corespunde eliminrii tuturor elementelor din coloana
pivot, cu excepia pivotului
regula 3 calculeaz complementul Schur pentru restul elementelor
din tabel.
iniial baza vectorului X
B
este matricea unitate: B
1
=I.
notm cu B
i
baza corespunztoare fiecrei iteraii, i cu z
i
coloanele
tabelului corespunztor iteraiei i:
(a
1
a
2
... a
m+n
) = (A| I)=B
i
(B
i
-1
A | B
i
-1
)= B
i
(z
1
z
2
... z
m+n
),
B
i
z
j
=a
j
.
notm ultima coloan a tabelului cu z
0
(ultima coloan din tabelul
iniial este cea a termenilor liberi):
B
i
Z
0
=L, unde Z
0
=( z
10
z
20
... z
m0
)
T
vectorul Z
0
corespunde soluiei admisibile de baz curente, pentru
baza Bi:
X
Bi
=Z
0
= B
i
-1
L
determinarea variabilei x
r
care iese din baz i a variabilei x
s
, care intr n
baz, se face pe baza condiiilor de optim i fezabilitate:
Condiia de optim
- n cazul problemei de maxim se calculeaz diferenele:
- pentru problemele de minim
cu j=1,...,n+m
- unde , iar valoarea funciei obiectiv, asociat soluiei de
baz curente
Condiia de fezabilitate
- variabila x
r
, care va iei din baz, corespunde celui mai mic raport pozitiv:
) (
j j i
Z c =
j j i
Z c =

=
=
m
i
ij i j
z c Z
1
B
T
B
X c Z =
0
} 0 , min{
0 0
> =
is
is
i
rs
r
z
z
z
z
z
Metoda Simplex pentru PPL n form standard
o soluie iniial de baz nedegenerat trebuie s aib exact m componente nenule
se considera programul iniial de baz obinut prin egalarea cu zero a n-m
componete
componentele nenule sunt variabilele principale (X
B
), asociate bazei
componentele non-bazice X
N
sunt variabilele secundare
vectorii a
1
, a
2
,...,a
m
formeaz baza B asociat programului X
0
vectorii a
m+1
, a
m+2
,...,a
n
sunt coloanele matricei N
( )
T
m
x x x X 0 ,..., 0 , 0 , ,..., ,
2 1
o o o o
=
Problema de programare liniar poate fi scris astfel:
( )

= +
+ =
0
max
X
L X N X B
X C X C X f
N B
N
T
N B
T
B
( )

= +
=

0
/
0
1
0
X
L X N X B B
X C X C X f
N B
N
T
N B
T
B
ptr X
0
:
( )

= +
=

L B X N B X
X C X C X f
N B
N
T
N B
T
B
1 1
0
0
( )

=
=

N B
N
T
N B
T
B
X N B L B X
X C X C X f
1 1
0
0
( )

=
=


N B
N
T
N N
T
B
X N B L B X
X C X N B L B C X f
1 1
1 1 0
0 ) (
( )

= +
=


L B X N B X
L B C X N B C C X f
N B
T
B N
T
B
T
N
1 1
1 1 0
) (
N B C Z
T
B
T
N
1
=
( )

=
= +


L B C X Z C X f
L B X N B X
T
B N
T
N
T
N
N B
1 0
1 1
) (
Condiia de optim, n cazul problemei de maximizare considerate, este ca
toate diferenele (c
j
-z
j
) 0 (pentru minim c
j
-z
j
0).
Dualitate n programarea liniar
fiecare problem de programare liniar are asociat o alt problem de
programare liniar, bazat pe aceleai date
problema original se numete primal i problema asociat acesteia, se
numete dual
studiul dualitii este util:
atunci cnd se dorete testarea preciziei soluiei problemei primale,
atunci cnd problema original conine un numr mare de restricii (linii), i un
numr mic de variabile (coloane).
n problema primal:
o restricie:
de tipul: a
i1
x
1
+ a
i2
x
2
+ + a
in
x
n
b
i
ntr-o problem de
minim
de tipul: a
i1
x
1
+ a
i2
x
2
+ + a
in
x
n
b
i
ntr-o problem de
maxim
se numete concordant cu funcia obiectiv
O restricie :
de tipul: a
i1
x
1
+ a
i2
x
2
+ + a
in
x
n
b
i
ntr-o problem de
maxim
de tipul: a
i1
x
1
+ a
i2
x
2
+ + a
in
x
n
b
i
ntr-o problem de
minim
se numete neconcordant cu funcia obiectiv
Problema dual se construiete folosind elementele problemei primale
i o serie de reguli:
1. duala unei probleme de minim este o problem de maxim i invers.
2. fiecrei restricii din primal i corespunde o variabil n dual i invers.
(numrul variabilelor din primal este egal cu numrul restriciilor din
dual i invers)
a) unei restricii conordante i corespunde o variabil pozitiv i invers
b) unei restricii neconordante i corespunde o variabil negativ i invers
c) unei restricii de tip egalitate i corespunde o variabil oarecare i invers
3. coeficienii funciei obiectiv din dual sunt termenii liberi din primal, iar
termenii liberi din dual sunt coeficienii funciei obiectiv din primal.
4. matricea coeficienilor tehnologici din dual este transpusa matricei
coeficienilor tehnologici din primal.
( )
min f X C X
A X L
X
T
=

0
PD
PP
( )
maxg Y L Y
A Y C
Y
T
T
=

0
Y
y
y
y
m
=
|
\

|
|
|
|
1
2
M

=
+ +
+ +
+ +
+ + =
4 , 3 , 2 , 1 , 0
2
2 2
1 3 2
2 4 min
4 3 2 1
4 3 2 1
4 3 2 1
3 2 1
i x
x x x x
x x x x
x x x x
x x x f
i
Exemplu:
( )

=
+
+ +
+
+ +
+ + =
3 , 2 , 1 , 0
0 3
2
4 2
1 2
2 2 max
3 2 1
3 2 1
3 2 1
3 2 1
3 2 1
i y
y y y
y y y
y y y
y y y
y y y Y g
i
PP
PD
Teorema 1. Fie X o soluie posibil pentru problema (PP) i Y o soluie
posibil pentru problema (PD) atunci
( ) ( ) Y g X f
( ) ( )
o o
X f Y g min max = ( )
o o
Y L X
T
=
T
C sau
Teorema 2. Dac (PP) are optim finit atunci (PD) are optim finit
i avem:
unde X
o
este o soluie optim pentru (PP) iar Y
o
o soluie optim pentru
(PD).
Teorema 3. (teorema ecarturilor complementare)
Fie X,Y soluii ale problemelor (PP), respectiv (PD). Atunci X,Y sunt soluii
optime dac i numai dac au loc relaiile:
( )
( )
Y L AX X A Y C
T T T
= = 0 0 ;
PROBLEMA CLASIC DE TRANSPORT
Problema clasic de transport face parte din clasa problemelor
modelate prin reele de transport.
O reea de transport modeleaz situaia economic n care, dintr-
un numr de surse, trebuie transportat o cantitate dintr-o anumit
marf, ntr-un numr de destinaii.
Caracteristicile unei probleme de transport clasice sunt:
1. fiecare surs aprovizioneaz cel puin o destinaie i fiecare
destinaie este aprovizionat de la cel puin o surs;
2. pot exista perechi surs-destinaie ntre care nu se poate face
transfer (rute blocate);
3. nu exist limitri n ceea ce privete cantitatea transportat pe
fiecare rut;
4. se cunosc cantitile disponibile n fiecare surs i cantitile
necesare n fiecare destinaie;
5. fiecrei rute i s-a asociat un cost care nu depinde de sensul de
parcurgere.
Datele problemei sunt:
m = numrul de surse (furnizori);
n = numrul de destinatari (consumatori);
{D
i
, i = 1,...,m} = cantitile disponibile n fiecare surs;
{N
j
, j = 1,...,n} = cantitile necesare la fiecare surs;
{c
ij
, i = 1,...,m; j = 1,...,n} = costurile unitare pe fiecare rut (costul
transportrii unei uniti de msur de la sursa i la destinaia j).
Scopul - gsirea acelor cantiti care trebuie transportate pe fiecare
rut astfel nct s se asigure necesarul fiecrei destinaii, n limitele
cantitilor aflate la surse, cu costul minim posibil.
MMMOMM
disponibil
necesar
Nn N
2
N
1
D
m
c
mn
c
m2
c
m1
F
m
D
2
c
2n
c
22
c
21
F
2
D
1
c
1n
c
12
c
11
F
1
C
n
C
2
C
1
Destinaii
Surse
Se noteaz cu x
ij
- cantitatea care va fi transportat de la sursa i la destinaia j:
( )

= =
=
=
=


=
=
= =
n 1,..., j m; 1,..., i 0 x
n 1,..., j N x
m 1,..., i D x
x c min
ij
j
m
1 i
ij
i
n
1 j
ij
m
1 i
n
1 j
ij ij
f
- problema nu are soluii admisibile dac disponibilul total este mai mic
dect cererea total

= = = =

m
1 i
n
1 j
j
n
1 j
ij
m
1 i
i
totala cerere N x D total disponibil
Cazuri posibile n practic:

= =
>
n
1 j
j
m
1 i
i
N D ) 1 (
disponibilul total este mai mare dect cererea total (se va transporta doar
necesarul)
problema are soluie optim
cantitatea n exces fa de cerere va rmne la furnizori, fiind reprezentat de
variabilele de abatere din primele m restricii
pentru echilibrare -aceste cantiti = cereri ale unui consumator fictiv
costurile unitare pe rutele care ar lega furnizorii de acest consumator sunt 0
cererea consumatorului fictiv va fi egal cu diferena dintre disponibilul i
necesarul total

= =
<
n
1 j
j
m
1 i
i
N D ) 2 (
dac disponibilul este mai mic dect necesarul - unora dintre consumatori nu
li se va satisface toat cererea
cerere nesatisfcut = disponibilul unui furnizor fictiv
costurile unitare pe rutele care ar lega consumatorii de acest furnizor sunt 0
disponibilul furnizorului va fi diferena dintre necesarul i disponibilul total

= =
=
n
1 j
j
m
1 i
i
N D ) 3 (
problema echilibrata
toate soluiile admisibile verific toate restriciile cu egal
( )

= =
= =
= =
=


=
=
= =
n 1,..., j m; 1,..., i 0 x
n 1,..., j N x
m 1,..., i D x
x c min
ij
j
m
1 i
ij
i
n
1 j
ij
m
1 i
n
1 j
ij ij
f

= =
=
n
1 j
j
m
1 i
i
N D
Forma standard a problemei de transport
Rezolvarea problemei de transport:
nu se poate aplica metoda simplex un nr. foarte mare de
variabile (nxm cate una pentru fiecare ruta) i n+m restrictii
Etapa 1.Gasirea unei soluii iniiale de baz
Metoda colului de nord vest
se alege ruta din colul din stnga sus al tabelului, dintre cele neblocate sau nealocate
nc
Metoda minimului pe linii
se alege ruta de cost minim de pe prima linie, dintre cele neblocate sau nealocate nc
Metoda minimului pe coloane
se alege ruta de cost minim de pe prima coloan, dintre cele neblocate sau nealocate
nc
Metoda costului minim
se alege ruta de cost minim din tot tabelul, dintre cele neblocate sau nealocate nc
Metoda diferenelor maxime
se calculeaz pentru fiecare linie i coloan diferenele ntre cele mai mici costuri
pentru liniiile i coloanele cu diferene maxime se caut costul minim
- dup fiecare alegere se transport pe ruta respectiv - maximul posibil (minimul dintre cantitatea
care mai e disponibil la furnizor i cantitatea care mai e necesar la consumator)
- se epuizeaz disponibilul furnizorului (se blocheaza celelalte rute care pleaca de la acesta) sau
necesarul consumatorului (se blocheaza celelalte rute catre acesta) sau ambele
Etapa2. Gasirea soluiei optime
1. Se asociaz fiecrui furnizor F
i
o variabil u
i
i fiecrui consumator C
j
o variabil v
j
;
2. Fiecrei rute (i,j) folosit n soluia actual i se asociaz ecuaia u
i
+ v
j
= c
ij
,
rezultnd un sistem cu m + n necunoscute (m de u
i
i n de v
j
) i m + n 1 ecuaii;
3. Se gsete o soluie particular a acestui sistem, egalnd una din necunoscute cu
0 (pe cea care apare de cele mai multe ori);
4. Se calculeaz toi
ij
= c
ij
(u
i
+ v
j
) pentru toate rutele care nu fac parte din soluie
(ceilali sunt 0, innd cont de modul de calcul pentru u
i
, i = 1,...,m i v
j
, j = 1,...,n)
5. Se analizeaz ij gsii.
dac toi sunt pozitivi soluia gsit este optim
dac exist ij strict negativi atunci soluia actual nu este optim i ruta
corespunztoare lui ij minim va fi cea care intr n baz (dac minimul este
multiplu se ia una la ntmplare)
6. Se construiete un circuit, pornind din aceast rut, trecnd doar prin rutele
soluiei, mergnd doar pe vertical sau orizontal i fiecare trecere de la o rut la
alta fcndu-se doar perpendicular pe trecerea anterioar.
7. Se noteaz alternativ cu "+" i "" rutele circuitului incepnd cu + din ruta care va
intra n baz
8. Se noteaz cu minimul dintre cantitile transportate pe rutele notate cu "" i
ruta pentru care s-a obinut acest minim este cea care va iei din baz;
9. Se scade din cantitile transportate pe rutele notate cu "" i se adaug la cele
notate cu "+", rutele care nu sunt pe circuit pstrndu-i valoarea;
10. Se reia algoritmul de la pasul 2 al etapei a II-a
ELEMENTE DE TEORIA GRAFURILOR
Grafurile - vizualizarea sistemelor i situaiilor complexe;
Componentele sist. - puncte n plan;
Relaiile (legturile, dependenele, influenele etc) dintre componente -
arce cu extremitile n punctele respective;
Definiia 1 Se numete graf un cuplu G = (X,U) n care X i U sunt
dou mulimi:
X = mulimea nodurilor grafului
U = mulimea muchiilor (legturilor) ntre dou noduri, nu neaparat distincte,
ale grafului.
Definiia 2 Se numete graf orientat un graf n care s-a dat o orientare
total muchiilor acestuia.
a orienta muchia (x
i
, x
j
) inseamna a alege un arc de la nodul x
i
la
nodul x
j
sau invers;
arcul (x
i
,x
j
) este incident spre interior vrfului x
j
i incident spre
exterior vrfului x
i
.
dac pentru un arc nodul iniial coincide cu nodul final atunci
acesta se numete bucl
x
i
i x
j
se vor numi adiacente dac exist cel puin unul din arcele
(x
i
,x
j
) i (x
j
,x
i
).
geometric - se reprezent fiecare nod printr-un punct
i fiecare arc printr-un segment de curb care are ca
extremiti nodurile arcului i pe care este trecut o
sgeat orientat de la nodul iniial spre cel final.
printr-o matrice ptratic boolean, de dimensiune
egal cu numrul de noduri, n care o poziie a
ij
va fi 1
dac exist arcul (x
i
,x
j
) i 0 n caz contrar, numit
matricea adiacenelor directe
Reprezentarea unui graf orientat
Concepte de baz n teoria grafurilor:
1. semigraf interior al unui nod x
k
:U
-
k
este mulimea arcelor
incidente spre interior nodului x
k
;
2. semigraf exterior al unui nod x
k
:U
+
k
este mulimea arcelor
incidente spre exterior nodului x
k
;
3. semigradul interior al unui nod x
k
: este numrul arcelor care
sunt incidente spre interior nodului x
k
= cardinalul lui U
-
k
4. semigradul exterior al unui nod x
k
: este numrul arcelor care
sunt incidente spre exterior nodului x
k
= cardinalul lui U
+
k
;
5. gradul unui nod x
k
: este suma semigradelor;
6. nod izolat: este un nod cu gradul 0;
7. nod suspendat: este un nod cu gradul 1;
8. arce adiacente: arce care au o extremitate comun;
9. drum ntr-un graf: o mulime ordonat de noduri ale grafului: (x
1
,
x
2
, ..., x
k
), cu proprietatea c exist n graf toate arcele de forma
(x
i
,x
i+1
) i = 1,...,k-1;
10. lungimea unui drum: este numrul arcelor care l formeaz;
11. drum elementar: un drum n care fiecare nod apare o singur
dat;
12. drum simplu: un drum n care fiecare arc apare o singur dat;
13. putere de atingere a unui nod x
i
X n graful G: numrul de
noduri la care se poate ajunge din x
i
. Puterea de atingere se
noteaz cu p(xi), 1 i n
14. drum hamiltonian: un drum elementar care trece prin toate
nodurile grafului;
15. drum eulerian: un drum simplu care conine toate arcele grafului;
16. lan: un drum n care arcele nu au neaprat acelai sens de
parcurgere;
17. circuit: un drum n care nodul iniial coincide cu cel final;
18. circuit elementar: un drum n care fiecare nod apare o singur
dat, cu excepia celui final, care coincide cu cel iniial;
19. circuit simplu: un drum n care fiecare arc apare o singur dat;
20. circuit hamiltonian: un circuit care trece prin toate nodurile
grafului;
21. ciclu: este un circuit n care arcele nu au neaprat acelai sens de
parcurgere;
22. ciclu elementar: un ciclu n care fiecare nod apare o singur dat,
cu excepia celui final, care coincide cu cel iniial;
23. ciclu simplu: un ciclu n care fiecare arc apare o singur dat;
(ntr-un graf neorientat noiunile de drum i lan sunt echivalente i
de asemenea cele de circuit i ciclu.)
24. graf parial al unui graf G = (X,U): este un graf G'(X,U') cu U' U;
25. subgraf al unui graf G = (X,U): este un graf G'(X',U') unde X' X,
obtinut prin eliminarea unui numar de vf. si a arcelor incidente cu
acestea ;
26. graf complet este un graf in care orice cuplu de vf. e legat cu cel
putin un arc;
27. graf simetric este un graf in care orice cuplu de vf. e legat cu arce
in ambele sensuri;
Gsirea drumurilor ntr-un graf orientat
Construirea grafului unui sistem:
nodurile=strile posibile ale sist.
arcurile (x
i
,x
j
) sist. poate trece direct din starea x
i
in x
j
.
exist i posibilitatea trecerii prin alte stri intermediare -existena n
graf a unui drum de la nodul x
i
la nodul x
j
.
A=matricea boolean a adiacenelor directe drumurile de lungime 1
A
k
(cu regulile alg.booleene) a(i,j)=1 =>exista cel putin un drum
de lungime k, de la x
i
la x
j
Ptr. a afla numarul acestora regulile obisnuite de adunare si inmultire
Pentru deciderea existenei unui drum ntre oricare dou noduri este
suficient calcularea doar a primelor n-1 puteri ale lui A.
Daca intereseaza doar existenta drumurilor dintre noduri - matricea
conexiunilor totale
D = A + A
2
+ ... + A
n-1
-alg.booleene
d
ij
=

j i
j i
x la x de drum un nici a exist nu a dac 0
x la x de drum un putin cel a exist a dac 1
( (
( (
ARBORI. Arborele de valoare optim
circuit: un drum n care nodul iniial coincide cu cel final
ciclu: este echivalentul circuitului ntr-un graf neorientat
lan: este echivalentul drumului ntr-un graf neorientat
graf conex: este un graf n care ntre oricare dou noduri exist cel
puin un lan
Def: Un arbore este un graf neorientat, finit, conex i
fr cicluri
Algoritmi pentru gsirea arborelui de valoare optim
Algoritmul lui Kruskal
1. Dintre toate muchiile grafului se alege muchia de
valoare minim (maxim). Dac minimul este multiplu
se alege la ntmplare una din muchiile respective.
2. Dintre toate muchiile rmase, se alege cea de valoare
minim (maxim), astfel nct s nu se formeze cicluri
cu cele deja alese;
3. Se reia algoritmul de la pasul 2 pn se colecteaz n-
1 muchii.
Algoritmul lui Sollin
1. Pentru fiecare nod se alege muchia adiacent de valoare minim
(maxim).
2. Se evideniaz componentele conexe, existente n graful parial
format din arcele alese pn n acest moment.
3. Pentru fiecare component conex se alege muchia adiacent de
valoare minim (maxim). (muchie adiacent unei componente
conexe = o muchie care are o singur extremitate printre nodurile
componentei respective)
4. Se reia algoritmul de la pasul 2 pn rmne o singur
component conex. Acesta este arborele optim cutat.
Algoritmul lui Kruskal modificat:
1. Dintre toate muchiile grafului se alege cea de valoare minim
(maxim);
2. Dintre toate muchiile adiacente componentei conexe format din
arcele alese pn n acest moment, se alege cea de valoare
minim (maxim);
3. Se reia pasul 2 pn se colecioneaz n-1 muchii.
Problema de afectare (repartitie)
Problema de afectare (repartiie)
Corespunde situaiei practice n care se urmrete:
asocierea optim a elementelor mulimii X = {x
1
, x
2
, ... , x
n
} cu
elementele mulimii Y = {y
1
, y
2
, ... , y
m
}
n condiiile unor limitri ale posibilitilor de asociere
fiecare asociere posibil x
i
y
j
aduce un anumit efect v
ij
(profit,
cost, timp)
Limitrile asupra asocierilor:
1.Un element x
i
poate fi asociat doar cu anumite elemente din Y
i reciproc;
2.Fiecrui element din X i se asociaza cel mult un element din Y
i reciproc.
Asocierea optim presupune dou obiective:
1. S se fac maximul de asocieri;
2. Suma efectelor asocierilor s fie minim (sau maxim, n funcie de
semnificaia acestora).
Definiia 1: Se numete graf bipartit un graf G = (X, U) n
care mulimea nodurilor poate fi mprit n dou
submulimi disjuncte A i B astfel nct orice arc are
extremitatea iniial n A i cea final n B*.
x
1
x
2
x
n
y
1
y
2
y
m
* Bazele Cercetrii Operaionale Prof.dr. E.ignescu, Prof.dr. D. Mitru
Definiia 2: Se numete cuplaj al unui graf bipartit o
submulime de arce W U cu proprietatea c nu exist dou
arce adiacente (pentru orice nod exist cel mult un arc
incident acestuia).
Definiia 3: Se numete cuplaj maxim un cuplaj cu
proprietatea c orice arc care nu face parte din cuplaj este
adiacent cu un arc din cuplaj ( orice arc vom aduga, nu
mai rmne cuplaj conine numrul maxim de arce
neadiacente)
Definiia 4: Daca se asociaza fiecrui arc (x
i
,x
j
) o valoare v
ij
, se
numete valoare a unui cuplaj suma valorilor arcelor care l
formeaz.
Problema de repartiie este echivalent matematic:
- determinarea unui cuplaj maxim de valoare optim (minim sau
maxim) n graful bipartit asociat.
n practic economic:
problema repartizrii muncitorilor unei secii pe utilaje n funcie de
diferite criterii;
repartizarea angajailor pe posturi n funcie de competene;
formarea echipelor de lucru dup anumite compatibiliti ntre
membrii colectivului.
Algoritmul ungar - determina un cuplaj maxim de valoare minim
ntr-un graf bipartit pentru care A=B= n.
Pas1. Se construiete matricea ptratic asociat grafului, ale crei elemente au
valoarea arcului ij, dac acesta exist, sau , n caz contrar
Pas2. Se identific valoarea minim din fiecare linie i se scade din fiecare
element al liniei respective
Pas3. Se identific valoarea minim din fiecare coloan i se scade din fiecare
element al coloanei respective (n fiecare linie i oloan va fi cel puin un 0)
Pas4. De la cel mai mic numr de zerouri i de sus n jos, se ncadreaz n fiecare
linie, zeroul din coloana cu cele mai puine valori de zero i se bareaz celelalte de
pe linia i coloana acestuia. (Pe fiecare linie i coloan va fi cel mult un zero
ncadrat)
- dac n final sunt n zerouri arcele respective formeaz cuplajul cutat
- dac sunt mai puine se trece la pasul urmtor
Pas5. Se stabilete numrul minim posibil de linii i coloane care s conin toate
zerourile astfel:
- se marchez liniile care nu au nici un zero ncadrat
- se marchez coloanele care au un zero barat pe linia marcat
- se marcheaz liniile care au un zero ncadrat pe o coloan marcat
- se repet pn nu mai poate fi marcat nici o linie i nici o coloan
Pas6. Se taie liniile nemarcate i coloanele marcate
Pas7. Se mpart elementele matricei n trei submulimi:
S1=elementele aflate la intersecia dintre linii i coloane netiate
S2=elementele aflate la intersecia dintre linii tiate i coloane netiate
sau invers
S3=elementele aflate la intersecia dintre linii i coloane tiate
Pas8. Elementele submulimii S2 rmn neschimbate, dar din
fiecare element al submulimii S1 se scade minimul din S1, care
apoi se adun la elementele submulimii S3
Pas9. Se reia algoritmul de la pasul 4, pn cnd cuplajul va
avea exact n arce
Problema de ordonanare - Analiza drumului critic
stabilirea unei ordini de efectuare a activitilor unui proiect
astfel ca interdependenele dintre ele s fie respectate n cadrul
resurselor disponibile
i durata total de execuie a acestuia s fie minim.
Proprieti:
fiecare activitate este indivizibil (nu se mai descompune n
subactiviti);
fiecare activitate are o durat cunoscut;
o activitate, odat nceput, nu mai poate fi ntrerupt.
Interdependenele temporale numite relaii de
preceden ntre activitile A i B pot fi:
de tip "terminare nceput: activitatea B nu poate ncepe dect
dup un interval de timp t
AB
de la terminarea activitii A. Acest
interval poate fi egal i cu zero, caz n care spunem c activitatea
A precede direct activitatea B;
de tip "nceput nceput": activitatea B nu poate ncepe dect
dup un interval de timp t
AB
de la nceperea activitii A. Acest
interval poate fi chiar mai mare dect durata activitii A
de tip "terminare terminare": activitatea B nu se poate termina
dect dup un interval de timp t
AB
de la terminarea activitii A sau
c activitatea A trebuie terminat cu cel puin t
AB
uniti de timp
naintea terminrii activitii B.
A programa un proiect = a stabili termenele de ncepere pentru
fiecare activitate n parte, innd seama de restriciile impuse de
procesul tehnologic, duratele activitilor i resursele disponibile.
Metoda drumului critic (MDC)
modeleaz un proiect complex prin intermediul unui graf
permite urmrirea ndeplinirii termenului final planificat al procesului,
precum i a termenelor intermediare.
Tabel cu coloanele:
activiti - denumire sau printr-un simbol (codul activitii);
condiionri - activitile imediat precedente, prin simbolurile lor;
(activitile de start nu au activiti precedente);
durata: pentru fiecare activitate se precizeaz durata de execuie,
ntr-o anumit unitate de msur.
Graful proiectului:
fiecrei activiti i se asociaz un segment orientat numit arc, definit
prin capetele sale;
fiecrui arc i se asociaz o valoare egal cu durata activitii pe care
o reprezint;
condiionarea a dou activiti se reprezint prin succesiunea a
dou arce adiacente.
nodurile grafului vor reprezenta momentele caracteristice ale
proiectului, reprezentnd stadii de realizare a activitilor
exist activiti care se execut n paralel, (pot ncepe n acelai
moment i se pot termina n acelai moment) - este interzis ca cele
dou arce corespunztoare s aib ambele extremiti comune -
activitai fictive
Etapa1-se calculeaz pentru fiecare nod al grafului:
1. Termenul cel mai devreme de realizare a evenimentului j
=momentul cel mai devreme posibil de terminare a tuturor
activitilor care converg n nodul j
=valoarea maxim a drumurilor dintre evenimentul iniial 1 i
evenimentul j
2. Termenul cel mai trziu de realizare a evenimentului i.
=momentul cel mai trziu posibil de ncepere a activitilor care
pleac din nodul i astfel nct toate succesiunile de activiti
dintre acest nod i nodul final s mai poat fi efectuate pn la
termenul final de realizare al proiectului
Etapa2 se calculez:
1. Termenul minim de ncepere cel mai devreme a activitii (i.j)
- termenul cel mai devreme de realizare al evenimentului i (o activitate nu
poate ncepe dect dup ce se termin toate cele care o preced)
2. Termenul minim de terminare cel mai devreme a activitii (i.j)
- suma dintre termenul cel mai devreme de ncepere i durata activitii
3. Termenul maxim de terminare cel mai trziu a activitii (i,j)
- termenul cel mai trziu de realizare a evenimentului j
4. Termenul maxim de ncepere cel mai trziu a activitii (i,j)
- diferena dintre termenul cel mai trziu de terminare i durata activitii
Etapa3 se calculez:
1. Rezerva total de timp (Rt) a unei activiti (i,j)
= diferena dintre termenul cel mai trziu de terminare i termenul cel mai
devreme de terminare
2. Rezerva liber de timp (Rl) a unei activiti (i,j)
= intervalul de timp ca parte a rezervei totale de timp, cu care o activitate se
poate amna (sau se poate mri durata activitii)
3. Rezerva independent de timp (Ri) a unei activiti (i,j)
= 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
-aceste activiti nu dispun de rezerv de timp
- trebuie s nceap i s se termine exact la termenele calculate, pentru
a nu depi termenul de finalizare al proiectului
-celelalte activiti pot fi amnate cu rezervele lor de timp
- consumarea acestora face ca proiectul s devin rigid.
- drum critic = drumul a crui lungime este egal cu durata minim de
execuie a proiectului
- activitate critic = activitatea pentru care Rt=Rl=Ri=0
Graficul Gantt -graficul calendaristic
- exprim la scara timpului, prin linii orizontale, durata activitilor, i prin linii
ntrerupte rezervele de timp
-poate fi:
- la termenele cele mai devreme
- la termenele cele mai trzii.
R
Tij
t
ij
1t
t
ij
1
t
ij
0t
t
ij
0
t
j
1
-t
j
0
t
i
1
-t
i
0
t
j
1
t
j
0
t
i
1
t
i
0
j i Simbol
Rezerva
total
Termenele
activitilor
Interval Termenele evenimentelor
Durata
d
ij
Activitate
Metoda Potenialelor (Metro Potenial Method)
diferena dintre metoda drumului critic i metoda potenialelor const n
modalitatea de construire a grafului proiectului
nodurile sunt asociate activitilor
nodurilor li se asociaz valori egale cu duratele activitilor respective
arcele dintre noduri au semnificaia succesiunii celor dou activiti pe care le leag
pot exista trei tipuri de condiionri
terminare-nceput
nceput nceput
terminare terminare
calculul termenelor este asemntor cu cel fcut n metoda drumului critic
Metoda PERT (Program Evaluation and Review Tehnique)
- este un procedeu probabilistic (duratele activitilor nu mai sunt fixe - sunt estimate)
Se cunosc:
a
ij
durata cea mai optimist;
m
ij
durata cea mai probabil;
b
ij
durata cea mai pesimist.
duratele activitilor n cazul PERT sunt variabile aleatoare cu o distribuie de tip (asimetric).
folosete un graf cu activiti pe arce i cu evenimente n noduri, orientat spre evidenierea
evenimentelor
ntreg procesul de analiz este orientat spre evaluarea probabilitilor de a atinge un anumit
eveniment
pe baza estimrilor probabilistice se consider c durata unei activiti are o distribuie de tip
funcia:
este unimodal (exist o singur valoare m
ij
);
intersecteaz graficul n dou puncte (a
ij
i b
ij
).
Se caracterizeaz prin:
medie:
dispersie:
6
b m 4 a
d
ij ij ij
ij
+ +
=
2
ij ij
ij
2
6
a b
|
|

\
|

=
Drumul critic n acest procedeu se calculeaz innd cont de duratele
estimate (medii), n locul duratelor fixe.
Durata total a procesului este o variabil aleatoare cu o distribuie
normal.
Bibliografie
Bazele Cercetrii Operaionale Prof.dr. E.ignescu,Prof.dr. D.
Mitru, (disponibil la http://www.asecib.ase.ro/cursuri_online.htm)
Capitole speciale ale Cercetrii Operaionale Prof.dr. V. Nica
(disponibil la http://www.asecib.ase.ro/cursuri_online.htm)
Operations Research Simplified (disponibil la
http://www.universalteacherpublications.com/univ/ebooks/or)
Modele i algoritmi de optimizare R. Trandafir, Ed. AGIR,
Bucureti, 2004
Cercetari operationale. Optimizari in retele. Teorie si aplicatii
economice - G. Ciobanu, V. Mrcine, V. Nica, D. Mitru , Ed.
Matrixrom, Bucureti, 2002
Cercetri operaionale cu aplicaii n economie: optimizri
liniare - G. Ciobanu, E. ignescu , Ed. ASE, Bucureti, 2002
Modele, algoritmi i produse software n cercetarea operational
-M. Cocan, Ed. Albastr, Bucureti, 2008

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