Wszechnica Wszechwiedzy - Baner

Metoda graficzna

Wprowadzenie

Metoda graficzna to najbardziej podstawowa metoda rozwiązywania zadań programowania liniowego, od której student zaczyna swoją „przygodę” przedmiotem badania operacyjne.

W tym artykule przedstawię najważniejsze cechy tej metody, istotne „tricki” ułatwiające rozwiązywanie zadań, a także pewne niestandardowe sytuacje, jakie mogą wystąpić podczas rozwiązywania zadań metodą graficzną.

Na czym polega metoda graficzna

Metoda graficzna służy do rozwiązywania zadań programowania liniowego, w których występują dwie zmienne decyzyjne. W pewnych szczególnych sytuacjach, można jej użyć także do rozwiązania zadań z większą ilością zmiennych decyzyjnych. Metoda ta polega na sporządzeniu wykresu na kartezjańskim układzie współrzędnych $x_1$, $x_2$, w którym nanosi się obszar dopuszczalny zadania oraz (najlepiej) również izokwanty (poziomice) funkcji celu. Dzięki unaocznieniu na wykresie elementów zadania, wyznaczenie rozwiązania staje się proste.

Przykładowe zadanie

Każde zadanie programowania liniowego składa się z czterech następujących elementów:

  1. zmienne decyzyjne,
  2. funkcja celu,
  3. warunki ograniczające,
  4. warunki brzegowe.

Załóżmy, że w naszym zadaniu mamy funkcję celu: $f(\textbf x) = 2 x_1 + 4 x_2 \rightarrow \max$

Przy następujących ograniczeniach:

