From Wikipedia, the free encyclopedia
Toky v sítích jsou v rámci teorie grafů předmětem studia teorie sítí.
Problémy řešené v rámci zkoumání toků v sítích jsou motivovány praktickými úlohami o propustnosti - typickým příkladem je propustnost železniční, silniční nebo vodovodní sítě. Tomu odpovídá i používaná terminologie.
Síť obsahuje hrany - úseky potrubí, úseky silnice mezi dvěma křižovatkami, které mají danou svou maximální propustnost - kapacitu.
Síť obsahuje vrcholy - místa, kde se setkává více úseků potrubí, případně silniční křižovatky nebo železniční uzly. Z pohledu řešení jednotlivých úloh obvykle pracujeme v uzavřeném konečném systému toků, kde tedy existují zdroje - vrcholy, kde tok vzniká a tzv. stoky - vrcholy, kde tok zaniká. Ostatní vrcholy, označované jako vnitřní, jsou místa, kudy tok probíhá a kde musí přitékat přesně tolik, kolik odtéká.
Síť definujeme jako ohodnocený orientovaný graf s hodnotící funkcí , která udává tzv. kapacitu každé hrany.
Na tomto grafu je množina vrcholů rozdělena na tři disjunktní množiny: zdroje, stoky a vnitřní vrcholy .
Na každé hraně grafu můžeme pak definovat tzv. tok, kladnou veličinu určenou funkcí . Aby mohla být výše uvedená funkce nazvána tokem, musí splňovat následující podmínky:
Základní úlohou je najít maximální tok v grafu. Maximalitou se v tomto kontextu myslí „co nejvíc využít propustnosti“, tj. navrhnout funkci toku tak, aby odtok ze zdrojů byl maximální možný.
Tato úloha může být různým způsobem modifikována - mohu mít například navíc určenou i vrcholovou kapacitu , kterou nesmí překročit odtok ani přítok na jednotlivých vrcholech, tj. a obdobně i pro odtok.
Zajímavá a jednoduchá myšlenka převádí úlohu s mnoha zdroji a mnoha stoky na úlohu s jedním zdrojem a jedním stokem:
Zaveďme si do grafu dva nové vrcholy z a s, které označíme za virtuální zdroj a virtuální stok. Vrchol z spojme hranou se všemi zdroji původního grafu a těmto hranám přiřadím nekonečnou kapacitu, všechny stoky původního grafu spojme s vrcholem s a i těm přiřaďme nekonečnou kapacitu. Nakonec ještě všechny původní zdroje a stoky označím za vnitřní vrcholy nově vzniklého grafu, takže tento nový graf bude mít a . Dá se poměrně snadno nahlédnout, že maximální tok v tomto grafu zúžený na hrany původního grafu je maximálním tokem v původním grafu.
Fordova-Fulkersonova věta uvádí do vztahu maximální tok a minimální řez oddělující zdroj od stoku. Vychází z ní i myšlenka základního způsobu hledání maximálního toku, Fordova-Fulkersonova algoritmu. Jeho lepší variantou je Edmondsův-Karpův algoritmus, dalšími možnými přístupy k řešení jsou Dinicův algoritmus a Goldbergův algoritmus. Pro sítě odpovídající rovinným grafům je možné použít také Algoritmus nejhořejší cesty.
Toky v sítích mají široké spektrum aplikací. Nejčastěji se používají pro modelování skutečných sítí (vodovodních, dopravních, elektrických, počítačových a jiných) a zkoumání jejich vlastností (zejména maximální kapacity jejich segmentů).
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.