Zadanie programowania liniowego PL dla ograniczeń mniejszościowych przy ograniczeniach: dim x=n, dim c=n, dim A =[m x n], dim b1=m1, Postać kanoniczna zadania PL Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Równoważność zadań programowania matematycznego I Ograniczenie równościowe można zastąpić dwoma ograniczeniami nierownościowymi II Ograniczenie nierównościowe można zastąpić ograniczeniem równościowym , wprowadzając zmienną uzupełniającą III Zmienną wolną można przedstawić jako różnicę dwóch zmiennych nieujemnych gdzie: Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Podstawowe definicje Jeśli dla układu równań liniowych Ax=b spełniony jest warunek rz[Ar]=rz[A] to mogą zaistnieć trzy następujące przypadki: rz[A] = m = n istnieje jedno rozwiązanie układu Ax=b. rz[A] = n < m istnieje jedno rozwiązanie układu równań, lecz przy tym (m - n) równań jest zbędnych. 3. rz[A] = m < n istnieje nieskończenie wiele rozwiązań układu Ax=b , jest to układ nieoznaczony. Definicja macierzy bazowej B Macierzą bazową B układu równań Ax = b rz[A] = m, n>m nazywamy nieosobliwą macierz kwadratową o wymiarach (m*m) utworzoną z liniowo-niezależnych kolumn aj macierzy A. Definicja rozwiązania bazowego Rozwiązaniem bazowym układu równań Ax=b rz[A]=m, n>m nazywamy wektor xb=B-1b utworzony ze zmiennych odpowiadających kolumnom aj macierzy bazowej B. Składowe wektora bazowego xb są to zmienne bazowe. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Rozwiązania bazowe B- macierz bazowa nieosobliwa N- macierz niebazowa - wektor zmiennych bazowych odpowiadających kolumnom macierz B - wektor zmiennych niebazowych odpowiadających kolumnom macierz N Definicja: Rozwiązanie bazowe jest rozwiązaniem bazowym dopuszczalnym zadania programowania liniowego PL jeśli wektor xB jest nieujemny tzn. Wówczas rozwiązanie bazowe dopuszczalne posiada nie więcej niż m dodatnich xi. Definicja: Niezdegenerowanym rozwiązaniem bazowym dopuszczalnym zadania PL nazywamy rozwiązanie dopuszczalne , w którym nie wszystkie składowe xi są większe od zera. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Extremum zadania programowania liniowego PL Definicja: Punkt x należący do wypukłego zbioru jest punktem wierzchołkowym zbioru X, jeśli nie może być wyrażony jako kombinacja liniowa innych punktów zbioru X. Twierdzenie 5.1 Zbiór wszystkich rozwiązań dopuszczalnych zadania programowania liniowego PL jest zbiorem wypukłym. Twierdzenie 5.2 Rozwiązanie dopuszczalne x zadania programowania liniowego PL jest punktem wierzchołkowym zbioru rozwiązań dopuszczalnych X wtedy i tylko wtedy gdy odpowiada mu bazowe rozwiązanie dopuszczalne tzn.: Dowód: 1. Zakłada się, że wektor x jest bazowym rozwiązaniem dopuszczalnym. Pokazać, że x jest punktem wierzchołkowym zbioru X 2. Zakłada się, że wektor x jest punktem wierzchołkowym zbioru rozwiązań dopuszczalnych zadania programowania liniowego. Pokazać, że wektor x jest bazowym rozwiązaniem dopuszczalnym. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Extremum zadania programowania liniowego PL cd. Twierdzenie 5.3 Jeżeli funkcja określona na domkniętym i ograniczonym wypukłym zbiorze jest ciągła i wypukła, to globalne maksimum funkcji f(x) występuje w punkcie ekstremalnym (bądź punktach) zbioru X. Dowód: Zaprzeczamy tezie: - dowolne globalne minimum v – dowolny punkt ekstremalny zbioru X. Zbiór X jest zbiorem zwartym, funkcja f(x) jest ciągła – więc istnieje punkt - punkty ekstremalne zbioru X . Każdy punkt , który nie jest punktem ekstremalnym, może być wyrażony jako kombinacja wypukła punktów vi Funkcja f(x) jest wypukła więc zachodzi dla dowolnego punktu zachodzi: ckd. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Extremum zadania programowania liniowego PL cd. Twierdzenie 5.4 Funkcja celu zadania PL przyjmuje wartość maksymalną w punkcie wierzchołkowym zbioru rozwiązań dopuszczalnych zadania PL. 2. Jeśli funkcja celu zadania PL przyjmuje wartość maksymalną w więcej niż jednym punkcie wierzchołkowym, to ma tą samą wartość dla każdej kombinacji wypukłej tych punktów. Dla p dopuszczalnych bazowych rozwiązań optymalnych, tzn. Zbiór rozwiązań optymalnych przyjmuje postać: Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Pierwsze rozwiązanie bazowe Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Poszukiwanie rozwiązań bazowych dopuszczalnych
Pierwsze rozwiązanie bazowe dopuszczalne Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Wprowadzone oznaczenia: oraz gdzie oznaczają kolumny macierzy N. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Postać początkowej tablicy simpleksowej dla przypadku gdy cB=0 tzn. pierwsze rozwiązanie bazowe dopuszczalne odpowiada za punkt wierzchołkowy x=0. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Polepszanie rozwiązania bazowego dopuszczalnego Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Polepszanie bazowego rozwiązania dopuszczalnego Gdy mamy nie-zdegenerowane rozwiązanie bazowe dopuszczalne takie, że dla przynajmniej jednego i wówczas można z niego otrzymać lepsze bazowe rozwiązanie dopuszczalne przez wymianę jednej z kolumn macierzy B na kolumnę macierzy N. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Optymalne rozwiązanie zadania programowania liniowego PL metodą simpleks Twierdzenie 5.5 Rozwiązanie bazowe dopuszczalne układu równań Ax=b jest rozwiązaniem optymalnym zadania PL, jeśli są spełnione dwa warunki: (i) Warunek prymalnej dopuszczalności: (ii) Warunek optymalności Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Pierwsza tablica simpleks-I rozwiązanie bazowe dopuszczalne Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Polepszona tablica simpleks odpowiada za następne rozwiązanie bazowe dopuszczalne o większej wartości funkcji celu. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Algorytm simpleks (prymalny) Krok 1. (start). Rozpoczynamy algorytm od znalezienia pierwszego rozwiązania bazowego dopuszczalnego. Należy sprawdzić dopuszczalność rozwiązania: czy Tak - idź do kroku 2, Nie – STOP. Krok 2. (test optymalności). Czy dla każdego ? Tak - to aktualne rozwiązanie jest optymalne. Nie - idź do kroku 3. Krok 3. (Wybór zmiennej wchodzącej do bazy). Wybierz jako zmienną wchodzącą do bazy taką zmienną dla której Typową regułą jest wybór zmiennej jest reguła dla której: Idż do kroku 4. Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Algorytm simpleks (prymalny) c.d. Krok 4. (wybór zmiennej usuwanej z bazy). Wybierz jako zmienną usuwaną z bazy taką zmienną dla której Jeśli wiele zmiennych spełnia ten warunek, wybierz arbitralnie jedną z nich. Idż do kroku 5. Krok 5. (eliminacja Gauss’a). Wyznacz oraz względem zmiennych oraz zmiennej zgodnie z wyprowadzonym wzorem. Podstaw aby otrzymać nowe rozwiązanie bazowe dopuszczalne. Idź do kroku 2. Krok ten czasami nazywa się wymianą zmiennej bazowej ( piwotyzacją). Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4
Schemat reguły przeliczenia współczynników w tablicy simpleks wg metody eliminacji Gauss’a p - element centralny (główny) q – dowolny element w wierszu centralnym (głównym) r – dowolny element w kolumnie centralnej (głównej) s – dowolny pozostały element Algorytmy optymalizacji Dr inż. Ewa Szlachcic Wykład 4