$$\left\{ {\begin{aligned} x_1 + x_2 \leq 12 \\ 3x_1 + 2x_2 \geq 6 \\ 2x_1 - 4x_2 \geq 8\end{aligned}}\right.$$

Dla klasycznych warunków brzegowych: $x_1 \geq 0$, $x_2\geq 0$.

Zaczynamy od narysowania obszaru. Poszczególne nierówności rysujemy w taki sposób, że rysujemy najpierw prostą, odpowiadająca równaniu a następnie zaznaczamy, po której stronie prostej występuje obszar. Z uwagi na warunki brzegowe, rysunek ograniczony zostanie do pierwszej ćwiartki układu współrzędnych.

Weźmy pierwszą nierówność: $x_1 + x_2 \leq 12$. Rysujemy najpierw prostą $x_1 + x_2 = 12$. Aby narysować prostą (a w zasadzie reprezentujący ją odcinek), wyznaczamy dwa punkty, przez które prosta ta przechodzi. Aby narysowanie prostej za pomocą długopisu i linijki było łatwiejsze, punkty te powinny: po pierwsze, być od siebie odpowiednio oddalone, a po drugie, najlepiej, by miały takie współrzędne, aby przy przyjętej skali rysunku, wyrażały się one całkowitą ilością jednostek lub kratek. Dobrze też, gdy współrzędne obydwu punktów wyrażać się będą nieujemnymi wartościami współrzędnych, gdyż i tak obszar leży w pierwszej ćwiartce. Naturalnie, jeśli narysowanie prostej będzie przez to łatwiejsze, można wyznaczyć taką parę współrzędnych, w których jedna z nich (lub nawet obie) będzie wyrażać się niewielką liczbą ujemną (np. -1).

Jeśli, tak jak w powyższym przypadku, obie współrzędne są sumowane, najprościej przyjąć punkty, leżące na osiach układu współrzędnych – czyli wyznaczyć taką wartość jednej zmiennej, dla której równość będzie spełniona, a jedna ze współrzędnych równa będzie zero. W naszym przypadku takie współrzędne to $(0; 12)$ oraz $(12; 0)$.

Następnie musimy ustalić, z której strony narysowanej prostej znajduje się obszar dopuszczalny. W tym celu należy pamiętać o prostej zasadzie:

Następnie patrzymy na znak nierówności oraz znak współczynnika przy danej współrzędnej. Jeśli znak współczynnika jest dodatni, wówczas położenie obszaru względem prostej jest niejako „intuicyjnie zgodne” z kierunkiem owej nierówności. Czyli przy znaku $\leq$ obszar znajduje się na lewo od prostej (jeśli współczynnik przy $x_1$ jest dodatni) oraz poniżej prostej (jeśli współczynnik przy $x_2$ jest dodatni). Przy znaku $\geq$ obszar ten znajduje się odpowiednio na prawo oraz powyżej prostej.

Ujemny współczynnik odwraca tę „intuicyjną zgodność”. Ujemny współczynnik przy zmiennej $x_1$ sprawia, że znak $\leq$ oznacza, iż obszar znajduje się na prawo od prostej a $\geq$ – na lewo. Analogicznie ujemny współczynnik przy zmiennej $x_2$ sprawia, że przy znaku $\leq$ obszar jest powyżej, a przy znaku $\geq$ – poniżej prostej.

Jako, że w pierwszej nierówności ograniczającej $x_1 + x_2 \leq 12$ współczynniki przy obu zmiennych są dodatnie, to wobec znaku $\leq$ obszar dopuszczalny znajduje się na lewo oraz poniżej narysowanej prostej, co warto zaznaczyć na rysunku małą strzałeczką”.

Metoda graficzna
Ograniczenie x₁ + x₂ ≤ 12
Ograniczenie naniesione na wykres 

Analogicznie nanosimy kolejną nierówność ograniczającą: $3x_1 + 2x_2 \geq 6$. Najpierw rysujemy prostą $3x_1 + 2x_2 = 6$. Najłatwiejszymi punktami do wyznaczenia są $(0; 3)$ oraz $(2; 0)$. Przy obydwu zmiennych współczynniki są dodatnie, zatem wobec znaku $\geq$ obszar dopuszczalny znajduje się na prawo oraz powyżej tej prostej.

Ostatnią z nierówności ograniczających jest $2x_1 - 4x_2 \geq 8$. Rysujemy prostą $2x_1 - 4x_2 = 8$. W tym wypadku pierwszy punkt wyznaczyć można analogicznie do poprzednich, jak $(4; 0)$, ale chcąc znaleźć punkt przecięcia z osią $Ox_2$ należałoby wziąć punkt $(0; -2)$. Wzięcie takiego punktu nie jest błędem, ale należałoby przedłużyć oś odciętych $Ox_2$ poniżej osi rzędnych. Zamiast tego można dobrać inny punkt spełniający równanie prostej – np. może to być punkt $(6; 1)$.

Przy zmiennej $x_1$ współczynnik jest dodatni (wynosi 2), ale przy zmiennej $x_2$ jest on ujemny (wynosi -4). Zatem wobec znaku nierówności $\geq$ obszar znajduje się na prawo od narysowanej prostej (zgodnie z „intuicją”) ale jednocześnie poniżej tej prostej (czyli przeciwnie niż mówi „intuicja”).

Finalnie, obszar dopuszczalny wygląda następująco:

Metoda graficzna
Naniesione wszystkie ograniczenia
Obszar dopuszczalny zadania 

Sporządzenie obszaru dopuszczalnego to najważniejsza część zadania. Często, w ramach kursu badań operacyjnych, studenci nie uczą się rysowania niczego więcej, albowiem sensownym jest poszukiwanie rozwiązania optymalnego wyłącznie wśród wierzchołków tego obszaru.

W niniejszym artykule zostanie jednak pokazany łatwiejszy sposób wyznaczania rozwiązania optymalnego: w oparciu o izokwantę funkcji celu oraz jej gradient.

Jeśli jednak chcielibyśmy poszukiwać rozwiązania optymalnego wyłącznie wśród wierzchołków, to musimy znać ich współrzędne. O ile współrzędne wierzchołków stanowiących podstawę naszego trójkąta znamy, gdyż używaliśmy ich przecież do rysowania prostych – są to punkty $(4; 0)$ oraz $(12; 0)$ – nazwijmy je odpowiednio punktami $A$ oraz $B$: $A = (4; 0)$ $B=(12; 0)$, o tyle trzeci punkt musi być znaleziony analitycznie, jako punkt przecięcia się „zielonej” prostej $x_1 + x_2 = 12$ oraz „brązowej” prostej $2x_1 - 4x_2 = 8$. Współrzędne te znajdujemy rozwiązując układ równań:

$$\left\{ {\begin{aligned} x_1 + x_2 = 12 & / \cdot (-2) & / \cdot 4 \\ 2x_1 - 4x_2 = 8 & &\end{aligned}}\right.$$

Do rozwiązania wykorzystamy metodę przeciwnych współczynników:

$$\left\{ {\begin{aligned} -2x_1 - 2x_2 = -24 \\ 2x_1 - 4x_2 = 8 \end{aligned}}\right.$$

po dodaniu stronami dostajemy: 

$$-6x_2 = -16 /:(-6)$$

skąd: $x_2 = {8 \over 3}$

i analogicznie:

$$\left\{ {\begin{aligned} 4x_1 + 4x_2 = 48 \\ 2x_1 - 4x_2 = 8 \end{aligned}}\right.$$

po dodaniu stronami dostajemy: 

$$6x_1 = 56 / :6$$

skąd: $x_1 = {28 \over 3}$

Zatem $C = \left( {28 \over 3}; {8 \over 3} \right)$

Dysponując tylko współrzędnymi punktów wierzchołkowych, rozwiązanie optymalne zadania znaleźć można obliczając wartości funkcji celu we wszystkich punktach wierzchołkowych i wybierając najlepszą z nich, z punktu widzenia kierunku optymalizacji. W naszym przypadku funkcja celu jest maksymalizowana, stąd wybieramy wartość największą.

Tutaj widzimy już słabość takiej metody rozwiązywania zadania, gdyż w naszym prostym zadaniu są tylko trzy punkty wierzchołkowe, ale w ogólności punktów tych może być znacznie więcej. Ale skoro są trzy, to obliczmy:

$$f(A) = f(4; 0) = 2 \cdot 4 + 4 \cdot 0 = 8$$

$$f(B) = f(12; 0) = 2 \cdot 12 + 4 \cdot 0 = 24$$

$$f(C) = f \left( {28 \over 3} ; {8 \over 3} \right) = 2 \cdot {28 \over 3} + 4 \cdot {8 \over 3} = {56 \over 3} + {32 \over 3} = {88 \over 3} = 29 {1 \over 3} = f_{max}$$

Zatem optymalnym rozwiązaniem zadania jest:

$$\left\{ {\begin{aligned} x_1^{opt} = {28 \over 3} \\ x_2^{opt} = {8 \over 3} \end{aligned}}\right.$$

a optymalna wartość funkcji celu wynosi: 

$$f_{max} = {88 \over 3} = 29 {1 \over 3}$$

Jednak rozwiązywanie zadania można sobie znacząco ułatwić, nanosząc na obszar dopuszczalny izokwantę funkcji celu oraz kierunek, w którym przesuwa się ona wraz ze wzrostem wartości tej funkcji.

W pierwszej kolejności warto narysować przykładową izokwantę (zwaną także poziomicą lub warstwicą) funkcji celu, przechodząca przez nasz obszar dopuszczalny. Najlepiej, by przechodziła ona „w miarę” przez środek tego obszaru. Jak tego dokonać?

Wybierzmy sobie jakiś punkt leżący wewnątrz tego obszaru – niech będzie to, przykładowo, punkt $(9; 1)$. Jak narysować taka izokwantę? Mamy dwie możliwości. Pierwsza możliwość polega na obliczeniu wartości funkcji celu w tym punkcie: $f(9; 1) = 2 \cdot 9 + 4 \cdot 1 = 18 + 4 = 22$ i następnie rysujemy prostą $f(x_1, x_2) = 22$, tj. prostą $2x_1 + 4x_2 = 22$ dokładnie w taki sam sposób, jak robimy to w przypadku prostych ograniczających. Punkt $(9; 1)$ już mamy – sami go sobie obraliśmy, no to bierzemy jakiś jeszcze jeden – w miarę oddalony, by rysunek wykonać precyzyjnie. Może to być punkt $(11; 0)$ a jeszcze lepszym (bo bardziej oddalonym) może być np. punkt $(1; 5)$.

Znacznie jednak lepszą metodą jest metoda oparta o gradient funkcji celu. Po narysowaniu jednej izokwanty bowiem nadal nie wiemy, w która stronę ona się przesuwa, gdy wartość funkcji celu wzrasta. Musielibyśmy narysować jeszcze jedną izokwantę, w innym punkcie i dopiero wówczas posiadalibyśmy taką wiedzę. Gradient jednak wskaże nam to o wiele szybciej.

Gradient funkcji celu jest to wektor o składowych równych współczynnikom przy zmiennych decyzyjnych w funkcji celu. W naszym przypadku jest to wektor $\nabla f = \vec u = [2 ; 4]$. Traktujemy go jak wektor swobodny, który „zaczepić” możemy w  dowolnym punkcie naszego wykresu – najlepiej, by był to obrany punkt $(9; 1)$ – i uwaga – wcale nie musimy rysować najpierw izokwanty! Wręcz przeciwnie – lepiej zacząć właśnie od gradientu! Wektor to „strzałka” mająca początek i koniec (z „grotem”). Początek rysujemy w wybranym punkcie $(9; 1)$, koniec zaś w punkcie przesuniętym względem tego punktu o 2 jednostki w poziomie i 4 jednostki w pionie. Gradient wskazuje nam, w którą stronę izokwanta, która do naszego gradientu jest zawsze prostopadła, przesuwa się wraz ze wzrostem wartości funkcji celu.

Wiedząc o prostopadłości gradientu i izokwanty, tę ostatnią można narysować właśnie już po narysowaniu gradientu. I – uwaga – nie będzie tu potrzebna ekierka. Skoro początek naszego wektora jest w punkcie $(9; 1)$ i wektor ma składowe $[2; 4]$ – czyli „przesuwa” o dwie jednostki w prawo i cztery w górę, to aby „ładnie” narysować prostopadłą do niego izokwantę, wystarczy narysować dwa jej punkty – jeden przesunięty o (uwaga!) cztery jednostki w prawo i dwie w dół (czyli będzie to punkt $(13; -1)$) a drugi przesunięty względem punktu $(9;1)$ na odwrót, tj. o cztery jednostki w lewo i dwie jednostki w górę (tj. będzie to punkt $(5; 3)$.

Wykorzystujemy tutaj fakt, że aby otrzymać wektor prostopadły do danego, należy zamienić jego składowe i przed jedną z nich zmienić znak na przeciwny. Tj. wektorami prostopadłymi (ortogonalnymi) do $[2; 4]$ są wektory $[4; -2]$ oraz $[-4; 2]$.

Metoda graficzna
Obszar dopuszczalny, izokwanty oraz gradient funkcji celu
Obszar dopuszczalny, izokwanty oraz gradient funkcji celu 

Mając narysowaną zarówno izokwantę, jak i gradient, bez trudu ustalamy, że punktem optymalnym jest punkt $C$, gdyż jest to ostatni punkt obszaru dopuszczalnego, przez który obszar ten opuści, przesuwająca się w kierunku wskazanym przez gradient, izokwanta funkcji celu.

Gdybyśmy szukali minimum funkcji celu, wówczas punktem optymalnym byłby punkt $A=(4; 0)$, gdyż z kolei jest to ostatni punkt obszaru, przez który opuści go izokwanta przesuwająca się w kierunku przeciwnym do wskazanego przez gradient.

Dla ustalenia rozwiązania optymalnego metodą opartą o gradient funkcji celu konieczne jest sporządzenie jak najprecyzyjniejszego rysunku, gdyż czasem nachylenie krawędzi obszaru jest bardzo podobne do nachylenia izokwanty i może być trudno ustalić, który dokładnie punkt jest tym „ostatnim”. Może się zresztą zdarzyć, że nachylenie tej krawędzi będzie identyczne i wówczas rozwiązaniem optymalnym nie będzie jeden konkretny punkt, ale wszystkie punkty należące do odcinka (rozwiązanie optymalne niejednoznaczne). 

Oczywiście w razie wątpliwości zawsze można policzyć wartości funkcji celu w „wątpliwych” wierzchołkach – jeśli będą się różnić, to optymalnym punktem będzie ten, dający „lepszą” (z punktu widzenia kryterium optymalizacji) wartość. Wartości jednakowe oznaczać będą, że optymalny jest cały odcinek.

Metoda graficzna
Przykład zadania z optymalnym całym brzegiem obszaru dopuszczalnego
Zadanie z optymalnym całym brzegiem obszaru dopuszczalnego. 

Na powyższym rysunku mamy taką właśnie sytuację. Jest to zadanie o takim samym obszarze dopuszczalnym, jak wcześniej, ale o innej funkcji celu:

$g(\textbf x) = x_1 + x_2 \rightarrow \max$

Widzimy, że izokwanta nie opuści obszaru przez punkt $C$, ale przez cały odcinek $BC$. Rozwiązaniami optymalnymi są wszystkie punkty tego odcinka, a zatem zarówno punkt $B=(12;0)$ jak i $C = \left( {28 \over 3}; {8 \over 3} \right)$ ale także wszystkie punkty leżące na odcinku $BC$, pomiędzy jego końcami. Jak zapisać takie rozwiązanie? Otóż jedną ze zmiennych w   rozwiązaniu wypisujemy podając zakres jej zmian w postaci dwustronnej nierówności, a drugą podajemy w postaci liniowej zależności od tej pierwszej (zauważmy, że obydwa te punkty leżą na prostej $x_1 + x_2 = 12$).

Czyli na przykład tak:

$$\left\{ {\begin{aligned} {28 \over 3} \leq x_1 \leq 12 \\ x_2 = 12 - x_1 \end{aligned}}\right.$$

albo tak:

$$\left\{ {\begin{aligned} x_1 = 12 - x_2 \\ 0 \leq x_2 \leq {8 \over 3} \end{aligned}}\right.$$

Stosując metodę gradientową możemy spotkać się z sytuacją, że wartości współczynników funkcji celu będą zupełnie innych rzędów wielkości aniżeli współrzędne punktów obszaru ograniczającego. Co wówczas? Otóż w  przypadku gradientu znaczenie mają jedynie jego kierunek oraz zwrot. Nie jest istotna jego długość. Co za tym idzie, zamiast rysować wprost gradient, można narysować dowolną dodatnią jego wielokrotność (mniejszą lub większą). Jeśli zatem przy naszym obszarze dopuszczalnym, funkcja celu byłaby postaci: $h(\textbf x) = 3000x_1 + 2000x_2 \rightarrow \max$ to nie musimy rysować wektora $[3000; 2000]$. Możemy obie jego współrzędne podzielić przez 1000 (czyli pomnożyć przez skalar 0,001), otrzymując łatwy do narysowania wektor $[3;2]$. Ważne, by obie współrzędne były pomnożone przez tę samą liczbę (w przeciwnym razie zmianie ulegnie kierunek) i by liczba ta była dodatnia (w przeciwnym wypadku zmieni się zwrot).

Czym metoda graficzna może nas zaskoczyć?

Rozwiązując zadania metodą graficzną można natknąć się na przypadki szczególne. Najłatwiejszy z nich, to obszar dopuszczalny będący zbiorem pustym. Weźmy zadanie o następującym układzie ograniczeń:

$$\left\{ {\begin{aligned} x_1 + x_2 \leq 12 \\ 3x_1 + 2x_2 \geq 6 \\ 2x_1 + 2x_2 \geq 30\end{aligned}}\right.$$

Metoda graficzna
Przykład zadania sprzecznego – obszar dopuszczalny jest zbiorem pustym
Zadanie sprzeczne – obszar dopuszczalny jest zbiorem pustym. 

W takim wypadku oczywiście mamy $D=\emptyset$ co oznacza, że rozważane zadanie programowania liniowego jest zadaniem sprzecznym, a zatem nie posiada rozwiązania optymalnego, gdyż aby istniało rozwiązanie optymalne zadania programowania liniowego, musi ono posiadać jakiekolwiek rozwiązania dopuszczalne. Dopiero spośród nich może się bowiem „rekrutować” rozwiązanie optymalne. Jeśli rozwiązań dopuszczalnych brak, to i rozwiązanie optymalne istnieć nie może.

Czasem jednak spotkać się możemy z innym przypadkiem, gdzie również nie ma rozwiązania optymalnego, ale z zupełnie innego powodu. Weźmy następujące zadanie programowania liniowego:

Zmaksymalizować funkcję celu: $f(\textbf x) = 3 x_1 + 4 x_2 \rightarrow \max$

Przy następujących ograniczeniach:

$$\left\{ {\begin{aligned} x_1 + x_2 \geq 12 \\ 3x_1 + 2x_2 \geq 48 \\ 2x_1 - 4x_2 \geq 8\end{aligned}}\right.$$

Dla klasycznych warunków brzegowych: $x_1 \geq 0$, $x_2\geq 0$.

Sporządzamy wykres obszaru dopuszczalnego i nanosimy gradient wraz z przykładową izokwantą.

Metoda graficzna
Przykład zadania nieposiadającego skończonego rozwiązania optymalnego
Zadanie nie posiada skończonego rozwiązania optymalnego. 

Obszar dopuszczalny, jak widać, nie jest bynajmniej pusty, jednakże przy zadanej funkcji celu rozwiązania optymalnego nie da się wyznaczyć. Ale nie dlatego, że nie istnieje ono w ogóle, lecz dlatego, że nie jest ono skończone. Izokwanta może przesuwać się w kierunku wskazanym przez gradient, nie napotykając na jakikolwiek opór. Wszystko jednak zależy od funkcji celu. Jeśli bowiem – pozostawiając ten sam obszar dopuszczalny – funkcję celu zmienimy na:

$g(\textbf x) = -2 x_1 + 3 x_2 \rightarrow \max$

wówczas sytuacja pokazana na rysunku zmieni się na:

Metoda graficzna
Przykład zadania z obszarem dopuszczalnym, jak na rys. 6, posiadającego rozwiązanie optymalne
Obszar dopuszczalny, jak na rys. 6 – zadanie posiada rozwiązanie optymalne. 

i rozwiązaniem optymalnym będzie punkt przecięcia „brązowej” i „niebieskiej” prostej. Łatwo to rozwiązanie znaleźć, wynosi ono:

Zatem optymalnym rozwiązaniem zadania jest:

$$\left\{ {\begin{aligned} x_1^{opt} = 13 \\ x_2^{opt} = 4,5 \end{aligned}}\right.$$

a optymalna wartość funkcji celu wynosi: 

$$f_{max} = -12,5$$

Niestandardowe użycie metody graficznej

Jak wspomniano, metody graficznej używamy wówczas, gdy w zadaniu występują dwie zmienne decyzyjne. Jednak w niektórych przypadkach metoda graficzna okazuje się przydatna także, przy większej ich ilości.

Z pierwszym tego typu przypadkiem mamy do czynienia wówczas, gdy występują wprawdzie trzy zmienne decyzyjne, ale jedno z ograniczeń ma charakter równości, w związku z czym jedną ze zmiennych można po prostu wyrugować z układu ograniczającego. Weźmy następujące zadanie programowania liniowego.

Funkcja celu: $f(\textbf x) = 2 x_1 + 4 x_2 + x_3 \rightarrow \max$

Ograniczenia:

$$\left\{ {\begin{aligned} x_1 + x_2 +x_3 \leq 20 \\ 2x_1 + x_2 - x_3 \leq 30 \\ x_1 - x_2 + 2x_3 = 12\end{aligned}}\right.$$

Warunki brzegowe typowe: $x_1 \geq 0$, $x_2\geq 0$, $x_3\geq 0$.

Ponieważ trzecie ograniczenie jest równością, można wykorzystać je do wyrugowania jednej ze zmiennych, poprzez przedstawienie jej, jako funkcji liniowej dwu pozostałych zmiennych. Załóżmy, że wyrugujemy zmienną $x_1$ (wyrugowanie zmiennej $x_3$ może być kłopotliwe, z uwagi na ułamkowe współczynniki, jakie się w takim wypadku pojawią).

Przekształcając trzecie ograniczenie dostajemy:

$$x_1 = x_2 - 2x_3 + 12$$

Zależność tę podstawiamy do funkcji celu oraz dwu pozostałych ograniczeń, otrzymując:

$$f(x_2,x_3) = 6 x_2 - 3 x_3 + 24 \rightarrow \max$$

$$2 x_2 - x_3 \leq 8$$

$$3x_2 - 5x_3 \leq 6$$

Czy to już wszystko? Otóż nie. Na wszystkie trzy zmienne narzucono warunki nieujemności, zatem zmienna $x_1$ również musi być nieujemna, co oznacza konieczność uwzględnienia jeszcze jednej nierówności: $x_2 - 2x_3 \geq -12$. Teraz mamy już kompletne, przekształcone zadanie programowania liniowego z dwiema zmiennymi decyzyjnymi:

$$f(x_2,x_3) = 6 x_2 - 3 x_3 + 24 \rightarrow \max$$

$$\left\{ {\begin{aligned} 2 x_2 - x_3 \leq 8 \\ 3x_2 + x_2 - 5x_3 \leq 6 \\ x_2 - 2x_3 \geq -12\end{aligned}}\right.$$

$x_2\geq 0$, $x_3\geq 0$.

i takie zadanie może już być z powodzeniem rozwiązane metodą graficzną. Komentarza wymaga funkcja celu, w której pojawia się stała (wyraz wolny). Otóż zadanie takie rozwiązuje się po prostu w taki sposób, jakby stała ta była równa zero, bowiem jeśli wyrażenie $6x_2 - 3 x_3$ osiągnie wartość maksymalną (minimalną), to i w  sposób oczywisty wartość wyrażenia $6x_2 - 3 x_3 + 24$ również będzie maksymalna (minimalna).

Przedstawiony problem można uogólnić – metodą graficzną mogą być rozwiązane także zadania programowania liniowego z k zmiennymi decyzyjnymi ($k>2$), o ile wśród ograniczeń takiego zadania wystąpi $k-2$ liniowo niezależnych równości.

Innym przypadkiem zadania z większą niż dwie ilością zmiennych decyzyjnych, które może być rozwiązane z wykorzystaniem metody graficznej, jest zadanie zawierające więcej niż dwie zmienne decyzyjne, ale tylko dwa warunki ograniczające. Zadanie takie może być rozwiązane metoda graficzną z wykorzystaniem dualności zadań programowania liniowego. Jest to jednak temat o tyle obszerny, że poświęcony mu będzie osobny artykuł.