Sunteți pe pagina 1din 137

1

BAZELE CERCETĂRII
OPERAŢIONALE

Şef lucr. dr. Stejărel BREZULEANU

2004
2
CUPRINS

Cap. 1. Natura cercetării operaţionale ..............................................................3


1.1. Dezvoltarea cercetării operaţionale.......................................................3
1.2. Cercetarea operaţională şi disciplinele înrudite ....................................8
1.3. Conţinutul şi caracteristicile principale ale cercetării
operaţionale..................................................................................................16
Cap. 2. Modelarea în cercetarea operaţională..................................................24
2.1. Rolul modelării în cercetarea operaţională ...........................................24
2.2. Probleme tip de cercetare operaţională .................................................29
Cap. 3. Programarea liniară în cercetarea operaţională .................................35
3.1. Prezentarea generală a programării liniare............................................35
3.3. Algoritmul simplex ...............................................................................39
Cap. 4. Elemente de teoria grafurilor................................................................44
4.1. Noţiuni generale....................................................................................44
4.2. Moduri de reprezentare ale unui graf....................................................46
4.3. Concepte de bază în teoria grafurilor....................................................48
4.4. Găsirea drumurilor într-un graf orientat ...............................................50
4.5. Arbori „Problema arborelui de valoare optimă“ ...................................55
4.5.1. Noţiunea de arbore.............................................................................55
4.5.2. Algoritmi pentru găsirea arborelui de valoare optimă .......................58
4.6. Drumuri optime într-un graf .................................................................63
4.7. Reţele de transport ................................................................................66
Cap. 5. Gestiunea stocurilor ...............................................................................71
5.1. Introducerea în problematica stocurilor ................................................71
5.2. Importanţa stocurilor în procesul de producţie .....................................72
5.3. Tipuri de stocuri....................................................................................74
5.4. Obiective şi rezultate ale gestiunii ştiinţifice a stocurilor .....................76
5.5. Elementele principale ale unui proces de stocare .................................77
5.6. Modele de gestiune a stocurilor ............................................................82
5.6.1. Modelul Willson ................................................................................82
5.6.2. Modelul Willson cu ruptură de stoc...................................................86
5.6.3. Generalizări ale modelului Willson ...................................................91
3
5.6.4. Modelul de producţie-stocare ............................................................92
5.6.5. Model de gestiune cu preţuri de achiziţie sau cu cheltuieli de
producţie variabile .......................................................................................96
5.6.6. Modele de gestiune cu cerere aleatoare .............................................98
5.7. Modalităţi practice de aplicare a modelelor teoretice ...........................102
5.7.1. Modelul S-S .......................................................................................102
5.7.2. Metoda A.B.C. ...................................................................................103
5.7.3. Strategia IMPACT .............................................................................107
Cap. 6. Optimizarea itinerarelor de transport .................................................111
6.1. Metode pentru obţinerea unor soluţii iniţiale de bază...........................112
6.1.1. Metoda colţului nord-vest sau a colţului stânga sus ..........................112
6.1.2. Metoda colţului sud-vest....................................................................115
6.1.3. Metoda elementului minim pe linie ...................................................116
6.1.4. Metoda elementului minim pe coloană ..............................................117
6.1.5. Metoda dublei preferinţe....................................................................118
6.1.6. Metoda acoperirii zerourilor ..............................................................120
6.2. Metoda Kotzig ......................................................................................126
6.3. Metoda Vogel .......................................................................................130
Bibliografie .................................................................................................133
4
CAPITOLUL 1
NATURA CERCETĂRII OPERAŢIONALE

1.1. DEZVOLTAREA CERCETĂRII


OPERAŢIONALE

Cercetarea operaţională se aplică pe scară largă în multe domenii de


activitate ca: administraţie centrală sau locală, în activităţi industriale în diverse
organizaţii sociale, spitale, şcoli, sindicate, biblioteci) etc. Cu atât mai mult, în
activitatea de producţie agricolă, cercetarea operaţională îşi găseşte
aplicabilitatea datorită diversificării ramurilor de producţie, a influenţei
factorilor de producţie şi a factorilor naturali, precum şi a proceselor
permanente de optimizare a resurselor.
Metodele cercetării operaţionale se aplică cu succes în conservarea
resurselor de apă, în optimizarea tehnologiilor de producţie, precum şi în
planificarea regională şi locală a producţiei agricole.
Se pare că termenul de „cercetare operaţională“ a fost utilizat pentru
prima dată în anul 1939, dar la fel ca şi în alte ramuri ale ştiinţei, s-a constatat
că izvoarele cercetării operaţionale îşi au originea în decursul ştiinţei şi
societăţii. Chiar şi cele mai vechi discipline, cum ar fi ştiinţele naturale au
început să fie individualizate prin nume abia în secolul trecut, dar odată
denumirea fixată, ea a servit pentru a denumi lucrări mult mai vechi.
Deşi anumite elemente de cercetare operaţională se pot întâlni înainte
de prima revoluţie industrială, necesităţile impuse de această revoluţie au fost
cele care au condus la dezvoltarea cercetării operaţionale ca ştiinţă
independentă. Până la mijlocul secolului trecut, majoritatea unităţilor de
producţie foloseau foarte puţini oameni. Apariţia maşinilor-unelte a permit
înlocuirea omului cu maşina, ca sursă de energie iar dezvoltarea sistemelor
naţionale de transport şi comunicaţii au impulsionat evoluţia industriei
întreprinderilor, devenea din ce în ce mai greu ca întreg procesul de conducere
să fie asigurat de un singur om. De aceea proprietarul, iar mai târziu directorii
de profesie, au început să atribuie altora câte o parte din sarcinile sale. Au
5
început să apară serviciile de producţie, finanţe, personal, comercial, cercetare
şi proiectare. Dezvoltarea industrială ulterioară a impus o diferenţiere şi mai
accentuată. Astfel, serviciul producţie a fost divizat în aprovizionare,
întreţinere şi reparaţii, transport, control de calitate şi planing, (planificarea
lucrului pe maşini şi utilaje).
Pe măsura creşterii şi răspândirii populaţiei, au apărut noi pieţe de
desfacere şi s-au descoperit surse noi de materii prime. Ca rezultat, operaţiile
industriale s-au dispersat geografic. A devenit un lucru comun ca aceeaşi firmă
să dispună de mai multe întreprinderi şi de mai multe oficii comerciale, fiecare
dintre acestea având propriul lor conducător. Astfel, diviziunea teritorială şi
funcţională a managementului firmelor, pe care o cunoaştem astăzi, este o
consecinţă a dezvoltării economice generată de prima revoluţie industrială. Pe
măsura dezvoltării fiecărei noi activităţi de conducere, au apărut noi ştiinţe
aplicate, având rolul de a sprijini activitatea respectivă. Astfel, odată cu
utilizarea cunoştinţelor de statistică şi psihologie, s-a dezvoltat o altă ştiinţă,
organizarea producţiei.
Au apărut şi alte discipline aplicative: studiul fenomenelor de
conjunctură, microeconomia industrială, psihologia şi sociologia industrială.
Specializarea continuă a funcţiilor de conducere a determinat o specializare din
ce în ce mai accentuată a disciplinelor ştiinţifice corespunzătoare. Au apărut
discipline ca: tehnologia materialelor, controlul statistic al calităţii, teoria
reînnoirii, teoria siguranţei, marketingul.
Un aspect important al acestei dezvoltări constă în faptul că sfera de
preocupări a acestor ştiinţe nu a cuprins şi funcţia executivă a procesului de
conducere. Pentru a înţelege semnificaţia acestui fenomen, este indicat să
lămurim în ce constă această funcţie executivă.
Ori de câte ori o funcţie de conducere este divizată în mai multe
subfuncţii diferite, apare o nouă activitate care trebuie desfăşurată. Toate aceste
noi compartimente trebuie integrate, astfel încât ele să servească în mod
eficient interesele generale. Funcţia executivă este cea care trebuie să realizeze
această integrare. Pentru ca funcţia executivă să-şi atingă scopul, este necesar
să se stabilească obiectivele compartimentelor corespunzătoare, precum şi
anumite criterii care să indice măsura în care aceste obiective au fost
6
îndeplinite. De exemplu, conducerea unei întreprinderi atribuie
compartimentelor principalele sarcini:
- Serviciul producţie: maximizarea cantităţii de mărfuri sau servicii şi
minimizarea cheltuielilor specifice de producţie;
- Serviciul comercial: maximizarea cantităţii de mărfuri vândute şi
minimizarea cheltuielilor specifice legate de desfacerea mărfurilor;
- Serviciul financiar: minimizarea capitalului necesar pentru
menţinerea unui nivel de producţie dat;
- Serviciul personal: urmăreşte ca salariaţii să-şi poată îndeplini
sarcinile în mod conştiincios şi să asigure o înaltă productivitate a
muncii.
Toate aceste sarcini sunt în conformitate cu obiectivele generale ale
întreprinderii, dar ele sunt adeseori contradictorii, aplicarea lor în practică este
mai greu de înfăptuit. Ca o ilustrare a acestui fapt, putem exemplifica
atitudinea pe care o au cele 4 servicii menţionate faţă de problema stocurilor:
- Serviciul producţie caută să producă cât mai mult la un preţ cât mai
scăzut. Acest lucru se poate realiza numai prin fabricarea în mod
continuu a unui singur produs.
Dacă se cer mai multe tipuri de produse, metoda cea mai ieftină este în
a produce de fiecare dată serii cât mai mari. În acest fel se minimizează
pierderile de timp cerute de adaptarea utilajelor la o producţie nouă, iar
experienţa acumulată prin efectuarea timp îndelungat a aceluiaşi produs duce la
creşterea productivităţii. Cum serviciul producţie cere să se lucreze cât mai
puţine tipuri de produse, în serii cât mai mari, rezultă necesitatea unor stocuri
cât mai mari, conţinând relativ puţine categorii de produse. Serviciul producţie
preferă în general acea politică de stocuri care asigură un spaţiu larg de
depozitare şi o nomenclatură redusă de produse finite.
Serviciul comercial doreşte de asemenea un spaţiu mare de depozitare
pentru ca încă de astăzi clientul să poată fi aprovizionat cu ce ar dori mâine.
Dar cum serviciul comercial doreşte să vândă cât mai mult, el trebuie să
dispună de produse cât mai variate. De aceea, serviciul producţie şi cel
comercial intră de obicei în conflict în ceea ce priveşte nomenclatura
mărfurilor produse. Serviciul comercial susţine producerea unor mărfuri de
7
serie unică, chiar nerentabile, pe când serviciul producţie reclamă excluderea
lor.
Serviciul financiar, în urmărirea obiectivului său de minimizare a
capitalului necesar, doreşte să reducă mijloacele „fixe“ de producţie. Una din
cele mai uşoare căi pentru aceasta constă în reducerea stocurilor, şi deci a
capitalului fix legat de ele. De regulă, serviciul financiar este de acord ca
nivelul stocurilor să fie ridicat şi să scadă proporţional sau să crească în funcţie
de creşterea sau scăderea vânzărilor firmei.
Chiar dacă vânzările sunt reduse, serviciul personal nu doreşte totuşi să
reducă nivelul producţiei şi să concedieze muncitori, deoarece astfel de măsuri
au o influenţă negativă asupra moralului personalului şi implică cheltuieli
suplimentare legate de concedieri: plata preavizelor şi de instruirea noilor
angajaţi, atunci când se fac angajări. De aceea, serviciul personal este interesat
de menţinerea producţiei la un nivel cât mai constant posibil. Aceasta implică
creşterea stocurilor atunci când vânzările sunt slabe şi micşorarea lor atunci
când au loc vânzări masive. Prin urmare, serviciile financiar şi personal au
păreri diferite în ceea ce priveşte politica de urmat în problema stocurilor.
Sarcina funcţiei executive constă în alegerea unei politici care să
servească cât mai bine întreprinderilor în ansamblu şi nu interesele vreunuia
din compartimentele ei. Pentru a realiza această integrare, este necesar să fie
luat în considerare întreg sistemul în ansamblul său şi în aceasta constă esenţa
funcţiei executive.
În agricultură, funcţia executivă s-a dezvoltat treptat, paralel cu
dezvoltarea sistemelor de producţie.
Asupra conducătorilor care purtau răspunderea exercitării acestei
funcţii, noile tehnologii de producţie nu au mai avut aceeaşi puternică
influenţă, pe care a manifestat-o faţă de conducătorii tehnici. Pe măsură ce
pătrunderea în esenţa problemelor, specialistul agronom constata că rezolvarea
lor nu necesită decât un bun simţ bazat pe experienţă. De aceea el nu simţea
nevoia de a-şi fundamenta ştiinţific deciziile luate. Totuşi, specialistul avea din
ce în ce mai puţin timp pentru rezolvarea problemelor ce se puneau, aşa că a
trebuit să recurgă la ajutorul celor care posedau mai multă experienţă în
rezolvarea unor astfel de probleme. În acest fel au apărut consultanţi de
8
profesie, însă la început activitatea lor nu se baza pe utilizarea unor metode
ştiinţifice.
Specialiştii de profesie sunt de acord că cercetarea operaţională
reprezintă în esenţă o abordare ştiinţifică a problemelor funcţiei executive,
ajungând la concluzia că dezvoltarea ei în domeniul conducerii ştiinţifice a
sistemelor de producţie agricolă a fost mult întârziată. Această situaţie s-ar fi
putut mult prelungi dacă cercetarea operaţională nu ar fi fost utilizată în unele
activităţi militare la începutul celui de-al doilea război mondial. Cercetarea
operaţională a fost impusă în armată datorită specificului acesteia şi ca urmare
a faptului că organizarea militară a cunoscut acelaşi tip de evoluţie ca şi cea
industrială şi din aceleaşi motive.
Deosebirea principală între evoluţia conducerii militare şi a celei
industriale se produce în cei douăzeci de ani cuprinşi între sfârşitul primului
război mondial şi începutul celui de-al doilea. În această perioadă, tehnica
militară s-a dezvoltat mult mai repede decât tactica şi strategia. Apărând
diverse probleme de ordin strategic, conducătorii militari au cerut ajutorul unor
mici echipe de specialişti în diverse domenii de activitate. Succesul obţinut a
făcut să crească cererea pentru unele servicii de acest fel, iar utilizarea
echipelor de oameni de ştiinţă s-a răspândit în Europa (Germania, Franţa,
Anglia), dar şi în SUA şi Canada.
De obicei, grupele erau ataşate unui ofiţer care activa în sectorul
operaţiilor de luptă. Din acest motiv, îndeletnicirea acestor grupe a început să
fie cunoscută sub denumirea de cercetare operaţională în Marea Britanie şi sub
o varietate de alte domenii în SUA: operaţional analysis (analiză operaţională),
operations evaluation (evaluarea operaţiilor); operations research (cercetarea
operaţiilor), systems analysis (analiza sistemelor), systems evaluation
(evaluarea sistemelor), systems research (cercetarea sistemelor) şi management
science (ştiinţa conducerii).
Cel mai folosit termen este cel de operations research, termen impus în
limba română de cercetare operaţională. După cel de-al doilea război mondial,
dezvoltarea cercetării operaţionale a urmat căi diferite în SUA şi în Anglia. În
Anglia, cheltuielile militare s-au redus, ceea ce a făcut ca mulţi specialişti în
cercetarea operaţională să părăsească armata. În acelaşi timp, conducătorii
industriali erau puşi în faţa unei uriaşe opere de reconstrucţie. Nu numai că
9
trebuiau refăcute uzinele distruse de bombardamente, dar se simţea şi nevoia de
înlocuire a vechilor utilaje demodate. Conducătorii acestor ramuri solicitau
consensul specialiştilor în cercetarea operaţională deveniţi disponibili.

1.2. CERCETAREA OPERAŢIONALÃ ŞI


DISCIPLINELE ÎNRUDITE

Cercetarea operaţională este una din disciplinele care a apărut către


sfârşitul primei jumătăţi a secolului nostru şi s-a dezvoltat spectaculos în
special în ultimii ani, în strânsă legătură cu o serie de alte discipline ale
organizării şi conducerii, cum ar fi cibernetica, informatica sau analiza
sistemelor.
Pentru a avea o imagine de ansamblu asupra obiectului cercetării
operaţionale aplicate în economie, considerăm, deci, util să examinăm succint
cum au apărut şi au evoluat disciplinele organizării şi conducerii precum şi
legăturile pe care le prezintă între ele.
Concepţia "organizării ştiinţifice", conturată către sfârşitul secolului al
19-lea şi începuturile celui actual, consideră unitatea productivă ca un
mecanism, în care oamenii, ajutaţi de maşini, lucrează într-un determinism
aproape total, pe baza unor dispoziţii acţionând ierarhic, conform unor
competenţe riguros definite.
Principalii reprezentanţi ai începuturilor organizării ştiinţifice, care
formează aşa-numita ″şcoală clasică", stabilesc pentru prima oară o serie de
principii ale conducerii ştiinţifice. Printre acestea figurează binecunoscutul (şi
încă actualul) principiu al excepţiei, principiul specializării organizaţionale,
principiul definirii riguroase a sarcinilor, principiul organizării ierarhice
(Staff and Line) ş.a.
Între conceptele utilizate de şcoala clasică nu figurează informaţia şi
nici decizia: conducerea "mecanismului" economico-social revine (în ultimă
instanţă prin parcurgerea treptelor piramidei ierarhice), întotdeauna, unui
centru unic de decizie, pentru care informaţiile sunt presupuse, aprioric,
disponibile complet şi instantaneu, fără nici un fel de restricţie (de timp, de
spaţiu, de tehnică a transmiterii şi înmagazinării etc.).
10
Pionierii organizării ştiinţifice (Taylor, Gantt, Fayol) şi ceilalţi
reprezentanţi ai şcolii clasice pun pentru prima oară problema abordării
raţionale a mecanismului funcţionării unei întreprinderi.
O mare parte din ideile şcolii clasice au fost criticate de reprezentanţii
diferitelor şcoli care s-au dezvoltat ulterior în ştiinţele organizării, dând naştere,
după cum vom arăta în continuare, unor teorii din ce în ce mai abstracte şi mai
complexe. Merită să arătăm că în anii 1960, ca o reacţie împotriva excesului de
teoretizare, s-a dezvoltat o aşa-numită şcoală neoclasică, având drept obiectiv
reîntoarcerea la practică.
În deceniile care urmează după apariţia şi dezvoltarea şcolii clasice,
problemele informaţional-decizionale îşi afirmă prezenţa din ce în ce mai acut,
pe măsura creşterii dimensiunilor şi complexităţii organizaţiilor
social-economice şi îşi caută rezolvări empirice de cele mai multe ori nu la
nivelul necesităţilor. Se stabilesc adesea circuite informaţionale paralele şi
supraabundente (redundante) iar în afara fluxurilor oficiale (formale) de date,
se dezvoltă o circulaţie neformală, uneori mai eficientă, dar cu caracter strict
local. În procesele de decizie continuă să prevaleze rutina, bunul simţ, talentul
sau chiar improvizaţia.
În perioada următoare primului război mondial au putut fi constatate, ca
urmare a acestor rezolvări empirice, diferenţe considerabile, din punctul de
vedere al competitivităţii, între unităţi economice cu structuri organizatorice şi
dotări tehnice identice sau similare. Analizele efectuate au condus la o primă
includere în perimetrul cercetării privind problemele organizării şi conducerii a
aspectelor informaţional-decizionale, până atunci ignorate şi totodată şi a
aspectelor relaţiilor umane. Se lărgeşte considerabil problematica organizării şi
conducerii şi încep să circule cu din ce în ce mai multă autoritate denumirile de
management (ca activitate practică) şi management science (ştiinţa conducerii).
Această perioadă este dominată de "şcoala comportamentului" care
pune în centrul preocupărilor sale observaţia minuţioasă a comportamentului
oamenilor în timpul procesului motivaţiilor care determină coeziunea
grupurilor.
Diferenţele substanţiale între şcoala comportamentului şi şcoala clasică
se referă în special la aspecte ca: descentralizarea deciziilor, promovarea
încrederii între membrii unui grup (şi neglijarea autorităţii) cu accentul pus pe
11
1
responsabilitate (şi nu pe control) .
Începând cu anii 1950 nostru2, se produce un fenomen care promovează
informaţia şi decizia printre elementele esenţiale ale epocii în care trăim.
La acest fenomen contribuie în primul rând creşterea extraordinară a
complexităţii structurale şi funcţionale, a organizaţiilor economice. Procesele
de comasare-integrare, apariţia structurilor organizaţionale cu activităţi
productive pe arii geografice foarte mari (şi, de asemenea, cu multiple
probleme legate de desfacerea produselor), ridicarea nivelului de tehnicitate a
instalaţiilor şi corespunzător o specializare accentuată a profesiunilor - sunt
numai câteva din aspectele acestei complexităţi a unităţilor productive
moderne.
Ca o consecinţă a acestei stări de fapt apare o extraordinară creştere a
cantităţii de informaţii deţinute şi manipulate în unităţile productive, accentuată
şi de formularea unor condiţii mult mai severe în ceea ce priveşte calitatea
informaţiei (pertinenţa şi operativitatea acesteia). Alături de producţia de
bunuri apare o producţie de informaţii din ce în ce mai însemnată, informaţia
devine chiar un produs sau marfă ce se poate negocia, ajungând, alături de
servicii, obiectiv al unor organizaţii specializate.
În ceea ce priveşte procesele de decizie, pentru prima oară se pune în
mod riguros şi pe scară largă problema găsirii unor soluţii optime sau apropiate
de cele optime, în marea diversitate de probleme organizatorice şi de
conducere.
Se poate considera că toate aceste schimbări au condus la o veritabilă
revoluţie informaţional-decizională în domeniul organizări şi conducerii şi, ca
o consecinţă, la apariţia managementului ştiinţific modern.
Principalele discipline privind conducerea, care au apărut în această
etapă sunt: cercetarea operaţională, cibernetica, informatica, psihosociologia
organizării şi teoria generală a sistemelor.
• Cercetarea operaţională, care poate fi definită succint ca disciplină a
optimizării deciziilor cu ajutorul modelării matematice, a apărut în perioada

1
Printre reprezentanţii "şcolii comportamentului" pot fi citaţi Mayo,
Abraham Zalesnick şi D. G. Peltz.
2
Desigur, referirea la un moment în timp nu poate fi decât pur orientativă; aici am
avut în vedere apariţia primei generaţii de calculatoare electronice, a primelor lucrări
de cibernetică şi a primelor echipe de cercetare operaţională.
12
celui de-al doilea război mondial.
Considerată de unii ca reprezentând şcoala matematică în disciplinele
organizării şi conducerii, cercetarea operaţională se caracterizează în primul
rând prin procesul de elaborare a modelelor, de regulă matematizate, care
descriu procesele economice pentru care urmează a se lua decizii cât mai
avantajoase.
• Cibernetica este ştiinţa care se ocupă cu conducerea şi reglarea
sistemelor complexe.
Printre încercările cele mai caracteristice de perfecţionare a metodelor
folosite în ultimele decenii în ştiinţele organizării şi conducerii, alături de
întrebuinţarea masivă a procedeelor matematice şi a calculatoarelor electronice,
se află şi utilizarea concepţiei sistemico-cibernetice.
Poate fi definită ca sistem orice secţiune a realităţii în care se identifică
un ansamblu de fenomene, obiecte, procese, concepte, fiinţe sau grupuri
interconectate printr-o mulţime de relaţii reciproce, precum şi cu mediul
înconjurător şi care acţionează în comun în vederea realizării unor obiective
bine definite. Mulţimea elementelor şi a relaţiilor dintre acestea, precum şi a
relaţiilor între componente şi ansamblu formează structura sistemului.
Mulţimea caracteristicilor unui sistem, la un moment dat, determină starea sa.
Pentru analiza comportamentului sistemelor, în ansamblul lor, s-a
propus conceptul de "cutie neagră" care reprezintă sistemul privit ca un tot,
făcând abstracţie de procesele sale interne. Cutia neagră primeşte impulsuri din
partea mediului înconjurător (″intrările" în sistem) şi, prelucrând aceste
impulsuri, le transformă în acţiuni asupra mediului ("ieşirile") din sistem.
Sistemele se pot clasifica: după natura lor (sisteme naturale - cum sunt
organismele vii şi sisteme elaborate - tehnice, economice, conceptuale), după
modul de funcţionare (deschise - în care ieşirile nu influenţează intrările, şi
închise, în care are loc influenţa intrărilor de către ieşiri) şi după comportament
(deterministe sau probabilistice1).
Mecanismul transformării intrărilor în ieşiri poate fi descris cu ajutorul
funcţiilor de transfer, care au diverse forme, particulare, după natura
sistemului.

1
Sistemele deterministe au o comportare previzibilă, în timp ce sistemele
probabilistice au o comportare aleatoare.
13
2
Sistemul devine cibernetic atunci când apare reglarea (conexiunea
inversă, feedback-ul), adică o intervenţie asupra intrărilor în scopul menţinerii
ieşirilor la nivelul unor parametri-obiectiv doriţi.
Se înţelege că expresia analitică a funcţiilor de transfer şi a
mecanismului reglării conduce la forme matematice foarte diverse şi de cele
mai multe ori foarte complexe.
Ansamblul economiei poate fi privit ca un sistem ale cărui elemente
componente (organizaţiile social-economice de diferite mărimi) sunt
intercorelate prin fluxuri materiale şi informaţionale şi au un comportament
orientat spre atingerea unor obiective precise. La rândul lor, organizaţiile, care
sunt elemente componente ale sistemului-ansamblu, pot fi considerate sisteme,
diviziunea putându-se continua până la identificarea unor componente
elementare indivizibile. Scopul cercetării cibernetico-sistemice aplicată la
realitatea social-economică îl constituie surprinderea comportamentului
sistemelor, una din căile de descriere a acestui comportament fiind găsirea
expresiei funcţiilor de transfer şi a mecanismului reglării.
Adoptarea perspectivei cibernetico-economice în ştiinţele
social-economice reprezintă un câştig teoretic remarcabil şi este foarte probabil
ca, în următorii ani, să asistăm la închegarea unei teorii cibernetico-sistemice
complete şi unitare aplicată la realitatea social-economică pe scară largă.
• Informatica poate fi definită ca disciplina prelucrării datelor cu
ajutorul echipamentelor automate de prelucrare.
Principalele probleme care pot fi considerate ca aparţinând informaticii
sunt: culegerea datelor, pregătirea datelor, codificarea acestora, transmiterea
lor, prelucrarea datelor pe echipamente, stocarea şi conservarea lor.
Problema dezvoltării explozive a informaticii şi a rolului ei în
economie, administraţie, cercetare spaţială, strategie militară, ştiinţă,
învăţământ etc, este bine cunoscută şi de nespecialişti. Vom arăta numai că, de
la câteva calculatoare electronice şi puţini specialişti în informatică, în 1945,
s-a ajuns azi, pe plan mondial, la milioane de calculatoare şi specialişti.
• Psihosociologia organizării a apărut ca o nouă orientare în

2
Apariţia şi dezvoltarea ciberneticii (începând din deceniul al 5-lea al secolului nostru) este
legată de numele unor savanţi celebri ca Norbert Wiener, Claude Shannon, Ross Ashby
etc.
14
disciplinele conducerii în jurul anului 1950.
St. March, F. Simon şi alţi reprezentanţi ai aşa-numitei "şcoli
psihosociologice" abordează, în principal, problema influenţei factorilor
psihologici şi sociologici în compartimentul decizional. Luarea deciziilor, în
concepţia acestei şcoli, nu este funcţie numai de criterii raţionale ci şi de modul
de percepere a stimulilor, depinzând de poziţia decidentului şi de relaţiile cu
ceilalţi membri ai grupului.
Cu alte cuvinte, oricât s-ar face apel, în organizarea şi conducerea
organismelor economice, la metode şi echipamente de mare fineţe şi
tehnicitate, în ultimă instanţă oamenii sunt cei de care depinde funcţionarea
eficientă a sistemului, de aceea, trebuie studiate reacţiile individuale şi relaţiile
dintre indivizii din sistem.
• Teoria generală a sistemelor (TGS), strâns legată de cibernetică,
propune o perspectivă care să sintetizeze ideile viabile ale diferitelor orientări
în ştiinţele organizării şi conducerii.
Iată câteva din ideile de bază ale teoriei generale a sistemelor, după
"Industrial Dynamics" a lui J. Forrester:

a) orice sistem este alcătuit din elemente (părţi) interdependente,


acţionând în comun în virtutea unui scop;
b) ansamblul legăturilor între elementele sistemului, precum şi al
legăturilor cu întregul, formează structura sistemului S;
c) complexitatea sistemelor depinde mai mult de structura sistemului
decât de natura părţilor sale;
d) două sisteme cu structuri parţial identice se numesc homomorfe
(sistemul mai simplu va constitui un model al sistemului homomorf
mai complex);
e) două sisteme homomorfe vor avea un comportament asemănător, de
unde rezultă posibilitatea de studiu a proprietăţilor sistemelor reale
prin simulare;
f) structura (statică) unui sistem preexistă comportamentului său
(dinamicii sistemului);
g) mişcările într-un sistem se realizează prin fluxuri presupuse concrete
şi continue;
15
h) într-un organism economic toate categoriile de mişcări pot fi grupate
în următoarele tipuri de fluxuri interconectate; 1) fluxuri materiale;
2) fluxuri de comenzi; 3) fluxuri băneşti; 4) fluxuri umane; 5) fluxuri
de echipamente şi 6) fluxuri informaţionale;
i) fluxul informaţional are un rol central în funcţionarea sistemelor;
j) procesele decizionale sunt considerate şi ele ca având un rol central în
mecanismul sistemelor; ele sunt presupuse a fi discontinue;
k) reglarea este un element caracteristic al funcţionării sistemelor;
l) procesele care au loc în sistemele economice sunt, de regulă,
neliniare.

Pe baza acestor premise, Forrester construieşte un procedeu de descriere


a comportamentului unei întreprinderi, care utilizează metode cibernetice,
informatice, psihosociologice, precum şi procedee de modelare matematică. De
asemenea, sunt folosite analogii fizice şi tehnice (de exemplu, fluxurile sunt
examinate în sens hidraulic) iar simularea este utilizată ca un procedeu de bază
în descrierea comportamentului sistemelor.
În linii mari în "Industrial Dynamics" se urmăreşte înţelegerea stării
unui sistem cu ajutorul unor ecuaţii care descriu în timp intrările, transformările
şi ieşirile din sistem, pentru cele şase tipuri de fluxuri amintite mai sus. (E
vorba deci de găsirea funcţiilor de reacţie ale sistemului.) Pe baza acestei
descrieri matematice se pot face simulări pe calculator, cu ajutorul cărora se
prevede evoluţia sistemului.
Ideile şi procedeele TGS, impresionante prin complexitatea lor, sunt în
curs de sedimentare metodologică şi experimentare practică.
Marea majoritate a propoziţiilor enumerate mai sus şi care stau la baza
teoriei lui Forrester se regăsesc explicit sau implicit şi la baza metodologiilor
practice de analiză sistemică. Conceptele de flux informaţional şi proces
decizional sunt dominante şi în analiza sistemică la fel ca în TGS, iar urmărirea
mecanismului transformării intrărilor în ieşiri constituie obiectul principal al
analizei de sistem la fel ca şi al TGS. Procedeul folosit de analiza sistemică nu
mai este însă matematic, ci bazat pe descrierea explicită, calitativă, a proceselor
informaţional-decizionale. În plus, în practica analizei de sistem, odată cu
proiectarea proceselor informaţionale şi în special a celor decizionale, se
16
urmăreşte îmbunătăţirea lor, deci se au în vedere criterii de optim. În acţiunea
aceasta de proiectare eficientă a procesului informaţional-decizional, analiza
sistemică face din plin apel la procedeele cercetării operaţionale şi la tehnicile
informaticii. În ceea ce priveşte folosirea metodelor psihosociologice, în
analiza de sistem există încercări recente în acest sens.
În industria carboniferă şi cea metalurgică, în transporturi, gospodărie
comunală şi în multe alte ramuri ale economiei au apărut grupe de cercetare
operaţională industrială.
În contrast cu cele întâmplate în Europa, în Statele Unite ale Americii
cercetările militare s-au dezvoltat intens şi după terminarea războiului. Mulţi
specialişti, cu o bogată experienţă în cercetarea operaţională au continuat să
activeze în domeniul militar. Conducătorii din întreprinderile industriale nu
aveau de ce să ceară ajutorul cercetării operaţionale, întrucât ei au revenit la
metodele familiare dinainte de război. Problema reconstrucţiei sau a
naţionalizării întreprinderilor nu s-a pus în Statele Unite ale Americii.
Pătrunderea ştiinţei în rezolvarea problemelor de conducere a industriei
se datoreşte în S.U.A., celei de-a doua revoluţii industriale. Cel de-al Doilea
Război Mondial a stimulat cercetările ştiinţifice în domeniul
telecomunicaţiilor, al conducerii automate şi tehnicii de calcul.
Prin aceasta s-a creat bază tehnică a procesului de automatizare, proces
a cărui esenţă constă în faptul că funcţiile de control exercitate de om sunt
preluate de calculator. O nouă revoluţie industrială a început la sfârşitul anilor
1950 când a devenit posibilă comercializarea calculatoarelor. S-a făcut în
acelaşi timp o reclamă intensă posibilităţilor calculatoarelor ca noi instrumente
de conducere şi de asistare a deciziilor manageriale. Directorii întreprinderilor
neavând competenţa necesară în multe domenii de activitate noi, au început să
caute ajutor în selectarea şi utilizarea calculatoarelor.
Cererile de acest fel s-au amplificat odată cu începerea războiului din
Coreea, care a impus o productivitate crescută pentru o mare parte din industria
americană. De aceea, la începutul anilor 1860 o parte din specialiştii în
cercetarea operaţională care lucrau în domeniul militar, au început să activeze
în industrie.
Alte studii sunt iniţiate în cadrul unor birouri de consultaţii, universităţi,
institute de cercetare sau instituţii guvernamentale. În acest fel, cercetarea
17
operaţională a început să se dezvolte şi să se răspândească şi în SUA.
În decursul unui deceniu, numărul cercetărilor care activau în diverse
organisme academice, guvernamentale sau industriale l-a egalat pe cel al
cercetătorilor preocupaţi de probleme militare.
În prezent, mai mult de jumătate din marile firme americane au sau
utilizează specialişti în cercetarea operaţională.
În anul 1953 a luat fiinţă o societate naţională – Societatea americană de
cercetări operaţionale (The Operations Research’Society of America). Alte ţări
au urmat curând acest exemplu şi în 1957 s-a constituit Federaţia Internaţională
a Societăţilor de Cercetări Operaţionale.
Au început să apară şi reviste periodice: trei în SUA, una în Anglia
urmate de altele în diferite ţări.
În SUA au fost introduse cursuri şi seminarii de cercetare operaţională,
iar într-un ritm mai lent astfel de cursuri au luat naştere şi în alte ţări.
În concluzie, după un deceniu în care a cunoscut o amplă dezvoltare în
domeniul militar, cercetarea operaţională a continuat să se dezvolte foarte rapid
în cadrul diferitelor organisme academice, industriale şi guvernamentale.

