Přeskočit na hlavní obsah
Přeskočit hlavičku
Ukončeno v akademickém roce 2010/2011

Grafové algoritmy

Typ studia navazující magisterské
Jazyk výuky čeština
Kód 460-4039/01
Zkratka GAL
Název předmětu česky Grafové algoritmy
Název předmětu anglicky Graph Algorithms
Kreditů 4
Garantující katedra Katedra informatiky
Garant předmětu RNDr. Eliška Ochodková, Ph.D.

Osnova předmětu

Přednášky:
1. Reprezentace grafů - graficky, maticově, seznamem hran nebo seznamem vrcholů a jejich sousedů; volba reprezentace grafu v závislosti na aplikaci. Prohledávání grafů - základní algoritmus, prohledávání do šířky a do hloubky; zjišťování dostupnosti vrcholů.
2. Nejkratší cesty - základní algoritmus, modifikovaný alg., Bellman-Fordův algoritmus; úpravy algoritmů při hledání nejdelších cest. Topologické uspořádání vrcholů a hran - užití topolog. uspořádání k hledání nejkratších cest; test acykličnosti grafu.
3. Souvislé a silně souvislé grafy. Komponenty souvislosti - pomocí mocnin matice sousednosti (jejich součtová matice); Floydův algoritmus - testování existence cyklů se zápornou cenou.
4. Kostra grafu - Jarníkův a Borůvkův algoritmus. Souvislost s nejkratšími cestami v neorientovaném grafu. Kruskalův a Primův algoritmus.
5. Párování v bipartitních grafech - maximální párování, nejlevnější párování v bipartitních grafech. Maximální párování v obecných grafech - redukce grafu.
6. Eulerovské tahy - podmínky existence; algoritmus pro nalezení eulerova tahu v grafu (pokud existuje); úloha čínského pošťáka.
7. Vrcholové a hranové barvení grafu. Rovinné grafy.
8. Toky v sítích - maximální tok - ekvivalence úlohy maximálního párování v bipartitním grafu a maximálního toku v specifické síti; Ford-Fulkersonův algoritmus; přípustný tok v síti. Nejlevnější cirkulace v síti.
9. Heuristické algoritmy - izomorfismus, kliky a nezávislé množiny, Hamiltonovský cyklus, úloha obchodního cestujícího.
10. Komplexní sítě, jejich typy a vlastnosti (small world effect, clustering, scale-free nets).
11. Modely sítí (náhodné sítě, Watts-Strogatz model, bezeškálové sítě).
12. Chyby, útoky, robustnost, stabilita, hledání v sítích, ...

Cvičení:
Demonstrace jednotlivých algoritmů na konkrétních příkladech.
Reprezentace grafů, prohledávání grafů.
Nejkratší cesty, topologické uspořádání vrcholů a hran, souvislé a silně souvislé grafy, komponenty souvislosti
Kostra grafu. Eulerovské tahy
Párování v bipartitních grafech, maximální párování v obecných grafech.
Vrcholové a hranové barvení grafu. Rovinné grafy.
Toky v sítích, nejlevnější cirkulace v síti.
Heuristické algoritmy - nezávislé množiny, Hamiltonovský cyklus, úloha obchodního cestujícího.


Projekty:
Cílem projektu je vytvořit aplikaci demonstrující schopnost studenta porozumět grafovým algoritmům a implementovat je.

Povinná literatura

1. Barabási A.-L.: V pavučině sítí, Paseka 2005
2. M. E. J. Newman: The structure and function of complex networks, SIAM Reviews, 45(2): 167-256, 2003
3. A.L. Barabasi: Scale Free Networks
4. S. H. Strogatz: Exploring Complex Networks
5. R. Albert and L.A. Barabasi: Statistical Mechanics of Complex Networks, Rev. Mod. Phys. 74, 47-97 (2002).
6. Ochodková E.: Výuková opora předmětu (grant FR 1719/2003)
7. Večerka A.: Grafy a grafove algoritmy, PřF UP Olmouc, 2007
8. Nešetřil J.: Teorie grafů, SNTL, Praha, 1979.
9. Plesník J.: Grafové algoritmy, VEDA, Bratislava, 1983.
10. Demel J.: Grafy, SNTL, Praha, 1989
11. McHugh J. A.: Algorithmic graph theory, PRENTICE HALL, 1990.
12. Unčovský L. a kol.: Modely sieťovej analýzy, ALFA, Bratislava, 1991.
13. Cormen T.H., Leiserson Ch.E., Rivest R.L.: Introduction to algorithms, The MIT Press, 1990.
14. Kučera L.: Kombinatorické algoritmy, SNTL Praha, 1991
15. Bang-Jensen J., Guitn G.: Digraphs, Theory, Algorithms and Applications, Springer 2002
16. Jungnickel D.: Graphs, Networks and Algorithms, Springer 2005

Doporučená literatura

1. The Stony Brook Algorithm Repository, http://www.cs.sunysb.edu/~algorith/
2. Journal of Graph Algorithms and Applications, ISSN: 1526-1719 , http://www.cs.brown.edu/publications/jgaa/