Siecią nazywać będziemy skończony graf
Zagadnienie przepływy w sieciach ( o nieograniczonej przepustowości ) polega na znalezieniu schematu przepływu o minimalnych kosztach, wyrównującego potencjały.
Modelem matematycznym takiego zagadnienia będzie:
Jako zmienne wybieramy zbiór
Zauważmy, macierz opisująca powyższe równania ma wiersze indeksowane węzłami a kolumny, z prawej strony kreski, indeksowane strzałkami
Jak zsumujemy wszystkie równania, dla grafu nieukorzenionego, lewa strona zredukuje się do 0 i otrzymamy:
A zatem ten układ równań jest zależny i jeżeli suma potencjałów jest niezerowa to jest sprzeczny. Zagadnienie gdy
Zajmijmy się teraz zrównoważonym zadaniem przepływu w sieci, która jest grafem spójnym. Okazuje się, że w takim przypadku po ukorzenieniu grafu w dowolnym wierzchołku równania stają się liniowo niezależne a każdy układ bazowy jest wyznaczony przez pewne drzewo spinające. Dokładniej.
Niech
a) Zbiór równań
b) Jeżeli kolumny o indeksach
Twierdzenie 14.1 w dalszej części będziemy używać poprzez następujący wniosek.
Niech TS będzie tablicą sympleks opisującą zagadnienie przepływu w sieci spójnej. Wówczas graf powstały przez odrzucenie strzałki indeksujących zmienne niebazowe jest drzewem spinającym.
Do dowodu części b) twierdzenia 14.1 użyjemy następującego lematu.
Niech
Dowód lematu. Wprowadźmy orientację na cyklu
Badamy kolumnę
W j - tym wierszu kolumny
Zatem w j - tym wierszu kolumny
Dowód twierdzenia.
a) Wybieramy dowolne drzewo spinające
ad b) Po odrzuceniu korzenia otrzymujemy podsieć
Algorytm sympleks w sieciach.
Algorytm ten będziemy ilustrować przykładem.
Dane zadanie opisane grafem
Liczby w węzłach opisują potencjały zaś na strzałkach koszty.
Jak widać suma potencjałów jest zerowa więc zadanie jest zbilansowane.
Ukorzeniamy graf w węźle
Do rozpoczęcia algorytmu potrzebujemy wierzchołek startowy. Niech będzie nim następujące drzewo spinające:
Czerwone liczby oznaczają wartości zmiennych czyli liczba towaru przepływająca przez strzałkę.
Krok 1 TEST OPTYMALNOŚCI
Budujemy pomocnicze drzewo kosztów. Koszty podróży po strzałkach są te same a liczby w węzłach obrazują koszt spływu jednostki towaru przez korzeń. W przypadku podróży pod prąd koszt strzałki liczymy ze znakiem minus.
Teraz wyliczamy koszty zredukowane.
Liczymy koszty zredukowane zgodnie z zasadą: Na węźle
Koszt zredukowany strzałki
Jeżeli wszystkie strzałki mają koszt nieujemny to STOP badany schemat jest optymalny.
Krok 2. WYBÓR KOLUMNY POPRAWIAJĄCEJ
Wybieramy teraz strzałkę o ujemnym koszcie i dołączamy ją do drzewa. W naszym przykładzie jest to strzałka zaznaczona linią przerywaną z
Krok 3. WYBÓR ELEMENTU CENTRALNEGO
Pojawia się cykl po którym staramy się przepchnąć jak najwięcej towaru. Dołączoną strzałką podróżuje
Teraz z grafu wyrzucamy jedną ze strzałek po której nie płynie towar. W naszym przykładzie jest to strzałka z
GO TO krok 1
Budujemy drugie drzewo kosztów.
i wyliczamy koszty zredukowane drugiego schematu przepływu.
Tym razem ujemny koszt ma strzałka z
W naszym przykładzie
Znowu liczymy koszty zredukowane.
[0.5]KZ3Koszty zredukowane 3
Są one nieujemne więc schemat trzeci jest optymalny.
Dwufazowa metod sympleks.
Dana jest sieć
Przypadek niezbilansowany.
Przypadek niezbilansowany sprowadzamy do zbilansowanego wprowadzając sztuczny węzeł o potencjale przeciwnym do sumy pozostałych potencjałów i strzałki łączące sztuczny węzeł ze wszystkimi pozostałymi. Jeżeli sztuczny węzeł ma potencjał dodatni to wszystkie sztuczne strzałki z niego wychodzą. Jeżeli ujemny to wszystkie sztuczne strzałki mają w nim swój koniec. Dalej stosujemy prosty algorytm sympleks.
W sieci o strzałkach z nieograniczonymi przepustowościami aktualnie realizowany jest następujący schemat przepływów:
[0.5]ZadPSchemat przepływu
Wyznacz przepływ o minimalnym koszcie za pomocą algorytmu sympleks.
Przykład i zadanie w tym wykładzie pochodzą z egzaminów prof. W. Ogryczaka.
Treść automatycznie generowana z plików źródłowych LaTeXa za pomocą oprogramowania wykorzystującego LaTeXML.
strona główna | webmaster | o portalu | pomoc
© Wydział Matematyki, Informatyki i
Mechaniki UW, 2009-2010. Niniejsze materiały są udostępnione bezpłatnie na licencji Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 3.0 Polska.
Projekt współfinansowany przez Unię Europejską w ramach
Europejskiego Funduszu Społecznego.
Projekt współfinansowany przez Ministerstwo Nauki i Szkolnictwa Wyższego i przez Uniwersytet Warszawski.