Narzędzia wspomagania decyzji logistycznych

Wielkość: px
Rozpocząć pokaz od strony:

Download "Narzędzia wspomagania decyzji logistycznych"

Transkrypt

1 Narzędzia wspomagania decyzji logistycznych Dr Adam Kucharski Spis treści Optymalizacja liniowa. Programowanie liniowe Metoda graficzna Algorytm simplex Wyceny dualne Zadanie transportowe Wybrane modyfikacje klasycznego zadania transportowego Minimalizacja pustych przebiegów Zagadnienie optymalnego przydziału Programowanie sieciowe. Najkrótsza droga w sieci Maksymalny przepływ w sieci

2 Optymalizacja liniowa. Programowanie liniowe Problem decyzyjny istnieje wtedy kiedy zachodzą następujące okoliczności:. Pojawia się decydent (osoba lub grupa osób), który musi rozwiązać problem;. Decydent chce osiągnąć pewien cel;. Istnieją co najmniej dwa sposoby na osiągnięcie zakładanego celu;. Istnieje otoczenie, które wpływa na sposób rozwiązania problemu lub jego wynik. Proces podejmowania decyzji może zostać wsparty przez odpowiednio skonstruowane modele matematyczne zwane też modelami decyzyjnymi. Normalna jest tutaj sytuacja, w której należy dokonać wyboru pomiędzy wieloma możliwymi decyzjami, zwanymi decyzjami dopuszczalnymi. Dają one decydentowi szansę na spełnienie ograniczeń jakie często narzuca na przykład otoczenie. Przydatny staje się zestaw narzędzi pozwalający podjąć najlepszą z decyzji. Ostatnie zdanie oznacza, że decydent posługuje się pewnym kryterium, które pozwala mu odróżnić lepsze decyzje od gorszych. Na zbiorze decyzji dopuszczalnych określana jest tzw. funkcja kryterium (funkcja celu), dla której poszukuje się wartości największej lub najmniejszej. Zmienne zawierające w sobie konkretne decyzje nazywać będziemy zmiennymi decyzyjnymi. Programowanie liniowe (PL) zalicza się do znacznie szerszej grupy metod programowania matematycznego. Metody na nim bazujące są bardzo popularne ze względu na swoją prostotę oraz dlatego, że spora część innych modeli decyzyjnych da się przekształcić do postaci zadania PL. Charakteryzuje się ono tym, że zarówno funkcja celu oraz zbiór decyzji dopuszczalnych opisany przy pomocy równań i nierówności mają postać liniową. Ogólna postać takiego zadania jest następująca: f(x) = c x + c x c n x n max / min a x + a x a n x n b funkcja celu a k x + a k x a kn x n = b k ograniczenia a m x + a m x a mn x n b m x 0, x 0,..., x n 0 warunki brzegowe Zmienne x j (j =,,..., n) są to właśnie zmienne decyzyjne. Dla uproszczenia zakładać będziemy, że wszystkie prawe strony ograniczeń są nieujemne (czyli bj 0 dla j =,,..., m). Wypadkowa ograniczeń i warunków brzegowych tworzy zbiór rozwiązań dopuszczalnych. Poszukiwanie rozwiązania wiąże się z następującymi twierdzeniami: Twierdzenie. Zbiór rozwiązań dopuszczalnych zadania PL zbiorem domkniętym, wypukłym, o skończonej liczbie wierzchołków. Twierdzenie. Funkcja liniowa f(x) określona na domkniętym zbiorze wypukłym X, o skończonej liczbie wierzchołków osiąga swoją wartość największą (najmniejszą) w wierzchołku tego zbioru. Jeżeli wartość taką osiąga w więcej niż jednym wierzchołku, to osiąga ją również w każdym punkcie będącym wypukłą kombinacją takich wierzchołków. z 0

3 . Metoda graficzna Jeżeli problem da się opisać przy pomocy tylko dwóch zmiennych decyzyjnych (x, x ) wówczas da się go rozwiązać graficznie. Metoda graficzna ma właściwie walory wyłącznie dydaktyczne, ponieważ dobrze ilustruje sposób poszukiwania rozwiązania optymalnego na zbiorze rozwiązań dopuszczalnych. Zbiór ten wyznacza się w prostokątnym układzie współrzędnych (ograniczonym do pierwszej ćwiartki ze względu na warunki brzegowe) wyznaczając część wspólną nierówności i równań tworzących ograniczenia zadania. W przypadku kiedy ograniczenia podane są wyłącznie jako nierówności, zbiór rozwiązań dopuszczalnych jest wielobokiem wypukłym. Poszukiwanie optymalnego rozwiązania można przeprowadzić na dwa sposoby:. Wyznaczyć współrzędne wszystkich wierzchołków zbioru i podstawić je do funkcji celu;. Wyznaczyć rozwiązanie w oparciu o gradient funkcji celu. Pierwsze z podejść przestaje być wygodne gdy liczba wierzchołków zbioru rozwiązań dopuszczalnych jest duża. Dlatego omówiony zostanie drugi sposób. Gradientem funkcji celu jest wektor zawierający pochodne f(x) względem zmiennych decyzyjnych. Tworzą go więc współczynniki funkcji celu. Gradient pokazuje kierunek najszybszego wzrostu wartości f(x) niezależny od wartości zmiennych decyzyjnych. Jeżeli współrzędne gradientu są zbyt małe lub zbyt duże, aby wygodnie umieścić go na rysunku, można pomnożyć gradient przez odpowiednio dobraną stałą. Gradient nanosi się na wykres, zaczepiając go w początku układu współrzędnych. Następnie wykreśla się prostą prostopadłą do gradientu (tzw. warstwicę) tak, aby przechodziła przez zbiór X. Poszukując wartości największej f(x) przesuwamy warstwicę równolegle w kierunku jaki pokazuje gradient (czyli oddalając się od początku układu współrzędnych) tak długo dopóki nie dotrzemy do ostatniego punktu (wierzchołka) przed opuszczenie zbioru X. Jest to właśnie punkt optymalny. Poszukując wartości najmniejszej postępuje się podobnie, z tą różnicą, że warstwicę przesuwamy w kierunku przeciwnym. Przykład zastosowania metody graficznej Mały zakład wytwarza dwa produkty A i B, których ceny zbytu wynoszą odpowiednio zł/szt. oraz zł/szt. Należy opracować dzienny plan produkcji zakładu tak, aby wartość produkcji liczona w cenach zbytu była możliwie największa. Produkcja jest limitowana głównie przez dwa czynniki: dostępny czas pracy maszyn i surowiec podstawowy. Dzienny limit czasu pracy maszyn wynosi 00 minut. Umowy z producentem surowca podstawowego wskazują, że każdego dnia zakład będzie miał do dyspozycji 0 kg tego surowca (bezpieczny poziom). Zakład jest zainteresowany takim programem dziennej produkcji, przy którym osiągał będzie zysk minimum 00 zł. Sztuka wyrobu A wymaga minuty czasu pracy maszyn, natomiast sztuka wyrobu B minut. Na wyprodukowanie sztuki wyrobu A zużywa się kg surowca specjalnego. Również sztuka wyrobu B wymaga kg tego surowca. Jednostkowy zysk ze sztuki wyrobu A wynosi zł/szt., a ze sztuki wyrobu B zł/szt. Model decyzyjny prezentuje się następująco: Zmienne decyzyjne: x dzienna produkcja wyrobu A [szt.] x dzienna produkcja wyrobu B [szt.] Przykład pochodzi z: D. Miszczyńska, M. Miszczyński Wybrane metody badań operacyjnych, Wyższa Szkoła Ekonomiczno-Humanistyczna w Skierniewicach, Skierniewice 00. z 0

4 Funkcja celu (wartość produkcji w cenach zbytu): w(x, x ) = w(x) = x + x max [zł] Ograniczenia: maszyny: x + x 00 [minuta] surowiec: x + x 0 [kg] min. zysk: x + x 00 [zł] Warunki brzegowe: x 0, x 0 [szt.] Rysunek prezentuje zbiór rozwiązań dopuszczalnych. x 00 zysk surowiec maszyny x Rysunek : Zbiór rozwiązań dopuszczalnych dla przykładu Na rysunku zaznaczamy gradient funkcji, którym jest następujący wektor: [ ] f(x) = Ponieważ nie byłby on zbyt widoczny przy obecnej skali wykresu, jego składowe zostaną pomnożone przez 0. Na rysunku znajduje się ilustracja poszukiwania optymalnego rozwiązania. Poszukujemy największej wartości funkcji celu, warstwica przesuwana jest zgodnie ze zwrotem gradientu. Ostatni punkt, w którym przecina zbiór rozwiązań dopuszczalnych znajduje się w punkcie (0, 00). Otrzymujemy więc następujące rozwiązanie: należy wyprodukować 0 sztuk wyrobu A i 00 sztuk wyrobu B, zapewni to zysk maksymalny w wysokości: *0+*00=00 zł. Powyższe rozwiązanie stanowi konkretny wierzchołek zbioru X. Dlatego nazywamy je pojedynczym, skończonym rozwiązaniem optymalnym. Oprócz niego mogą istnieć inne rodzaje rozwiązań, które zilustrują następne rysunki. z 0

5 x G(00,00) rozwiązanie optymalne x Rysunek : Gradient i rozwiązanie przykładu Zadanie sprzeczne: Zadanie jest sprzeczne, kiedy nie uda się wyznaczyć części wspólnej ograniczeń, czyli zbioru rozwiązań dopuszczalnych. x x Rysunek : Zadanie sprzeczne Brak skończonego rozwiązania optymalnego: W sytuacji zaprezentowanej na powyższym rysunku nie jest możliwe znalezienie wartości największej funkcji celu. Zbiór rozwiązań dopuszczalnych nie jest bowiem w żaden sposób ograniczony w jego górnej części i nie będzie możliwe znalezienie punktu, w którym warstwica przechodzi przez tez zbiór po raz ostatni. Więcej niż jedno skończone rozwiązanie optymalne: W ostatniej z omawianych sytuacji warstwica (dla przypadku maksymalizacji funkcji celu) pokrywa się z całym bokiem wieloboku utworzonego z ograniczeń zadania. Wartość funkcji celu w różnych punktach A i B oraz na odcinku między nimi będzie taka sama. Choć wyznaczenie wartości najmniejszej jest oczywiście możliwe. z 0

6 x G x Rysunek : Brak skończonego rozwiązania optymalnego x G x Rysunek : Więcej niż jedno skończone rozwiązanie optymalne. Algorytm simplex W sytuacji, kiedy liczba zmiennych decyzyjnych jest większa niż lub duża liczba ograniczeń utrudnia dokładne wyznaczenie zbioru rozwiązań dopuszczalnych, do poszukiwania optymalnej wartości funkcji celu używa się algorytmu simplex. Polega on na przebiegającym w określony sposób przeglądaniu rozwiązań bazowych (wierzchołków zbioru X) w celu znalezienia punktu, w którym funkcja celu osiąga wartość największą lub najmniejszą. Warto tu zwrócić uwagę na to, że metoda nie potrzebuje sprawdzać wszystkich rozwiązań wierzchołkowych. Algorytm wędruje od bieżącego do sąsiedniego wierzchołka, w którym wartość funkcji celu jest nie gorsza niż w poprzednim rozwiązaniu. Poniżej znalazł się schemat postępowania w tej metodzie: Przykład zastosowania algorytmu simplex Firma produkuje trzy wyroby: A, B i C, które wymagają obróbki na dwóch maszynach M i M. Limity czasu pracy maszyn wynoszą odpowiednio: M 00 godzin, M 0 godzin. Czas pracy M potrzebny do wytworzenia jednej sztuki wyrobu A wynosi minuty, wyrobu B minuty, wyrobu C minuty. Odpowiednio dla maszyny M mamy: A minuty, B i C po minucie. Ceny zbytu za sztukę wyrobu wynoszą: A zł, B zł, C zł. Należy ustalić z 0