1.3. CONŢINUTUL ŞI CARACTERISTICILE


PRINCIPALE ALE CERCETĂRII OPERAŢIONALE

În multe lucrări de specialitate pot fi întâlnite diverse definiţii ale


cercetării operaţionale, dar au existat şi multe argumente în favoarea ideii
căreia cercetarea operaţională nu poate fi definită. Examinând definiţiile
propuse, trebuie să ne reamintim că nici cele mai vechi ştiinţe şi nici ştiinţa în
sine nu a fost niciodată definită într-un fel care să fie acceptat de majoritatea
celor care se ocupă de ştiinţa respectivă. Încercând să luăm în considerare toate
activităţile şi domeniile de activitate cu care se întrepătrunde, vom încerca să
dăm o definiţie cât mai completă a cercetării operaţionale care să constituie o
bază folosirea pentru înţelegerea noţiunii acestei ştiinţe, mai ales dacă avem în
vederea istoria dezvoltării acestei ştiinţe.
Astfel putem considera ca cercetarea operaţională reprezintă: aplicarea
metodelor ştiinţifice de către o echipă interdisciplinară la studiul problemelor
18
legate de conducerea sistemelor organizate în scopul obţinerii unor soluţii care
să servească cât mai bine interesele organizaţiei în ansamblu.
Principalele caracteristici ale cercetării operaţionale care pot fi
desprinse din această definiţie sunt următoarele:
- Abordarea în ansamblu a problemelor;
- Folosirea unei grupe de specialişti din diferite domenii;
- Utilizarea metodelor ştiinţifice la problemele de conducere.
În continuare, ne vom opri mai amănunţit asupra fiecărei caracteristici.

1.3.1. ABORDAREA ÎN ANSAMBLU A PROBLEMELOR

Această caracteristică se bazează pe observaţia că în sistemele


organizate, comportarea fiecărei părţi influenţează într-un fel sau altul toate
celelalte părţi. Nu toate aceste influenţe pot fi detectate şi nu toate au aceeaşi
importanţă. În consecinţă, această caracteristică constă în esenţă în a descoperi
care sunt interacţiunile semnificative, atunci când se evaluează activitatea sau
politica urmată de fiecare din componentele sistemului.
O astfel de abordare a problemelor de conducere este direct opusă
celeia care urmăreşte simplificarea problemelor, reducând dimensiunile lor.
Cercetătorul operaţional lărgeşte aproape întotdeauna problema iniţială,
introducând interacţiuni care nu se găseau în formularea prezentată de către
conucerea firmei. Pentru a putea studia aceste probleme mai largi, şi deci mai
complicate, au trebuit să fie dezvoltate noi metode de cercetare.
Dacă ar fi să ne întoarcem la problema de stocuri discutată la punctul
1.1, abordând problema planificării producţiei şi a stocurilor numai din punctul
de vedere al serviciului producţie şi a stocurilor numai din punctul de vedere al
serviciului producţie, am fi capabili să evaluăm influenţa, pe care o decizie
aleasă de pe această poziţie ar avea-o asupra vânzărilor şi asupra problemelor
de personal şi financiare ale firmei. Cercetarea operaţională caută să ţină seama
de toate influenţele semnificative, să facă toate aceste efecte considerabile şi să
obţină o evaluare a lor în ansamblu.
19
1.3.2. FOLOSIREA UNEI GRUPE DE SPECIALIŞTI DIN
DIFERITE DOMENII

Divizarea cunoştinţelor umane în diverse discipline ştiinţifice este un


fenomen relativ recent, produs al secolului al XIX-lea. Până către sfârşitul
secolului al XVII-lea era posibil ca un singur om să posede cele mai multe,
dacă nu chiar toate cunoştinţele acumulate de omenire până atunci. Prin
urmare, în acest domeniu nu era necesară nici un fel de specializare şi orice
activitate ştiinţifică era cunoscută sub numele de filosofie. Pe măsură ce
volumul de cunoştinţe a început să depăşească posibilităţile de acumulare ale
persoanei, au început să se contureze diverse specializări. A început să se facă
o deosebire între filozofia naturală şi cea tradiţională, care nu se baza pe date
empirice. Mai târziu filozofia naturală a început să fie cunoscută sub numele de
ştiinţe naturale.
La începutul secolului nostru au început să apară şi ştiinţele sociale, iar
fiecare nouă ştiinţă apărută a dat naştere la noi ramuri şi subramuri.
Disciplinele ştiinţifice reprezintă diverse moduri de a aborda
problemele specifice apărute în firme. Orice problemă poate fi privită din
punctul de vedere al oricărei discipline.
Pentru conducerea unei firme nu există probleme de producţie,
probleme financiare sau probleme comerciale, ci numai diverse moduri de
abordare a uneia şi aceleiaşi probleme.
Din experienţă noi găsim cele mai potrivite căi pentru examinarea
problemelor, cu care suntem obişnuiţi. În situaţii complicate sau neobişnuite
vom căuta să utilizăm metodele care ne sunt cele mai familiare. De aceea nu
este de mirare că atunci când este confruntat de exemplu, cu problema ridicării
productivităţii muncii, psihologul din cadrul serviciului personal încearcă să
selecteze muncitorii cât mai bine calificaţi şi să îmbunătăţească pregătirea lor
profesională.
Inginerul mecanic va căuta să perfecţioneze maşinile – specialistul cu
organizarea muncii va încerca să îmbunătăţească amploarea utilajelor, să
simplifice operaţiile executate de muncitori şi să le ofere stimulente mai
atractive. Analistul de sistem va căuta să îmbunătăţească fluxul informaţional
20
în cadrul sistemului de producţie. Toate aceste oferte/măsuri oferă doar
anumite ameliorări, însă trebuie să cunoaştem care este cea mai bună
combinaţie. În cazul unor probleme complexe, probabilitatea de a cunoaşte cu
exactitate efectul măsurilor luate este foarte mică.
De aceea este util să fie examinate şi evaluate cât mai multe posibilităţi.
Tocmai din această cauză este necesară o echipă interdisciplinară.
Deoarece în prezent există foarte multe discipline ştiinţifice pure sau
aplicate, este evident imposibil ca în fiecare proiect de cercetare operaţională să
fie inclus câte un reprezentant al fiecăreia dintre ele. Este însă de dorit ca în
echipă să fie reprezentate cât mai multe discipline posibil, iar activitatea
echipei să fie supusă unei analize critice de pe poziţia a cât mai multe dintre
disciplinele nereprezentate.

1.3.3. UTILIZAREA METODELOR ŞTIINŢIFICE LA


PROBLEMELE DE CONDUCERE

În cele mai multe lucrări privind metodele utilizate de ştiinţă se


consideră că experimentul joacă un rol esenţial. Din nefericire, experimentul în
sensul strict al cuvântului (adică modificarea fizică a valorilor variabilelor), nu
este posibil, sau este neraţional atunci când este vorba de exploataţii agricole.
În agricultură, de exemplu, o exploataţie agricolă nu-şi poate permite riscul
unui faliment, de dragul unui experiment. Desigur, experimentarea este
posibilă uneori, în particular, la nivel de subsistem şi joacă un rol important în
cercetarea operaţională. Totuşi, de regulă, sistemul studiat nu poate fi supus, în
ansamblu, experiemtării. Prin urmare, pentru studiul sistemului, în majoritatea
cazurilor trebuie utilizată altă metodă decât experimentul.
O sugestie o constituie metoda utilizată pentru a construi o reprezentare
a sistemului şi a modului său de funcţionare, adică un model, pe care îşi
efectuează cercetările.
Modelele cercetării operaţionale iau forma unei ecuaţii, care, deşi din
punct de vedere matematic pot fi foarte complicate, au o structură foarte
simplă:
U = f(xi, yi)
21
unde:
U – reprezintă utilitatea sau valoarea criteriului ce caracterizează
funcţionarea sistemului;
xi – variabile ce pot fi controlate;
yi – variabile (constante) necontrolabile, dar care acţionează asupra lui
U;
f – relaţia dintre U, xi şi yi.
În plus, de multe ori sunt necesare una sau mai multe ecuaţii sau
inecuaţii, care exprimă faptul că variabilele controlabile pot varia numai între
anumite limite.
De exemplu, timpul necesar unei maşini agricole pentru efectuarea unei
anumite lucrări de pregătire a patului germinativ nu poate fi negativ, şi nici nu
poate depăşi timpul total disponibil. De asemenea, sumele totale alocate
fondurilor de salarii sau achiziţionării de materiale nu pot depăşi capitalul total
disponibil.
Funcţia criteriu împreună cu restricţiile constituie modelul sistemului şi
în acelaşi timp, problema pe care dorim să o rezolvăm.
Prin urmare, aceasta este atât un model al sistemului cât şi un model de
decizie.
Odată modelul constituit, el poate fi utilizat pentru a găsi exact sau
aproximativ valorile optime ale variabilelor controlabile – adică acele valori
care asigură cea mai bună performanţă a sistemului, pentru anumite valori
specificate ale variabilelor necontrolabile. În acest fel, se obţine o soluţie a
problemei cu ajutorul modelului. Procedeul folosit depinde de natura
modelului.
Soluţia se poate obţine fie prin efectuarea unui experiment asupra
modelului, adică prin simulare, fie cu ajutorul analizei matematice. În unele
cazuri, analiza matematică a modelului se poate efectua fără să cunoaştem
valorile variabilelor, adică într-o formă abstractă sau simbolică, dar în alte
cazuri trebuie să cunoaştem valorile numerice ale variabilelor.
Pentru anumite tipuri de funcţii f (de exemplu: cînd f este exprimat prin
funcţii algebrice elementare) şi pentru un număr mic de restricţii, matematica
clasică furnizează instrumente eficiente care permit găsirea valorilor optime. În
ultimii ani s-au dezvoltat metode noi, care permit rezolvarea problemelor, în
22
care restricţiile sunt atât de numeroase, încât metodele clasice devin prohibitive
din punct de vedere calculatoriu.
Pe de altă parte, funcţia f s-ar putea să fie dată print-o serie de reguli
(algoritm) care permit calcularea utilităţii U pentru valori date ale variabilelor
controlabile şi necontrolabile, dar nu ne permit să găsim în mod direct valorile
optime ale variabilelor controlabile. De obicei, se poate găsi o regulă, cu
ajutorul căreia se determină succesiv un şir de valori ale variabilelor
controlabile, care să conveargă către valoarea optimă.
Pentru unii algoritmi, cheltuielile necesitate de găsirea soluţiei optime
pot fi mult mai mari decât avantajele pe care le oferă această soluţie, în
comparaţie cu o soluţie bună, care poate fi obţinută relativ uşor. De fiecare dată
când se calculează U pentru noile valori ale variabilelor xi (yi fiind fixaţi),
căpătăm noi informaţii despre comportarea sistemului. Din aceste informaţii s-
ar putea aprecia dacă prin alegerea unor noi valori pentru xi se obţine o
îmbunătăţire semnificativă a lui U. Dacă putem estima această îmbunătăţirea
înainte de efectuarea calculelor, am putea să o comparăm cu cheltuielile
necesitate de calcule şi să decidem dacă alte încercări vor mai fi sau nu
justificate.
Sistemul poate fi astfel încât yi să nu fie cunoscuţi înainte de alegerea
lui xi. de exemplu, dacă yi reprezintă vânzările din luna viitoare, iar un xi
reprezintă nivelul producţiei din luna curentă, decizia privind valoarea xi s-ar
putea să fim obligaţi să o luăm, cunoscând doar funcţia de repartiţie
(probabilistică) a lui yi. În astfel de cazuri, dacă f este destul de simplă, vom
putea lucra cu valoarea medie a factorilor necontrolabili, adaptând decizia cea
mai bună „în medie“. Totuşi, adesea, procesul de „mediere“ este atât de
complicat încât devine practic inanalizabil. De aceea, apare necesitatea
efectuării unor experimente asupra modelului (simulare) în care valorile
variabilelor necontrolabile se aleg cu o frecvenţă corespunzătoare funcţiilor lor
de repartiţie. Acum putem calcula valoarea lui U şi în ultimă instanţă, în acest
fel găsim funcţia lui de repartiţie. Uneori această simulare se produce în
întregime la calculator. În anumite cazuri, rolul celui ce trebuie să ia decizia nu
poate fi descris într-o formă suficient de clară pentru a fi reprezentat explicit în
sistem. Atunci procesul de simulare poate fi realizat de către oameni. O astfel
de simulare se numeşte joc operaţional.
23
Indiferent de metoda folosită, întotdeauna se caută o soluţie optimă. O
soluţie optimă este o soluţie care minimizează sau maximizează (după caz)
valoarea funcţiei criteriu din model, cu restricţiile care apar în acel model. Cum
modelul nu constituie niciodată o reprezentare perfectă a problemei, soluţia
optimă nu este totdeauna cea mai bună soluţie a problemei. Admiţând că
modelul constituie o reprezentare „bună“ a problemei, soluţia optimă sau
suboptimă a modelului va constitui o aproximaţie „bună“ pentru soluţia optimă
a problemei şi să sperăm, va fi sensibil mai bună decât strategiile sau
procedeele pe care această soluţie este chemată să le înlocuiască.
Deoarece soluţia optimă a modelului poate îmbuinătăţi funcţionarea
sistemului numai dacă modelul constituie o bună aproximaţie a realităţii,
soluţia propusă va trebui testată şi evaluată cu alte cuvinte, este necesar să
comparăm rezultatele preconizate cu strategia sau procedeul care urmează să
fie înlocuit. În sfârşit, dacă scopul cercetării operaţionale este bine definit, şi
anume de a îmbunătăţi performanţele sistemului, rezultatele cercetării vor
trebui implementate, în cazul că sunt acceptate de factorii de decizie. Acum se
efectuează o ultimă testare şi evaluare a rezultatelor cercetării. În această fază a
lucrării, cercetătorul operaţional are cele mai mari posibilităţi de a acumula o
experienţă folositoare.
Dacă soluţia considerată urmează să fie aplicată nu numai o singură
dată, atunci este foarte posibil, având în vedere natura sistemelor studiate în
cercetarea operaţională, ca valorile variabilelor necontrolabile şi chiar structura
sistemului să se modifice de la o decizie la alta. De aceea este necesar să
descoperim schimbările semnificative în sistem şi în mediul înconjurător şi să
ajustăm soluţia în mod corespunzător. Altfel spus, soluţiile preconizate a fi
aplicate în situaţii repetabile sau după intervale mari de timp vor trebui
actualizate şi corectate.
În concluzie, într-un studiu de cercetare operaţională deosebim cinci
stadii:
- Formularea problemei;
- Construcţia modelului;
- Obţinerea soluţiei optime;
- Testarea modelului şi evaluarea soluţiei;
- Implementarea şi actualizarea soluţiei.
24
Deşi, în mod normal, fazele unui studiu de cercetare operaţională încep
în ordinea dată mai sus, de regulă, ele nu se termină în această ordine. În fapt,
fiecare etapă continuă până la definitivarea studiului şi se află într-o strânsă
interacţiune cu celelalte etape. De exemplu, putem conchide că etapa de
formulare a problemei s-a încheiat cu succes, numai după ce au fost examinate,
măcar în mare, toate celelalte etape şi în special, cea privind implementarea
soluţiei.
25
CAPITOLUL 2
MODELAREA ÎN CERCETAREA
OPERAŢIONALĂ

2.1. ROLUL MODELĂRII ÎN CERCETAREA


OPERAŢIONALĂ

Conceptul de "model", atât de mult folosit în ştiinţa modernă, este


relativ nou, dar metoda modelării este tot atât de veche pe cât sunt preocupările
oamenilor pentru cunoaşterea ştiinţifică3.
Putem considera că modelul este o reprezentare izomorfă a realităţii,
care, oferind o imagine intuitivă şi totuşi riguroasă, în sensul structurii logice, a
fenomenului studiat, facilitează descoperirea unor legături şi legităţi imposibil
sau foarte greu de găsit pe alte căi.
În elaborarea modelelor economico-matematice, teoria economică are
un rol deosebit de important întrucât ea formulează categoriile, conceptele şi
legile obiective ale realităţii economice. Numai sprijinindu-se pe teoria
economică modelele matematice pot reprezenta fidel fenomenele economice.
Modelul, ca instrument al cunoaşterii ştiinţifice, este folosit în foarte
numeroase discipline teoretice şi practice. Fără pretenţia de a face o clasificare
riguroasă a tipurilor de modele, vom arata că ele pot fi: modele
verbal-descriptive - folosite în toate disciplinele nematematizate, modele
matematice, modele fizice analogice (de tipul machetelor statice sau dinamice),
modele grafice etc.
În ştiinţele economice, în special în disciplinele organizării şi
conducerii, modelele sunt utilizate în toată diversitatea de tipuri care există. În
ultimele decenii însă, se conturează din ce în ce mai mult tendinţa utilizării cu
precădere, în aceste discipline, a modelelor de tip matematic, datorită în special
capacităţii acestora de a condensa riguros esenţialul, cât şi posibilităţii lor de a

3
Oamenii de ştiinţă din toate timpurile au folosit "modele" în cele mai diverse
domenii ale cunoaşterii ştiinţifice. Până de curând însă ei utilizau modelarea fără a folosi
termenul respectiv.
26
fi programate cu ajutorul calculatoarelor electronice, alcătuind împreună un
instrument de investigaţie ştiinţifică de o putere necunoscută până în prezent, o
prodigioasă "prelungire" a inteligenţei umane.
O sistematizare metodologică a modelelor matematice întrebuinţate în
disciplinele organizării şi conducerii social-economice ar fi riscantă, având în
vedere mutaţiile continue şi spectaculoase care au loc în aceste discipline şi, în
plus, ar avea un caracter pur scolastic, fără utilitate teoretică sau practică reală.
De aceea, ne vom limita, în continuare, să enumerăm principalele tipuri de
modele matematice cunoscute în acest domeniu.
După întinderea domeniului studiat, modelele care descriu realitatea
economică pot fi: macroeconomice - cele care se referă la economia naţională,
la ramură (subramură) sau la economia unui teritoriu mare (un judeţ, o anumită
zonă industrială, agricolă etc.) şi microeconomice - la nivel de întreprindere,
uzină, trust, combinat etc.
Modelele cibernetico-economice urmăresc să studieze relaţia dintre
intrări şi ieşiri într-un organism economic, cu evidenţierea fenomenelor de
reglare care determină buna funcţionare a sistemului. Majoritatea modelelor
cibernetico-economice sunt macroeconomice.
Modelele econometrice descriu comportamentul organismelor
economice cu ajutorul unor sisteme de ecuaţii în care elementele numerice sunt
determinate statistic. Şi aceste modele sunt, de obicei, macroeconomice.
Modelele de simulare încearcă să stabilească modul de funcţionare al
unor organisme macro sau microeconomice prin acordarea unor combinaţii de
valori întâmplătoare variabilelor independente care descriu procesele. Prin
"citirea" valorilor pe care le capătă în felul acesta variabilele dependente, se
obţin mărimi semnificative în procesul studiat.
Modelele sistemice au drept obiectiv surprinderea ansamblului
aspectelor dintr-un organism economic (de exemplu, în modelele Forrester se
consideră că prin identificarea celor şase fluxuri caracteristice se poate
cunoaşte comportarea sistemului ca un tot).
Modelele cercetării operaţionale se caracterizează prin căutarea unei
soluţii optime sau apropiată de optim, pentru fenomenul studiat. Modelele
cercetării operaţionale se bazează pe o mare diversitate de procedee
matematice şi au aplicaţii la nivel macro, dar în special la nivel
27
microeconomic. Ele reprezintă principalul instrument pentru optimizarea
deciziilor în analiza de sistem.
Tipologia de mai sus este foarte relativă, între grupele menţionate
existând frecvente asemănări şi întrepătrunderi. Astfel, modelele econometrice
sunt adesea de tip cibernetic, simularea se utilizează în mai toate tipurile de
modele matematice, modelele cercetării operaţionale pot fi folosite în
descrierea sistemică a unui organism etc.
Vom examinăm, în continuare, procedeele practice de elaborare şi
utilizare a modelelor matematice în disciplinele organizării şi conducerii.
În primul rând trebuie subliniat faptul că activitatea de modelare, pentru
a fi eficientă, trebuie desfăşurată întotdeauna în cadrul analizei de sistem, şi
anume ca un moment al etapei de proiectare a noului sistem. O serie de operaţii
care se desfăşoară în cadrul analizei de sistem înaintea acestui moment au un
caracter pregătitor pentru efectuarea modelării, iar altele, ulterioare ei, sunt
necesare pentru aplicarea în practică a modelelor elaborate.
Vom arăta în continuare care sunt principalele faze ale elaborării unui
model matematic într-o problemă de organizare-conducere social-economică,
având grijă să evidenţiem cum se împletesc aceste faze cu alte operaţii ale
analizei de sistem.
• Prima fază a modelării, care are un caracter pregătitor, este
cunoaşterea realităţii în organismul studiat, în scopul îmbunătăţirii
mecanismului informaţional-decizional. Descrierea logicii proceselor
decizionale, alături de considerarea obiectivelor viitorului sistem, sunt
principalele elemente ale cunoaşterii realităţii necesare modelării.
• A doua fază a modelării o reprezintă construirea propriu-zisă a
modelului. Această operaţie, în marea majoritate a cazurilor din practică,
constă în aplicarea unui instrument clasic de modelare ales din gama extrem de
variată pe care ne-o pune la dispoziţie teoria cercetării operaţionale. În astfel de
situaţii, abilitatea analistului constă în stabilirea corespondenţei dintre realitate
şi instrumentul de modelare cunoscut din literatura de specialitate. Există şi
cazuri când nu se poate stabili o astfel de corespondenţă, analistul fiind obligat
să elaboreze modele noi. Acestea pot fi de două feluri: a) combinaţii de modele
clasice, din domeniul teoriei şi b) modele noi propriu-zise. În primul caz, totul
se reduce la buna cunoaştere a realităţii şi a teoriei, la care trebuie adăugată o
28
doză de abilitate în combinarea metodelor. În cazul al doilea, este vorba despre
creaţie originală. Elaborarea unui model matematic realmente original reclamă,
pe lângă profunda cunoaştere a realităţii care urmează a fi modelată, o foarte
solidă cultură matematică, imaginaţie şi talent. După cum va rezulta din
parcurgerea în prezentul curs a modelelor clasice ale cercetării operaţionale,
există o mare diversitate în structura, matematica şi logica modelelor, de la
modele foarte simple, neaxiomatizate, cum sunt cele din programarea liniară, la
modele combinatorice, în probleme de teoria grafelor, analiza drumului critic şi
programarea operativă a producţiei şi până la modele de mare fineţe, prezentate
axiomatizat, cum sunt cele ale utilităţii sau deciziilor de grup. Evident,
elaborarea în forma axiomatizată a unui model reprezintă un stadiu superior în
procesul modelării care, însă, nu poate fi totdeauna atins în practică.
Un model axiomatizat (sistem axiomatic) cuprinde:
- axiomele sistemului, reprezentând propoziţii exprimate în formă
matematică, de regulă foarte puţine, care conţin unele adevăruri de
mare generalitate privind fenomenul care se modelează, atât de
generale, încât toate constatările concrete şi particulare vor putea fi
deduse din cele generale;
- reguli de inferenţă, reprezentând prescripţii riguroase, singurele
admise în sistem, prin care se trece de la axiome la teoreme, sau de la teoreme
deja demonstrate, la altele noi;
- teoreme, adică propoziţii mai mult sau mai puţin particulare,
exprimate matematic, deduse prin reguli de inferenţă din aproape în
aproape din axiome şi care exprimă proprietăţi ale fenomenului
modelat.
Când în procesul de modelare axiomatică se explicitează limitativ
conceptele care urmează a fi utilizate, adică se dă de la început o listă a
noţiunilor şi operaţiilor matematice admise în sistem, se obţine o formă
superioară de sistem axiomatic numit sistem formal.
Sistemele formale sunt încă foarte puţin utilizate în ştiinţă şi cu atât mai
puţin în disciplinele organizării şi conducerii economice.
Axiomatizarea şi, în ultima analiză, formalizarea, reprezintă viitorul în
modelarea matematică, datorită rigorii excepţionale pe care o introduc,
diminuării considerabile a elementelor de intuiţie şi arbitrar, care, deşi mult
29
mai puţine decât în modelele nematematizate, sunt încă prezente în modelarea
matematică axiomatizată.
• A treia fază a modelării este confruntarea modelului cu realitatea şi
eventual experimentarea sa. Această fază se realizează în cadrul implementării
sistemului, care poate fi considerată a patra şi ultima fază a modelării.
În încheierea acestui paragraf, să examinăm câteva caracteristici ale
instrumentelor de modelare matematică pe care ni le pune la dispoziţie
cercetarea operaţională.
Una din principalele caracteristici ale tuturor metodelor cercetării
operaţionale este faptul că unele probleme ale cercetării operaţionale pot fi
privite, din perspectivă pur teoretică, ca probleme de matematică pură. Evident,
nu aceasta va fi perspectiva pe care o vom adopta în cele ce urmează, întrucât
vom privi metodele cercetării operaţionale strâns legate de problemele practice.
Din punct de vedere istoric, unele dintre problemele cercetării
operaţionale s-au ivit, ce e drept, în special sub aspect pur matematic, cu mult
înainte de a fi apărut activitatea organizată şi denumirea de cercetare
operaţională. Astfel, unele noţiuni de teoria grafelor se cunosc de mai bine de
un secol, teoria aşteptării îşi are originea în unele lucrări ale lui Erlang din
deceniul al 2-lea al secolului nostru, iar teoria stocurilor apare către anul 1930.
Ca disciplină de sine stătătoare, cercetarea operaţională a apărut însă în timpul
celui de-al doilea război mondial, prin înfiinţarea unor echipe complexe
(matematicieni, ingineri, economişti, biologi, psihologi ş.a.) însărcinate cu
optimizarea deciziilor privind unele acţiuni pregătitoare operaţiilor militare.
După război, echipele astfel formate s-au reprofilat rapid pentru activităţi
paşnice. Dezvoltându-se spectaculos în ultimele trei decenii, preocupările
teoretice şi în special practice, în domeniul cercetării operaţionale, au ajuns să
antreneze astăzi pe plan mondial sute de mii de specialişti.
În prezent nu se mai poate concepe conducerea unei activităţi tehnico-
economice importante fără a face apel la metodele cercetării operaţionale,
bineînţeles împreună cu celelalte tehnici moderne cum ar fi informatica,
analiza de sistem ş.a..
30
2.2. PROBLEME TIP DE CERCETARE
OPERAŢIONALĂ
Încă de la începuturile ei, cercetarea operaţională a fost aplicată la
rezolvarea unei mari varietăţi de probleme. Multe din acestea aveau un caracter
mai curând tactic, decât strategic. Distincţia între problemele tactice şi cele
strategice nu este simplă, deoarece ea se bazează pe cel puţin trei caracteristici
ale problemei, fiecare din acestea având un caracter gradual.
Mai întâi, o problemă are un caracter tactic mai accentuat decât alta,
dacă efectul pe care-l exercită soluţia sa are o durată mai scurtă sau, ceea ce
este de fapt acelaşi lucru, dacă soluţia poate fi uşor modificată sau înlocuită. Cu
cât efectul soluţiei durează mai mult, cu atât caracterul strategic al problemei
este mai accentuat. De aceea, o problemă în care se stabileşte producţia pentru
ziua următoare este o problemă tactică în comparaţie cu problema construirii
unei noi întreprinderi. Cercetarea operaţională s-a aplicat mai mult problemelor
având o durată scurtă, decât celor de lungă durată. Vom numi această
caracteristică registrul problemei.
În al doilea rând, o problemă are un caracter cu atât mai strategic, cu cât
este mai mare partea din organizaţie care este afectată direct de rezolvarea ei.
De aceea, o problemă privind alegerea unei noi forme de evidenţă contabilă are
un caracter tactic în comparaţie cu problema stabilirii bugetului întregii firme.
Această caracteristică o vom numi aria problemei.
În sfârşit, o problemă are un caracter strategic cu atât mai pronunţat, cu
cât ea joacă un rol mai important în determinarea obiectivelor intermediare sau
finale. Toate problemele stabilesc căile şi mijloacele prin care se poate atinge
scopul dorit, însă cele mai multe probleme presupun că acest scop este dat din
exterior sau este cunoscut în prealabil. Astfel de probleme au un caracter tactic.
De aceea, planul global al firmei, în care trebuie determinate obiectivele
parţiale şi finale ale diverselor compartimente, este o problemă de strategie în
comparaţie, de exemplu, cu problema minimizării cheltuielilor de transport,
problemă al cărei obiectiv este clar formulat. Vom numi această caracteristică
orientarea problemei.
Cele trei caracteristici enumerate nu oferă o delimitare clară între
problemele strategice şi cele tactice. De aceea, în cel mai bun caz, putem spune
31
că o problemă are un caracter mai mult sau mai puţin strategic (sau tactic) în
raport cu unul sau altul din cele trei aspecte.
După cum s-a menţionat, cercetarea operaţională s-a ocupat cel mai
mult (dar nu în exclusivitate) de probleme având un caracter tactic. Totuşi, vom
examina ceva mai amănunţit problemele strategice şi rolul pe care-l poate juca
cercetarea operaţională în rezolvarea lor.
Dintre-un anumit punct de vedere, două probleme tactice nu pot fi
niciodată identice. Pe de altă parte, problemele tactice tind să se grupeze în
câteva tipuri bine definite. Ceea ce face ca două probleme să nu fie niciodată
identice, este conţinutul lor. Ceea ce face ca toate problemele tactice să se
grupeze într-un număr relativ mic de tipuri este forma lor. Orice problemă are o
formă şi un conţinut. Aceste două trăsături sunt la fel de inseparabile, ca cele
două feţe ale unei monede: le putem examina separat, dar nu le putem despărţi.
Forma se referă la felul în care mărimile problemei sunt legate între ele, pe
când conţinutul se referă la natura (semnificaţia) acestor mărimi. De exemplu,
mai multe perechi de variabile pot fi legate între ele printr-o relaţie care se
exprimă grafic printr-o dreaptă. Aceste perechi de variabile, între care există o
dependenţă liniară, au forme identice, dar conţinutul lor este diferit.
Putem separa forma unei probleme de conţinutul ei printr-un proces de
abstractizare. Limbajul cu ajutorul căruia exprimăm forma, abstracţie făcând
de conţinut, este limbajul matematic. Prin urmare, un model matematic de
decizie constituie o reprezentare a formei problemei.
Separarea formei de conţinut face necesară cunoaşterea conţinutului
problemei. Inginerii sau economiştii interesaţi de rezolvare problemei cunosc
conţinutului ei mai bine decât cercetătorii operaţionali. În general, cercetătorii
nu-şi pot permite să cheltuiască timpul şi efortul necesar pentru a cunoaşte
conţinutul fiecărei probleme concrete în parte, la fel de bine ca cei interesaţi de
problema respectivă. De aceea, cercetătorul trebuie să utilizeze cunoştinţele
despre problemă pe care le are inginerul sau economistul. Din această cauză,
cercetarea operaţională dă cele mai bune rezultate atunci când există o
colaborare activă între parteneri.
După cum am văzut mai sus, o consecinţă importantă a faptului că
cercetarea operaţională a fost aplicată la rezolvarea unei largi varietăţi de
probleme cu caracter tactic, constă în identificarea unui grup restrâns de
32
probleme tip, la care se reduc majoritatea problemelor. Deoarece aceste tipuri
de probleme se întâlnesc frecvent, s-au construit diverse tehnici pentru
modelarea şi rezolvarea lor.
Problemele tip sunt următoarele:
1) alocare;
2) stocuri;
3) reînnoire;
4) fire de aşteptare;
5) ordonanţare şi coordonare;
6) alegerea itinerariilor;
7) competiţie;
8) căutare.
Ordinea în care au fost redate aici are la bază anumite considerente
metodice. În realitate, diversele tipuri de probleme apar unele după altele (şi nu
neapărat în ordinea amintită), pe măsură ce se lărgeşte concepţia asupra
sistemului. De exemplu, mulţi cercetători operaţionali încep cu problemele de
stocuri deoarece:
1) conceptual, ele sunt cele mai simple;
2) există tehnici puternic dezvoltate pentru rezolvarea lor;
3) se crede de obicei că datele necesare sunt uşor disponibile (dar
rareori se întâmplă aşa în realitate);
4) conducătorii compartimentului respectiv sunt obişnuiţi, de regulă,
să gândească în categorii cantitative şi de aceea nu sunt atât de
refractari cercetării operaţionale, ca alţi conducători mai puţin
pregătiţi tehnic.
După cum vom vedea, teoria stocurilor reprezintă aparent cea mai
simplă operaţie ce se poate concepe – păstrarea unor produse. Deciziile
stabilesc, în general, când şi câte produse vor trebui achiziţionate. S-ar putea ca
în problemă să fie implicat un mare număr de produse (de exemplu, părţi ale
unui aceluiaşi agregat); atunci pentru fiecare din ele trebuie stabilit când şi ce
cantitate se achiziţionează. După rezolvarea acestei probleme s-ar putea
constata eventual că nu există posibilitatea fabricării tuturor produselor, în
cantităţile cerute de soluţia optimă a problemei. În acest caz, se pune problema
alocării utilajelor disponibile la executarea diverselor produse, astfel încât
33
pierderile, în comparaţie cu soluţia obţinută prin rezolvarea problemei de
stocuri, luată izolat, să fie minime.
Problema de alocare utilizează un model în care de regulă se presupune
că utilajele sunt disponibile în mod continuu, fără întrerupere. În realitate, se
pot ivi unele staţionări: utilajele se defectează şu trebuie reparate, se produc
întreruperi în alimentarea cu energie, oamenii sau materialul nu se găsesc acolo
unde este nevoie şi atunci când este nevoie. De aceea, în problema de alocare
ar trebui să se ţină seama de aceste întârzieri. Pentru aceasta va trebui rezolvată
o problemă de teoria aşteptării.
În teoria aşteptării se presupune de obicei că există o regulă pentru
determinarea ordinii de servire (de exemplu, se ştie ce utilaj urmează să fie
reparat). În unele cazuri, ordinea în care se execută aceste lucrări are o
influenţă sensibilă asupra timpului total necesar sau asupra executării lucrărilor
la datele planificate. În aceste situaţii, va trebui rezolvată o problemă de
ordonanţare (determinarea ordinii de servire), astfel încât să fie asigurată
îndeplinirea obiectivului propus: respectarea termenelor planificate sau
reducerea timpului total de execuţie.
Dacă înaintea executării fiecărei noi lucrări este necesară o anumită
pregătire a oamenilor şi utilajelor, iar durata acestei pregătiri depinde de
ordinea în care sunt dispuse lucrările, atunci ar trebui luate în considerare şi
pierderile de timp legate de perioadele de pregătire. Pentru aceasta trebuie
rezolvată o problemă privind alegerea unui anumit itinerariu; consideraţiile
care impun examinarea acestei probleme vor deveni evidente atunci când ne
vom opri asupra ei în detaliu.
Dacă această problemă ilustrativă este studiată pentru un interval de
timp mai îndelungat, va trebui să avem în vedere şi problema reînnoirii
utilajelor uzate sau cu o uzură avansată.
Până acum ne-am concentrat atenţia aproape exclusiv asupra
comportării sistemului studiat, fără a lua în consideraţie factorii externi care ar
putea influenţa performanţele sistemului (furnizori, clienţi, concurenţi). Dacă
vom ţine seama de aceşti factori, pentru a încerca să achiziţionăm materii
prime la un preţ mai redus sau să ne vindem mărfurile la un preţ mai
convenabil, va trebui rezolvată o problemă de tip competitiv. De regulă, aceste
probleme sunt foarte complexe şi greu de rezolvat. De aceea, o echipă de
34
cercetare operaţională abordează o astfel de problemă numai după ce
conducerea firmei a căpătat destulă încredere în capacitatea echipei, pentru a
admite „riscul” acestei cercetări. Trebuie să remarcăm că, în general, cu cât o
cercetare este mai dificilă şi comportă o doză mai mare de risc, cu atât mai
mare este beneficiul ce se obţine prin aplicarea rezultatelor pe care le oferă.
În sfârşit, cu cât obiectivul problemelor de cercetare operaţională este
mai cuprinzător şi cu cât mai variate sunt soluţiile ce urmează a fi
implementate, cu atât mai acută devine nevoia de a culege, păstra şi prelucra
informaţiile necesare utilizării şi reactualizării soluţiilor. Adesea aceasta
conduce la un studiu dedicat sistemului informaţional şi de comunicaţii.
Problema care constă în a stabili ce şi de multe informaţii sunt necesare, cum
trebuie culese şi folosite aceste informaţii, este o problemă de căutare.
Rezultă că problemele de conducere pot fi examinate foarte rar separat
una de alta. De aceea, cu toate că, cercetarea operaţională se poate limita la o
singură problemă, ea este mult mai eficientă atunci când are posibilitatea să-şi
lărgească obiectivul iniţial şi să examineze, simultan sau succesiv, cât mai
multe probleme ce se influenţează reciproc.
Multe probleme practice nu pot fi încadrate în nici unul din modelele
tip. Deşi pentru ele se pot construi modele care să încorporeze mai multe
probleme tip, în general nu dispunem de metode pentru rezolvarea acestor
modele. Problemele tip sunt, într-un sens, cele mai extinse probleme ce se pot
rezolva într-o singură etapă. Cum problemele reale conţin mai multe probleme
tip, adesea trebuie să le „descompunem” în mai multe probleme parţiale;
soluţia unei probleme parţiale va furniza datele iniţiale pentru următoarea
problemă parţială. Vom putea utiliza atunci soluţia ultimei subprobleme, pentru
a corecta sau reevalua una sau mai multe din soluţiile parţiale obţinute anterior.
În practică, deseori când avem de-a face cu mai multe tipuri de probleme şi
repetând acest ciclu până când se ajunge la o soluţie globală satisfăcătoare.
Clasificarea problemelor de cercetare operaţională în cele opt tipuri nu
conţine nimic magic sau imuabil. Cu timpul apar noi probleme, iar cele vechi
se pot combina când se descoperă metode pentru rezolvarea lor simultană.
Graniţa dintre diversele probleme tip nu este clar conturată şi devine din ce în
ce mai difuză, pe măsură ce apar noi generalizări şi se descoperă noi puncte
comune. Unele tehnici matematice, utilizate pentru rezolvarea anumitor
35
probleme, de exemplu, pentru programarea liniară sau dinamică, sunt aplicabile
şi la alte probleme. De aceea, uneori problemele sunt clasificate în raport cu
aparatul matematic necesar pentru rezolvarea lor. Am preferat clasificarea lor
după situaţiile chemate să le rezolve şi nu după aspectul lor matematic,
deoarece acest lucru corespunde mai bine caracterului cercetării operaţionale.
Ar însemna să dăm dovadă de uşurinţă, dacă am considera cercetarea
operaţională ca fiind o ramură a matematicii aplicate, mai curând decât o ştiinţă
aplicată interdisciplinară şi dacă, concentrându-se asupra metodelor, am neglija
scopul final.
Să mai remarcăm că există unele probleme foarte interesante din punct
de vedere teoretic, dar care nu se încadrează în vreunul din tipurile enumerate.
Astfel de probleme prezintă un domeniu atractiv de cercetare şi deschid drumul
către o eventuală identificare a unor noi probleme tip.
Din discuţia de mai sus, rezultă că problemele tip nu constituie
instrumente care să poată fi aplicate de-a gata în orice situaţie. Problemele tip
se potrivesc foarte rar unor situaţii reale. De obicei, ele trebuie să fie adaptate
fiecărui caz concret în parte. Dacă considerăm însă că studiul acestor probleme
constituie un exerciţiu de construire şi rezolvare a modelelor, atunci vom
căpăta o bază corespunzătoare pentru studiul problemelor concrete.
36
CAPITOLUL 3
PROGRAMAREA LINIARĂ

