Badania operacyjne

Pytania o rozwiązania zadań.
Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
student22
Witam na forum
Witam na forum
Posty: 5
Rejestracja: 05 gru 2021, 11:26
Podziękowania: 3 razy
Płeć:

Badania operacyjne

Post autor: student22 »

Pewna apteka ma możliwość sprzedaży każdej ilości dwóch leków \(L_1 \) i \(L_2\), których ceny za 1 gram wynoszą odpowiednio 15 i 20 zł. Do produkcji tych leków zużywane są między innymi trzy rodzaje preparatów \(P_1,\ P_2,\ P_3\). Normy ich zużycia na 1 gram leku oraz wielkość zapasów tych preparatów podane są w następującej tabeli.
\[ \begin{matrix}\text{Zużycie preparatu (w mg) na 1 g leku} & |& P_1 & P_2 & P_3\\
\hline
L_1 & |& 10 & 10 & 10\\

L_2 & |& 10 & 20 & 30\\
\text{Zapasy (w mg) } & |& 1200 & 1500 & 2100\end{matrix}
\]

Określ plan sprzedaży pozwalający na maksymalizację przychodu apteki ze sprzedaży leków.

Pomoże ktoś? Z góry dziękuję ;)
Ostatnio zmieniony 30 gru 2021, 23:37 przez Jerry, łącznie zmieniany 2 razy.
Powód: poprawa wiadomości, cała matematyka w kodzie i [tex] [/tex]
grdv10
Fachowiec
Fachowiec
Posty: 1039
Rejestracja: 04 sty 2020, 12:47
Podziękowania: 9 razy
Otrzymane podziękowania: 388 razy
Płeć:

Re: Badania operacyjne

Post autor: grdv10 »

Niech \(x\) będzie liczbą gramów leku \(L_1\) i podobnie \(y\). Funkcja zysku: \(15x+20y\to\max.\)

Warunki ograniczające: \(x,y\) są w gramach, więc trzeba to przepisać na gramy. 10 mg to 0.01 g.

Dla \(P_1\) mamy więc \(0.01x+0.01y\leqslant 1.2\) i w sumie widać, że można zapisać równoważnie \(10x+10y\leqslant 1200\). Dalsze dwa ograniczenia: \(10x+20y\leqslant 1500\) oraz \(10x+30y\leqslant 2100.\)

Mamy więc do rozwiązania problem programowania liniowego:
\[
\begin{align*}
15x+20y&\to\max\\
10x+10y&\leqslant 1200\\
10x+20y&\leqslant 1500\\
10x+30y&\leqslant 2100\\
x,y&\geqslant 0.
\end{align*}
\]
Ponieważ są dwie zmienne decyzyjne, można to zrobić graficznie. Tego już nie będę rozwiązywał, ale podam rozwiązanie uzyskane programem Maxima.

Kod: Zaznacz cały

load("simplex")$
maximize_lp(15*x+20*y,[10*x+10*y<1200,10*x+20*y<1500,10*x+30*y<2100]);
[1950,[y=30,x=90]]
Oznacza to, że zysk maksymalny to 1950 zł przy produkcji 90 g leku \(L_1\) oraz 30 g leku \(L_2\).
student22
Witam na forum
Witam na forum
Posty: 5
Rejestracja: 05 gru 2021, 11:26
Podziękowania: 3 razy
Płeć:

Re: Badania operacyjne

Post autor: student22 »

Dziękuję bardzo ;)
ODPOWIEDZ