| |||||||||||||||||||||||||||||||||||||||
| ![]() ABC programowania liniowego - ZADANIE DIETY ![]() Na tej stronie znajdziesz treść prostego zadania programowania liniowego oraz jego rozwiązanie „krok po kroku". ![]() TREŚĆ ZADANIA Zawodowy kulturysta stosuje jako suplementację diety dwa rodzaje odżywek: Olimp 60 i Olimp 80. 1 kg odżywki Olimp 60 kosztuje 40 zł, a Olimp 80 - 55 zł. Wiadomo, że dziennie kulturysta nie powinien zjeść więcej niż 200 g odżywek. Ułożyć zadanie programowania liniowego minimalizujące koszt dziennej diety, którą kulturysta spożywa w postaci odżywek, jeżeli wiadomo, że powinien on z odżywek pozyskać dziennie przynajmniej 50 g białka i 20 g węglowodanów. Zawartość białka i węglowodanów, w gramach na 100 gram odżywki, podaje tabela.
![]() ROZWIĄZANIE Każde zadanie programowania liniowego składa się z następujących elementów:
1. DEFINICJA ZMIENNYCH Każde zadanie programowania liniowego należy rozpocząć od zdefiniowania zmiennych. Podane zadanie jest zadaniem „diety". W takich zadaniach, w zdecydowanej większości przypadków jako zmienne należy obrać ilości spożywanych produktów. Generalnie, prawidłowo zdefinowane zmienne powinny w rozwiązaniu zadania dostarczyć informacji o sposobie postępowania, tj. o szczegółowym składzie diety, bez konieczności wykonywania dodatkowych obliczeń. Zatem, w tym przypadku należy zmienne zdefiniować następująco: x1 - ilość spożywanej odżywki Olimp 60 [g] x2 - ilość spożywanej odżywki Olimp 80 [g] Należy obowiązkowo pamiętać o podaniu jednostek w jakich definiuje się zmienne. Podstawowym kryterium doboru jednostek jest to, „aby się dobrze skracało". Zostanie to szczegółowo wyjaśnione w kolejnym kroku. Należy unikać skrótowego definiowania zmiennych, np. w ten sposób: x1 - Olimp 60 x2 - Olimp 80 Pamiętaj! Tak nie wolno! 2. UKŁAD OGRANICZEŃ W zadaniach typu „problem diety" większość ograniczeń dotyczy wymaganych ilości jakie należy spożyć. Ograniczenie o tym, iż należy spożyć przynajmniej 50 g białka dziennie, będzie wyglądało następująco: 0,6x1 + 0,8x2 ≥ 50 Aby nie popełnić błędów, należy zawsze sprawdzić jednostki! Lewa strona powyższej nierówności ma następujące jednostki: 0,6[g/g]*x1[g]+0,8[g/g]*x2[g], co po skróceniu (patrz uwaga o tym „aby się dobrze skracało") daje nam jednostkę lewej strony g. Prawa strona nierówności musi mieć również tę samą jednostkę. Jest tak istotnie, gdyż ograniczenie podane w treści zadania mówi o minimalnym spożyciu na poziomie 50 g. Podobnie, uważając na jednostki, tworzymy ograniczenie dotyczące ilości spożytych węglowodanów: 0,3x1 + 0,1x2 ≥ 20 W układzie ograniczeń należy jeszcze uwzględnić informację o maksymalnym możliwym spożyciu wszystkich odżywek przez kulturystę. Z treści zadania wiadomo, że nie powinien ich zjeść więcej niż 200 g dziennie. x1 + x2 ≤ 200 Aby układ ograniczeń był pełny, należy go uzupełnić o ograniczenia brzegowe: x1 ≥ 0 x2 ≥ 0 3. FUNKCJA CELU W tym zadaniu funkcja celu mówi o minimalizacji kosztów diety: z = 0,04x1 + 0,055x2 → min Pamiętajmy, że w podano ceny za 1 kg odżywki, a zmienne zostały zdefiniowane w gramach. ![]() Podsumowując, rozwiązanie całego zadania będzie wyglądało następująco: x1 - ilość spożywanej odżywki Olimp 60 [g] x2 - ilość spożywanej odżywki Olimp 80 [g] z = 0,04x1 + 0,055x2 → min 0,6x1 + 0,8x2 ≥ 50 0,3x1 + 0,1x2 ≥ 20 x1 + x2 ≤ 200 x1 ≥ 0, x2 ≥ 0 | ||||||||||||||||||||||||||||||||||||||
![]() |
![]() |