3.1. PREZENTARE GENERALĂ

Mulţimea sistemelor economice concrete şi multitudinea problemelor


conducerii acestora au creat o diversitate de reprezentări economico-
matematice, denumite modele.
Varietatea acestora este determinată, în principal, de structura
"obiectului" analizat, de scopul cercetării precum şi de informaţia disponibilă.
Modelele de programare matematică şi mai ales subclasa acestora –
modelele de programare liniară – ocupă un loc deosebit de important, atât în
teoria cât şi în practica economică. Teoria economică a beneficiat de aportul
abordării interdisciplinare care a permis aprofundarea analizei eficienţei
maximale a sistemelor complexe, a permis descoperirea unor concepte noi ale
optimului economic, a perfecţionat metodele de cercetare şi cunoaştere iar
practica economică s-a îmbogăţit cu un instrument deosebit de util analizei
economice şi fundamentării deciziilor.
Structura modelului general de programare liniară se constituie în
primul rând prin mulţimea de activităţi {A1, A2, ... An} care compun sistemul
economic analizat, mulţimea de resurse utilizate {R1, R2, ... Rm} precum şi prin
relaţiile tehnico-economice dintre acestea. Legătura dintre activităţi şi resurse
este determinată de tehnologia de fabricaţie corespunzătoare fiecărei activităţi
Aj (j=1,...,n) şi poate fi caracterizată numeric prin vectorul coloană a(j) de
componente (a1j, a2j, ... amj). Elementele {aij, i = 1,...,m; j = 1,...,n} se numesc
coeficienţi tehnici sau coeficienţi de consum specific şi arată ce cantitate din
resursa Ri se consumă pentru producerea unei unităţi din produsul (serviciul) Pj
(ca rezultat al activităţii Aj). Toate "tehnologiile" de fabricaţie definite de
vectorii coloană a(j) se pot organiza într-o matrice A cu m linii şi n coloane;
fiecare linie se referă la o resursă Ri (i = 1,...,m) şi fiecare coloană se referă la o
activitate Aj (j = 1,...,n).
37
Notând cu xj (j = 1,...,n) rezultatul activităţii Aj într-o perioadă dată şi
cu bi (i = 1,...,m) cantităţile disponibile din resursele Ri (i = 1,...,m), se pot scrie
matematic următoarele restricţii tehnico-economice:
a 11x1 + a 12 x 2 + ... + a 1n x n ≤ b1
a 21x1 + a 22 x 2 + ... + a 2n x n ≤ b 2
(1) sau A⋅x ≤ b
LLLLLLLLLLLL
a m1x1 + a m2 x 2 + ... + a mn x n ≤ b m

 a 11 a 12 L a 1n   x1   b1 
 L a 2n  ; x = x  b 
unde A =  a 21 a 22
  2  şi b =  2
 M M O M   M   M 
 a m1 a m2 L a mn  xn  bn 

Fiecare inecuaţie/restricţie încorporează două afirmaţii:

a. cantitatea consumată dintr-o resursă nu poate depăşi volumul


disponibil (propoziţie de logică economică)
b. consumul total Rij din resursa Ri pentru efectuarea activităţii Aj este
proporţional cu intensitatea acesteia, adică cu xj, deci Rij(∗) = aij ⋅ xj
(ipoteză simplificatoare)

Sistemul de restricţii (1) realizează legătura dintre resurse şi activităţi


prin intermediul celor m restricţii liniare.
Modelul problemei de programare liniară conţine restricţii de tipul (1)
precum şi un criteriu de "performanţă" care să permită evaluarea eficienţei
fiecărei activităţi. În funcţie de scopul urmărit, putem alege drept criteriu de
eficienţă un indicator care măsoară efortul, unul care măsoară rezultatul sau un
indicator exprimat ca raport între rezultat şi efort (sau efort pe rezultat).
Este evident că eficienţa maximă înseamnă minimizarea efortului şi
maximizarea rezultatului, iar conceptul de optim se defineşte, în acest caz, ca

(∗)
De aici rezultă posibilitatea să calculăm coeficienţii aij pe baza informaţiilor disponibile
R ij
privind cantităţile consumate Rij şi nivelul xj: aij = ; i = 1,...,m; j = 1,...,n
xj
38
n
un program x∈ R care minimizează sau maximizează o funcţie obiectiv şi, în
acelaşi timp, satisface toate restricţiile tehnico-economice.
Presupunând că fiecare componentă a vectorului linie c = (c1, c2, ..., cn)
măsoară eficienţa unei unităţi din rezultatul activităţii Aj, atunci se poate
introduce funcţia liniară:

f(x) = c1⋅x1 + c2⋅x2 + ... + cn⋅xn

care evaluează performanţa oricărui program x.


Sintetizând, obţinem următorul program de programare liniară:

optim[ f (x )] (1)
x
 n
 ∑ a ij ⋅ x j ≤ b i i ∈ I1
 j=1 unde I1 ∪ I2 = {1,2,...,m}
n (2)
∑ a kj ⋅ x j ≥ b k k ∈ I2
 j=1

 xj ≥ 0 j = 1, n
 (3)
Relaţiile (1), (2) şi (3) constituie împreună modelul general al unei
probleme de programare liniară, având fiecare un rol specific:
n
1. relaţia (1), unde f(x) = ∑ c j ⋅ x j este denumită funcţia obiectiv de
j=1

eficienţă a problemei, evaluează eficienţa/performanţa fiecărei


variante de program x;
n
2. relaţiile (2) de tipul ∑ a ij ⋅ x j ≤ b i reprezintă restricţii de tip
j=1

n
resurse; iar restricţiile de tipul ∑ a kj ⋅ x j ≥ b k se referă la restricţii
j=1

tehnico-economice de tip calitativ (şi ca urmare indicatorul bk este


limita inferioară impusă "reţetei optime";
3. relaţia (3) xj ≥ 0 j = 1,...,n, numită condiţia de nenegativitate a
variabilelor, asigură obţinerea unei soluţii realizabile din punctul de
vedere al logicii economice.

După cum s-a arătat la început, structura concretă a unei aplicaţii în


economie este determinată în primul rând de obiectivul urmărit.
39
Astfel, în cazul problemei determinării structurii sortimentale optime
a producţiei, se cunosc cantităţile disponibile (cantităţile de care se poate face
rost pe perioada analizată) din fiecare materie primă {bi, i =1,...,m}, coeficienţii
tehnologici {aij, i = 1,...,m, j = 1,...,n} (aij reprezintă cantitatea din materia
primă i necesară fabricării unei unităţi din produsul de tipul j), cantităţile
maxime { x j , j = 1,...,n} şi minime { x j , j = 1,...,n} ce pot fi produse din fiecare

sortiment în perioada analizată şi profiturile unitare {pj, j = 1,...,n} ale fiecărui


tip de produs. Se cere găsirea acelor cantităţi xj care trebuie fabricate din
fiecare tip de produs astfel încât să se obţină profitul maxim, în condiţiile
nedepăşirii disponibilurilor din fiecare resursă.
Pentru simplificarea modelului, se presupune că preţul unui bun nu
depinde de cantitatea produsă din acesta sau din celelalte, consumul din fiecare
materie primă este direct proporţional cu cantitatea produsă şi, pentru fiecare
bun, consumurile dintr-o resursă sau alta nu se condiţionează reciproc.
Problema matematică echivalentă este:

max (p1x1 + p 2 x 2 + ... + p n x n )


 x j j=1,n
a i1x1 + a i2 x 2 + ... + a in x n ≤ b i i = 1,..., m

x j ≤ x j ≤ x j j = 1,..., n
x j ≥ 0 j = 1,..., n

În unele probleme, în loc de profiturile pj se cunosc veniturile unitare vj


sau costurile unitare cj sau alt criteriu de eficienţă, scopul fiind maximizarea
venitului, minimizarea costurilor respectiv optimul indicatorului de eficienţă
respectiv, sau toate la un loc. De asemenea pot lipsi condiţiile de limitare a
producţiei sau pot exista şi alte condiţii.

La o problemă de programare operativă a producţiei restricţiile se


referă la o serie de maşini (utilaje) cu care se execută produsele dorite, bi fiind
disponibilul de timp al utilajului i pe perioada analizată iar aij timpul necesar
prelucrării unui produs de tipul j pe utilajul i, scopul fiind maximizarea
producţiei.
Ca urmare, modelul are forma:
40
 max (x 1 + x 2 + ... + x n )
 x j ( j=1,..., n)

 a i1 x 1 + a i2 x 2 + ... + a in x n ≤ b i i = 1,..., m

 x j ≥ 0 i = 1,..., n

Dacă se doreşte obţinerea unui meniu (reţete furajere), care să asigure


necesarurile {bi, i = 1,...,m} dintr-un număr de m substanţe esenţiale
organismului, având la dispoziţie un număr de n alimente, cunoscându-se
cantităţile {aij, i = 1,...,m, j = 1,...,n} din fiecare substanţă pe care le conţine o
unitate de măsură din fiecare aliment şi costurile {cj, j = 1,...,n} unei unităţi de
măsură din fiecare aliment, putem scrie modelul:

 min (c 1 x 1 + c 2 x 2 + ... + c n x n )
 x j ( j =1,..., n)

 a i1 x 1 + a i2 x 2 + ... + a in x n ≥ b i i = 1,..., m

 x j ≥ 0 j = 1,..., n


Variabilele xj reprezintă, în acest caz, cantitatea din fiecare aliment ce


n
va intra în meniu iar f(x) = ∑c j ⋅ xj este costul total al reţetei definită de
j=1

vectorul x.

3.2. ALGORITMUL SIMPLEX

Reamintim că presupunem că problema este la forma standard de


maxim şi că dispunem de o soluţie de bază admisibilă.

Pasul 1. Se construieşte tabelul simplex corespunzător bazei de care dispunem


în ordinea următoare:
1. pe linia a doua se trec toate variabilele într-o ordine oarecare;
41
2. pe prima linie se trec coeficienţii funcţiei obiectiv, fiecare
deasupra variabilei corespunzătoare;
3. se construieşte matricea A, fiecare coloană fiind formată din
coeficienţii unei variabile din toate ecuaţiile (ordinea în care se
parcurg ecuaţiile trebuie să fie aceeaşi pentru toate variabilele),
având grijă ca, coloanele să fie trecute în ordinea în care au fost
trecute variabilele pe linia 2;
4. se construieşte baza B, ordinea coloanelor fiind cea în care apar
ele în matricea A;
5. se calculează B-1;
6. se calculează B-1⋅A şi se trece în partea centrală a tabelului;
7. se trec variabilele principale în a doua coloană, în aşa fel încât,
la intersecţia liniei şi coloanei corespunzătoare acestei variabile,
să se afle valoarea 1.
8. se trec în prima coloană coeficienţii corespunzători variabilelor
principale din funcţia obiectiv, fiecare în dreptul variabilei
corespunzătoare;
9. se calculează soluţia de bază cu formula B-1⋅b, având grijă ca
ordinea în care au fost trecuţi termenii liberi în vectorul b să fie
aceeaşi cu ordinea în care au fost parcurse ecuaţiile la formarea
matricii A;
10. se trec în a treia coloană valorile variabilelor principale din
soluţia de bază, fiecare în dreptul variabilei corespunzătoare;
11. se calculează f(xB) înmulţind două câte două componentele
coloanei 1 cu cele din coloana 3 aflate pe aceeaşi linie şi
adunând toate produsele între ele (adică facem produsul scalar
dintre cB şi xB);
12. se calculează pe rând fiecare zj j = 1,...,n un zj obţinându-se
înmulţind scalar cB cu coloana j din B-1⋅A aflată în centrul
tabelului (această linie se calculează şi se trece doar în primul
tabel, scopul ei fiind calcularea lui ∆);
13. se calculează pe rând fiecare ∆j j = 1,...,n scăzând din linia lui z
linia lui c (∆j = zj - cj)
42

Pasul 2. Se analizează valorile ∆j corespunzătoare variabilelor secundare (e


uşor de văzut că întotdeauna, cei corespunzători variabilelor
principale sunt toţi 0, deci neinteresanţi).
− dacă toţi sunt mai mari sau egali cu 0 atunci soluţia actuală este
cea optimă. Dacă există ∆j = 0 în afara bazei, atunci pot apărea
două cazuri:
1) toate elementele din coloana aj din B-1⋅A sunt mai mici
sau egale cu 0. Atunci toate soluţiile de forma xB - aj⋅λ
sunt soluţii optime, unde λ > 0 oarecare;
2) există o componentă aij a coloanei aj strict pozitivă.
Atunci introducând variabila xj în bază în locul
variabilei principală xi obţinem altă soluţie de bază
optimă.
Dacă apar numai cazuri de tipul 2), obţinem toate soluţiile de
bază optime, mulţimea tuturor soluţiilor optime fiind formată
din toate combinaţiile convexe ale acestora. Dacă apare şi cazul
1) atunci mulţimea soluţiilor optime este nemărginită fiind
formată din combinaţiile convexe ale soluţiilor de forma xB -
aj⋅λ unde xB sunt toate soluţiile optime de bază.
− dacă există ∆j < 0 atunci îl alegem pe cel mai negativ: ∆k =
min ∆ j . Variabila xj va fi cea care intră în noua bază. Dacă
m +1≤ j≤ n
∆ j <0

minimul este multiplu atunci alegem, la întâmplare, unul dintre


aceştia (cei minimi).
Pasul 3. Se analizează elementele coloanei aj din B-1⋅A, corespunzătoare
variabilei alese la pasul 2.

− Dacă toate sunt mai mici sau egale cu 0 atunci problema are
optim infinit şi algoritmul ia sfârşit;
− Dacă există componente strict pozitive, pentru acestea se
xs
calculează rapoartele θs = . Variabila xi corespunzătoare
a sj
43
raportului minim este cea care va ieşi din bază. Dacă acest
minim este multiplu sunt posibile două cazuri:
1) minimul este strict pozitiv. În acest caz se alege unul
dintre aceştia la întâmplare;
2) minimul este 0. Atunci xi corespunzători sunt 0, deci
soluţia este degenerată şi noua soluţie este la fel de
bună. Această situaţie poate duce la ciclarea
algoritmului şi alegerea la întâmplare nu mai este
suficientă, fiind nevoie de o regulă de alegere
suplimentară care să evite ciclarea. O metodă de
alegere se bazează pe faptul că, aşa cum vom vedea,
întotdeauna prima bază este matricea unitate şi în
dreptul ei, în toate tabelele simplex, se va afla inversa
bazei corespunzător fiecăruia. În acest caz, pentru
poziţiile în care s-a obţinut minimul împărţim prima
coloană a lui B-1 la coloana aj şi alegem minimul
dintre aceste rapoarte. Dacă minimul dintre aceştia
este tot multiplu continuăm procedeul, pentru
poziţiile ce dau noul minim, cu coloana a doua din B-
1
şi aşa mai departe, până minimul rămâne unic. Nu
este posibil să se epuizeze toate coloanele lui B-1 şi
minimul să rămână multiplu, deoarece, în acest caz,
b i1 jk b i 2 jk
am avea: = , pentru toţi indicii jk ai
a i1 j a i2 j

coloanelor lui B-1, i1 şi i2 fiind doi din indicii care dau


acelaşi minim până la sfârşit sau altfel scris
b i1 jk a i1 j
= pentru orice jk ⇒ liniile i1 şi i2 din B-1
b i 2 jk a i2 j

sunt proporţionale, fapt ce contrazice faptul că B-1


este inversabilă.

Pasul 4. Se calculează componentele tabelului simplex corespunzător noii


baze pe baza tabelului actual şi folosind următoarele reguli:
44
1. se încadrează elementul aij, aflat la intersecţia coloanei
variabilei care intră în bază cu linia variabilei care iese din
bază, care a fost numit de Danzig pivot, într-un dreptunghi
2. coloana pivotului va avea 1 în dreptul pivotului şi 0 în rest
(inclusiv ∆j);
3. linia pivotului este linia actuală împărţită la pivot (inclusiv în
soluţia de bază);
4. restul elementelor se calculează cu regula dreptunghiului
(inclusiv soluţia de bază, ∆ şi f(xB)). Regula dreptunghiului se
bazează pe observaţia că în toate formulele prin care se
calculează acestea nu apare decât valoarea lor actuală, pivotul
şi cele două elemente care ar completa dreptunghiul ce are
poziţia de calculat şi pivotul pe diagonală. Regula
dreptunghiului se enunţă literar astfel: "noua valoare =
produsul dintre elementele de pe diagonala pivotului minus
produsul dintre cele aflate pe cealaltă diagonală totul împărţit
la pivot". (pentru scurtarea timpului de lucru se poate observa
că elementele unei linii care are 0 pe coloana pivotului rămân
aceleaşi şi de asemenea elementele unei coloane care are 0 pe
linia pivotului)
Operaţia de calculare a noului tabel prin regulile de mai sus poartă
denumirea de pivotare.
Pasul 5. Se reia algoritmul de la pasul 2.
45
CAPITOLUL 4
ELEMENTE DE TEORIA GRAFURILOR

4.1. NOŢIUNI GENERALE

În general, pentru situaţiile care necesită la rezolvare un oarecare efort


mintal (şi un caz tipic este cel al celor din economie), se caută, în primul rând,
o metodă de reprezentare a lor care să permită receptarea întregii probleme
dintr-o privire (pe cât posibil) şi prin care să se evidenţieze cât mai clar toate
aspectele acesteia.
În acest scop se folosesc imagini grafice gen diagrame, schiţe, grafice
etc. O reprezentare dintre cele mai utilizate este cea prin grafuri. Acestea sunt
utilizate în special pentru vizualizarea sistemelor şi situaţiilor complexe. În
general, vom reprezenta componentele acestora prin puncte în plan iar relaţiile
(legăturile, dependenţele, influenţele etc) dintre componente prin arce de curbă
cu extremităţile în punctele corespunzătoare. Între două puncte pot exista unul
sau mai multe segmente (în funcţie de câte relaţii dintre acestea, care ne
interesează, există) iar segmentelor li se pot asocia sau nu orientări (după cum
se influenţează cele două componente între ele), numere care să exprime
intensitatea relaţiilor dintre componente etc.
Este evident, totuşi, că această metodă are limite, atât din punct de
vedere uman (prea multe puncte şi segmente vor face desenul atât de complicat
încât se va pierde chiar scopul pentru care a fost creat – claritatea şi simplitatea
reprezentării, aceasta devenind neinteligibilă) cât şi din punct de vedere al
tehnicii de calcul (un calculator nu poate "privi" un desen ca un om).
Din acest motiv, alături de expunerea naiv-intuitivă a ceea ce este un
graf, dată mai sus, se impune atât o definiţie riguroasă cât şi alte modalităţi de
reprezentare a acestora, adecvate în general rezolvărilor matematice.
Definiţia 1 Se numeşte multigraf un triplet G = (X, A, f) în care X şi A
sunt două mulţimi iar f este o funcţie, definită pe produsul vectorial al lui X cu
el însuşi (X2 = X×X), care ia valori în mulţimea părţilor mulţimii A (notată
P(A))
46
Mulţimea X se numeşte mulţimea nodurilor multigrafului şi elementele
sale se numesc noduri (sau vârfuri) ale multigrafului, iar A reprezintă mulţimea
relaţiilor (legăturilor) posibile între două noduri ale multigrafului.
Definiţia 2 Se numeşte graf orientat un multigraf în care mulţimea A
are un singur element: A = {a}.

În acest caz mulţimea părţilor mulţimii A are doar două elemente:


mulţimea vidă ∅ şi întreaga mulţime A. Dacă unei perechi orientate (xi, xj) din
X2 i se asociază prin funcţia f mulţimea A atunci spunem ca există arc de la
nodul xi la nodul xj iar perechea (xi,xj) se va numi arcul (xi,xj). Nodul xi se
numeşte nod iniţial sau extremitate iniţială a arcului (xi,xj) iar nodul xj se
numeşte nod final sau extremitate finală a arcului (xi,xj). Arcul (xi,xj) este
incident spre interior vârfului xj şi incident spre exterior vârfului xi. Dacă
pentru un arc nodul iniţial coincide cu nodul final atunci acesta se numeşte
buclă. Nodurile xi şi xj se vor numi adiacente dacă există cel puţin unul din
arcele (xi,xj) şi (xj,xi).
Dacă unei perechi orientate (xi, xj) din X2 i se asociază prin funcţia f
mulţimea vidă ∅ atunci spunem că nu există arc de la nodul xi la nodul xj.
Este evident că a cunoaşte un graf orientat este echivalent cu a cunoaşte
vârfurile şi arcele sale. Din acest motiv putem defini un graf orientat prin
perechea (X,U), unde X este mulţimea vârfurilor sale iar U mulţimea arcelor
sale.
De asemenea, putem cunoaşte un graf orientat cunoscând mulţimea
nodurilor şi, pentru fiecare nod, mulţimea arcelor incidente spre exterior. Din
acest motiv putem defini un graf orientat ca o pereche (X,Γ) unde X este
perechea nodurilor iar Γ este o funcţie definită pe X cu valori în mulţimea
părţilor lui X, valoarea acesteia într-un nod xi, Γ(xi) ⊆ X fiind mulţimea
nodurilor adiacente nodului xi, prin arce pentru care xi este extremitatea
iniţială.
Definiţia 3 Se numeşte graf neorientat un multigraf în care mulţimea
A are un singur element iar funcţia f are proprietatea:

f[(xi,xj)] = f[(xj,xi)] , oricare ar fi nodurile xi şi xj din X


47
În aceste condiţii, dacă f[(xi,xj)] = f[(xj,xi)] = A atunci perechea
neorientată {xi,xj} este o muchie iar dacă f[(xi,xj)] = f[(xj,xi)] = ∅ spunem că
nu există muchie între vârfurile xi şi xj.
Deoarece, în cele mai multe din cazurile practice care vor fi analizate în
acest capitol, situaţia este modelată matematic printr-un graf orientat, vom
folosi, pentru simplificarea expunerii, denumirea de graf în locul celei de graf
orientat iar în cazul în care graful este neorientat vom specifica acest fapt la
momentul respectiv.

4.2. MODURI DE REPREZENTARE ALE UNUI


GRAF

A. O primă modalitate de reprezentare este listarea efectivă a tuturor


nodurilor şi a arcelor sale.
B. Putem reprezenta graful dând pentru fiecare nod mulţimea nodurilor
cu care formează arce în care el este pe prima poziţie.
C. Putem reprezenta geometric graful, printr-un desen în plan,
reprezentând fiecare nod printr-un punct(cerculeţ) şi fiecare arc
printr-un segment de curbă care are ca extremităţi nodurile arcului şi
pe care este trecută o săgeată orientată de la nodul iniţial spre cel
final.
D. Putem folosi o reprezentare geometrică în care nodurile sunt
reprezentate de două ori, în două şiruri paralele, de la fiecare nod
din unul din şiruri plecând săgeţi spre nodurile cu care formează
arce în care el este pe prima poziţie, de pe al doilea şir
(reprezentarea prin corespondenţă).
E. Un graf poate fi reprezentat printr-o matrice pătratică booleană, de
dimensiune egală cu numărul de noduri, în care o poziţie aij va fi 1
dacă există arcul (xi,xj) şi 0 în caz contrar, numită matricea
adiacenţelor directe.
F. Un graf poate fi reprezentat printr-o matrice pătratică latină, de
dimensiune egală cu numărul de noduri, în care pe o poziţie aij va fi
xixj dacă există arcul (xi,xj) şi 0 în caz contrar.
48
Exemplu: Dacă în reprezentarea A avem graful G = (X,U), unde X =
{x1, x2, x3, x4, x5, x6} şi U = {(x1,x1), (x1,x2), (x1,x4), (x1,x5), (x2,x3), (x2,x4),
(x2,x6), (x3,x1), (x3,x2), (x4,x5), (x5,x2), (x6,x4)}, atunci în celelalte reprezentări
vom avea:

B x1 → {x1, x2, x4, x5} C


x2 → {x3, x4, x6}
x3 → {x1, x2} x1 x2
x4 → {x5}
x6 x3
x5 → {x2}
x6 → {x4} x4
x5

D (reprezentarea prin corespondenţă)


x1 x2 x3 x4 x5 x6

x1 x2 x3 x4 x5 x6

E F
x1 x2 x3 x4 x5 x6 x1 x2 x3 x4 x5 x6
x1 1 1 0 1 1 0 x1 x1x1 x1x2 0 x1x4 x1x5 0
x2 0 0 1 1 0 1 x2 0 0 x 2x 3 x 2x 4 0 x 2x 6
x3 1 1 0 0 0 0 x3 x3x1 x3x2 0 0 0 0
x4 0 0 0 0 1 0 x4 0 0 0 0 x4x5 0
x5 0 1 0 0 0 0 x5 0 x5x2 0 0 0 0
x6 0 0 0 1 0 0 x6 0 0 0 x 6x 4 0 0
49

4.3. CONCEPTE DE BAZĂ ÎN TEORIA


GRAFURILOR

1. semigraf interior al unui nod xk: este mulţimea arcelor U −x k =

{(xj,xk)/ (xj,xk) ∈ U} care sunt incidente spre interior nodului xk;


2. semigraf exterior al unui nod xk: este mulţimea arcelor U +x k =

{(xk,xi)/ (xk,xi) ∈ U} care sunt incidente spre exterior nodului xk;


3. semigradul interior al unui nod xk: este numărul arcelor care sunt
incidente spre interior nodului xk = cardinalul lui U −x k şi se notează

cu δ x−k ;

4. semigradul exterior al unui nod xk: este numărul arcelor care sunt
incidente spre exterior nodului xk = cardinalul lui U +x k şi se notează

cu δ x+k ;

5. gradul unui nod xk: este suma semigradelor nodului xk: δ x k = δ x+k +

δ x−k ;
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 mulţime ordonată de noduri ale grafului: (x1,
x2, ..., xk), cu proprietatea că există în graf toate arcele de forma
(xi,xi+1) i = 1,...,k-1;
10. lungimea unui drum: este numărul 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 xi ∈ X în graful G: numărul de
noduri la care se poate ajunge din xi. Puterea de atingere se notează
cu p(xi), 1 ≤ i ≤ n şi evident p(xi) ≥ δ x+i .

14. drum hamiltonian: un drum elementar care trece prin toate