7 () Wybierz początkową bazę układu równań () Wyznacz rozwiązanie bazowe () Dokonaj wymiany wektorów w bazie () Wybierz wektor opuszczający bazę Tak () Czy aktualne rozwiązanie jest optymalne? Nie Stop () Wybierz wektor wchodzący do bazy Rysunek : Schemat postępowania w algorytmie simplex plan produkcji, który zapewni maksymalny utarg ze sprzedaży wyrobów, przy założeniu, że cała produkcja zostanie sprzedana. Model decyzyjny: x wielkość produkcji wyrobu A [szt.] x wielkość produkcji wyrobu B [szt.] x wielkość produkcji wyrobu C [szt.] Z = x + x + x max M: x + x + x 000 [min.] M: x + x + x 9000 [min.] x 0, x 0, x 0 Choć powyższy model jest poprawny pod względem formalnym, to algorytm simplex wymaga, aby układ nierówności tworzących ograniczenia sprowadzić do postaci równań. Robi się to wg następujących reguł: [szt.] jeżeli k-te ograniczenie jest typu wówczas wprowadzamy do niego dodatnią zmienną swobodną s k ; z 0

8 jeżeli k-te ograniczenie jest typu wówczas wprowadzamy do niego ujemną zmienną swobodną s k oraz dodatnią zmienną sztuczną t k ; jeżeli k-te ograniczenie jest typu = wówczas wprowadzamy do niego dodatnią zmienną sztuczną t k. Zmienne swobodne stoją w funkcji celu z parametrem 0. Zmienne sztuczne w funkcji celu stoją z parametrem M (gdy funkcja jest maksymalizowana) lub +M (gdy funkcja celu jest minimalizowana), gdzie M jest pewną, bardzo dużą liczbą dodatnią. Model, w którym ograniczenia z nierówności zamieniono na równania nazywamy postacią kanoniczną. W naszym przykładzie wygląda ona następująco: Z = x + x + x + 0s + 0s max x + x + x + s = 000 x + x + x + s = 9000 x 0, x 0, x 0, s 0, s 0 Postępowanie w metodzie simplex przeprowadza się w specjalnych tablicach. Pierwszą z nich tworzymy na podstawie postaci kanonicznej modelu. Kolejne powstają wskutek stosownych przekształceń. Dokonamy teraz przedstawienia całości obliczeń, które zostaną następnie omówione. Nr Zmienne 0 0 Wartości Ilorazy iteracji c B bazowe x x x s s zmiennych wyjścia x B bazowych 0 s * 0 s j = c j z j x / / / s / / 0 / 000 0* j = c j z j / / 0 / x 0 / / / 00 x / 0 / / 0 j = c j z j 0 / 0 / / 00 () Wybór początkowej bazy Początkową bazą stają się wektory stojące przy zmiennych swobodnych i/lub sztucznych. Tworzą one macierz jednostkową, której wymiar równy jest liczbie ograniczeń. Tak więc w naszym przykładzie bazę początkową tworzą wektory parametrów stojących przy zmiennych s i s w iteracji : [ ] B pocz 0 = 0 Taką samą postać ma w tej chwili, kluczowa w późniejszych rozważaniach, macierz B. () Wyznaczenie rozwiązania bazowego Rozwiązanie w pierwszej tablicy simpleksowej tworzą po prostu przepisane prawe strony ograniczeń. W kolejnych rozwiązaniach jest ono związane z aktualną bazą. Wartość funkcji 8 z 0

