2 Tokyvsítích. Stručný přehled lekce

Podobné dokumenty
5 Orientované grafy, Toky v sítích

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

III přednáška Toky v sítích

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez

1. Toky, řezy a Fordův-Fulkersonův algoritmus

4 Pojem grafu, ve zkratce

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

TOKY V SÍTÍCH II. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

6 Simplexová metoda: Principy

Přednáška 3: Limita a spojitost

Stromové rozklady. Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom,

TGH10 - Maximální toky

Operační výzkum. Síťová analýza. Metoda CPM.

3. Grafy a matice. Definice 3.2. Čtvercová matice A se nazývá rozložitelná, lze-li ji napsat ve tvaru A =

autorovu srdci... Petr Hliněný, FI MU Brno 1 FI: MA010: Průnikové grafy

5 Minimální kostry, Hladový algoritmus

Algoritmus pro hledání nejkratší cesty orientovaným grafem

Matematická analýza pro informatiky I. Limita posloupnosti (I)

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

Dijkstrův algoritmus

Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady.

8 Přednáška z

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice

Kapitola Základní množinové pojmy Princip rovnosti. Dvě množiny S a T jsou si rovny (píšeme S = T ) prvek T je také prvkem S.

PQ-stromy a rozpoznávání intervalových grafů v lineárním čase

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová

PLANARITA A TOKY V SÍTÍCH

Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť.

IB112 Základy matematiky

Matematická analýza pro informatiky I. Limita funkce

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

1 Lineární prostory a podprostory

H {{u, v} : u,v U u v }

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