nodurile grafului;
50
15. drum eulerian: un drum simplu care conţine toate arcele grafului;
16. lanţ: un drum în care arcele nu au neapărat acelaşi sens de
parcurgere;
17. circuit: un drum în care nodul iniţial coincide cu cel final;
18. circuit elementar: un drum în care fiecare nod apare o singură dată,
cu excepţia celui final, care coincide cu cel iniţial;
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 neapărat acelaşi sens de
parcurgere;
22. ciclu elementar: un ciclu în care fiecare nod apare o singură dată,
cu excepţia celui final, care coincide cu cel iniţial;
23. ciclu simplu: un ciclu în care fiecare arc apare o singură dată;
Observaţie: Într-un graf neorientat noţiunile de drum şi lanţ sunt
echivalente şi de asemenea cele de circuit şi ciclu.
24. graf parţial al unui graf G = (X,U): este un graf G'(X,U') cu U' ⊂
U;
25. subgraf al unui graf G = (X,Γ): este un graf G'(X',Γ') unde X' ⊂ X
şi Γ'(xi) = Γ(xi) ∩ X' pentru orice xi ∈ X';
26. graf redus al unui graf G = (X,U): este un graf G*(X*,U*) unde X*
este formată din mulţimile unei partiţii de mulţimi nevide ale lui X,
iar ( X *i , X *j ) există doar dacă i ≠ j şi există cel puţin un arc în U, de

la un nod din X *i la un nod din X *j .

27. graf tare conex: este un graf în care între oricare două noduri există
cel puţin un drum;
28. graf simplu conex: este un graf în care între oricare două noduri
există cel puţin un lanţ;
Observaţie: Pentru grafuri neorientat noţiunile de tare conex şi simplu
conex sunt echivalente, graful numindu-se doar conex;
29. componentă tare conexă a unui graf G = (X,U): este un subgraf al
lui G care este tare conex şi nu este subgraful nici unui alt subgraf
tare conex al lui G (altfel spus, între oricare două noduri din
51
componentă există cel puţin un drum şi nu mai există nici un nod în
afara componentei legat printr-un drum de un nod al componentei).

4.4. GĂSIREA DRUMURILOR ÎNTR-UN GRAF


ORIENTAT

Dacă privim graful ca imagine a unui sistem, nodurile reprezentând


componentele sistemului, atunci o interpretare imediată a unui arc (xi,xj) este
că, componenta xi influenţează direct componenta xj. Dacă nodurile au
semnificaţia de stări posibile ale unui sistem atunci un arc (xi,xj) semnifică
faptul că sistemul poate trece direct din starea xi în starea xj. În ambele cazuri
se vede că avem de-a face doar cu informaţii despre legături directe; totuşi,
chiar dacă o componentă xi nu influenţează direct componenta xj ea o poate
influenţa prin intermediul altor componente, existând un şir de componente
intermediare: x1 x2 ,..., xk, fiecare influenţând-o direct pe următoarea şi xi direct
pe x1 iar xk direct pe xj. Astfel, dacă dintr-o stare xi nu se poate trece direct într-
o stare xj s-ar putea totuşi în mai multe etape, prin alte stări intermediare.
Deoarece găsirea acestor influenţe sau treceri posibile este de obicei foarte
importantă iar pentru un sistem cu mii sau zeci de mii de componente acest
lucru nu mai poate fi făcut "din ochi", este necesară formalizarea noţiunii de
"influenţe" şi "treceri" posibile, nu neapărat directe. Acest lucru a şi fost făcut
mai sus, deoarece este evident că "xi influenţează xj" sau "din starea xi se poate
trece în starea xj" este echivalent cu existenţa în graf a unui drum de la nodul xi
la nodul xj.
În continuare vom da un algoritm prin care putem găsi toate drumurile
dintr-un graf orientat cu un număr finit de noduri.
Pasul 1. Se construieşte matricea booleană a adiacenţelor directe
corespunzătoare grafului, notată cu A. În aceasta se află, evident,
toate drumurile de lungime 1.
Este interesant de văzut ce legătură există între această matrice şi
drumurile de lungime 2. Fie două noduri xi şi xj oarecare din graf. Existenţa
unui drum de lungime 2 între ele presupune existenţa unui nod xk, din graf, cu
proprietatea că există atât arcul (xi,xk) cât şi arcul (xi,xk). Pentru a vedea dacă
52
acesta există, luăm pe rând fiecare nod al grafului şi verificăm dacă există sau
nu ambele arce ((xi,xk) şi (xi,xk)). Aceasta este echivalent cu a verifica dacă, în
matricea booleană a adiacenţelor directe, există vreun indice k astfel încât
elementul k al liniei i şi elementul k al coloanei j să fie ambele egale cu 1. Dacă
folosim operaţiile algebrei booleene de adunare şi înmulţire:
+& 0 1 ×& 0 1
0 0 1 0 0 0
1 1 1 1 0 1

atunci verificările de mai sus sunt echivalente cu a verifica dacă elementul de


pe poziţia (i,j) din A2 este egal cu 1. Valoarea 1 spune doar că există cel puţin
un drum de lungime 2 de la xi la xj. Dacă dorim să vedem şi câte sunt, vom
folosi regulile de înmulţire şi adunare obişnuită.
De asemenea, se poate observa că existenţa unui drum de lungime 3 de
la xi la xj presupune existenţa unui nod xk astfel încât să existe un drum de
lungime 2 de la xi la xk şi un arc de la xk la xj, care este echivalent cu a verifica
dacă există vreun indice k astfel încât elementul k al liniei i din matricea A2 şi
elementul k al coloanei j din A sunt ambele egale cu 1 sau, mai simplu, dacă
elementul (i,j) din A3 este 1.
Din cele de mai sus se observă că existenţa drumurilor de lungime k
este dată de valorile matricei Ak, dacă s-au folosit regulile algebrei booleene şi
numărul lor este dat de Ak, dacă s-au folosit regulile obişnuite.
Pasul 2. Vom calcula succesiv puterile lui A până la puterea An-1
Dacă între nodurile xi şi xj există un drum de lungime ≥ n atunci el va
conţine un număr de noduri mai mare sau egal nu n+1 şi, cum în graf sunt doar
n vârfuri, este clar că cel puţin unul, să zicem xk, va apărea de două ori. Vom
avea în acest caz un drum de la xi până la prima apariţie a lui xk, şi un drum de
la ultima apariţie a lui xk la xj. Eliminând toate nodurile dintre prima apariţie a
lui xk şi ultima apariţie a sa vom obţine un drum de la xi la xj, în care xk apare o
singură dată. Aplicând acest procedeu pentru toate nodurile care apar de mai
multe ori pe drum, vom obţine un drum de la xi la xj, în care fiecare nod apare
o singură dată (deci un drum elementar), care are evident cel mult n-1 arce. În
concluzie, dacă există vreun drum de la xi la xj atunci există şi un drum
elementar şi, deci, va exista o putere a lui A, între A1 şi An-1, în care poziţia (i,j)
53
este diferită de 0. Pentru deciderea existenţei unui drum între oricare două
noduri este suficientă, deci, calcularea doar a primelor n-1 puteri ale lui A.
Pasul 3. Se calculează matricea D = A + A2 + ... + An-1
Dacă ne interesează doar existenţa drumurilor dintre noduri, nu şi
numărul lor, vom folosi înmulţirea şi adunarea booleană şi conform observaţiei
de mai sus:

( (
1 daca exista cel putin un drum de x i la x j
dij =  ( (
0 daca nu exista nici un drum de x i la x j

În acest caz, observând că:

A⋅(A + I)n–2 = C 0n − 2 ⋅A + C 1n − 2 ⋅A2 + C 2n − 2 ⋅A3 + ... + C nn −− 22 ⋅An–1 = A + A2 + A3 +


... + An-1 = D

rezultă că e suficient să calculăm doar puterea n-2 a matricei A + I şi apoi s-o


înmulţim cu A. Avantajul acestei metode, în ceea ce priveşte economia de
timp, este susţinut şi de următoarea observaţie: dacă D conţine toate perechile
de arce între care există drum atunci:

D = (A + A2 + ... + An-1) + An + An+1 + ... + An+k = D oricare ar fi k ≥ 0 ⇒


⇒ A⋅(A + I)n–2+k = (A + A2 + ... + An-1) + An + An+1 + ... + An+k-1 = D = A⋅(A +
I)n–2 ⇔
⇔A⋅(A + I)n–2+k = A⋅(A + I)n–2 oricare ar fi k ≥ 0

deci de la puterea k = n-2 toate matricile Ak sunt egale. Putem, deci, calcula
direct orice putere a lui A+I mai mare sau egală cu n-1 (de exemplu calculând
r
(A+I)2, (A+I)4, (A+I)8, ..., (A + I) 2 , r fiind prima putere a lui 2 pentru care 2r
≥ n-2).
Procedeul de mai sus nu asigură decât aflarea faptului dacă există sau
nu drum între două noduri, eventual ce lungime are şi câte sunt de această
lungime. Totuşi, în problemele practice cel mai important este să ştim care sunt
efectiv aceste drumuri. Deoarece toate drumurile pot fi descompuse în drumuri
54
elementare şi în problemele practice în general acestea sunt cele care
interesează, paşii următori ai algoritmului vor fi dedicaţi găsirii lor. Pentru
găsirea acestora se foloseşte reprezentarea grafului prin matricea latină de la
cazul F.
Pasul 4. Construim matricea latină L asociată grafului, unde:
x x daca exista arcul (x i , x j )
( (
lij =  i j
daca nu exista arcul (x i , x j )
( (
0
~
şi matricea L , definită prin:
~ x j daca exista arcul (x i , x j )
( (

0 daca nu exista arcul (x i , x j )


lij =  ( (

numită matricea latină redusă.


Găsirea unui drum de lungime 2 de la xi la xj presupune găsirea unui
nod cu proprietatea că există arcele (xi,xk) şi (xk,xj) şi memorarea vectorului (xi,
xk, xj). Aceasta este echivalent cu a găsi un indice k astfel încât elementul de pe
poziţia k a liniei i, din matricea L, să fie xi,xk şi elementul de pe poziţia k al
~
coloanei j, din matricea L , să fie xj. Vom înmulţi deci matricea L cu matricea
~
L , folosind însă nişte reguli de calcul speciale, numite înmulţire şi adunare
latină.
Definiţia 1: Se numeşte alfabet o mulţime de semne numite simboluri
sau litere {si/i∈I} unde I este o mulţime oarecare de
indici, finită sau nu.
Definiţia 2: Se numeşte cuvânt un şir finit de simboluri notat
s i1 s i 2 ...s i n .

Definiţia 3: Se numeşte înmulţire latină o operaţie definită pe


mulţimea cuvintelor unui alfabet, notată " × L ", astfel:
s i1 s i 2 ...s i n × L s j1 s j2 ...s jm = s i1 s i 2 ...s i n s j1 s j2 ...s jm

(produsul a două cuvinte se obţine prin concatenarea lor)


Înmulţirea latină este asociativă, are ca element neutru
cuvântul vid, nu e comutativă şi un element este inversabil
doar dacă este cuvântul vid.
55
Definiţia 3: Se numeşte adunare latină o funcţie definită pe mulţimea
cuvintelor unui alfabet cu valori în mulţimea parţilor
mulţimi cuvintelor, notată " + L " astfel:

 s s ...s 
s i1 s i 2 ...s i n + L s j1 s j2 ...s jm =  i1 i 2 i n 
s j1 s j2 ...s jm 
(suma a două cuvinte este mulţimea formată din cele două cuvinte)
Pasul 5. Se calculează succesiv matricile:
~ ~ ~
L2 = L × L L , L3 = L2 × L L , ... ,Lk+1 = Lk × L L
folosind operaţiile de înmulţire şi adunare latină, alfabetul fiind mulţimea
nodurilor grafului, unde operaţia de înmulţire este uşor modificată, produsul
dintre două elemente ale matricilor fiind 0, dacă unul dintre ele este 0 sau au un
nod comun şi este produsul latin al lor, în caz contrar.
Din felul cum a fost construită, matricea Lk va conţine toate drumurile
elementare de lungime k. Cum un drum elementar poate avea cel mult n noduri
(câte are graful cu totul) rezultă că:
− primele n-1 puteri ale lui L conţin toate drumurile elementare din
graf;
− puterile lui L mai mari sau egale cu n au toate elementele egale cu 0;
− matricea Ln-1 conţine toate drumurile hamiltoniene din graf (dacă
există).

Observaţie: Deoarece obţinerea matricii D prin metoda de mai sus


presupune un volum foarte mare de calcule (de exemplu, dacă graful are 100 de
noduri, ridicarea unei matrici de 100×100 la puterea 100) pentru obţinerea
acesteia se poate aplica şi următorul algoritm:

Pas 1. Se construieşte matricea de adiacenţă A;


Pas 2. Pentru fiecare linie i se adună boolean la aceasta toate liniile j
pentru care aij = 1.
Pas 3. Se reia pasul 2 până când, după o aplicare a acestuia, matricea
rămâne aceeaşi (nu mai apare nici un 1)
Ultima matrice obţinută este matricea drumurilor D numită şi matricea
conexiunilor totale.
56
Această metodă, deşi mai simplă nu spune însă şi care sunt aceste
drumuri, pentru găsirea lor aplicându-se, de exemplu, înmulţirea latină

4.5. ARBORI. PROBLEMA ARBORELUI DE


VALOARE OPTIMĂ

În acest subcapitol grafurile vor fi considerate neorientate.

4.5.1. NOŢIUNEA DE ARBORE

Un arbore este un graf neorientat, finit, conex şi fără cicluri. Grafurile


din fig. 4.1. sunt arbori.

x1 x1 x1 x1 x1

x1
x1

x1 x1 x1 x1

a) c)
b)

Figura 4.1

Studiul arborilor este justificat de existenţa în practică a unui număr


mare de probleme care pot fi modelate prin arbori. Dintre acestea amintim:

1. construirea unor reţele de aprovizionare cu apă potabilă (sau cu


energie electrică sau termică etc) a unor puncte de consum, de la un
punct central;
2. construirea unor căi de acces între mai multe puncte izolate;
3. desfăşurarea unui joc strategic;
4. luarea deciziilor în mai multe etape (arbori decizionali);
5. evoluţii posibile ale unui sistem pornind de la o stare iniţială;
57
6. construirea unei reţele telefonice radiale, a unei reţele de relee
electrice;
7. legarea într-o reţea a unui număr mare de calculatoare;
8. organigramele întreprinderilor;
9. studiul circuitelor electrice în electrotehnică (grafe de fluenţă etc);
10. schemele bloc ale programelor pentru calculatoare etc.
În toate problemele de mai sus se doreşte ca, dintre muchiile unui graf
neorientat, să se extragă arborele optim din mulţimea tuturor arborilor care pot
fi extraşi din graful dat.
Deoarece definiţia arborelui este dificil de aplicat pentru deciderea
faptului că un graf este arbore sau nu (şi în special sunt greu de verificat
conexitatea şi mai ales existenţa ciclurilor) există mai multe caracterizări
posibile ale unui arbore, acestea fiind date de teorema de mai jos:

Teoremă. Dacă H este un graf neorientat finit, atunci următoarele


afirmaţii sunt echivalente:
1) H este arbore;
2) H nu conţine cicluri şi, dacă se unesc printr-o muchie două noduri
neadiacente, se formează un ciclu (şi numai unul). Arborele este,
deci, pentru o mulţime de noduri dată, graful cu numărul maxim de
arce astfel încât să se păstreze proprietatea că nu are cicluri);
3) H este conex şi dacă i se suprimă o muchie se creează două
componente conexe (arborele este graful conex cu numărul minim de
arce);
4) H este conex şi are n-1 muchii;
5) H este fără cicluri şi are n-1 muchii;
6) Orice pereche de noduri este legată printr-un lanţ şi numai unul.

Demonstraţie :

1)⇒ 2). între cele două noduri adiacente noii muchii introduse exista deja un
drum în fostul graf. Acest drum, împreună cu noul arc va forma
evident un ciclu şi afirmaţia 2) a fost demonstrată.
58
2)⇒3). Pentru oricare două vârfuri neunite printr-o muchie, adăugând muchia
dintre cele două vârfuri s-ar crea, conform ipotezei, un ciclu care
conţine această muchie, deci două drumuri între cele două noduri, din
care unul nu conţine noua muchie, adică în graful iniţial exista un
drum între cele două noduri. Dacă nu există cicluri înseamnă că între
oricare două noduri există un singur drum. Pentru două noduri unite
printr-o muchie, aceasta este chiar drumul corespunzător celor două
noduri. Dacă suprimăm această muchie între cele două noduri nu va
mai exista nici un drum, formându-se două componente conexe.
3)⇒4). Demonstraţia se face prin inducţie după n = numărul de noduri ale
grafului. Pentru n=2 este evident. Presupunem afirmaţia adevărată
pentru toate grafurile cu cel mult n noduri. Dacă graful are n+1 noduri,
prin suprimarea unei muchii se formează două componente conexe
fiecare având cel mult n noduri (n1 ≤ n, n2 ≤ n şi n1 + n2 = n+1) şi deci
au n1 – 1 respectiv n2 – 1 muchii. În concluzie graful iniţial a avut (n1
– 1) + (n2 – 1) +1 = n1 + n2 – 1= (n+1)-1 muchii, ceea ce era de
demonstrat.
4)⇒5). Dacă ar avea un ciclu atunci prin suprimarea unui arc al acestuia ar
rămâne de asemenea conex. Eliminăm acest arc apoi repetăm
procedeul pentru graful parţial rămas şi tot aşa până când nu mai
rămâne nici un ciclu. În acest moment graful rămas este conex şi nu
are cicluri deci este arbore şi deci are n-1 arce, în contradicţie cu
faptul că el avea n-1 arce înainte de a începe suprimarea arcelor;
5)⇒6). Dacă între două noduri ar exista două drumuri atunci acestea ar forma
la un loc un ciclu. Deci între 2 noduri este cel mult un drum. Dacă
între două noduri nu ar exista nici un drum ar fi cel puţin două
componente conexe în graf, fiecare fiind arbore (pentru că nu există
cicluri) şi deci fiecare ar avea un număr de arce cu 1 mai mic decât
numărul de noduri. Făcând adunarea, ar rezulta că în graf sunt strict
mai puţin de n-1 arce.
6)⇒1). Dacă H ar avea un ciclu, între două noduri ale acestuia ar exista două
lanţuri, în contradicţie cu ipoteza.
59
Presupunem că avem un graf pentru care am verificat deja dacă este
conex. Dacă nu este atunci acesta, evident, nu are nici un graf parţial care să fie
arbore.
Presupunem de asemenea că fiecărei muchii îi este asociată o valoare
reală.

4.5.2. ALGORITMI PENTRU GĂSIREA ARBORELUI DE


VALOARE OPTIMĂ

Vom da mai jos trei algoritmi pentru determinarea unui graf parţial al
grafului, care să fie arbore şi pentru care suma valorilor arcelor sale să fie
minimă (sau maximă).
Toţi algoritmii descrişi în continuare extrag arborele prin colectarea una
câte una a muchiilor acestuia.

A. Algoritmul lui Kruskal

Pasul 1. Dintre toate muchiile grafului se alege muchia de valoare minimă


(maximă). Dacă minimul este multiplu se alege la întâmplare una din
muchiile respective. Deoarece acest "la întâmplare" trebuie cumva
tradus în limbajul calculatorului, în cazul implementării unui program
bazat pe acest algoritm, vom perturba din start valorile muchiilor, la k
muchii cu aceiaşi valoare V adunând respectiv valorile ε, 2ε, ... , kε,
unde ε este foarte mic (în orice caz, kε mai mic decât diferenţa dintre
valoarea acestor arce si valoarea imediat superioară a unui arc),
pozitiv.
Pasul 2. Dintre toate muchiile rămase, se alege cea de valoare minimă
(maximă);
Pasul 3. Dintre toate muchiile rămase, se alege cea de valoare minimă
(maximă), astfel încât să nu se formeze cicluri cu cele deja alese;
Pasul 4. Se reia algoritmul de la pasul 3 până se colectează n-1 muchii.
Deşi s-a demonstrat că algoritmul găseşte întotdeauna arborele optim, el
are dezavantajul că este foarte laborios (de fiecare dată trebuie calculat
60
minimul unei mulţimi mari sau foarte mari – există situaţii în practică în care
graful are sute de mii de arce) şi, în plus, trebuie aplicat un algoritm special ca
să respectăm condiţia de a nu se forma cicluri, la alegerea unui nou arc.
O metodă posibilă este ca, după adăugarea fiecărui arc, să se împartă
graful în componente conexe şi să alegem apoi un arc care nu are ambele
extremităţile în aceeaşi componentă conexă.
De asemenea este clar că, în cazul existenţei arcelor de valori egale,
deoarece se alege la întâmplare, există mai multe variante de evoluţie a alegerii
arcelor. Totuşi, cu toate că pot fi mai multe grafuri la care se poate ajunge prin
acest algoritm, ele vor avea toate aceeaşi valoare (minima (sau maxima)
posibilă).

B. Algoritmul lui Sollin

Pasul 1. Pentru fiecare nod se alege muchia adiacentă de valoare minimă


(maximă).
Pasul 2. Se evidenţiază componentele conexe, existente în graful parţial
format din arcele alese până în acest moment.
Pasul 3. Pentru fiecare componentă conexă se alege muchia adiacentă de
valoare minimă (maximă). Prin muchie adiacentă unei componente
conexe înţelegem o muchie care are o singură extremitate printre
nodurile componentei respective.
Pasul 4. Se reia algoritmul de la pasul 2 până rămâne o singură componentă
conexă. Aceasta este arborele optim căutat.
Acest algoritm asigură de asemenea găsirea arborelui optim, necesită
mult mai puţine calcule (la fiecare alegere se calculează minimul doar pentru
muchiile adiacente unui singur nod), evită automat formarea ciclurilor, dar,
pentru grafuri foarte mari, la un moment dat pot exista atât de multe
componente conexe care trebuie memorate succesiv, încât calculul devine greoi
sau, pe calculator, depăşeşte posibilităţile de memorare ale calculatorului.
61

C. O variantă a algoritmului lui Kruskal

Pasul 1. Dintre toate muchiile grafului se alege cea de valoare minimă


(maximă);
Pasul 2. Dintre toate muchiile adiacente componentei conexe formată din
arcele alese până în acest moment, se alege cea de valoare minimă
(maximă);
Pasul 3. Se reia pasul 2 până se colecţionează n-1 muchii.
Algoritmul are toate avantajele algoritmului lui Sollin şi, în plus,
lucrează cu o singură componentă conexă, fiind mult mai uşor de implementat
pe calculator şi mult mai rapid în execuţie.
Exemplu: Administraţia unei localităţi montane a hotărât construirea
unor linii de teleferic care să lege oraşul de cele 8 puncte turistice importante
din jurul acestuia. În urma unui studiu au fost puse în evidenţa toate
posibilităţile şi costurile de conectare a obiectivele turistice între ele şi cu
oraşul, acestea fiind prezentate în figura 4.2.
Se cere găsirea variantei de construcţie de cost minim, care să asigure
accesul din oraş la oricare din obiectivele turistice.
P2
4 9
7
P1 8 8 P3
8 P4
2
5 7
3 9 4
O
3 3 8
P6 2 P5
5 7
6
8 P8
P7

Figura 4.2

Rezolvare

Condiţia de cost minim implică două obiective:


1. Să se construiască minimul de arce necesare;
62
2. Să se construiască cele mai ieftine legături.
Referitor la numărul de arce necesar, facem observaţia că, dacă din oraş
se va putea ajunge la orice obiectiv turistic, atunci se va putea ajunge şi de la
orice staţiune la oricare alta (trecând prin oraş), deci trebuie ca arcele alese
pentru construcţie să formeze la un loc un graf conex.
În concluzie, căutăm un graf parţial conex cu un număr minim de arce,
adică un arbore. În plus, suma costurilor arcelor sale trebuie să fie minimă.
Vom aplica pe rând cei trei algoritmi pentru găsirea acestuia:

A. Kruskal

La primul pas poate fi ales unul din arcele OP3 sau OP7, ele având
valoarea minimă 2. Putem alege oricum primul arc dintre cele două pentru că la
al doilea pas va fi ales celălalt.
La pasul trei poate fi ales unul din arcele OP5, OP6 sau P1P6 care au
valoarea minimă 3. Nici în acest caz nu are vre-o importanţă ordinea alegerii,
deoarece pot fi alese succesiv toate trei fără a se forma nici un ciclu.
Al şaselea arc poate fi ales dintre arcele P4P5 şi P1P2, care au valoarea
minimă 4. Nici în acest caz nu are vre-o importanţă ordinea alegerii, deoarece
pot fi alese succesiv ambele, fără a se forma nici un ciclu.
Următoarea valoare disponibilă a unui arc este 5, dar arcul opt nu poate
fi ales dintre arcele OP1, P6P7, deşi au valoarea minimă 5. Arcul OP1 nu poate
fi ales deoarece s-ar forma ciclul OP1P6, iar P6P7 ar duce la ciclul OP6P7.
Următoarea valoare minimă este 6, pentru arcul P5P7 dar nu poate fi ales
deoarece se formează ciclul OP5P7.
Valoarea următoare, 7, o au arcele OP4, P2P3 şi P5P8. OP4 nu poate fi
ales deoarece s-ar forma ciclul OP5P4. Arcul P2P3 nu poate fi ales deoarece s-ar
forma ciclul OP6P1P2P3. Arcul P5P8 nu formează nici un ciclu şi el va fi al
optulea arc ales. În acest caz, deoarece s-au adunat 8 arce într-un graf cu 9
noduri, am obţinut graful căutat.
Acest arbore este reprezentat în figura 4.3.
63

P2
4

P1 P3
2 P4
3 4
O
3 3
P6 2 P5
7
P8
P7

Figura 4.3
B. Sollin

Vom alege: pentru nodul O → arcul OP3


pentru nodul P1 → arcul P1P6
pentru nodul P2 → arcul P1P2
pentru nodul P3 → arcul OP3
pentru nodul P4 → arcul P4P5
pentru nodul P5 → arcul OP5
pentru nodul P6 → arcul P1P6
pentru nodul P7 → arcul OP7
pentru nodul P8 → arcul P5P8

Rezultă graful parţial: P2


4

P1 P3
2 P4
3 4
O
3
P6 P5 7
2
P8
P7

După cum se vede, s-au format Figura


două componente
4.4 conexe: C1 =
{P1,P2,P6}
C2 =
64
{O,P3,P4,P5,P7,P8}.
Vom alege: pentru C1 → arcul OP6
pentru C2 → arcul OP6
şi obţinem o singură componentă conexă, care este arborele căutat.

C. Varianta algoritmului lui Kruskal

Succesiunea alegerii arcelor va fi:


1 → OP3
2 → OP7
3 → OP6
4 → OP5
5 → P1P6
6 → P1P2
7 → P4P5
8 → P5P8

4.6. DRUMURI OPTIME ÎNTR-UN GRAF

În marea majoritate a problemelor care pot fi modelate prin grafuri nu


ne interesează numai dacă există sau nu legături între componentele
reprezentate prin nodurile grafului ci şi intensitatea acestora. Această
intensitate are semnificaţia unei valori numerice (pozitive sau negative)
asociate arcului corespunzător legăturii a cărei intensitate o măsoară.
În aplicaţiile economice această valoare poate fi:
− lungimea drumului dintre două localităţi;
− costul parcurgerii rutei reprezentate prin arcul corespunzător;
− durata parcurgerii rutei respective;
− cantitatea transportată pe ruta respectivă;
− capacitatea maximă a rutei respective;
− câştigul realizat prin trecerea de la o stare la alta a sistemului;
− consum de energie pentru efectuarea trecerii respective;
65
− punctaj realizat etc.
Una din problemele care poate apărea în aceste situaţii este găsirea,
pentru o anumită pereche de noduri (sau mai multe perechi), a drumului optim
între acestea.
Pentru formalizarea problemei vom introduce noţiunea de valoare a
unui drum, care este egală cu suma valorilor arcelor care îl compun. Vom nota
în continuare valoarea unui arc (xi,xj) cu v(xi,xj) sau cu vij. În aceste condiţii
putem enunţa problema drumului optim astfel:

"Dat fiind un graf G = (X,U) şi o funcţie care asociază fiecărui arc o


valoare reală, să se găsească, pentru o pereche dată de noduri, drumul
(drumurile) de valoare optimă (minimă sau/şi maximă) între cele două
noduri şi valoarea acestuia (acestora)"

Deoarece este vorba de găsirea minimului unei mulţimi de numere


reale, prima întrebare care se pune este dacă aceasta admite minim. Dacă
mulţimea nodurilor grafului este infinită atunci pot exista o infinitate de
drumuri elementare distincte între cele două noduri şi mulţimea valorilor
acestora poate avea orice formă (închisă sau nu, mărginită sau nu) devenind
foarte greu de caracterizat cazurile când minimul dorit există. Deoarece totuşi
majoritatea covârşitoare a problemelor economice se modelează prin grafuri cu
număr finit de noduri, ne vom limita în continuare doar la acestea.
Un număr finit de noduri n atrage după sine existenţa unui număr finit
de arce (cel mult n2) şi a unui număr finit de drumuri elementare ( cel mult
n -1
1
n⋅n!⋅ ∑ k! ). Deoarece oricărui drum d îi corespunde un drum elementar d
k =1
e

(obţinut prin eliminarea tuturor subcircuitelor lui d) putem calcula valoarea


oricărui drum ca sumă între valoarea drumului elementar corespunzător şi
valorile unor subcircuite ale sale, fiecare înmulţită cu numărul de parcurgeri
ale circuitului respectiv.
În concluzie, dacă există un circuit de valoare negativă înseamnă că
există drumuri de valoare oricât de mică (cele care conţin acest circuit),
obţinută prin parcurgerea acestuia de oricâte ori dorim) şi, deci, mulţimea
valorilor drumurilor este nemărginită inferior, neexistând drum de valoare
minimă. Dacă există un circuit de valoare pozitivă atunci există drumuri de
66
valoare oricât de mare şi mulţimea valorilor drumurilor este nemărginită
superior, neexistând drum de valoare maximă.
Dacă nu există circuite de valoare negativă atunci valoarea oricărui
drum este mai mare sau egală cu a drumului elementar corespunzător, deci
drumul de valoare minimă (dacă există) va fi un drum elementar. Cum
mulţimea drumurilor elementare este finită (şi deci şi mulţimea valorilor lor) va
avea minorant şi am lămurit problema compatibilităţii problemei. Analog, dacă
nu există circuite de valoare pozitivă atunci valoarea oricărui drum este mai
mică sau egală cu a drumului elementar corespunzător, deci drumul de valoare
maximă (dacă există) va fi un drum elementar. Cum mulţimea drumurilor
elementare este finită (şi deci şi mulţimea valorilor lor), va avea majorant.
Obs. 1. Dacă în graf nu există decât arce de valoare pozitivă atunci
există drum de valoare minimă.
Obs. 1. Dacă în graf nu există decât arce de valoare negativă atunci
există drum de valoare maximă.
Obs. 1. Dacă în graf nu există circuite atunci există şi drum de valoare
minimă şi drum de valoare maximă.
Deoarece din cele de mai sus se sesizează importanţa existenţei
circuitelor într-un graf vom da în continuare un algoritm de depistare a
existenţei circuitelor într-un graf:
Pasul 1. Se construieşte mulţimea A formată din nodurile pentru care toate
arcele incidente sunt incidente spre interior ( noduri în care toate
arcele "intră" sau, altfel spus, noduri din care nu "pleacă" nici un arc).
Pasul 2. Se găsesc toate nodurile care nu sunt din A pentru care toate arcele
incidente au cealaltă extremitate în A (noduri din care se poate
"ajunge" doar in A). Dacă nu există nici un astfel de arc se trece la
pasul 4.
Pasul 3. Se adaugă arcele găsite la pasul 2 la mulţimea A apoi se reia
algoritmul de la pasul 2, pentru noua mulţime A.
Pasul 4. Dacă A conţine mulţimea tuturor nodurilor atunci graful nu conţine
circuite. Dacă au rămas noduri în afara lui A atunci graful conţine
circuite.
67
ALGORITMI DE GĂSIRE A DRUMULUI OPTIM

Din cauza varietăţii nelimitate a grafurilor posibile, nu există un


algoritm care să rezolve orice problemă în timp util, dar s-au elaborat o
mulţime de algoritmi, fiecare fiind cel mai eficace în anumite cazuri. Aceşti
algoritmi pot fi grupaţi în cinci categorii:

1. Algoritmi prin calcul matricial (Bellman-Kalaba, I. Tomescu,


Bellman-Schimbell);
2. Algoritmi prin ajustări succesive: (Ford);
3. Algoritmi prin inducţie (Dantzig);
4. Algoritmi prin ordonare prealabilă a vârfurilor grafului;
5. Algoritmi prin extindere selectivă (Dijkstra).

4.7. REŢELE DE TRANSPORT


Într-o mare varietate de situaţii concrete din practica economică se pune
problema deplasării unei cantităţi de materie, energie, informaţie etc, din
anumite locuri, numite surse, în alte locuri, numite destinaţii. Pentru realizarea
acestui transport se folosesc o serie de trasee, numite rute de legătură. Unităţile
indivizibile ale cantităţii Q, care se deplasează de-a lungul rutelor între surse şi
destinaţii, se numesc unităţi de flux, iar ansamblul rutelor, surselor,
destinaţiilor şi, eventual, a altor puncte intermediare se numeşte reţea de
transport.
Situaţia de mai sus poate fi reprezentată geometric printr-un graf finit,
conex şi fără bucle.
Pentru ca o astfel de problemă să fie suficient de complexă pentru a
necesita un studiu matematic riguros, trebuie ca fiecare sursă să poată
aproviziona mai multe destinaţii şi orice destinaţie să poată fi aprovizionată de
mai multe surse.
Aprovizionarea destinaţiilor se poate face direct de la surse sau prin
intermediul altor puncte, numite puncte intermediare. În cazul cel mai general
pot exista de asemenea legături între surse şi/sau legături între destinaţii.
Aşa cum s-a văzut şi la problema de transport, situaţia de mai sus este
68
un cadru extrem de larg, care permite existenţa unui număr foarte mare de
tipuri de probleme posibile, diferite între ele prin informaţiile suplimentare pe
care le avem despre reţea şi prin obiectivele urmărite.
Una dintre acestea este problema determinării cantităţii maxime
(minime) care poate fi transportată de la surse la destinaţii, în situaţia în care
sursele dispun de cantităţi limitate (inferior sau superior), destinaţiile au un
necesar sau o putere de absorbţie limitată inferior sau superior iar pe fiecare
rută se poate transporta doar o cantitate cuprinsă între anumite limite.
Pentru studiul matematic al acestei situaţii vom da definiţiile
matematice ale obiectelor implicate în problemă şi ipotezele modelului.
Definiţia 1: Se numeşte reţea de transport standard un graf finit,
simplu, conex, fără bucle G = (X,U) care are următoarele proprietăţi:
+
1. Există şi este unic s ∈ X a.î. U s ≠ ∅, U s = ∅ (din care

doar "ies" arce), numit intrarea reţelei de transport;


