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

Podobné dokumenty
Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant

Grafy. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta.

Úvod do teorie grafů

Základní pojmy teorie grafů [Graph theory]

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest

Teorie grafů. Teoretická informatika Tomáš Foltýnek

TGH02 - teorie grafů, základní pojmy

Algoritmizace prostorových úloh

Vzdálenost uzlů v neorientovaném grafu

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

TEORIE GRAFŮ TEORIE GRAFŮ 1

07 Základní pojmy teorie grafů

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

TGH02 - teorie grafů, základní pojmy

TGH02 - teorie grafů, základní pojmy

Jan Březina. 7. března 2017

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky

Teorie grafů BR Solutions - Orličky Píta (Orličky 2010) Teorie grafů / 66

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

4EK311 Operační výzkum. 5. Teorie grafů

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

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

Metody síťové analýzy

Drsná matematika III 10. demonstrovaná cvičení Kostry grafů

Teorie grafů. zadání úloh. letní semestr 2008/2009. Poslední aktualizace: 19. května First Prev Next Last Go Back Full Screen Close Quit

Definice 1 eulerovský Definice 2 poloeulerovský

Kostry. 9. týden. Grafy. Marie Demlová (úpravy Matěj Dostál) 16. dubna 2019

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

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

4 Pojem grafu, ve zkratce

Zdůvodněte, proč funkce n lg(n) roste alespoň stejně rychle nebo rychleji než než funkce lg(n!). Symbolem lg značíme logaritmus o základu 2.

TGH05 - aplikace DFS, průchod do šířky

Přijímací zkouška - matematika

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

Teorie grafů. Kostra grafu. Obsah. Radim Farana Podklady pro výuku pro akademický rok 2013/2014

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2017

VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5

TGH05 - aplikace DFS, průchod do šířky

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2015

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016

ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ

Graf. Uzly Lokality, servery Osoby fyzické i právní Informatické objekty... atd. Hrany Cesty, propojení Vztahy Informatické závislosti... atd.

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014

Hlavolamy a teorie grafů

Drsná matematika III 9. přednáška Rovinné grafy: Stromy, konvexní mnohoúhelníky v prostoru a Platónská tělesa

Učební texty k státní bakalářské zkoušce Matematika Teorie grafů. študenti MFF 15. augusta 2008

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

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

Teorie grafů Jirka Fink

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2016

ALGORITMY A DATOVÉ STRUKTURY

Stromy, haldy, prioritní fronty

10 Podgrafy, isomorfismus grafů

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

Základní datové struktury III: Stromy, haldy

Definice 5.1 Graf G = (V, E) je tvořen množinou vrcholů V a množinou hran, kde

Úloha ve stavovém prostoru SP je <s 0, C>, kde s 0 je počáteční stav C je množina požadovaných cílových stavů

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ TEORIE GRAFŮ A JEJÍ VYUŽITÍ BAKALÁŘSKÁ PRÁCE FAKULTA STROJNÍHO INŽENÝRSTVÍ ÚSTAV MATEMATIKY

Drsná matematika III 9. přednáška Rovinné grafy: Stromy, konvexní mnohoúhelníky v prostoru a Platónská tělesa

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

MATEMATIKA A 3 Metodický list č. 1

PROHLEDÁVÁNÍ GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Základy umělé inteligence

VYUŽITÍ NĚKTERÝCH METOD TEORIE GRAFŮ PŘI ŘEŠENÍ DOPRAVNÍCH PROBLÉMŮ

10 Přednáška ze

HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO

1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) b)

1 Teorie grafů. Základní informace

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

nelze projít pomocí tzv. eulerovského tahu tedy, nelze nakreslit jedním tahem

8 Přednáška z

Grafy. 1. Základní pojmy. 1. Definice grafu. Grafy.nb 1

VLASTNOSTI GRAFŮ. Vlastnosti grafů - kap. 3 TI 5 / 1

Metody analýzy dat I (Data Analysis I) Rozsáhlé struktury a vlastnosti sítí (Large-scale Structures and Properties of Networks) - pokračování

Matice sousednosti NG

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

Úvod do informatiky. Miroslav Kolařík

Analýza Petriho sítí. Analýza Petriho sítí p.1/28

Metody analýzy dat I (Data Analysis I) Úvod do sítí (Networks Basics)

3. Prohledávání grafů

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014

Optimalizace. Obsah přednášky. DÚ LP - Okružní problém. Lineární optimalizace. DÚ LP - Okružní problém. DÚ LP - Okružní problém

TGH08 - Optimální kostry

Vybíravost grafů, Nullstellensatz, jádra

STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach fronta

0. ÚVOD - matematické symboly, značení,

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

Teoretická informatika Tomáš Foltýnek Barvení grafů Platónská tělesa

STROMY. v 7 v 8. v 5. v 2. v 3. Základní pojmy. Řešené příklady 1. příklad. Stromy

ve výuce na střední škole

TGH12 - Problém za milion dolarů

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

Algoritmy na ohodnoceném grafu

Geometrické vyhledávání

GRAFY A GRAFOVÉ ALGORITMY

