Rówoległe algorytmy genetyczne w zastosowaniu do problemu kolor

advertisement
POLITECHNIKA KRAKOWSKA
WYDZIAŁ INŻYNIERII ELEKTRYCZNEJ i KOMPUTEROWEJ
Katedra Automatyki i Technik Informacyjnych
Algorytmy i Struktury Danych
www.pk.edu.pl/~zk/AISD_HP.html
Wykładowca:
dr inż. Zbigniew Kokosiński
[email protected]
Wykład 2: Algorytmy grafowe I
1. Przeszukiwanie grafu w głąb.
2. Przeszukiwanie grafu wszerz.
3. Grafy ważone. Minimalne drzewa rozpinające (MST).
4. Algorytmy Prima (kolejka priorytetowa) i Kruskala.
5. Grafy ważone. Wyszukiwanie ścieżek. Algorytm
Dijkstry w grafie skierowanym dla wag nieujemnych.
6. Maksymalne skojarzenia w grafach.
7. Problem stabilnych małżeństw.
8. Przepływy w sieciach.
9. Algorytm DMKM do wyznaczania maksymalnego
przepływu w sieci.
Przeszukiwanie
grafu w głąb
Przeszukiwanie
grafu wszerz
Minimalne drzewo
rozpinające grafu
Algorytm Prima
(kolejka priorytetowa)
Minimalne drzewo
rozpinające grafu
Algorytm Kruskala
Algorytm Dijkstry
Skojarzenia w grafach
Skojarzenia w grafach dwudzielnych
Problem stabilnych małżeństw
Przepływy w sieciach - założenia
Przepływy w sieciach - przykład
Algorytm DMKM
1. Cechując wierzchołki od s do t numerami kolejnych warstw
znajdź sieć warstwową GL złożoną z połączeń użytecznych z x do
y grafu G (czyli z łuków (x,y) z bieżącym przepływem mniejszym
od przepustowości, ewentualnie z łuków (y,x) z niezerowym
przepływem z y do x).
2. Dla każdego wierzchołka sieci GL wyznacz jego potencjał
(minimum z jego potencjału wejściowego i wyjściowego).
3. Wierzchołek o najmniejszym potencjale staje się wierzchołkiem
odniesienia, przez który prowadzi ścieżka z s do t z przepływem
równym temu potencjałowi.
4. Usuń z GL wszystkie łuki nasycone i wierzchołki o potencjale 0.
5. Powtarzając kroki 3-4 wyznacz przepływ nasycający sieci GL
(superpozycja przepływów częściowych)
6. Powtarzaj kroki 1-5, aż utworzenie kolejnej sieci warstwowej GL
w G będzie niemożliwe.
7. Przepływ maksymalny w G jest superpozycją przepływów
nasycających we wszystkich sieciach warstwowych.
Pojęcie sieci warstwowej
Wyznaczanie
maksymalnego
przepływu
w sieci
warstwowej przykład
Wyznaczanie
maksymalnego
przepływu
w sieci
warstwowej przykład
Algorytm
DMKM –
wydzielenie
pierwszej
sieci
warstwowej
Algorytm
DMKM –
wydzielenie
drugiej sieci
warstwowej
Algorytm
DMKM –
wydzielenie
drugiej sieci
warstwowej
Algorytm
DMKM –
wydzielenie
trzeciej sieci
warstwowej
Źródła wzorów, przykładów i rysunków :
1. Sedgewick R. : Algorithms in C, Addison-Wesley 1990
2. Sysło M.M., Deo N., Kowalik J.S. : Algorytmy optymalizacji dyskretnej,
WN-T 1995
Download