+ −
2. Există şi este unic t ∈ X a.î. U t = ∅, U t ≠ ∅ (în care doar

"intră" arce) numit ieşirea reţelei de transport;


3. S-a definit o funcţie c: U → R+ care asociază fiecărui arc u
un număr strict pozitiv cu numit capacitatea arcului.
Observaţie: Este clar că exemplele obişnuite au doar rareori o singură sursă şi o
singură destinaţie. Totuşi, printr-o tehnică foarte simplă, orice reţea de
transport se poate aduce la forma standard:
1. Dacă sunt mai multe surse se introduce un nod suplimentar din
care "pleacă" câte un arc spre fiecare sursă (şi numai spre
acestea), iar capacităţile acestor arce vor fi egale cu
disponibilurile surselor corespunzătoare;
2. Dacă sunt mai multe destinaţii se introduce un nod suplimentar
spre care "pleacă" câte un arc din fiecare destinaţie (şi numai
din acestea), iar capacităţile acestor arce vor fi egale cu
necesarurile destinaţiilor corespunzătoare;
Definiţia 2: Se numeşte flux într-o reţea de transport R = (X,U) o
funcţie ϕ: U → R+ care are următoarele proprietăţile:
69
P1. 0 ≤ ϕu ≤ cu oricare ar fi u din U; valoarea ϕu se numeşte flux al
arcului u

P2. ∑ ϕ u = ∑ ϕ u oricare ar fi i ≠ s,t (suma fluxurilor


u ∈ U i+ u ∈ U i−

arcelor care "intră" într-un nod i este egală cu suma fluxurilor


arcelor care "ies" din acest nod, cu excepţia nodului iniţial şi al
celui final.
Definiţia 3: Se numeşte valoare a fluxului suma fluxurilor arcelor care
"pleacă" din nodul iniţial s şi se notează cu Φ.
Observaţie: Se poate demonstra uşor că această valoare este egală şi cu
suma fluxurilor arcelor care "intră" în nodul final t. În concluzie avem:
Φ= ∑ +
ϕ u = ∑ ϕ

u
u∈ U s u∈ U t

Valoarea fluxului reprezintă cantitatea care se transportă efectiv pe


reţea de la surse la destinaţii.
Definiţia 4: Se numeşte flux de valoare maximă într-o reţea un flux ϕ
în această reţea, cu proprietatea că, pentru orice alt flux ϕ' pe această reţea,
avem Φ ≥ Φ'.
Valoarea fluxului de valoare maximă reprezintă cea mai mare cantitate
care se poate transporta efectiv pe reţea, de la surse la destinaţii.
Economic vorbind, ne interesează, referitor la o reţea, răspunsurile la
următoarele întrebări:
1. Putem transporta întreaga cantitate necesară la destinaţii?
2. Dacă da, cum transportăm efectiv această cantitate de la surse la
destinaţii?
3. Dacă nu, din ce motiv nu putem realiza acest transport?
4. Cum putem înlătura cu eforturi minime acest motiv?
Răspunsul la primele două întrebări se poate afla prin găsirea fluxului
de valoare maximă şi compararea valorii lui cu suma necesarurilor
destinaţiilor. În plus, valoarea acestuia pe un arc reprezintă cantitatea care
trebuie transportată pe ruta respectivă, pentru a obţine această valoare a
fluxului.
Răspunsul la ultimele două întrebări porneşte de la observaţia că cea
70
mai mare cantitate care poate traversa reţeaua de la un cap la altul este egală cu
dimensiunea celui mai îngust loc de trecere prin reţea. Dacă vrem, deci, să
mărim fluxul va trebui să lărgim tocmai acest cel mai îngust loc de traversare al
reţelei.
Pentru formalizarea consideraţiilor de mai sus vom introduce noţiunea
de tăietură într-o reţea:
Definiţia 5: Dată o reţea de transport G(X,U) cu s = nodul iniţial şi t =
nodul final, se numeşte tăietură în reţea o partiţie a mulţimii vârfurilor reţelei
de transport, formată din două submulţimi V şi W (V∩W = ∅, V∪W = X)
astfel încât s ∈ V şi t ∈ W.
O tăietură poate fi privită, intuitiv, ca o secţiune a reţelei, care lasă
nodul iniţial cu o submulţime din noduri într-o parte, nodul final cu restul
nodurilor în cealaltă parte şi retează toate arcele care trec dintr-o parte în
cealaltă.
A cunoaşte o tăietură este echivalent cu a cunoaşte care sunt elementele
celor două mulţimi, V şi W, care formează partiţia.
Vom nota o tăietură prin T = (V,W), convenind ca mulţimea scrisă pe
prima poziţie să conţină nodul iniţial s al reţelei iar cea scrisă pe a doua, nodul
final t.
Definiţia 6: Se numeşte capacitate a unei tăieturi T = (V,W) într-o
reţea de transport G(X,U), notată C(T), suma capacităţilor tuturor arcelor care
au extremitatea iniţială în V şi cea finală în W.

C(T) = ∑ c
( )
u = x i ,x j
u

x i ∈V
x j∈W

Pentru a nu exista nici o ambiguitate, insistăm asupra faptului că se vor


lua în considerare doar arcele care trec de la mulţimea ce conţine nodul iniţial
spre mulţimea care conţine nodul final, adică în sensul normal de transport
(surse → destinaţie).
Definiţia 7: Se numeşte tăietură de valoare minimă într-o reţea o
tăietură T în această reţea, cu proprietatea că, pentru orice altă tăietură T' în
această reţea, avem C(T) ≤ C(T').
Următoarele teoreme fac legătura matematică dintre fluxurile unei
71
reţele şi tăieturile sale:
Teorema 1. Dată o tăietură T = (V,W) şi un flux ϕ într-o reţea de
transport avem:

Φ= ∑ ϕ
( )
u = x i ,x j
u – ∑ ϕ
( )
u = x i ,x j
u

x i ∈V x i ∈W
x j∈W x j∈V

sau, altfel spus, valoarea unui flux oarecare este egală cu suma fluxurilor
arcelor care trec de la V la W din care se scade suma fluxurilor arcelor care trec
invers, de la W la V, oricare ar fi tăietura T = (V,W).
Demonstraţie: Avem succesiv:
 
 
Φ= ∑
ϕu =
u = (s, x j )
ϕu +
u = (s, x j )
∑ 
x i ∈V  u∈U +
ϕu − ∑ ∑ ϕu  =


u∈U x− i
x j∈X x j∈X x i ≠s  xi 

= ∑ (ϕ
( )
u = x i ,x j
u −ϕ u ) + ∑ ϕ
( )
u = x i ,x j
u - ∑ ϕ
( )
u = x i ,x j
u = ∑ ϕ
( )
u = x i ,x j
u – ∑ ϕ
( )
u = x i ,x j
u

x i ∈V x i ∈V x i ∈W x i ∈V x i ∈W
x j∈V x j∈W x j∈V x j∈W x j∈V

Corolar: Într-o reţea de transport valoarea oricărui flux este mai mică
sau egală decât valoarea oricărei tăieturi.
Demonstraţie: Fie T o tăietură oarecare şi ϕ un flux oarecare. Avem
succesiv:

Φ= ∑ ϕ
( )
u = x i ,x j
u – ∑ ϕ
( )
u = x i ,x j
u ≤ ∑ ϕ
( )
u = x i ,x j
u ≤ ∑ c
( )
u = x i ,x j
u = C(T)
x i ∈V x i ∈W x i ∈V x i ∈V
x j∈W x j∈V x j∈W x j∈W

Corolar: Într-o reţea de transport valoarea fluxului maxim este mai


mică sau egală decât valoarea tăieturii minime.
Demonstraţia e evidentă. În plus, din cele de mai sus se vede că
egalitatea are loc numai dacă, pentru tăietura minimă, există un flux pentru care
toate arcele de la V la W sunt folosite la maxim (fluxul e egal cu capacitatea
arcelor) iar pe toate arcele de la W la V nu se transportă nimic.
72
CAPITOLUL 5
GESTIUNEA STOCURILOR

5.1. INTRODUCERE ÎN PROBLEMATICA


STOCURILOR

5.1.1. STOCURILE ÎNTR-UN SISTEM DE PRODUCŢIE

În activitatea curentă a agenţilor economici apar probleme operative de


producţie, de planificare sau proiectare, care se cer rezolvate în aşa fel încât ele
să corespundă unui anumit scop, de exemplu: un program de producţie realizat
cu beneficii cât mai mari, cu cheltuieli cât mai mici sau într-un timp cât mai
scurt etc.
Pornind de la anumite date cunoscute, caracteristice procesului
economic, respectiv: beneficii unitare, coeficienţi tehnologici, disponibil de
resurse, cheltuieli unitare, consumuri specifice etc., se pot formula probleme
care să ţină seama de scopul agenţilor economici atunci când porneşte procesul
tehnologic.
Teoria stocurilor a apărut din necesitatea asigurării unei aprovizionări
ritmice şi cu cheltuieli minime a stocurilor de materii prime şi materiale în
procesul de producţie, sau a stocurilor de produse finite şi bunuri de larg
consum în activitatea de desfacere a mărfurilor.
STOCURILE reprezintă cantităţi de resurse materiale sau produse
(finite sau într-un stadiu oarecare de fabricaţie) acumulate în depozitele de
aprovizionare ale unităţilor economice într-un anumit volum şi o anumită
structură, pe o perioadă de timp determinată, în vederea unei utilizări
ulterioare.
Pe perioada respectivă resursele materiale sunt disponibile, dar nu sunt
utilizate, deci sunt neactive, scoase din circuitul economic, sau care prelungesc
acest circuit (aspect considerat negativ).
Stocul este o rezervă de material destinat să satisfacă cererea
beneficiarilor, aceştia identificându-se, după caz, fie unei clientele (stoc de
73
produse finite), fie unui serviciu de fabricaţie (stocuri de materii prime sau de
semifabricate), fie unui serviciu de întreţinere (articole de consum curent sau
piese de schimb), fie unui serviciu de după vânzare (piese detaşate).
Tratarea procesului de stocare ca proces “obiectiv necesar” se impune,
nu numai ca urmare a naturii economice a acestuia, ci şi pentru că realizarea lui
atrage cheltuieli apreciabile, concretizate în afectarea unor importante spaţii de
depozitare-păstrare, de utilaje pentru transport-depozitare, de fonduri financiare
etc.
Deşi diferite, procesele de stocare au totuşi o serie de caracteristici
comune, dintre care esenţială este acumularea unor bunuri în scopul satisfacerii
cererii viitoare. O problemă de teoria stocurilor există doar atunci când
cantitatea resurselor poate fi controlată şi există cel puţin o componentă a
costului total care scade pe măsură ce cantitatea stocată creşte.
Evoluţia nivelului stocului este interesantă din două puncte de vedere:
a) din punctul de vedere al producătorului, care este preocupat de
valoarea medie a nivelului stocului, deoarece această valoare permite
cunoaşterea imobilizării totale a stocului şi scopul producătorului va fi
reducerea imobilizării la valoarea sa minimă;
b) din punctul de vedere al beneficiarului, care dorind să fie
satisfăcut imediat, apreciază că trebuie să evite, în măsura posibilităţilor,
rupturile de stoc. Obiectivul beneficiarului va fi reducerea la minim a riscului
de ruptură de stocuri.
Aceste două puncte de vedere sunt contradictorii: riscurile de ruptură de
stocuri nu sunt reduse decât dacă imobilizările sunt foarte mari. Este deci
necesar să se stabilească un echilibru, obiectivul conducerii stocului constând
în căutarea acestui echilibru.

5.2. IMPORTANŢA STOCURILOR ÎN PROCESUL


DE PRODUCŢIE

Procesul de producţie propriu-zis este supus în mod aleator unei sume


de perturbaţii cum ar fi: instabilitatea personalului, prezenţa rebuturilor,
existenţa timpilor morţi datoraţi defectării utilajelor etc.
74
În felul acesta, producţia devine un rezultat aleator al unei combinaţii de
fenomene care au loc în conformitate cu legile probabilităţii. Nici un proces de
producţie nu e fiabil dacă este supus direct acţiunii perturbatoare a parametrilor
ce apar în mod aleator. Este deci absolut necesar de a elimina aceste influenţe
directe, adică să se deconecteze sistemul de la fluctuaţiile externe. Elementul
care asigură deconectarea şi care joacă rolul de tampon, de amortizor al
variaţiilor îl reprezintă stocurile.
Ca proces economic complex, gestiunea stocurilor are o sferă largă de
cuprindere, aceasta incluzând atât probleme de conducere, dimensionare, de
optimizare a amplasării stocurilor în teritoriu, de repartizare a lor pe deţinători,
de formare şi evidenţă a acestora, cât şi probleme de recepţie, de depozitare şi
păstrare, de urmărire şi control, de redistribuire şi mod de utilizare.
Cu toate că stocurile sunt considerate resurse neactive, este necesar, în
mod obiectiv, să se recurgă la constituirea de stocuri (de resurse materiale) bine
dimensionate, pentru a se asigura ritmicitatea producţiei materiale şi a
consumului.
Obiectivitatea formării de stocuri este justificată de acţiunea mai multor
factori care le condiţionează existenţa şi nivelul de formare, le stabilizează
funcţia şi scopul constituirii. Între aceştia amintim:
• contradicţia dintre specializarea producţiei şi caracterul nespecializat al
cererii;
• diferenţa spaţială dintre producţie şi consum;
• caracterul sezonier al producţiei sau al consumului; pentru majoritatea
produselor producţia este continuă, în timp ce consumul este sezonier;
la produsele agricole situaţia este inversă;
• periodicitatea producţiei şi consumului, a transportului;
• necesitatea condiţionării materialelor înaintea intrării lor în consum;
• punerea la adăpost faţă de dereglările în procesul de aprovizionare-
transport sau faţă de factorii de forţă majoră (stare de necesitate,
calamităţi naturale, seisme, caracterul deficitar al resurselor);
• necesitatea executării unor operaţii specifice pentru a înlesni procesul
de livrare sau consum al materialelor (recepţie, sortare, marcare,
75
ambalare – dezambalare, formarea loturilor de livrare, pregătirea
materialelor pentru consum ş.a.m.d.);
• necesitatea eficientizării procesului de transport etc.
Ţinând seama de această dublă influenţă a procesului de stocare, este
necesară găsirea de modele şi metode în vederea formării unor stocuri, care
prin volum şi structură, să asigure desfăşurarea normală a activităţii din
economie, dar în condiţiile unor stocări minim necesare şi a unor cheltuieli cât
mai mici.
Rolul determinant al stocurilor este evidenţiat de faptul că acestea
asigură certitudine, siguranţă şi garanţie în alimentarea continuă a producţiei şi
ritmicitatea desfacerii rezultatelor acesteia. Altfel spus, procesul de stocare
apare ca un regulator al ritmului aprovizionărilor cu cel al producţiei, iar stocul
reprezintă acel “tampon inevitabil” care asigură sincronizarea cererilor pentru
consum cu momentele de furnizare a resurselor materiale.
Alte motive pentru crearea stocurilor ar putea fi:
• investirea unei părţi din capital în stocuri pentru a reduce
cheltuielile de organizare;
• capitalul investit în stocuri e uşor de evidenţiat;
• asigurarea desfăşurării neîntrerupte a procesului de producţie;
• asigurarea unor comenzi de aprovizionare la nivelul consumului
imediat nu este întotdeauna posibilă şi eficientă din punct de
vedere economic;
• comenzile onorate de către furnizorii din alte localităţi nu pot fi
introduse imediat în procesul de fabricaţie;
• anticiparea unei creşteri a preţurilor (exceptând speculaţiile) etc.

5.3. TIPURI DE STOCURI

În cadrul gamei foarte largi de stocuri, se disting cu deosebire:


A. din punct de vedere al producţiei stocurile pot fi de trei feluri:
a) cel de materii prime şi materiale destinat consumului unităţilor de
producţie; este vorba de stocul de producţie, stoc în amonte;
76
b) cel de produse finite, destinate livrării către beneficiari; este vorba
de stocul de desfacere, stoc în aval;
c) cel destinat asigurării funcţionării continue a unor maşini sau a
unor linii de fabricaţie; este vorba de stocul interoperaţional.
Ponderea cea mai mare o deţine stocul de producţie.
B. din punct de vedere al rolului jucat pe plan economic stocurile
pot fi:
a) stocuri cu rol de regulator; au ca rol reglarea fluxurilor de intrare şi
de ieşire ale produselor între două stadii succesive ale procesului
tehnologic;
b) stocuri cu rol strategic; sunt formate din piese sau din subansamble
folosite de serviciul de întreţinere , necesare înlocuirii rapide a lor în
caz de avarie la instalaţiile vitale ale întreprinderii;
c) stocuri speculative; sunt mai puţin legate de activitatea agenţilor
economici şi se referă în general la produse şi materiale rare, a căror
valoare nu este fluctuantă.
C. Din punct de vedere al modului de depozitare, care ţine seama şi
de unele proprietăţi fizico-chimice ale elementelor. Aşa avem: produse
periculoase, voluminoase, fragile etc.
D. Din punct de vedere al modului de gestionare avem:
a) stocuri cu gestiune normală;
b) stocuri cu “afectare directă” (comandate special pentru o anume
comandă);
c) stocuri “fără gestiune” (din magaziile intermediare, cu o supraveghe-
re globală);
d) stocuri de produse consumabile;
E. Din punct de vedere al caracteristicilor formării şi destinaţiei lor
stocurile pot fi:
a) stoc curent;
b) stoc de siguranţă;
c) stoc de pregătire sau de condiţionare;
d) stoc pentru transport intern;
e) stoc de iarnă;
77
5.4. OBIECTIVE ŞI REZULTATE ALE GESTIUNII
ŞTIINŢIFICE A STOCURILOR

Având în vedere particularităţile diferitelor procese de stocare,


activitatea de conducere a acestora are totuşi unele trăsături comune; aşa de
pildă, orice proces de stocare necesită prevederea desfăşurării lui şi a
condiţiilor în care urmează a se efectua.
Formarea stocurilor este predeterminată de o anumită comandă, iar
desfăşurarea procesului de stocare poate avea loc în baza organizării sale
raţionale. Realizarea în condiţii de eficienţă economică maximă şi de utilitate
impune o coordonare permanentă a procesului de stocare şi un control
sistematic al modului de derulare al acestuia.
Obiectivele principale ale conducerii proceselor de stocare pot fi
sintetizate astfel:
• asigurarea unor stocuri minim necesare, asortate, care să asigure
desfăşurarea normală a activităţii economico-productive a agenţilor
economici prin alimentarea continuă a punctelor de consum şi în
condiţiile unor cheltuieli cât mai mici;
• prevenirea formării de stocuri supranormative, cu mişcare lentă sau
fără mişcare şi valorificarea operativă a celor existente (devenite
disponibile);
• asigurarea unor condiţii de depozitare-păstrare corespunzătoare în
vederea prevenirii degradãrilor de materiale existente în stocuri;
• folosirea unui sistem informaţional simplu, operativ, eficient, util şi
cuprinzător care să evidenţieze în orice moment starea procesului de
stocare;
• aplicarea unor metode eficiente de urmărire şi control care să permită
menţinerea stocului în anumite limite, să prevină imobilizările
neraţionale.
Soluţionarea oricărei probleme de stoc trebuie să conducă la obţinerea
răspunsului pentru următoarele două chestiuni (şi care constituie de fapt
obiectivele principale ale gestiunii):
1) determinarea mărimii optime a comenzii de aprovizionare;
78
2) determinarea momentului (sau frecvenţei) optime de aprovizionare.
Desigur, pentru unele probleme particulare (de exemplu cele statice)
este suficient un singur răspuns şi anume la prima problemă.
Se realizează următoarele deziderate:
• reducerea frecvenţei fenomenului de rupere a stocului şi prin aceasta
satisfacerea în mai bune condiţii a cererii către beneficiari;
• reducerea cheltuielilor de depozitare;
• mărirea vitezei de rotaţie a fondurilor circulante ale agenţilor
economici;
• reducerea imobilizărilor de fonduri băneşti;
• reducerea unor riscuri inerente oricărui proces de stocare;
• obţinerea de economii la nivelul cheltuielilor generale ale
întreprinderii (de exemplu, la produsele cu o durată de depozitare a
stocului de materii prime mai mare decât durata ciclului de
fabricaţie);
• descoperirea şi valorificarea rezervelor interne etc.

5.5. ELEMENTELE PRINCIPALE ALE UNUI


PROCES DE STOCARE

Stabilirea politicii de gestiune a stocurilor este nemijlocit legată de


cunoaşterea elementelor prin care se caracterizează procesele de stocare şi care
determină nivelul de formare al stocurilor:
A. CEREREA DE CONSUM, element de bază în funcţie de care se
determină nivelul şi ritmul ieşirilor, volumul şi ritmul necesar pentru intrări şi
nivelul stocului. Cererea de consum reprezintă numărul de produse solicitate în
unitatea de timp. Acest număr nu coincide întotdeauna cu cantitatea vândută
deoarece unele cereri pot rămâne nesatisfăcute datorită deficitului în stoc sau
întârzierilor în livrare. Evident, dacă cererea poate fi satisfăcută în întregime,
ea reprezintă cantitatea vândută.
După natura ei, cererea poate fi:
a) determinată - cererea pentru o perioadă e cunoscută şi poate fi
constantă pentru toate perioadele sau variabilă pentru diferite perioade;
79
b) probabilistă - cererea e de mărime sau frecvenţă necunoscute, dar
previzibile şi reprezentată printr-o repartiţie de probabilitate dată.
Caracteristicile şi tipul cererii se stabilesc pe bază de observaţii, prin studii
asupra perioadelor trecute. Stabilirea caracteristicilor şi tipului de cerere pe
baza observaţiilor, prin studii asupra perioadelor trecute, nu este satisfăcătoare,
din cel puţin două motive:
- presupunând că şi în viitor cererea ar urma aceeaşi repartiţie de
probabilitate ca în perioadele trecute, parametrii ei nu se menţin
întotdeauna;
- se exclude posibilitatea influenţei unor fluctuaţii sezoniere asupra
cererii.
Cererea probabilistă poate fi stabilă din punct de vedere statistic sau
nestabilă din punct de vedere statistic (sezonieră).
c) necunoscută - cererea pentru care nu dispunem nici de datele
necesare stabilirii unei repartiţii de probabilitate (este cazul, de exemplu, al
produselor noi).
B.COSTURILE reprezintă cheltuielile ce trebuie efectuate pentru
derularea procesului de aprovizionare-stocare (respectiv cele cu comandarea,
contractarea, transportul, depozitarea, stocarea materialelor etc.).
În calculul stocurilor se au în vedere:
a) Costurile de stocare care cuprind suma cheltuielilor ce trebuie
efectuate pe timpul staţionării resurselor materiale în stoc şi anume:
- cheltuieli cu primirea-recepţia;
- cheltuieli de transport intern;
- cheltuieli de manipulare, care cuprind costul forţei de muncă nece-
sare pentru deplasarea stocurilor, a macaralelor, cărucioarelor,
elevatoarelor şi a celorlalte utilaje necesare în acest scop;
- cheltuieli de depozitare propriu-zisă: chiria spaţiului de depozitare
sau amortizările, în cazul unui spaţiu propriu;
- cheltuieli de conservare;
- cheltuieli cu paza;
- cheltuieli de evidenţă care apar datorită faptului că stocurile sunt
practic inutilizabile fără o evidenţă bine pusă la punct, care să ne
spună dacă produsul necesar se găseşte sau nu în stoc;
80
- cheltuieli administrative;
- impozite şi asigurări;
- cheltuieli datorate deprecierii, deteriorării, uzurii morale care sunt
caracteristice pentru produsele “la modă” sau pentru cele care se modifică
chimic în timpul stocării (alimente, de exemplu); la care se adaugă costul
capitalului investit; acest cost reprezintă un anumit procent din capitalul
investit, însă determinarea cifrei exacte necesită o analiză atentă. Procentul
exact depinde, în primul rând de ce alte utilizări ce se pot găsi pentru capitalul
”imobilizat” în stocuri.
Capitalul investit în stoc este neproductiv, costul său este dat de
mărimea beneficiului ce s-ar putea obţine dacă acest capital ar fi fost investit
într-un mod productiv sau de dobânda ce trebuie plătită dacă ar fi fost
împrumutat.
Costul stocării depinde de mărimea stocului şi durata stocării. Aceste
cheltuieli se pot grupa după cum urmează:
- cheltuieli constante pentru durata totală a procesului de gestiune
(amortismentul clădirii, cheltuieli pentru întreţinerea depozitului,
iluminat, încălzit etc.;
- cheltuieli variabile proporţionale cu cantitatea depozitată şi cu durata
depozitării (deci cu stocul mediu), exprimate prin dobânda pentru
fondurile imobilizate în stoc;
- cheltuieli variabile neproporţionale cu mărimea lotului (salarii ale
forţei de muncă, pierderi datorate uzurii reale şi demodării, cheltuieli
pentru chirie etc.) şi cu durata de stocare.
La cheltuielile de existenţă a stocului în depozit, prezentate mai sus, se
pot adăuga şi cheltuielile pentru surplus de stoc (excedent), care intervin atunci
când, după satisfacerea cererii, rămâne o anumită cantitate nevândută (de
exemplu, desfacerea unor articole de sezon). În modelele dinamice unde se
lansează mai multe comenzi în timpul unui sezon, penalizarea pentru surplus se
ataşează numai ultimei comenzi nedesfăcute complet.
b) Costul de penurie sau costul ruperii stocului este definit atunci
când volumul cererii depăşeşte stocul existent. Referitor la acest stoc, există
trei situaţii. Prima apare atunci când stocul (de materii prime sau
81
semifabricate) este nul la primirea comenzii şi firma se reaprovizionează de
urgenţă pentru a produce cantităţile solicitate.
Componentele cheltuielilor de penurie sunt, în acest caz, următoarele:
- cheltuieli suplimentare pentru satisfacerea cererii în condiţii
neobişnuite;
- penalizări primite de către firmă din partea beneficiarului, dacă
termenele de livrare prevăzute în contracte nu se respectă;
- cheltuieli suplimentare pentru manipulare, ambalare, expediţie etc.
A doua situaţie are loc atunci când desfacerea nu se poate realiza
(pierderea beneficiarului) din cauza nelivrării imediate a unui articol. Estimarea
cheltuielilor de penurie este aici destul de dificilă şi adesea imposibilă.
A treia, şi cea mai dificilă, apare atunci când firma este în lipsă de
materii prime (sau piese de schimb) ce afectează întregul proces de producţie,
cu toate consecinţele sale, reflectate în penalizări şi uneori chiar în costul
producţiei care ar fi rezultat în timpul stagnării.
c) Cheltuieli datorate variaţiilor ritmului de producţie. Din această
categorie fac parte:
- cheltuielile fixe legate de creşterea ritmului de producţie, de la
nivelul zero, la un anumit nivel dat. Dacă este vorba de achiziţii,
aici vor intra cheltuielile administrative legate de lansarea
comenzilor;
- cheltuieli de lansare care includ toate cheltuielile care se fac cu:
întocmirea comenzii, trimiterea acesteia la furnizor, pregătirea
livrării unei partizi de materiale, cheltuieli de transport a lotului,
deplasării la furnizori, telefoane, poştă etc.; în general aceste
cheltuieli sunt fixe pentru o comandă.
- cheltuieli legate de angajarea şi instruirea unui personal
suplimentar sau de concediere a unor salariaţi.
d) Preţul de achiziţie sau cheltuielile directe de producţie. Preţurile
pe unitatea de produs pot depinde de cantitatea achiziţionată, dacă se acordă
anumite reduceri de preţ în funcţie de mărimea comenzii. Cheltuielile de
producţie pe unitatea de produs pot fi şi ele mai scăzute, datorită unei eficienţe
superioare a muncitorilor şi maşinilor într-o producţie de serie mare.
82
C) CANTITATEA DE REAPROVIZIONAT reprezintă necesarul de
aprovizionat care se stabileşte în funcţie de necesarul pentru consum pentru
întreaga perioadă de gestiune.
Cantitatea de aprovizionat (cantitatea intrată în stoc) poate fi din
producţia proprie sau obţinută prin alte mijloace şi se poate referii la fiecare
resursă separat sau la ansamblul lor.
Această cantitate e limitată de capacităţile de depozitare.
D) LOTUL reprezintă cantitatea cu care se face aprovizionarea la
anumite intervale în cadrul perioadei de gestiune stabilită (trimestru, semestru,
an) şi care este în funcţie de caracterul cererii.
E) PARAMETRII TEMPORALI sunt specifici dinamicii proceselor de
stocare. Aceştia sunt:
a) perioada de gestiune - determină şi orizontul procesului de
gestiune. De obicei se consideră a fi un an;
b) intervalul de timp între două aprovizionări consecutive;
c) durata de reaprovizionare - reprezintă timpul ce se scurge din
momentul calendaristic la care s-a emis comanda de reaprovizionare până la
sosirea în întreprindere a cantităţii de reaprovizionat;
d) momentul calendaristic la care se emit comenzile de reaprovi-
zionare. (data de reaprovizionare);
e) coeficientul de actualizare.
Dacă în modelele probabiliste folosirea tuturor parametrilor temporali
este obligatorie, unii dintre ei (de exemplu, durata de reaprovizionare sau data
de reaprovizionare) nu prezintă nici o importanţă în modelele deterministe. De
asemenea durata de aprovizionare poate fi o constantă sau o variabilă aleatoare,
determinând în baza legăturii pe care o are cu volumul şi frecvenţa cererii,
cheltuielile de penurie.
F) GRADUL DE PRELUCRARE A PRODUSELOR. Cu cât
bunurile păstrate în stoc sunt într-un stadiu mai avansat de finisare, cu atât mai
repede pot fi satisfăcute comenzile, dar cu atât mai mari vor fi cheltuielile de
stocare. Cu cât produsele sunt mai puţin finisate (cazul limită îl constituie
materia primă), cu atât mai mici sunt cheltuielile de stocare, dar timpul necesar
pentru livrarea unei comenzi este mai mare. În plus, erorile de previziune tind
să crească pe măsură ce gradul de prelucrare a produselor este mai avansat;
83
pentru a reduce influenţa factorilor nefavorabili este necesar de aceea să
crească şi stocul tampon. Numărul tipurilor de produse ce trebuie stocate creşte
rapid, pe măsură ce gradul de finisare este mai avansat.
Variabilele care influenţează stocurile sunt de două feluri:
− variabile controlabile: cantitatea intrată în stoc, frecvenţa sau
momentul achiziţiilor, gradul de prelucrare a produselor;
− variabile necontrolabile: costurile, cererea, durata de
reaprovizionare, cantitatea livrată.

5.6. MODELE DE GESTIUNE A STOCURILOR

5.6.1. MODELUL WILLSON

Ipotezele modelului:
1. cerere constantă în timp (cereri egale pe intervale egale de timp);
2. perioadă fixă de aprovizionare (aprovizionarea se face la intervale
egale de timp);
3. cantităţi egale de aprovizionare;
4. aprovizionarea se face în momentul în care stocul devine 0 (nu se
admit intervale de timp pe care stocul să fie 0);
5. aprovizionarea se face instantaneu (durata dintre momentul lansării
comenzii şi intrarea mărfii în depozit este zero)
Datele modelului:
− T = perioada totală de timp pe care se studiază stocarea;
− N = cererea totală pe perioada T;
− cs = costul unitar de stocare (costul stocării unei unităţi de marfă pe
o unitate de timp)
− cl = costul lansării unei comenzi
Variabilele modelului:
− τ = intervalul dintre două aprovizionări succesive;
− n = cantitatea comandată şi adusă la fiecare aprovizionare;
− s(t) = nivelul stocului din depozit la momentul t
84
Obiectivul modelului
− minimizarea costului total de aprovizionare CT
Relaţiile dintre mărimile modelului
n N
Ipoteza 1 ⇒ = = cererea pe unitatea de timp ⇒ s(t) = liniară
τ T
Ipoteza 2 ⇒ τ acelaşi între oricare două comenzi
Ipoteza 3 ⇒ n acelaşi pentru toate comenzile
Ipoteza 4 ⇒ s(t) ≥ 0 pentru orice t
Ipoteza 5 ⇒ la sfârşitul unei perioade τ s(t) are un salt de la 0 la n
Rezolvare
Situaţia de mai sus poate fi vizualizată prin trasarea graficului variaţiei
stocului în timp:

s(t)

n
τ T

Figura 1

În figura 1 a fost reprezentată evoluţia stocului, dacă toată cantitatea


necesară ar fi adusă la începutul perioadei (graficul de deasupra) sau dacă s-ar
aduce câte n unităţi din τ în τ unităţi de timp (graficul de jos). Se observă că
evoluţia este periodică, de perioadă τ. În concluzie vom calcula costul total cu
aprovizionarea calculând costul pe o perioadă şi înmulţind apoi cu numărul de
perioade:

− pe o perioadă avem o lansare, deci un cost cl şi cheltuieli de stocare


pe o durată τ, stocul variind liniar de la n la 0. Din acest motiv
85
n
costul cu stocarea va fi: cs · · τ (În general costul de stocare se
2
τ
calculează cu formula c S ⋅ ∫ s(t )dt ).
0