TGH06 - Hledání nejkratší cesty

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

TGH09 - Barvení grafů

Úvod do Teorie grafů Petr Kovář

Transkript:

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

Obsah přednášky Barvení mapy Teorie grafů Definice Uzly a hrany Typy grafů Cesty, cykly, souvislost grafů

Barvení mapy http://teorie-grafu.elfineer.cz/

Barvení mapy http://teorie-grafu.elfineer.cz/

Barvení mapy spojitost s grafy mobilní sítě počet frekvencí

Teorie grafů Teorie grafů zkoumá vlastnosti struktur, zvaných grafy. Grafy nám umožňují jednoduše a přehledně popisovat reálné systémy, které jsou reprezentovány pomocí sítí (počítačové sítě, silniční sítě, atd.) nebo mohou být na grafovou reprezentaci převedeny. Grafové algoritmy umožňují zpracovávat grafy, hledat nejkratší nebo nejrychlejší cesty, počítat propustnost sítě, atd.

Definice grafu Graf je definován jako dvojice G = (V, E) V je množina vrcholů E je množina hran v5 v6

Konvence V(G) množina vrcholů v grafu G E(G) množina hran v grafu G G - Počet vrcholů v grafu G G - Počet hran v grafu G G = (, ) - Prázdný graf v e vrchol v náleží hraně e (v je incidentní s hranou e) d v stupeň vrcholu (počet hran, se kterými je vrchol incidentní)

Typy grafů Orientovaný jeho hrany jsou uspořádané dvojice Neorientovaný jeho hrany jsou dvouprvkové množiny (nezáleží na orientaci). Orientovaný graf Neorientovaný graf

Ohodnocený graf Ohodnocený graf jeho hrany jsou opatřeny číselnými nebo jinými hodnotami (reprezentace vzdáleností na silnici, možnost různých časových průjezdů v opačných směrech - stoupání). 6 3 4 3 10 12 1 v5 11 v7 v6 7 Ohodnocený graf v8

Cesta Cesta P je neprázdný graf P = (V, E), kde V = {x 1, x 2,..., x k } E = {x 0 x 1, x 1 x 2,..., x k-1 x k } Cesta je posloupnost vrcholů a hran. v5 v5 v6 v6

Dosažitelnost vrcholů Vrchol B je dosažitelný z vrcholu A, pokud existuje alespoň jedna cesta z vrcholu A do vrcholu B. Příklad: vrchol v 3 je dosažitelný z v 2 (naopak to neplatí)

Cyklus Cesta, jejíž první vrchol je totožný s posledním se nazývá cyklus. v5 C = {v 3,v 5,v 6,v 3 } Graf, který neobsahuje žádný cyklus se nazývá acyklický. Cyklus se může nacházet i v neorientovaném grafu v6

Souvislost grafu Každý neprázdný graf G se nazývá souvislý, pokud existuje cesta mezi kteroukoliv dvojicí vrcholů. U orientovaných grafů se při vyhodnocování souvislosti orientace ignoruje. v5 v6 Nesouvislý graf

Minimální kostra Výchozí graf se upraví tak, aby splňoval následující požadavky: stejný počet vrcholů, souvislý, acyklický, s minimálním ohodnocením. http://homel.vsb.cz/~ko6/talks/algoritmy/

Minimální kostra Kostra u souvislého grafu vždy existuje a má n-1 hran. http://homel.vsb.cz/~ko6/talks/algoritmy/

Stromy Spojitý a acyklický graf se nazývá strom. v5 v6

Úplný graf Úplný graf je takový graf, ve kterém je každý vrchol propojen hranou se všemi ostatními vrcholy v grafu

Multigraf Multigraf je takový graf, který obsahuje alespoň jednu násobnou hranu (dva vrcholy spojené dvěma nebo více hranami)

Bipartitní graf Bipartitní graf je takový graf, ve kterém se množina vrcholů V skládá ze dvou disjunktních podmnožin X, Y zvaných parity. Množina hran E takového grafu obsahuje pouze hrany, jejichž jeden koncový vrchol leží v množině X a druhý koncový vrchol v množině Y. Žádné dva vrcholy z parity X (resp. Y) nejsou spojeny hranou. X Y v5 v6 v7

Úplný bipartitní graf Úplný bipartitní graf je bipartitní graf, ve kterém je každá dvojice vrcholů x X a y Y spojena právě jednou hranou. X Y v5

Disktrétní graf Diskrétní graf je takový graf, který nemá žádnou hranu ( G = 0) v5 v6

Reprezentace grafu Obrázek (nakreslení grafu) Matice sousednosti (popř. matice incidence) Seznam vrcholů a jejich sousedů 0 1 1 A = 1 0 0 1 0 0 v 1 -> v 3 v 1 -> v 2 Seznam hran G = {(v 1,v 3 ), (v 1,v 2 )}

Nakreslení grafu Vrcholy grafu jsou nakresleny jako body (kroužky), hrany jako čáry. Orientovanou hranu znázorňujeme šipkou od počátečního vrcholu ke koncovému. Existuje mnoho různých nakreslení stejného grafu. Výhodou je přehlednost. Nakreslení je nevýhodné v případě rozsáhlého grafu, nebo pokud vyžadujeme automatické zpracování grafu.

