24
Analiza sensibilităţii Descriere Exemplu Valentin Grecu

Rezolvarea problemelor de programare liniară

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Rezolvarea problemelor de programare liniară

Analiza sensibilităţii

Descriere

Exemplu

Valentin Grecu

Page 2: Rezolvarea problemelor de programare liniară

Analiza de senzitivitate

Studiaza modul în care se modifică soluţia optimă dacă se schimbă parametrii programării liniare

Este importantă pentru că în practică adesea parametrii programării liniare sunt aproximări ale realităţii

Page 3: Rezolvarea problemelor de programare liniară

Enunţul problemei

1. Un atelier de tâmplărie produce scaune tapiţateşi fotolii. Fiecare scaun necesită 2 ore de muncăpentru tâmplărie şi 1 oră pentru tapiţare. Unfotoliu necesită 1 oră pentru tâmplărie şi 2 orepentru tapiţare. Atelierul nu poate produce maimult de 120 de fotolii, din cauza lipsei demateriale. Se ştie că sunt disponibile maxim 230de ore de manoperă pentru tâmplărie şi maxim250 de ore pentru tapiţare. Câte fotolii şi câtescaune se vor produce ştiind că un scaun aduceun profit de 3 u.m., iar profitul pentru un fotoliueste de 5 u.m.?

Page 4: Rezolvarea problemelor de programare liniară

1. Rezolvarea manuală

Trecerea problemei în forma tabelară

Scaune Fotolii Total ore

Tâmplărie 2 1 230

Tapiţare 1 2 250

Profit (u.m.) 3 5

Page 5: Rezolvarea problemelor de programare liniară

Trecerea problemei în formă matematică

Notăm: x = nr. scaune

y = nr. fotolii

Constrângeri: Tâmplărie: 2x + y ≤ 230

Tapiţare: x + 2y ≤ 250

Lipsa material: y ≤ 120

x ≥ 0, y ≥ 0

Profitul trebuie maximizat: P = 3x + 5y

Page 6: Rezolvarea problemelor de programare liniară

Tâmplărie:2x + y = 230x=115y=230

Tapiţerie:x + 2y = 250x=250y=125

Limita de material:y=120

Page 7: Rezolvarea problemelor de programare liniară

Orice punct din zona haşurată satisface contrângerile problemei. Dacă alegem punctul fezabil de coordonate (20,30) soluţia va fi: 3*(20)+5*(30)=210

3x+5y=210

Dacă alegem alt punct fezabil, de coordonate (50,50) linia de isoprofit va fi paralelă cu cea trasată anterior. Soluţia: 3*(50)+5*(50)=400

3x+5y=400

Punct

extrem

x y Funcţia

obiectiv

A 0 0 0

B 115 0 345

C 70 90 660

D 10 120 630

E 0 120 600

A B

C

DE

Page 8: Rezolvarea problemelor de programare liniară

Analiza de senzitivitate

Exemplu

Page 9: Rezolvarea problemelor de programare liniară

A B

C

DE

Soluţia iniţială: 3x+5y=660

Dorim să aflăm cât poate creşte profitul unitar pentru un scaun, fără să se schimbe soluţia optimă (punctul C)

•Notăm coeficientul lui x din funcţia obiectiv cu b

•Funcţia obiectiv devine: p=bx + 5y

•Constrângerea pentru orele de tâmplărie este: 2x + y = 230

•Panta funcţiei obiectiv este –(b/5)

•Panta dreptei constrângerii este –(2/1)

•Egalam pantele: -(b/5)=-(2/1) => b=10

•Soluţa optimă nu se modifică dacă profitul pt 1 scaun ≤ 10

Punctul C rămâne optim: 4x+5y=730

Punctul C rămâne optim: 5x+5y=800

Punctul C nu mai este optim: 15x+5y=1500

Page 10: Rezolvarea problemelor de programare liniară

A B

C

DE

Soluţia iniţială: 3x+5y=660

Dorim să aflăm cât poate scădea profitul unitar pentru un scaun, fără să se schimbe soluţia optimă (punctul C)

•Notăm coeficientul lui x din funcţia obiectiv cu a

•Funcţia obiectiv devine: p=ax + 5y

•Constrângerea pentru orele de tapiţerie este: x + 2y = 250

•Panta funcţiei obiectiv este –(a/5)

•Panta dreptei constrângerii este –(1/2)

•Egalam pantele: -(a/5)=-(1/2) => a=2,5

•Soluţa optimă nu se modifică dacă profitul pt 1 scaun ≥ 2,5

Punctul C rămâne optim: 2,75x+5y=642,5

Punctul C nu mai este optim: x+5y=520

Page 11: Rezolvarea problemelor de programare liniară

Valoarea din partea dreaptă a constrângerilor (RHS)

Pentru a ilustra cum se modifică soluţia problemei dacă se schimbă valoarea din partea dreaptă a constrângerilor vom lua spre exemplificare constrângerea orelor pentru tâmplărie: 2x + y ≤ 230

Vom analiza variantele când disponibilul de ore va creşe peste 230, dar şi când va scădea.

Page 12: Rezolvarea problemelor de programare liniară

Tâmplărie: 2x+y ≤ 230

Page 13: Rezolvarea problemelor de programare liniară
Page 14: Rezolvarea problemelor de programare liniară
Page 15: Rezolvarea problemelor de programare liniară
Page 16: Rezolvarea problemelor de programare liniară
Page 17: Rezolvarea problemelor de programare liniară
Page 18: Rezolvarea problemelor de programare liniară

Concluzii

Modificarea coeficienţilor funcţiei obiectiv conduce la modificarea înclinării funcţiei obiectiv, lucru care poate sau nu să afecteze soluţia optimă.

Modificarea valorilor din partea dreaptă a restricţiilor conduce la deplasarea dreptelor restricţiilor cu paralele la ele. Acest lucru poate afecta atât soluţia optimă cât şi valoarea soluţiei optime.

Page 19: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu Excel

Page 20: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu Excel (2)

Modificarea coeficienţilor

funcţiei obiectiv

Cu cât se pot modifica valorile din partea dreaptă

a constrângerilor

Cu cât se modifică valoare funţiei obiectiv, dacă valoarea din partea dreaptă a constrângerii creşte cu

o unitate

Page 21: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu WinQSB

Page 22: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu WinQSB (2)

Page 23: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu STORM

Page 24: Rezolvarea problemelor de programare liniară

Analiza de sensibilitate cu STORM (2)