P4 Skrzypulec H

Hubert Skrzypulec 21.11.2008r.

ZiIP 3.2 Zabrze

POLITECHNIKA ŚLĄSKA W GLIWICACH

WYDZIAŁ ORGANIZACJI I ZARZĄDZANIA

Katedra Informatyki i Ekonometrii

BADANIA OPERACYJNE

Projekt nr 4

Metody programowania dynamicznego

Treść zadania

Przedsiębiorstwo branży spożywczej „Frost” jest producentem głęboko mrożonych zestawów obiadowych. Chce opracować program produkcji na najbliższe 3 miesiące (od stycznia do marca). Wiadomo, że popyt na produkty tego przedsiębiorstwa jest stały i wynosi 1200 szt. zestawów obiadowych. Moce wytwórcze pozwalają na skierowanie do sprzedaży 2000 sztuk miesięcznie. Koszt produkcji zależnie od ilości wyprodukowanych zestawów przedstawia tabela 1.

Tabela

Ilość wyprodukowanych zestawów 0 400 800 1200 1600 2000
Koszt (zł) 0 2500 2900 3300 3700 4100

Koszt przechowywania produktów w chłodni wynosi miesięcznie 150zł od 400 sztuk. Chłodnia jest w stanie pomieścić maksymalnie 1600 zestawów obiadowych. Obecnie w magazynie znajduje się 800 sztuk. Na zakończenie planowanego okresu magazyn ma zostać pusty. Należy zminimalizować koszty.

W trakcie rozwiązywania posługuję się ciągiem równań funkcyjnych Bellmana.

Oznaczenia

Dla uporządkowania procesu rozwiązania zagadnienia dynamicznego wprowadzam oznaczenia:

x1 – ilość wyprodukowanych zestawów obiadowych w styczniu

x2 – ilość wyprodukowanych zestawów obiadowych w lutym

x2 – ilość wyprodukowanych zestawów obiadowych w marcu

si – poziom zapasów na początku i-tego miesiąca

p – popyt

ki(j) – koszty magazynowania j elementów (0 ≤ j ≤ 1600) w i-tym miesiącu

fi(xi,si) – koszty produkcji i magazynowania w i-tym miesiącu

fi(xi,si) = ki(xi) + ki(si+1)

łączne koszty produkcji i magazynowania z każdego miesiąca wynoszą:

f1(x1,s1) + f2(x2,s2) + f3(x3,s3)

W tym miejscu warto zauważyć pewną zależność pomiędzy produkcją, stanem magazynowym i popytem, z której będę korzystał na dalszych etapach rozwiązania:

0 ≤ si + xi – p ≤ 1600

Wiemy, że na początku roku, gdy rozpoczynamy planowanie znany jest stan magazynowy, oraz założenie mówiące o pustym magazynie na koniec okresu planowania.

Stąd:

s1 = 800

s4 = 0

Rozwiązanie

Sztucznie dzielę proces produkcji na 3 etapy:

Etap 1 – wyprodukowanie x1 zestawów w styczniu.

Etap 2 – wyprodukowanie x2 zestawów w lutym.

Etap 3 – wyprodukowanie x3 zestawów w marcu.


Krok 1 Etap 3 (Marzec)

g3(s3) = min(f3(x3,s3))

funkcja g3(s3) mówi nam o kosztach ponoszonych na produkcje i magazynowanie. Założeniem zadania jest minimalizacja kosztów, stąd szukamy minimalnej wartości funkcji f3. Założenie to jest obowiązujące na wszystkich etapach rozwiązywania rozpatrywanego problemu dynamicznego.

Wykorzystując zależność produkcji, stanów magazynowych i popytu otrzymuję:

s4 = s3 + x3 – p

s4= 0

s3 + x3 – p = 0

0 ≤ x3 = p - s3

­­­­­­­­­­0 ≤ s3 ≤ 1600

0 ≤ s3 + x3 – p ≤ 1600

0 ≤ s3 + x3 – 1200 ≤ 1600

x3 ≤ 2800 - s3

0 ≤ s3 ≤ 1600

Wyznaczam minimalny koszt produkcji i utrzymania zapasów w marcu.

Tabela

s3 x3 s4 f3(x3,s3) g3(s3)
0 1200 0 3300+0 3300
400 800 0 2900+0 2900
800 400 0 2500+0 2500
1200 0 0 0 0

Krok 2 Etap 2 (Luty)

g2(s2) = min(f2(x2,s2)+ g3(s3))

Wykorzystując zależność produkcji, stanów magazynowych i popytu otrzymuję:

1200 - s2 ≤ x2 ≤ 2800 - s2

0 ≤ s2 ≤ 1600

0 ≤ s2 + x2 – p ≤ 1600

0 ≤ s2 + x2 – 1200 ≤ 1600

1200 - s2 ≤ x2 ≤ 2800 - s2

Tabela

s2 x2 s3 f2(x2,s2) g3(s3) f2(x2,s2)+ g3(s3) g2(s2)
0 1200 0 3300 + 0 3300 6600 6600
0 1600 400 3700 + 150 2900 6750
0 2000 800 4100 + 300 2500 6900
400 800 0 2900 + 0 3300 6200
400 1200 400 3300 + 150 2900 6350
400 1600 800 3700 + 300 2500 6500
400 2000 1200 4100 + 450 0 4450 4450
800 400 0 2500 + 0 3300 5800
800 800 400 2900 + 150 2900 5950
800 1200 800 3300 + 300 2500 6100
800 1600 1200 3700 + 450 0 4150 4150
1200 0 0 0 + 0 3300 3300 3300
1200 400 400 2500 + 150 2900 5500
1200 800 800 2900 + 300 2500 5700
1200 1200 1200 3300 + 450 0 3750
1600 0 400 0 + 150 2900 3050 3050
1600 400 800 2500 + 300 2500 5300
1600 800 1200 2900 + 450 0 3350

Krok 3 Etap 1 (styczeń)

g1(s1) = min(f1(x1,s1)+ g2(s2))

400 ≤ x1 ≤ 2000

s1 = 2

0 ≤ s1 + x1 – p ≤ 1600

0 ≤ s1 + x1 – 1200 ≤ 1600

0 ≤ 2 + x1 – 1200 ≤ 1600

Tabela

s1 x1 s2 f1(x1,s1) g2(s2) f1(x1,s1) + g2(s2) g1(s1)
2 400 0 2500 + 0 6600 9100
2 800 400 2900 + 150 4450 7500
2 1200 800 3300 + 300 4150 7750
2 1600 1200 3700 + 450 3300 7450 7450
2 2000 1600 4100 + 600 3050 7750

Odpowiedź i interpretacja wyników.

x1 = 1600

x2 = 0

x3 = 1200

s2 = 1200

s3 = 0

Najniższy koszt wytwarzania uzyskamy produkując w styczniu 1600 sztuk zestawów obiadowych. W tej sytuacji stan magazynowy na początku lutego wyniesie 1200 sztuk. W lutym najlepszym rozwiązaniem jest wstrzymanie produkcji na miesiąc. Dzięki temu magazyn na początku marca będzie pusty. W marcu, jako że mamy pusty magazyn, a popyt jest stały produkujemy właśnie tyle ile wynosi wartość popytu, czyli 1200 sztuk. Dzięki temu osiągniemy najniższy z możliwych kosztów zorganizowania produkcji wynoszący 7450 zł


Wyszukiwarka