Plik programowanie nieliniowe to proces optymalizacji funkcji zależnej od kilku niezależnych zmiennych, które z kolei podlegają ograniczeniom.
Jeśli jedno lub więcej ograniczeń lub funkcja maksymalizująca lub minimalizująca (tzw Funkcja celu), nie jest wyrażona jako liniowa kombinacja zmiennych, więc mamy problem z programowaniem nieliniowym.
Dlatego nie można stosować procedur i metod programowania liniowego.
Na przykład nie można zastosować dobrze znanej metody Simplex, co ma zastosowanie tylko wtedy, gdy funkcja celu i ograniczenia są liniową kombinacją zmiennych problemowych.
Indeks artykułów
W przypadku problemów z programowaniem nieliniowym główne metody, które należy zastosować, to:
1.- Metody graficzne.
2.- Mnożniki Lagrange'a do badania granic regionu rozwiązania.
3.- Obliczanie gradientu w celu zbadania ekstremów funkcji celu.
4.- Metoda malejących kroków, aby znaleźć zerowe punkty gradientu.
5.- Zmodyfikowana metoda mnożników Lagrange'a (z warunkiem Karush-Kuhn-Tucker).
Przykładem rozwiązania metodą graficzną jest to, które widać na rysunku 2:
Zysk G danej firmy zależy od sprzedanej ilości produktu X i sprzedanej ilości produktu Y, ponadto zysk określa się według następującego wzoru:
G = 2 (X - 2)dwa + 3 (ORAZ - 3)dwa
Wiadomo, że kwoty X i Y mają następujące ograniczenia:
X≥0; Y≥0 i X + Y ≤ 7
Określ wartości X i Y, które dają maksymalne wzmocnienie.
W tym problemie funkcja celu jest nieliniowa, podczas gdy nierówności definiujące ograniczenia są. To jest problem programowanie nieliniowe.
Do rozwiązania tego problemu wybrana zostanie metoda graficzna.
Najpierw zostanie określony obszar rozwiązania, który jest określony przez ograniczenia.
Jak X≥0; Y≥0, rozwiązanie należy znaleźć w pierwszej ćwiartce płaszczyzny XY, ale ponieważ musi być również prawdą, że X + Y ≤ 7, rozwiązanie znajduje się w dolnej połowie płaszczyzny prostej X + Y = 7.
Obszar rozwiązania jest przecięciem pierwszej ćwiartki z dolną połową płaszczyzny prostej, co daje początek trójkątnemu obszarowi, w którym znajduje się rozwiązanie. Jest taki sam, jak pokazano na rysunku 1.
Z drugiej strony, wzmocnienie G można również przedstawić na płaszczyźnie kartezjańskiej, ponieważ jego równanie jest równaniem elipsy ze środkiem (2,3).
Elipsa jest pokazana na rysunku 1 dla różnych wartości G. Im wyższa wartość G, tym większe wzmocnienie..
Istnieją rozwiązania, które należą do regionu, ale nie dają maksymalnej wartości G, podczas gdy inne, jak G = 92,4, są poza strefą zieloną, czyli strefą rozwiązania.
Wtedy maksymalna wartość G, taka, że X i Y należą do obszaru rozwiązania, odpowiada:
G = 77 (maksymalne wzmocnienie), które jest podane dla X = 7 i Y = 0.
Co ciekawe, maksymalny zysk występuje, gdy wielkość sprzedaży produktu Y wynosi zero, a ilość produktu X osiąga najwyższą możliwą wartość..
Znajdź rozwiązanie (x, y), które sprawia, że funkcja f (x, y) = xdwa + 2 idwa być maksimum w obszarze g (x, y) = xdwa + Ydwa - 1 = 0.
Jest to oczywiście problem programowania nieliniowego, ponieważ zarówno funkcja celu f (x, y), jak i ograniczenie g (x, y) = 0, nie są liniową kombinacją zmiennych x i y.
Wykorzystana zostanie metoda mnożników Lagrange'a, która w pierwszej kolejności wymaga zdefiniowania funkcji Lagrange'a L (x, y, λ):
L (x, y, λ) = f (x, y) - λ g (x, y) = xdwa + 2 idwa - λ (xdwa + Ydwa - 1)
Gdzie λ jest parametrem o nazwie Mnożnik Lagrange'a.
Aby wyznaczyć skrajne wartości funkcji celu f, w obszarze rozwiązania określonym przez ograniczenie g (x, y) = 0, wykonaj następujące kroki:
-Znajdź pochodne cząstkowe funkcji Lagrange'a L względem x, y, λ.
-Ustaw każdą pochodną na zero.
Oto sekwencja tych operacji:
Możliwym rozwiązaniem tego układu jest λ = 1, więc pierwsze równanie jest spełnione, w którym to przypadku y = 0, tak że spełnione jest drugie.
Z rozwiązania tego wynika, że aby trzecie równanie było spełnione, x = 1 lub x = -1. W ten sposób otrzymano dwa rozwiązania S1 i S2:
S1: (x = 1, y = 0)
S2: (x = -1, y = 0).
Inną możliwością jest to, że λ = 2, więc drugie równanie jest spełnione, niezależnie od wartości y.
W tym przypadku jedynym sposobem na spełnienie pierwszego równania jest to, że x = 0. Biorąc pod uwagę trzecie równanie, istnieją tylko dwa możliwe rozwiązania, które nazwiemy S3 i S4:
S3: (x = 0, y = 1)
S4: (x = 0, y = -1)
Aby dowiedzieć się, które lub które z tych rozwiązań maksymalizują funkcję celu, przechodzimy do podstawienia w f (x, y):
S1: f (1, 0) = 1dwa + 2.0dwa = 1
S2: f (-1, 0) = (-1)dwa + 2.0dwa = 1
S3: f (0, 1) = 0dwa + 2.1dwa = 2
S4: f (0, -1) = 0dwa + dwadzieścia jeden)dwa = 2
Wnioskujemy, że rozwiązania maksymalizujące f, gdy x i y należą do obwodu g (x, y) = 0, to S3 i S4.
Pary wartości (x = 0, y = 1) i (x = 0, y = -1) maksymalizują f (x, y) w obszarze rozwiązania g (x, y) = 0.
Znajdź rozwiązania (x, y) dla funkcji celu:
f (x, y) = xdwa + 2 idwa
Niech będzie maksimum w obszarze g (x, y) = xdwa + Ydwa - 1 ≤ 0.
To ćwiczenie jest podobne do ćwiczenia 2, ale obszar rozwiązania (lub ograniczenia) rozciąga się do wewnętrznego obszaru obwodu g (x, y) = 0, czyli do koła g (x, y) ≤ 0. Obejmuje to do obwodu i jego wewnętrznego obszaru.
Rozwiązanie na granicy zostało już określone w ćwiczeniu 2, ale obszar wewnętrzny pozostaje do zbadania.
Aby to zrobić, należy obliczyć gradient funkcji f (x, y) i ustawić na zero, aby znaleźć wartości ekstremalne w obszarze rozwiązania. Jest to równoważne z obliczeniem pochodnych cząstkowych f odpowiednio względem x i y i ustawieniem równym zero:
∂f / ∂x = 2 x = 0
∂f / ∂y = 4 y = 0
Ten układ równań ma jako jedyne rozwiązanie (x = 0, y = 0) należące do koła g (x, y) ≤ 0.
Podstawienie tej wartości w funkcji f skutkuje:
f (0, 0) = 0
Podsumowując, maksymalna wartość, jaką funkcja przyjmuje w obszarze rozwiązania wynosi 2 i występuje na granicy obszaru rozwiązania, dla wartości (x = 0, y = 1) i (x = 0, y = -1 ).
Jeszcze bez komentarzy