FIT ČVUT MI-LOM Lineární optimalizace a metody. Dualita. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu (reg. č. CZ.1.07/2.2.00/28.

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

Jan Březina. Technical University of Liberec. 21. dubna 2015

Diskrétní matematika. DiM /01, zimní semestr 2016/2017

TGH06 - Hledání nejkratší cesty

07 Základní pojmy teorie grafů

Úloha - rozpoznávání číslic

Úvod do teorie her

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

Jan Březina. Technical University of Liberec. 30. dubna 2013

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Vzdálenost uzlů v neorientovaném grafu

LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25

1 Báze a dimenze vektorového prostoru 1

1.3. Číselné množiny. Cíle. Průvodce studiem. Výklad

Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT

Báze a dimenze vektorových prostorů

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

4EK201 Matematické modelování. 2. Lineární programování

p 2 q , tj. 2q 2 = p 2. Tedy p 2 je sudé číslo, což ale znamená, že

Kapitola 1. Úvod. 1.1 Značení. 1.2 Výroky - opakování. N... přirozená čísla (1, 2, 3,...). Q... racionální čísla ( p, kde p Z a q N) R...

Algoritmizace prostorových úloh

Zobecněný Riemannův integrál

Hlavolamy a teorie grafů

Množiny, relace, zobrazení

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

PŘEDNÁŠKA 2 POSLOUPNOSTI

Limita a spojitost funkce a zobrazení jedné reálné proměnné

Lineární algebra : Lineární prostor

Zavedení a vlastnosti reálných čísel

Vrcholová barevnost grafu

Třída PTIME a třída NPTIME. NP-úplnost.

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Limita a spojitost LDF MENDELU

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Kapitola 11. Vzdálenost v grafech Matice sousednosti a počty sledů

Co je to univerzální algebra?

Lineární algebra : Metrická geometrie

1. Několik základních pojmů ze středoškolské matematiky. Na začátku si připomeneme následující pojmy:

Matematická logika. Miroslav Kolařík

Definice (Racionální mocnina). Buď,. Nechť, kde a a čísla jsou nesoudělná. Pak: 1. je-li a sudé, (nebo) 2. je-li liché, klademe

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout

Výroková a predikátová logika - III

3 Množiny, Relace a Funkce

Riemannův určitý integrál

Matematická logika. Miroslav Kolařík

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

4 Stromy a les. Definice a základní vlastnosti stromů. Kostry grafů a jejich počet.

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení.

Posloupnosti a jejich konvergence

Hledáme efektivní řešení úloh na grafu

Řízení projektů. Konstrukce síťového grafu pro řízení projektů Metoda CPM Metoda PERT

10 Podgrafy, isomorfismus grafů

9 Kolmost vektorových podprostorů

13. Lineární programování

Limita a spojitost funkce. 3.1 Úvod. Definice: [MA1-18:P3.1]

x + 6 2x 8 0. (6 x 0) & (2x 8 > 0) nebo (6 x 0) & (2x 8 < 0).

Lineární programování

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Matematika I 2a Konečná pravděpodobnost

Matematika pro informatiky

5. Lokální, vázané a globální extrémy

Transkript:

Tokyvsítích Nyní se podíváme na jinou oblast tzv. síťových úloh: Jedná se třeba o potrubní sítě přepravující vodu nebo plyn, o dopravní síť silnic s přepravou zboží, nebo třeba o internet přenášející data. Obvykle nás zajímá problém přenést z daného zdroje do daného cíle čili stoku co nejvíce této substance, za omezujících podmínek kapacit jednotlivých přepravních cest. z 5 s 5 Stručný přehled lekce Definice sítě(ohodnoceného orientovaného grafu) a toku v ní. Algoritmus nenasycených cest(ford-fulkersonův). Důsledky pro souvislost, párování a výběr reprezentantů. Princip dobré charakterizace úloh. Petr Hliněný, FI MU IA0 OU : Toky v sítích

. Definice sítě Základní strukturou pro reprezentaci sítí je orientovaný graf. Vrcholy grafu modelují jednotlivé uzly sítě a hrany jejich spojnice. Definice.. Síť ječtveřice S=(G, z, s, w),kde G je orientovaný graf, vrcholy z V(G), s V(G)jsouzdrojastok, w: E(G) R + jekladnéohodnoceníhran,zvanékapacitahran. z 5 s 5 Poznámka:Vpraximůžebýtzdrojůastokůvíce,alevdefinicistačípouzejedenzdroja stok,zněhož/donějžvedouhranydoostatníchzdrojů/stoků.(dokoncepakrůznézdroje a stoky mohou mít své kapacity.) Petr Hliněný, FI MU IA0 OU : Toky v sítích

Značení: Pro jednoduchost píšeme ve výrazech znak e v pro hranu e přicházející dovrcholu vae vprohranu evycházejícízv. Definice.. Tok vsíti S=(G, z, s, w) jefunkce f: E(G) R + 0 splňující e E(G): 0 f(e) w(e), v V(G), v z, s: f(e)= f(e). e v e v Velikosttoku fjedánavýrazem f = f(e) f(e). e z Značení: Tok a kapacitu hran v obrázku sítě budeme zjednodušeně zapisovat ve formátu F/C,kde FjehodnotatokunahraněaCjejejíkapacita. Neformálně tok znamená, kolik substance je každou hranou zrovna přenášeno(ve směru této hrany, proto hrany musí být orientované). Tok je pochopitelně nezáporný a dosahuje nejvýše dané kapacity hrany. /5 e z / 0/ 0/ / z 0/ 0/ s / 0/ / /5 Ve vyobrazeném příkladě vede ze zdroje vlevo do stoku vpravo tok o celkové velikosti 5. Petr Hliněný, FI MU IA0 OU : Toky v sítích

Poznámka: Obdobně se dá velikost toku definovat u stoku, neboť ( ) 0= (f(e) f(e))= f(e) f(e)= f(e) f(e). e v e v v e v v=z,s (Dvojité sumy uprostřed předchozího vztahu nabývají stejných hodnot pro všechny vrcholy kromě z a s dle definice toku.) Proto velikost toku počítaná u zdroje je rovna opačné velikosti toku počítaného u stoku. e v e v Petr Hliněný, FI MU IA0 OU : Toky v sítích

. Hledání maximálního toku Naším úkolem je najít co největší tok v dané síti. Pro jeho nalezení existují jednoduché a velmi rychlé algoritmy. Úloha..Omaximálnímtokuvsíti Jedánasíť S=(G, z, s, w)anašimúkolemjeproninajítconejvětšítokzezdroje z do stoku s vzhledem k ohodnocení w. Tokvelikosti5uvedenývukázcevpředchozíčástinebyloptimální,neboťvtésítinajdemei tok velikosti 6: /5 / 0/ 0/ z 0/ 0/ 0/ / /5 / / s Petr Hliněný, FI MU 5 IA0 OU : Toky v sítích

/5 / 0/ / z 0/ 0/ 0/ / /5 / / s Jakvšakpoznáme,ževětšítokjižvdanésítineexistuje?Vtétokonkrétníukázcetonení obtížné,vidímetotiž,žeobědvěhranypřicházejícídostokumajísoučetkapacit++6, takževícenež6dostokuanipřitéctnemůže. V obecnosti lze použít obdobnou úvahu, kdy najdeme podmnožinu hran, které nelze tokem obejít a které v součtu kapacit dají velikost našeho toku. Existuje však taková množina hran vždy? Odpověď nám dá následující definice a věta. Petr Hliněný, FI MU 6 IA0 OU : Toky v sítích

Definice.. Řez vsíti S=(G, z, s, w) jepodmnožinahran C E(G)taková,ževpodgrafu G C(tj.poodebráníhran C z G)nezbudežádnáorientovanácestaze zdo s. Velikostířezu CrozumímesoučetkapacithranzC,tj. C = e C w(e). Věta.5. Maximální velikost toku v síti je rovna minimální velikosti řezu. Na následujícím obrázku vidíme trochu jinou síť s ukázkou netriviálního minimálního řezu velikosti 5, naznačeného svislou čárkovanou čarou. Všimněte si dobře, že definice řezu mluví o přerušení všech orientovaných cest ze z do s, takže do řezu stačí započítat hrany jdoucí přes svisloučáruod zdo s,alenehranujdoucízpět.protojevelikostvyznačenéhořezu+=5. z s Poznámka: Tato věta poskytuje tzv. dobrou charakterizaci problému maximálního toku: Když už nalezneme maximální tok, tak je pro nás vždy snadné dokázat, že lepší tok není, nalezením příslušného řezu o stejné velikosti. Přitom toto zdůvodnění řezem můžeme směle ukázat i někomu, kdo se vůbec nevyzná v matematice. Petr Hliněný, FI MU 7 IA0 OU : Toky v sítích

Definice:Mějmesíť Savnítok f.nenasycenácesta(v Svzhledemkf)jeneorientovanácestavGzvrcholu udovrcholu v(obvykleze zdo s),tj.posloupnostnavazujících hran e, e,..., e m,kde f(e i ) < w(e i )pro e i vesměruzudo vaf(e i ) >0pro e i v opačném směru. Hodnotě w(e i ) f(e i )prohrany e i vesměruzudo vahodnotě f(e i )prohrany e i vopačnémsměruříkámerezervakapacityhran e i.nenasycenácestajetudížcestas kladnými rezervami kapacit všech hran. Zde vidíme příklad nenasycené cesty ze zdroje do stoku s minimální rezervou kapacity +. rezerva kapacity: z / / / / / + + + + + Všimnětesidobře,žecestaneníorientovaná,takžehranynaníjsouvobousměrech. s Petr Hliněný, FI MU 8 IA0 OU : Toky v sítích

Algoritmus.6. Ford Fulkersonův pro tok v síti vstup síť S=(G, z, s, w); tok f 0; do { prohledáváním grafu najdeme množinu U vrcholů G, do kterých se dostaneme ze z po nenasycených cestách; if ( s U) { P = (výšenalezená)nenasycenácestavsze zdo s; zvětšímetok fominimálnírezervukapacityhranvp; } while( s U); výstup vypíšeme maximální tok f; výstup vypíšememin.řezjakomnožinuhranvedoucíchzudo V(G) U. z s Petr Hliněný, FI MU 9 IA0 OU : Toky v sítích

Důkaz správnosti Algoritmu.6: Prokaždýtok fakaždýřez Cvsíti Splatí f C.Jestližepozastaveníalgoritmu stokem fnaleznemevsíti Sřezostejnévelikosti C = f,jejasné,žejsmenašli maximálnímožnýtokvsíti S.ZároveňtímdokážemeiplatnostVěty.5. Takžestačídokázat,žepozastaveníalgoritmunastanerovnost f = C,kde Cje vypsanýřezmezi Uazbytkemgrafu G.Vezměmetok fv Sbeznenasycenécestyze z do s. Pak množina U z algoritmu neobsahuje s. Schematicky vypadá situace takto: f(e)=w(e) z U s f(e)=0 JelikožzUžádnénenasycenécestydálenevedou,mákaždáhrana e U(odcházející z U)plnýtok f(e)=w(e)akaždáhrana e U(přicházejícído U)tok f(e)=0. Velikosttoku fze zdo ssetakédápsátjako f = e U f(e) e U f(e)= e U f(e)= e C w(e)= C. To je přesně, co jsme chtěli dokázat o výsledném toku. Petr Hliněný, FI MU 0 IA0 OU : Toky v sítích

Důsledek.7. Pokud jsou kapacity hran sítě S celočíselné, optimální tok také vyjde celočíselně. Poznámka: Algoritmus pro celá čísla kapacit vždy skončí. Pro reálná čísla se ale dají najít extrémní případy, které nepovedou k řešení ani v limitě. Pro rychlý běh algoritmu je vhodné hledat nejkratší nenasycenou cestu, tj. prohledáváním sítě do šířky. V takové implementaci algoritmus dobře a rychle funguje i s reálnými kapacitami hran. Petr Hliněný, FI MU IA0 OU : Toky v sítích

. Zobecnění sítí a další aplikace Pojmysítěatokůvnílzezobecnitvněkolikasměrech.Mysizdestručněuvedemetři možnosti:.usítěmůžemezadatikapacityvrcholů. To znamená, že žádným vrcholem nemůže celkem protéct více než povolené množství substance. Takovou síť zdvojením vrcholů snadno převedeme na běžnou síť, ve které kapacity původních vrcholů budou uvedeny u nových hran spojujících zdvojené vrcholy. Viz neformální schéma: 5 z 5 z s 5 s 5 Petr Hliněný, FI MU IA0 OU : Toky v sítích

. Pro hrany sítě lze zadat také minimální kapacity, tedy dolní meze toku. (Například u potrubní sítě mohou minimální vyžadované průtoky vody garantovat, že nedojde k zanesení potrubí.) V této modifikaci úlohy již přípustný tok nemusí vůbec existovat. Takto zobecněná úloha je také snadno řešitelná, ale my se jí nebudeme zabývat.. V síti lze najednou přepravovat více substancí. To vede na problém tzv. vícekomoditních toků v síti. Tento problém je složitější a už není v obecnosti snadno řešitelný, a proto se jím nebudeme zabývat. Kromě uvedených(a podobných) zobecnění toků v sítích jsou velmi zajímavé i některé speciální formulace problému toků, které se vyskytují v možná i nečekaných oblastech. Více o tom napíšeme v dalších částech tohoto oddílu. Petr Hliněný, FI MU IA0 OU : Toky v sítích

Bipartitní párování Definice: Párování v(biparitním) grafu G je podmnožina hran M E(G) taková, že žádné dvě hrany z M nesdílejí koncový vrchol. Pojem(bipartitního) párování má přirozenou motivaci v mezilidských vztazích. Algoritmus.8. Nalezení bipartitního párování Prodanýbipartitnígraf Gsvrcholyrozdělenýmidomnožin A, B sestrojímesíť S následovně: A B z s Všechnyhranysítě Sorientujemeodzdrojedostokuapřiřadímejimkapacity.Nyní najdeme(celočíselný) maximální tok v S Algoritmem.6. Do párování vložíme ty hrany grafu G, které mají nenulový tok. Důkaz správnosti Algoritmu.8: Podle Důsledku.7 bude maximální tok celočíselný, a protokaždouhranoupotečebuď0nebo.tímbudouvybrányhranypárováníapodle zadaných kapacit nebudou sdílet koncové vrcholy. Petr Hliněný, FI MU IA0 OU : Toky v sítích

Vyšší grafová souvislost Představme si, že na libovolném grafu G definujeme zobecněnou síť tak, že kapacity všechhranavšechvrcholůpoložímerovnyvobousměrech.pakmáme: Lema.9.Nechť u, vjsoudvavrcholygrafu Gak>0jepřirozenéčíslo.Pakmezi vrcholy uavexistujevgaspoň kdisjunktníchcest,právěkdyžpoodebránílibovolných k vrcholůrůznýchod u, vzgzůstanou uavvestejnékomponentěsouvislosti zbylého grafu. To přímo ukazuje cestu k důkazu Mengerovy věty o násobné souvislosti grafu. Různí reprezentanti Definice: Nechť M, M,..., M k jsou neprázdné množiny. Systémem různých reprezentantůmnožin M, M,..., M k nazývámetakovouposloupnostrůznýchprvků (x, x,..., x k ),že x i M i pro i=,,..., k. Věta.0.(Hall) Nechť M, M,...,M k jsouneprázdnémnožiny.protytomnožiny existuje systém různých reprezentantů, právě když platí J {,,..., k}: M j J, j J neboli pokud sjednocení libovolné skupiny z těchto množin má alespoň tolik prvků, kolik množin je sjednoceno. Petr Hliněný, FI MU 5 IA0 OU : Toky v sítích

. Dobrá charakterizace V návaznosti na Definici., bod 5, se podíváme na tuto situaci: Dokazujeme optimalitu nalezeného řešení, tj. že lepší řešení našeho problému neexistuje, tím, že(názorně) ukážeme nějakou vhodnou vylučovací vlastnost. Tzn. něco, co jasně vylučuje existenci lepšího řešení způsobem pochopitelným i pro laika neobeznámeného hlouběji s problémem a naším řešením. (Poznamenáváme, že ne vždy je něco takového možné.) Přesněji řečeno, v Úloze. o přidělování pracovních úkolů platí, že existence přípustného přidělení k pracovníků na dané úkoly je ekvivalentní neexistenci okamžiku s více než k překrývajícími se úkoly. V přirozenějším jazyce totéž řekneme takto: k pracovníků na úkoly stačí, právě když nikdy není více než k současných úkolů. Fakt: Nechť I označuje průnikový graf intervalů daných pracovních úkolů. Pak přípustného přidělení k pracovníků na tyto úkoly je modelováno jako grafový homomorfismus p:i K k. Naopak l překrývajících se úkolů je v grafu I ukázáno jako grafový homomorfismus q: K l I.Takževeshrnutímůžemenašiúvahuformálnězapsat p:i K k q: K k+ I. Petr Hliněný, FI MU 6 IA0 OU : Toky v sítích

Vpřípadětokůvsítíchplatí,žetokvelikosti texistuje,právěkdyžnenívsítižádnýřez menšínež t. V obecnosti můžeme podat následující hrubý popis, kterému říkáme princip dobré charakterizace: Konvence.. Říkáme, že optimalizační problém má dobrou charakterizaci, pokud optimalitu nalezeného řešení můžeme vždy prokázat nalezením řešení jiné( duální ) úlohy, jehož ověření je výrazně snažší (či názornější) než bylo samotné vyřešení úlohy. Poznámka: V obecnosti se princip dobré charakterizace neomezuje jen na optimalizační úlohy (kde je výrazně spojen s pracemi Edmondse), ale je to důležitý tzv. kategoriální pojem v matematice: Existence jednoho morfismu je dána neexistencí jiného morfismu. Například v kombinatorice najdeme mnoho důležitých příkladů takových strukturálních charakterizací. To je však daleko za obsahem našeho předmětu. Petr Hliněný, FI MU 7 IA0 OU : Toky v sítích