Excel curs-1

2,441 views

Published on

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,441
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
90
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Excel curs-1

  1. 1. Lucrul în mediul Excel CAPITOLUL 1 LUCRUL ÎN MEDIUL EXCEL 1.1. Componentele ferestrei Excel Fereastra Excel – figura 1.1.- are numeroase elemente comune cu ferestrele Windows: • o bar[ de meniuri - de unde se pot selecta comenzi; • o bar[ de stare – care indic[ starea activit[ii curente; • bare de instrumente – care conin butoane =i liste derulante prin care se obine acces rapid la comenzile utilizate rapid. Bara de meniuri Celul[ Bara de stare Bare de instrumente Suprafaa foii de calcul Figura 1.1 – fereastra Excel }n plus, o fereastr[ Excel conine c`teva elemente unice, care vor fi explicate pe parcursul leciei.
  2. 2. Modelarea deciziilor utilizând foile de calcul 1.2. Configurarea unui nou registru de calcul C`nd se lanseaz[ ]n execuie programul Excel, pe ecran apare o fereastr[ care conine un registru de calcul nou. Registrul (Workbook) este principalul document folosit ]n Excel pentru stocarea =i prelucrarea datelor. Un registru este format din foi de calcul individuale, fiecare din acestea put`nd conine date. }n configuraia prestabilit[, fiecare registru de calcul creat conine 3 foi de calcul (Sheet1, Sheet2, Sheet3), dar ulterior se pot ad[uga mai multe foi (p`n[ la 255). Foile de calcul pot conine diverse tipuri de informaii. }n mod obi=nuit foile dintr-un registru de calcul conin informaii legate ]ntre ele. De exemplu, la un buget, fiecare foaie poate conine bugetul pentru un anumit departament din cadrul companiei. }n partea de jos a registrului exist[ o bar[ de derulare a foilor de calcul (figura 1.2). }n aceast[ bar[ sunt afi=ate numele foilor de calcul. (Dac[ aceast[ bar[ nu apare, din meniul Tools se selecteaz[ comanda Options. }n caseta de dialog Options se selecteaz[ butonul View =i se marcheaz[ caseta Sheet Tools). La un registru nou, foaia de calcul curent[ este Sheet1. Se poate trece la o alt[ foaie f[c`nd clic pe numele ei. De exemplu pentru a trece pe foaia Sheet 2 se face clic pe deasupra numelui ei. Etichetele foilor de calcul Bara de derulare a foilor de calcul Figura 1.2 – bara de derulare a foilor de calcul }n bara de derulare a foilor de calcul, nu pot apare numele tuturor foilor de calcul. De aceea, ]n bara de derulare a foilor au mai fost prev[zute 4 butoane care permit deplasarea printre foile registrului. Aceste butoane nu realizeaz[ selectarea foilor de calcul, ele permit doar derularea numelor lor. Tabelul de mai jos descrie operaiile pe care le realizeaz[ aceste butoane: Buton < > < > Operaie Deplasarea la prima foaie de calcul a registrului Deplasarea la ultima foaie de calcul a registrului Deplasarea spre st`nga cu o foaie Deplasarea spre dreapta cu o foaie Dac[ un registru conine mai multe foi de calcul, numele acestora sunt importante pentru identificare. Chiar =i atunci c`nd exist[ o singur[ foaie ]n registrul de calcul, numele acesteia este important, deoarece poate fi folosit ]n formule =i furnizeaz[ antetul prestabilit pentru pagina tip[rit[. De aceea este recomandabil ca foilor de calcul s[ li se acorde nume mai sugestive dec`t Sheet 1, Sheet2 etc. Pentru a denumi o foaie de calcul se execut[ urm[torii pa=i: 1. Se aplic[ un dublu clic pe eticheta foii de calcul (]n bara de derulare a foilor de calcul). Numele foii de calcul va fi afi=at ]n video invers; 2. Se introduce noul nume, dup[ care se apas[ <Enter>. }n mod prestabilit un registru conine 3 foi de calcul. Dac[ este necesar se pot ad[uga noi foi de calcul. Pentru a introduce o nou[ foaie de calcul trebuie parcur=i urm[torii pa=i:
  3. 3. Lucrul în mediul Excel 1. Se poziioneaz[ cursorul mouse-ului pe eticheta unei foi de calcul (]n bara de derulare a foilor de calcul); 2. Se aplic[ un clic folosind butonul drept al mouse-ului; 3. Pe ecran apare un meniu din care se selecteaz[ comanda Insert. Foile de calcul suplimentare pot fi eliminate prin operaia de =tergere astfel: 1. Se poziioneaz[ cursorul mouse-ului pe eticheta unei foi de calcul (]n bara de derulare a foilor de calcul); 2. Se aplic[ un clic folosind butonul drept al mouseului; 3. Pe ecran apare un meniu din care se selecteaz[ comanda Delete. 1.3. Deplasarea în cadrul foii de calcul }ntr-o foaie de calcul informaiile sunt prezentate ]n cadrul unei interfee grafice formate din linii =i coloane (figura 1.3). Coloanele au ata=ate litere, iar liniile sunt numerotate cu cifre. O foaie de calcul conine 256 coloane =i 65536 de linii. Coloanele au etichetele dispuse ]n partea superioar[ a ferestrei documentului =i sunt notate cu litere (A, B, ..., Z), apoi combinaii de dou[ litere (AA, AB p`n[ la IV). Liniile sunt numerotate de la 1 la 65536 ]n partea st`ng[ a ferestrei documentului. etichetele coloanei celula activ[ etichetele liniei Casete de derulare Bara de derulare vericala Figura 1.3 Bara de derulare orizontal[ La intersecia dintre o coloan[ =i o linie se g[se=te o celul[. Celula este unitatea fundamental[ pentru stocarea datelor. Ea poate fi referit[ folosind litera coloanei =i cifra liniei la intersecia c[rora se afl[ (de exemplu A5, B7). }ntr-o celul[ se pot introduce mai multe tipuri de informaii: • Texte - capete de tabel, etichete, note, texte explicative; • Valori – numere, date calendaristice =i ore, valori logice; • Formule – formule de calcul cu ajutorul c[rora este calculat[ o nou[ valoare ]n funcie de informaiile din alte celule. Celula activ[ este celula care este marcat[. Informaiile tastate apar ]n celula activ[. Pentru a introduce date ]n alt[ celul[, mai ]nt`i se activeaz[ celula respectiv[. Dup[ introducerea datelor se iese din celul[ cu <Enter>, altfel exist[ posibilitatea ca urm[toarele comenzi s[ nu poat[ fi aplicate.
  4. 4. Modelarea deciziilor utilizând foile de calcul Foile de calcul pot avea uneori dimensiuni foarte mari. }n aceste situaii pentru a g[si sau introduce informaii trebuie folosite metode speciale de deplasare prin foile de calcul. Deplasarea se poate efectua cu mouse-ul sau prin intermediul tastaturii. Pentru a efectua deplasarea (prin foaie) cu mouse-ul se folosesc barele de derulare vertical[ =i orizontal[ care se g[sesc ]n partea dreapt[ =i de jos a fiec[rei foi de calcul (figura 1.3). Fiecare bar[ conine dou[ s[gei. Prin executarea unui clic pe o s[geat[ se pot realiza urm[toarele operaii: 5 Derulare o linie ]n sus 6 Derulare o linie ]n jos 3 Derulare o coloan[ la st`nga 4 Derulare o coloan[ la dreapta Pentru deplasare mai rapid[ prin foaie se pot folosi casetele de derulare (prin tragerea lor ]n bara de derulare). Locul ocupat de caseta de derulare ]n cadrul barei de derulare indic[ poziia relativ[ a ferestrei fa[ de ]ntreaga zon[ a foii de calcul. O celul[ se poate activa rapid plas`nd cursorul mouse-ului pe celula respectiv[ =i execut`nd un clic pe butonul din st`nga al mouse-ului. Deplasarea prin foaia de calcul cu ajutorul tastaturii se poate face cu urm[toarele taste: Tast[ <Tab> <Home> <Ctrl>‡<Home> <Ctrl>‡<End> <Page Up> <Page Down> <Ctrl>‡<Page Up> <Ctrl>‡<Page Down> Aciune Deplasare o celul[ la st`nga Deplasare o celul[ la dreapta Deplasare o celul[ ]n sus Deplasare o celul[ ]n jos Deplasare o celul[ la dreapta Deplasare ]n celula din extrema st`ng[ a unui r`nd Deplasare ]n celula A1 a foii de calcul Deplasare ]n ultima celul[ folosit[ din foaia de calcul (colul din dreapta jos) Deplasare ]n sus cu un ecran Deplasare ]n jos cu un ecran Deplasare la dreapta cu un ecran Deplasare la st`nga cu un ecran 1.4. Utilizarea barelor de instrumente Barele de instrumente (afi=ate sub meniu) permit un acces mai rapid la procedurile =i comenzile des utilizate. Pentru a lucra cu barele de instrumente este necesar mouse-ul. Pentru utilizarea unei anumite comenzi se execut[ un clic pe butonul asociat comenzii sau funciei de care avei nevoie. }n Excel exist[ mai multe bare de instrumente, dar nu trebuie folosite toate ]n acela=i timp deoarece se ]ncarc[ prea mult ecranul. Este bine s[ fie vizualizate doar barele care conin comenzi ce trebuie folosite. Exist[ mai multe bare de instrumente predefinite care pot fi afi=ate select`nd din meniul View comanda Toolbars. Cele mai folosite bare de instrumente sunt prezentate ]n continuare:
  5. 5. Lucrul în mediul Excel Bara Standard. Conine butoane pentru comenzi de formatare, administrare fi=iere =i tip[rire. Bara Formatting Conine butoane utilizate pentru formatarea fonturilor, comenzi de aliniere, formate numerice, formatarea marginilor, stabilire culori. Bara Chart. Conine butoane pentru formatarea graficelor. Bara Pivot Table Conine butoane folosite pentru crearea, actualizarea =i organizarea tabelelor pivot Bara Drawing. Conine butoane pentru desenare. Bara Forms. Conine butoane prin intermediul c[rora se pot ad[uga foii de calcul obiecte cum ar fi: casete de validare, butoane de opiuni, liste de derulare. Bara Stop Recording. Conine dou[ butone care produc ]ncheierea =i oprirea/repornirea ]nregistr[rii unei comenzi macro. Bara Audit. Conine butoane cu comenzi pentru detectarea erorilor uzuale din foile de calcul Excel. Bara Full Screen. Aceast[ bar[ de instrumente apare atunci c`nd Excel a fost configurat pentru lucrul pe ]ntreg ecranul. Ap[sarea butonului produce ]ntoarcerea la modul de lucru anterior.
  6. 6. Modelarea deciziilor utilizând foile de calcul 1.5. Afişarea/ascunderea barelor de instrumente Pentru a avea acces la alte comenzi sau pentru a m[ri spaiul de lucru, barele de instrumente pot fi afi=ate sau ascunse. Pa=ii care trebuiesc efectuai pentru afi=area/ascunderea barelor de instrumente sunt: 1. Se aplic[ comanda View, Toolbars, Customize. 2. Pe ecran este afi=at[ caseta de dialog Customize (figura 1.4) care este alc[tuit[ din trei seciuni: Toolbars, Commands =i Options. Aceste seciuni sunt activate la ap[sarea butoanelor corespunz[toare din partea superioar[ a ferestrei. Se selecteaz[ butonul Toolbars. Figura 1.4 – caseta de dialog Customize - seciunea Toolbars 3. În lista Toolbars sunt afi=ate numele tuturor barelor de instrumente din Excel. Vor fi afi=ate numai barele de instrumente care sunt marcate. Marcarea/demarcarea se face aplicând un clic în dreptul casetei din dreptul numelui barei. 4. Se aplic[ un clic pe butonul Close. 1.6. Adăugarea/ascunderea butoanelor dintr-o bară de instrumente Componena unei bare de instrumente se poate modifica. Exist[ situaii în care la o bar[ de instrumente trebuie ad[ugat un buton nou sau trebuie =ters un buton. Aceste modific[ri se pot face în seciunea Commands a casetei Customize (figura 1.5). Aceast[ seciune conine: - lista Categories. În aceast[ list[ apar toate titlurile de meniuri verticale. - lista Commands. La selectarea unui meniu din lista Categories, în lista Commands apar toate comenzile care pot fi aplicate din meniul respectiv.
  7. 7. Lucrul în mediul Excel Figura 1.5 – fereastra de dialog Customize - seciunea Commands Pentru a ad[uga un buton nou pe o bar[ de instrumente: 1. Se aplic[ comanda View, Toolbars, Customize 2. Se activeaz[ seciunea Commands, prin selectarea butonului Commands 3. Se selecteaz[ din lista Categories comanda asociat[ butonului 4. |inând butonul stânga al mouse-ului ap[sat, se trage mouse-ul în poziia în care trebuie inserat butonul. În poziia în care butonul poate fi ad[ugat cursorul mouse-ului î=i modific[ forma – apare un cursor în forma literei I 5. Se elibereaz[ butonul mouse-ului 6. Se selecteaz[ butonul Close Pentru a =terge un buton de pe o bar[ de instrumente: 1. Se aplic[ comanda View, Toolbars, Customize 2. Se activeaz[ seciunea Commands, prin selectarea butonului Commands 3. Se aplic[ un clic pe butonul care trebuie =ters dintr-o bar[ de instrumente 4. |inând butonul stâng al mouse-ului ap[sat, se trage de mouse în interiorul casetei Customize (în orice poziie !) 5. Se elibereaz[ butonul mouse-ului 6. Se selecteaz[ butonul Close Pentru a reveni la structura standard a unei bare de instrumente, ]n seciunea Toolbars a casetei de dialog Customize se selecteaz[ bara de instrumente respectiv[, se verific[ dac[ este marcat[ =i se aplic[ comanda Reset. Este bine ca pentru ]nceput s[ fie afi=ate doar dou[ bare de instrumente: Standard =i Formating.
  8. 8. Modelarea deciziilor utilizând foile de calcul 1.7. Opţiuni suplimentare de afişare a butoanelor Forma butoanelor din barele de instrumente poate fi stabilit[ în seciunea Options a ferestrei Customize (figura 1.6). Figura 1.6 - fereastra de dialog Customize - seciunea Options Aceast[ seciune conine: - opiunea Large Icons. Dac[ opiunea este marcat[, butoanele vor fi mari, dac[ nu este marcat[ butoanele vor fi mici - opiunea Show Screen Tips on toolbars. Screen Tips reprezint[ suprafaa mic[, de culoare galben[, în care este afi=at numele butonului deasupra c[ruia este poziionat cursorul mouse-ului. Dac[ opiunea este marcat[, numele butonului va fi afi=at, dac[ nu este marcat[ numele butonului nu va fi afi=at. Recomand[m ca aceast[ opiune s[ fie marcat[ - lista Menu animations. Din aceast[ list[ se selecteaz[ modul de deschidere a meniurilor. Opiunile sunt: • None – modul normal de deschidere. Nu se aplic[ nici un efect • Random – meniurile se deschid aleator (o parte oarecare mai întâi) • Unfold – modul de deschidere seam[n[ cu o desp[turire • Slide – deshiderea d[ senzaia de alunecare
  9. 9. Filtrarea datelor CAPITOLUL 10 FILTRAREA DATELOR 10.1. Filtrarea datelor dintr-o listă Filtrarea datelor dintr-o list[ este o operaie prin care sunt afi=ate doar acele ]nregistr[ri din list[ care corespund unor criterii specificate =i ascunderea celorlalte ]nregistr[ri care nu mai sunt afi=ate. }n Excel exist[ dou[ metode de filtrare: comanda Auto Filter pentru a efectua o filtrare rapid[ a datelor din list[ =i comanda Advenced Filter pentru a filtra pe baza unor criterii suplimentare. 10.2. Utilizarea comenzii Auto Filter Comanda Auto Filter ofer[ o putere deosebit[ de gestionare a listelor. Informaiile care nu trebuie vizualizate sau tip[rite pot fi filtrate rapid doar aplic`nd clicuri. Liniile de date (]nregistr[rile) care nu ]ndeplinesc criteriile specificate sunt ascunse. Din aceast[ cauz[ atunci c`nd se face o filtrare numerele de linie apar pe s[rite =i sunt afi=ate cu culoare albastr[. Pentru a filtra o list[ cu comanda Auto Filter se execut[ urm[torii pa=i: 1. Se selecteaz[ o celul[ din lista ce trebuie filtrat[. 2. Din meniul Data se aplic[ comenziile Filter, Auto Filter. Excel va insera s[gei de derulare ]n dreptul fiec[rei celule din capul de tabel. 3. Se aplic[ un clic pe s[geata de derulare din coloana ]n care se va introduce criteriul. Se selecteaz[ criteriul pentru coloana respectiv[. Sunt posibile urm[toarele opiuni: All Permite afi=area tuturor ]nregistr[rilor cu acest c`mp. (Top 10) Permite selectarea unui subset de ]nregistr[ri pornind de sus sau de jos ]ntr-o list[. Se poate specifica fie num[rul de elemente, fie procentul de elemente ce vor fi filtrate. La selectarea acestei opiuni apare caseta de dialog Top 10 Autofilter (figura 10.1). Figura 10.1 – caseta de dialog Top 10 Autofilter Custom Din prima list[ derulant[ se selecteaz[ Top /Bottom, ]n funcie de direcia ]n care se va face filtrarea de sus (Top) sau de jos (Bottom). }n a doua list[ derulant[ se introduce sau se selecteaz[ un num[r care indic[ c`te ]nregistr[ri (dac[ ]n a treia list[ derulant[este selectat[ opiunea Items) sau ce procent din num[rul total de ]nregistr[ri (dac[ ]n a treia list[ derulant[ este selectat[ opiunea Percent) vor rezulta din filtrare. Permite crearea unor criterii definite cu condiii =i/sau. La selectarea acestei opiuni apare caseta de dialog Custom AutoFilter (figura 10.2).
  10. 10. Modelarea deciziilor utilizând foile de calcul Figura 10.2 – caseta de dialog Custom AutoFilter 4. Pentru a introduce criterii comparative se selecteaz[ un operator din prima list[ derulant[, apoi se introduce o valoare ]n caseta al[turat[. Dac[ exist[ un al doilea criteriu se selecteaz[ una din opiunile AND (=i) sau OR (sau) =i se introduce ]n mod similar al doilea criteriu. Blanks Afi=eaz[ toate ]nregistr[rile cu spaii ]n acest c`mp. Non Blanks Afi=eaz[ toate ]nregistr[rile care nu conin spaii ]n acest c`mp (]nregistr[ri ce conin date). }n plus apare o list[ cu toate valorile distincte din coloana curent[. La selectarea acestor valori vor fi afi=ate doar ]nregistr[rile care au exact aceast[ valoare ]n c`mpul specificat. Numele coloanelor dup[ care s-a f[cut filtrarea apar cu albastru. Se aplic[ pa=ii 1-3 pentru a filtra datele =i ]n funcie de alte criterii. Pe m[sur[ ce se selecteaz[ mai multe criterii ele sunt combinate =i cu criteriile anterioare. Pentru ca o ]nregistrare s[ fie afi=at[ ea trebuie s[ ]ndeplineasc[ criteriile pentru toate c`mpurile. Dac[ trebuie anulat rezultatul filtr[rii dup[ un anumit c`mp se selecteaz[ s[geata de derulare pentru acel c`mp =i se selecteaz[ opiunea All. Pentru a afi=a toate ]nregistr[rile =i a ]nl[tura criteriile din toate c`mpurile se aplic[ comanda Data, Filter, Show All. Atunci c`nd comanda AutoFilter este activ[, ]n meniu, ]n dreptul comenzii apare un marcaj de validare. Pentru a dezactiva aceast[ facilitate se aplic[ din nou comanda Data, Filter, AutoFilter. 10.3. Aplicaţie Foaia de calcul urm[toare (figura 10.3) conine o list[ cu facturile emise de o firm[. Pentru fiecare factur[ sunt specificate urm[toarele date: • codul facturii • data emiterii facturii • numele distribuitorului • numele clientului • produs v`ndut • preul unitar • cantitatea v`ndut[ • valoarea total[ (preul unitar*cantitatea v`ndut[). Pentru a calcula valoarea total[ se introduce ]n celula H2 formula =F2*G2. Aceast[ formul[ se va copia pe coloan[. 1. Se selecteaz[ o celul[ din list[.
  11. 11. Filtrarea datelor Figura 10.3 2. Din meniul Data se aplic[ comanda Filter, Autofilter. }n dreptul fiec[rei celule din capul de tabel se insereaz[ o s[geat[ de derulare. Prin filtrare se poate r[spunde la ]ntreb[ri de genul: S[ se vizualizeze toate comenzile livrate de Popescu. Pentru aceasta se aplic[ un clic pe s[geata de derulare din coloana Distribuitor =i se selecteaz[ din lista afi=at[ Popescu. Dac[ trebuie vizualizate toate comenzile livrate de Popescu cu valoare mai mare de 500000 lei se mai face o filtrare dup[ c`mpul Total. Se aplic[ un clic pe s[geata de derulare din coloana Total =i se selecteaz[ opiunea Custom. Din lista de operatori se selecteaz[ operatorul >, iar ]n caseta al[turat[ se introduce valoarea 500000. Se selecteaz[ butonul OK. 10.4. Utilizarea comenzii Advanced Filter O alt[ metod[ de filtrare este folosirea comenzii Advanced Filter. Cu aceast[ comand[ se pot efectua operaii de filtrare bazate pe criterii complexe. Pentru folosirea comenzii trebuie creat un domeniu de criterii. Domeniul de criterii specific[ condiiile pe care datele filtrate trebuie s[ le ]ndeplineasc[. Prima linie din domeniul de criterii conine numele c`mpurilor pentru care se vor specifica criterii. Numele c`mpurilor trebuie scrise exact la fel ca numele c`mpurilor din list[. }n liniile imediat urm[toare, sub numele c`mpurilor, se introduc criteriile pentru c`mpurile respective. Domeniul de criterii se va termina cu o linie goal[. Criteriile care sunt pe aceea=i linie ]n domeniul de criterii vor trebui s[ fie ]ndeplinite simultan. }ntre criteriile care se g[sesc pe linii diferite aplic[ o relaie de tip SAU. Dup[ preg[tirea domeniului de criterii se execut[ urm[torii pa=i: 1. Se selecteaz[ domeniul de celule care conine lista 2. Se aplic[ comanda Data, Filter, Advanced Filter. Pe ecran apare caseta de dialog Advanced Filter (figura 12.4): 3. Dac[ lista filtrat[ va fi afi=at[ ]n acela=i loc ca =i lista iniial[ se selecteaz[ opiunea Filter the List, in place. Dac[ datele trebuie plasate ]ntr-o alt[ zon[ a foii de calcul pentru a fi prelucrate ulterior se selecteaz[ opiunea Copy To Another Location. }n acest caz ]n caseta Copy To se specific[ domeniul de celule ce va conine lista, dac[ acesta nu a ap[rut automat. 4. }n caseta List Range se introduce domeniul de celule care conine lista, dac[ acesta nu a ap[rut automat.
  12. 12. Modelarea deciziilor utilizând foile de calcul Figura 12.4 – caseta de dialog Advanced Filter 5. }n caseta Criteria Range se introduce domeniul de celule care conine domeniul de criterii. 6. Dac[ prin filtrare trebuie ]nl[turate ]nregistr[rile duble se marcheaz[ opiunea Unique Records Only. 7. Se selecteaz[ butonul OK. 10.5. Aplicaţie }n exemplul din aplicaia precedent[ s[ se realizeze o filtrare astfel ]nc`t s[ fie vizualizate doar comenzile ]n valoare de 500.000 de lei livrate de Popescu folosind comanda Advanced Filter. Figura 12.5 La sf`r=itul listei (figura 12.5) se las[ o linie liber[ =i se introduce domeniul de criterii. Se vor introduce ]n foaia de calcul urm[toarele informaii: }n A10 Distribuitor }n B10 Val. Totala }n A11 Popescu }n B11 >500000 Rezolvare: 1. Se selecteaz[ domeniul de celule care conine lista A1:H8. 2. Se aplic[ comanda Data, Filter, Advanced Filter. 3. Caseta de dialog Advanced Filter se completeaz[ ]n modul urm[tor: • se selecteaz[ opiunea Filter the List, in place • List Range A1:H8 • Criteria Range A10:B11 • se demarcheaz[ opiunea Unique Records Only. 4. Se selecteaz[ butonul OK.
  13. 13. Compararea alternativelor in vederea luarii deciziei optime CAPITOLUL 11 COMPARAREA ALTERNATIVELOR ÎN VEDEREA LUĂRII DECIZIEI OPTIME 11.1. Utilizarea facilităţii Goal Seek Excel dispune de o serie de facilit[i pentru a putea r[spunde la ]ntreb[ri de genul “Ce se ]nt`mpl[ dac[ ?“. Presupunem c[ avem o foaie de calcul, cunoa=tem r[spunsul dorit, dar vrem s[ rezolv[m problema =i ]n sens invers, adic[ s[ g[sim valoarea de intrare care conduce la un anumit r[spuns. Pentru a putea rezolva probleme de acest tip se utilizeaz[ comanda Goal Seek. Pentru a folosi comanda Goal Seek se formuleaz[ ]nt`i problema, se introduc variabilele =i formulele ]n foaia de calcul. Celula cu rezultate trebuie s[ conin[ neap[rat o formul[, iar formula respectiv[ trebuie s[ conin[ referiri la alte celule din foaia de calcul, celule care conin variabile de intrare. Pentru g[sirea valorii de intrare care s[ conduc[ la un anumit r[spuns se vor parcurge urm[toarele etape: 1. Se selecteaz[ celula rezultat, care trebuie s[ conin[ o formul[ =i ]n care vrem s[ obinem o anumit[ valoare. 2. Se aplic[ comanda Tools, Goal Seek. Pe ecran apare caseta de dialog Goal Seek (figura 11.1). Figura 11.1 – caseta de dialog Goal Seek 3. Caseta Set Cell conine celula selectat[ ]n etapa 1. Dac[ s-a s[rit peste etapa 1, se scrie ]n aceast[ caset[ referina celulei rezultat. }n caseta To value se introduce soluia la care vrei s[ ajungei. }n caseta By changing Cell se scrie referina celulei de intrare. Aceast[ celul[ trebuie s[ contribuie la valoarea formulei din celula rezultat, specificat[ ]n Set Cell. 4. Se selecteaz[ butonul OK. Goal Seek ]nlocuie=te valoarea de intrare astfel ]nc`t soluia s[ se apropie c`t mai mult de soluia cerut[. 11.2. Aplicaţie – Goal Seek O persoan[ depune o sum[ la o banc[, pe termen de o lun[, cu o rat[ a dob`nzii de 50%. S[ se calculeze, pentru un orizont de 12 luni suma din cont la ]nceputul =i sf`r=itul fiec[rei luni. S[ se calculeze valoarea din cont la sf`r=itul perioadei pentru mai multe valori a sumei depuse. S[ se determine ce sum[ trebuie s[ fie depus[ astfel ]nc`t la sf`r=itul perioadei suma din cont s[ fie de 10000000 lei ?
  14. 14. Modelarea deciziilor utilizand foile de calcul Se va crea urm[toarea foaie de calcul (figura 11.2): Figura 11.2 Suma la ]nceputul lunii 1 este chiar suma depus[, deci ]n B5 vom introduce formula ˆB1. Suma la sf`r=itul unei luni este suma de la ]nceputul lunii la care se adaug[ dob`nda, deci formula din celula C5 va fi ˆB5‡B5*B$2/12. Suma la ]nceputul lunii 2 este suma de la sf`r=itul lunii 1, deci ]n B6 vom introduce formula ˆC5. Se copiaz[ pe coloan[ formulele din B6 =i B5. Suma de la sf`r=itul perioadei este ]n celula C16. Valoarea din aceast[ celul[ depinde ]n mod indirect de suma depus[ din B1. Dac[ se modific[ suma depus[, automat se modific[ =i valoarea din C16. De exemplu, pentru o sum[ depus[ de 3000000 se va obine la sf`r=itul perioadei o sum[ de 4896282lei. S[ rezolv[m acum urm[toarea ]ntrebare: Ce sum[ trebuie depus[ astfel ]nc`t la sf`r=itul perioadei suma final[ s[ fie de 10000000 lei ?. Rezolvare: 1. Se selecteaz[ celula C16. 2. Se aplic[ comanda Tools, Goal Seek 3. Caseta Goal Seek se va completa ]n modul urm[tor: Set Cell C16 Celula care conine suma pe care vrem sã o obinem To Value 10000000 Suma pe care vrem sã o obinem (suma depusã) By Changing Cell B1 Celula care variazã ca sã obinem rezultatul 4. Se selecteaz[ butonul OK Excel rezolv[ problema ]n mod invers, suma care trebuie depus[ fiind de 6127097 lei.
  15. 15. Compararea alternativelor in vederea luarii deciziei optime 11.3. Calcularea tabelelor de răspunsuri Facilit[ile “What if“ - “Ce se ]nt`mpl[ dac[“ oferite de Excel sunt foarte folositoare ]n afaceri. Foile de calcul pot da r[spuns imediat la ]ntreb[ri cum ar fi: “Ce s-ar ]nt`mpla dac[ s-ar reduce costurile cu 0,5% ?”, “Ce s-ar ]nt`mpla dac[ s-ar vinde mai mult cu 10% ?”, “Ce s-ar ]nt`mpla dac[ nu am primi ]mprumutul?”. Atunci c`nd se testeaz[ c`t de mult afecteaz[ rezultatele o schimbare c`t de mic[ a m[rimilor de intrare, se realizeaz[ o analiz[ de senzitivitate. Pentru a realiza o analiz[ de senzitivitate pentru un domeniu mare de intr[ri se poate folosi comanda Table din meniul Data. Comanda poate fi utilizat[ ]n dou[ moduri: 1. Modificarea unei date de intrare pentru a vedea efectul produs asupra uneia sau mai multor formule. 2. Modificarea a dou[ date de intrare pentru a vedea efectul produs asupra unei formule. Pentru a ]nelege mai bine ce face aceast[ comand[ s[ consider[m urm[torul exemplu: S[ se calculeze ratele lunare care trebuie pl[tite pentru a returna un credit, cu o anumit[ dob`nd[. Rezolvare: 1. Primul pas este crearea foii de calcul (figura 11.3). Figura 11.3 }n celula B6 se introduce formula ˆ -PMT(B2/12,B3*12,B1), formul[ cu care se calculeaz[ ratele lunare ce trebuie pl[tite pentru a returna creditul care se g[se=te ]n B1, pe durata specificat[ ]n B3 (B3*12 reprezint[ num[rul de luni), cu dob`nda din celula B2 (B2/12 reprezint[ dob`nda lunar[). 2. S[ facem o analiz[ de senzitivitate ]n care s[ analiz[m cum sunt influenate ratele lunare de dob`nzi. Se construie=te un tabel ]n care prima coloan[ sau prima linie conine valorile care trebuie testate. Pentru exemplul nostru ]n domeniul A9:A13 conine ratele dob`nzii care vor fi utilizate ca intr[ri ]n analiza de senzitivitate. 3. }n urm[toarele coloane (sau linii) din tabel, ]n celulele din capul de tabel se introduc adresele formulelor care conin r[spunsul. }n cazul nostru ]n celula B8 se introduce formula ˆB6 (B6 conine formula pentru calculul ratelor lunare). 4. Se selecteaz[ celulele care conin tabelul. Se aplic[ comanda Data, Table. Pe ecran apare caseta de dialog Table (figura 11.3).
  16. 16. Modelarea deciziilor utilizand foile de calcul Figura 11.3 – caseta de dialog Table 5. Se introduce adresa celulei care conine variabila de intrare ]n Row Input Cell (dac[ valorile care sunt testate sunt desf[=urate pe linie ) sau Column Input Cell (dac[ valorile care sunt testate sunt desf[=urate pe coloan[). }n cazul nostru, valorile testate sunt desf[=urate pe coloan[ (A9/A13), deci vom introduce ]n Column Input Cell B2 (adresa ratei dob`nzii). 6. Se selecteaz[ butonul OK. Rezultatul obinut este un tabel care conine ratele lunare corespunz[toare fiec[rei dob`nzi. }n continuare vom vedea cum poate fi folosit[ comanda Table pentru a vedea efectul produs asupra unei formule prin modificarea a dou[ date de intrare. Relu[m exemplul anterior numai c[ acum vom modifica dou[ date de intrare: dob`nda =i creditul. }n foaia da calcul se va calcula rezultatul pentru mai multe combinaii ale acestor valori. Rezolvare: 1. Ca =i ]n cazul precedent se creeaz[ foaia de calcul (figura 11.4). 2. Se construie=te un tabel ]n care prima coloan[ =i prima linie conin valorile celor dou[ variabile. Colul din st`nga sus trebuie s[ conin[ o formul[ sau o referin[ la o formul[ }n exemplul nostru domeniul A9:A13 va conine valorile dob`nzilor, domeniul B8:F8 valorile creditului, iar celula A8 va conine formula ˆB6 (o referin[ la o celul[ care conine formula de calcul). 3. Se selecteaz[ tabelul =i se aplic[ comanda Table. }n Row Input Cell se introduce adresa celulei care reprezint[ variabila care are valorile desf[=urate pe linie, iar ]n Column Input Cell se introduce adresa celulei care reprezint[ variabila care are desf[=urate valorile pe coloan[. }n cazul nostru: ]n Row Input Cell se introduce B1; ]n Column Input Cell se introduce B2. 4. Se selecteaz[ butonul OK. Rezultatul este prezentat ]n tabelul din figura 11.4. Valorile din tabel reprezint[ ratele lunare care trebuie pl[tite pentru diferite valori ale creditului =i diferite valori ale dob`nzii. Figura 11.4
  17. 17. Compararea alternativelor in vederea luarii deciziei optime 11.4. Efectuarea de analize “What if” cu scenarii Multe din analizele economice implic[ efectuarea de analize de tipul “Ce se ]nt`mpl[ dac[?”. Pentru a r[spunde la astfel de ]ntreb[ri se modific[ valorile din celulele care conin datele iniiale ale problemei. La schimbarea acestor valori se modific[ =i rezultatele. Cu c`t exist[ mai multe scenarii, cu at`t urm[rirea diferenelor dintre rezultatele acestora este mai dificil[. Excel ofer[ o facilitate care permite urm[rirea acestor scenarii: “Scenario Manager” (managerul de scenarii). 11.5. Crearea unui scenariu Un model cu scenarii trebuie s[ aib[ un set de valori de intrare =i un set de valori rezultat (care se schimb[ ]n funcie de intr[ri). Pentru a crea un scenariu se vor efectua urm[torii pa=i: 1. Se aplic[ comanda Tools, Scenarios. Pe ecran apare caseta de dialog Scenario Manager (figura 11.5). Figura 11.5 - caseta de dialog Scenario Manager 2. Din caseta Scenario Manager se selecteaz[ butonul Add. Pe ecran apare caseta de dialog Add Scenario (figura 11.6).
  18. 18. Modelarea deciziilor utilizand foile de calcul Figura 11.6 – caseta de dialog Add Scenario 3. }n caseta Scenario Name se specific[ numele scenariului. }n caseta Changing Cells se indic[ celulele sau domeniul de celule care vor fi modificate pentru fiecare scenariu. }n caseta Comment se pot scrie informaii suplimentare. Automat Excel introduce ]n aceast[ caset[ numele utilizatorului =i data la care a fost creat scenariul. Pentru a evita efectuarea de modific[ri ]n celulele din foaia de calcul se selecteaz[ optiunea Prevent Changes din seciunea Protection a casetei de dialog. Pentru a ascunde datele din celule se selecteaz[ opiunea Hide. 4. Se aplic[ un clic pe butonul OK. Pe ecran apare caseta de dialog Scenario Values (figura 11.7), ]n care se introduc datele pentru fiecare celul[ din scenariu. Figura 11. 7 – caseta de dialog Scenario Values Dup[ introducerea datelor se selecteaz[ butonul OK. Pe ecran apare caseta de dialog Scenario Manager. Denumirea noului scenariu creat apare ]n lista Scenarios. La selectarea unui scenariu din list[ ]n c`mpul Changing Cells vor fi afi=ate adresele celulelor din scenariu, iar ]n c`mpul Comments comentariile introduse. 5. Pentru a vedea scenariul se selecteaz[ denumirea lui din list[ =i se execut[ un clic pe butonul Show. Excel va afi=a valorile din toate celulele din foaia de calcul. }n cazul ]n care caseta de dialog acoper[ o parte din date, se trage cu mouse-ul bara de titlu a casetei de dialog spre marginea ecranului. 6. Pentru a reveni ]n foaia de calcul se execut[ un clic pe butonul Close. Excel va afi=a ]n foaia de calcul valorile stabilite ]n scenariu.
  19. 19. Compararea alternativelor in vederea luarii deciziei optime Este bine ca atunci c`nd se lucreaz[ cu scenarii fiecare celul[ din scenariu s[ aib[ un nume. Excel va folosi aceste nume ]n caseta de dialog Scenario Values =i ]n rapoartele pentru scenarii. Figura 11. 8 – caseta de dialog Define Name Pentru a atribui un nume unei celule se efectueaz[ urm[torii pa=i: 1. Se selecteaz[ celula c[reia trebuie s[ i se atribuie un nume. 2. Se aplic[ comanda Insert, Name, Define. Pe ecran apare caseta de dialog Define Name (figura 11.8). 3. Se scrie numele celulei ]n caseta Names. 4. Se aplic[ un clic pe butonul OK. 11.6. Editarea şi ştergerea scenariilor Un scenariu existent poate fi modificat sau poate fi =ters. Pentru a =terge un scenariu se selecteaz[ numele acestuia din caseta de dialog Scenario Manager =i se aplic[ un clic pe butonul Delete. Excel va elimina scenariul din lista cu scenarii. Figura 11. 9 – caseta de dialog Edit Scenario Pentru a modifica un scenariu se selecteaz[ numele scenariului din caseta de dialog Scenario Manager =i se aplic[ un clic pe butonul Edit Scenario. Pe ecran apare caseta de dialog Edit Scenario (figura 11.9), asem[n[toare cu caseta Add Scenario. Se efectueaz[
  20. 20. Modelarea deciziilor utilizand foile de calcul toate modific[rile necesare =i se aplic[ un clic pe butonul OK. Pe ecran apare caseta de dialog Scenario Values ]n care se introduc noile valori. 11.7. Sintetizarea scenariilor prin rapoarte Pentru compararea rezultatelor din mai multe scenarii, Excel ofer[ dou[ metode. La prima metod[ se creeaz[ un raport simplu sub form[ de tabel, ]n care sunt prezentate datele din celulele de intrare =i efectul lor asupra rezultatelor. La a doua metod[ se genereaz[ un tabel pivot. 11.8. Crearea unui raport de sintetizare Pentru a crea un raport de sintetizare se efectueaz[ urm[torii pa=i: 1. Se aplic[ comanda Tools, Scenarios. 2. Se aplic[ un clic pe butonul Summary. Pe ecran apare caseta de dialog Scenario Summary (figura 11.10) Figura 11. 10 – caseta de dialog Scenario Summary 3. Din zona Report Type se selecteaz[ opiunea Scenario Summary. }n caseta Result Cells se indic[ domeniul de celule rezultat (care conin formulele bazate pe celule cu datele iniiale). 4. Se aplic[ un clic pe butonul OK. Excel va afi=a o nou[ foaie de calcul cu un tabel ce conine pentru datele iniiale =i rezultatele din fiecare scenariuscenariu. 11.9. Crearea unui raport de tip tabel pivot pentru scenarii Tabelele pivot sunt tabele obinute prin gruparea ]n diverse moduri a informaiilor din r`ndurile =i coloanele unui tabel. Pentru a crea un tabel pivot plec`nd de la scenariile din foaia de calcul se vor efectua urm[torii pa=i: 1. Se aplic[ comanda Tools, Scenarios. 2. Se aplic[ un clic pe butonul Summary. 3. Din caseta de dialog Scenario Summary se selecteaz[ opiunea Scenario Pivot Table. }n caseta text Result Cells se indic[ domeniul de celule care conine formulele bazate pe celulele cu datele iniiale. 4. Se aplic[ un clic pe butonul OK. Excel va afi=a o nou[ foaie de calcul cu un tabel pivot ce conine datele de pornire =i rezultatele scenariului.
  21. 21. Compararea alternativelor in vederea luarii deciziei optime 11.10. Aplicaţie - Elaborarea de alternative de buget Pentru a echilibra un buget trebuie g[sit[ cea mai bun[ modalitate de a repartiza departamentelor resursele disponibile. Atunci c[nd prevederile iniiale sunt dep[=ite trebuie comparate strategiile de redistribuire. Cu facilit[ile oferite de managerul de scenarii se pot modela diferite strategii pentru a analiza avantajele =i dezavantajele diferitelor moduri de abordare. Se va crea urm[toarea foaie de calcul (figura 11.11): Figura 11.11 }n coloana Buget proiectat sunt introduse prevederile iniiale ale bugetului. }n coloana Buget repartizat sunt introduse bugetele repartizate fiec[rui departament. }n coloana Diferen[ se va calcula diferena dintre bugetul repartizat =i bugetul proiectat. }n celula D2 se va introduce formula ˆB2-C2, care se va copia ]n domeniul D3:D5. }n coloana Procent se va calcula procentul cu care se dep[=e=te bugetul proiectat. }n celula E2 se va introduce formula ˆD2/C2. Aceast[ formul[ se va copia ]n domeniul E3:E5. }n ultima linie din tabel se vor calcula totalurile: bugetul total repartizat, bugetul total proiectat, diferena total[ =i procentul de dep[=ire total. Celulele din aceast[ linie vor conine urm[toarele formule: B6: =Sum(B2:B5) C6: =Sum(C2:C5) D6: =B6-C6 E6: =D6/C6 Folosind facilitatea Goal Seek s-ar putea r[spunde la ]ntreb[ri de tipul: “C`t de mult ar putea s[ scad[ bugetul repartizat pentru departamentul Desfacere astfel ]nc`t s[ se reduc[ dep[=irea bugetului total?”. Dep[=irea bugetului total se g[se=te ]n celula E6. Aici ar trebui s[ obinem valoarea 0. Bugetul pentru departamentul Desfacere se g[se=te ]n celula B5. Pentru rezolvarea problemei: 1. Se aplic[ comanda Tools, Goal Seek. 2. Caseta de dialog Goal Seek se completeaz[ ]n modul urm[tor: Set Cell - E6, To Value 0, By Changing Cell - B5. 3. Se selecteaz[ butonul OK. Dup[ aplicarea comenzii celula B5 va conine bugetul care trebuie repartizat departamentului Desfacere astfel ]nc`t bugetul total s[ nu fie dep[=it. Pentru a testa mai multe strategii de repartizare a bugetului se poate folosi managerul de Scenarii. Rezolvare: Se denumesc celulele B2:B5: 1. Se selecteaz[ celula B2.
  22. 22. Modelarea deciziilor utilizand foile de calcul 2. Se aplic[ comanda Insert, Name, Define. 3. }n caseta Name din caseta de dialog Define Name se introduce Buget Marketing. 4. Se aplic[ un clic pe butonul OK Folosind aceea=i metod[ se vor denumi =i celulele B3:B5, B6:E6 ]n modul urm[tor: B3 - Buget Aprovizionare, B4 - Buget Resurse Umane, B5 - Buget Desfacere. B6 – Total buget repartizat C6 – Total buget proiectat D6 – Diferena total[ E6 – Procent de dep[=ire total Se vor crea mai multe scenarii care vor conine diferite valori pentru bugetele repartizate pentru cele patru departamente: 1. Se aplic[ comanda Tools, Scenarios. 2. Din caseta de dialog Scenario Manager se selecateaz[ butonul Add. 3. }n caseta Scenario Name se introduce numele scenariului: Estim[ri iniiale. }n caseta Changing Cells se indic[ celulele care vor fi modificate: B2:B5. Se aplic[ un clic pe butonul OK. 4. }n caseta de dialog Scenario Values se vor introduce datele specifice pentru fiecare scenariu. B2: 956750000 B3: 244120000 B4: 370000000 B5: 145188000 5. Se selecteaz[ butonul OK. Folosind pa=ii 2-4 se vor mai crea urm[toarele scenarii: Valori specifice scenariilor B2 B3 B4 Scenariu1 956750000 244120000 370000000 Scenariu2 956750000 23970000 320000000 B5 1252130000 1000000000 Dup[ crearea scenariilor, pentru compararea acestora se poate crea un raport. 1. }n caseta de dialog Scenario Manager se aplic[ un clic pe butonul Summary. 2. }n caseta de dialog Scenario Summary, se selecteaz[ opiunea Scenario Summary, iar ]n Result Cells se introduce domeniul B6:E6 (domeniul care conine rezultatele). 3. Se aplic[ un clic pe butonul OK. Excel creeaz[ o nou[ foaie de calcul cu un tabel ]n care sunt afi=ate pentru fiecare scenariu valorile de intrare =i valorile rezultat.
  23. 23. Utilizarea Solver-ului CAPITOLUL 12 UTILIZAREA SOLVER-ULUI 12.1. Solver - ul Cu comanda Goal Seek se poate analiza variaia rezultatelor ]n funcie de o singur[ celul[ de pornire. Multe foi de calcul sunt prea complexe pentru comanda Goal Seek. La unele modele pot fi necesare intr[ri multiple sau se pot impune restricii asupra unora dintre valorile de intrare sau asupra rezultatului. Analiza unui rezultat prin modificarea valorilor din una sau mai multe celule se poate face utiliz`nd facilitatea Solver din Excel. Pentru a putea fi folosit[ facilitatea Solver, ea trebuie mai ]nt`i instalat[. Pentru a realiza acest lucru se vor executa urm[torii pa=i: 1. Se aplic[ comanda Tools, Add-Ins. Pe ecran apare caseta Add-Ins (figura 12.1). Figura 12.1 – caseta de dialog Add - Ins 2. Se marcheaz[ opiunea Solver. 3. Se selectez[ butonul OK. Comanda Solver va aparea ]n meniul Tools. Cu Solver-ul se pot rezolva tot felul de probleme de programare liniar[ =i neliniar[: • Probleme de maximizare a c`=tigurilor • Probleme de transport • Probleme de amestec • Probleme de minimizare a costurilor Aceste tipuri de probleme vor fi tratate ]n detaliu ]n partea a doua – Modelarea deciziilor utiliz`nd foile de calcul. }n principiu problemele care pot fi rezolvate au un singur obiectiv, pentru unele variabile sunt specificate restricii, iar variabilele de intrare influeneaz[, direct sau indirect, at`t restriciile c`t =i valorile care trebuie optimizate. Pentru utilizarea Solver-ului se vor efectua urm[torii pa=i:
  24. 24. Modelarea deciziilor utilizând foile de calcul 1. Se configureaz[ foaia de calcul =i se stabile=te care sunt celulele care conin variabilele de intrare =i rezultatul. 2. Se aplic[ comanda Tools, Solvers. Pe ecran apare caseta de dialog Solver Parameters (figura 12.2). Figura 12.2 – caseta de dialog Solver Parameters }n caseta text Set Target Cell se specific[ celula care conine formula cu rezultatul care trebuie analizat (funcia obiectiv). }n seciunea Equal To se specific[ ce se urm[re=te pentru funcia obiectiv: • Dac[ trebuie maximizat[ se selecteaz[ opiunea Max. • Dac[ trebuie minimizat[ se selecteaz[ optiunea Min. • Dac[ funcia obiectiv trebuie s[ ating[ o anumit[ valoare se selecteaz[ opiunea Value of, iar ]n caseta text al[turat[ se introduce valoarea respectiv[. }n caseta text By Changing Cells se vor indica celulele sau domeniul de celule pe care Solver-ul le va modifica pentru a obine valoarea optim[. Caseta Subject to the Constraints va conine restriciile problemei. Pentru a ad[uga o restricie se aplic[ un clic pe butonul Add. Pe ecran apare o nou[ caset[ de dialog, Add Constraint (figura 12.3) ]n care se pot introduce restriciile problemei: Figura 12.3 – caseta de dialog Add Constraint Pentru a stabili o restricie: • }n caseta text Cell Reference se va specifica celula care conine formula pe care se bazeaz[ restricia.
  25. 25. Utilizarea Solver-ului Se aplic[ un clic pe s[geata de derulare pentru a vedea lista cu operatori pentru restricii =i se selecteaz[ operatorul corespunz[tor. • }n ultima caset[ text se scrie valoarea restriciei ce trebuie respectat[. • Se aplic[ un clic pe butonul Add pentru a introduce =i alte restricii. • Pentru a reveni ]n caseta de dialog Solver Parameters se aplic[ un clic pe butonul OK. Restriciile definite vor fi afi=ate ]n caseta Subject to the Constraints. 4. Se aplic[ un clic pe butonul Solver. Solver-ul va ]ncepe efectuarea calculelor pentru soluiile optime. Dup[ ce g[se=te o soluie, pe ecran apare caset[ de dialog Solver Results (figura 12.4). • Figura 12.4 – caseta de dialog Solver Results Excel introduce soluiile ]n foaia de calcul. Dac[ se alege opiunea Keep Solver Results Excel va p[stra ]n foaia de calcul soluia calculat[. Dac[ se selecteaz[ opiunea Restore Original Values, se va reveni la valorile iniiale din foaia de calcul. Pentru sintetizarea rezultatelor g[site, Solver-ul permite generarea a trei tipuri de rapoarte: • Answer - ]n care sunt prezentate valorile iniiale =i finale pentru celula rezultat =i celulele care conin variabilele de intrare. • Sensitivity - ]n care este prezentat[ o analiz[ de senzitivitate a variabilelor de intrare (cum variaz[ rezultatul la diferite modific[ri ale variabilelor de intrare). • Limits - se specific[ ]ntre ce limite pot varia limitelele impuse ]n restricii, astfel ]ncât rezultatul final s[ nu se modifice. Mai multe detalii despre aceste rapoarte sunt prezentate ]n partea a-II-a – Modelarea deciziilor utiliz`nd foile de calcul. Pentru a crea un raport se selecteaz[ denumirea lui din lista Reports din caseta Solver Results. Pentru a selecta mai multe rapoarte din list[, se alege primul raport, se ine ap[sat[ tasta <Ctrl> =i se aplic[ un clic pe unul sau ambele rapoarte r[mase. Se aplic[ un clic pe butonul OK. Excel va crea fiecare raport ]ntr-o foaie de calcul separat[. 12.2. Modificarea configuraţiei Solver-ului Utilizatorul poate specifica tehnica utilizat[ de programul Solver pentru g[sirea r[spunsurilor, precizia r[spunsurilor =i perioada de lucru a programului Solver. Pentru a realiza acest lucru din caseta de dialog Solver Parameters se selecteaz[ butonul Options. Pe ecran apare caseta de dialog Solver Options (figura 12.5). Folosind opiunile din aceast[ caset[ de dialog se poate stabili modulul ]n care va lucra Solver-ul. }n caseta Max Time se specific[ timpul maxim (]n secunde) pe care programul Solver poate s[ ]l foloseasc[ pentru g[sirea unei soluii.
  26. 26. Modelarea deciziilor utilizând foile de calcul }n caseta Iterations se specific[ num[rul maxim de iteraii pe care le poate face Solver-ul. }n caseta Precision se specific[ c`t de apropiate trebuie s[ fie dou[ ]ncerc[ri de soluie, ]nainte de a declara g[sit[ cea mai bun[ soluie. }n caseta Tolerance se specific[ (]n procente) c`t de aproape de cea mai bun[ soluie trebuie s[ fie r[spunsul, atunci c`nd se lucreaz[ cu probleme cu numere ]ntregi. Stabilirea unei tolerane mai mari poate m[ri considerabil viteza de calcul atunci c`nd se lucreaz[ cu probleme complexe cu numere ]ntregi Opiunea Assume Linear Model configureaz[ Solver-ul s[ utilizeze o metod[ de programare liniar[ pentru g[sirea soluiei. Dac[ foaia de calcul conine o problem[ neliniar[, apare un mesaj de avertisment. Opiunea Show Iterations Results permite afi=area soluiilor intermediare. Continuarea se face ap[s`nd pe butonul Continue, oprirea pe butonul Stop. Opiunile Tangent sau Quadratic sunt metode adiionale folosite pentru g[sirea soluiei. Se recomand[ utilizarea opiunii Quadratic dac[ foaia de calcul conine formule complexe care sunt neliniare. Opiunile din seciunea Derivatives permit specificarea metodei de derivare parial[ folosite. Opiunile din seciunea Search permit specificarea metodei de c[utare folosit[. Figura 12.5 – caseta de dialog Solver Options 12.3. Aplicaţie O companie are trei fabrici ]n localit[ile A, B, C. Produsele realizate ]n aceste fabrici sunt distribuite din localit[ile S =i P. Compania analizeaz[ posibilitatea de amplasare a unui nou depozit ]n localitatea R. Analizele efectuate au stabilit urm[toarele costuri de transport: Costul Transportului ]n depozitele din: Fabrici S P R A 10 14 8 B 12 10 12 C 8 12 10 Capacit[ile de producie la fabricile din localit[ile A, B, C sunt de 20, 30 =i 40 unit[i pe s[pt[m`n[. Se estimeaz[ c[ depozitul din R va absolvi 20 de unit[i pe s[pt[m`n[, iar cele din S =i P, 40 respectiv 30 de unit[i pe s[pt[m`n[.
  27. 27. Utilizarea Solver-ului S[ se determine modul de distribuie a produselor la depozite astfel ]nc`t costurile de transport s[ fie minime. Modelul va avea 9 variabile: x1 - num[rul de produse transportate de la fabrica A la depozitul S x2 - num[rul de produse transportate de la fabrica A la depozitul P x3 - num[rul de produse transportate de la fabrica A la depozitul R x4 - num[rul de produse transportate de la fabrica B la depozitul S x5 - num[rul de produse transportate de la fabrica B la depozitul P x6 - num[rul de produse transportate de la fabrica B la depozitul R x7 - num[rul de produse transportate de la fabrica C la depozitul S x8 - num[rul de produse transportate de la fabrica C la depozitul P x9 - num[rul de produse transportate de la fabrica C la depozitul R Restriciile modelului sunt: 1. x1‡x2‡x3<=20 (Producia din fabrica A sa nu dep[=easc[ capacitatea de productie) 2. x4‡x5‡x6<=30 (Producia din fabrica B sa nu dep[=easc[ capacitatea de productie) 3. x7‡x8‡x9<=40 (Producia din fabrica C sa nu dep[=easc[ capacitatea de productie) C) 4. x1‡x4‡x7>=20 (numarul de produse transportate în depozitul A sã fie mai mare decât cererea la depozitul respectiv) 5. x2‡x5‡x8 >=40 (numarul de produse transportate în depozitul B sã fie mai mare decât cererea la depozitul respectiv ) 6. x5‡x6‡x9 >=30 (numarul de produse transportate în depozitul C sã fie mai mare decât cererea la depozitul respectiv ) Functia obiectiv a modelului este minimizarea cheltuielilor de transport. Cheltuielile de transport sunt egale cu 10x1‡14x2‡8x3‡12x4‡10x5‡12x6‡8x7‡12x8‡10x9 Pentru rezolvarea acestei probleme se va configura foaia de calcul în modul urmãtor (figura 12.6): Figura 12.6
  28. 28. Modelarea deciziilor utilizând foile de calcul Celulele din meniul C3:E5 vor conine variabilele modelului. La ]nceput aceste celule se vor completa cu date aleatoare, s[ presupunem c[ toate variabilele sunt egale cu 1. }n urma rezolv[rii problemei ]n aceste celule se va obine rezultatul. }n celulele B3, B4, B5 se va calcula producia total[ realizat[ ]n fiecare fabric[. }n B3 se va introduce formula =SUM(C3:E3) =i se copiaz[ formula ]n B4 =i B5. }n celulele C6, D6, E6, se va calcula producia depozitat[ ]n fiecare depozit. }n celula C6 se va introduce formula =SUM(C3:C5). Aceast[ formul[ se copiaz[ ]n D6 =i E6. Celulele B10, B11, B12 vor conine capacit[ile de producie la fabricile A, B, C. Celulele C13, D13, E13 vor conine cererea la cele 3 depozite. }n domeniul C10:E12 se vor introduce cheltuielile de transport pe unitatea de produs de la fiecare fabric[ la fiecare depozit. }n celulele C15, D15, E15 se calculeaz[ cheltuielile de transport la fiecare depozit. }n celula C15 se introduce formula=C3*C10+C4*C11+C5*C12 (Num[rul de produse transportate de la fabrica A la depozitul S * cheltuielile de transport + num[rul de produse transportate de la fabrica B la depozitul S * cu cheltuielile de transport + num[rul de produse transportate de la fabrica C la depozitul S * cheltuielile de transport.). Aceast[ formul[ se copiaz[ ]n celulele d15 =i E15. }n celula B15 se vor calcula cheltuielile cu transportul. }n aceast[ celul[ se va introduce formula = SUM( C15:E15). Restriciile problemei pentru foaia de calcul proiectat[ vor fi: 1. B3<=B10 Producia din fabrica A s[ nu dep[=easc[ capacitatea de producie. 2. B4<=B11 Producia din fabrica B s[ nu dep[=easc[ capacitatea de producie 3. B5<=B12 Producia din fabrica s[ nu dep[=easc[ capacitatea de producie 4. C6>=C13 s[ nu existe rupere de stoc la depozitul S 5. D6>=D13 s[ nu existe rupere de stoc la depozitul P 6. E6>=E13 s[ nu existe rupere de stoc la depozitul R 7. C3:E5>=0 Toate variabilele s[ fie numere negative Dup[ ce foaia de calcul a fost configurat[, din meniul Tools se aplic[ comanda Solver. Obiectivul problemei este minimizarea cheltuielilor totale de transport. Aceast[ valoare este calculat[ ]n celula B15, deci ]n Set Target Cell se introduce B15. Funcia trebuie minimizat[, deci se va alege opiunea Min. Celulele care conin variabilele de intrare sunt ]n domeniu C3:E5, deci ]n By Changing Cells se introduce C3:E5. }n caseta Subject to the Constrains sevor introduce restriciile problemei: • Se selecteaz[ butonul Add. • }n caseta Cell Reference se introduce B3. • Din lista cu operatori se selecteaz[ <=. • }n caseta Constraint se introduce B10. • Se selecteaz[ butonul Add. • }n mod similar se introduc =i celelalte restrricii. }n final caseta Solver va fi completat[ ca ]n figura 12.7
  29. 29. Utilizarea Solver-ului Figura 12.7 Se selecteaz[ butonul Options. }n caseta de dialog Solver Options se marcheaz[ opiunile Assume Linear Model =i Assume Non Negative. Se selecteaz[ butonul OK. }n acest moment se poate selecta ]n caseta de dialog Solver Parameters butonul Solve. }n caseta Solver Results se selecteaz[ opiunea Keep Solver Solutions =i cele trei rapoarte. Se selecteaz[ butonul OK. Solver-ul rezolv[ problema. Rezultatul obinut este:se vor transporta 20 de produse de la fabrica A la depozitul R, 30 de produse de la fabrica B la depozitul P, 20 de produse de la fabrica C la depozitul S, 10 de produse de la fabrica C la depozitul P 10 de produse de la fabrica C la depozitul R.
  30. 30. Rezolvarea problemelor de programare liniară CAPITOLUL 13 REZOLVAREA PROBLEMELOR DE PROGRAMARE LINIARÃ 13.1. Rezolvarea problemelor şi procesul de luare a deciziilor }n general, prin <problem[> se ]nelege o dificultate care nu poate fi dep[=it[ ]n mod automat. Procesul de rezolvare a unei probleme poate fi definit ca procesul de identificare a diferenelor dintre starea actual[ =i starea dorit[ a unei afaceri =i stabilirea aciunilor necesare pentru a rezolva aceast[ diferen[. Pentru probleme destul de complicate care s[ justifice timpul =i efortul unei analize am[nunite, procesul de rezolvare a unei probleme implic[ parcurgerea urm[torilor pa=i: 1. Identificarea =i definirea problemei. 2. Determinarea unui set de soluii alternative. 3. Determinarea unui criteriu sau a unor criterii pentru evaluarea alternativelor. 4. Evaluarea alternativelor. 5. Alegerea unei alternative. 6. Implementarea alternativei alese. 7. Evaluarea rezultatelor =i verificarea dac[ a fost selectat[ o soluie satisf[c[toare. Luarea deciziilor este un termen ]n general asociat cu primele cinci etape ale procesului de rezolvare a unei probleme. Astfel, prima etap[ ]n luarea unei decizii este identificarea =i definirea problemei, iar ultima etap[ este alegerea unei alternative, care de fapt este actul de luare a deciziei (figura 13.1). S[ consider[m urm[toarea situaie. Un absolvent de facultate ]=i caut[ un serviciu. Ca urmare a cererilor depuse, absolventul prime=te mai multe oferte situate ]n localit[i diferite: Bucure=ti, Timi=oara, Constana, Bra=ov. Alternativele pentru acest caz de luare a deciziei sunt: 1. Acceptarea postului din Bucure=ti. 2. Acceptarea postului din Timi=oara. 3. Acceptarea postului din Constana. 4. Acceptarea postului din Bra=ov. Urm[torul pas al procesului de luare a deciziei este stabilirea criteriilor ce vor fi folosite ]n evaluarea alternativelor. Problemele decizionale ]n care obiectivul este de a g[si cea mai bun[ soluie ]n raport cu un singur criteriu se numesc decizii cu un singur obiectiv. Desigur, un criteriu important este salariul, dar pot exista =i alte criterii: posibilitatea de avansare, localitatea, posibilitatea de a avea o locuin[. Problemele decizionale ]n care decizia este luat[ ]n funcie de mai multe criterii se numesc decizii multicriteriale. Urm[torul pas este evaluarea fiec[rei altenative ]n raport cu fiecare criteriu. Unele criterii sunt u=or de evaluat (cum ar fi salariul), altele pot fi evaluate pe baza unor factori subiectivi (potenialul de avansare, localitatea). }n general, la factorii subiectivi, pentru fiecare variant[ se acord[ un calificativ sau o not[. De foarte multe ori criteriile sunt contradictorii. O alternativ[ bun[ prin aplicarea unui criteriu poate s[ nu fie la fel de bun[ prin aplicarea celorlalte criterii. Pentru evaluarea primului tip de criterii se folosesc metodele cantitative, pentru cel de al doilea tip, metodele calitative. }n abordarea cantitativ[ analistul se va concentra asupra datelor asociate problemei =i va dezvolta un model matematic care va descrie obiectivele, restriciile sau alte relaii care exist[ ]n problem[. Ulterior, prin utilizarea metodelor cantitative, analistul va face o alegere ]n funcie de datele problemei.
  31. 31. Modelarea deciziilor utilizând foile de calcul Analiza calitativ[ se bazeaz[ mai mult pe intuiie =i experien[. Dac[ managerul a avut experiene similare, problema este relativ simpl[. Dac[ managerul nu are experien[ ]n probleme similare sau problema este prea complex[, pentru luarea deciziei finale se recomand[ metodele cantitative. Definirea problemei Identificarea alternativelor Determinarea criteriilor Analiza cantitativ[ Analiza calitativ[ Evaluarea alternativelor Luarea deciziei Figura 13.1 – Procesul de luare a deciziei 13.2. Dezvoltarea modelelor Modelele sunt reprezent[ri ale unor obiecte sau situaii reale. Ele pot exista ]n mai multe forme. De exemplu, o machet[ a unui avion este o reprezentare a unui avion adev[rat. Similar, un camion de juc[rie este modelul unui camion adev[rat. Aceste dou[ exemple de modele sunt replici fizice ale obiectelor reale. Folosind terminologia adecvat[, ele sunt modele fizice sau modele iconice. O alt[ categorie de modele include obiectele care exist[ ]n form[ fizic[, dar nu au acela=i aspect ca =i obiectul modelat. Acestea sunt modelele analogice. Cutia de viteze a unui automobil este un model analogic: poziia acului indic[ viteza automobilului. Un termometru este un alt model analogic pentru reprezentarea temperaturii. A treia categorie include acele modele care reprezint[ o problem[ sub forma unui set de relaii matematice. Aceste modele se numesc modele matematice. De exemplu, profitul total obinut prin v`nzarea unui produs poate fi calculat ]nmulind profitul unitar cu cantitatea v`ndut[. Dac[ x reprezint[ num[rul de unit[i v`ndute, P profitul total, atunci pentru un profit
  32. 32. Rezolvarea problemelor de programare liniară unitar de 1000 lei, modelul matematic care stabile=te profitul total ]n funcie de v`nz[ri este Pˆ1000*x. Scopul utiliz[rii modelelor este realizarea unei interfee cu situaia real[ prin studierea =i analizarea modelului. De exemplu, un constructor de avioane poate testa un model fizic pentru a verifica caracteristicile de zbor ale unui avion adev[rat. Similar, un model matematic poate fi utilizat pentru a analiza ce profit va fi obinut dac[ un produs este v`ndut. Pentru cazul prezentat, dac[ vor fi v`ndute 30 de buc[i (xˆ30), profitul obinut va fi de 30*1000ˆ30000 lei. Utilizarea modelelor matematice reduce cheltuielile =i timpul necesar pentru rezolvarea unei probleme reale. O machet[ de avion se construie=te mai repede =i este mai ieftin[ dec`t un avion real. La fel, prin utilizarea modelului matematic, se poate calcula rapid profitul ce poate fi obinut, f[r[ ca managerul s[ produc[ =i s[ v`nd[ cele x unit[i. Modelele au =i avantajul reducerii riscului asociat, prin experimentarea unei situaii reale. Pentru exemplele prezentate se pot evita gre=elile de proiectare, care ar putea duce la pr[bu=irea avionului, sau se pot evita deciziile gre=ite care ar duce la pierderi de milioane de lei. Concluziile obinute depind de c`t de bine reprezint[ modelul situaia real[. Cu c`t modelul se apropie mai mult de cazul real, cu at`t rezultatele vor fi mai precise. }n continuare vor fi analizate numai modelele matematice. Principalele aspecte abordate se refer[ la utilizarea metodelor cantitative ]n procesul de luare a deciziei. Accentul este pus nu pe metodele propriu-zise, ci pe modul ]n care ele pot fi rezolvate utiliz`nd foile de calcul. 13.3. Modele matematice }n majoritatea cazurilor ]n care se ]ncearc[ rezolvarea unor probleme manageriale se constat[ c[ modul ]n care este structurat[ problema conduce la obinerea unui obiectiv specific (cum ar fi maximizarea unui profit sau minimizarea unui cost). De asemenea, se constat[ c[ de multe ori exist[ o serie de restricii sau constr`ngeri (cum ar fi capacitatea de producie). Succesul folosirii analizei cantitative depinde de acurateea cu care obiectivul =i restriciile sunt exprimate sub form[ de ecuaii =i relaii matematice. Expresia matematic[ care descrie obiectivul problemei se nume=te funcie obiectiv. De exemplu, ecuaia Pˆ10*x poate fi funcia obiectiv a unei firme care ]ncearc[ s[ maximizeze profitul. Relaiile matematice care descriu constr`ngerile problemei se numesc restricii. Dac[ de exemplu pentru a produce o unitate de produs sunt necesare 5 ore =i ]ntr-o s[pt[m`n[ se lucreaz[ doar 40 de ore, atunci relaia 50*xˆ40 este o restricie de timp. 5*x reprezint[ timpul total necesar pentru a produce x unit[i, care trebuie s[ fie mai mic sau egal cu cele 40 de ore disponibile. Problema de decizie este urm[toarea: C`te unit[i trebuie produse ]ntr-o s[pt[m`n[ pentru a maximiza profitul? Modelul matematic al acestei probleme este: Max P = 10 * x functia obiectiv 5 * x ≤ 40  restrictii x≥0  Restricia xŽˆ0 este necesar[ deoarece nu se poate fabrica un num[r negativ de produse.
  33. 33. Modelarea deciziilor utilizând foile de calcul 13.4. Metoda programării liniare Programarea liniar[ este o metod[ de rezolvare a problemelor de luare a deciziei. Urm[toarele tipuri de aplicaii sunt specifice pentru rezolvarea lor cu ajutorul program[rii liniare: 1. Un manager trebuie s[ stabileasc[ pentru perioada urm[toare programul de producie =i nivelul stocurilor astfel ]nc`t s[ fie satisf[cut[ cererea de pe pia[ =i ]n acela=i timp vrea s[ minimizeze costul total de producie =i costurile de stocare. 2. Un analist financiar trebuie s[ selecteze pentru un portofoliu de investiii cea mai bun[ combinaie de aciuni =i obligaiuni. Aceste investiii trebuie selectate astfel ]nc`t s[ se maximizeze eficiena investiiei. 3. Un director de marketing trebuie s[ stabileasc[ modul ]n care va distribui bugetul pentru publicitate ]n diverse medii: radio, televiziune, ziare =i reviste, astfel ]nc`t efectul reclamei f[cute s[ fie maxim. 4. O companie are depozite ]n c`teva ora=e din ar[ =i prime=te comenzi de la clieni din diverse localit[i. Se pune problema determin[rii cantit[ilor care vor fi trimise de la depozite spre clieni astfel ]nc`t costurile totale de transport s[ fie minimizate. Acestea sunt doar c`teva exemple ]n care programarea liniar[ a fost utilizat[ cu succes, dar lista poate continua. Ce au ]n comun aceste exemple este faptul c[ ele ]ncearc[ s[ minimizeze sau s[ maximizeze ceva. }n primul exemplu managerul vrea s[ minimizeze costurile; ]n exemplul 2 analistul financiar vrea s[ maximizeze eficiena investiiei; ]n exemplul 3 directorul de marketing trebuie s[ maximizeze eficiena reclamei; ]n exemplul 4 trebuie minimizate cheltuielile de transport. }n toate problemele de programare liniar[, obiectivul este maximizarea sau minimizarea unor cantit[i. Toate problemele de programare liniar[ au =i o a doua proprietate: restriciile care limiteaz[ gradul ]n care obiectivul poate fi realizat. }n exemplul 1 producia este limitat[ de capacitatea de producie =i ]n acela=i timp trebuie s[ satisfac[ cererea; ]n exemplul 2 analistul este limitat de suma disponibil[ =i tipul aciunilor existente; ]n exemplul 3 directorul de marketing este constr`ns de bugetul fixat =i de disponibilitatea mediilor de reclama; ]n exemplul 4 cantit[ile ce pot fi transportate sunt limitate la disponibilul din fiecare depozit. Deci, restriciile sunt o alt[ tr[s[tur[ general[ a fiec[rei probleme de programare liniar[. Exemplu Firma ABC produce o varietate de produse chimice. }n cadrul unui proces de producie, pentru a produce dou[ produse (un aditiv =i un solvent) sunt necesare trei tipuri de materii prime. Aditivul este v`ndut fabricilor de ulei =i este folosit la producerea a diverse tipuri de combustibil. Solventul este v`ndut combinatelor chimice =i este utilizat la fabricarea detergenilor. Pentru a fabrica aditivul =i solventul cele trei materii prime sunt amestecate ]n proporiile indicate ]n tabelul 13.1. Produs Material 1 Material 2 Material 3 Aditiv 2 /5 0 3 /5 Solvent ½ 1 /5 3 /10 Tabelul 13.1 – Necesarul de materii prime pentru obinerea unei tone de adidiv/solvent
  34. 34. Rezolvarea problemelor de programare liniară Pentru a obine o ton[ de aditiv se amestec[ 2/5 tone de material 1=i 3/5 tone de material 3. O ton[ de solvent poate fi obinut[ prin amestecarea a ½ tone de material 1, 1/5 tone de material 2 =i 3/10 tone de material 3. Producia este limitat[ de disponibilitatea celor trei materii prime. }n prezent firma dispune de 20 tone de material 1, 5 tone de material 2 =i 21 tone de material 3. Prin natura procesului de producie, materiile prime care nu sunt utilizate ]n procesul de producie curent sunt considerate de=euri. Fiecare ton[ de aditiv aduce un profit de 40$ , iar fiecare ton[ de solvent aduce un profit de 30$. Managementul firmei ABC, dup[ analiza cererii de pe pia[, a decis c[ preurile stabilite vor determina v`nzarea ]ntregii cantit[ii produse (aditiv =i sovent). Formularea problemei Formularea problemei sau modelarea reprezint[ procesul de transpunere a problemei ]ntr-un model matematic. Modelarea problemei este o art[ care poate fi st[p`nit[ prin practic[ =i experien[. De=i fiecare problem[ are caracteristici unice, multe probleme pot avea tr[s[turi comune. Ca urmare, pentru ]ncep[tori pot fi utile o serie de reguli ce pot fi aplicate pentru formularea unui model, reguli ce vor fi ilustrate ]n dezvoltarea modelului matematic pentru firma ABC. Acest exemplu a fost selectat pentru a introduce metoda program[rii liniare pentru c[ este u=or de ]neles. }n practic[ apar probleme mai complicate, care necesit[ o analiz[ mai profund[ pentru a identifica toate aspectele care trebuie incluse ]n model. Primul pas este identificarea obiectivului =i a restriciilor. }n cazul nostru obiectivul este maximizarea profitului total. Restriciile se refer[ la cantit[ile de materii prime disponibile, care limiteaz[ cantit[ile de aditiv =i solvent ce pot fi produse. Restricia 1: cantitatea de material 1 utilizat[ trebuie s[ fie mai mic[ sau egal[ cu cantitatea de material 1 disponibil[. Restricia 2: cantitatea de material 2 utilizat[ trebuie s[ fie mai mic[ sau egal[ cu cantitatea de material 2 disponibil[. Restricia 3: cantitatea de material 3 utilizat[ trebuie s[ fie mai mic[ sau egal[ cu cantitatea de material 3 disponibil[. Urm[torul pas este definirea variabilelor de decizie. Cele dou[ variabile de decizie sunt: num[rul de tone de aditiv produse =i num[rul de tone de solvent produse. Not[m cu: A: cantitatea de aditiv produs[ (tone) S: cantitatea de solvent produs[ (tone) A =i S sunt variabile de decizie. Se scrie obiectivul utiliz`nd variabilele de decizie. Profitul total provine din dou[ surse: v`nz[rile de aditiv =i v`nz[rile de solvent. Dac[ profitul obinut prin v`nzarea unei tone de aditiv este de 40$, atunci prin v`nzarea a A tone profitul va fi 40*A. La fel, dac[ profitul obinut prin v`nzarea unei tone de solvent este de 30$, atunci prin v`nzarea a S tone profitul va fi 40*S. Profitul total ˆ 40A ‡ 30S Expresia matematic[ a obiectivului se nume=te funcie obiectiv. }n cazul nostru obiectivul este maximizarea profitului total, deci funcia obiectiv va fi:
  35. 35. Modelarea deciziilor utilizând foile de calcul Max ( 40A ‡ 30S ) Se scriu restriciile utiliz`nd variabilele de decizie. Restricia 1. Deoarece o ton[ de aditiv este produs[ folosind 2/5 tone de material 1, cantitatea de material 1 necesar[ pentru a produce A tone de aditiv este 2/5 * A. Pentru fiecare ton[ de solvent se folosesc ½ tone de material 1, deci cantitatea de material 1 necesar[ pentru a produce S tone de solvent este ½ * S. Astfel, cantitatea total[ de material 1 necesar[ este 2/5 * A ‡ ½ * S. Cantitatea disponibil[ de material 1 este de 20 tone, deci transpunerea sub form[ de ecuaie a restriciei 1 este: 2 /5 * A ‡ ½ * S  ˆ20 Restricia 2. Deoarece la fabricarea aditivului nu este necesar materialul 1 se va lua ]n lua ]n calcul doar cantitatea de material 2 utilizat[ la fabricarea solventului. Pentru fiecare ton[ de solvent se folosesc 1/5 tone de material 2, deci cantitatea de material 2 necesar[ pentru a produce S tone de solvent este 1/5 * S. Astfel, cantitatea total[ de material 2 necesar[ este 1/5 * S. Cantitatea disponibil[ de material 2 este de 5 tone, deci transpunerea sub form[ de ecuaie a restriciei 2 este: 1 /5 * S ˆ5 Restricia 3. Deoarece o ton[ de aditiv este produs[ folosind 3/5 tone de material 3, cantitatea de material 3 necesar[ pentru a produce A tone de aditiv este 3/5 * A. Pentru fiecare ton[ de solvent se folosesc 3/10 tone de material 3, deci cantitatea de material 3 necesar[ pentru a produce S tone de solvent este 3/10 * S. Astfel, cantitatea total[ de material 3 necesar[ este 3/5 * A ‡ 3/10 * S. Cantitatea disponibil[ de material 3 este de 21 tone, deci transpunerea sub form[ de ecuaie a restriciei 3 este: 3 /5 * A ‡ 3/10 * S ˆ 21 P`n[ acum am specificat relaiile matematice referitoare la constr`ngerile asociate celor trei materii prime. Mai trebuie oare alte restricii? Poate firma ABC s[ produc[ un num[r negativ de tone de aditiv =i solvent? R[spunsul este evident nu. Deci pentru ca variabilele de decizie s[ nu aib[ valori negative mai sunt necesare dou[ restricii: A Žˆ0 S Žˆ0 Modelul matematic al problemei este acum complet. At`t obiectivul c`t =i restriciile au fost transformate ]ntr-un set de relaii matematice, set de relaii definit ca model matematic. Modelul matematic complet al problemei este: Max ( 40A ‡ 30S ) 2 /5 * A ‡ ½ * Sˆ20 1 /5 * Sˆ5 3 /5 * A ‡ 3/10 * Sˆ21 AŽˆ0 SŽˆ0 Pentru rezolvarea problemei trebuie g[sit[ combinaia optim[ (de A =i S) care s[ satisfac[ toate restriciile =i ]n acela=i timp s[ conduc[ la o valoare a funciei obiectiv care s[ fie mai mare sau egal[ dec`t orice valoare calculat[ cu o alt[ soluie posibil[. Dac[ funcia obiectiv =i restriciile sunt funcii liniare ]n raport cu variabilele de decizie (variabilele de decizie apar numai la puterea I), atunci avem o problem[ de programare liniar[.
  36. 36. Rezolvarea problemelor de programare liniară Pentru rezolvarea problemelor de programare liniar[ exist[ mai multe metode analitice: metoda Simplex, metoda grafic[. }n continuare vom prezenta modul ]n care pot fi rezolvate problemele de programare liniar[ utiliz`nd foile de calcul (Microsoft Excel). 13.5. Utilizarea foilor de calcul pentru rezolvarea problemelor de programare liniară Foile de calcul sunt instrumente utilizate frecvent pentru prelucrarea datelor ]n multe organizaii. Deoarece modelele matematice necesit[ de multe ori date care deja exist[ ]n alte foi de calcul, este important a ]nelege modul ]n care o problem[ de programare liniar[ poate fi rezolvat[ cu ajutorul foilor de calcul. }n continuare vom ilustra modul ]n care se poate rezolva problema precedent[ folosind foile de calcul. }n acest scop va fi folosit programul de calcul tabelar Microsoft Excel. Un model de programare liniar[ transpus ]ntr-o foaie de calcul va conine urm[toarele elemente: 1. Celulele care conin datele problemei. 2. Celulele pentru variabilele de decizie. 3. O celul[ care conine formula pentru calcularea funciei obiectiv. 4. Celulele care conin formulele pentru calcularea p[rii st`ngi a restriciilor. 5. Celulele care conin valorile p[rii drepte a restriciilor. Transpunerea problemei ]ntr-o foaie de calcul presupune parcurgerea urm[toarelor etape: 1. Introducerea datelor problemei ]n foaia de calcul. 2. Definirea celulelor care vor conine variabilele de decizie. 3. Definirea celulei care conine formula pentru funcia obiectiv. 4. Definirea celulelor care conin formulele din partea st`ng[ a resticiilor. 5. Definirea celulelor care conin valorile din partea dreapt[ a restriciilor. }n figura 13.2 este prezentat[ soluia pentru problema prezentat[ anterior. A 1 B C D Firma ABC 2 3 4 5 6 7 8 Materiale Material 1 Material 2 Material 3 Profit pe tona 0.4 0 0.6 40 Necesar de materiale Aditiv Solvent 0.5 0.2 0.3 30 Cantitate disponibila 20 5 21 9 10 11 Model 12 Variabile de decizie Aditiv Solvent 13 14 15 Tone produse 16 17 Maximizarea profitului total =B8*B15+C8*C15 18 Restrictii Material 1 Material 2 21 Material 3 22 19 20 Cantitati utilizate =B5*B15+C5*C15 =B6*B15+C6*C15 =B7*B15+C7*C15 <= <= <= Cantitati disponibile =D5 =D6 =D7 Figura 13.2 – Foaia de calcul utilizat[ pentru rezolvarea problemei
  37. 37. Modelarea deciziilor utilizând foile de calcul Remarcai c[ foaia de calcul este alc[tuit[ din dou[ p[ri: o parte conine datele problemei =i alta conine modelul. Un avantaj al separ[rii datelor de model este c[ se poate studia efectul modific[rii m[rimilor de intrare asupra modelului f[c`nd modific[ri doar ]n zona care conine date. Un alt avantaj este c[ analistul poate dezvolta modelul independent de datele disponibile. }n continuare este prezentat fiecare pas al procedurii: Pasul 1: Introducerea datelor problemei. Datele problemei apar ]n partea superioar[ a foii de calcul. Fraciile care reprezint[ compoziia pentru obinerea unei tone de solvent =i aditiv au fost convertite ]n valori zecimale =i introduse ]n domeniul B5:C7. Valoarea 0.4 din celula B5 arat[ c[ fiecare ton[ de aditiv produs[ utilizeaz[ 0.4 tone de material 1, valoarea 0.5 din celula C5 arat[ c[ fiecare ton[ de solvent produs[ utilizeaz[ 0.5 tone de material 1, etc. Celulele D5:D7 conin cantitatea disponibil[ din fiecare material, iar celulele B8 =i C8 conin profitul obinut prin v`nzarea unei tone de aditiv (40$), respectiv solvent (30$). Pasul 2: Definirea celulelor care vor conine variabilele de decizie. Celulele B15 =i C15 conin num[rul de tone de aditiv =i solvent produse. Pasul 3: Definirea celulei care conine formula funciei obiectiv. Celula B17 conine formula pentru calcularea funciei obiectiv: ˆ B8*B15‡ C8*C15 (profiul unitar pe tona de aditiv * producia de aditiv ‡ profiul unitar pe tona de solvent * producia de solvent). Pasul 4: Definirea celulelor care conin formulele din partea st`ng[ a restriciilor. Celulele B20:B22 conin formulele care indic[ cum se calculeaz[ partea st`ng[ a restriciilor. Pentru materialul 1, ]n celula B20 se introduce formula ˆB5*B15‡C5*C15 (cantitatea de aditiv produs[*cantitatea de material 1 pentru a produce o ton[ de aditv ‡ cantitatea de solvent produs[*cantitatea de material 1 pentru a produce o ton[ de solvent). }n mod similar se vor introduce ]n celulele B21 =i B22 formulele pentru materialele 2 =i 3. Pasul 5: Definirea celulelor care conin valorile din partea dreapt[ a restriciilor. }n problema analizat[ valorile din partea dreapt[ a restriciilor reprezint[ cantit[ile de material disponibile, valori care deja sunt introduse ]n domeniul D5:D7. Pentru materialul 1, ]n celula D20 se introduce formla ˆD5, pentru matrialul 2, ]n celula D21 se introduce formula ˆD6, iar pentru materialul 3 ]n celula D22 se introduce formula ˆD7. Un avantaj al folosirii foilor de calcul este c[ dac[ una din valorile din partea care conine datele problemei se modific[, valorile din model se modific[ automat.. Pentru a determina soluia optim[ a problemei se va folosi Solver-ul din Excel. Pa=ii urm[tori arat[ modul ]n care poate fi folosit Solver-ul pentru obinerea soluiei optime pentru o problem[ de programare liniar[. 1. Se selecteaz[ meniul Tools. 2. Se aplic[ comanda Solver. 3. Caseta Solver Parameters se completeaz[ ]n modul urm[tor: • Set Target Cell: B17 • Se selecteaz[ opiunea Max. • By Changing Cells: B15:C15. • Se selecteaz[ butonul Add. 4. Caseta Add Constraint se completeaz[ astfel: • Cell Reference: B20:B22 • Se selecteaz[ operatorul ‹ ˆ
  38. 38. Rezolvarea problemelor de programare liniară • Constraint: D20:D22 • Se selecteaz[ butonul OK. 5. C`nd caseta Solver Parameters apare din nou se selecteaz[ butonul Options. 6. }n caseta Solver Options se selecteaz[: • Assume Linear Model. • Assume Non- Negative. • Butonul Ok. 7. C`nd caseta Solver Parameters apare din nou se selecteaz[ butonul Solve. 8. }n caseta Solver Results se selecteaz[ Keep Solver Solution. Se selecteaz[ butonul Ok pentru a genera soluia optim[, afi=at[ ]n celulele B15, C15. Soluia optim[ este 25 tone de aditiv =i 20 tone de solvent. 13.6. Analiza de senzitivitate şi interpretarea rezultatelor Problemele din lumea real[ au loc ]ntr-un mediu ]n continu[ schimbare. Preul materiilor prime, salariile, cererea, oferta, valoarea aciunilor, etc. sunt valori care pot varia de la un moment la altul. Dac[ o problem[ de programare liniar[ este utilizat[ ]ntr-un astfel de mediu, ne putem a=tepta ca anumii coeficieni ai problemei s[ se modifice ]n timp. Deci va trebui s[ determin[m cum afecteaz[ aceste schimb[ri soluia optim[ a problemei de programare liniar[ iniial[. Cu analiza de senzitivitate se poate observa cum este afectat[ soluia optim[ de modific[ri ale coefiecienilor dintr-o problem[ de programare liniar[. Utiliz`nd analiza de senzitivitate se poate r[spunde la ]ntreb[ri de tipul: 1. Cum este afectat[ soluia optim[ de o modificare a unui coeficient din funcia obiectiv? 2. Cum este afectat[ soluia optim[ de o modificare a valorii din partea dreapt[ a restriciilor? Deoarece obiectul analizei de senzitivitate este modul ]n care modific[rile specificate afecteaz[ soluia optim[, analiza nu poate ]ncepe p`n[ c`nd nu se obine soluia problemei de programare liniar[ iniial[. Din aceast[ cauz[, analiza de senzitivitate este de multe ori numit[ =i analiz[ postoptimal[. Revenind la problema prezentat[ anterior: Max ( 40A ‡ 30S ) 2 /5 * A ‡ ½ * Sˆ20 1 /5 * Sˆ5 3 /5 * A ‡ 3/10 * Sˆ21 AŽˆ0 SŽˆ0 Materialul 1 Materialul 2 Materialul 3 Soluia optim[ Aˆ25 tone de aditiv =i Sˆ20 tone de solvent s-a obinut pentru cazul ]n care s-a considerat c[ profitul pe ton[ pentru aditiv este 40$, iar profitul pe ton[ pentru solvent este de 30$. Presupunem c[ datorit[ unor factori exteriori are loc o reducere a preurilor, ceea ce determin[ o sc[dere a profitului de la 30$ pe ton[ la 25$ pe ton[ pentru solvent. }n acest caz programul de producie de 25 de tone de aditiv =i 20 de tone de solvent este ]n continuare cel mai bun? }n mod normal ar trebui s[ rezolv[m o nou[ problem[ de programare liniar[ cu funcia obiectiv modificat[ 40*A‡25*S. Acest lucru nu este necesar, deoarece cu analiza de senzitivitate putem determina ]n ce limite poate varia profitul pe tona de aditiv f[r[ ca soluia
  39. 39. Modelarea deciziilor utilizând foile de calcul optim[ s[ se modifice. Dac[ analiza de senzitivitate arat[ c[ 25 tone de aditiv =i 20 de tone de solvent r[m`ne soluia optim[ at`ta timp profitul pe tona de solvent variaz[ ]ntre 20$ =i 40$, agentul decizional poate considera c[ estimarea de 30$/ton[ este bun[. Dac[ analiza de senzitivitate arat[ c[ 25 de tone de aditiv =i 20 de tone de solvent r[m`ne soluia optim[ at`ta timp profitul pe tona de solvent variaz[ ]ntre 29.90$ =i 32$, managementul va trebui s[ reanalizeze acurateea estim[rii de 30$/tona de solvent. Domeniul de optimalitate pentru fiecare coeficient al funciei obiectiv este domeniul de valori ]n care acest coeficient poate varia far[ a modifica soluia optim[. Managerul va trebui s[ analizeze cu atenie acei coeficieni din funcia obiectiv care au un domeniu de optimalitate ]ngust, deoarece o mic[ modificare a acestora poate modifica soluia optim[. Un alt aspect al analizei de senzitivitate se refer[ la modific[rile valorilor din partea dreapt[ a restriciilor. Referindu-ne la aceea=i problem[, pentru soluia optim[ sunt utilizate ]n ]ntregime stocurile de material 1 =i 3. Ce se ]nt`mpl[ cu soluia optim[ =i profitul total dac[ se m[resc cantit[ile disponibile de material 1 =i 3? Cu analiza de senzitivitate se poate determina cu c`t va cre=te profitul total dac[ cantitatea disponibil[ de material 1 sau 3 cre=te cu o ton[. Pentru ca programul Excel s[ furnizeze un raport pentru realizarea analizei de senzitivitate, c`nd se rezolv[ problema cu Solver-ul, ]n fereastra de dialog Solver Results, seciunea Reports, se selecteaz[ Sensitivity (vezi lecia 12). 13.7. Interpretarea raportului Excel pentru analiza de senzitivitate Raportul generat de Excel are structura prezentat[ ]n figura 13.3. Microsoft Excel 9.0 Sensitivity Report Worksheet: Firma ABC Report Created: 28/07/2001 12:39:34 PM Adjustable Cells Cell Name $B$15 Tone produse Aditiv $C$15 Tone produse Solvent Final Value 25 20 Reduced Cost Objective Allowable Allowable Coefficient Increase Decrease 0 40 20 16 0 30 20 10 Constraints Cell $B$20 $B$21 $B$22 Name Material 1 Cantitati utilizate Material 2 Cantitati utilizate Material 3 Cantitati utilizate Final Shadow Constraint Allowable Allowable Value Price R.H. Side Increase Decrease 20 33.33333333 20 1.5 6 4 0 5 1E+30 1 21 44.44444444 21 9 2.25 Figura 13.3 – Raportul de analiz[ de senzitivitate Raportul are dou[ seciuni Adjustable Cells =i Constraints. }n seciunea Adjustable Cells se analizeaz[ coeficienii variabilelor de decizie din funcia obiectiv, iar ]n seciunea Constraints sunt analizate valorile din partea dreapt[ a restriciilor. Seciunea Adjustable Cells }n coloana Cell sunt afi=ate celulele care conin coeficienii variabilelor de decizie din funcia obiectiv, iar ]n coloana Name sunt afi=ate numele acestor celule. Coloana Final Value conine valorile optime pentru variabilele de decizie. Pentru problema analizat[ soluia este 25 de tone de aditiv =i 20 tone de solvent. Coloana Reduced Cost. Pentru fiecare variabil[ de decizie, valoarea absolut[ din Reduced Cost arat[ c`t de mult trebuie s[ creasc[ (pentru problemele de maximizare) sau s[
  40. 40. Rezolvarea problemelor de programare liniară scad[ (pentru problemele de minimizare) coeficientul variabilei de decizie din funcia obiectiv astfel ]nc`t variabila de decizie respectiv[ s[ aib[ valoare pozitiv[. Dac[ o variabil[ de decizie este pozitiv[ ]n soluia optim[, costul redus este 0. Pentru problema analizat[ ambele variabile de decizie au valori pozitive =i costurile reduse sunt 0. Dac[ de exemplu pentru cantitatea de solvent s-ar fi obinut 0 ]n coloana Final Value =i –12.5 ]n coloana Reduced Cost, interpretarea ar fi urm[toarea: profitul pe tona de solvent ar trebui s[ creasc[ la 30‡12.50ˆ42.50 pentru ca ]n soluia optim[ variabila de decizie ata=at[ cantit[ii de solvent s[ aib[ o valoare pozitiv[. Altfel spus, pentru a produce solvent ar trebui ca profitul pe tona de solvent s[ fie 42.50$. Coloana Objective Coefficient conine valorile coeficienilor variabilelor de decizie din funcia obiectiv, iar coloanele Allowable Increase =i Allowable Decrease conin valorile pe baza c[rora se poate calcula domeniu de optimalitate pentru coeficientul respectiv (cre=terea =i mic=orarea permis[). De exemplu, pentru aditiv: 40 − 16 ≤ C Aditiv ≤ 40 + 20 24 ≤ C Aditiv ≤ 60 Deci dac[ profitul pe tona de aditiv variaz[ ]ntre 24 =i 60, soluia optim[ de 25 tone de aditiv =i 20 tone de solvent r[m`ne neschimbat[. Pentru solvent: 30 − 10 ≤ CSolvent ≤ 30 + 20 20 ≤ CSolvent ≤ 50 Deci dac[ profitul pe tona de solvent variaz[ ]ntre 20 =i 50, soluia optim[ de 25 tone de aditiv =i 20 tone de solvent r[m`ne neschimbat[. Seciunea Constraints Coloana Cell indic[ celulele care conin valorile din partea dreapt[ a restriciilor, iar coloana Name conine numele acestor celule. Valorile din coloana Final Value sunt valorile restriciilor (partea st`ng[) calculate pentru soluia optim[. Pentru problema analizat[ valorile din coloana Final Value indic[ cantit[ile de material 1, 2 =i 3 necesare pentru a produce combinaia optim[ de 25 de tone de aditiv =i 20 tone de solvent. Deci pentru soluia optim[ sunt necesare 20 tone de material 1, 4 tone de material 2 =i 21 tone de material 3. Valorile din coloana Constraint RH sunt valorile iniiale ale problemei: 20 tone de material 1, 5 tone de material 2, 21 tone de material 3 (cantit[ile disponibile). Pentru fiecare restricie abaterea reprezint[ diferena dintre valoarea din coloana Constraint RH =i valoarea din Final Value. Abaterea asociat[ materialului 1 este 20-20ˆ0 tone, pentru materialul 2: 5-4ˆ1 ton[, iar pentru materialul 3: 21-21ˆ0 tone. Deci materialele 1 =i 3 sunt utilizate ]n totalitate, iar din materialul 2 r[m`ne o ton[. Concluzia este c[ dac[ ar exista cantit[i mai mari de material 1 sau 3 s-ar putea obine un profit total mai mare. Modul ]n care modificarea acestor cantit[i influeneaz[ profitul este indicat ]n coloana Shadow Price (preuri umbr[). Preurile umbr[ arat[ cu c`t se modific[ (cre=tere/mic=orare) valoarea funciei obiectiv la cre=terea/mic=orarea cu o unitate a valorii din partea dreapt[ a unei restricii. }n cazul nostru, preul umbr[ de 33.33 pentru materialul 1 arat[ c[ o ton[ suplimentar[ de material 1 va cre=te profitul cu 33.33$. Deci, dac[ cantitatea disponibil[ de material 1 ar cre=te de la 20 la 21, ceilali coeficieni r[m`n`nd constani, profitul total ar cre=te cu 33.33$, ceea ce ]nseamn[ 1600‡33.33ˆ1633.33$. Similar, dac[ cantitatea disponibil[ de material 3 ar cre=te de la 21 la 22, ceilali coeficieni r[m`n`nd constani, profitul total ar cre=te cu 44.44$, ceea ce ]nseamn[ 1600‡44.44ˆ1644.44$.
  41. 41. Modelarea deciziilor utilizând foile de calcul Valoarea 0 a preului umbr[ pentru materialul 2 arat[ c[ dac[ cantitatea disponibil[ de material 2 ar cre=te, valoarea funciei obiectiv (profitul total) nu s-ar modifica. Ultimele dou[ coloane Allowable Increase =i Allowable Decrease determin[ domeniul ]n care poate varia termenul din dreapta al unei restricii f[r[ a se modifica preurile umbr[. De exemplu, consider`nd restricia pentru materialul 1, termenul din partea dreapt[ are valoarea 20, cre=terea permis[ este 1.5 =i mic=orarea permis[ este de 6. +tim c[ cu un pre umbr[ de 33.33$ , o ton[ ]n plus de material 1 va cre=te valoarea funciei obiectiv (profitul) cu 33.33$, iar reducerea cantit[ii de material cu o ton[ va mic=ora valoarea funciei obiectiv cu 33.33$. Valorile din Allowable Increase =i Allowable Decrease arat[ c[ preul umbr[ de 33.33$ este valabil pentru cre=teri de material 1 de p`n[ la 1.5 tone =i reduceri de pan` la 6 tone. Domeniul de valori ]n care preul umbr[ este aplicabil se nume=te domeniu de fezabilitate. Deci pentru materialul 1 domeniul de fezabilitate este ]ntre 20-6ˆ14 =i 20‡1.5ˆ21.5 tone. Pentru modific[ri ]n afara domeniului de fezabilitate problema trebuie rezolvat[ din nou pentru a g[si noul pre umbr[. Pentru restricia materialului 2 cre=terea permis[ este 1E‡30, deci 1030, un num[r foarte mare. Putem interpreta aceast[ valoare ca o eviden[ a faptului c[ nu exist[ limit[ superioar[ pentru domeniul de fezabilitate a materialului 2. Cu alte cuvinte, oric`t material 2 ar fi disponibil, valoarea funciei obiectiv nu s-ar modifica. Descre=terea permis[ (1) arat[ c[ limita minim[ a domeniului de fezabilitate pentru materialul 2 este 5-1ˆ4 tone. Deci dac[ pentru producie ar fi disponibile 4.5 tone de material 2, valoarea funciei obiectiv nu s-ar modifica. Dac[ sunt disponibile mai puin de 4 tone va trebui s[ rezolv[m problema din nou pentru a afla noua soluie =i preurile umbr[. Pentru materialul 3, domeniul de fezabilitate este ]ntre 21-2.25ˆ18.75 tone =i 21‡9ˆ30 tone. Deci preul umbr[ de 44.44 este aplicabil dac[ termenul din partea dreapt[ a restriciei (cantitatea de material disponibil) ia valori ]ntre 18.75 tone =i 30 tone. Informaiile din raportul de analiz[ de senzitivitate se bazeaz[ pe presupunerea c[ doar un coeficient se modific[, toi ceilali r[m`n`nd neschimbai.
  42. 42. Rezolvarea problemelor de transport CAPITOLUL 14 REZOLVAREA PROBLEMELOR DE TRANSPORT 14.1. Probleme de transport Problemele de transport apar frecvent ]n situaiile ]n care trebuie planificat modul de distribuire al bunurilor de la produc[tori la consumatori. Obiectivul obi=nuit al acestor probleme este minimizarea costurilor de transport. Modelele de transport sunt o variaie a problemelor de programare liniar[ =i presupun urm[toarele: 1. Obiectivul este minimizarea costurior totale de transport. 2. Costurile de transport sunt funcii liniare ]n raport cu num[rul de unit[i transportate. 3. Cererea =i oferta sunt exprimate ]n unit[i omogene. 4. Costurile de transport pe unitate nu variaz[ cu cantitatea transportat[. Pentru a ilustra modul ]n care se pot rezolva problemele de transport prezent[m urm[torul exemplu: O companie dispune de trei fabrici =i patru centre de distribuie. Fabricile sunt plasate ]n Cluj, Bac[u =i Craiova. Capacit[ile de producie ale fabricilor sunt: Fabrica Capacitate de producie (unit[i) Cluj 5000 Bac[u 6000 Craiova 2500 Total: 13.500 Centrele de distribuie sunt plasate ]n Deva, Ia=i, Bucure=ti, Bra=ov. Cererea pentru produsele companiei ]n aceste centre este: Centre de distribuie Cerere (unit[i) Deva 6000 Ia=i 4000 Bucure=ti 2000 Bra=ov 1500 Total: 13.500 Managementul ar dori s[ determine cantitatea care ar trebui transportat[ de la fiecare fabric[ la fiecare centru de distribuie astfel ]nc`t costurile de transport s[ fie minime. Figura 14.1 prezint[ graficul cu cele 12 rute posibile. Un astfel de graf este numit graf de reea. Cercurile reprezint[ nodurile reelei. Liniile care unesc nodurile se numesc arcuri. Fiecare punct de plecare =i sosire este reprezentat printr-un nod, iar fiecare rut[ posibil[ este reprezentat[ printr-un arc. }n dreptul fiec[rui nod este trecut[ valoarea ofertei (pentru capacit[ile de producie) sau a cererii (pentru centrele de distribuie). Sensul de deplasare este indicat prin s[gei. Costurile unitare de transport pentru fiecare rut[ sunt prezentate ]n tabelul 14.1 =i pe fiecare arc din figura 14.1. Destinaie Origine 1. Deva 2. Ia=i 3. Bucure=ti 4. Bra=ov 1. Cluj 3 2 7 6 2. Bac[u 7 5 2 3 3. Craiova 2 5 4 5 Tabelul 14.1 – Costurile unitare de transport pe fiecare rut[
  43. 43. Modelarea deciziilor utilizând foile de calcul Deva 5000 4000 Bucure=ti 2000 Bra=ov 1500 2 7 Bac[u 7 5 2 3 2 2500 Ia=i 3 Cluj 6 6000 6000 Craiova 5 4 5 Figura 14.1 – Graful de reea ata=at problemei Pentru a rezolva problema de transport putem folosi programarea liniar[. Vom utiliza variabile de decizie cu doi indici, primul indice indic[ nodul origine, al doilea nodul destinaie. Astfel xij indic[ num[rul de unit[i transportate de la fabrica i la centrul de distribuie j. Costul unit[ilor transportate din Cluj este ˆ 3*x11‡2*x12‡7*x13‡6*x14 Costul unit[ilor transportate din Bac[u este ˆ 7*x21‡5*x22‡2*x23‡3*x24 Costul unit[ilor transportate din Craiova este ˆ 2*x31‡5*x32‡4*x33‡5*x34 Suma acestor costuri este costul total de transport, valoare care trebuie minimizat[, deci funcia obiectiv este: Min (3*x11‡2*x12‡7*x13‡6*x14‡7*x21‡5*x22‡2*x23‡3*x24‡2*x31‡5*x32‡4*x33‡5*x34) }n problemele de transport apar restricii deoarece fiecare fabric[ are o capacitate de producie limitat[ =i fiecare centru de distribuie are o anumit[ cerere. Fabrica din Cluj are o capacitate de producie de 5000 unit[i. Num[rul total de unit[i transportate din fabrica de la Cluj este x11‡x12‡x13‡x14, deci restricia asociat[ acestei fabrici este: x11‡x12‡x13‡x14 ≤ 5000 }n mod similar pentru celelalte fabrici avem: x21‡x22‡x23‡x24 ≤ 6000 - pentru fabrica de la Bac[u. x31‡x32‡x33‡x34 ≤ 2500 - pentru fabrica de la Craiova. }n cele patru centre de distribuie, restricia va fi dat[ de faptul c[ cererea la centrul respectiv trebuie s[ fie egal[ cu cantit[ile transportate aici. x11‡x21‡x31‡x41 ˆ6000 - cererea la Deva x12‡x22‡x32‡x42 ˆ4000 - cererea la Ia=i x13‡x23‡x33‡x43 ˆ2000 - cererea la Bucure=ti
  44. 44. Rezolvarea problemelor de transport x14‡x24‡x34‡x44 ˆ1500 - cererea la Bra=ov Combin`nd funcia obiectiv cu restriciile obinem modelul pentru problema de transport: Min (3*x11‡2*x12‡7*x13‡6*x14‡7*x21‡5*x22‡2*x23‡3*x24‡2*x31‡5*x32‡4*x33‡5*x34) x11‡x12‡x13‡x14 ≤ 5000 x21‡x22‡x23‡x24 ≤ 6000 x31‡x32‡x33‡x34 ≤ 2500 x11‡x21‡x31‡x41 ˆ6000 x12‡x22‡x32‡x42 ˆ4000 x13‡x23‡x33‡x43 ˆ2000 x14‡x24‡x34‡x44 ˆ1500 xij≥0, iˆ1,2,3; jˆ1,2,3,4 14.2. Rezolvarea problemei în Excel Foaia de calcul folosit[ pentru rezolvarea problemei este prezentat[ ]n figura 14.2. A 1 B C D E F G H Modelarea problemelor de transport 2 3 4 5 6 7 8 Origine Cluj Bacau Craiova Cerere Deva 3 7 2 6000 Destinatie Iasi Bucuresti 2 7 5 2 5 4 4000 2000 Oferta 6 5000 3 6000 5 2500 1500 Brasov 9 10 11 Model 12 Cost minim 13 39500 14 15 16 17 18 19 20 21 22 Origine Cluj Bacau Craiova Total Deva 3500 0 2500 6000 = 6000 Destinatie Iasi Bucuresti 1500 0 2500 2000 0 0 4000 2000 = = 4000 2000 Brasov 0 1500 0 1500 = 1500 Total 5000 6000 2500 <= <= <= 5000 6000 2500 Figura 14.2 – Foaia de calcul ata=at[ problemei Datele problemei sunt introduse ]n domeniul A1:F8. Costurile de transport sunt coninute ]n domaniul B5:E7, capacit[ile de producie (oferta) ]n F5:F7, iar cererea din centrele de distribuie ]n celulele B8:E8. Elementele cheie care trebuie introduse ]n Excel sunt variabilele de decizie, funcia obiectiv, partea st`ng[ =i partea dreapt[ a restriciilor.
  45. 45. Modelarea deciziilor utilizând foile de calcul Variabilele de decizie Celulele B17:E19 conin variabilele de decizie. Iniial toate variabilele de decizie au valoarea 0. Funcia obiectiv Pentru a calcula costul total, ]n celula C13 a fost introdus[ formula ˆSUMPRODUCT(B5:E7,B17:E19). Partea st`ng[ a restriciilor Celulele F17:F19 conin formulele pentru partea st`ng[ a restriciilor asociate capacit[ilor de producie, iar celulele B20:E20 conin formulele pentru partea st`ng[ a restriciilor asociate cererii din centrele de distribuie. Formulele utilizate sunt: Celula F17: ˆSUM(B17:E17). Se copieaz[ F17 ]n F18:F19. Celula B20: ˆSUM(B17:B19). Se copieaz[ B20 ]n C20:E20. Partea dreapt[ a restriciilor Celulele H17:H19 conin partea dreapt[ a restriciilor asociate capacit[ilor de producie, iar celulele B22:E22 conin partea dreapt[ a restriciilor asociate cererii din centrele de distribuie. Aceste valori sunt introduse deja ]n datele iniiale ale problemei, deci se vor utiliza formulele: Celula H17: ˆF5. Se copieaz[ H17 ]n H18:H19. Celula B22: ˆB8. Se copieaz[ B22 ]n C22:E22. Se rezolv[ problema utiliz`nd Solver-ul. Caseta de dialog Solver Parameters se completeaz[ ca ]n figura 14.3. Opiunile selectate sunt Assume Linear Model =i Assume Non-Negative. Figura 14.3 – Caseta de dialog Solver Soluia optim[ arat[ c[ costul minim de transport este de 39500 u.m., iar ]n domeniul B17:E19 sunt afi=ate cantit[ile care trebuie transportate pe fiecare rut[. Valoarea 0 indic[ c[ pe ruta respectiv[ nu se transport[ nimic. 14.3. Variaţii ale problemelor de transport Oferta totala nu este egala cu cererea totala }n multe cazuri oferta total[ nu este egal[ cu cererea total[. Dac[ oferta total[ dep[=e=te cererea total[ nu este necesar[ nici o modificare ]n problema de programare liniar[. Excesul
  46. 46. Rezolvarea problemelor de transport de ofert[ va ap[rea ca o abatere ]n soluia problemei, iar aceste abateri pot fi interpretate ca ofert[ neutilizat[ sau cantit[i netransportate. Dac[ oferta total[ este mai mic[ dec`t cererea total[ modelul de programare liniar[ a problemei de transport nu are o soluie fezabil[. Pentru rezolvarea problemei se creeaz[ o ofert[ fictiv[ astfel ]nc`t excesul de cerere s[ fie satisf[cut =i se atribuie costurilor de transport din acest punct valoarea 0. }n acest mod problema de programare liniar[ va avea soluie. Maximizarea functiei obiectiv }n unele probleme obiectivul este g[sirea unei soluii care maximizeaz[ venitul sau profitul. Utiliz`nd venitul sau profitul unitar ]n coeficienii funciei obiectiv, se va rezolva o problem[ de maximizare ]n locul uneia de minimizare. Modific[rile nu afecteaz[ restriciile. Rute neacceptate Stabilirea unei rute de la fiecare nod origine la fiecare nod destinaie nu este ]ntotdeauna posibil[. Pentru a rezolva aceste situaii se elimin[ din graful de reea arcele respective, iar din modelul de programare liniar[ variabilele de decizie corespunz[toare. Pentru a face c`t mai puine modific[ri ]n foaia de calcul, pentru aceste rute se stabilesc costuri foarte mari, astfel ]nc`t pe aceste rute se vor efectua transporuri doar dac[ nu exist[ alte soluii fezabile. Rute cu capacitati limitate Pentru rutele cu capacit[i limitate se introduc restricii suplimentare. De exemplu, dac[ mijloacele de transport pe ruta Craiova – Deva nu pot transporta mai mult de 1000 de unit[i se va introduce restricia x13≤1000. Modelul general de programare liniar[ al unei probleme de transport cu m puncte de origine =i n puncte de destinaie este: m Min n ∑∑c i =1 j =1 n ij x ij ∑ x ij ≤ s i ∑ x ij = d j =1 m i =1 x ij ≥ 0 i = 1, 2 ,..., m j Oferta j = 1, 2 ,..., n Cererea pentru toti i si j unde: i ˆ index-ul pentru punctele de origine j ˆ index-ul pentru punctele de destinaie xij ˆ num[rul de unit[i transportate de la originea i la destinaia j cij ˆ costul unitar de transport din originea i la destinaia j si ˆ oferta sau capacitatea din originea i dj ˆ cererea la destinaia j
  47. 47. Rezolvarea problemelor de alocare CAPITOLUL 15 REZOLVAREA PROBLEMELOR DE ALOCARE 15.1. Probleme de alocare Problemele de alocare pot ap[rea ]n diverse situaii de luare a deciziilor. Problemele tipice sunt: alocarea lucr[rilor pe ma=ini, repartizarea personalului ]n diverse centre teritoriale, repartizarea agenilor care s[ efectueze anumite activit[i. O caracteristic[ distinct[ este c[ unui agent ]i este asignat[ o singur[ activitate =i se ]ncearc[ optimizarea unui obiectiv, cum ar fi minimizarea costurilor, minimizarea timpului, maximizarea profitului, etc. Pentru a ilustra modul de rezolvare a problemelor de alocare vom considera urm[torul exemplu: Firma ABC, specializat[ ]n studii de marketing are trei clieni noi. Fiec[rui proiect ]i trebuie alocat un lider de proiect. Timpul necesar pentru realizarea proiectului depinde de experiena =i abilitatea liderului de proiect. }n prezent sunt disponibile doar trei persoane, proiectele au aproximativ aceea=i prioritate =i nu pot fi realizate ]n acela=i timp. Conducerea firmei trebuie s[ stabileasc[ ce lider de proiect va coordona fiecare studiu astfel ]nc`t cele trei studii s[ se termine ]n timpul total cel mai scurt. Unui lider i se poate aloca doar un proiect. Cu trei clieni =i trei studii sunt posibile 9 alternative. Timpii estimai pentru finalizarea fiec[rui proiect sunt prezentai ]n tabelul 15.1. Client Lider de proiect 1 2 3 Ionescu 10 15 9 Popescu 9 18 5 Georgescu 6 14 3 Tabelul 15.1 – Timpii estimai pentru terminarea fiec[rui proiect Figura 15.1 prezint[ graful de reea pentru problema analizat[. 1 Client 1 1 Client 2 10 1 Ionescu 1 Client 3 1 15 9 9 1 2 Popescu 18 5 6 1 3 Georgescu 14 3 Figura 15.1 – Graful de reea ata=at problemei
  48. 48. Modelarea deciziilor utilizând foile de calcul Nodurile corespund liderilor de proiect =i clienilor, iar arcurile reprezint[ repartiz[rile posibile ale liderilor de proiect clienilor. Oferta ]n fiecare nod origine este 1 =i cererea ]n fiecare nod destinaie este 1. Costul repartiz[rii unui lider de proiect la un client este timpul necesar pentru realizarea studiului. Observai asem[narea dintre problemele de alocare =i cele de transport, problemele de alocare fiind un caz special de probleme de transport ]n care toate ofertele =i cererile au valoarea 1, iar cantitatea transportat[ pe fiecare arc este 0 sau 1. Problema poate fi rezolvat[ folosind metoda program[rii liniare. Avem nevoie de o variabil[ pentru fiecare arc =i o restricie pentru fiecare nod. Vom utiliza variabile de decizie cu doi indici xij - repartizarea liderului i la proiectul j. Deci vom avea 9 variabile de decizie: 1, daca liderul i este repartizat clientului j xij =  0, in celelalte cazuri unde iˆ1,2,3 =i jˆ1,2,3. Utiliz`nd aceste notaii: Timpul necesar pentru finalizarea proiectelor de c[tre Ionescu este 10x11‡15x12‡9x13 (doar una din variabilele de decizie poate lua valoarea 0). Timpul necesar pentru finalizarea proiectelor de c[tre Popescu este 9x21‡18x22‡5x23 (doar una din variabilele de decizie poate lua valoarea 0). Timpul necesar pentru finalizarea proiectelor de c[tre Georgescu este 6x31‡14x32‡3x33 (doar una din variabilele de decizie poate lua valoarea 0). Suma acestor timpi furnizeaz[ num[rul total de zile pentru a finaliza cele trei studii de pia[. Astfel, funcia obiectiv este: Min (10x11‡15x12‡9x13‡9x21‡18x22‡5x23‡6x31‡14x32‡3x33) Restriciile reflect[ faptul c[ fiecare lider poate fi repartizat cel mult unui client =i fiecare client trebuie s[ aib[ repartizat un lider. Aceste restricii sunt: x11 + x12 + x13 ≤ 1 − repartizarea lui Ionescu x21 + x22 + x23 ≤ 1 − repartizarea lui Popescu x31 + x32 + x33 ≤ 1 − repartizarea lui Georgescu x11 + x21 + x31 = 1 − clientul 1 x12 + x22 + x32 = 1 − clientul 2 x13 + x23 + x33 = 1 − clientul 3 Combin`nd funcia obiectiv cu restriciile obinem urm[torul model: Min (10x11‡15x12‡9x13‡9x21‡18x22‡5x23‡6x31‡14x32‡3x33) x11 + x12 + x13 ≤ 1 − repartizarea lui Ionescu x21 + x22 + x23 ≤ 1 − repartizarea lui Popescu x31 + x32 + x33 ≤ 1 − repartizarea lui Georgescu x11 + x21 + x31 = 1 − clientul 1 x12 + x22 + x32 = 1 − clientul 2 x13 + x23 + x33 = 1 − clientul 3 xij ≥ 0 pentru i = 1,2,3; j = 1,2,3

×