Matice sousednosti NG
|
|
- Bohumír Tábor
- před 8 lety
- Počet zobrazení:
Transkript
1 Matice sousednosti NG V = [ v ij ] celočíselná čtvercová matice řádu U v ij = ρ -1 ( [u i, u j ] )... tedy počet hran mezi u i a u j?jaké vlastnosti má matice sousednosti?? Smyčky, rovnoběžné hrany? V = V T V r = [v (r) ij ]... počet sledů délky r mezi u i a u j A. A T = V + D, D = [ d ii ], kde d ii = δ(u i ) Reprezentace grafů - odst. 4.1 TI 4 / 1
2 Matice incidence OG A = [ a ik ] celočíselná obdélníková matice typu U x H 1... hrana h k vystupuje z uzlu u i a ik = hrana h k vstupuje do uzlu u i 0... jinak? Co nám říká matice incidence o grafu? Vlastnosti matice incidence OG jsou podobné jako jsme viděli u NG. Reprezentace grafů - odst. 4.1 TI 4 / 2
3 Matice sousednosti OG V = [ v ij ] celočíselná čtvercová matice řádu U v ij = σ -1 ( [u i, u j ] )... tedy počet hran z u i do u j?jaké vlastnosti má matice sousednosti? V * = V i, i=0,... d, kde d = min( H, U -1) matice dostupnosti R = [r ij ], r ij = 1 pokud u i * u j, jinak 0 rozklad na silné komponenty R = R R T A. A T = D - V - V T, D = [ d ii ], kde d ii = δ + (u i )+ δ - (u i ) Reprezentace grafů - odst. 4.1 TI 4 / 3
4 Spojová reprezentace grafu N.G. - seznamy sousedů Adj[u] 1: 2: 3: O.G. - seznamy následníků U : Srovnání paměťové složitosti: NG A: U. H (bitů!) V: U. U (integer? Boolean) Adj: U + 2. H OG Adj: U + H Reprezentace grafů - odst. 4.1 TI 4 / 4
5 Prohledávání grafu do šířky BFS - Breadth-First Search Je zadán graf G = H,U,σ (není podstatné, zda NG nebo OG) a jeho uzel u U. Prohledáním do šířky dostaneme strom (nejkratších) s * u cest Stavy uzlů: FRESH - nový (dosud neobjevený) uzel OPEN - právě objevený ( nadějný ) uzel CLOSED - vyčerpaný uzel Prohledávání do šířky - odst. 4.2 TI 4 / 5
6 s k k+1 u v Datové struktury: stav[u] - FRESH / OPEN / CLOSED d[u] - zjištěná vzdálenost s * u p[u] - předchůdce uzlu u (viz ) fronta OPEN uzlů Prohledávání do šířky - odst. 4.2 TI 4 / 6
7 BFS (G, s)... pseudokód 1 for každý uzel u U-{s} do 2 stav[u]:=fresh; d[u]:= ; p[u]:=nil 3 stav[s]:=open; d[s]:=0; p[s]:=nil; 4 InitQueue; Enqueue(s); 5 while not EmptyQueue do 6 u:=queuefirst; 7 for každé v Adj[u] do 8 if stav[v]=fresh 9 then stav[v]:=open; d[v]:=d[u]+1; 10 p[v]:=u; Enqueue(v); 11 Dequeue; 12 stav[u]:=closed Prohledávání do šířky - odst. 4.2 TI 4 / 7
8 OPEN CLOSED strom Prohledávání do šířky - odst. 4.2 TI 4 / 8
9 Vlastnosti BFS algoritmu Složitost: cykl O( U ) operace s frontou O(1) na uzel celkem O( U ) cykly pro každého souseda... O( H ) O( U + H ) Vlastnosti: pro každou hranu h H : h=(u, v) platí d(s,v) d(s, u)+1 d[v] d(s, v) pokud fronta obsahuje uzly v 1, v 2,..., v r, potom platí d[v r ] d[v 1 ] + 1 d[v i ] d[v i+1 ] pro i=1,2,...,r-1 konec: d[v]=d(s,v) a (p[v],v) je hrana nejkratší cesty s * v Prohledávání do šířky - odst. 4.2 TI 4 / 9
10 Prohledávání grafu do hloubky DFS - Depth-First Search Výsledkem bude DF strom (nebo les) Uzly jsou opět FRESH, OPEN nebo CLOSED, ale mají časové značky s hodnotami 1 2* U d[u] přidělí se uzlu při jeho otevření f[u] přidělí se uzlu při jeho uzavření (tzn. d[u]<f[u]) Postup prohledávání Pokud existuje FRESH následník, přejdi na něj, jinak uzel uzavři a vrať se k předchůdci. Prohledávání do hloubky - odst. 4.3 TI 4 / 10
11 DFS (G) pseudokód 1 for každý uzel u U do 2 stav[u]:=fresh; p[u]:=nil; 3 i:=0; 4 for každý uzel u U do 5 if stav[u] = FRESH then DFS-Projdi(u); DFS-Projdi(u) 1 stav[u]:=open; i:=i+1; d[u]:=i; 2 for každý uzel v Adj[u] do 3 if stav[u] = FRESH 4 then p[v]:=u; DFS-Projdi(v); 5 stav[u]:=closed; i:=i+1; f[u]:=i; Prohledávání do hloubky - odst. 4.3 TI 4 / 11
12 OPEN CLOSED strom 1/ 1/ 1/ 2/ 2/ 1/ 1/ 1/ 3/ 2/ 3/ 2/ 3/4 2/ 1/ 1/6 7/ 1/6 3/4 2/5 Prohledávání do hloubky - odst /4 2/5 3/4 TI 4 / 12 2/5
13 Složitost DFS cykly 1-2 a O( U ) DFS-Projdi... volá se U /krát cykl Adj[u] -krát, tedy celkem Adj[u] = Θ( H ) O( U + H ) Prohledávání do hloubky - odst. 4.3 TI 4 / 13
14 Vlastnosti DFS závorkový teorém: nastává právě jedna z možností d[u], f[u] d[v], f[v] = (vztah intervalů) d[u], f[u] d[v], f[v] - potom v u (v DFS stromu) d[v], f[v] d[u], f[u] - potom u v (v DFS stromu) vnořování intervalů: u v (v DFS lese) d[u] < d[v] < f[v] < f[u] teorém o nové cestě: u v (v DFS lese) v okamžiku d[u] existuje nová cesta P(u, v) stromové / zpětné / dopředné / příčné hrany Prohledávání do hloubky - odst. 4.3 TI 4 / 14
15 ? Jak se pozná typ hrany (u, v)? FRESH v stromová OPEN v zpětná CLOSED v dopředná nebo příčná? d[u] < d[v] d[u] > d[v]? DFS neorientovanáho grafu? Orientace hrany se provede podle prvního průchodu, takže dostaneme jen stromové a zpětné hrany. Prohledávání do hloubky - odst. 4.3 TI 4 / 15
16 Top-Sort-1 (G) S:= Topologické uspořádání prováděj DFS(G) a v okamžiku f[u] ulož uzel u na začátek seznamu S S obsahuje uzly v topologickém uspořádání V: G je acyklický DFS(G) neobjeví zpětnou hranu Top-Sort-2 (G) eliminací kořenů - viz dříve δ[u] = δ G [u] M - množina kořenů (fronta) Prohledávání do hloubky - odst. 4.3 TI 4 / 16
17 Silné komponenty S-COMP (G) pomocí DFS(G) se určí f[u] pro všechny u U vytvoří se G - (opačně orientovaný graf) provede se DFS(G - ) s tím, že uzly v hlavním cyklu se berou v klesajícím pořadí f[u] stromy DFS-lesa určují silné komponenty Prohledávání do hloubky - odst. 4.3 TI 4 / 17
18 1/22 2/21 3/18 4/9 19/20 15/16 10/17 5/8 12/13 11/14 6/7 1/6 3/4 7/12 17/22 2/5 8/11 9/10 19/20 Prohledávání do hloubky - odst /15 13/16 18/21 TI 4 / 18
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2/2, Lekce Evropský sociální fond Praha & EU: Investujeme
PROHLEDÁVÁNÍ GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
PROHLEDÁVÁNÍ GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 4 Evropský sociální fond Praha & EU: Investujeme do
Hledáme efektivní řešení úloh na grafu
Hledáme efektivní řešení úloh na grafu Mějme dán graf následující úlohy: G = ( V, E), chceme algoritmicky vyřešit Je daný vrchol t dosažitelný z vrcholu s? Pokud ano, jaká nejkratší cesta tyto vrcholy
TGH05 - aplikace DFS, průchod do šířky
TGH05 - aplikace DFS, průchod do šířky Jan Březina Technical University of Liberec 31. března 2015 Grafová formulace CPM (critical path method) Orientovaný acyklický graf (DAG) je orientovaný graf neobsahující
TGH05 - aplikace DFS, průchod do šířky
TGH05 - aplikace DFS, průchod do šířky Jan Březina Technical University of Liberec 28. března 2017 Grafová formulace CPM (critical path method) Orientovaný acyklický graf (DAG) je orientovaný graf neobsahující
Vzdálenost uzlů v neorientovaném grafu
Vzdálenosti a grafy Vzdálenost uzlů v neorientovaném grafu Je dán neorientovaný neohodnocený graf G = (V,E,I) vzdálenost uzlů u a v v neorientovaném souvislém grafu G je délka nejkratší cesty spojující
Použití dalších heuristik
Použití dalších heuristik zkracování cesty při FIND-SET UNION podle hodností Datové struktury... p[x] - předchůdce uzlu x MAKE-SET(x) p[x] := x hod[x] := 0 hod[x] - hodnost (aprox. výšky) UNION(x,y) LINK(FIND-SET(x),
TGH04 - procházky po grafech
TGH04 - procházky po grafech Jan Březina Technical University of Liberec 24. března 2015 Theseus v labyrintu Theseus chce v labyrintu najít Mínotaura. K dispozici má Ariadninu nit a křídu. Jak má postupovat?
Úvod do teorie grafů
Úvod do teorie grafů Neorientovaný graf G = (V,E,I) V množina uzlů (vrcholů) - vertices E množina hran - edges I incidence incidence je zobrazení, buď: funkce: I: E V x V relace: I E V V incidence přiřadí
Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest
Obsah prezentace Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest 1 Základní pojmy Vrchol grafu: {množina V} Je to styčná vazba v grafu, nazývá se též uzlem, prvkem
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
NEJKRATŠÍ CESTY I. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NEJKRATŠÍ CESTY I Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 7 Evropský sociální fond Praha & EU: Investujeme do vaší
3. Prohledávání grafů
3. Prohledávání grafů Prohledání do šířky Breadth-First Search BFS Jde o grafový algoritmus, který postupně prochází všechny vrcholy v dané komponentě souvislosti. Algoritmus nejprve projde všechny sousedy
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Umělá inteligence. UI (AI) - součást informatiky s průniky mimo obor Stručná historie UI. Letošní cena nadace Vize 2000 - Joseph Weizenbaum
Umělá inteligence UI (AI) - součást informatiky s průniky mimo obor Stručná historie UI 1943-56 začátky (modelování neuronů a sítí na počítači) 1952-69 velká očekávání (GPS, Lisp, microworlds) 1966-74
TOKY V SÍTÍCH II. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
TOKY V SÍTÍCH II Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 010/011, Lekce 10 Evropský sociální fond Praha & EU: Investujeme do vaší
Algoritmy na ohodnoceném grafu
Algoritmy na ohodnoceném grafu Dvě základní optimalizační úlohy: Jak najít nejkratší cestu mezi dvěma vrcholy? Dijkstrův algoritmus s t Jak najít minimální kostru grafu? Jarníkův a Kruskalův algoritmus
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Grafové úlohy Daniela Szturcová Tento
07 Základní pojmy teorie grafů
07 Základní pojmy teorie grafů (definice grafu, vlastnosti grafu, charakteristiky uzlů, ohodnocené grafy) Definice grafu množina objektů, mezi kterými existují určité vazby spojující tyto objekty. Uspořádaná
Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant
Základy informatiky 07 Teorie grafů Kačmařík/Szturcová/Děrgel/Rapant Obsah přednášky barvení mapy teorie grafů definice uzly a hrany typy grafů cesty, cykly, souvislost grafů Barvení mapy Kolik barev je
1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10
Úlohy- 2.cvičení 1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10 2. Převeďte dané desetinné číslo do dvojkové soustavy (DEC -> BIN): a) 0,8125 10 b) 0,35 10
PLANARITA A TOKY V SÍTÍCH
PLANARITA A TOKY V SÍTÍCH Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 9 Evropský sociální fond Praha & EU: Investujeme
Algoritmy a datové struktury
Algoritmy a datové struktury Stromy 1 / 32 Obsah přednášky Pole a seznamy Stromy Procházení stromů Binární stromy Procházení BS Binární vyhledávací stromy 2 / 32 Pole Hledání v poli metodou půlení intervalu
bfs, dfs, fronta, zásobník, prioritní fronta, halda
bfs, dfs, fronta, zásobník, prioritní fronta, halda Petr Ryšavý 20. září 2016 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší
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.
1 3 4 5 6 7 8 9 10 11 1 13 14 15 16 17 18 19 0 1 3 4 5 6 7 8 9 30 31 3 Zdůvodněte, proč funkce f(n) = n log(n) 1 n 1/ roste rychleji než funkce g(n) = n. Zdůvodněte, proč funkce f(n) = n 3/ log(n) roste
PROGRAMOVÁNÍ. Cílem předmětu Programování je seznámit posluchače se způsoby, jak algoritmizovat základní programátorské techniky.
Cílem předmětu Programování je seznámit posluchače se způsoby, jak algoritmizovat základní programátorské techniky. V průběhu budou vysvětlena následující témata: 1. Dynamicky alokovaná paměť 2. Jednoduché
TGH10 - Maximální toky
TGH10 - Maximální toky Jan Březina Technical University of Liberec 23. dubna 2013 - motivace Elektrická sít : Elektrická sít, jednotlivé vodiče mají různou kapacitu (max. proud). Jaký maximální proud může
bfs, dfs, fronta, zásobník, prioritní fronta, halda
bfs, dfs, fronta, zásobník, prioritní fronta, halda Petr Ryšavý 19. září 2017 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší
ALGORITMY A DATOVÉ STRUKTURY
Název tématického celku: Cíl: ALGORITMY A DATOVÉ STRUKTURY Metodický list č. 1 Časová složitost algoritmů Základním cílem tohoto tematického celku je vysvětlení potřebných pojmů a definic nutných k popisu
Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová
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
TGH06 - Hledání nejkratší cesty
TGH06 - Hledání nejkratší cesty Jan Březina Technical University of Liberec 26. března 2013 Motivační problémy Silniční sít reprezentovaná grafem. Najdi nejkratší/nejrychlejší cestu z místa A do místa
Ú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ů
Stavový prostor a jeho prohledávání SP = formalismus k obecnějšímu uchopení a vymezení problému, který spočívá v nalezení posloupnosti akcí vedoucích od počátečního stavu úlohy (zadání) k požadovanému
TGH06 - Hledání nejkratší cesty
TGH06 - Hledání nejkratší cesty Jan Březina Technical University of Liberec 31. března 2015 Motivační problémy Silniční sít reprezentovaná grafem. Ohodnocené hrany - délky silnic. Najdi nejkratší/nejrychlejší
bfs, dfs, fronta, zásobník
bfs, dfs, fronta, zásobník Petr Ryšavý 25. září 2018 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší cesty, plánování cest. Prohledávání
Kapitola 11. Vzdálenost v grafech. 11.1 Matice sousednosti a počty sledů
Kapitola 11 Vzdálenost v grafech V každém grafu lze přirozeným způsobem definovat vzdálenost libovolné dvojice vrcholů. Hlavním výsledkem této kapitoly je překvapivé tvrzení, podle kterého lze vzdálenosti
STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach fronta
STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach vlož do fronty kořen opakuj, dokud není fronta prázdná 1. vyber uzel z fronty a zpracuj jej 2. vlož do fronty levého následníka
Umělá inteligence I. Roman Barták, KTIML. roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Agent s reflexy pouze převádí současný vjem na jednu akci. Agent s cílem umí plánovat několik akcí
ALG 04. Zásobník Fronta Operace Enqueue, Dequeue, Front, Empty... Cyklická implementace fronty. Průchod stromem do šířky
LG 04 Zásobník Fronta Operace nqueue, equeue, Front, mpty... yklická implementace fronty Průchod stromem do šířky Grafy průchod grafem do šířky průchod grafem do hloubky Ořezávání a heuristiky 1 Zásobník
Dijkstrův algoritmus (připomenutí)
Dijkstrův algoritmus (připomenutí) Základní předpoklad w : H R + (nezáporné délky hran) Upravený algoritmus prohledávání do šířky Dijkstra(G,s,w) 1 InitPaths(G,s) 2 S:= ; InitQueue(Q) 3 for každý uzel
Základy umělé inteligence
Základy umělé inteligence Automatické řešení úloh Základy umělé inteligence - prohledávání. Vlasta Radová, ZČU, katedra kybernetiky 1 Formalizace úlohy UI chápe řešení úloh jako proces hledání řešení v
Grafové algoritmy. Aktualizováno: 29. listopadu / 228
Grafové algoritmy Zbyněk Křivka, Tomáš Masopust Aktualizováno: 29. listopadu 2017 1 / 228 Obsah Úvod Grafy Reprezentace grafů Prohledávání do šířky Prohledávání do hloubky Topologické uspořádání Silně
Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT
PEF ČZU Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT Okruhy SZB č. 5 Zdroje: Demel, J., Operační výzkum Jablonský J., Operační výzkum Šubrt, T., Langrová, P., Projektové řízení I. a různá internetová
Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.
Kapitola Reprezentace grafu V kapitole?? jsme se dozvěděli, co to jsou grafy a k čemu jsou dobré. rzo budeme chtít napsat nějaký program, který s grafy pracuje. le jak si takový graf uložit do počítače?
Stromy, haldy, prioritní fronty
Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík
State Space Search Step Run Editace úloh Task1 Task2 Init Clear Node Goal Add Shift Remove Add Node Goal Node Shift Remove, Add Node
State Space Search Po spuštění appletu se na pracovní ploše zobrazí stavový prostor první předpřipravené úlohy: - Zeleným kroužkem je označen počáteční stav úlohy, který nemůže být změněn. - Červeným kroužkem
Základní datové struktury III: Stromy, haldy
Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní
VLASTNOSTI GRAFŮ. Vlastnosti grafů - kap. 3 TI 5 / 1
VLASTNOSTI GRAFŮ Vlastnosti grafů - kap. 3 TI 5 / 1 Pokrytí a vzdálenost Každý graf je sjednocením svých hran (jak je to přesně?).?lze nalézt složitější struktury stejného typu, ze kterých lze nějaký graf
Jan Březina. 7. března 2017
TGH03 - stromy, ukládání grafů Jan Březina Technical University of Liberec 7. března 2017 Kružnice - C n V = {1, 2,..., n} E = {{1, 2}, {2, 3},..., {i, i + 1},..., {n 1, n}, {n, 1}} Cesta - P n V = {1,
Graf. Uzly Lokality, servery Osoby fyzické i právní Informatické objekty... atd. Hrany Cesty, propojení Vztahy Informatické závislosti... atd.
Graf 2 0 3 1 4 5 Uzly Lokality, servery Osoby fyzické i právní Informatické objekty... atd. Hrany Cesty, propojení Vztahy Informatické závislosti... atd. Běžné reprezentace grafu Uzly = indexy Stupně uzlů
řádově různě rostoucí rostou řádově stejně rychle dvě funkce faktor izomorfismus neorientovaných grafů souvislý graf souvislost komponenta
1) Uveďte alespoň dvě řádově různě rostoucí funkce f(n) takové, že n 2 = O(f(n)) a f(n) = O(n 3 ). 2) Platí-li f(n)=o(g 1 (n)) a f(n)=o(g 2 (n)), znamená to, že g 1 (n) a g 2 (n) rostou řádově stejně rychle
GRAFY A GRAFOVÉ ALGORITMY
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO GRAFY A GRAFOVÉ ALGORITMY ARNOŠT VEČERKA VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ
Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C
Hanojské věže - 3 kolíky A, B, C - na A je N disků různé velikosti, seřazené od největšího (dole) k nejmenšímu (nahoře) - kolíky B a C jsou prázdné - úkol: přenést všechny disky z A na B, mohou se odkládat
Grafy (G) ρ(h) = [u,v]
Grafy (G) Neorientované: (NG) H hrany, U-uzly, ρ-incidence (jestli k němu něco vede) ρ: H UΞU Ξ neuspořádaná dvojice ρ(h) = [u,v] Teoretická informatika Str.1 Izolovaný uzel neinciduje s ním žádná hrana
Operační výzkum. Síťová analýza. Metoda CPM.
Operační výzkum Síťová analýza. Metoda CPM. Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty ekonomiky a managementu Registrační číslo
Stromy. Strom: souvislý graf bez kružnic využití: počítačová grafika seznam objektů efektivní vyhledávání výpočetní stromy rozhodovací stromy
Stromy úvod Stromy Strom: souvislý graf bez kružnic využití: počítačová grafika seznam objektů efektivní vyhledávání výpočetní stromy rozhodovací stromy Neorientovaný strom Orientovaný strom Kořenový orientovaný
2. Mřížky / Záplavové vyplňování
2. Mřížky / Záplavové vyplňování BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D. 2011-18 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké
Teorie grafů BR Solutions - Orličky Píta (Orličky 2010) Teorie grafů / 66
Teorie grafů Petr Hanuš (Píta) BR Solutions - Orličky 2010 23.2. 27.2.2010 Píta (Orličky 2010) Teorie grafů 23.2. 27.2.2010 1 / 66 Pojem grafu Graf je abstraktní pojem matematiky a informatiky užitečný
6. Tahy / Kostry / Nejkratší cesty
6. Tahy / Kostry / Nejkratší cesty BI-EP2 Efektivní programování 2 LS 2017/2018 Ing. Martin Kačer, Ph.D. 2011-18 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké
Algoritmy a datové struktury
Algoritmy a datové struktury Slajdy pro výuku na KS Ondřej Čepek Sylabus 1. Prostředky pro popis složitosti algoritmů a operací nad datovými strukturami (asymptotická notace), příklady použití asymptotické
B3B33ALP - Algoritmy a programování - Zkouška z předmětu B3B33ALP. Marek Boháč bohacm11
333LP - lgoritmy a programování - Zkouška z předmětu 333LP Jméno Příjmení Už. jméno Marek oháč bohacm11 Zkouškový test Otázka 1 Jaká je hodnota proměnné count po vykonání následujícího kódu: data=[4,4,5,5,6,6,6,7,7,7,7,8,8]
B3B33ALP - Algoritmy a programování - Zkouška z předmětu B3B33ALP. Marek Boháč bohacm11
Jméno Příjmení Už. jméno Marek oháč bohacm11 Zkouškový test Otázka 1 Jaká je hodnota proměnné count po vykonání následujícího kódu: data=[4,4,5,5,6,6,6,7,7,7,7,8,8] count=0 for i in range(1,len(data)):
prohled av an ı graf u Karel Hor ak, Petr Ryˇsav y 16. bˇrezna 2016 Katedra poˇ c ıtaˇ c u, FEL, ˇ CVUT
prohledávání grafů Karel Horák, Petr Ryšavý 16. března 2016 Katedra počítačů, FEL, ČVUT Příklad 1 Nad frontou (queue) byly provedeny následující operace: push(1) push(2) print(poll()) print(peek()) print(peek())
TGH08 - Optimální kostry
TGH08 - Optimální kostry Jan Březina Technical University of Liberec 14. dubna 2015 Problém profesora Borůvky řešil elektrifikaci Moravy Jak propojit N obcí vedením s minimální celkovou délkou. Vedení
Algoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
4EK311 Operační výzkum. 5. Teorie grafů
4EK311 Operační výzkum 5. Teorie grafů 5. Teorie grafů definice grafu Graf G = uspořádaná dvojice (V, E), kde V označuje množinu n uzlů u 1, u 2,, u n (u i, i = 1, 2,, n) a E označuje množinu hran h ij,
"Agent Hledač" (3. přednáška)
"Agent Hledač" (3. přednáška) Přehled 3. přednášky v této přednášce se budeme zabývat "goal-based" agenty Přehled 3. přednášky v této přednášce se budeme zabývat "goal-based" agenty připomeňme, že "goal-based"
Prohledávání do šířky = algoritmus vlny
Prohledávání do šířky = algoritmus vlny - souběžně zkoušet všechny možné varianty pokračování výpočtu, dokud nenajdeme řešení úlohy průchod stromem všech možných cest výpočtu do šířky, po vrstvách (v každé
Pokročilé haldy. prof. Ing. Pavel Tvrdík CSc. Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010
Pokročilé haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (I-EFA) ZS 2010/11,
Prioritní fronta, halda
Prioritní fronta, halda Priority queue, heap Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2018 1 / 26 Prioritní fronta Halda Heap sort 2 / 26 Prioritní fronta (priority queue) Podporuje
Datové typy a struktury
atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Ohodnocené orientované grafy
Ohodnocené orientované grafy Definice Buď G graf Funkce w : H( G) (, ) se nazývá (hranové) ohodnocení grafu G; graf se zadaným ohodnocením se nazývá ohodnocený graf Definice Nechť G je orientovaný graf
Abstraktní datové typy FRONTA
Abstraktní datové typy FRONTA Fronta je lineární datová struktura tzn., že ke každému prvku s výjimkou posledního náleží jeden následník a ke každému prvku s výjimkou prvního náleží jeden předchůdce. Do
Binární vyhledávací stromy II
Binární vyhledávací stromy II doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 19. března 2019 Jiří Dvorský (VŠB TUO) Binární vyhledávací
Základní pojmy teorie grafů [Graph theory]
Část I Základní pojmy teorie grafů [Graph theory] V matematice grafem obvykle rozumíme grafické znázornění funkční závislosti. Pro tento předmět je však podstatnější pohled jiný. V teorii grafů rozumíme
Neinformované metody prohledávání stavového prostoru. Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague
Neinformované metody prohledávání stavového prostoru Michal Pěchouček Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague http://labe.felk.cvut.cz/~ tkrajnik/kui2/data/k333/1.pdf
1 Teorie grafů. Základní informace
Teorie grafů Základní informace V této výukové jednotce se student seznámí s matematickým pojetím grafů a na konkrétních příkladech si vyzkouší vybrané algoritmy pro hledání v grafech. Výstupy z výukové
Cílem kapitoly je seznámit studenta se seznamem a stromem. Jejich konstrukci, užití a základní vlastnosti.
Seznamy a stromy Cílem kapitoly je seznámit studenta se seznamem a stromem. Jejich konstrukci, užití a základní vlastnosti. Klíčové pojmy: Seznam, spojový seznam, lineární seznam, strom, list, uzel. Úvod
Grafy. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta.
6 RNDr., Ph.D. Katedra didaktiky matematiky Univerzita Karlova v Praze Matematicko-fyzikální fakulta petra.surynkova@mff.cuni.cz http://surynkova.info množina vrcholů a množina hran hrana vždy spojuje
STROMY A KOSTRY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 6
STROMY A KOSTRY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 010/011, Lekce 6 Evropský sociální fond Praha & EU: Investujeme do vaší
NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk
NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk Pavel Töpfer Katedra softwaru a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
Reprezentace aritmetického výrazu - binární strom reprezentující aritmetický výraz
Reprezentace aritmetického výrazu - binární strom reprezentující aritmetický výraz (2 + 5) * (13-4) * + - 2 5 13 4 - listy stromu obsahují operandy (čísla) - vnitřní uzly obsahují operátory (znaménka)
Optimalizace & soft omezení: algoritmy
Optimalizace & soft omezení: algoritmy Soft propagace Klasická propagace: eliminace nekonzistentních hodnot z domén proměnných Soft propagace: propagace preferencí (cen) nad k-ticemi hodnot proměnných
Algoritmy výpočetní geometrie
Algoritmy výpočetní geometrie prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)
Dynamické programování
ALG 0 Dynamické programování zkratka: DP Zdroje, přehledy, ukázky viz https://cw.fel.cvut.cz/wiki/courses/a4balg/literatura_odkazy 0 Dynamické programování Charakteristika Neřeší jeden konkrétní typ úlohy,
Jan Březina. Technical University of Liberec. 30. dubna 2013
TGH11 - Maximální párování a související problémy Jan Březina Technical University of Liberec 30. dubna 2013 Bipartitní grafy Bipartitní graf - je obarvitelný dvěma barvami. Tj. V lze rozělit na disjunktní
STROMY A KOSTRY. Stromy a kostry TI 6.1
STROMY A KOSTRY Stromy a kostry TI 6.1 Stromy a kostry Seznámíme se s následujícími pojmy: kostra rafu, cyklomatické číslo rafu, hodnost rafu (kořenový strom, hloubka stromu, kořenová kostra orientovaného
NPRG030 Programování I, 2018/19 1 / :03:07
NPRG030 Programování I, 2018/19 1 / 20 3. 12. 2018 09:03:07 Vnitřní třídění Zadání: Uspořádejte pole délky N podle hodnot prvků Měřítko efektivity: * počet porovnání * počet přesunů NPRG030 Programování
Usuzování za neurčitosti
Usuzování za neurčitosti 25.11.2014 8-1 Usuzování za neurčitosti Hypotetické usuzování a zpětná indukce Míry postačitelnosti a nezbytnosti Kombinace důkazů Šíření pravděpodobnosti v inferenčních sítích
TGH07 - Chytré stromové datové struktury
TGH07 - Chytré stromové datové struktury Jan Březina Technical University of Liberec 1. dubna 2014 Prioritní fronta Datová struktura s operacemi: Odeber Minum (AccessMin, DeleteMin) - vrat prvek s minimálním
1 2 3 4 5 6 součet cvičení celkem. známka. Úloha č.: max. bodů: skut. bodů:
Úloha č.: max. bodů: skut. bodů: 1 2 3 4 5 6 součet cvičení celkem 20 12 20 20 14 14 100 známka UPOZORNĚNÍ : a) Písemná zkouška obsahuje 6 úloh, jejichž řešení musí být vepsáno do připraveného formuláře.
Předmět: Algoritmizace praktické aplikace
Předmět: Algoritmizace praktické aplikace Vytvořil: Roman Vostrý Zadání: Vytvoření funkcí na stromech (reprezentace stromu haldou). Zadané funkce: 1. Počet vrcholů 2. Počet listů 3. Součet 4. Hloubka 5.
Jan Březina. Technical University of Liberec. 21. dubna 2015
TGH11 - Maximální párování a související problémy Jan Březina Technical University of Liberec 21. dubna 2015 Bipartitní grafy Bipartitní graf - je obarvitelný dvěma barvami. Tj. V lze rozělit na disjunktní
Plánování projektu. 3. dubna Úvod. 2 Reprezentace projektu. 3 Neomezené zdroje. 4 Variabilní doba trvání. 5 Přidání pracovní síly
Plánování proektu 3. dubna 2018 1 Úvod 2 Reprezentace proektu 3 Neomezené zdroe 4 Variabilní doba trvání 5 Přidání pracovní síly Problémy plánování proektu Zprostředkování, instalace a testování rozsáhlého
Algoritmizace. 1. Úvod. Algoritmus
1. Úvod Algoritmizace V dnešní době již počítače pronikly snad do všech oblastí lidské činnosti, využívají se k řešení nejrůznějších úkolů. Postup, který je v počítači prováděn nějakým programem se nazývá
ADT prioritní fronta. Haldy. Další operace nad haldou. Binární halda. Binomické stromy. Časová složitost jednotlivých operací.
ADT prioritní fronta Haldy množina M operace Přidej(M,x) přidá prvek x do množiny M Odeber(M) odeber z množiny M prvek, který je na řadě Zásobník (LIFO), Fronta (FIFO) Prioritní fronta: Přidej(M,x) přidá
4EK212 Kvantitativní management. 7.Řízení projektů
4EK212 Kvantitativní management 7.Řízení projektů 6.5 Řízení projektů Typická aplikace teorie grafů Projekt = soubor činností Příklady: Vývoj a uvedení nového výrobku Výstavba či rekonstrukce objektu Plán
Algoritmy II. Otázky k průběžnému testu znalostí
Algoritmy II Otázky k průběžnému testu znalostí Revize ze dne 19. února 2018 2 Lineární datové struktury 1 1. Vysvětlete co znamená, že zásobník představuje paměť typu LIFO. 2. Co je to vrchol zásobníku?
Metody síťové analýzy
Metody síťové analýzy Řeší problematiku složitých systémů, zejména pak vazby mezi jejich jednotlivými prvky. Vychází z teorie grafů. Základní metody síťové analýzy: CPM (Critical Path Method) deterministický
Teorie grafů. Teoretická informatika Tomáš Foltýnek
Teorie grafů Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Opakování z minulé přednášky Co je to složitostní třída? Jaké složitostní třídy známe? Kde leží hranice mezi problémy řešitelnými