9 celu tworzy się w oparciu o aktualny wektor c B oraz wektor wartości rozwiązań bazowych. Prześledźmy proces jej obliczania na podstawie iteracji nr : f(x B ) = (c B ) T x B = [ 0 ] [ ] 000 = = () Ocena optymalności aktualnego rozwiązania Sprawdzenia optymalności rozwiązania dokonuje się w oparciu o tzw. wskaźniki optymalności. Oblicza się je dla wszystkich zmiennych znajdujących się w tablicy simpleksowej, przy czym dla zmiennych bazowych zawsze równają się one zero. Formuła ich wyznaczania jest następująca: j = c j z j = c j m c B i p ij gdzie: c j współczynnik w funkcji celu przy j -tej zmiennej, dla której obliczamy wskaźnik optymalności; c B i współczynnik w funkcji celu przy i-tej zmiennej bazowej; p ij odpowiednia kolumna centralnej części tablicy simpleksowej. Wskaźnik optymalności dla zmiennej x w pierwszej iteracji obliczono więc następująco: i= = (0 + 0 ) = zaś dla zmiennej x w drugiej iteracji (gdzie była zmienną bazową): = ( + 0 0) = 0 Wartość j dla zmiennej niebazowej można traktować jako różnicę między jednostkowym efektem a jednostkowym nakładem potrzebnym, aby dana zmienna miała zostać zmienną bazową. Na tej podstawie zbudowano kryterium optymalności bieżącego rozwiązania. Rozwiązanie uznajemy za optymalne gdy: { j=,,...,n j 0, gdy f(x) max j=,,...,n j 0, gdy f(x) min Innymi słowy, rozwiązanie (dla przypadku maksymalizacji funkcji celu) uznajemy za optymalne kiedy wszystkie wskaźniki optymalności są niedodatnie lub nieujemne (dla przypadku minimalizacji funkcji celu). Jak nietrudno zauważyć, trzecia iteracja jest ostatnią, ponieważ wszystkie wskaźniki optymalności przyjęły wartości mniejsze lub równe zero () Wybór wektora wchodzącego do bazy Jeżeli aktualne rozwiązanie bazowe nie spełnia warunku optymalności, konieczna staje się wymiana wektorów bazowych. Najpierw wybierany jest wektor (towarzyszący odpowiedniej zmiennej), który znajdzie się w przyszłej bazie. Jako kryterium służą ponownie wskaźniki optymalności i ponownie występuje rozdział spowodowany kierunkiem optymalizacji. Do bazy wprowadzamy k-ty wektor taki, że: { k = min j>0 ( j), gdy f(x) max k = max j<0 ( j), gdy f(x) min Tak więc, jeśli funkcja celu jest maksymalizowana, wybieramy zmienną, dla której wskaźnik optymalności okazał się najwyższy spośród tych, które przyjęły wartość dodatnią. W iteracji najwyższą wartość (czyli ) posiadał wskaźnik optymalności dla zmiennej x. Tym samym, odpowiadająca mu zmienna stanie się zmienną bazową. 9 z 0

10 () Wybór wektora opuszczającego bazę Ponieważ bazę tworzy więcej niż jedna zmienna, należy zdecydować, która z nich nie znajdzie się w nowej bazie. Dla wektora wybranego w poprzednim kroku obliczamy tzw. ilorazy wyjścia. Należy tu zwrócić uwagę, że sposób ich wyliczania jest niezależny od kierunku kryterium. Z bazy usuwamy l-ty wektor taki, że: x B l p lk = min { x B } l p lk > 0 p lk Zauważmy, że ilorazów wyjścia nie liczymy jeśli przyjdzie nam podzielić przez 0 lub ujemną składową. W przykładzie, dla iteracji pierwszej ilorazy wyjścia dla s i s oraz kryterium wyjścia są następujące: ( 000 min, 9000 ) = min(000, 9000) = 000 Tak więc usuwamy z bazy zmienną s wraz z towarzyszącym jej wektorem. W przypadku uzyskania kilku identycznych minimalnych ilorazów wyjścia, najlepiej jest wybrać ten o największym dzielniku. Jeśli i to nie wystarczy, można wybrać pozycję o niższym i. () Wymiana wektorów w bazie Wymiany wektorów w bazie dokonuje się przy pomocy tzw. przekształceń elementarnych, które nie znajdują się w obszarze zainteresowań niniejszych zajęć, dlatego nie zostaną tutaj omówione. Wymiana wektorów kończy jedną, pełną iterację w algorytmie simplex. Po zakończeniu postępowania można przejść do interpretacji wyników. Prezentowany przykład zakończył się po trzech przebiegach, dając następujący wektor optymalnych wartości zmiennych: x opt 0 x opt x opt = x opt 0 = 00 s opt s opt 0 0, f max = 00 Należy zatem wyprodukować 0 sztuk wyrobu A i 00 sztuk wyrobu C (nie należy produkować wyrobu B), co zapewni zysk maksymalny w wysokości 00 zł. Limity czasu pracy maszyn zostaną wykorzystane w całości. W tym miejscu warto zwrócić uwagę na interpretację zmiennych swobodnych. Ich niezerowa wartość w rozwiązaniu optymalnym świadczy o: niewykorzystaniu występującego limitu w przypadku gdy ograniczenie jest typu ; przekroczeniu zakładanego poziomu w przypadku gdy ograniczenie jest typu. Jedno, skończone rozwiązanie optymalne jest jednym z grupy potencjalnych wyników jakimi może się skończyć postępowanie w algorytmie simplex. Wyróżnimy jeszcze następujące: zadanie jest sprzeczne, kiedy w rozwiązaniu optymalnym występuje zmienna sztuczna z niezerową wartością; zadanie posiada więcej niż jedno skończone rozwiązanie optymalne, kiedy liczba wskaźników optymalności równych zero jest większa od liczby zmiennych bazowych; zadanie nie posiada skończonego rozwiązania optymalnego, kiedy nie jest możliwe wyznaczenie ilorazów wyjścia, gdyż wszystkie składowe wektora wchodzącego do bazy są niedodatnie. 0 z 0

11 . Wyceny dualne Podanie optymalnych wartości zmiennych decyzyjnych i wartości funkcji celu nie wyczerpuje możliwości analizy wyników. Jedną z nich są tzw. wyceny (zmienne) dualne. Służą one do określania reakcji optymalnej wartości funkcji celu na zmiany wyrazów wolnych ograniczeń, bez konieczności ponownego rozwiązywania zadania. Zadanie dualne jest ściśle powiązane z podstawowym zadaniem, zwanym odtąd prymalnym (pierwotnym). Mówiąc prościej, powstaje ono z przekształcenia zadania pierwotnego. Do czekających nas analiz nie jest konieczna znajomość zasad budowy zadania dualnego. Wystarczy nam wiedza, że liczba zmiennych dualnych (oznaczymy je jako y i ) jest równa liczbie ograniczeń, czyli każdemu z ograniczeń odpowiada jedna zmienna dualna. Interesować nas też będzie konkretne rozwiązanie zadania dualnego, które otrzymamy na podstawie rozwiązania zadania pierwotnego. Twierdzenie. Dla danej pary zadanie prymalne-dualne prawdziwe jest tylko jedno z poniższych twierdzeń:. Jeżeli jedno z pary zadań posiada rozwiązanie optymalne, to posiada je również drugie z nich, przy czym optymalne wartości funkcji celu są sobie równe.. Jeżeli jedno z pary zadań nie posiada skończonego rozwiązania optymalnego, to drugie z nich jest sprzeczne. Twierdzenie. Jeżeli istnieje skończone rozwiązanie optymalne zadania pierwotnego względem bazy B, to rozwiązanie optymalne zadania dualnego dane jest wzorem: y opt = (c B ) T B Wykorzystując drugie twierdzenie wyznaczymy optymalne wartości zmiennych dualnych w rozpatrywanym przykładzie. Najpierw jednak potrzebujemy wiedzy o tym jak wyznaczyć B. W tym celu przypomnijmy, że macierz B pocz, którą znamy z pierwszej tablicy simplex, powstawała jako macierz jednostkowa utworzona ze zmiennych s i s. W ostatniej tablicy simpleksowej odszukujemy wektory towarzyszące zmiennym, które tworzyły B pocz. Stąd wiemy, że: [ B = / ] / / / Obliczamy teraz wyceny dualne (wektor (c B ) T = [ ] również pochodzi z ostatniej tablicy simpleksowej): [ y opt y opt ] [ ] [ / = ] / / = [, 0, ] / Ogólna interpretacja zmiennej dualnej mówi, że: jeżeli w i-tym ograniczeniu wyraz wolny b i wzrośnie o jednostkę, to optymalna wartość funkcji celu wzrośnie (spadnie) o y opt i jednostek. Zinterpretujmy wycenę dualną y opt dla ograniczenia czasu pracy maszyny M: Jeżeli limit czasu pracy maszyny M wzrośnie o minutę, to zysk optymalny wzrośnie o, zł. Zwróćmy uwagę, że miano powyższej zmiennej dualnej jest następujące: [zł zysku/ minutę]. Twierdzenie odwrotne nie jest prawdziwe, ponieważ gdy jedno zadanie jest sprzeczne, drugie może być także sprzeczne lub może nie posiadać skończonego rozwiązania optymalnego. z 0

12 . Zadanie transportowe Jednym z możliwych typów problemów z jakimi mamy do czynienia w ramach programowania liniowego jest problem jak najtańszego przewozu dobra pomiędzy punktami nadania (dostawcy) a punktami odbioru (odbiorcy). Należy podkreślić, że dobro jest jednorodne, a więc nie ma (znanego np. z metody simplex) podziału na poszczególne produkty. Wprowadźmy następujące oznaczenia: x ij ilość dobra przewożonego na trasie między i-tym nadawcą a j -tym odbiorcą; a i zasób dobra w i-tym punkcie nadania; b j zapotrzebowanie na dobro w j -tym punkcie odbioru; c ij jednostkowy koszt przewozu na trasie między i-tym nadawcą a j -tym odbiorcą; i =,..., m j =,..., n. Łączną ilość dobra dostępną we wszystkich punktach nadania przywykło się określać mianem podaży zaś łączną ilość dobra, na które jest zapotrzebowanie we wszystkich punktach odbioru nazwiemy popytem. Klasyczne zadanie transportowe podlega następującym założeniom:. przewożone dobro jest jednorodne;. podaż jest nie mniejsza niż popyt;. przepustowości tras są nieograniczone. Klasyczne zadanie transportowe może wystąpić w jednej z dwóch odmian:. zadanie zamknięte (zbilansowane), w których podaż jest równa popytowi;. zadania otwarte (niezbilansowane), w których podaż jest większa niż popyt. Każde zadanie otwarte da się przekształcić do zadania zamkniętego poprzez wprowadzenie dodatkowego, fikcyjnego odbiorcy (zwanego magazynem). Zapotrzebowanie tego odbiorcy jest równe różnicy między podażą a popytem. Koszt przewiezienia do magazynu traktujemy jako znikomo mały w porównaniu z kosztami przewozu między nadawcami a odbiorcami i dlatego przyjmujemy, że jest równy zero. W klasycznym algorytmie transportowym rozwiązuje się następujący problem optymalizacyjny: należy znaleźć taki plan przewozu dobra, aby łączny koszt transportu ze wszystkich punktów nadania do wszystkich punktów odbioru był jak najmniejszy. Każdy nadawca wysłać ma całą posiadaną masę dobra (w zadaniach otwartych część trafi do magazynu), zaś zapotrzebowanie każdego z odbiorców ma zostać zaspokojone w całości. Model decyzyjny (dla zadania zamkniętego) można zapisać następująco: K(x) = n i= j= m c ij x ij min n = a i, i =,..., m j= m = b j, j =,..., n i= x ij 0 Twierdzenie. Jeżeli a i oraz b j są liczbami nieujemnymi to zadanie transportowe zawsze ma rozwiązanie. Zakładamy, że w gospodarce rynkowej podaż jest na tyle elastyczna, że natychmiast dostosowuje się do wzrostu popytu. z 0

13 Twierdzenie. Jeżeli a i oraz b j są liczbami całkowitymi to każde dopuszczalne rozwiązanie bazowe zadania transportowego również przyjmuje wartości całkowite. Z głębszych analiz zadania transportowego wypływa bardzo ważny wniosek: optymalny (jednoznaczny) program przewozowy wykorzystuje nie więcej niż m+n- spośród m n tras przewozowych. Przykładowe zadanie transportowe Trzy gospodarstwa rolne (oznaczone przez D, D i D) dostarczają zboże do trzech punktów skupu (oznaczonych O, O, O) Agencji Rynku Rolnego, ponosząc przy tym koszty transportu. Ilość zboża jakim dysponują gospodarstwa (w tonach), pojemność spichlerzy Agencji (w tonach) a także jednostkowe koszty transportu (zł/t) podaje poniższa tabela. Należy opracować taki plan przewiezienia zboża, aby łączny koszt przewozu był jak najmniejszy. Skup Skup Skup Zasoby u dostawców Gospod. 8 0 Gospod. 0 Gospod. 90 Zapotrzebowanie odbiorców W powyższym przykładzie mamy więc punkty nadania i punkty odbioru. Daje to 9 możliwych tras, którymi zboże może zostać przewiezione między poszczególnymi gospodarstwami a punktami skupu. Tym niemniej do znalezienia rozwiązania wykorzystamy nie więcej niż +- = tras. Zwróćmy również uwagę, że podaż jest równa popytowi (wynosi 0 t) czyli mamy do czynienia z zadaniem zamkniętym. Wektor podaży a, popytu b oraz macierz kosztów jednostkowych C są następujące: 0 a = 0, b = [ ] 8, C = 90 Model decyzyjny tego zadania zaprezentowano poniżej: x +8x +x +x +x +x +x +x +x min x +x +x = 0 x +x +x = 0 x +x +x = 90 x +x +x = 0 x +x +x = 0 x +x +x = 0 x 0, x 0, x 0, x 0, x 0, x 0, x 0, x 0, x 0 Do rozwiązania powyższego zadania można użyć algorytmu simplex. Jednak duże rozmiary modelu, które wzrosną jeszcze po sprowadzeniu do postaci kanonicznej. powodują, że nie jest to podejście zbyt efektywne. Dlatego właśnie opracowano specjalny algorytm numeryczny służący rozwiązywaniu takich zadań. Wprowadźmy oznaczenia: u i zmienna dualna dla i-tego dostawcy; v j zmienna dualna dla j -tego odbiorcy. Z każdym z ograniczeń związana jest bowiem jedna zmienna sztuczna z 0

14 Wskaźnik optymalności dla algorytmu transportowego jest równy: ij = c ij (u i + v j ) Podobnie jak to miało miejsce w przypadku algorytmu simplex o minimalizowanej funkcji celu, plan przewozowy uznajemy za optymalny, kiedy wskaźniki optymalności dla wszystkich tras spełnią warunek: ij 0. Aby jednak wyznaczyć wskaźniki optymalności, należy poznać wszystkie wartości u i oraz v j. Wykorzystuje się w tym celu fakt, że dla zmiennych bazowych ij są równe zero. W metodzie transportowej zmiennymi bazowym są trasy, na których dokonuje się przewozu, których liczba wynosi m + n. Konstruuje się na tej podstawie układ równań, w którym u i oraz v j są niewiadomymi. Ponieważ liczba niewiadomych jest o większa od liczby równań, należy przyjąć wartość zerową dla jednej z nich. Zazwyczaj przyjmuje się u = 0. Postępowanie w algorytmie transportowym obrazuje następujący schemat: nie gorsza niż w poprzednim rozwiązaniu. Na rysunku znalazł się schemat postępowania w tej metodzie. () Ustal początkowy plan przewozu () Skoryguj program przewozowy () Określ maksymalny przewóz na trasie ustalonej w () Tak () Czy aktualny plan przewozu jest optymalny? Nie () Utwórz cykl korygujący Stop () Wybierz trasę dającą największą obniżkę kosztów Rysunek : Schemat postępowania w algorytmie transportowym Obliczenia przeprowadzać będziemy równolegle w dwóch tabelach. W jednej znajdzie się aktualny plan przewozowy, a w drugiej sprawdzenie jego optymalności. () Ustalenie początkowego planu przewozowego Każdy plan przewozowy, wliczając w to również plan początkowy, zawierać będzie nie więcej niż +-= tras. W metodzie transportowej nie ma jednoznacznego (jak w algorytmie simplex) sposobu określenia pierwszego rozwiązania. Spośród wielu dostępnych, skupimy się ma metodzie kąta północno-zachodniego. Jest to najprostsza z metod opierająca się wyłącznie na popycie i podaży u poszczególnych odbiorców i dostawców. Jej nazwa wzięła się stąd, że pierwszy przewóz ustalany jest zawsze na z 0

15 trasie od pierwszego dostawcy do pierwszego odbiorcy. Wprowadzamy tam mniejszą z dwóch wartości a i b. W naszym przykładzie pierwszy krok w tej metodzie znalazł się w tabeli. Tabela : Początek postępowania w metodzie kąta północno-zachodniego O O O podaż D 0 0 D 0 D 90 popyt Dostawca (D) przewiezie 0 t zboża do odbiorcy, przy czym zapotrzebowanie tego odbiorcy zostaje zaspokojone w całości. Jednakże D pozostało do rozdysponowania jeszcze 0 t dobra. Dostanie je odbiorca O, który potrzebuje 0 t (patrz tabela ). Brakującą mu do 0 t ilość dostarczą: D (0 t) i D (0 t). Postępując w ten sposób otrzymamy następującą tabelę. Jak widać rozwieziona została cała dostępna ilość zboża ( =0t), przy czym Tabela : Rozdysponowanie podaży dostawcy D O O O podaż D D 0 D 90 popyt Tabela : Pierwszy plan przewozowy, uzyskany metodą kąta płn-zach O O O podaż D D 0 0 D popyt wykorzystano tras. Łączny koszt przewozu wynosi: = 0zł () Sprawdzenie optymalności rozwiązania Rozwiązanie uznajemy za optymalne jeżeli wszystkie wskaźniki optymalności są nieujemne. Przypomnijmy, że wskaźniki te dla zmiennych bazowych są równe zero. Budowa tabeli zawierającej owe wskaźniki (tzw. tabeli wskaźników) wygląda następująco: pole odpowiadające niezerowemu przewozowi zawiera jednostkowy koszt przewozu; pole odpowiadające trasie niebazowej zawiera dwie liczby: sumę ui i vj oraz wskaźnik optymalności. Rozpoczynamy od przepisania odpowiednich elementów macierzy C oraz przyjęcia, że u = 0: Wartości u i oraz v j znajdujemy w następujący sposób: suma wartości obu zmiennych dualnych musi dać koszt c ij znajdujący się już w tabeli dla tras stanowiących bieżące rozwiązanie. Stąd v obliczymy jak poniżej: v + u = v + 0 = v = z 0

16 Tabela : Pierwszy krok tworzenia tabeli wskaźników v v v wartości u i u 8 0 u u wartości v j Podobnie wyznaczymy v : v + u = 8 v + 0 = 8 v = 8 Zauważmy, że kolejność obliczania zmiennych dualnych nie jest dowolna, lecz wynika z wcześniej wyznaczonych wartości. Dlatego na przykład dopiero znając v możemy poznać u. Kompletna tabela wskaźników została zaprezentowana poniżej: Tabela : Końcowa postać tabeli wskaźników v v v wartości u i u u u - wartości v j 8 Lewa górna część pola zawiera sumę zmiennych dualnych z odpowiedniego wiersza i kolumny, prawa dolna wskaźnik optymalności. Bieżącego planu przewozowego nie można uznać za optymalny ponieważ wszystkie wskaźniki nie są nieujemne. Konkretnie, dla trasy (,) otrzymaliśmy wartość równą -. () Wybór trasy dającej największą obniżkę kosztów Spośród tras niebazowych, wyłącznie tych posiadających ujemne wskaźniki optymalności, wybieramy tę, dla której wskaźnik osiągnął najniższą wartość. W naszym przypadku jest tylko jeden możliwy wybór trasa (,). () Cykl korygujący W kolejnym kroku postępowania budujemy cykl korygujący. W polu wytypowanym w poprzednim kroku stawiamy znak + traktując je odtąd jako bazowe. Następnie wykreślamy te wiersze i kolumny, które zawierają pojedyncze przewozy. Pamiętajmy, że trasa oznaczona plusem traktowana jest tak jakby przewożono tą trasą część dobra. Może się poza tym zdarzyć, że po wykreśleniu danego wiersza (kolumny) kolejna kolumna (wiersz) zawierać będzie pojedynczy przewóz. Wówczas należy ową kolumnę czy też wiersz również wykreślić. W naszym przykładzie wykreślamy: kolumnę O i wiersz D. z 0

17 Tabela : Wybór trasy w cyklu korygującym O O O podaż D D 0 0 D popyt Nieskreślonym przewozom przypisujemy znak + lub tak, aby wszystkie dopisane w ten sposób znaki znosiły się nawzajem. Otrzymamy: Tabela : Wybór trasy w cyklu korygującym O O podaż D D popyt () Określenie maksymalnego przewozu na trasie wybranej w kroku () Wybrany przewóz ma być z jednej strony jak największy, z drugiej zaś nie można dopuścić do pojawienia się w tabeli wartości ujemnych, gdyż naruszałoby to nałożone wcześniej warunki brzegowe. Dlatego ograniczymy się tylko do tras oznaczonych minusem i wybierzemy najniższy z dostępnych tam przewozów. W naszym przykładzie: k = min(0, 0) = 0. Łączny koszt przewozu zmniejszy się o wartość: i wyniesie: 0-0=00 zł k = 0 ( ) = 0 () Korekta planu przewozowego Cykl korygujący przebiega wyłącznie przez pola oznaczone wcześniej plusem lub minusem. Te pierwsze zostają powiększone o wartość k, zaś te drugie zmniejsza się o tę wielkość. Oto nowy plan przewozowy o niższej wartości kosztu całkowitego oraz towarzysząca mu tabela wskaźników: Tabela 8: Drugi plan przewozowy wraz z cyklem korygującym O O O podaż D D K =00 D popyt Jak widać, powyższy plan przewozowy nie okazał się jeszcze optymalny (ujemna wartość wskaźnika optymalności równa -). Dlatego należy poprawić rozwiązanie, wprowadzając przewóz na trasie (,). Zwróćmy uwagę, że w tabeli 8 nie można dokonać skreśleń wierszy i kolumn z pojedynczymi przewozami. Nowy koszt przewozu zmniejszy się o 0*(-)= -0. Kolejna iteracja dała optymalny plan przewozowy, który można zapisać: X opt = z 0

18 Tabela 9: Tabela wskaźników dla iteracji v v v wartości u i u 0 u u - wartości v j Tabela 0: Optymalny plan przewozowy O O O podaż D D 0 0 K min = 90 D popyt Tabela : Tabela wskaźników dla ostatniej iteracji v v v wartości u i u 0 u - u - wartości v j UWAGA! Jeżeli w tabeli wskaźników dla rozwiązania optymalnego, wystąpią wskaźniki optymalności równe zero dla zmiennych niebazowych, oznacza to, że istnieją jeszcze inne, alternatywne plany przewozu o tej samej, minimalnej wartości łącznego kosztu.. Wybrane modyfikacje klasycznego zadania transportowego Założenia występujące w klasycznym wariancie zadania transportowego mogą być uchylane. Przedstawimy tutaj dwa przypadki:. Całkowitą blokadę trasy (tras);. Częściową blokadę trasy (tras). Całkowita blokada trasy Załóżmy, że na trasie z pierwszego gospodarstwa do pierwszego punktu skupu pojawiła się blokada rolników niezadowolonych z cen skupu. Nie jest możliwe przewiezienie zboża na tej trasie, ale zapotrzebowanie punktu skupu musi zostać spełnione, zaś gospodarstwo musi wysłać swoje zboże. Całkowita blokada na jednej lub większej ilości tras oznacza, że przewóz tam realizowany jest całkowicie nieopłacalny. Należy o tym poinformować algorytm. Robi się to w ten sposób, że 8 z 0

19 na zablokowanej trasie wprowadza się bardzo wysoką (w porównaniu z pozostałymi, niezablokowanymi trasami) wartość jednostkowego kosztu przewozu. Wprowadzamy więc na interesującej nas trasie koszt równy przykładowo 0 zł/t. 0 8 C = Od tego miejsca zadanie rozwiązuje się tak jak klasyczne zadanie transportowe. Częściowa blokada trasy Załóżmy, że na trasie z trzeciego gospodarstwa do drugiego punktu skupu odbywa się remont drogi. Z tego powodu można nią przewieźć co najwyżej 0 t zboża. Powyższy warunek różni się od poprzedniego przypadku, ponieważ część dobra może zostać daną trasą przewieziona po normalnie obowiązujących kosztach. Reszta musi zostać rozwieziona innymi trasami. Problem ten można rozwiązać dwojako:. rozszerzyć na czas rozwiązywania liczbę dostawców;. rozszerzyć na czas rozwiązywania liczbę odbiorców. W pierwszym przypadku zmieniamy macierz kosztów C oraz wektor podaży a: 0 8 a = 0 0, C = 0 0 W drugim zmieniamy macierz C i wektor popytu b: b = [ ] 8 8, C = 0 Dla tej części dobra, która nie zmieści się na częściowo zablokowanej trasie, wprowadzana jest blokada całkowita. Należy jednak pamiętać, że wiersze i w pierwszym podejściu dotyczą jednego dostawcy, zaś kolumny i w drugim podejściu dotyczą jednego odbiorcy. Zadanie rozwiązuje się tak, jak wariant klasyczny. Dopiero podając odpowiedź scalamy uprzednio rozdzielone wiersze i kolumny, wracając do poprzednich rozmiarów zadania.. Minimalizacja pustych przebiegów W zadaniu tego rodzaju chodzi o minimalizację drogi pokonywanej przez środki transportu bez ładunku (tzw. pustych przebiegów). Środki te mają później posłużyć do rozwiezienia określonego towaru. Założenia zadania są następujące:. Istnieje N punktów, między którymi odbywa się wymiana towarów.. Punkty te tworzą układ zamknięty.. Każdy z nich może być zarówno dostawcą jak i odbiorcą. W literaturze można spotkać zalecenie, aby był on przynajmniej trzykrotnie wyższy niż najwyższy koszt występujący w macierzy. 9 z 0

20 . Towary przywozi się i wywozi tym samym środkiem transportu.. Znane są odległości między punktami.. Znany jest przewóz masy towarowej pomiędzy punktami (a ij ) wyrażony liczbą pełnych środków transportu (samochodów, wagonów itp.). Oprócz powyższych założeń dla każdego punktu jesteśmy w stanie określić liczbę środków transportu niezbędną do wywiezienia masy towarowej: w i = także liczbę środków transportu niezbędną do przywiezienia masy towarowej: Zachodzi przy tym równość: p i = N j N j N w i = j Wywozy i przywozy dla pojedynczego punktu nie muszą być sobie równe. W zadaniu minimalizacji pustych przebiegów chodzi o to, aby zaopatrzyć w puste środki transportu te punkty, dla których wywóz jest większy od przywozu. Środki te pochodzić mają z punktów, które nie wykorzystują wszystkich docierających do nich środków transportu. W klasycznym rozumieniu tego zagadnienia minimalizuje się więc liczbę samochodokilmetrów związanych z pustymi przejazdami zapewniając przy okazji niezbędną ilość pustych środków transportu. Punkty, dla których zachodzi w i > p i potraktujemy jako odbiorców pustych środków transportu o popycie równym b i = w i p i. Z kolei punkty gdzie w i < p i stają się dostawcami pustych środków transportu o podaży a i = p i w i. Punkty, dla których w i = p i eliminujemy z rozważań. W ten sposób możemy utworzyć i rozwiązać klasyczne zadanie transportowe. Przykład zadania minimalizacji pustych przebiegów 8 Zminimalizować puste przebiegi samochodów o ładowności 0 t, przewożących drobnicę pomiędzy siedmioma miastami stanowiącymi układ zamknięty. Dzienne przywozy p i i wywozy w i drobnicy do i z poszczególnych miast (w tonach) znalazły się w tablicy. a ij a ij N j L M N O P R S w i L M N O P R S 0 00 p i Mogą to być równie dobrze wagonokilmetry lub inna podobna jednostka. 8 Przykład pochodzi z: Jędrzejczyk, Kukuła [00], s. p i 0 z 0

21 W pierwszej kolejności należy określić, które miejscowości zostaną dostawcami, a które odbiorcami pustych samochodów. Obliczmy różnice pomiędzy przywozami a wywozami dla poszczególnych miast. Nie znamy z góry liczby samochodów przypadających na dane miasto. Dlatego najpierw dzielimy wielkości przywozów i wywozów przez ładowność pojedynczego pojazdu. Następnie obliczamy p i w i. Otrzymujemy: L : M : N : O : P : R : S : = = = = = = = 0 Dostawcami pustych samochodów zostaną miasta: N, O i P zaś odbiorcami: L, M, R i S. Na tej podstawie tworzymy zadanie transportowe zamknięte z dostawcami i odbiorcami: Odbiorcy Dostawcy L M R S a i N O P b j Zmienne decyzyjne oznaczają liczbę pustych samochodów jaką dany dostawca ma przesłać odpowiedniemu odbiorcy. Funkcja celu minimalizuje liczbę samochodokilometrów pustych przebiegów. Po rozwiązaniu zadania przy pomocy algorytmu transportowego otrzymujemy: X opt = 0 0, K min = Odczytując rozwiązanie zauważamy, że np. z miasta N do miasta L należy przesłać 0 samochodów, podobnie jak do miasta M. Zagadnienie optymalnego przydziału Zagadnienie optymalnego przydziału jest dość podobne do zadania transportowego w sensie podobieństwa modelu decyzyjnego. Ogólnie w problemach tego rodzaju chodzi o przydział pewnych zadań do miejsc ich realizacji. Założenia zadania optymalnego przydziału są następujące:. Dane jest n celów i m środków do ich realizacji (liczby celów i środków są sobie równe);. Każde skojarzenie i-tego celu oraz j -tego środka daje pewną korzyść c ij ;. Każdy cel musi być zrealizowany, a każdy ze środków może być użyty tylko jeden raz; z 0

22 . Zmienna decyzyjna x ij zdefiniowana jest następująco: {, gdy i-ty cel jest realizowany przez j -ty środek; x ij = 0, w przeciwnym wypadku. Należy znaleźć takie skojarzenia dla wszystkich celów i środków, aby zapewniały one jak największą korzyść decydentowi. Model decyzyjny dla n=m wygląda następująco: n m U(X) = c ij x ij max(min) (łączna korzyść) i= j= n x ij = i=,,...,n (bilanse dla celów) i= m x ij = j =,,...,m (bilanse dla środków) j= x ij {0, } Liczba celów niekoniecznie musi równać się liczbie środków. W przypadku nadwyżki celów wprowadzamy fikcyjne środki, które można interpretować np. jako zlecenie wykonania zadania firmie zewnętrznej. W sytuacji nadwyżki środków wprowadzamy fikcyjne cele, które można rozumieć jako dodatkowe zadania do realizacji. Zagadnienie optymalnego przydziału ma własną metodę rozwiązywania tzw. algorytm węgierski, ale po pewnych prostych przekształceniach da się je rozwiązać przy pomocy algorytmu transportowego. Zilustrujemy to przykładem. Przykład zadania optymalnego przydziału W pewnym dziekanacie cztery sekretarki należy przydzielić do prowadzenia czterech różnych prac biurowych. Na podstawie obserwacji oszacowano czas (w min.), jaki zajmuje im wykonywanie poszczególnych prac. Stosowne dane zawiera poniższa tabela. Zakładając, że każda z sekretarek będzie tylko jedną pracę, określić optymalny przydział z punktu widzenia minimalizacji łącznego czasu wykonywania prac. Prace Sekretarki Na podstawie danych z zadania tworzymy wektory podaży i popytu oraz macierz kosztów: 0 0 a =, b = [ ], C = Zwróćmy uwagę na sposób wprowadzenia wektorów podaży (a) i popytu (b) nieobecnych w treści zadania. Przyjmujemy, że ich składowe będą równać się. Następnie rozwiązujemy zadanie wspomnianym już algorytmem transportowym. Jako rezultat uzyskujemy: X opt = , K min = z 0

23 Macierz X opt zawiera dokładnie jedną w danym wierszu i kolumnie wskazującą przypisanie środku do celu. Na przykład pracę powinna wykonać sekretarka zaś pracę sekretarka. Łączny, minimalny czas pracy wszystkich sekretarek wyniesie minut. Programowanie sieciowe. Najkrótsza droga w sieci Zadanie tego rodzaju, jak sama nazwa sugeruje, służy do określania najkrótszej drogi łączącej węzeł początkowy ze wszystkimi pozostałymi węzłami w sieci. Stosowany tu algorytm jest dwufazowy. Najpierw cechujemy (przypisujemy etykiety) wierzchołki. Rozróżnimy etykiety stałe (oznaczymy je kwadratowymi nawiasami) i tymczasowe (okrągłe nawiasy), a każda z nich składa się z dwóch wartości: najkrótszej drogi wiodącej do danego wierzchołka oraz numeru wierzchołka będącego początkiem ostatniej krawędzi należącej do tej drogi. W iteracjach drugiej i następnych dochodzić może do zmian etykiet tymczasowych, pod warunkiem znalezienia drogi krótszej niż dotychczasowa. Jeżeli dla danego wierzchołka nie istnieje krótsza droga, przypisujemy mu stałą etykietę. Po ocechowaniu wszystkich wierzchołków stałymi etykietami następuje druga faza algorytmu, w której na podstawie drugich składowych etykiet tworzymy najkrótsze drogi łączące wierzchołek początkowy ze wszystkimi pozostałymi wierzchołkami. Obie fazy mają następujący przebieg: Faza (cechowanie wierzchołków) Iteracja Cechujemy na stałe wierzchołek przyporządkowując mu etykietę stałą (0,S). Poszukujemy krawędzi, które rozpoczynają się w tym wierzchołku. Wierzchołkom kończącym te krawędzie przypisujemy etykiety tymczasowe. Iteracja k (k n) Z ocechowanych tymczasowo wierzchołków wybieramy ten, którego pierwsza składowa jest najmniejsza i cechujemy go na stałe. Jeśli nie możemy jednoznacznie wskazać wierzchołka, wybieramy ten o najniższym numerze. Znajdujemy krawędzie prowadzące od tego wierzchołka do wierzchołków, które nie zostały jeszcze ocechowane na stałe. Sprawdzamy czy droga przechodząca przez rozpatrywany wierzchołek jest krótsza od aktualnie obowiązującej. Jeśli tak się stało, zmieniamy etykietę tymczasową. W przeciwnym wypadku, etykieta nie ulega zmianie. Faza (identyfikacja najkrótszych dróg) Wykorzystujemy w niej drugą składową etykiety. Zaczynając od wierzchołka numer, identyfikujemy krawędzie, które tworzą najkrótszą drogę. Identyfikujemy kolejne krawędzie poszukiwanej drogi tak długo, aż dojdziemy do początkowego wierzchołka. Przykład poszukiwania najkrótszych dróg w sieci Firma budowlana prowadzi inwestycji. Pomiędzy centralą a poszczególnymi placami budów przemieszcza ludzi, maszyny i materiały. Zależy więc jej na minimalizacji kosztów transportu. Sieć dróg wraz z odległościami znalazła się na rysunku 8. Wierzchołek to centrala firmy. Należy znaleźć najkrótsze drogi prowadzące z siedziby firmy do wszystkich placów budowy 9. Wyjściową sieć do przykładu znajdziemy na rysunku 8. 9 Przykład pochodzi z książki T. Trzaskalika Wprowadzenie do badań operacyjnych z komputerem z 0

24 8 0 Rysunek 8: Sieć dróg łączących centralę z budowami [0,S] 8 (8,) (,) 0 (,) Rysunek 9: Najkrótsza droga w sieci, iteracja Iteracja Cechujemy na stałe wierzchołek, a którego wychodzą krawędzie: -, - i -. Wierzchołki, i otrzymują następujące etykiety tymczasowe: (8,), (,) i (,). Iterację tę ilustruje rysunek 9. Iteracja Sprawdzając dotychczasowe etykiety tymczasowe stwierdzamy, że najmniejsza wartość pierwszej składowej dostępnych etykiet tymczasowych występuje dla wierzchołka. Oznacza to, że będzie on ocechowany na stałe. Wychodzą z niego następujące krawędzie: -, - i -. Pierwsza z nich prowadzi do wierzchołka, który ma już etykietę tymczasową. Ponownie sprawdzamy pierwszą składową etykiety. Droga wiodąca z wierzchołka przez wierzchołek (równa +) jest krótsza od dotychczasowej (równej 8). Bardziej opłaca się skorzystać z tej drogi. Dlatego wierzchołek otrzyma nową etykietę tymczasową: (,). Droga wiodąca do wierzchołka ma etykietę tymczasową (,). Wybór drogi przez wierzchołek sprawi, że będzie ona krótsza ( + < ) od tej, którą podawała lewa składowa etykiety. Dlatego tutaj również zmienimy etykietę tymczasową na (,). Wierzchołek nie posiada etykiety. Droga do niego prowadzi w tej chwili z wierzchołka przez wierzchołek i jest równa 9. Etykieta tymczasowa wierzchołka ma składowe (9,). Postępowanie w tej iteracji i nowy zbiór etykiet ilustruje rysunek 0. Iteracja Wierzchołek otrzyma etykietę stałą, ponieważ ma najmniejszą wartość pierwszej składowej spośród dotychczasowych etykiet tymczasowych. Wychodzą z niego następujące krawędzie: -, - i -. Krawędź - prowadzi do wierzchołka o tymczasowej etykiecie (,). Nowa droga, która przechodzi przez wierzchołek jest krótsza od obowiązującej do tej pory ( + < ), a wiodącej przez wierzchołek. Zmieniamy więc etykietę na (,). z 0

25 [0,S] 8 (,) (,) 0 [,] (9,) Rysunek 0: Najkrótsza droga w sieci, iteracja [0,S] 8 (,) [,] 0 (,) [,] (,) Rysunek : Najkrótsza droga w sieci, iteracja Droga wiodąca do wierzchołka okazuje się krótsza od uprzednio wyznaczonej drogi. Nowa etykieta (zastępująca poprzednią) jest następująca: (,). Wierzchołek nie był dotąd cechowany. Prowadząca do niego droga wiodąca przez wierzchołek ma długość +0=, stąd etykieta tymczasowa ma postać (,). Całe postępowanie w tej iteracji można prześledzić na rysunku. Iteracja Jako ocechowany na stałe wybieramy wierzchołek. Jedynie wierzchołek nie ma stałej etykiety i jest osiągalny z wierzchołka. Droga, która prowadzi do niego przez wierzchołek jest krótsza od dotychczasowej ( + < ). Nowa etykieta tymczasowa jest następująca: (,) (patrz rysunek ). Iteracja Jako następny, ocechowany na stałe będzie wierzchołek. Ma on najmniejszą lewą składową etykiety spośród wciąż nieocechowanych na stałe wierzchołków (czyli i ). Sytuacja ta znalazła się na rysunku. Iteracja Tylko wierzchołek nie ma jeszcze stałej etykiety i jest osiągalny z wierzchołka. Jeżeli sprawdzimy długość drogi wiodącej do wierzchołka przez wierzchołek to okazuje się, że nie uda się uzyskać poprawy ( + > ). Jego etykieta pozostaje bez zmian, a jako że jest to ostatni nieocechowany na stałe wierzchołek, w następnej iteracji dokonamy jedynie zamiany jego etykiety z tymczasowej na stałą (patrz rysunek ). z 0

26 [0,S] 8 (,) [,] 0 (,) [,] [,] Rysunek : Najkrótsza droga w sieci, iteracja [0,S] 8 [,] [,] 0 (,) [,] [,] Rysunek : Najkrótsza droga w sieci, iteracja [0,S] 8 [,] [,] 0 [,] [,] [,] Rysunek : Najkrótsza droga w sieci, iteracja Po ocechowaniu na stałe wszystkich wierzchołków przechodzimy do drugiej fazy algorytmu. Konstruujemy w niej drogi wiodące z wierzchołka początkowego do wszystkich wierzchołków sieci. Wykorzystujemy w tym celu drugą składową etykiety. Na przykład dla wierzchołka druga składowa (czyli ) wskazuje, że ostatni odcinek najkrótszej drogi zaczyna się w wierzchołku. Z kolei najkrótsza droga do niego prowadzi z wierzchołka, do którego docieramy z wierzchołka. W tabeli znalazły się wyznaczone w opisany sposób najkrótsze drogi w sieci dla naszego przykładu. z 0

27 Tabela : Zestawienie najkrótszych dróg w sieci Wierzchołek Najkrótsza droga Odległość Maksymalny przepływ w sieci W zadaniu maksymalnego przepływu w sieci każdą krawędź grafu opisujemy dwoma parametrami wyrażającymi wielkości przepływu (przepustowość i przepustowość rezydualna) w obu kierunkach (nie muszą one być jednakowe). Różne drogi mogą charakteryzować się różnymi przepustowościami. Należy w tej sytuacji wyznaczyć maksymalny możliwy przepływ dla danej sieci wraz z trasami, które go zapewnią oraz z uwzględnieniem przepustowości poszczególnych tras. Wierzchołek początkowy nosi nazwę źródła zaś końcowy ujścia. Równowaga przepływu dla wszystkich branych pod uwagę krawędzi musi zostać zapewniona, co należy rozumieć następująco: aktualnie wykorzystywany przepływ nie może przekroczyć maksymalnej przepustowości krawędzi zaś dopuszczalne wykorzystanie krawędzi w określonym kierunku powoduje zmniejszenie przepustowości w tym kierunku (o wykorzystaną wielkość) oraz zwiększeniem przepustowości w kierunku przeciwnym (o tę samą wielkość). Algorytm postępowania podczas poszukiwania najkrótszej drogi w sieci przebiega następująco:. Znajdujemy dowolną drogę ze źródła do ujścia, dla której przepustowości krawędzi są większe od zera. Jeżeli nie jest to możliwe, przepływ maksymalny nie istnieje lub został wyznaczony w kroku poprzednim.. Na wyznaczonej drodze znajdujemy krawędź o najmniejszej przepustowości w rozpatrywanym kierunku, którą oznaczymy jako p.. Zmniejszamy przepustowość krawędzi tworzących rozpatrywaną drogę o p i powiększamy o tę wielkość odpowiednie przepustowości rezydualne. Następnie wracamy do kroku. Przykład poszukiwania maksymalnego przepływu w sieci Z powodu remontu wyłączono z użytku odcinek pewnej drogi 0. Zaproponowano w to miejsce objazdy drogami o różnej nawierzchni i zróżnicowanych ograniczeniach prędkości. Wpływa to na przepustowości odcinków wybranych dróg. Rozpatrywaną, alternatywną sieć transportową przedstawiono na rysunku. Iteracja Konstruujemy pierwszą drogę ze źródła do ujścia. Mamy ich kilka do wyboru. Arbitralnie wybierzemy ---. Jest to możliwa droga, ponieważ w kierunku, w którym się posuwamy, wszystkie przepustowości są większe od zera. Wyznaczamy następnie minimalną wartość przepustowości zgodną z kierunkiem przepływu. Jest nią wartość występująca na trasie -. Korygujemy teraz przepustowości dla krawędzi wybranej trasy w ten sposób, że te zgodne z kierunkiem przepływu zmniejszamy a przeciwne powiększamy o wybraną wielkość przepływu co 0 Przykład pochodzi z książki T. Trzaskalika Wprowadzenie do badań operacyjnych z komputerem z 0

OPTYMALIZACJA W LOGISTYCE

OPTYMALIZACJA W LOGISTYCE OPTYMALIZACJA W LOGISTYCE Zagadnienie transportowe 1 dr Zbigniew Karwacki Katedra Badań Operacyjnych UŁ Klasyczne zagadnienie transportowe 1 Klasyczne zadanie transportowe problem najtańszego przewozu

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE

ZAGADNIENIE TRANSPORTOWE ZAGADNIENIE TRANSPORTOWE ZT jest specyficznym problemem z zakresu zastosowań programowania liniowego. ZT wykorzystuje się najczęściej do: optymalnego planowania transportu towarów, przy minimalizacji kosztów,

Bardziej szczegółowo

BADANIA OPERACYJNE I TEORIE OPTYMALIZACJI. Zagadnienie transportowe

BADANIA OPERACYJNE I TEORIE OPTYMALIZACJI. Zagadnienie transportowe BADANIA OPERACYJNE I TEORIE OPTYMALIZACJI Zagadnienie transportowe Klasyczne zagadnienie transportowe Klasyczne zadanie transportowe problem najtańszego przewozu jednorodnego dobra pomiędzy punktami nadania

Bardziej szczegółowo

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Wykład z modelowania matematycznego. Zagadnienie transportowe. Wykład z modelowania matematycznego. Zagadnienie transportowe. 1 Zagadnienie transportowe zostało sformułowane w 1941 przez F.L.Hitchcocka. Metoda rozwiązania tego zagadnienia zwana algorytmem transportowymópracowana

Bardziej szczegółowo

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik Zadanie transportowe i problem komiwojażera Tadeusz Trzaskalik 3.. Wprowadzenie Słowa kluczowe Zbilansowane zadanie transportowe Rozwiązanie początkowe Metoda minimalnego elementu macierzy kosztów Metoda

Bardziej szczegółowo

Programowanie liniowe. Tadeusz Trzaskalik

Programowanie liniowe. Tadeusz Trzaskalik Programowanie liniowe Tadeusz Trzaskalik .. Wprowadzenie Słowa kluczowe Model matematyczny Cel, środki, ograniczenia Funkcja celu funkcja kryterium Zmienne decyzyjne Model optymalizacyjny Układ warunków

Bardziej szczegółowo

Rozdział 1 PROGRAMOWANIE LINIOWE

Rozdział 1 PROGRAMOWANIE LINIOWE Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 1 PROGRAMOWANIE LINIOWE 1.2 Ćwiczenia komputerowe Ćwiczenie 1.1 Wykorzystując

Bardziej szczegółowo

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA? /9/ Zagadnienie transportowe Optymalizacja w procesach biznesowych Wykład --9 Plan wykładu Przykład zagadnienia transportowego Sformułowanie problemu Własności zagadnienia transportowego Metoda potencjałów

Bardziej szczegółowo

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie OPIS ZAGADNIENIA Zagadnienie transportowe służy głównie do obliczania najkorzystniejszego

Bardziej szczegółowo

Rozdział 3 ZADANIE TRANSPORTOWE I PROBLEM KOMIWOJAŻERA

Rozdział 3 ZADANIE TRANSPORTOWE I PROBLEM KOMIWOJAŻERA Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 3 ZADANIE TRANSPORTOWE I PROBLEM KOMIWOJAŻERA 3.2. Ćwiczenia komputerowe

Bardziej szczegółowo

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski METODA SYMPLEKS Maciej Patan Uniwersytet Zielonogórski WSTĘP Algorytm Sympleks najpotężniejsza metoda rozwiązywania programów liniowych Metoda generuje ciąg dopuszczalnych rozwiązań x k w taki sposób,

Bardziej szczegółowo

OPTYMALIZACJA W LOGISTYCE

OPTYMALIZACJA W LOGISTYCE OPTYMALIZACJA W LOGISTYCE Zagadnienie przydziału dr Zbigniew Karwacki Katedra Badań Operacyjnych UŁ Zagadnienie przydziału 1 Można wyodrębnić kilka grup problemów, których zadaniem jest alokacja szeroko

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE(ZT)

ZAGADNIENIE TRANSPORTOWE(ZT) A. Kasperski, M. Kulej BO Zagadnienie transportowe 1 ZAGADNIENIE TRANSPORTOWE(ZT) Danychjest pdostawców,którychpodażwynosi a 1, a 2,...,a p i q odbiorców,którychpopytwynosi b 1, b 2,...,b q.zakładamy,że

Bardziej szczegółowo

Rozwiązanie Ad 1. Model zadania jest następujący:

Rozwiązanie Ad 1. Model zadania jest następujący: Przykład. Hodowca drobiu musi uzupełnić zawartość dwóch składników odżywczych (A i B) w produktach, które kupuje. Rozważa cztery mieszanki: M : M, M i M. Zawartość składników odżywczych w poszczególnych

Bardziej szczegółowo

BADANIA OPERACYJNE Zagadnienie transportowe. dr Adam Sojda

BADANIA OPERACYJNE Zagadnienie transportowe. dr Adam Sojda BADANIA OPERACYJNE Zagadnienie transportowe dr Adam Sojda adam.sojda@polsl.pl http://dydaktyka.polsl.pl/roz6/asojda/default.aspx Pokój A405 Zagadnienie transportowe Założenia: Pewien jednorodny towar należy

Bardziej szczegółowo

Rozdział 1 PROGRAMOWANIE LINIOWE

Rozdział 1 PROGRAMOWANIE LINIOWE Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 1 PROGRAMOWANIE LINIOWE 1.1 Opis programów Do rozwiązania zadań programowania

Bardziej szczegółowo

BADANIA OPERACYJNE Zagadnienie transportowe

BADANIA OPERACYJNE Zagadnienie transportowe BADANIA OPERACYJNE Zagadnienie transportowe Zadanie zbilansowane Zadanie zbilansowane Przykład 1 Firma posiada zakłady wytwórcze w miastach A, B i C, oraz centra dystrybucyjne w miastach D, E, F i G. Możliwości

Bardziej szczegółowo

Elementy Modelowania Matematycznego

Elementy Modelowania Matematycznego Elementy Modelowania Matematycznego Wykład 6 Metoda simpleks Spis treści Wstęp Zadanie programowania liniowego Wstęp Omówimy algorytm simpleksowy, inaczej metodę simpleks(ów). Jest to stosowana w matematyce

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE (część 1)

ZAGADNIENIE TRANSPORTOWE (część 1) ZAGADNIENIE TRANSPORTOWE (część 1) Zadanie zbilansowane Przykład 1. Zadanie zbilansowane Firma posiada zakłady wytwórcze w miastach A, B i C, oraz centra dystrybucyjne w miastach D, E, F i G. Możliwości

Bardziej szczegółowo

Ekonometria dla Finansów i Rachunkowości

Ekonometria dla Finansów i Rachunkowości Ekonometria dla Finansów i Rachunkowości Dr Adam Kucharski Spis treści 1 Optymalizacja liniowa 2 1.1 Programowanie liniowe................................. 2 1.2 Metoda graficzna....................................

Bardziej szczegółowo

BADANIA OPERACYJNE pytania kontrolne

BADANIA OPERACYJNE pytania kontrolne DUALNOŚĆ 1. Podać twierdzenie o dualności 2. Jaka jest zależność pomiędzy funkcjami celu w zadaniu pierwotnym i dualnym? 3. Prawe strony ograniczeń zadania pierwotnego, w zadaniu dualnym są 4. Współczynniki

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Badania operacyjne Problem Model matematyczny Metoda rozwiązania Znaleźć optymalny program produkcji. Zmaksymalizować 1 +3 2 2 3 (1) Przy ograniczeniach 3 1 2 +2 3 7 (2) 2 1 +4 2 12 (3) 4 1 +3 2 +8 3 10

Bardziej szczegółowo

A. Kasperski, M. Kulej, Badania operacyjne, Wykład 4, Zagadnienie transportowe1

A. Kasperski, M. Kulej, Badania operacyjne, Wykład 4, Zagadnienie transportowe1 A. Kasperski, M. Kulej, Badania operacyjne, Wykład 4, Zagadnienie transportowe ZAGADNIENIE TRANSPORTOWE(ZT) Danychjest pdostawców,którychpodażwynosi a,a 2,...,a p i qodbiorców, którychpopytwynosi b,b 2,...,b

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE

ZAGADNIENIE TRANSPORTOWE ZAGADNENE TRANSPORTOWE Definicja: Program liniowy to model, w którym warunki ograniczające oraz funkcja celu są funkcjami liniowymi. W skład każdego programu liniowego wchodzą: zmienne decyzyjne, ograniczenia

Bardziej szczegółowo

Metoda simpleks. Gliwice

Metoda simpleks. Gliwice Sprowadzenie modelu do postaci bazowej Sprowadzenie modelu do postaci bazowej Przykład 4 Model matematyczny z Przykładu 1 sprowadzić do postaci bazowej. FC: ( ) Z x, x = 6x + 5x MAX 1 2 1 2 O: WB: 1 2

Bardziej szczegółowo

KLASYCZNE ZAGADNIENIE TRANSPORTOWE (KZT).

KLASYCZNE ZAGADNIENIE TRANSPORTOWE (KZT). KLASYCZNE ZAGADNIENIE TRANSPORTOWE (KZT). Przez klasyczne zagadnienie transportowe rozumiemy problem znajdowania najtańszego programu przewozowego jednorodnego dobra pomiędzy punktami nadania (m liczba

Bardziej szczegółowo

Zagadnienie transportowe

Zagadnienie transportowe 9//9 Zagadnienie transportowe Optymalizacja w procesach biznesowych Wykład Plan wykładu Przykład zagadnienia transportowego Sformułowanie problemu Własności zagadnienia transportowego Metoda potencjałów

Bardziej szczegółowo

Zadania 1. Czas pracy przypadający na jednostkę wyrobu (w godz.) M 1. Wyroby

Zadania 1. Czas pracy przypadający na jednostkę wyrobu (w godz.) M 1. Wyroby Zadania 1 Przedsiębiorstwo wytwarza cztery rodzaje wyrobów: A, B, C, D, które są obrabiane na dwóch maszynach M 1 i M 2. Czas pracy maszyn przypadający na obróbkę jednostki poszczególnych wyrobów podany

Bardziej szczegółowo

ZAGADNIENIA TRANSPORTOWE

ZAGADNIENIA TRANSPORTOWE ZAGADNIENIA TRANSPORTOWE Maciej Patan Uniwersytet Zielonogórski WPROWADZENIE opracowano w 1941 r. (F.L. Hitchcock) Jest to problem opracowania planu przewozu pewnego jednorodnego produktu z kilku różnych

Bardziej szczegółowo

Badania Operacyjne Ćwiczenia nr 5 (Materiały)

Badania Operacyjne Ćwiczenia nr 5 (Materiały) ZADANIE 1 Zakład produkuje trzy rodzaje papieru: standardowy do kserokopiarek i drukarek laserowych (S), fotograficzny (F) oraz nabłyszczany do drukarek atramentowych (N). Każdy z rodzajów papieru wymaga

Bardziej szczegółowo

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Optymalizacja

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Optymalizacja Politechnika Wrocławska, Wydział Informatyki i Zarządzania Optymalizacja Dla podanych niżej problemów decyzyjnych (zad.1 zad.5) należy sformułować zadania optymalizacji, tj.: określić postać zmiennych

Bardziej szczegółowo

Ekonometria - ćwiczenia 10

Ekonometria - ćwiczenia 10 Ekonometria - ćwiczenia 10 Mateusz Myśliwski Zakład Ekonometrii Stosowanej Instytut Ekonometrii Kolegium Analiz Ekonomicznych Szkoła Główna Handlowa 14 grudnia 2012 Wprowadzenie Optymalizacja liniowa Na

Bardziej szczegółowo

Rozwiązanie zadania 1. Krok Tym razem naszym celem jest, nie tak, jak w przypadku typowego zadania transportowego

Rozwiązanie zadania 1. Krok Tym razem naszym celem jest, nie tak, jak w przypadku typowego zadania transportowego Zadanie 1 Pośrednik kupuje towar u dwóch dostawców (podaż: 2 i, jednostkowe koszty zakupu 1 i 12), przewozi go i sprzedaje trzem odbiorcom (popyt: 1, 28 i 27, ceny sprzedaży:, 25 i ). Jednostkowe koszty

Bardziej szczegółowo

ZAGADNIENIA PROGRAMOWANIA LINIOWEGO

ZAGADNIENIA PROGRAMOWANIA LINIOWEGO ZAGADNIENIA PROGRAMOWANIA LINIOWEGO Maciej Patan Uniwersytet Zielonogórski WSTĘP często spotykane w życiu codziennym wybór asortymentu produkcji jakie wyroby i w jakich ilościach powinno produkować przedsiębiorstwo

Bardziej szczegółowo

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład):

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład): może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład): 1 Narysuj na płaszczyźnie zbiór dopuszczalnych rozwiazań. 2 Narysuj funkcję

Bardziej szczegółowo

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505.

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505. doc. dr Beata Pułska-Turyna Zakład Badań Operacyjnych Zarządzanie B506 mail: turynab@wz.uw.edu.pl mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505. Tel.: (22)55 34 144 Mail: student@pgadecki.pl

Bardziej szczegółowo

Klasyczne zagadnienie przydziału

Klasyczne zagadnienie przydziału Klasyczne zagadnienie przydziału Można wyodrębnić kilka grup problemów, w których zadaniem jest odpowiednie rozmieszczenie posiadanych zasobów. Najprostszy problem tej grupy nazywamy klasycznym zagadnieniem

Bardziej szczegółowo

Zagadnienie transportowe

Zagadnienie transportowe Zagadnienie transportowe Firma X zawarła kontrakt na dostarczenie trawnika do wykończenia terenów wokół trzech zakładów U, V i W. Trawnik ma być dostarczony z trzech farm A, B i C. Zapotrzebowanie zakładów

Bardziej szczegółowo

WYKORZYSTANIE NARZĘDZIA Solver DO ROZWIĄZYWANIA ZAGADNIEŃ TRANSPORTOWYCH Z KRYTERIUM KOSZTÓW

WYKORZYSTANIE NARZĘDZIA Solver DO ROZWIĄZYWANIA ZAGADNIEŃ TRANSPORTOWYCH Z KRYTERIUM KOSZTÓW WYKORZYSTANIE NARZĘDZIA Solver DO ROZWIĄZYWANIA ZAGADNIEŃ TRANSPORTOWYCH Z KRYTERIUM KOSZTÓW Zadania transportowe Zadania transportowe są najczęściej rozwiązywanymi problemami w praktyce z zakresu optymalizacji

Bardziej szczegółowo

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik Programowanie liniowe całkowitoliczbowe Tadeusz Trzaskalik .. Wprowadzenie Słowa kluczowe Rozwiązanie całkowitoliczbowe Założenie podzielności Warunki całkowitoliczbowości Czyste zadanie programowania

Bardziej szczegółowo

Zagadnienie transportowe i zagadnienie przydziału

Zagadnienie transportowe i zagadnienie przydziału Temat: Zagadnienie transportowe i zagadnienie przydziału Zadanie 1 Trzy piekarnie zlokalizowane na terenie miasta są zaopatrywane w mąkę z trzech magazynów znajdujących się na peryferiach. Zasoby mąki

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Programowanie liniowe Maciej Drwal maciej.drwal@pwr.wroc.pl 1 Problem programowania liniowego min x c T x (1) Ax b, (2) x 0. (3) gdzie A R m n, c R n, b R m. Oznaczmy przez x rozwiązanie optymalne, tzn.

Bardziej szczegółowo

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE 2.2 Ćwiczenia komputerowe Ćwiczenie

Bardziej szczegółowo

Programowanie sieciowe. Tadeusz Trzaskalik

Programowanie sieciowe. Tadeusz Trzaskalik Programowanie Tadeusz Trzaskalik 8.1. Wprowadzenie Słowa kluczowe Drzewo rozpinające Minimalne drzewo rozpinające Najkrótsza droga w sieci Wierzchołek początkowy Maksymalny przepływ w sieci Źródło Ujście

Bardziej szczegółowo

1 Układy równań liniowych

1 Układy równań liniowych II Metoda Gaussa-Jordana Na wykładzie zajmujemy się układami równań liniowych, pojawi się też po raz pierwszy macierz Formalną (i porządną) teorią macierzy zajmiemy się na kolejnych wykładach Na razie

Bardziej szczegółowo

Badania Operacyjne Ćwiczenia nr 6 (Materiały)

Badania Operacyjne Ćwiczenia nr 6 (Materiały) Otwarte zagadnienie transportowe Jeżeli łączna podaż dostawców jest większa niż łączne zapotrzebowanie odbiorców to mamy do czynienia z otwartym zagadnieniem transportowym. Warunki dla dostawców (i-ty

Bardziej szczegółowo

Notatki do tematu Metody poszukiwania rozwiązań jednokryterialnych problemów decyzyjnych metody dla zagadnień liniowego programowania matematycznego

Notatki do tematu Metody poszukiwania rozwiązań jednokryterialnych problemów decyzyjnych metody dla zagadnień liniowego programowania matematycznego Notatki do tematu Metody poszukiwania rozwiązań jednokryterialnych problemów decyzyjnych metody dla zagadnień liniowego programowania matematycznego część III Analiza rozwiązania uzyskanego metodą simpleksową

Bardziej szczegółowo

Definicja problemu programowania matematycznego

Definicja problemu programowania matematycznego Definicja problemu programowania matematycznego minimalizacja lub maksymalizacja funkcji min (max) f(x) gdzie: x 1 x R n x 2, czyli: x = [ ] x n przy ograniczeniach (w skrócie: p.o.) p.o. g i (x) = b i

Bardziej szczegółowo

Zadanie transportowe

Zadanie transportowe Zadanie transportowe Opracowanie planu przewozu jednorodnego produktu z różnych źródeł zaopatrzenia do punktów, które zgłaszają zapotrzebowanie na ten produkt. Wykład ARo Metody optymalizacji w ekonomii

Bardziej szczegółowo

Spis treści. Koszalin 2006 [BADANIA OPERACYJNE PROGRAMOWANIE LINIOWE]

Spis treści. Koszalin 2006 [BADANIA OPERACYJNE PROGRAMOWANIE LINIOWE] Spis treści 1 Metoda geometryczna... 2 1.1 Wstęp... 2 1.2 Przykładowe zadanie... 2 2 Metoda simpleks... 6 2.1 Wstęp... 6 2.2 Przykładowe zadanie... 6 1 Metoda geometryczna Anna Tomkowska 1 Metoda geometryczna

Bardziej szczegółowo

D. Miszczyńska, M.Miszczyński KBO UŁ, Badania operacyjne [1]

D. Miszczyńska, M.Miszczyński KBO UŁ, Badania operacyjne [1] D. Miszczyńska, M.Miszczyński KBO UŁ, Badania operacyjne [1] Co to są badania operacyjne? Termin "badanie operacji" (Operations' Research) powstał podczas II wojny światowej i przetrwał do dzisiaj. W terminologii

Bardziej szczegółowo

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE 6. Ćwiczenia komputerowe Ćwiczenie 6.1

Bardziej szczegółowo

Układy równań i nierówności liniowych

Układy równań i nierówności liniowych Układy równań i nierówności liniowych Wiesław Krakowiak 1 grudnia 2010 1 Układy równań liniowych DEFINICJA 11 Układem równań m liniowych o n niewiadomych X 1,, X n, nazywamy układ postaci: a 11 X 1 + +

Bardziej szczegółowo

Standardowe zadanie programowania liniowego. Gliwice 1

Standardowe zadanie programowania liniowego. Gliwice 1 Standardowe zadanie programowania liniowego 1 Standardowe zadanie programowania liniowego Rozważamy proces, w którym zmiennymi są x 1, x 2,, x n. Proces poddany jest m ograniczeniom, zapisanymi w postaci

Bardziej szczegółowo

Wprowadzenie do badań operacyjnych - wykład 2 i 3

Wprowadzenie do badań operacyjnych - wykład 2 i 3 Wprowadzenie do badań operacyjnych - wykład 2 i 3 Hanna Furmańczyk 14 listopada 2008 Programowanie liniowe (PL) - wszystkie ograniczenia muszą być liniowe - wszystkie zmienne muszą być ciągłe n j=1 c j

Bardziej szczegółowo

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w Metoda Simpleks Jak wiadomo, problem PL z dowolną liczbą zmiennych można rozwiązać wyznaczając wszystkie wierzchołkowe punkty wielościanu wypukłego, a następnie porównując wartości funkcji celu w tych

Bardziej szczegółowo

Zadanie laboratoryjne "Wybrane zagadnienia badań operacyjnych"

Zadanie laboratoryjne Wybrane zagadnienia badań operacyjnych Zadanie laboratoryjne "Wybrane zagadnienia badań operacyjnych" 1. Zbudować model optymalizacyjny problemu opisanego w zadaniu z tabeli poniżej. 2. Rozwiązać zadanie jak w tabeli poniżej z wykorzystaniem

Bardziej szczegółowo

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA I WSPOMAGANIA DECYZJI Rozproszone programowanie produkcji z wykorzystaniem

Bardziej szczegółowo

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Politechnika Poznańska Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Joanna Józefowska POZNAŃ 2010/11 Spis treści Rozdział 1. Metoda programowania dynamicznego........... 5

Bardziej szczegółowo

Rozwiązywanie problemów z użyciem Solvera programu Excel

Rozwiązywanie problemów z użyciem Solvera programu Excel Rozwiązywanie problemów z użyciem Solvera programu Excel Podstawowe czynności: aktywować dodatek Solver oraz ustawić w jego opcjach maksymalny czas trwania algorytmów na sensowną wartość (np. 30 sekund).

Bardziej szczegółowo

Badania Operacyjne Ćwiczenia nr 4 (Materiały)

Badania Operacyjne Ćwiczenia nr 4 (Materiały) Analiza wrażliwości Rozwiązanie programu liniowego jest dopiero początkiem analizy. Z punktu widzenia decydenta (menadżera) jest istotne, żeby wiedzieć jak na rozwiązanie optymalne wpływają zmiany parametrów

Bardziej szczegółowo

Metody Ilościowe w Socjologii

Metody Ilościowe w Socjologii Metody Ilościowe w Socjologii wykład 4 BADANIA OPERACYJNE dr inż. Maciej Wolny AGENDA I. Badania operacyjne podstawowe definicje II. Metodologia badań operacyjnych III. Wybrane zagadnienia badań operacyjnych

Bardziej szczegółowo

Badania operacyjne. te praktyczne pytania, na które inne metody dają odpowiedzi jeszcze gorsze.

Badania operacyjne. te praktyczne pytania, na które inne metody dają odpowiedzi jeszcze gorsze. BADANIA OPERACYJNE Badania operacyjne Badania operacyjne są sztuką dawania złych odpowiedzi na te praktyczne pytania, na które inne metody dają odpowiedzi jeszcze gorsze. T. Sayty 2 Standardowe zadanie

Bardziej szczegółowo

Ćwiczenia laboratoryjne - 7. Zagadnienie transportowoprodukcyjne. programowanie liniowe

Ćwiczenia laboratoryjne - 7. Zagadnienie transportowoprodukcyjne. programowanie liniowe Ćwiczenia laboratoryjne - 7 Zagadnienie transportowoprodukcyjne ZT-P programowanie liniowe Ćw. L. 8 Konstrukcja modelu matematycznego Model matematyczny składa się z: Funkcji celu będącej matematycznym

Bardziej szczegółowo

D. Miszczyńska, M.Miszczyński KBO UŁ 1 GRY KONFLIKTOWE GRY 2-OSOBOWE O SUMIE WYPŁAT ZERO

D. Miszczyńska, M.Miszczyński KBO UŁ 1 GRY KONFLIKTOWE GRY 2-OSOBOWE O SUMIE WYPŁAT ZERO D. Miszczyńska, M.Miszczyński KBO UŁ GRY KONFLIKTOWE GRY 2-OSOBOWE O SUMIE WYPŁAT ZERO Gra w sensie niżej przedstawionym to zasady którymi kierują się decydenci. Zakładamy, że rezultatem gry jest wypłata,

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Badania operacyjne Ćwiczenia 4 Programowanie liniowe Dualizm w programowaniu liniowym Plan zajęć Dualizm w programowaniu liniowym Projektowanie programu dualnego Postać programu dualnego Przykład 1 Rozwiązania

Bardziej szczegółowo

Wielokryteriowa optymalizacja liniowa

Wielokryteriowa optymalizacja liniowa Wielokryteriowa optymalizacja liniowa 1. Przy decyzjach złożonych kierujemy się zwykle więcej niż jednym kryterium. Postępowanie w takich sytuacjach nie jest jednoznaczne. Pojawiło się wiele sposobów dochodzenia

Bardziej szczegółowo

FUNKCJA LINIOWA - WYKRES

FUNKCJA LINIOWA - WYKRES FUNKCJA LINIOWA - WYKRES Wzór funkcji liniowej (Postać kierunkowa) Funkcja liniowa jest podstawowym typem funkcji. Jest to funkcja o wzorze: y = ax + b a i b to współczynniki funkcji, które mają wartości

Bardziej szczegółowo

OPTYMALIZACJA W LOGISTYCE

OPTYMALIZACJA W LOGISTYCE OPTYMALIZACJA W LOGISTYCE Optymalizacja zadań bazy transportowej ( część 2 ) Opracowano na podstawie : Stanisław Krawczyk, Metody ilościowe w logistyce ( przedsiębiorstwa ), Wydawnictwo C. H. Beck, Warszawa

Bardziej szczegółowo

Elementy Modelowania Matematycznego

Elementy Modelowania Matematycznego Elementy Modelowania Matematycznego Wykład 8 Programowanie nieliniowe Spis treści Programowanie nieliniowe Zadanie programowania nieliniowego Zadanie programowania nieliniowego jest identyczne jak dla

Bardziej szczegółowo

ZASTOSOWANIE PROGRAMOWANIA LINIOWEGO W ZAGADNIENIACH WSPOMAGANIA PROCESU PODEJMOWANIA DECYZJI

ZASTOSOWANIE PROGRAMOWANIA LINIOWEGO W ZAGADNIENIACH WSPOMAGANIA PROCESU PODEJMOWANIA DECYZJI Wstęp ZASTOSOWANIE PROGRAMOWANIA LINIOWEGO W ZAGADNIENIACH WSPOMAGANIA PROCESU PODEJMOWANIA DECYZJI Problem podejmowania decyzji jest jednym z zagadnień sterowania nadrzędnego. Proces podejmowania decyzji

Bardziej szczegółowo

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia:

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia: Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne Temat ćwiczenia: Programowanie liniowe, metoda geometryczna, dobór struktury asortymentowej produkcji Zachodniopomorski Uniwersytet

Bardziej szczegółowo

Programowanie liniowe metoda sympleks

Programowanie liniowe metoda sympleks Programowanie liniowe metoda sympleks Mirosław Sobolewski Wydział Matematyki, Informatyki i Mechaniki UW wykład z algebry liniowej Warszawa, styczeń 2009 Mirosław Sobolewski (UW) Warszawa, 2009 1 / 13

Bardziej szczegółowo

Wykład 6. Programowanie liniowe

Wykład 6. Programowanie liniowe Wykład 6. Programowanie liniowe Zakład może wytwarzać dwa produkty: P 1 i P 2. Ich produkcja jest limitowana dostępnymi zasobami trzech środków: S 1, S 2, S 3. Zasoby tych środków wynoszą odpowiednio,

Bardziej szczegółowo

Wielokryteriowa optymalizacja liniowa cz.2

Wielokryteriowa optymalizacja liniowa cz.2 Wielokryteriowa optymalizacja liniowa cz.2 Metody poszukiwania końcowych rozwiązań sprawnych: 1. Metoda satysfakcjonujących poziomów kryteriów dokonuje się wyboru jednego z kryteriów zadania wielokryterialnego

Bardziej szczegółowo

Algebra liniowa. Macierze i układy równań liniowych

Algebra liniowa. Macierze i układy równań liniowych Algebra liniowa Macierze i układy równań liniowych Własności wyznaczników det I = 1, det(ab) = det A det B, det(a T ) = det A. Macierz nieosobliwa Niech A będzie macierzą kwadratową wymiaru n n. Mówimy,

Bardziej szczegółowo

Metoda Karnaugh. B A BC A

Metoda Karnaugh. B A BC A Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który

Bardziej szczegółowo

Badania Operacyjne Ćwiczenia nr 2 (Materiały)

Badania Operacyjne Ćwiczenia nr 2 (Materiały) Zbiór rozwiązań dopuszczalnych programu liniowego Zbiór rozwiązań dopuszczalnych programu linowego to taki zbiór, który spełnia warunki ograniczające (funkcyjne oraz brzegowe) programu liniowego. Przy

Bardziej szczegółowo

5. Rozwiązywanie układów równań liniowych

5. Rozwiązywanie układów równań liniowych 5. Rozwiązywanie układów równań liniowych Wprowadzenie (5.1) Układ n równań z n niewiadomymi: a 11 +a 12 x 2 +...+a 1n x n =a 10, a 21 +a 22 x 2 +...+a 2n x n =a 20,..., a n1 +a n2 x 2 +...+a nn x n =a

Bardziej szczegółowo

Programowanie liniowe metoda sympleks

Programowanie liniowe metoda sympleks Programowanie liniowe metoda sympleks Mirosław Sobolewski Wydział Matematyki, Informatyki i Mechaniki UW 13. wykład z algebry liniowej Warszawa, styczeń 2018 Mirosław Sobolewski (UW) Warszawa, 2018 1 /

Bardziej szczegółowo

3. FUNKCJA LINIOWA. gdzie ; ół,.

3. FUNKCJA LINIOWA. gdzie ; ół,. 1 WYKŁAD 3 3. FUNKCJA LINIOWA FUNKCJĄ LINIOWĄ nazywamy funkcję typu : dla, gdzie ; ół,. Załóżmy na początek, że wyraz wolny. Wtedy mamy do czynienia z funkcją typu :.. Wykresem tej funkcji jest prosta

Bardziej szczegółowo

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

Bardziej szczegółowo

(Dantzig G. B. (1963))

(Dantzig G. B. (1963)) (Dantzig G.. (1963)) Uniwersalna metoda numeryczna dla rozwiązywania zadań PL. Ideą metody est uporządkowany przegląd skończone ilości rozwiązań bazowych układu ograniczeń, które możemy utożsamiać, w przypadku

Bardziej szczegółowo

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych Arytmetyka liczb całkowitych Wykład 1 Na początku zajmować się będziemy zbiorem liczb całkowitych Z = {0, ±1, ±2,...}. Zakładamy, że czytelnik zna relację

Bardziej szczegółowo

Lista 1 PL metoda geometryczna

Lista 1 PL metoda geometryczna Lista 1 PL metoda geometryczna 1.1. Znajdź maksimum funkcji celuf(x 1,x 2 )=5x 1 +7x 2 przy ograniczeniach: 2x 1 +2x 2 600, 2x 1 +4x 2 1000, x i 0 dlai=1,2 1.2. Znajdź maksimum funkcji celuf(x 1,x 2 )=2x

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Badania operacyjne Ćwiczenia 2 Programowanie liniowe Metoda geometryczna Plan zajęć Programowanie liniowe metoda geometryczna Przykład 1 Zbiór rozwiązań dopuszczalnych Zamknięty zbiór rozwiązań dopuszczalnych

Bardziej szczegółowo

Funkcje liniowe i wieloliniowe w praktyce szkolnej. Opracowanie : mgr inż. Renata Rzepińska

Funkcje liniowe i wieloliniowe w praktyce szkolnej. Opracowanie : mgr inż. Renata Rzepińska Funkcje liniowe i wieloliniowe w praktyce szkolnej Opracowanie : mgr inż. Renata Rzepińska . Wprowadzenie pojęcia funkcji liniowej w nauczaniu matematyki w gimnazjum. W programie nauczania matematyki w

Bardziej szczegółowo

Programowanie celowe #1

Programowanie celowe #1 Programowanie celowe #1 Problem programowania celowego (PC) jest przykładem problemu programowania matematycznego nieliniowego, który można skutecznie zlinearyzować, tzn. zapisać (i rozwiązać) jako problem

Bardziej szczegółowo

Zadanie niezbilansowane. Gliwice 1

Zadanie niezbilansowane. Gliwice 1 Zadanie niezbilansowane 1 Zadanie niezbilansowane Przykład 11 5 3 8 2 A 4 6 4 2 B 9 2 3 11 C D E F G dostawcy odbiorcy DOSTAWCY: A: 15 B: 2 C: 6 ODBIORCY: D: 8 E: 3 F: 4 G: 5 2 Zadanie niezbilansowane

Bardziej szczegółowo

Excel - użycie dodatku Solver

Excel - użycie dodatku Solver PWSZ w Głogowie Excel - użycie dodatku Solver Dodatek Solver jest narzędziem używanym do numerycznej optymalizacji nieliniowej (szukanie minimum funkcji) oraz rozwiązywania równań nieliniowych. Przed pierwszym

Bardziej szczegółowo

Optymalizacja liniowa w liczbach całkowitych (PLC)

Optymalizacja liniowa w liczbach całkowitych (PLC) * ) && &&& % ( - &&(() n && - n% ( ' n!"#$ Optymalizacja liniowa w liczbach całkowitych (PLC) (( & ' nn nn Zadanie (-) nazywamy zadaniem regularnym Zadanie (-) nazywamy zadaniem PLC Stosownie do tego podziału

Bardziej szczegółowo

METODY OBLICZENIOWE OPTYMALIZACJI zadania

METODY OBLICZENIOWE OPTYMALIZACJI zadania METODY OBLICZENIOWE OPTYMALIZACJI zadania Przedstawione dalej zadania rozwiąż wykorzystując Excel/Solver. Zadania 8 są zadaniami optymalizacji liniowej, zadania 9, dotyczą optymalizacji nieliniowej. Przed

Bardziej szczegółowo

( 1) ( ) 16 Warunki brzegowe [WB] Funkcja celu [FC] Ograniczenia [O] b i ( 2) ( ) ( ) 14. FC max. Kompletna postać bazowa

( 1) ( ) 16 Warunki brzegowe [WB] Funkcja celu [FC] Ograniczenia [O] b i ( 2) ( ) ( ) 14. FC max. Kompletna postać bazowa Standardowe zadanie PL () Należy zaplanować produkcję zakładu w pewnym tygodniu w taki sposób, aby osiągnięty zysk był maksymalny. akład może wytwarzać dwa wyroby: P i P. Ich produkcja jest limitowana

Bardziej szczegółowo

A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 1

A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 1 A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe ZAGADNIENIE DUALNE Z każdym zagadnieniem liniowym związane jest inne zagadnienie nazywane dualnym. Podamy teraz teraz jak budować zagadnienie

Bardziej szczegółowo

Macierze. Rozdział Działania na macierzach

Macierze. Rozdział Działania na macierzach Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy

Bardziej szczegółowo

Dodatek Solver Teoria Dodatek Solver jest częścią zestawu poleceń czasami zwaną narzędziami analizy typu co-jśli (analiza typu co, jeśli?

Dodatek Solver Teoria Dodatek Solver jest częścią zestawu poleceń czasami zwaną narzędziami analizy typu co-jśli (analiza typu co, jeśli? Dodatek Solver Teoria Dodatek Solver jest częścią zestawu poleceń czasami zwaną narzędziami analizy typu co-jśli (analiza typu co, jeśli? : Proces zmieniania wartości w komórkach w celu sprawdzenia, jak

Bardziej szczegółowo

10. Wstęp do Teorii Gier

10. Wstęp do Teorii Gier 10. Wstęp do Teorii Gier Definicja Gry Matematycznej Gra matematyczna spełnia następujące warunki: a) Jest co najmniej dwóch racjonalnych graczy. b) Zbiór możliwych dezycji każdego gracza zawiera co najmniej

Bardziej szczegółowo

OPTYMALIZACJA W LOGISTYCE

OPTYMALIZACJA W LOGISTYCE OPTYALIZACJA W LOGISTYCE Zagadnienie transportowe 2 dr Zbigniew Karwacki Katedra Badań Operacyjnych UŁ Zagadnienie transportowe z kryterium czasu I rodzaju () Jeżeli w modelu klasycznego zagadnienia transportowego

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Programowanie liniowe Mirosław Sobolewski Wydział Matematyki, Informatyki i Mechaniki UW wykład z algebry liniowej Warszawa, styczeń 2010 Mirosław Sobolewski (UW) Warszawa, 2009 1 / 15 Homo oeconomicus=

Bardziej szczegółowo

Rozwiązywanie układów równań liniowych

Rozwiązywanie układów równań liniowych Rozwiązywanie układów równań liniowych Marcin Orchel 1 Wstęp Jeśli znamy macierz odwrotną A 1, to możęmy znaleźć rozwiązanie układu Ax = b w wyniku mnożenia x = A 1 b (1) 1.1 Metoda eliminacji Gaussa Pierwszy

Bardziej szczegółowo