TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ 109 TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ Obiective: Definirea programului Solver din Excel Definirea şi rezolvarea principalelor aplicaţii de programare liniară Conţinut: 14.1 Programul Solver din Excel 110 14.2 O aplicaţie de alocare de resurse 114 14.3 O aplicaţie de transport 115 14.4 O aplicaţie de programare binară 116 14.5 O aplicaţie de programare liniară în numere întregi 116 14.6 O aplicaţie de programare liniară multiobiectiv 117 14.7 Concepte cheie 117
9
Embed
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ · PDF file14.3 O aplicaţie de transport 115 14.4 O aplicaţie de programare binară 116 ... Set Target Cell: celula B6 cu expresia funcţiei
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ 109
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ
Obiective:
Definirea programului Solver din Excel
Definirea şi rezolvarea principalelor aplicaţii de programare liniară
Conţinut:
14.1 Programul Solver din Excel 110
14.2 O aplicaţie de alocare de resurse 114
14.3 O aplicaţie de transport 115
14.4 O aplicaţie de programare binară 116
14.5 O aplicaţie de programare liniară în numere întregi 116
14.6 O aplicaţie de programare liniară multiobiectiv 117
14.7 Concepte cheie 117
110 MODULUL 6: MODELE DE OPTIMIZARE
14.1 Programul Solver din Excel
Programul de calcul tabelar Excel din Microsoft Office conţine un program de
completare sau ajutător (add-in) denumit Solver (Rezolvitor), care permite rezoşvarea unor
probleme de optimizare, atât liniare, cât şi neliniare. După instalare, programul Solver se
lansează din opţiunea Tools (Instrumente) în Excel 2003, respectiv din opţiunea Data (Date)
şi grupul Analysis (Analiză) în Excel 2007/2010.
Rezolvarea cu Solver a unei probleme de programare liniară implică următorii paşi:
1. Definirea problemei de programare liniară într-o foaie de calcul tabelar;
2. Definirea funcţiei obiectiv;
3. Definirea variabilelor de decizie;
4. Definirea restricţiilor;
5. Rezolvarea problemei de programare liniară.
1. Definirea problemei de programare liniară într-o foaie de calcul tabelar (Figura
14.1):
Figura 14.1: Foaia de calcul cu problema iniţială de programare liniară
2. Definirea funcţiei obiectiv (Figura 14.2):
Pentru definirea funcţiei obiectiv, deschidem dialogul Solver şi completăm următoarele
informaţii:
Set Target Cell: celula B6 cu expresia funcţiei obiectiv;
Equal To: selectăm butonul Max.
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ 111
Figura 14.2: Parametrii Solver pentru problema de programare liniară
3. Definirea variabilelor de decizie:
În continuare, pentru definirea variabilelor de decizie, în dialogul Solver completăm
următoarele informaţii (Figura 14.2):
By Changing Cell: celulele B3şi B4 cu valorile iniţiale ale variabilelor de
decizie.
4. Definirea restricţiilor:
Pentru definirea restricţiilor, în în dialogul Solver completăm următoarele informaţii
(Figura 14.2):
Subject to the Constraints: selectăm butonul Add;
Add Constraint: se deschide dialogul din Figura 14.3, pentru adăugarea
restricţiilor. După fiecare restricţie introdusă se apasă butonul OK.
Figura 14.3: Dialogul Solver pentru adăugarea restricţiilor
5. Rezolvarea problemei de programare liniară:
După completarea tutror restricţiilor, se apasă butonul Solve, care deschide dialogul
Solver results din Figura 14.4, în care se selectează butonul Keep Solver Solutions şi se
selectează rapoartele dorite, respectiv (Figura 14.6):
Answer, raportul cu rezultatele optime ale problemei de programare liniară;
Sensitivity, raportul cu rezultatele analizei de senzitivitate ale problemei de
programare liniară;
112 MODULUL 6: MODELE DE OPTIMIZARE
Limits, raportul cu limitele de variaţie ale variabilelor problemei de programare
liniară.
Figura 14.4: Dialogul Solver pentru selectarea rezultatelor
Valorile optime ale variabilelor de decizie şi ale funcţiei obiectiv sunt afişate în foaia de
calcul în care a fost definită problema de programare liniară (Figura 14.5).
Figura 14.5: Foaia de calcul cu rezultatele problemei de programare liniară
Rapoartele generate de Solver sunt prezentate în Figura 14.6 (a)/(b)/(c).
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ 113
Figura 14.6(a): Foaia de calcul cu raportul rezultatelor din Solver
Figura 14.6(b): Foaia de calcul cu raportul analizei de senzitivitate din Solver
114 MODULUL 6: MODELE DE OPTIMIZARE
Figura 14.6(c): Foaia de calcul cu raportul analizei limitelor din Solver
14.2 O aplicaţie de alocare de resurse
Elementele problemei de programare liniară de utilizare a resurselor limitate din
secţiunea 11.4.1 de forma:
njx
mibxa
xcf
j
n
j
ijij
n
j
jj
1 ,0
1 ,
max
1
1
, (14.1)
pot fi sintetizate în tabelul următor:
Resurse
Produse P1 P2 ... Pn Limitări
resurse Variabile x1 x2 ... xn
Restricţii
R1 g1(x1, x2,..., xn) a11 a12 ... a1n b1
R2 g2(x1, x2,..., xn) a21 a22 ... a2n b2
... ... ... ... ... ... ...
Rm gm(x1, x2,..., xn) am1 am2 ... amn bm
Funcţia
obiectiv Profit f(x1, x2,..., xn) c1 c2 ... cn max
TEMA 14: APLICAŢII DE PROGRAMARE LINIARĂ 115
Forma tabelară de mai sus, ne va ajuta să rezolvăm problema de programare liniară cu
Solver prin referire la zonele de date corespunzătoare, ceea ce simplifică foarte mult definirea
elementelor în Solver.
Notând acum cu ),...,,( 21 nxxxx vectorul variabilelor de producţie, cu