N T
− numărul de perioade este egal cu =
n τ
n N
− costul total cu aprovizionarea va fi CT = (cl + cs · · τ) ·
2 n
În concluzie rezolvarea problemei se reduce la a găsi minimul funcţiei:
n N
CT(n,τ) = (cl + cs · · τ) ·
2 n
N T
dacă variabilele n şi τ verifică = şi n şi τ sunt strict pozitive şi n ∈ (0,N],
n τ
N T
τ ∈ (0,T]. Pentru rezolvare vom scoate pe τ în funcţie de n din relaţia = :
n τ
T
τ=n·
N
şi înlocuim în expresia costului total cu aprovizionarea obţinând:
n T N 1 c ⋅T
CT(n) = (cl + cs · ·n· )· = cl ⋅ N ⋅ + S ⋅n
2 N n n 2
Cei doi termeni în care a fost separat costul total reprezintă cheltuielile
totale cu lansările respectiv cheltuielile totale cu stocarea, observându-se că
primele sunt descrescătoare în n iar celelalte liniar crescătoare. În concluzie,
dacă vom aduce toată cantitatea într-o singură tranşă vor fi foarte mari costurile
de stocare iar dacă vom aduce de foarte multe ori câte foarte puţin vor fi foarte
mari cheltuielile cu lansarea. Soluţia optimă n* va fi deci foarte probabil
undeva între 0 şi N. Pentru a o determina facem tabloul de variaţie al costului
total în funcţie de n pe intervalul (0,N].
Calculăm derivata costului total:

cl ⋅ N cS ⋅ T 2 ⋅ cl ⋅ N
C ′T = − + care are zerourile: n1,2 = ± ⇒
n 2
2 cS ⋅ T

2 ⋅ cl ⋅ N
n1 = − ∉ (0, N ]
cS ⋅ T
86
2 ⋅ cl ⋅ N 2 ⋅ cl ⋅ N c N ⋅T
n2 = ∈ (0, N ] ⇔ ≤N⇔ l ≤
cS ⋅ T cS ⋅ T cS 2

În concluzie:
cl N ⋅T
a) dacă ≥ adică dacă costul de lansare este de mai mult de
cS 2

N ⋅T
ori mai mare decât costul de stocare tabloul de variaţie va fi:
2
n 0 N
CT’(n) - - - - - -
T ⋅N
CT(n) cl + c S ⋅
2

şi deci se va face o singură aprovizionare la începutul perioadei T în


T ⋅N
care se va aduce toată cantitatea N, costul total fiind de cl + c S ⋅ .
2
cl N ⋅T
b) dacă < obţinem tabloul:
cS 2

2 ⋅ cl ⋅ N
n 0 N
cS ⋅ T

CT’(n) - - - - - 0 + + + +

CT(n) 2 ⋅ cl ⋅ c S ⋅T ⋅ N

N c ⋅T ⋅ N
în concluzie se vor face = S aprovizionări la intervale de
n 2 ⋅ cl

2 ⋅ cl ⋅ T 2 ⋅ cl ⋅ N
topt = în care se va aduce câte nopt = , variantă
cS ⋅ N cS ⋅T

prin care se va face aprovizionarea cu costul total minim posibil:


CT = 2 ⋅ cl ⋅ c S ⋅ T ⋅ N

Obs. Dacă nu se acceptă decât soluţii în numere întregi pentru n sau t se


va calcula costul pentru:
87
 2 ⋅ cl ⋅ N   2 ⋅ cl ⋅ N 
n=   şi n =  +1
 c S ⋅ T   c S ⋅ T 

 2 ⋅ cl ⋅ T   2 ⋅ cl ⋅ T 
t=   şi t =   +1
 c S ⋅ N   c S ⋅ N 

alegându-se dintre toate variantele cea mai ieftină. ( [x] = partea întreagă lui x).

5.6.2. MODELUL WILLSON CU RUPTURĂ DE STOC

Ipotezele modelului:
1. cerere constantă în timp (cereri egale pe intervale egale de timp);
2. perioadă fixă de aprovizionare (aprovizionarea se face la intervale
egale de timp);
3. cantităţi egale de aprovizionare;
4. aprovizionarea nu se face în momentul în care stocul devine 0,
admiţându-se scurgerea unui interval de timp în care depozitul va fi
gol şi cererea nu va fi satisfăcută;
5. aprovizionarea se face instantaneu (durata dintre momentul lansării
comenzii şi intrarea mărfii în depozit este zero)
Datele modelului:
− T = perioada totală de timp pe care se studiază stocarea;
− N = cererea totală pe perioada T;
− cs = costul unitar de stocare (costul stocării unei unităţi de marfă pe
o unitate de timp)
− cl = costul lansării unei comenzi
− cp = costul unitar de penalizare (pierderea cauzată de nesatisfacerea
unei unităţi din cerere timp de o zi)
Variabilele modelului:
− τ = intervalul dintre două aprovizionări succesive;
− τ1 = durata de timp în care în depozit se află marfă;
− τ2 = durata de timp în care în depozitul este gol;
− n = cantitatea comandată şi adusă la fiecare aprovizionare;
88
− s = cantitatea maximă de marfă aflată în depozit;
− s(t) = nivelul stocului din depozit la momentul t
Obiectivul modelului
− minimizarea costului total de aprovizionare CT

s(t)

s τ2
n
τ1 T
τ
Figura 2

Relaţiile dintre mărimile modelului


n s N
Ipoteza 1 ⇒ = = = cererea pe unitatea de timp ⇒ s(t) =
τ τ1 T
liniară
Ipoteza 2 ⇒ τ, τ1, τ2, aceiaşi între oricare două comenzi şi τ = τ1 + τ2.
Ipoteza 3 ⇒ n, s aceiaşi pentru toate comenzile.
Ipoteza 4 ⇒ pe intervalul τ2 depozitul este gol (deci stocul zero);
totuşi graficul a fost desenat în prelungirea perioadei τ1
(deci cu valori negative) deoarece în această perioadă se
presupune că cererea este aceeaşi ca în perioadele în care
există marfă în depozit, nivelul cererii nesatisfăcute fiind
privit ca stocul care s-ar fi consumat dacă aveam marfă
în depozit.
Ipoteza 5 ⇒ la sfârşitul unei perioade τ este livrată instantaneu
cantitatea n – s în contul cererii nesatisfăcute în perioada
τ2 şi introdusă în depozit cantitatea s.
89
Rezolvare
Situaţia de mai sus poate fi vizualizată prin trasarea graficului variaţiei
stocului în timp din figura 2:
În figură a fost reprezentată evoluţia stocului dacă toată cantitatea
necesară ar fi adusă la începutul perioadei (graficul de deasupra) sau dacă s-ar
aduce câte n unităţi din τ în τ unităţi de timp (graficul de jos). Se observă că
evoluţia este periodică, de perioadă τ. În concluzie vom calcula costul total cu
aprovizionarea calculând costul pe o perioadă şi înmulţind apoi cu numărul de
perioade:
− pe o perioadă avem o lansare, deci un cost cl, cheltuieli de stocare
pe o durată τ1, stocul variind liniar de la s la 0 şi cheltuieli de
penalizare, cererea neonorată variind liniar de la 0 la n - s. Din acest
s
motiv costul cu stocarea va fi: cs · · τ1 iar costul de penalizare va
2
n -s
fi: cp · · τ2 (În general costul de penalizare, ca şi cel de stocare,
2
τ
se calculează cu formula c p ⋅ ∫ − s (t )dt ).
0

N T
− numărul de perioade este egal cu =
n τ
s n -s
− costul total cu aprovizionarea va fi CT = (cl + cs · · τ1 + cp · ·
2 2
N
τ2 ) ·
n
În concluzie rezolvarea problemei se reduce la a găsi minimul funcţiei:
s n -s N
CT(n,s,τ,τ1,τ2) = (cl + cs · · τ1 + cp · · τ2 ) ·
2 2 n
unde variabilele n, s, τ, τ1 şi τ2 verifică următoarele condiţii şi relaţii:
Condiţii Relaţii
1. 0<n≤N 1. τ1 + τ2 = τ
2. 0≤s≤n n N
2. =
3. 0<τ≤T τ T
s n−s
4. 0 ≤ τ1 ≤ τ 3. =
τ1 τ2
5. 0 ≤ τ2 ≤ τ
90
În concluzie, din cele 5 variabile doar două sunt independente şi din
cele trei relaţii vom scoate trei dintre ele ca fiind variabile secundare în funcţie
de celelalte două ca fiind principale. Fie cele două variabile principale n şi s. În
acest caz avem rezolvând sistemul de relaţii:
T
τ1 = s ⋅
N
T
τ2 = (n - s ) ⋅
N
T
τ = n⋅
N
Acestea se înlocuiesc în expresia costului total şi obţinem în final o
problemă de minim a unei cu două variabile:
s T n -s T N
min CT(n,s) = (cl + cs · · s⋅ + cp · · (n - s ) ⋅ )·
n,s 2 N 2 N n
unde 0 < n ≤ N şi 0 ≤ s ≤ n.
Pentru rezolvare vom calcula derivatele parţiale ale funcţiei CT(n,s) pe
domeniul D = {(n,s)/ 0 < n ≤ N şi 0 ≤ s ≤ n}. Obţinem:
∂C T (n, s ) T 1 T 1 T N
= cp⋅(n – s)⋅ - [cl + ⋅cs⋅s2⋅ + ⋅cp⋅(n – s)2⋅ ]⋅ 2
∂n n 2 N 2 N n
∂C T (n, s ) T
= [(cs + cp)⋅s - cp⋅n]⋅
∂s n
 ∂C T (n, s )
 =0
Rezolvăm sistemul:  ∂n scoţându-l pe s în funcţie de n din a
∂C T (n, s )
 =0
 ∂s
cp 1 csc p
doua ecuaţie (s = ⋅n) şi înlocuindu-l în prima obţinând: ⋅ ⋅T -
cs + cp 2 cs + c p

N 2 ⋅ c l ⋅ (c s + c p ) N
cl⋅ = 0 de unde rezultă n2 = ⋅ şi în final unica soluţie
n2 cscp T

2 ⋅cl ⋅ N cs + cp 2⋅cl ⋅ N cp
pozitivă: n0 = ⋅ şi s0 = ⋅ . Această
cs ⋅T cp cs ⋅T cs + cp
91
soluţie este soluţia optimă doar dacă 0 < n0 ≤ N şi sunt îndeplinite condiţiile de
 ∂ 2 C T (n, s ) ∂ 2 C T (n, s )
 2
(n ,
0 0s ) > 0, (n 0 , s 0 ) > 0
 ∂ n ∂ 2s
ordinul 2:  2 2
 ∂ C T (n, s ) (n , s ) ⋅ ∂ C T (n, s ) (n , s ) −  ∂ C T (n, s ) (n , s ) > 0
2 2

 ∂2n 0 0
∂ 2s
0 0  ∂n∂s 0 0 
  
Evident n0 > 0 şi avem:
∂ 2 C T (n, s ) T
2
(n 0 , s 0 ) = (cs + cp)⋅ >0
∂ s n0

∂ 2 C T (n, s )
2
(n 0 , s 0 ) = 2c l + (c s + c p )⋅ s 02 ⋅ T  ⋅ N
>0
∂ n  N  n 30
2
∂ 2 C T (n, s ) ∂ 2 C T (n, s )  ∂ 2 C T (n, s ) 
(n 0 , s 0 ) ⋅ (n 0 , s 0 ) −  (n 0 , s 0 ) =
∂2n ∂ 2s  ∂n∂s 
2c l (c s + c p )⋅ T ⋅ N
>0
n 04

2 ⋅cl cp
n0 ≤ N este echivalentă cu: ⋅ ≤ N⋅T.
cs cs + cp

2 ⋅cl cp
În concluzie, dacă ⋅ ≤ N⋅T atunci problema admite soluţia
cs cs + cp

optimă:

2 ⋅cl ⋅ N cs + cp
n0 = ⋅
cs ⋅T cp

2⋅cl ⋅ N cp
s0 = ⋅
cs ⋅T cs + cp

2⋅cl ⋅T cp
τ1 = ⋅
cs ⋅ N cs + cp

2⋅cl ⋅T  cs + c p cp 
τ2 = ⋅ − 
cs ⋅ N  cp cs + cp 
 

2 ⋅cl ⋅T cs + cp
τ = ⋅
cs ⋅ N cp
92
cp
CT maxim = CT(n0,s0) = 2 ⋅ cl ⋅ c S ⋅ T ⋅ N ⋅
cs + cp

cp
Expresia ρ = măsoară intensitatea lipsei de stoc şi din
cs + cp

expresia lui CT maxim se observă că admiterea lipsei de stoc duce la micşorarea


costului total cu stocarea, explicaţia constând în micşorarea numărului de
lansări pentru că, deşi cp este mult mai mare decât cs, cl este şi mai mare decât
cs
cp. Dacă cp este mult mai mare decât cs ( ≈ 0 ) atunci se obţin aceleaşi soluţii
cp

ca în modelul Willson fără ruptură de stoc.


2 ⋅cl cp
Dacă ⋅ > N⋅T atunci se va face o singură lansare (deci n0 =
cs cs + cp

N
N) şi vom avea s0 = n0, τ1 = τ = T şi τ0 = 0 iar CT = cl + cs⋅ ⋅T exact ca şi în
2
modelul Willson fără ruptură de stoc.

5.6.3. GENERALIZĂRI ALE MODELULUI WILLSON

În practică ipoteza că cs (costul unitar) este acelaşi, indiferent de


cantitatea stocată, nu este în general îndeplinită decât pentru variaţii mici ale
stocului sau ale duratei de stocare, fiind mult mai realistă ipoteza că acesta
depinde (invers proporţional) de cantitatea stocată s, de durata de stocare
(direct sau invers proporţional) etc, dependenţele fiind exprimate prin funcţii
mai mult sau mai puţin complicate. Aceleaşi consideraţii sunt valabile şi pentru
cp (dependent de mărimea cererii neonorate sau mărimea întârzierilor). În
concluzie putem imagina modele în care: cs = f(s,ts) şi/sau cp = f(p,tp) unde am
notat cu:
− s = cantitatea stocată
− ts = durata de stocare
− p = cererea neonorată
− tp = durata întârzierii onorării cererii
93
sau şi mai complicate, neexistând evident limite în acest sens. Motivele care ne
opreşte totuşi în a discuta teoretic aceste modele sunt următoarele:
− orice complicare a modelelor anterioare duce la ecuaţii matematice
complicate, ale căror soluţii nu mai pot fi scrise cu operatorii
matematici obişnuiţi (de exemplu, chiar dacă am presupune că unul
singur dintre cs sau cp este funcţie liniară în variabilele expuse mai
sus s-ar ajunge în rezolvare la ecuaţii de gradul patru ale căror soluţii
încap pe o foaie întreagă (cititorul poate încerca singur analiza
acestor variante); ele ar fi practic de nefolosit şi oricum scopul
studierii gestiunii stocurilor nu este găsirea unor modele cât mai
impunătoare;
− aceste modele mai complicate pot apărea şi pot fi aplicate evident în
practică, existând algoritmi matematici de rezolvare (cel puţin
aproximativi) pentru orice model matematic, dar acesta ar fi doar un
pur calcul matematic;
− modelele mai complicate nu ar adăuga nimic ideii teoretice,
desprinse din modelul Willson clasic, că în orice model de stocare
există întotdeauna două tipuri de costuri, indiferent de variabilele de
decizie şi anume: unele direct proporţionale şi celelalte invers
proporţionale cu variabilele de decizie, fapt care face ca soluţia să fie
una de mijloc, şi nu o valoare extremă evidentă şi deci banală.
− în foarte multe cazuri un model de stocare presupune şi multe alte
variabile, care sunt de obicei aleatoare, caz în care devine
nerealizabilă dorinţa de a găsi o soluţie matematică simplă. În aceste
cazuri sunt chemate spre rezolvare alte ramuri ale analizei
matematice şi economice, cum ar fi, de exemplu, simularea,
algoritmii genetici etc.

5.6.4. MODEL DE PRODUCŢIE – STOCARE

Presupunem că o unitate economică fabrică un singur tip de produse cu


un ritm al producţiei de β produse în unitatea de timp pentru care are o cerere
de N bucăţi într-o perioadă T. Presupunem că β⋅T > N (adică dacă
întreprinderea ar lucra non-stop întreaga perioadă T ar produce mai mult decât
94
ceea ce poate efectiv să vândă) motiv pentru care perioadele de producţie sunt
alternate cu perioade de oprire a producţiei astfel încât producţia totală să
devină egală cu cererea totală N. Pentru simplificarea calculelor se va
presupune că cererea este constantă în timp, adică în fiecare unitate de timp
N
este egală cu α = . Deoarece β > α este evident că pe parcursul perioadelor
T
de producţie se va acumula o cantitate de produse care trebuie stocate într-un
depozit, acest stoc epuizându-se în perioadele în care producţia este oprită. De
asemenea este evident că oprirea şi repornirea producţiei implică o serie de
costuri. Pentru formalizarea modelului vom face şi următoarele ipoteze:
1. duratele ciclurilor de producţie sunt egale între ele;
2. intervalele de staţionare sunt egale între ele;
3. costul stocării este direct proporţional cu cantitatea stocată şi durata
stocării cu un factor de proporţionalitate cs (costul unitar de
stocare)
4. costul unei secvenţe oprire-pornire a producţiei este acelaşi pentru
toate secvenţele;
5. se admite ruptura de stoc;
6. valoarea penalizării este direct proporţională cu mărimea cererii
neonorate şi cu durata întârzierii cu un factor de proporţionalitate cp
(costul unitar de penalizare)
Se cere în aceste condiţii găsirea acelor intervale de producţie şi
staţionare care duc la un cost total pe unitatea de timp minim.
Situaţia de mai sus poate fi vizualizată foarte bine desenând graficul
evoluţiei stocului în timp în figura 3.
N

Ciclu de s(t)
producţie
deficitului în paralel
satisfacerea
cererii curente

s Acumulare
Lichidarea

de comenzi
n neonorate
cu

T
t4 t1 t2 t3
Formarea Consumarea stocului
stocului
Figura 3
95
În acest desen am notat cu:
− n = cantitatea produsă peste cerere într-un ciclu de producţie;
− s = cantitatea maximă acumulată în depozit;
− t1 = intervalul de timp în care se formează stocul;
− t2 = intervalul de timp în care se epuizează stocul ca urmare a opririi
producţiei;
− t3 = intervalul de timp în care se acumulează comenzi neonorate ca
urmare a faptului că nu se produce şi s-a epuizat stocul;
− t4 = intervalul de timp în care este lichidat deficitului în paralel cu
satisfacerea cererii curente.
Se observă că avem de-a face cu un fenomen ciclic în care o perioadă
poate fi aleasă ca intervalul dintre două porniri succesive ale producţiei. Într-o
perioadă costul va fi format din:
− costul unei secvenţe lansare-oprire a producţiei cl;
s
− cheltuieli de stocare pe intervalele t1 şi t2, cs · · (t1 + t2);
2
n -s
− cheltuieli de penalizare pe intervalele t3 şi t4: cp · · (t3 + t4)
2
Costul total unitar va fi:

cl + cs
s
(t 1 + t 2 ) + c p n − s (t 3 + t 4 )
CT(n,s,t1,t2,t3,t4) = 2 2
t1 + t 2 + t 3 + t 4
şi vom avea de rezolvat problema de minim cu legături:

cl + cs
s
(t 1 + t 2 ) + c p n − s (t 3 + t 4 )
min 2 2
n,s, t1 , t 2 , t 3 , t 4 t1 + t 2 + t 3 + t 4

n − s s
 t = t = β −α
 4 1
 n −s = s =α
 t t2
 3
 0 < s ≤n
 0 < t , 1≤ i ≤ 4
 i

Pentru rezolvare vom scoatem din sistemul de restricţii patru variabile


în funcţie de celelalte, de exemplu variabilele n, s, t1 şi t4 în funcţie de t2 şi t3 şi
le vom înlocui în CT.
96
Avem:
− s = t2 ⋅ α
− n = (t2 + t3)⋅ α
α
− t1 = t2
β −α
α
− t4 = t3
β −α
şi înlocuind în funcţia obiectiv obţinem:

CT(t2,t3) =
(
2c l (β − α ) + αβ c s t 22 + c p t 32 )
2 β (t 2 + t 3 )
Se calculează ca şi în modelul Willson cu ruptură de stoc derivatele
parţiale în t2 şi t3 şi din condiţia ca ele să se anuleze în punctul de minim
obţinem un sistem în t2 şi t3 care are soluţia:

2c l ( β − α ) cp 2c l ( β − α ) cs
t2 = ⋅ , t3 = ⋅
αβc s cs + c p αβc p cs + c p

şi în continuare:

2αc l cs 2αc l cp
t1 = ⋅ , t4 = ⋅
βc p ( β − α ) c s + c p βc s ( β − α ) c s + c p

2αc l (β − α ) cp 2αc l (β − α )  c p c s 
s= ⋅ , n= ⋅ +
βc s cs + c p β (c s + c p )  c s cp 

 α  cp
CTminim = 2 ⋅ α ⋅ c s ⋅ c p 1 − 
 β  cs + c p
Soluţia de mai sus verifică evident şi celelalte restricţii, deci este unica
soluţie optimă.
Observaţie Dacă ritmul producţiei este mult mai mare decât intensitatea
α
cererii (β mult mai mare decât α sau echivalent spus ≅ 0 ) se obţine soluţia
β
din modelul Willson cu ruptură de stoc.
97

5.6.5. MODEL DE GESTIUNE CU PREŢURI DE ACHIZIŢIE


SAU CU CHELTUIELI DE PRODUCŢIE VARIABILE

În modelul anterior, cu excepţia cheltuielilor de lansare (presupuse


fixe), cheltuielile de producţie erau ignorate. Acest lucru este valabil dacă
cheltuielile de producţie pe unitatea de produs nu variază cu volumul
producţiei iar cererea este satisfăcută în întregime (sau, în modelele de
aprovizionare, cheltuielile de aprovizionare pe unitatea de produs nu variază cu
volumul comenzii).
Cheltuielile de producţie depind de volumul producţiei, notat cu q, şi
anume printr-o funcţie nedescrescătoare f(q) care se anulează în origine şi are
un salt egal cu cl în aceasta, pentru cheltuieli de lansare cl ≠ 0 . Uneori funcţia
f(q) are şi alte salturi care trebuie luate în consideraţie când se determină
cantitatea optimă q ce trebuie achiziţionată (produsă).
Caz 1 Să presupunem acum că intensitatea cererii de produse este α şi
să presupunem că preţul unitar al produsului este p când volumul comenzii este
mai mic decât o cantitate Q şi p' când volumul comenzii este mai mare sau egal
cu Q, cu p' < p.
Atunci f(q) are expresia:
0 q=0

f(q) = c l + p ⋅ q 0 < q < Q
c + p ′ ⋅ q q ≥ Q
 l
Dacă presupunem că nu se admite neonorarea comenzilor şi că
aprovizionarea se face instantaneu, atunci ne aflăm în situaţia de la modelul
s
anterior în care t1 = t3 = t4 = 0, = β şi s = q. Formula cheltuielilor medii pe
t2

unitatea de timp va deveni:


1
cs ⋅q ⋅ t 2 + cl
2 1 β ⋅ cl
CT = = cs ⋅ q +
t2 2 q
98
f (q )
Adăugând la acestea şi cheltuielile unitare de producţie obţinem:
t2

1 β ⋅cl
 2 c s ⋅ q + pβ + q 0<q<Q
C(q) = 
1 β ⋅cl
 c s ⋅ q + p ′β + q≥Q
 2 q

Pentru a calcula minimul acestei funcţii vom calcula derivata:


1 β ⋅c
C'(q) = c s − 2 l pentru q ≠ Q
2 q

2⋅ β ⋅cl
care se anulează în q0 = . Punctul de minim este q0 sau Q, punctul în
cs

care funcţia nu e continuă. Rămâne doar să mai comparăm valorile funcţiei


C(q) în q0 şi Q:
1 β ⋅ cl
 2 cs ⋅ q 0 + pβ + q 0 < q0 < Q
0
C(q0) = 
1 β ⋅ cl
 cs ⋅ q 0 + p′β + q0 ≥ Q
 2 q0

Dacă q0 < Q atunci soluţia optimă este q0 iar dacă q0 > Q se compară
1 β ⋅cl 1 β ⋅cl
valorile c s ⋅ q 0 + p ′β + şi c s ⋅ Q + pβ + .
2 q0 2 Q

1 β ⋅cl 1 β ⋅cl
Dacă: c s ⋅ q 0 + p ′β + < c s ⋅ Q + pβ + se alege q0 altfel
2 q0 2 Q
se alege Q.
Caz 2 Să presupunem acum că intensitatea cererii de produse este α şi
să presupunem că preţul unitar al produsului este p pentru primele Q produse şi
este cu p' mai mare pentru produsele fabricate peste cantitatea Q.
Atunci f(q) are expresia:
0 q=0

f(q) = c l + p ⋅ q 0<q<Q
c + p ⋅ q + p ′ ⋅ (q - Q ) q ≥ Q
 l
şi vor rezulta cheltuielile totale în unitatea de timp:
99
1 β ⋅cl
 2 c s ⋅ q + pβ + q 0<q<Q
C(q) = 
1 c − ( p ′ − p )Qβ
 c s ⋅ q + p ′β + l q≥Q
 2 q

şi în continuare se găseşte soluţia optimă ca şi la cazul 1.

5.6.6. MODELE DE GESTIUNE CU CERERE ALEATOARE

Presupunem că un produs este stocat într-un depozit intermediar, care


este aprovizionat dintr-un depozit mai mare la intervale egale de timp t. Se
presupune că cererea pe un interval este aleatoare cu o distribuţie de
probabilitate cunoscută din observaţii statistice:
 0 1 L n L
β =  
 p(0) p(1) L p(n ) L
ea realizându-se uniform pe fiecare interval.
Pentru simplificarea aprovizionării se decide ca la fiecare aprovizionare
să se aducă aceeaşi cantitate de produse, care trebuie aleasă astfel încât, în
timp, să se minimizeze cheltuielile. Cheltuielile legate de aprovizionare pot fi
privite cel puţin din două puncte de vedere:
a) cu costuri de stocare şi costuri de penalizare unitare
Presupunem că se cunosc cheltuielile unitate de stocare cs şi cheltuielile
unitare de penalizare cp. Atunci, dacă vom aduce de fiecare dată α bucăţi, vom
avea într-o perioadă cu cererea β ≤ α doar cheltuieli cu stocarea iar într-o
perioadă cu β > α atât cheltuieli cu stocarea cât şi penalizări.
Dacă β ≤ α evoluţia stocului va fi cea din figura 4a) şi costul unitar de
stocare va fi:
α + (α − β )
cs ⋅ ⋅t
2  β
C(α,β) = = c s ⋅ α − 
t  2
iar dacă β > α evoluţia stocului va fi cea din figura 4b) şi costul unitar de
stocare va fi:
α β −α
cs ⋅ ⋅ t1 + c p ⋅ ⋅ t2
C(α,β) = 2 2
t1 + t 2
100
α β −α
unde = . Înlocuind t1 în funcţie de t2 din această relaţie în expresia
t1 t2
costului unitar vom obţine:

C(α,β) = cs⋅
α2
+ cp⋅
(β − α ) 2
2β 2β

β α
α
β

t t1
t2
t

a) b)
Figura 4

În concluzie, pentru o valoare aleasă a lui α costul mediu va fi o


variabilă aleatoare cu aceleaşi probabilităţi ale evenimentelor ca şi cererea β:
  ( )2 
 cs ⋅  α − β  L cs ⋅ α L cs ⋅ α + c p ⋅ β − α 
2

C(α) =   2 2 2β 2β 
 p ( β ) L p (α ) L p ( β ) 
 
Al alege pe acel α astfel încât, în timp, să se minimizeze cheltuielile
este echivalent cu a găsi acel α pentru care media variabilei aleatoare C(α) este
minimă.
Avem:
α
 β α2 ( β − α ) 2 ⋅ p( β )
C (α ) = ∑
β =0
c ⋅  α −  ⋅ p( β ) +
s  2 ∑
β ≥α +1
cs ⋅

⋅ p(β ) + ∑
β ≥α +1
cp ⋅

unde α ∈ R şi valorile C (α ) formează un şir real. Pentru a găsi minimul

acestui şir observăm că funcţia cu valori reale C (α ) este o funcţie de gradul


doi cu coeficientul lui α2 pozitiv, deci are un singur punct de minim local, care
este şi global şi deci valoarea α întreagă care dă minimul lui C (α ) este cea
101
care îndeplineşte simultan relaţiile:
C (α − 1) > C (α ) < C(α + 1)
sistem care, după efectuarea unor calcule simplificatoare, este echivalent cu:
L(α - 1) < ρ < L(α)
unde:

 1 p(β ) cp
L(α) = p(β ≤ α) + α + 


2  β ≥α +1 β
iar ρ=
cs + c p
.

Practic, pentru găsirea lui α vom calcula toate valorile lui L(α) într-un
tabel ca cel de mai jos şi vom alege acel α pentru care se obţine valoarea lui
L(α) imediat superioară lui ρ.

1 p( β ) p( β )  p(β )

1
α β p(β) p(β ≤ α) α +
2 β β ≥α +1
β 
α +  ∑
2  β ≥α +1 β
L(α)

0 0 p(0)
1 1 p(1)
2 2 p(2)
M M M
În final, pentru α0 găsit, se calculează costul mediu minim C (α 0 )

Generalizări
Caz 1 Sunt situaţii în care cererea de produse se poate situa într-un
interval foarte mare (produse de valoare mică), caz în care calcularea
probabilităţilor pentru fiecare valoare a cererii ar cere un efort prea mare,
acesta nefiind justificat şi prin faptul că probabilitatea pentru o anumită cerere
este practic aceeaşi pentru un întreg interval de valori din vecinătatea acesteia.
Din acest motiv se împart valorile cererii în intervale egale, se presupune că
cererile din fiecare interval au aceeaşi probabilitate de manifestare şi vom avea
de estimat doar atâtea probabilităţi câte intervale posibile există (sau se
presupune că numai anumite valori ale cererii sunt posibile, de exemplu
mijloacele acestor intervale).

Cererea este o variabilă aleatoare de forma:


102
 [a, a + l ) [a + l , a + 2l ) L [a + (n - 1)l , a + nl ) L
β =  
 p1 p2 L pn L

sau:

a+
l
a+
3l
L a+
(2n − 1)l L
β=  2 2 2

 
 p1 p2 L p(n ) L

unde a este valoarea minimă a cererii iar l lungimea intervalelor. Vom


presupune În acest caz costul mediu va avea forma:
α
 β l

α2 l

(β − α )2 ⋅ p(β )
C (α ) = l ⋅ ∑
β =0
c ⋅ α −  ⋅ p(β ) +
s  2 2 ∑
β =α +l
cs ⋅
β
⋅ p(β ) + ∑
2 β =α +l
cp ⋅
β

iar minimul acesteia va fi dat de acea valoare α0 pentru care:

p(β )

cp  l
L(α0 – l) <
cs + c p
< L(α0) unde L(α) = p(β β α) + α + 
 2  β =α + l β ∑
Caz 2 Sunt de asemenea cazuri când cererea poate lua valori într-o
mulţime continuă, fiind o variabilă aleatoare continuă cu densitatea de
repartiţie f(β). În acest caz valoarea medie a costului este:
α
 β ∞α2 ∞ (β − α )2 f (β )dβ
C (α ) = c s ⋅ ∫0
α −  ⋅ f (β )dβ + c s ⋅
 2 ∫
α 2β
f (β )dβ + c p ⋅ ∫
α 2β
care este o funcţie continuă în α. Pentru rezolvare vom deriva această funcţie
(folosind şi formula de derivare a integralelor cu parametru:

b( y )  b( y )
 ∫
 f ( x, y ) =
 ∫
f y/ ( x, y ) + b ′( y ) ⋅ f (b( y ), y ) − a ′( y ) ⋅ f (a ( y ), y )
a ( y )  a( y )
fiind îndeplinite condiţiile care permit aplicarea acesteia.) şi apoi vom găsi
punctul în care se anulează aceasta: α0 = soluţia căutată.
b) cu pierderi
Presupunem că cheltuielile de stocare sunt neglijabile. În acest caz
pentru fiecare piesă stocată peste cererea manifestată se face o cheltuială inutilă
c1 iar pentru fiecare piesă lipsă, în cazul unei cereri mai mare decât stocul, o
penalizare c2 (în general c2 > c1). În acest caz, costul mediu va fi:

α ∞
C (α ) = c 1 ⋅ ∑ (α − β )⋅ p(β ) + c 2 ⋅
β =0
∑ ( β − α ) ⋅ p( β )
β =α +1
103
Valoarea α întreagă care dă minimul lui C (α ) este cea care
îndeplineşte simultan relaţiile:
C (α − 1) > C (α ) < C(α + 1)
sistem care, după efectuarea unor calcule simplificatoare, este echivalent cu:
cp
p(β ≤ α - 1) < < p(β ≤ α)
cs + c p

din care va fi aflat αoptim şi apoi C (α optim ) .

Observaţie. Şi în acest caz se pot analiza variantele cu cerere împărţită


în intervale sau cu cerere continuă, cazuri care sunt lăsate ca exerciţii
cititorului.

5.7. MODALITĂŢI PRACTICE DE APLICARE A


MODELELOR TEORETICE

5.7.1. MODELUL S-s

Gestiunea de tip S-s sau cu două depozite se caracterizează prin faptul


că reaprovizionarea se face în momentul în care nivelul curent al stocului a
atins o anumită valoare notată generic cu “s”. Acest lucru este echivalent unei
gestiuni cu două depozite, în cadrul căreia reaprovizionarea se face în
momentul în care primul depozit s-a golit. În perioada de reaprovizionare (de
avans) consumul se va realiza din cel de-al doilea depozit, care joacă rolul
stocului de siguranţă.
În acest model considerăm:

• cererea totală pentru perioada T este R, aleatorie;


• costul stocării este cS;
• costul lansării unei comenzi de reaprovizionare este cL;
• termenul de livrare τ poate fi:

a) neglijabil; în acest caz obţinem costul total pentru intervalul T ca


fiind:
104
Rc L cS
C= + q,
q 2
unde q reprezintă cantitatea de reaprovizionat.

b) cvasiconstant. Fie nivelul minim de reaprovizionare Ns; când


stocul atinge acest nivel se lansează o comandă de q piese. Mărimile date sunt:
T, τ, R, cS, cL şi ne propunem să determinăm pe Ns şi pe q astfel încât costul
stocului pentru perioada T să fie minim. O metodă aproximativă constă în a
admite că ritmul mediu al cererii este constant; în acest caz optimul cantităţii q0
este independent de Ns:
2R cL 2T c L
q0 = T0 = C 0 = 2 RTc L c S
T cS R cS

Dacă τ este durata medie a termenului de reaprovizionare (cu o abatere


medie pătratică mică) se va evalua legea de probabilitate a cererii pentru acest
interval de timp.
Fie Fτ (r) probabilitatea cererii de r produse în intervalul τ: Fτ (r) = P(R
≤ r) = probabilitatea cumulată.
Impunem condiţia ca probabilitatea epuizării stocului să fie mai mică
sau egală cu valoarea dată α (0 ≤ α < 1); α reprezintă probabilitatea de penurie.
Trebuie să avem: 1 - Fτ (r) = α. Fie Q soluţia ecuaţiei: 1 - Fτ (r) = α, de
unde rezultă Q = Ns.

Această metodă este aproximativă, deoarece implică ipoteze de lucru


distincte pentru stocurile fiecărui depozit. Calculele pot fi efectuate fără ipoteze
restrictive cu metoda Monte - Carlo (nu face obiectul lucrării de faţă).

5.7.2. METODA A.B.C.

Metoda A.B.C. este un procedeu rapid pentru analiza aprovizionării şi


gestiunii economice a materialelor. Această analiză clasifică mărfurile
achiziţionate în funcţie de valorile de aprovizionare ale acestora şi de ponderea
achiziţiilor. Prin aceasta pot fi văzute punctele de plecare pentru realizarea unei
politici raţionale a achiziţiilor; pe aceasta se pot baza mai multe măsuri,
105
începând cu simplificarea procedeelor de comandă, până la numărul de salariaţi
folosiţi în depozite.
Factorul esenţial în folosirea metodei A.B.C. constă în alegerea unui
criteriu corespunzător pe baza căruia se efectuează împărţirea materialelor în
cele trei grupe A, B, C. Un asemenea criteriu poate fi valoarea de consum a
materialului dat, în timpul stabilit, valoarea specială a materialului cu privire la
folosirea lui în producţie, provenienţa din import etc.
O dată criteriul ales şi împărţirea în grupe efectuată, metoda A.B.C.
poate fi utilizată în diferite domenii ale gestiunii stocurilor:
Controlul selectiv al stocurilor
Metoda A.B.C. permite o gestiune selectivă a stocurilor.
Stocurile tampon ale articolelor de valoare mare sunt menţinute la un
nivel destul de mic. Aceste articole trebuie să fie supuse unui control de
gestiune foarte strâns din partea personalului aprovizionării (articolele de mare
valoare sunt adesea gospodărite cu ajutorul unui sistem de reaprovizionare
periodică şi dacă intervalele sunt suficient de frecvente, un stoc tampon este
mai puţin necesar).
Această metodă dă o atenţie mai mică articolelor de valoare mică, a
căror epuizare se evită prin asigurarea unor stocuri tampon.
Cu ajutorul metodei A.B.C. se pot reduce investiţiile în stocuri,
micşorând în acelaşi timp riscurile de epuizare.
Din analiza structurii materiale a unităţilor economice rezultă că
valoarea mare în stoc este deţinută de un număr relativ mic de materiale, care
nu numai că influenţează direct volumul de mijloace circulante atras, dar joacă
şi rolul principal în desfăşurarea procesului de fabricaţie.
Stocurile sunt împărţite în trei clase:

clasa A: în care intră articolele cu valoare mare reprezentând cantitativ


10 % din stoc şi 70 % valoric;
clasa B: în care intră articole reprezentând 20 % atât cantitativ cât şi
valoric;
clasa C: în care intră articole ce reprezintă cantitativ 70 % din stoc şi
valoric 10 %.
106
CLASA PONDEREA NUMERICĂ PONDEREA VALORICĂ
A 10 70
B 20 20
C 70 10

Gruparea materialelor în funcţie de ponderea lor valorică în stocul total,


pe baza datelor din tabelul de mai sus, se prezintă într-o formă expresivă în
“graficul de evoluţie al curbei valorilor cumulate”:

Pondere
valorică

% 100

90

70 C
B

A
10 30 100 Pondere
numerică
%
Fig. nr.
Datorită importanţei lor pentru procesul de fabricaţie şi datorită
influenţei asupra volumului de mijloace circulante, fiecare grupă se va aborda
diferenţiat, atât din punct de vedere a metodologiei de stabilire a stocurilor cât
şi din punct de vedere al conducerii şi desfăşurării procesului de stocare ca
atare.
Deci, metoda A.B.C., pe lângă că oferă o politică diferită pentru
articolele din categoria mai scumpă, permite şi utilizarea unor metode de
gospodărire diferită.
Întrucât în categoria A sunt puţine articole, se poate controla zilnic
nivelul stocurilor, pentru a observa variaţia cererii şi a supraveghea de aproape
respectarea termenelor de către furnizori. Cu alte cuvinte, se înlocuieşte o parte
din stocul tampon de articole scumpe printr-un control al gestiunii mai strâns.
Această decizie este eficientă întrucât ea aduce la o reducere apreciabilă a
investiţiilor în stocuri.
107
Se vor folosi, deci, modele economico-matematice exigente, care vor
avea în vedere elemente (factori) concrete ce condiţionează nivelul stocurilor
şi care asigură constituirea lor la dimensiuni cat mai mici, determinând
creşterea vitezei de rotaţie a mijloacelor circulante la maxim.
Pentru materialele din categoria C se pot folosi procedee mai puţin
exigente (chiar cu caracter statistic) şi care vor avea în vedere factorii cu
acţiune hotărâtoare în optimizarea proceselor de stocare (cheltuielile de
transport, sursa de provenienţă etc.).
Cu articolele din categoria B se poate adopta o politică intermediară,
exercitând un oarecare control, dar baza rămâne tot stocul tampon, spre
deosebire de politica dusă pentru categoria A. La articolele mai ieftine este mai
eficient să se suporte sarcina stocurilor, decât să se plătească salariile
personalului care ar fi indispensabil pentru mărirea controlului.
Pentru grupa B se pot aplica două soluţii:

a) stabilirea de modele distincte pentru dimensionarea stocurilor de


materiale din această grupă cu un grad de exigenţă mediu;
b) folosirea pentru materialele care, ca pondere valorică, tind către
grupa A de importanţă, a modelelor precizate pentru această din
urmă grupă, iar pentru materialele ce tind ca valoare către grupa C a
modelelor specifice acestora.

Viabilitatea unui sistem de gestiune a stocurilor este determinată, în


general, de felul în care acesta răspunde unor cerinţe de bază, cum ar fi:

• gradul ridicat de utilitate practică;


• adaptabilitatea la utilizarea mijloacelor electronice de calcul;
• supleţea şi operaţionalitatea în derularea şi adaptarea proceselor de
stocare;
• aria de cuprindere mare;
• concordanţa cu fenomenele reale ale procesului de formare şi
consum a stocurilor;
• reducerea la minim a imobilizărilor de resurse materiale şi creşterea
vitezei de rotaţie a mijloacelor circulante ale agenţilor economici;
108
• cheltuielile de conducere, organizare şi desfăşurare a proceselor de
stocare cât mai mici.

Analizat din aceste puncte de vedere sistemul A.B.C. răspunde în mare


măsură cerinţelor. Acest sistem aplicat la gestiunea stocurilor are în vedere, în
primul rând reducerea imobilizărilor la materialele de bază şi care se consumă
în cantităţi mari, aspect asigurat prin exigenţa metodologică de dimensionare a
stocurilor şi de urmărire a derulării proceselor de stocare.

5.7.3. Strategia IMPACT

IMPACT (Inventory Management Program and Control Techniques)


este considerat ca un model eficient de stabilire a stocurilor de siguranţa. Este o
metodă de depozitare economică, adaptată cerinţelor calculatoarelor
electronice. Acest model a fost dezvoltat de IBM.
Estimarea necesarului se face prin extrapolarea valorilor din trecut.
Influenţele conjuncturale şi sezoniere sunt luate în calcul prin metoda de
nivelare exponenţială.
Stocul de siguranţă se determină cu ajutorul calculului probabilităţilor.
Conform metodei IMPACT, sortimentelor din depozit se împart în trei
grupe:

1. produse cu desfacere mare (vitale);


2. produse cu desfacere mijlocie (importante);
3. produse cu desfacere redusă ( obişnuite).

Mărimea stocului de siguranţă depinde de precizia estimării


necesităţilor (cererii). Cu cât va fi apreciată mai precis în prealabil cererea, cu
atât va fi mai mic stocul de siguranţă.
Pentru a putea aplica metoda IMPACT sunt necesare: cunoaşterea
cererilor ri (i = 1, 2,..., T), pe T intervale de timp şi calculul abaterii medii
pătratice σ.
Pentru determinarea stocului de siguranţă, metoda IMPACT foloseşte
următorii indicatori:
109
a) cererea medie (necesarul mediu)

1 tT
r= ∑ iri ,
T i =1
(V.3.1)

unde T este numărul de intervale de timp cercetate;


ri este cererea în intervalul i, i = 1, 2,..., T;
b) MAD (Mean Absolut Deviation) reprezintă abaterea absolută de la
medie a cererilor, ca unitate de măsură a “împrăştierii” valorilor efective în
jurul valorii medii.
1 T
MAD = ∑ i ri − r .
T i =1
(V.3.2)

MAD se determină ca valoare medie a valorilor absolute ale abaterilor


de la cererea medie.
c) coeficientul de siguranţă exprimă potenţialul de livrare al
furnizorilor. Coeficientul de siguranţă (K) se stabileşte pe bază de tabele ale
funcţiei normale, în cadrul căreia sunt date valorile lui K, corespunzător
diferitelor niveluri ale potenţialului de livrare al furnizorilor.
Potenţialul de livrare (Z) exprimă gradul de satisfacere de către
furnizor a unei comenzi. Acest potenţial de livrare se mai numeşte grad de
deservire sau nivel de serviciu.
Potenţialul de livrare (Z) se determină după relaţia
C LE
Z= , (V.3.3)
C LC
unde CLE este cantitatea livrată efectiv;
CLC este cantitatea ce trebuie livrată conform comenzii.
Rezultă 0 < Z < 1; Z = 0 înseamnă că se înregistrează lipsa materialelor în stoc,
fără o posibilitate eficientă de acoperire;
Z = 1 înseamnă că avem de-a face cu un serviciu perfect de servire din
partea furnizorilor.
Relaţia de determinare a potenţialului de livrare se poate exprima şi sub
alte forme, ca de exemplu:
N UC − N UL N
1. Z = = 1 − UL , (V.3.4)
N UC N UC
unde NUC reprezintă numărul de unităţi (bucăţi) comandate;
110
NUL reprezintă numărul de unităţi (bucăţi) lipsă.
N ZT − N ZL N
Z= = 1 − ZL , (V.3.5)
N ZT N ZT
unde NZT reprezintă numărul total de zile lucrătoare din perioada de gestiune;
NZL reprezintă numărul de zile cu lipsă de stoc.
Când un produs se fabrică din mai multe materii prime, care intră
simultan în consum, potenţialul de livrare se calculează în funcţie de
necesitatea prezenţei în acelaşi moment în depozit a tuturor materiilor prime
care concură la obţinerea lui.
Stocul de siguranţă se calculează după formula:

NS = K ⋅ MAD
Între potenţialul de livrare şi costul stocării necesitat de constituirea şi
deţinerea stocului de siguranţă există o corelaţie strânsă. Creşterea potenţialului
de livrare determină creşterea costului total de stocare, dar într-o proporţie mai
mică, ceea ce înseamnă că eficienţa este cu atât mai mare cu cât potenţialul de
livrare se apropie de unu.
Trebuie excluse influenţele întâmplătore, însă luate în considerare
influenţele conjuncturale şi sezoniere. IMPACT foloseşte în acest scop metoda
nivelării exponenţiale. Această metodă a fost dezvoltată de Robert Brown şi
este cunoscută sub numele de exponential smoothing.
Valoarea medie a cererii se corectează cu eroarea de previziune şi se
stabileşte introducând o anumită parte a erorii în noua valoare a estimaţiei.
Fie V1 estimarea cererii pentru prima perioadă şi r1 cererea reală a
primei perioade. Estimarea cererii pentru următoarele perioade se obţine din
relaţiile:
Vi = Vi-1 + α (ri-1 - Vi-1),
unde α reprezintă constanta de nivelare; α ∈ (0,1) şi determină măsura în care
valorile din trecut sunt cuprinse în estimarea cererii.
Constanta de nivelare trebuie astfel aleasă încât să ţină seama suficient
de influenţele conjuncturale şi sezoniere, eliminând totuşi influenţa întregului.
0<α<1
111
α = 0 înseamnă că erorile de prevedere care apar nu sunt luate în
considerare

α = 1 înseamnă că estimarea corespunde exact cererii din perioada


anterioară; toate influenţele întâmplătoare sunt introduse în estimare.

Abaterea absolută de la medie (MAD) poate fi folosită după aceleaşi


principii: abaterea medie a perioadei i va fi dată de relaţia
MADi = MADi-1 + α(| ri-1 - Vi-1 | - MADi-1).
În acest caz | ri-1 - Vi-1 | este valoarea abaterii precedente faţă de valoarea reală.
Cererea medie (necesarul mediu) şi abaterea absolută de la medie
(MAD) vor fi apreciate în prealabil prin metoda nivelării exponenţială, urmând
ca abia după aceea să se determine nivelul stocului de siguranţă (NS).
112
CAP. VI OPTIMIZAREA ITINERARIILOR DE
TRANSPORT
Modelul problemei de transport are particularităţile sale şi anume:
1) limitele sunt reprezentate sub formă de ecuaţii;
2) coeficienţii de pe lângă necunoscute în limite sunt egali cu o
unitate;
3) fiecare necunoscută intră numai în două ecuaţii.
Ţinând seama de acest specific, problema transportului de obicei se
rezolvă cu ajutorul algoritmelor speciale simple.
Problema de tip transport se pot rezolva şi fără a face sisteme de ecuaţii,
mai simplu şi mai rapid, folosind aşa-zisele metode rapide de calcul. Aceste
metode şi procedee de calcul permit obţinerea unor soluţii foarte apropiate de
soluţia optimă, iar în multe cazuri chiar soluţia optimă. Principalul avantaj al
acestor metode constă în aceea că permit obţinerea în timp scurt a informaţiilor
necesare pentru luarea unor decizii operative juste.
Folosirea eficientă a metodelor matematice de optimizare a
transportului este posibilă numai în cazurile în care există cel puţin 3 locuri de
producţie şi 3 locuri de consum. În cazurile în care aceste limite sunt mai mici,
cantităţile de produse pot fi repartizate şi fără calculaţie de optimizare.
Calculele de optimizare pot fi făcute în funcţie de modul de soluţionare
urmărit, adică dacă se urmăreşte o soluţie completă sau una aproximativă.
Oricare ar fi soluţia urmărită, calculele privind optimizarea transporturilor în
unităţile agricole pot fi rezolvate destul de uşor, fără a fi necesare maşini
electronice de calcul.
În scopul obţinerii unor rezultate exacte, o atenţie deosebită trebuie
acordată stabilirii distanţelor de transport (de la parcelă la locul de consum).
Precizăm că în loc de distanţele de transport se pot lua în calcul consumul de
timp pentru transportul la aceste distanţe sau chiar cheltuielile de transport.
După părerea noastră luarea în calcul a consumului de timp pentru transport ar
putea mări considerabil succesul optimizării. În cazul luării în calcul a
cheltuielilor de transport, datorită greutăţii aflării exacte a acestora ne
exprimăm unele rezerve privind rezultatele. Se economiseşte mai puţin cu
coeficienţi inexacţi de cost decât cu coeficienţi exacţi de distanţă. De aceea,
113
opinăm pentru folosirea în calculul de optimizare a transporturilor a datelor
privind distanţele de transport, în locul celor privind cheltuielile de transport.
Pentru optimizarea itinerariilor de transport se folosesc o serie de
metode. În funcţie de gradul de complexitate şi precizie a rezultatelor pe care le
obţinem, aceste metode le-am grupat în trei categorii:
a) metode pentru obţinerea unor soluţii iniţiale de bază;
b) metode pentru verificarea şi îmbunătăţirea soluţiilor iniţiale de bază;
c) metode pentru obţinerea unor soluţii iniţiale optime.

6.1. METODE PENTRU OBŢINEREA UNOR


SOLUŢII INIŢIALE DE BAZĂ
Modelul matematic al unei probleme de transport se compune (aşa cum
s-a precizat şi anterior) dintr-un sistem de m + n – 1 ecuaţii liniar independente
cu mn necunoscute. Rezultă că numărul ecuaţiilor distincte în orice problemă
de transport este mai mic decât numărul necunoscutelor. Ca atare, sistemul este
nedeterminat şi admite o infinitate de soluţii. Pentru a obţine o soluţie optimă
se determină mai întâi o soluţie iniţială de bază, care va fi apoi verificată dacă
este sau nu optimă.
În literatura de specialitate au fost elaborate o serie de metode
(algoritmi) pentru obţinerea unei soluţii iniţiale de bază, printre care
menţionăm: metoda colţului nord-vest, metoda colţului sud-vest, metoda
elementului minim pe linie, metoda elementului minim pe coloană, metoda
acoperirii zerourilor, metoda Kotzig, metoda Vogel etc. Toate aceste metode le
vom trata pe probleme concrete, raţionamentul putând fi repetat pentru orice
problemă asemănătoare.

6.1.1. METODA COLŢULUI NORD-VEST SAU


A COLŢULUI STÂNGA SUS

Această metodă, denumită şi metoda diagonalei principale, realizează o


repartiţie în scară a valorilor, dând problemelor de transport o soluţie apropiată
de optim. De aici şi denumirea de metode repartiţiei în scară.
114
Pentru a demonstra modul de utilizare a metodei, vom lua un exemplu
ipotetic. Să admitem că grâul de la şase ferme ale unei întreprinderi agricole de
stat trebuie transportat la trei depozite în aşa fel ca să se realizeze minimum de
t km(să se efectueze pe itinerariile cele mai scurte). Cantităţile de transportat şi
distanţele la care se transportă sunt cele prevăzute în tabelul următor.
Repartizarea cantităţilor se va face astfel:

Tabelul 6.1
Distanţele şi cantităţile de transportat
Bj
B1 B2 B3 Disponibil
Ai
A1 7 4 4 324
A2 6 4 5 448
A3 5 5 6 534
A4 2 3 5 532
A5 6 3 4 468
A6 4 3 2 514
necesar 600 1100 1120 2820

Pornind din colţul stânga sus se va repartiza depozitului B1, din ferma
A1, cantitatea maximă posibilă, adică 324 tone. Diferenţa până la 600 tone cât
poate primi depozitul B1, se va repartiza din ferma A2. În acest fel s-au epuizat
cantităţile din ferma A1 şi deci depozitele B2 şi B3 nu vor primi nici o cantitate
din această fermă.
În acest mod, cantitatea produsă de ferma A1 a fost transportată şi
rezultă că:
A1/B2 = A1/B3 = 0, iar A1/B1 = 324
În a doua etapă, procedeul se repetă ţinând seama că necesarul pentru
depozitul B1 să fie completat cu cantităţile din ferma A2.
B1 = 600 – 324 = 276
Deci, în pătrăţelul A2/B1 vom repartiza 276 tone. Întrucât depozitul B1
este complet satisfăcut, înseamnă că:
A3/B1 = A4/B1 = A/B1 = 0
După această repartiţie, ferma A2 mai are disponibil: 448 – 276 = 172 t.
Acestea vor fi trimise la depozitul B2. Deci A2/B2 = 172. Pentru completarea
115
cantităţilor necesare depozitului B2 va mai fi transportat grâu de la fermele A3
şi A4. Prin urmare:
A2/B2 = 172
= 706; 1100 – 706 = 394
A3/B2 = 534

A4/B2 = 394

În acest mod, depozitul B2 a fost satisfăcut, iar:


A5/B2 = A6/B2 = 0
În etapa următoare, pentru depozitul B3 se repartizează cantităţile care
au mai rămas disponibile. În urma acestei repartiţii se obţine situaţia din tabelul
6.2.
Tabelul 6.2
Repartiţia cantităţilor de transportat
Bj
B1 B2 B3 Disponibil
Ai
7 4 4
A1 324
324 0 0
6 4 5
A2 448
276 172 0
5 5 6
A3 534
0 534 0
2 3 5
A4 532
0 394 138
6 3 4
A5 468
0 0 468
4 3 2
A6 514
0 0 514
necesar 600 1100 1120 2820

Folosind datele din tabelul 6.2, calculăm valoarea funcţiei obiectiv:


3

F =∑
6
∑C
j =1
ij X ij = 324,7 + 276,6 + 172,4 + 534,5 + 394,3 +
i =1
+ 138,5 + 468,4 + 514,2 = 12.054 t / km
Soluţia stabilită prin această metodă este soluţie iniţială. Ea poate fi
considerată optimă atunci când ar duce la un maxim sau la un minim al funcţiei
obiectiv. De aceea, pentru soluţiile iniţiale trebuie verificată optimalitatea şi
116
continuată, dacă este cazul, îmbunătăţirea repartiţiei. În acest scop, se poate
utiliza metoda distributivă.
Pentru a verifica optimalitatea unei soluţii iniţiale de bază, se calculează
evaluările4 Sij pentru toate pătrăţelele care conţin valori Xij = 0. Dacă Sij > 0
pentru toate aceste pătrăţele, soluţia iniţială obţinută este optimă. Dacă Sij = 0,
problema admite o infinitate de soluţii optime, dar toate aceste soluţii conduc la
aceeaşi valoare optimă a formei liniare F. Dacă avem şi unele evaluări Sij < 0,
soluţia iniţială obţinută nu este optimă, ea poate fi îmbunătăţită.
Soluţia stabilită în tabel poate fi considerată optimă dacă toate sumele
vor fi mai mari decât zero. Întrucât însă, în exemplul nostru avem şi sume
negative (căsuţele A1/B2, A3/B1, A3/B3 etc.), înseamnă că soluţia poate fi
îmbunătăţită. Pentru aceasta se utilizează în continuare fie metoda distributivă,
fie metoda potenţialelor (metoda Modi).

6.1.2. METODA COLŢULUI SUD-VEST


Este de asemenea o metodă folosită în optimizarea transporturilor,
pentru obţinerea unor soluţii iniţiale de bază. Rezolvarea problemelor de
transport prin această metodă este asemănătoare cu cea precedentă (metoda
colţului stânga sus), cu deosebirea că repartiţia începe să se facă din colţul sud-
vest spre cel din nord-est.
Reluând exemplul din tabelul anterior şi procedând în mod asemănător,
obţinem repartiţia din tabelul 6.3.

Tabelul 6.3
Repartiţia cantităţilor de transportat
Bj B1 B2 B3 Disponibil
Ai
A1 7 4 7
0 0 324
A2 6 4 5
0 0 448
A3 5 5 6
0 186 348
A4 2 3 5
0 532 0
A5 6 3 4
86 382 0
A6 4 3 2
514 0 0
necesar 600 1100 1120 2820

4
Evaluarea unui pătrăţel Xij reprezintă cantitatea cu care se modifică valoarea funcţiei de
optimizat dacă Xij creşte cu o unitate.
117
Soluţia obţinută în tabel este puţin diferită faţă de soluţia obţinută prin
metoda colţului nord-vest (stânga sus). Calculând valoarea funcţiei obiectiv, pe
baza datelor obţinute în tabel, vom avea:
F = 324,7 + 448,5 + 348,6 + 186,5 + 532,3 + 382,3 + 86,6 + 514,4 = 12.840
Se poate vedea că rezultatul optimizării este mai mare decât în cazul
metodei nord-vest.
Ca şi în cazul precedent, soluţia obţinută cu ajutorul acestei metode este
o soluţie iniţială şi urmează a fi îmbunătăţită. Pentru aceasta se urmează acelaşi
mod de lucru ca şi în cazul repartiţiei nord-vest. În final se ajunge la acelaşi
rezultat.

6.1.3. METODA ELEMENTULUI MINIM PE LINIE

Obţinerea unor soluţii iniţiale de bază, în cazul optimizării itinerariilor


de transport poate avea loc şi cu ajutorul metodei elementului minim pe linie.
Metoda este oarecum asemănătoare cu metoda colţului nord-vest, cu
deosebirea că repartizarea cantităţilor de transportat se face pe fiecare rând în
ordinea crescândă a distanţelor, începând cu distanţa cea mai mică. De aici şi
denumirea metodei de „element minim pe linie”.
Pentru exemplificarea modului de utilizare a metodei să considerăm că
6 ferme vegetale (B1, B2, … B6), urmează să primească gunoi de grajd de la trei
ferme zootehnice (A1, A2, A3) în cantităţile prezentate în tabelul 9. Se cere să
se organizeze transportul în aşa fel ca să se realizeze minimum de t.km
(folosind deci rutele cele mai scurte).
Tabelul 6.4
Cantităţile şi distanţele de transport
Bj
B1 B2 B3 B4 B5 B6 ai
Ai
A1 5,8 5,4 3,8 1,4 5,0 2,6 780
A2 2,8 3,2 3,4 1,8 2,2 2,4 870
A3 2,6 3,6 4,2 4,0 3,0 1,2 550
bj 240 480 340 320 680 140 2200
Urmărind datele din tabelul anterior, se poate observa că distanţa
minimă (elementul minim) pe rândul A1 se află în pătrăţelul A1/B4. Ca urmare,
vom trimite din A1 la B4 cantitatea de care are nevoie (320 tone). În acest mod,
necesarul fermei B4 a fost complet satisfăcut şi deci: A2/B4 = A3/B4 = 0.
118
Întrucât prin această repartiţie nu am lichidat cantităţile existente la
ferma A1, următorul transport îl vom face tot pe acest rând, însă în pătrăţelul cu
distanţa rămasă cea mai mică, după satisfacerea lui B4. Acest pătrăţel este
A1/B6. Aici vom efectua al doilea transport. Ferma B6 are nevoie de 140 tone,
iar disponibilul la ferma A1 este: 780 – 320 = 460 t; deci se poate satisface
cererea în întregime, rămânând încă disponibile 320 tone, care vor fi duse la
B3, care urmează în ordine ca distanţă. În acest mod, cantităţile existente la
ferma A1 au fost repartizate pentru transport. În urma acestei repartizări rezultă
că: A1/B1 = A1/B2 = A1/B5 = 0 şi A2/B6 = A3/B6 = 0.
După acelaşi procedeu se trece şi se face repartizarea cantităţilor de
gunoi de grajd de la fermele A2 şi A3, pentru a fi transportate la fermele care
solicită. În urma repartiţiei se obţin datele din tabelul 6.5.
Tabelul 6.5
Planul optim de transport stabilit prin metoda elementului minim pe linie
Bj B1 B2 B3 B4 B5 B6 ai
Ai
A1 5,8 5,4 3,8 1,4 5,0 2,6 780
0 0 320 320 0 140
2,8 3,2 3,4 1,8 2,2 2,4
A2 870
190 0 0 0 680 0
2,6 3,6 4,2 4,0 3,0 1,2
A3 550
50 480 20 0 0 0
bj 240 480 340 320 680 140 2200

În urma acestei repartiţii, numărul total de t km ce se va realiza (funcţia


obiectiv) va fi:
F = 320.3,8 +320.1,4 + 140.2,6 + 190.2,8 + 680.2,2 + 50.2,6 + 480.3,6
+ +20.4,2 = 5998 t.km.
Soluţia obţinută în urma utilizării metodei minimului pe linie este o
soluţie iniţială de bază. Pentru a şti dacă itinerariile alese şi cantităţile
repartizate sunt optime, va trebui procedat la verificarea soluţiei. Această
verificare se face potrivit metodologiei expuse la metoda colţului nord-vest.

6.1.4. METODA ELEMENTULUI MINIM PE COLOANĂ


În cazul utilizării acestei metode pentru obţinerea unei soluţii iniţiale de
bază, se procedează în mod asemănător ca şi cazul metodei elementului minim
119
pe linie, cu deosebirea că repartiţia cantităţilor se va face pe coloane ţinând
cont de distanţele (elementul) minime.
Reluând exemplul din tabelul de mai sus, se poate observa că distanţa
(elementul) minimă în coloana B1 este pătratul A3/B1. Ca urmare, vom trimite
din A3 la B1 cantitatea de care are nevoie 240 t.
Rezultă deci: A3/B1 = minim (240,550) = 240 iar A1/B1 = A2/B1 = 0
În mod asemănător se procedează şi în celelalte coloane obţinând
soluţia prezentată în tabelul 6.6.
Tabelul 6.6
Planul optim de transport

B1 B2 B3 B4 B5 B6 ai
5,8 5,4 3,8 1,4 5,0 2,6
A1 780
0 0 0 320 320 140
2,8 3,2 3,4 1,8 2,2 2,4
A2 870
0 480 340 0 50 0
2,6 3,6 4,2 4,0 3,0 1,2
A3 550
240 0 0 0 310 0
bj 240 480 340 320 680 140 2200

Făcând calculele, pe baza datelor obţinute în tabelul de mai sus, funcţia


scop va avea următoarea valoare:
F = 320.1,4 + 320.5 + 140.2,6 + 480.3,2 + 340.3,4 + 50.2,2 + 240.2,6 +
+310.3,0 = 6768 t.km.

Ca şi în cazul celorlalte metode, soluţia obţinută trebuie verificată


pentru a şti dacă este optimă. În caz contrar se va proceda la îmbunătăţirea
soluţiei, folosind fie metoda distributivă, fie metoda Modi.

6.1.5. METODA DUBLEI PREFERINŢE

Metoda reprezintă o îmbinare a celor două metode: metoda elementului


minim pe linie şi metoda elementului minim pe coloană. Metoda constă în
analiza mai întâi a distanţelor pe linii şi apoi pe coloană, stabilind pentru
fiecare linie şi apoi pentru fiecare coloană distanţa cea mai mică (tab.6.7).
120
Tabelul 6.7
Stabilirea distanţelor minime
Bj
B1 B2 B3 B4 B5 B6 ai
Ai
5,8 5,4 3,8 1,4 5,0 2,6
A1 780
⊗⊗
2,8 3,2 3,4 1,8 2,2 2,4
A2 870
⊗ ⊗ ⊗
2,6 3,6 4,2 4,0 3,0 1,2
A3 550
⊗ ⊗⊗
bj 240 480 340 320 680 140 2200
Se poate vedea că în două căsuţe (A1/B4 şi A3/B6 se întâlnesc minimele
atât pe rând cât şi pe coloană (notate cu x). Acestea vor fi primele locuri în se
va face repartizarea cantităţilor de transportat. Ca atare, în căsuţa A1/B4 vom
repartiza 320 tone, atât cât are nevoie punctul B4. Cu aceasta coloana B4 a fost
în întregime satisfăcută.
În căsuţa A3/B6 vom repartiza 140 tone şi în acest mod am satisfăcut şi
cererile punctului B6. Tot pe rândul A3 vom mai repartiza 240 tone în căsuţa
A3/B1, care este preferată având distanţa minimă pe coloană. Cu aceasta am
satisfăcut şi punctul B1. În continuare, vom face repartizarea pe rândul A2 şi
primele cantităţi le vom repartiza în căsuţa A2/B5 care are distanţa cea mai
mică. Vom repartiza aici întreaga cantitate cerută de punctul B5 – 680 tone, cu
aceasta coloana B5 fiind satisfăcută. Diferenţa de 190 t (870 – 680) o vom
repartiza în căsuţa A2/B2, care are distanţa minimă pe coloana B2. Cu aceasta
am repartizat toate cantităţile rândului A2. Pe rândul A3 au mai rămas de
repartizat 170 tone (550 – 140 = 170). Acestea le vom repartiza în căsuţa A3/B3
şi cu aceasta am lichidat şi rândul A3. Cantităţile rămase nerepartizate de pe
rândul A1 –(780 – 320 = 460) le vom repartiza în mod automat în A1/B2 – 290 t
şi A1/B3 – 170 tone, care au nevoie pentru acoperirea necesarului. În acest mod
se obţine repartiţia din tabelul 6.8.
Tabelul 6.8
Planul optim de transport

B1 B2 B3 B4 B5 B6 ai
A1 0 290 170 320 0 0 780
A2 0 190 0 0 680 0 870
A3 240 0 170 0 0 140 550
bj 240 480 340 320 680 140 2200
121

Totalul t.km ce se vor realiza pe baza acestei repartiţii va fi de 6.270,


sumă care se situează între rezultatele obţinute prin cele două metode (cu 272
t.km mai mult decât prin metoda elementului minim pe linie şi cu 498 tone mai
puţin decât la metoda elementului minim pe coloană).

6.1.6. METODA ACOPERIRII ZEROURILOR

Metoda a fost elaborată de T. Egervahry şi W. Kuhn şi se bazează pe


teoria lui König, de unde şi denumirea de algoritmul lui Egervahry Kuhn.
În utilizarea acestei metode se parcurg următoarele etape (20):
1) În tabelul cu distanţele (tab.6.9) pentru fiecare rând se scade distanţa
cea mai mică a rândului din toate distanţele trecute în rândul respectiv. Se
procedează în mod asemănător şi pe coloane. Se obţine astfel un nou tabel (tab.
6.10) care conţine pe fiecare rând şi pe fiecare coloană cel puţin câte o distanţă
egală cu zero.
Tabelul 6.9
Distanţele (în km) şi cantităţile de transport (în sute de t)
Cantităţi
B1 B2 B3 B4 B5
disponibile
8 15 3 5 10
A1 180
X11 X12 X13 X14 X15
2 7 4 20 8
A2 80
X21 X22 X23 X24 X25
1 15 5 6 4
A3 160
X31 X32 X33 X34 X35
Cantităţi
60 100 80 120 60 420
necesare

