Zaawansowane algorytmy i struktury danych/Ćwiczenia 9: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
m Zastępowanie tekstu – „ </math>” na „</math>”
m Zastępowanie tekstu – „.</math>” na „</math>”
 
Linia 23: Linia 23:
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie'''  
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie'''  
<div class="mw-collapsible-content" style="display:none">
<div class="mw-collapsible-content" style="display:none">
Problem maksymalnego przepływu z wieloma źródłami i ujściami można w prosty sposób zredukować do standardowego problemu przepływu i rozwiązać przy pomocy dowolnego algorytmu dla tego problemu. W tym celu musimy dodać dodatkowe superźródło <math>s</math> i krawędzie <math>(s,s_i)</math> o przepustowości <math>c(s,s_i) = \infty.</math>, dla <math>i = 1,\ldots,m</math>. Dodajemy także superujście <math>t</math> wraz z krawędziami <math>(t_i,t)</math> o przepustowości <math>c(t_i,t)=\infty</math> dla <math>i=1,\ldots, n</math>. Widzimy teraz, że każdy przepływ w sieci oryginalnej odpowiada przepływowi w nowo utworzonej sieci.
Problem maksymalnego przepływu z wieloma źródłami i ujściami można w prosty sposób zredukować do standardowego problemu przepływu i rozwiązać przy pomocy dowolnego algorytmu dla tego problemu. W tym celu musimy dodać dodatkowe superźródło <math>s</math> i krawędzie <math>(s,s_i)</math> o przepustowości <math>c(s,s_i) = \infty</math>, dla <math>i = 1,\ldots,m</math>. Dodajemy także superujście <math>t</math> wraz z krawędziami <math>(t_i,t)</math> o przepustowości <math>c(t_i,t)=\infty</math> dla <math>i=1,\ldots, n</math>. Widzimy teraz, że każdy przepływ w sieci oryginalnej odpowiada przepływowi w nowo utworzonej sieci.
</div>
</div>
</div>
</div>

Aktualna wersja na dzień 11:27, 5 wrz 2023

Zadanie 1

Udowodnij Lemat 1 z tego wykładu.

Rozwiązanie

Zadanie 2

W problemie maksymalnego przepływu z wieloma źródłami i ujściami mamy daną sieć przepływową G, zbiór źródeł s1,,sm oraz zbiór ujść t1,,tn i chcemy wyznaczyć maksymalny sumaryczny przepływ ze źródeł s1,,sm do ujść t1,,tn. Zaproponuj efektywny algorytm rozwiązujący ten problem?

Rozwiązanie

Zadanie 3

Załóżmy, że w problemie maksymalnego przepływu z wieloma źródłami i ujściami, z każdego źródła si wypływa dokładnie pi jednostek przepływu. Natomiast do każdego ujścia ti musi wpłynąć dokładnie qi jednostek przepływu tak, że i=1mpi=i=1nqi. Pokaż jak sprowadzić problem znalezienia przepływu spełniającego te dodatkowe założenia do problemu znajdowania przepływu z jednym ujściem i źródłem?

Rozwiązanie

Zadanie 4

Spójność krawędziową nieskierowanego grafu definiujemy jako minimalną liczbę krawędzi k które muszą zostać usunięte z grafu żeby przestał on być spójny. Na przykład spójność krawędziowa drzewa wynosi 1, natomiast spójność krawędziowa cyklu wynosi 2. Pokaż jak wyznaczyć spójność krawędziową nieskierowanego grafu G=(V,E) poprzez |V| krotne uruchomienie algorytmu wyznaczającego maksymalny przepływ w grafie na sieciach przepływowych o O(|V|) wierzchołkach i O(|E|) krawędziach.

Rozwiązanie