Eulerovský tah http://www.c3.lanl.gov/

Eulerovský tah Sedm mostů města Královce http://cs.wikipedia.org/wiki/sedm_most%c5%af_m%c4%9bsta_kr%c3%a1lovce

Matice sousednosti Postup pro vytvoření: Zvolíme libovolné (ale pevné) pořadí vrcholů (v 1... v n ), můžeme grafu přiřadit matici incidence takto: A i,j = 1, pokud v i je incidentní s v j 0 v opačném případě. V případě ohodnocených hran může být A i,j = n, kde n je hodnota hrany. Matice sousednosti neorientovaného grafu bude vždy symetrická (u orientovaného grafu nemusí být). h1 h2 0 1 0 0 h3 1 0 1 1 0 1 0 0 0 1 0 0

Matice incidence Tato reprezentace je vhodná pro automatické zpracování počítačem. Nevýhodou je nepřehlednost pro člověka. Postup pro vytvoření: Zvolíme libovolné (ale pevné) pořadí vrcholů (v 1... v n ) a hran (h 1... h m ), můžeme grafu přiřadit matici incidence takto: A i,j = 1, pokud v i je incidentní s h j = 0 v opačném případě. V případě ohodnocených hran může být A i,j = n, kde n je hodnota hrany. V případě orientovaného grafu je A i,j = n pokud je v i počáteční vrchol hrany a A i,j = -n, pokud je v i koncový vrchol hrany. h1 h3 h2 h1 h2 h3 1 0 0 1 1 1 0 1 0 0 0 1

Seznam sousedů Graf je dán seznamem vrcholů a jejich sousedů h1 h3 h2,, h1 h3 h2

Seznam hran Graf je dán seznamem hran h2 G = {(, ), (,), (,)} h1 h3 h2 G = {(, ), (,), (,)} h1 h3

Prohledávání grafu Prohledávání grafu je systematický postup, kterým můžeme řešit například hledání nejkratší, nejdelší, nejlevnější cesty z jednoho vrcholu do druhého, popřípadě zjišťovat dostupnost vrcholů v grafu apod.

Prohledávání grafu Prohledávání grafu do hloubky Prohledávání grafu do šířky

Prohledávání grafu do hloubky Tento algoritmus si lze představit jako průchod bludištěm, kdy procházím z místnosti do místnosti po chodbách a v dosažené místnosti si vybíráme chodbu, po které jsme ještě nešli. Pokud taková chodba neexistuje, musíme se z této místnosti vrátit do předešlé místnosti. Algoritmus končí, pokud jsme prošli všechny uzly grafu nebo pokud jsme našli cílový vrchol.

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání do hloubky (v 1 -> v 8 ) v5 v7 v6 v8

Prohledávání grafu do šířky Odlišnost tohoto algoritmu spočívá v tom, že se z dosaženého vrcholu rozhlédneme najednou do všech sousedních vrcholů

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Prohledávání do šířky (v 4 -> v 8 ) v9 0 1 v5 v6 v7 v8

Rozvozní problém Zákazníci 8 2 3 8 2 3 4 4 10 10 10 V =10 Poptávka 1 Vzdálenost Sklad Převzato z: nb.vse.cz/~fabry/4ek314-prezentace.ppt

Rozvozní problém Řešení s nedělenou dodávkou 8 2 3 8 2 3 4 4 10 10 10 1 Trasy: 1-2-1; 1-3-1; 1-4-1; Ujetá vzdálenost: (10+10)+(10+10)+(10+10) = 60 Převzato z: nb.vse.cz/~fabry/4ek314-prezentace.ppt

Rozvozní problém Řešení s dělenou dodávkou 8 2 3 8 2 3 4 4 10 10 10 1 Trasy: 1-2-3-1; 1-3-4-1; Ujetá vzdálenost: (10+2+10)+(10+3+10) =45 Převzato z: nb.vse.cz/~fabry/4ek314-prezentace.ppt

Problém obchodního cestujícího Existuje n měst, mezi nimi silnice o známých délkách. Úkolem je najít nejkratší možnou trasu, procházející všemi městy a vracející se nazpět do výchozího města. 6 3 4 3 10 12 1 v5 11 v7 v6 7 v8

Isomorfismus grafů http://www.c3.lanl.gov/mega-math/workbk/graph/griso.gif

Hamiltonův cyklus The Icosian Game (icosian = dvacítkový) http://teorie-grafu.elfineer.cz/ http://www.c3.lanl.gov/

Zdroje http://www.c3.lanl.gov/ nb.vse.cz/~fabry/ Eliška Ochodková: Grafové algoritmy, 2003 Reinhard Diestel: Graph Theory, Electronic edition, 2000 http://homel.vsb.cz/~ko6/talks/algoritmy/ http://teorie-grafu.elfineer.cz/ http://cs.wikipedia.org/wiki/sedm_most%c5%af_m%c4%9bsta_kr%c3%a1lovce