Tabelul 6.10
Scăderea distanţei celei mai mici pe rând

B1 B2 B3 B4 B5
A1 5 12 0 2 7 180
A2 0 5 2 18 6 80
A3 0 14 4 5 3 160
60 100 80 120 60 420
122

2) Acoperim, treptat, câte un rând în tabelul obţinut în etapa anterioară,


împreună cu toate coloanele care conţin zerouri reaşezate pe rândul acoperit,
până când epuizăm rândurile acestui tabel. Acoperim apoi câte două rânduri
distincte împreună cu toate coloanele care conţin zerouri neaşezate în rândurile
acoperite, până când se termină toate combinaţiile posibile.
În mod asemănător se continuă cu acoperirile, combinând câte 3, 4 etc.
rânduri distincte, până când s-au efectuat toate combinaţiile posibile. După
fiecare acoperire efectuată se calculează suma cantităţilor disponibile şi
necesare corespunzătoare rândurilor şi coloanelor acoperite. Dacă toate sumele
calculate sunt mai mari sau cel puţin egale cu suma cantităţilor disponibile de
transport şi a celor ce trebuie transportate, soluţia este optimă. În caz contrar, se
trece la etapa următoare.
3) Se ia de bază suma cea mai mică faţă de totalul cantităţilor de
transportat şi se taie toate rândurile şi coloanele corespunzătoare acoperirii
respective, făcându-se apoi următoarele operaţii: se scade elementul minim
netăiat din toate elementele netăiate; se adaugă acelaşi element minim la
elementele duble tăiate; elementele tăiate o singură dată rămân neschimbate. Se
reiau apoi operaţiile din etapa 2 şi se continuă până când se obţine sume mai
mari sau egale cu suma datelor pe rânduri sau coloane. După aceea, soluţia
ultimă se stabileşte în felul următor: pe rândul sau coloana cu cele mai puţin
zerouri se trece pentru transport cantitatea posibilă maximă; se procedează apoi
la fel pentru rândurile sau coloanele rămase cu cele mai puţine zerouri; se
continuă apoi în mod asemănător până când tot disponibilul a fost repartizat.
Pentru concretizarea modului de utilizare a acestei metode vom lua un
exemplu ipotetic. Să considerăm că 5 ferme de producţie vegetală urmează să
fie aprovizionate cu gunoi de grajd de la trei ferme de creştere a animalelor.
Luând ca bază de calcul distanţele şi cantităţile înscrise în tabelul anterior va
trebui organizat transportul în aşa fel ca numărul de t.km (deci distanţele de
transport să fie minim.
Problema se rezolvă pornind de la o soluţie iniţială la care putem ajunge
prin metoda acoperirii zerourilor. În acest sens, se procedează astfel:
din distanţele înscrise în pătrăţele se scade distanţa cea mai mică
situată pe rândul respectiv şi înscriem datele în tabel;
123
se face aceeaşi operaţie pentru datele din tabel, însă pe coloanele
care nu conţin zerouri (respectiv col. 2, 4, 5) şi înscriem rezultatele
în tabelul
acoperim pe rând elementele egale cu zero din tabelul 6.11, prin
tăierea unui număr de rânduri şi coloane în toate modurile posibile,
calculând de fiecare dată câte o sumă.
Tabelul 6.11
Scăderea distanţei celei mai mici pe coloane

B1 B2 B3 B4 B5
A1 5 7 0 0 4 180
A2 0 0 2 16 3 80
A3 0 9 4 3 0 160
60 100 80 120 60 420

Exemplu: acoperind rândul 1, va trebui de acoperit şi coloanele 1, 2, 5,


care conţin zerouri. În acest caz, vom avea:

Se suprimă câte un rând:


S2 = A1 + B1 + B2 + B5 = 180 + 60 + 100 + 60 = 400
S2 = A2 + B1 + B3 + B4 + B5 = 80 + 60 + 80 + 120 + 60 = 400
S3 = A1 + B1 + B2 + B3 + B4 = 160 + 60 + 100 + 80 + 120 = 520

Se suprimă câte două rânduri:


S4 = A1 + A2 + B1 + B5 = 180 + 80 + 60 + 60 = 380
S5 = A1 + A3 + B1 + B2 = 180 + 160 + 60 + 100 = 500
S6 = A2 + A3 + B3 + B4 = 80 + 160 + 80 + 120 = 440

Se suprimă câte trei rânduri:


S7 = A1 + A2 + A3 = 180 + 80 + 160 = 420

Pentru ca soluţia din tabelul să fie optimă trebuie ca suma minimă din
relaţiile de mai sus să fie egală cu cantităţile de gunoi disponibile, adică cu 420
tone, ori, suma minimă este 380, deci e mai mică decât 420, ceea ce înseamnă
că soluţia iniţială nu este optimă, ci trebuie îmbunătăţită.
124
Pentru aceasta se suprimă rândurile şi coloanele care au condus la S
minim = 380, adică rândurile 1, 2 şi coloanele 1, 5 (tabelul 12).
Tabelul 12
Prima suprimare a rândurilor care au dus la S. minim

B1 B2 B3 B4 B5

A1 5 7 0 0 4 180

A2 0 0 2 16 3 80

A3 0 9 4 3 0 160

60 100 80 120 60 420

Din pătrăţelele rămase netăiate se vede care este elementul minim. În


cazul nostru este 3 (A3/B4). Aceasta se adună la numerele din pătrăţelele tăiate
simultan atât pe orizontal cât şi pe vertical (în cazul nostru: A1/B1; A2/B1;
A1/B5 şi A2/B5) şi se scade din numerele din pătrăţelele rămase netăiate (A3/B2;
A3/B3; A3/B4).
Celelalte numere rămân neschimbate (tabelul 6.13).

Tabelul 6.13
Adunarea şi scăderea elementului minim

B1 B2 B3 B4 B5
A1 8 7 0 0 7 180
A2 3 0 2 16 6 80
A3 0 6 1 0 0 160
60 100 80 120 60 420

Se verifică apoi dacă tabelul conduce la soluţia optimă, procedând în


acelaşi mod ca şi tabelul 6.13.

S1 = A1 + B1 + B2 + B4 + B5 = 180 + 60 + 100 + 120 + 60 = 520


S2 = A2 + B1 + B3 + B4 + B5 = 80 + 60 + 80 + 120 + 60 = 400
125
S3 = A3 + B2 + B3 + B4 = 160 + 100 + 80 + 120 = 460
S4 = A1 + A2 + B1 + B4 + B5 = 180 + 80 + 60 + 120 + 60 = 500
S5 = A1 + A3 + B2 = 180 + 160 + 100 = 440
S6 = A1 + A3 + B3 + B4 = 80 + 160 + 80 + 120 = 440
S7 = A1 + A2 + A3 = 180 + 80 + 160 = 420
Valoarea minimă a lui S este 400, care este mai mică decât 420 – deci
soluţia nu este optimă. Procedăm deci în continuare, în mod asemănător ca şi în
cazul anterior, adică suprimăm rândurile şi coloanele care au condus la S
minim (tab. ..) şi apoi scădem sau adunăm elementul minim (tab. 6.14).
Tabelul 6.14
A doua suprimare a rândurilor şi coloanelor care au condus la S minim

B1 B2 B3 B4 B5

A1 8 7 0 0 7 180

A2 3 0 2 16 6 80

| |
A3 0 6 1 0 0 160
| |
60 100 80 120 60 420

Tabelul 6.15
Obţinerea valorilor nedeterminate

B1 B2 B3 B4 B5
8 1 0 0 7
A1 180
x11 x12 x13 x14 x15
9 0 8 22 12
A2 80
x21 x22 x23 x24 x25
0 8 1 0 0
A3 160
x31 x32 x33 x34 x35
60 100 80 120 60 420

Se verifică dacă tabelul 6.15 ne conduce la soluţia optimă, în care scop


calculăm sumele:
S1 = A1 + B1 + B2 + B4 + B5 = 180 + 60 + 100 + 120 + 60 = 520
S2 = A2 + B1 + B3 + B4 + B5 = 80 + 60 + 100 + 80 + 120 + 60 = 500
126
S3 = A3 + B2 + B3 + B4 = 160 + 100 + 80 + 120 = 460
S4 = A1 + A2 + B1 + B2 + B4 +B5 = 180 + 80 + 60 + 100 + 120 + 60 = 600
S5 = A1 + A3 + B2 = 180 + 160 + 100 = 440
S6 = A2 + A3 + B3 + B4 = 80 + 160 + 80 + 120 = 440
S7 = A1 + A2 + A3 = 180 + 80 + 160 = 420
Întrucât S minim este 420, deci egal cu cantităţile de gunoi disponibil,
tabelul 20 ne va da soluţia optimă.
Pentru a obţine această soluţie vom pune:
Xij = 0 în locul elementelor diferite de zero
Xij = 0 în locul elementelor egale cu zero, din tabelul 6.15.
Obţinem astfel situaţia din tabelul 6.16, în care:
x11 = x12 = x15 = x21 = x23 = x24 = x25 = x33 = 0

Tabelul 6.16
Obţinerea valorilor nedeterminate

B1 B2 B3 B4 B5
A1 0 0 x13 x14 0 180
A2 0 x13 0 0 0 80
A3 x13 x13 0 x13 x13 160
60 100 80 120 60 420

Valorile rămase nedeterminate se obţin uşor, dacă ţinem seama că suma


elementelor pe rânduri trebuie să fie egală cu datele din ultima coloană, iar
suma elementelor pe coloane trebuie să fie egală cu datele din ultimul rând. Se
ajunge astfel la soluţia din tabelul 6.17.

Tabelul 6.17
Soluţia optimă

B1 B2 B3 B4 B5
A1 0 0 80 100 0 180
A2 0 80 0 0 0 80
A3 60 20 0 20 60 160
60 100 80 120 60 420
127
Numărul de t.km ce se va efectua va fi:
(80.3) + (100.5) = 74000 t.km
80.7 = 24000 t.km
(60.1) + (20.15) + (20.6) + (60.4) = 72000 t.km
Total 202000 t.km*
Întreaga activitate de transport, exprimată în t.km, va fi minimă şi egală
cu 202000 t.km. Un alt plan de transport care să conducă la un număr mai mic
de t.km, în condiţiile date nu poate exista.

6.2. METODA KOTZIG


În rezolvarea problemei de transport, cu ajutorul acestei metode se
pleacă tot de la un tabel iniţial în care se înscriu distanţele şi cantităţile de
transportat. După aceea stabilim distanţa medie a fiecărui loc de producţie (Ai)
faţă de toate locurile de consum (Bj). Calculele se fac totalizând distanţa de la o
parcelă la fiecare loc de consum şi împărţim rezultatul la numărul locurilor de
consum. Luând un exemplu ipotetic (transportul masei verzi de pe 6 parcele la
5 locuri de consum), vom avea datele din tabelul 6.18.
Tabelul 6.18
Calculul distanţei medii
B1 B2 B3 B4 B5 Producţia
(t)
A1 4 15 27 23 14 480 16,6
A2 5 8 9 25 21 270 13,6
A3 14 21 34 31 4 320 20,8
A4 28 26 45 43 14 140 31,2
A5 11 17 22 41 6 290 19,4
A6 12 20 3 22 5 180 12,4
Consumul 280 135 425 455 385 1680
(t)
12,3 17,8 23,3 30,8 10,6
128
A1 = 4 + 15 + 27 + 23 + 14 = 83; 83 : 5 = 16,6
A2 = 4 + 15 + 27 + 23 + 14 = 68; 68 : 5 = 13,6
A3 = 14 + 21 +34 + 31 + 4 = 104; 104 : 5 = 20,8
rândul
A4 = 28 + 26 + 45 + 43 + 14 = 156; 156: 5 = 31,2
A5 = 11 + 17 + 22 + 41 + 6 = 97; 97 : 5 = 19,4
A6 = 12 + 20 + 3 + 22 + 5 = 62; 62 : 5 = 12,4

Aceasta înseamnă că parcela A1(spre exemplu) se află la o distanţă


medie de 1660 m faţă de toate locurile de consum (distanţele trecute în tabelul
23 sunt în sute de metri). Dintre toate, parcela A4 este la distanţa cea mai mare
3120 m, faţă de toate locurile de consum.
Acelaşi procedeu de calcul îl aplicăm şi pentru coloane, în care caz
avem:
B1 = 4 + 5 + 14 + 28 + 11 + 12 = 74; 74 : 6 = 12,3
B2 = 15 + 8 + 21 + 26 + 17 + 20 = 107; 107 : 6 = 17,8
B3 = 27 + 9 + 34 + 45 + 22 + 3 = 140; 140 : 6 = 23,3
B4 = 23 + 25 + 31 + 43 + 41 + 22 = 185; 185 : 6 = 30,8
B5 = 14 + 21 + 4 + 14 + 6 + 5 = 64; 64 : 6 = 10,6
Mediile rândurilor le înscriem în tabelul iniţial, în dreptul fiecărui rând,
iar mediile coloanelor, sub tabel, în dreptul fiecărui rând, iar mediile
coloanelor, sub tabel, în dreptul fiecărei coloane (tab. ..).
Calculăm apoi, pentru fiecare pătrăţel al tabelului, noile evaluări ale
distanţelor. În acest scop, se adună pentru fiecare pătrăţel media rândului cu
media coloanei respective, iar totalul se scade din distanţa reala înscrisă în
tabelul iniţial.
În cazul exemplului nostru vom avea situaţia prezentată în tabelul 6.19
Tabelul 6.19
Calcularea noilor distanţe
Pătrăţelul Media + Media = Suma Distanţa - Suma =
din tabel rândurilor coloanelor valorilor reală valorilor Valoarea
medii medii nouă
A1/B1 16,6 +12,3 = 28,9 4 -28,9 = 24,9
A1/B2 16,6 +17,8 = 34,4 15 -34,4 = 19,4
A1/B3 16,6 +23,3 = 39,9 27 -39,9 = 12,9
A1/B4 16,6 +30,8 = 47,4 23 -47,4 = 24,4
A1/B5 16,6 +10,6 = 27,2 14 -27,2 = 13,2
A2/B1 13,6 +12,3 = 25,9 5 -25,9 = 20,9
A2/B2 13,6 +17,8 = 31,4 8 -31,4 = 23,4
129
Pătrăţelul Media + Media = Suma Distanţa - Suma =
din tabel rândurilor coloanelor valorilor reală valorilor Valoarea
medii medii nouă
A2/B3 13,6 +23,3 = 36,9 9 -36,9 = 27,9
A2/B4 13,6 +30,8 = 44,4 25 -44,4 = 19,4
A2/B5 13,6 +10,6 = 24,2 21 -24,2 = 3,2
A3/B1 20,8 +12,3 = 33,1 14 -33,1 = 19,1
A3/B2 20,8 +17,8 = 38,6 21 -38,6 = 17,6
A3/B3 20,8 +23,3 = 44,1 34 -44,1 = 10,1
A3/B4 20,8 +30,8 = 51,6 31 -51,6 = 20,6
A3/B5 20,8 +10,6 = 31,4 4 -31,4 = 27,4
A4/B1 31,2 +12,3 = 43,5 28 -43,5 = 15,5
A4/B2 31,2 +17,8 = 49,0 26 -49,0 = 23,0
A4/B3 31,2 +23,3 = 54,5 45 -54,5 = 9,5
A4/B4 31,2 +30,8 = 62,0 43 -62,0 = 19,0
A4/B5 31,2 +10,6 = 41,8 14 -41,8 = 27,8
A5/B1 19,4 +12,3 = 31,7 11 -31,7 = 20,9
A5/B2 19,4 +17,8 = 37,2 17 -37,2 = 23,4
A5/B3 19,4 +23,3 = 42,7 22 -42,7 = 27,9
A5/B4 19,4 +30,8 = 50,2 41 -50,2 = 19,4
A5/B5 19,4 +10,6 = 30,0 6 -30,0 = 3,2
A6/B1 12,4 +12,3 = 24,7 12 -24,7 = 12,7
A6/B2 12,4 +17,8 = 30,2 20 -30,2 = 10,2
A6/B3 12,4 +23,3 = 35,7 3 -35,7 = 32,7
A6/B4 12,4 +30,8 = 43,2 22 -43,2 = 21,2
A6/B5 12,4 +10,6 = 23,0 5 -23,0 = 18,0
Întrucât toate valorile noi calculate au semnul negativ, pentru
simplificare se poate lăsa la o parte semnul (de altfel valoarea nouă o putem
calcula şi prin scăderea distanţei reale din valorile medii adunate şi nu invers,
cum am făcut mai sus).
Toate aceste noi valori le introducem în tabelul 6.20
Tabelul 6.20
Tabel ajutător pentru optimizarea transportului, după metoda Kotzig
(noile evaluări ale distanţelor şi ordinea de repartiţie)
B1 B2 B3 B4 B5
A1 24,9 19,4 12,9 24,4 13,2
- - -
A2 20,9 23,4 17,9 19,4 3,2
- - R -
A3 19,1 17,6 10,1 20,6 27,4
- - -
A4 15,5 23 9,5 19 27,8
- - - -
A5 20,7 20,2 20,5 9,2 24
- - R -
A6 12,7 10,2 32,7 21,2 18
- - - -
130

După întocmirea tabelului ajutător, se stabileşte ordinea de ocupare a


tabelului (repartizarea cantităţilor de produs de la fiecare parcelă pe locuri de
consum). Pentru aceasta, căutăm în tabelul ajutător cel mai mare număr negativ
ca valoare şi notăm cu 1, fiind deci primul pătrăţel ce va primi cantitatea de
masă verde în funcţie de producţia parcelei şi de necesarul pentru consum.
Căutăm apoi cel mai mare număr care urmează şi procedăm în acelaşi mod.
Pătrăţelele care rămân în rândul epuizat al unei coloane se notează cu zero, iar
în tabelul ajutător cu o linie.
În exemplul nostru, cel mai mare număr este 32,7 în pătrăţelul A6/B3.
Acest pătrăţel îl notăm în tabelul ajutător cu 1, iar în tabelul principal, tabelul
..., repartizăm cantitatea de 180 t. Fiind repartizată astfel toată cantitatea
parcelei A6, restul pătrăţelelor vor primi zero (tab. 21). Căutăm acum numărul
următor ca mărime, care este în pătrăţelul A4/B5 din tabelul ajutător, iar în
tabelul principal repartizăm cantitatea de masă verde posibilă (140 t).
Tabelul 6.21
Optimizarea transportului de masă verde cu metoda aproximativă
(după Kotzig)
B1 B2 B3 B4 B5 Producţia
(t)
A1 280 0 0 200 0 480
A2 0 135 0 135 0 270
A3 0 0 0 75 245 320
A4 0 0 0 0 140 140
A5 0 0 245 45 0 290
A6 0 0 180 0 0 180
Consumul 280 135 425 455 385 1680
(t)

Prin aceasta, rândul A4 a fost epuizat şi deci restul pătrăţelelor se vor


nota cu zero în tabelul principal şi cu liniuţă în tabelul ajutător.
Aşadar, pătrăţelele se vor ocupa în ordinea şi modul arătate în tabelul
6.22.
131
Tabelul 6.22
Ordinea şi modul de completare a tabelului la optimizarea transportului
(după metoda Kotzig)
Nr. crt. Pătrăţelul Evaluarea Cantitatea Rândul sau coloana
tabelului distanţei de masă- ocupată
verde
1. A6/B3 32,7 180 Rândul A6
2. A4/B5 27,8 140 Rândul A4
3. A3/B5 27,4 245 Coloana B5
4. A1/B1 24,9 280 Coloana B1
5. A1/B4 24,4 200 Rândul A1
6. A2/B2 23,4 135 Coloana B2
7. A3/B4 20,6 75 Rândul A3
8. A5/B3 20,7 245 Coloana B3
R A5/B4 9,2 45 Rândul A5
R A2/B4 19,4 135 Tabelul

După ce toată cantitatea de masă verde este repartizată pe locurile de


consum, calculăm cheltuielile în t.km pentru transportarea masei verzi,
multiplicând fiecare cantitate din tabelul principal cu distanţa reală a aceluiaşi
pătrăţel al tabelului. Făcând calculele rezultă 2311 t.km.

6.3. METODA VOGEL

În literatura de specialitate este cunoscută şi sub denumirea de metoda


aproximativă de calcul VAM (Vogel’s Aproximation Method) şi a fost
prezentată de N.R. Reinfeld şi W. B. Vogel. Metoda are avantajul că scurtează
foarte mult timpul de calcul, pentru cazul când cererile sunt egale cu
disponibilul.
În cazul acestei metode, calculele se fac lângă tabelul iniţial (atât sub
acest tabel cât şi în dreptul lui). Rezolvarea presupune mai multe etape de
calcul ce se numerotează.
132
Pentru a ilustra modul de utilizare a acestei metode, luăm un exemplu
dintr-o unitate din judeţul Ialomiţa. Această unitate a cultivat în anii trecuţi
suprafaţa de 200 ha legume. Pentru această suprafaţă, precum şi pentru
răsadniţele necesare, cooperativa a transportat 4727 tone gunoi de grajd.
Transportul s-a efectuat din 11 puncte diferite, la 12 parcele şi răsadniţe
repartizate celor 4 brigăzi legumicole. Distanţa de transport a variat între 0-49
km. Modul cum a organizat unitatea transportul acestei cantităţi de gunoi este
cel prezentat în tabelul 6.23.
În total s-au efectuat 41370 t.km pentru care s-au cheltuit 134453 lei.
În folosirea metodei Vogel se pleacă de la tabelul iniţial care cuprinde
distanţele de transport (tab. 29).
Rezolvarea presupune mai multe etape de calcul, fiecare etapă
numerotându-se cu un număr de ordine.
În prima etapă se caută în fiecare rând şi în fiecare coloană primele
două distanţe care sunt cele mai scurte, dintre cele înscrise în pătrăţelele
coloanei sau rândului respectiv şi se face diferenţa între ele. Aceste diferenţe se
înscriu în partea dreaptă a tabelului, pentru rânduri şi sub tabel, pentru coloane,
în dreptul numărului de ordine al etapei întâi. În cazul exemplului nostru vom
avea
Pentru rânduri Pentru coloane
1-1 = 0 1–0=1
35-33 = 2 2-2,5 = 1,5
25-24 = 1 5-2 = 3
12-12= 0 3-1 = 2
2-1,5= 0,5 8-5 = 3
1-0= 1 1-1 = 0
1-0,5= 0,5 3-1,5 = 1,5
etc. etc.

Căutăm apoi care dintre diferenţele calculate este cea mai mare. În
exemplul nostru este 5, din coloana B9; în această coloană vom stabili deci
primul drum de transport şi anume spre locul de consum care are cea mai mică
distanţă (în exemplul nostru A10/B9). Din tabel se vede însă că acest loc are
nevoie de 555 t gunoi, dar de la locul de depozitare A10 nu i se pot repartiza
133
decât 250 t. Ca urmare, vom repartiza aceste 250 t urmând ca restul să fie
aduse de la un alt loc.
În etapa a doua de calcul, stabilim din nou diferenţele între cele mai
mici distanţe procedând la fel ca şi în prima etapă, însă fără a mai lua în calcul
rândul A10, a cărui producţie a fost total repartizată. În această a doua etapă,
diferenţa cea mai mare este 3 din coloana B3. În acest loc vom programa al
doilea transport şi anume, acolo unde este distanţa cea mai mică (A7/B3 – 2
km). Locul B3 are nevoie de 115 t, iar locul A7.
134

Tabelul 6.23
Schema folosită de ....... unitate pentru organizarea transportului gunoiului de grajd
Locul unde se Denu- Răsad- Ghioaca Târziu Averescu Cincu Răsad- Răsad- Broşteni Răsad- Baracă Răsad- Casa Existent T.km
Locul transportă
de unde mirea niţa niţa niţa niţa niţa apelor tone
se transportă centru Brig. V. Brig. Brig. Brig.
VI. VII. VIII.
Denumirea Simbol B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12
Sector zootehnic A1 400 600 700 1700 3800
Surdila Greci A2 150 60 210 8130
Cilibia A3 200 57 200 300 757 27710
Lipia A4 15 40 50 30 135 1300
Topitorie cânepă A5 60 100 150 310 1340
Răsadniţă centru A6 50 55 50 50 180 385 1105
Tabăra de vară A7 60 60 60 60 240 510
Zoreşti A8 10 55 25 90 1300
Sector particular A9 50 50 600
Răsadniţă A10 250 250 375
Simileanca
Sector zootehnic A11 200 400 600 1200
Simileanca
Total tone 825 110 115 110 110 757 810 180 555 250 605 300 4727 41370
133

BIBLIOGRAFIE

1. Ţigănescu, E., Mitruţ, D. – Bazele Cercetării Operaţionale, Ed. ASE,


Bucureşti,1999.
2. Ţigănescu, E., Mitruţ, D. – Bazele cercetării operaţionale, Editura ASE,
Bucureşti,1999.
3. Anderson, D.R., Sweeney, D.J., Williams, T.A. – Management
Science,Quantitative Approaches to Decision Making, West Publishing
Company,1988.
4. Anderson, D.R., Sweeney, D.J., Williams, T.A. – Management
Science,Quantitative Approaches to Decision Making, West Publishing
Company,1988.
5. Andrei A., Marin D., Oprescu Gh., Roman M., Mitruţ D. – Modele
dinamice de conducere a activităţii firmei, Editura ASE, Bucureşti, 2001.
6. Baciu, A., Pascu, A., Puşcas, E. – Aplicaţii ale cercetării operaţionale,
Editura Militară, Bucureşti 1988.
7. Ballou, R.H. – Business Logistics Management (third edition), Prenntice
Hall Inc., 1992.
8. Ballou, R.H. – Business Logistics Management (third edition), Prenntice
Hall Inc., 1992.
9. Cochran W.G. şi Cocs G.M. – Experimental Designs. Ediţia a doua, John
Wiley and Sons, New York, 1957.
10. Cohen K.S., Thenman E. – The Role of Management Games in
Education and Research. Working Paper No 22, Graduate School of
Industrial Administration, Carnegie Institute of Technology, Pitsburgh, Pa,
September, 1960.
11. Davies O.L. (ed) – Design and Analysis of Industrial Experiments. Hafner
Publishing Co, New York, 1956.
12. Dobre I., Badescu A., Irimiea Corina – Teoria deciziei. Studii de caz,
Editura ASE, Bucureşti, 2000.
13. Dragomirescu, M., Maliţa, M. – Programare neliniară, Ed.
Ştiinţifică,Bucureşti,1972.
14. Dragomirescu, M., Maliţa, M. – Programare neliniară, Ed. Ştiinţifică,
Bucureşti, 1972.
15. Dragomirescu, M., Maliţa, M. – Programare pătratică, Ed.
Ştiinţifică,Bucureşti,1968.
16. Dragomirescu, M., Maliţa, M. – Programare pătratică, Editura
Ştiinţifică, Bucureşti, 1968.
17. Duţă, L.D., Fabian, Cs. – Metode matematice în optimizarea croirii, Ed.
Tehnică, Bucureşti,1983.
18. Duţă, L.D., Fabian, CS. – Metode matematice în optimizarea croirii, Ed.
Tehnică, Bucureşti,1983.
19. Friedman M., Savage L.J. – Planning Experiments Seeking Maxima. In
Techniques of Statistical Analysis, Statistical Research Group, Columbia
University, McGraw-Hill, Book Co, New York, 1947.
20. Guetzkow H. A. – Use of Simulation in the Study of Inter-Nation
Relations. Vehavioral Science 4 (1959), 183 – 191.
134
21. Hare V.C. Jr., Hugli W.C. – Applications of Operations Research to
Production Scheduling and Inventory Control II. In What is Operations
Research Accomplishing in Industry? Case Institute of Technology,
Cleveland, Ohio, 1955.
22. Hillier, F.S., Lieberman, G.J. – Introduction to Operations Research,
Mc. Graw - Hill Publishig Company,1990.
23. Hillier, F.S., Lieberman, G.J. – Introduction to Operations Research,
Mc. Graw - Hill Publishig Company,1990.
24. Hoggatt A.C. – Experimental Business Game. Behavioral Science 4
(1959), 192 – 203.
25. Hotelling H. – Experimental Determination of the Maximum of a
Function. Annals of Mathematical Statistics, 12 (1941), 20 – 45.
26. Ionescu, H., Dinescu, C., Savulescu, B. – Probleme ale cercetării
operaţionale, Editura Didactică şi Pedagogică, Bucureşti 1972.
27. Kahn H. – Use of Different Monte Carlo Sampling Techniques. In Meyer
(20), pp. 146 – 190.
28. Lasdon, L. – Teoria optimizării sistemelor mari (traducere din lb.
engleză), Editura Tehnică, Bucureşti,1975.
29. Lasdon, L., Teoria optimizării sistemelor mari (traducere din lb. engleză),
Ed. Tehnică, Bucureşti,1975.
30. Lehmer D.H. – Mathematical Methods on Large Scale Computing Units.
Annals of the Harvard University Computing Laboratory, 26 (1951), 141 –
146.
31. Malcolm D.G. – Bibliography on the Use of Simulation in Management
Analysis. Operations Research, 8 (1960), 169 – 177.
32. Meyer H.A. (ed) – Symposium on Monte Carlo Methods. John Wiley and
Sons, New York, 1956.
33. Mircea Ancau, Liviu Nistor – Tehnici numerice de optimizare în
proiectarea asistată de calculator, Editura Tehnică, Bucureşti.
34. Modder, J.J., Elmaghraby, S.E. – Handbook of Operations
Research,vol. I,Reinhold Company,1978.
35. Modder, J.J., Elmaghraby, S.E. – Handbook of Operations Research,
vol. I,Reinhold Company,1978.
36. Morgenthaler G.W. – The Theory and Application of Simulation in
Operations Research. In Progress in Operations Research, vol. I R.L.
Ackoff (ed), John Wiley and Sons, New York, 1961, pp. 363 – 419.
37. Nadejde, I., Berghtaller, C., Zidaroiu, C., Sburlan, S. – Probleme de
Cercetare Operaţională. Editura Acadamiei, Bucureşti 1971.
38. Nica V., Mustaţă Floare, Ciobanu Gh., Mărăcine V. – Cercetări
operaţionale, Editura Matrix Rom, Bucureşti, 1998, pg. 1-125.
39. Nica, V.,Ciobanu, Gh.,Mustaţă, Fl., Mărăcine, V. – Cercetări
Operaţionale, vol.I, Ed. Matrix Rom, Bucureşti,1998.
40. Nica, V.,Ciobanu, Gh.,Mustaţă, Fl., Mărăcine, V. – Cercetări
operaţionale, vol.I, Editura Matrix Rom, Bucureşti,1998.
41. Oprescu Gh., Marin D., Andrei Anca, Mitruţ D. – Modelarea
cibernetică a mecanismelor de reglare a sistemelor economice, Editura
ASE, Bucureşti, 1999, pg. 15-237.
42. Oprescu Gh., Spircu Liliana, Scarlat E., Chiriţa Nora – Bazele
ciberneticii economice. Partea I, Editura ASE, Bucureşti, 2001.
43. Plackett R.L., Burman J.P. – The Design of Optimum Multi-Factor
Experiments. Biometrika, 33 (1946), 305 – 325.
44. Radu Serban – Optimizare cu Aplicatii in Economie, Editura Matrix Rom
- Bucuresti, 1999.
135
45. Radu Serban, Tudor Dumitrescu – Metode de Optimizare, Editura
Matrix Rom - Bucuresti, 1998.
46. Scarlat E., Chiriţa Nora – Cibernetica sistemelor microeconomice.,
Editura ASE, Bucureşti, 2000.
47. Shubik M. – Bibliography on Simulation, Gaming, Artificial Intelligence
and Allied Topics. Journal of the American Statistical Association, 55
(1950), 736 – 751.
48. Taussky Olga, Todd J. – Generation of Pseudo Random Numbers. In
Meyer (20), pp. 15 – 28.
49. Thomas C.J. – Military Gaming. In Progress in Operations Research, vol.
R.L. Ackoff (ed), John Wiley and Sons, New York, 1961, pp. 421 – 463.
50. Thomas C.J., Deemer W.L. – The Role of Operational Gaming in
Operations Research. Operations Research 5 (1957), 1 – 27.
51. Tocher K.D. – The Art of Simulation. D. van Nostrand, Princeton, N.J.,
1963.
52. Ţiganescu E., Mitru D. – Bazele cercetării operaţionale, Editura ASE,
Bucureşti, 2001.
53. Ţiganescu E., Roman M. – Macroeconomie, Editura ASE, Bucureşti,
2001.
54. Ţigănescu, E., Mitruţ, D. – Bazele Cercetării Operaţionale, Ed. ASE,
Bucureşti,1999.
55. Ţigănescu, E., Mitruţ, D. – Bazele cercetării operaţionale, Editura ASE,
Bucureşti,1999.
56. Young J.P. – History and Bibliography of War Gaming. Saff Paper ORO
– SP – 13, Operaţions Research Office. The John Hokins University,
Chevy Chase Md., Aprilie, 1957.
57. * * * – The RAND Corporation – A Million Randon Digits. The Free
Press Glecoe, III, 1955.
58. * * * – Symposium of Monte Carlo – Journal of the Royal Statistical
Society. Series B, 16 (1954), 23 – 75.

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