"Agent Hledač" (3. přednáška)

Rozměr: px
Začít zobrazení ze stránky:

Download ""Agent Hledač" (3. přednáška)"

Transkript

1 "Agent Hledač" (3. přednáška)

2 Přehled 3. přednášky v této přednášce se budeme zabývat "goal-based" agenty

3 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" agent se snaží nalézt posloupnost akcí, vedoucích k cíli

4 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" agent se snaží nalézt posloupnost akcí, vedoucích k cíli budeme zkoumat obecné "postupy", jak tuto posloupnost najít

5 Příklad dovolená v Rumunsku Agent je na prázdninách v Rumunsku.

6 Příklad dovolená v Rumunsku Agent je na prázdninách v Rumunsku.

7 Příklad dovolená v Rumunsku Agent je na prázdninách v Rumunsku. zítra mu letí letadlo z Bukureště.

8 Příklad dovolená v Rumunsku Agent je na prázdninách v Rumunsku. zítra mu letí letadlo z Bukureště. Pojďme trochu abstrahovat.

9 Příklad dovolená v Rumunsku Agent je na prázdninách v Rumunsku. zítra mu letí letadlo z Bukureště. Pojďme trochu abstrahovat. Oradea 71 Neamt Zerind Iasi Arad Sibiu 99 Fagaras Vaslui Timisoara Rimnicu Vilcea Lugoj Pitesti Mehadia Urziceni Hirsova Dobreta 120 Bukurešť 90 Craiova Giurgiu Eforie

10 Dovolená v Rumunsku (cesta v grafu) Přímo se nabízí grafová formulace

11 Dovolená v Rumunsku (cesta v grafu) Přímo se nabízí grafová formulace prostředí je dáno grafem (silniční síť Rumunska)

12 Dovolená v Rumunsku (cesta v grafu) Přímo se nabízí grafová formulace prostředí je dáno grafem (silniční síť Rumunska) agent se pohybuje po hranách tohoto grafu mezi vrcholy

13 Dovolená v Rumunsku (cesta v grafu) Přímo se nabízí grafová formulace prostředí je dáno grafem (silniční síť Rumunska) agent se pohybuje po hranách tohoto grafu mezi vrcholy jeho cílem je najít cestu z vrcholu Arad do vrcholu Bukurešť

14 Dovolená v Rumunsku (cesta v grafu) Přímo se nabízí grafová formulace prostředí je dáno grafem (silniční síť Rumunska) agent se pohybuje po hranách tohoto grafu mezi vrcholy jeho cílem je najít cestu z vrcholu Arad do vrcholu Bukurešť (případně je cílem najít nejkratší cestu)

15 Agent vysavač hledání pořádku Robotický vysavač, nacházející se

16 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost)

17 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P.

18 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava

19 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva

20 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat.

21 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti.

22 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu

23 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu stav světa + pozice robota

24 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu stav světa + pozice robota hrana grafu

25 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu stav světa + pozice robota hrana grafu odpovídá jedné ze tří možných akcí

26 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu stav světa + pozice robota hrana grafu odpovídá jedné ze tří možných akcí cílový vrchol

27 Agent vysavač hledání pořádku Robotický vysavač, nacházející se (pro jednoduchost) v místnosti rozdělené na dvě pole L a P. Umí se pohybovat doprava, doleva a vysávat. Cílem je dosáhnout čisté místnosti. vrchol grafu stav světa + pozice robota hrana grafu odpovídá jedné ze tří možných akcí cílový vrchol stav, kde jsou obě pole čistá

28 Agent vysavač hledání pořádku Jdi vpravo ej v sá Vy L L Jdi vpravo P Jdi vlevo Vys áve L L P Jdi vpravo L P Vys á P Jdi vlevo Jdi vlevo L j P j ve Jdi vlevo vej L P Jdi pravo P sá Vy L P

29 Agent 008 Loydova osmička Počáteční stav Cílový stav

30 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu

31 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček

32 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček hrana grafu

33 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček hrana grafu pohnutí kostičkou (volným místem)

34 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček hrana grafu pohnutí kostičkou (volným místem) cílový vrchol

35 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček hrana grafu pohnutí kostičkou (volným místem) cílový vrchol kostičky jsou srovnané podle čísel

36 Agent 008 Loydova osmička Počáteční stav Cílový stav vrchol grafu pozice kostiček hrana grafu pohnutí kostičkou (volným místem) cílový vrchol kostičky jsou srovnané podle čísel Optimální řešení (t.j. na nejmenší počet tahů) n-verze tohoto hlavolamu je NP-těžký problém.

37 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit?

38 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu

39 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází

40 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst

41 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst hrana grafu

42 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst hrana grafu silnice spojující města

43 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst hrana grafu silnice spojující města cílový vrchol

44 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst hrana grafu silnice spojující města cílový vrchol vrchol odpovídající počátečnímu městu, ve kterém jsou všechna města navštívena

45 Obchodní cestující (TSP) Obchodní cestující chce navštívit nějaká města a vrátit se na začátek. V jakém pořadí je má navštěvovat tak, aby minimalizoval vzdálenost, kterou bude muset urazit? vrchol grafu kombinace následujících údajů: město, ve kterém se obchodní cestující nachází a stav navštívenosti jednotlivých měst hrana grafu silnice spojující města cílový vrchol vrchol odpovídající počátečnímu městu, ve kterém jsou všechna města navštívena NP-těžký problém.

46 Montážní linka P R R R R R

47 Montážní linka P R R R R R vrchol grafu

48 Montážní linka P R R R R R vrchol grafu kombinace poloh jednotlivých kloubů robotického ramene a jednotlivých součástí

49 Montážní linka P R R R R R vrchol grafu kombinace poloh jednotlivých kloubů robotického ramene a jednotlivých součástí hrana grafu

50 Montážní linka P R R R R R vrchol grafu kombinace poloh jednotlivých kloubů robotického ramene a jednotlivých součástí hrana grafu pohnutí jednotlivého robotického kloubu

51 Montážní linka P R R R R R vrchol grafu kombinace poloh jednotlivých kloubů robotického ramene a jednotlivých součástí hrana grafu pohnutí jednotlivého robotického kloubu cílový vrchol

52 Montážní linka P R R R R R vrchol grafu kombinace poloh jednotlivých kloubů robotického ramene a jednotlivých součástí hrana grafu pohnutí jednotlivého robotického kloubu cílový vrchol stav, kde jednotlivé součásti jsou složeny

53 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli

54 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli Postupným procházením vytváříme strom

55 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli Postupným procházením vytváříme strom uzly ve stromu jsou posloupnosti akcí

56 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli Postupným procházením vytváříme strom uzly ve stromu jsou posloupnosti akcí každému uzlu odpovídá stav světa (po provedení dané posloupnosti akcí)

57 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli Postupným procházením vytváříme strom uzly ve stromu jsou posloupnosti akcí každému uzlu odpovídá stav světa (po provedení dané posloupnosti akcí) dvěma různým uzlům mohou odpovídat stejné stavy světa (!)

58 Hledáme řešení strom akcí Idea Procházet všechny možné posloupnosti akcí a zjistit, která vede k cíli Postupným procházením vytváříme strom uzly ve stromu jsou posloupnosti akcí každému uzlu odpovídá stav světa (po provedení dané posloupnosti akcí) dvěma různým uzlům mohou odpovídat stejné stavy světa (!) chceme najít uzel, jehož stav je cílovým stavem

59 Strom akcí robot vysavač l,š,š

60 Strom akcí robot vysavač l,š,š vysávej jdi vpravo jdi vlevo l,č,š l,š,š p,š,š

61 Strom akcí robot vysavač l,č,š l,š,š vysávej vysávej jdi vpravo jdi vlevo p,č,š jdi vpravo l,č,š l,š,š jdi vlevo p,š,š l,č,š

62 Strom akcí robot vysavač l,č,š l,š,š vysávej vysávej jdi vpravo jdi vlevo p,č,š jdi vpravo l,č,š l,š,š jdi vlevo p,š,š l,č,š vysávej jdi vpravo jdi vlevo p,š,č l,š,š p,š,š

63 Strom akcí robot vysavač l,č,š l,š,š l,š,š vysávej vysávej jdi vpravo jdi vlevo jdi vlevo p,č,š jdi vpravo l,č,š l,š,š jdi vpravo p,š,š jdi vlevo p,š,š vysávej l,č,š vysávej jdi vpravo jdi vlevo l,č,š p,š,č l,š,š p,š,š

64 Strom akcí robot vysavač l,č,š l,š,š l,š,š vysávej vysávej jdi vpravo jdi vlevo jdi vlevo p,č,š jdi vpravo l,č,š l,š,š jdi vpravo p,š,š jdi vlevo p,š,š vysávej l,č,š vysávej jdi vpravo jdi vlevo l,č,š p,š,č l,š,š p,š,š různé uzly odpovídající stejným stavům

65 Prohledávání stromu akcí idea Postupně budujeme strom akcí, dokud nenarazíme na cílový stav.

66 Prohledávání stromu akcí idea Postupně budujeme strom akcí, dokud nenarazíme na cílový stav. v každém kroku dle nějaké strategie vybereme uzel ve stromu akcí

67 Prohledávání stromu akcí idea Postupně budujeme strom akcí, dokud nenarazíme na cílový stav. v každém kroku dle nějaké strategie vybereme uzel ve stromu akcí v tomto uzlu strom rozšíříme

68 Prohledávání stromu akcí idea Postupně budujeme strom akcí, dokud nenarazíme na cílový stav. v každém kroku dle nějaké strategie vybereme uzel ve stromu akcí v tomto uzlu strom rozšíříme za každou akci, kterou je možné v daném uzlu (resp. stavu) provést přidáme do stromu akcí nový uzel

69 Prohledávání stromů tree search def treesearch ( problem, strategy ): # Inicializuj strom. tree = node ( problem. initial_state ()) while True : # Zvol kandidata k expanzi dle strategie. leaf_ node = strategy ( problem, tree ) # Mame reseni, vrat posloupnost kroku. if problem. is_goal ( leaf_node. state () ): return leaf_ node # Expanduj kandidata ( pridej do stromu # uzly, ktere sousedi s kandidatem ). stav = leaf_ node. state () for a in stav. possible_ actions (): nb_stav = stav. act (a) leaf_node. add_child ( a, node ( nb_stav ) )

70 Prohledávací strategie hodnotící kritéria úplnost

71 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje)

72 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost

73 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální)

74 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost

75 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat)

76 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost

77 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost (kolik uzlů je třeba držet v paměti)

78 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost (kolik uzlů je třeba držet v paměti) Časová složitost a paměťová náročnost se měří jako funkce

79 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost (kolik uzlů je třeba držet v paměti) Časová složitost a paměťová náročnost se měří jako funkce b faktor větvení (branching factor)

80 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost (kolik uzlů je třeba držet v paměti) Časová složitost a paměťová náročnost se měří jako funkce b faktor větvení (branching factor) d hloubka optimálního řešení

81 Prohledávací strategie hodnotící kritéria úplnost (vždy nalezne cílový stav, pokud existuje) optimálnost (posloupnost akcí vedoucí do cílového stavu bude optimální) časová složitost (kolik uzlů je třeba vygenerovat) paměťová náročnost (kolik uzlů je třeba držet v paměti) Časová složitost a paměťová náročnost se měří jako funkce b faktor větvení (branching factor) d hloubka optimálního řešení m hloubka prohledávaného stromu

82 Prohledávací strategie uninformed search prohledávání do šířky (BFS)

83 Prohledávací strategie uninformed search prohledávání do šířky (BFS) prohledávání do hloubky (DFS)

84 Prohledávací strategie uninformed search prohledávání do šířky (BFS) prohledávání do hloubky (DFS) omezená hloubka (depth limited, DLS)

85 Prohledávací strategie uninformed search prohledávání do šířky (BFS) prohledávání do hloubky (DFS) omezená hloubka (depth limited, DLS) iterování hloubky (iterative deepening, IDS)

86 Prohledávací strategie uninformed search prohledávání do šířky (BFS) prohledávání do hloubky (DFS) omezená hloubka (depth limited, DLS) iterování hloubky (iterative deepening, IDS)

87 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

88 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

89 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

90 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

91 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

92 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

93 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

94 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

95 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

96 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

97 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

98 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

99 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

100 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

101 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

102 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

103 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

104 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

105 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

106 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

107 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

108 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

109 BFS prohledávání do šířky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

110 BFS prohledávání do šířky úplnost:

111 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné)

112 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost:

113 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1

114 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b

115 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b 2

116 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1)

117 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 )

118 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost:

119 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti)

120 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti) optimalita:

121 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti) optimalita: to závisí

122 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti) optimalita: to závisí (ano, pokud všechny akce stojí stejně, jinak je třeba modifikovat)

123 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti) optimalita: to závisí (ano, pokud všechny akce stojí stejně, jinak je třeba modifikovat) Největším problémem je paměťová náročnost.

124 BFS prohledávání do šířky úplnost: ANO (pokud je b konečné) časová složitost: 1 + b + b b(b d 1) = O(b d+1 ) paměťová náročnost: O(b d+1 ) (celý strom akcí se uchovává v paměti) optimalita: to závisí (ano, pokud všechny akce stojí stejně, jinak je třeba modifikovat) Největším problémem je paměťová náročnost. b = 10, uzlů/sec., uzel = 1Kb hloubka uzly čas paměť s 1 Mb s 106 Mb min 10 Gb h 1 Tb dní 101 Tb let 10 Petabyte let 1 Exabyte

125 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

126 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

127 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

128 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

129 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

130 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

131 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

132 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

133 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

134 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

135 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

136 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

137 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

138 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

139 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

140 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

141 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

142 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

143 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

144 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

145 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

146 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

147 DFS prohledávání do hloubky 0111 uzel zvolený k expanzi potenciální kandidát k expanzi (nutno udržovat v paměti)

148 DFS prohledávání do hloubky úplnost:

149 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná

150 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky)

151 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost:

152 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m )

153 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m ) problém, pokud je d << m pokud jsou řešení hustě rozložená, je mnohem rychlejší než BFS paměťová náročnost:

154 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m ) problém, pokud je d << m pokud jsou řešení hustě rozložená, je mnohem rychlejší než BFS paměťová náročnost: O(m) (lineární!)

155 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m ) problém, pokud je d << m pokud jsou řešení hustě rozložená, je mnohem rychlejší než BFS paměťová náročnost: O(m) (lineární!) optimalita:

156 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m ) problém, pokud je d << m pokud jsou řešení hustě rozložená, je mnohem rychlejší než BFS paměťová náročnost: O(m) (lineární!) optimalita: NE

157 DFS prohledávání do hloubky úplnost: NE (pokud je hloubka nekonečná nebo pokud jsou smyčky) časová složitost: O(b m ) problém, pokud je d << m pokud jsou řešení hustě rozložená, je mnohem rychlejší než BFS paměťová náročnost: O(m) (lineární!) optimalita: NE

158 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme.

159 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l

160 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost:

161 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO

162 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost:

163 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d )

164 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d ) paměťová náročnost:

165 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d ) paměťová náročnost: O(d) (lineární!)

166 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d ) paměťová náročnost: O(d) (lineární!) optimalita:

167 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d ) paměťová náročnost: O(d) (lineární!) optimalita: ANO (pokud všechny akce stojí stejně, jinak je třeba modifikovat)

168 DLS,IDS prohledávání do omezené hloubky DLS prohledávání do hloubky, ale strom usekneme na hladině l a hlouběji nejdeme. IDS postupně aplikujeme DLS s větším a větším l úplnost: ANO časová složitost: O(b d ) paměťová náročnost: O(d) (lineární!) optimalita: ANO (pokud všechny akce stojí stejně, jinak je třeba modifikovat)

169 Prohledávání z obou konců

170 Částečně pozorovatelné, nedeterminované světy

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 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í

Více

Neinformované metody prohledávání stavového prostoru Michal Pěchouček, Milan Rollo. Department of Cybernetics Czech Technical University in Prague

Neinformované metody prohledávání stavového prostoru Michal Pěchouček, Milan Rollo. Department of Cybernetics Czech Technical University in Prague Neinformované metody prohledávání stavového prostoru Michal Pěchouček, Milan Rollo Department of Cybernetics Czech Technical University in Prague http://cw.felk.cvut.cz/doku.php/courses/a3b33kui/start

Více

Heuristiky, best-first search, A* search

Heuristiky, best-first search, A* search Heuristiky, best-first search, A* search Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Jak najít dobrou heuristiku? Úvod do umělé inteligence

Více

Heuristiky, best-first search, A* search.

Heuristiky, best-first search, A* search. Úvod do umělé inteligence Heuristiky, best-first search, A* search E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Heuristické hledání nejlepší cesty

Více

Heuristiky, best-first search, A* search.

Heuristiky, best-first search, A* search. Úvod do umělé inteligence Heuristiky, best-first search, A* search E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Heuristické hledání nejlepší cesty

Více

Heuristiky, best-first search, A* search.

Heuristiky, best-first search, A* search. Úvod do umělé inteligence Heuristiky, best-first search, A* search E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Heuristické hledání nejlepší cesty

Více

Umělá inteligence I. Roman Barták, KTIML.

Umělá inteligence I. Roman Barták, KTIML. Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Neinformované (slepé) prohledávání umí najít (optimální) řešení problému, ale ve většině případů

Více

Heuristiky, best-first search, A* search

Heuristiky, best-first search, A* search Informované prohledávání stavového prostoru Heuristiky, best-first search, A* search Obsah: Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Informované prohledávání stavového prostoru Neinformované

Více

Heuristiky, best-first search, A* search

Heuristiky, best-first search, A* search Heuristiky, best-first search, A* search Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Jak najít dobrou heuristiku? Úvod do umělé inteligence

Více

Heuristiky, best-first search, A* search

Heuristiky, best-first search, A* search Heuristiky, best-first search, A* search Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Informované prohledávání stavového prostoru Jak najít dobrou heuristiku? Úvod do umělé inteligence

Více

Obsah: Problém osmi dam

Obsah: Problém osmi dam Prohledávání stavového prostoru leš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Problém osmi dam Prohledávání stavového prostoru Neinformované prohledávání Úvod do umělé inteligence

Více

Ú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ů

Ú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

Více

Heuristiky, best-first search, A* search

Heuristiky, best-first search, A* search Heuristiky, best-first search, A* search Najdi cestu z města do města Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: 71 140 118 111 70 Dobreta Neamt 87 151 Iasi 92 99 Fagaras Vaslui

Více

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 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

Více

Algoritmizace prostorových úloh

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

Více

bfs, dfs, fronta, zásobník, prioritní fronta, halda

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ší

Více

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

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

Více

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. 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

Více

Algoritmy a datové struktury

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

Více

Základy umělé inteligence

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

Více

bfs, dfs, fronta, zásobník, prioritní fronta, halda

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ší

Více

Grafové algoritmy. Programovací techniky

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

Více

bfs, dfs, fronta, zásobník

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í

Více

Grafové algoritmy. Programovací techniky

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

Více

1. Prohledávání stavového prostoru

1. Prohledávání stavového prostoru Obsah 1. Prohledávání stavového prostoru... 2 1.1. Základní informace... 2 1.2. Výstupy z učení... 2 1.3. Úvod... 2 1.4. Definice stavového prostoru... 3 1.1.1. Reprezentace stavového prostoru... 3 1.1.2.

Více

1. Prohledávání stavového prostoru

1. Prohledávání stavového prostoru Obsah 1. Prohledávání stavového prostoru... 2 1.1. Základní informace... 2 1.2. Výstupy z učení... 2 1.3. Úvod... 2 1.4. Definice stavového prostoru... 2 1.1.1. Reprezentace stavového prostoru... 3 1.1.2.

Více

PROBLÉM OSMI DAM II. Problém osmi dam. Obsah:

PROBLÉM OSMI DAM II.   Problém osmi dam.   Obsah: Úvod do umělé inteligence RÉ S úkol: Rozestavte po šachovnici 8 dam tak, aby se žádné dvě vzájemně neohrožovaly. -mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ bsah: rohledávání do hloubky rohledávání

Více

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

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í

Více

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 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

Více

Prohledávání stavového prostoru

Prohledávání stavového prostoru Prohledávání stavového prostoru State space search Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2017 1 / 45 Stavový prostor Prohledávání do hloubky Prohledávání do šířky Informované

Více

Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace

Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace Metody návrhu algoritmů, příklady IB111 Programování a algoritmizace 2011 Návrhu algoritmů vybrané metody: hladové algoritmy dynamické programování rekurze hrubá síla tato přednáška: především ilustrativní

Více

Úvod do teorie grafů

Ú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í

Více

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

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í

Více

Algoritmy na ohodnoceném grafu

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

Více

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

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

Více

Prohledávání do šířky = algoritmus vlny

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é

Více

Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C

Ř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

Více

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 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

Více

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 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

Více

Vzdálenost uzlů v neorientovaném grafu

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í

Více

TGH06 - Hledání nejkratší cesty

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

Více

TGH06 - Hledání nejkratší cesty

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ší

Více

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

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,

Více

07 Základní pojmy teorie grafů

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á

Více

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

Diskrétní matematika. DiM /01, zimní semestr 2018/2019 Diskrétní matematika Petr Kovář petr.kovar@vsb.cz Vysoká škola báňská Technická univerzita Ostrava DiM 470-2301/01, zimní semestr 2018/2019 O tomto souboru Tento soubor je zamýšlen především jako pomůcka

Více

Prohledávání do šířky a do hloubky. Jan Hnilica Počítačové modelování 15

Prohledávání do šířky a do hloubky. Jan Hnilica Počítačové modelování 15 Prohledávání do šířky a do hloubky Jan Hnilica Počítačové modelování 15 1 Prohledávací algoritmy Úkol postupně systematicky prohledat vymezený stavový prostor Stavový prostor (SP) možné stavy a varianty

Více

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

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

Více

Matice sousednosti NG

Matice sousednosti NG 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íce

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

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í

Více

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 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ší

Více

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. 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

Více

3. Prohledávání grafů

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

Více

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

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í

Více

10. Složitost a výkon

10. Složitost a výkon Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 10 1 Základy algoritmizace 10. Složitost a výkon doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Jiří

Více

Select sort: krok 1: krok 2: krok 3: atd. celkem porovnání. výběr nejmenšího klíče z n prvků vyžaduje 1 porovnání

Select sort: krok 1: krok 2: krok 3: atd. celkem porovnání. výběr nejmenšího klíče z n prvků vyžaduje 1 porovnání Select sort: krok 1: výběr klíče z n prvků vyžaduje 1 porovnání krok 2: výběr klíče z 1 prvků vyžaduje 2 porovnání krok 3: výběr klíče z 2 prvků vyžaduje 3 porovnání atd. celkem porovnání Zlepšení = použít

Více

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

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 Obsah přednášky Mgr. Květuše Sýkorová Optimalizace Lineární programování Distribuční úlohy Okružní problém KI Př UJEP Ústí nad Labem Nederivační metody Metody 1D optimalizace Derivační metody Optimalizace

Více

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

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

Více

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.

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

Více

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

Drsná matematika III 10. demonstrovaná cvičení Kostry grafů Drsná matematika III 10. demonstrovaná cvičení Kostry grafů Martin Panák Masarykova univerzita Fakulta informatiky 21.11. 2006 1 Domácí úlohy z minulého týdne Příklad 1 Příklad 2 Příklad 3 2 Borůvkův algoritmus

Více

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

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 Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní graf má stromovou šířku nejvýše k, a je-li tomu tak, také vrátí příslušný stromový rozklad. Poznamenejme, že je-li k součástí vstupu,

Více

bin arn ı vyhled av an ı a bst Karel Hor ak, Petr Ryˇsav y 23. bˇrezna 2016 Katedra poˇ c ıtaˇ c u, FEL, ˇ CVUT

bin arn ı vyhled av an ı a bst Karel Hor ak, Petr Ryˇsav y 23. bˇrezna 2016 Katedra poˇ c ıtaˇ c u, FEL, ˇ CVUT binární vyhledávání a bst Karel Horák, Petr Ryšavý 23. března 2016 Katedra počítačů, FEL, ČVUT Příklad 1 Naimplementujte binární vyhledávání. Upravte metodu BinarySearch::binarySearch. 1 Příklad 2 Mysĺım

Více

Použití dalších heuristik

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),

Více

Hry a UI historie. von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, přibližné vyhodnocování

Hry a UI historie. von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, přibližné vyhodnocování Hry a UI historie Hry vs. Prohledávání stavového prostoru Hry a UI historie Babbage, 1846 počítač porovnává přínos různých herních tahů von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon,

Více

Datové struktury 2: Rozptylovací tabulky

Datové struktury 2: Rozptylovací tabulky Datové struktury 2: Rozptylovací tabulky 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

Více

Stromy. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol.

Stromy. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol. Stromy Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol., 2018, B6B36DSA 01/2018, Lekce 9 https://cw.fel.cvut.cz/wiki/courses/b6b36dsa/start

Více

ALGORITMIZACE 2010/03 STROMY, BINÁRNÍ STROMY VZTAH STROMŮ A REKURZE ZÁSOBNÍK IMPLEMENTUJE REKURZI PROHLEDÁVÁNÍ S NÁVRATEM (BACKTRACK)

ALGORITMIZACE 2010/03 STROMY, BINÁRNÍ STROMY VZTAH STROMŮ A REKURZE ZÁSOBNÍK IMPLEMENTUJE REKURZI PROHLEDÁVÁNÍ S NÁVRATEM (BACKTRACK) ALGORITMIZACE 2010/03 STROMY, BINÁRNÍ STROMY VZTAH STROMŮ A REKURZE ZÁSOBNÍK IMPLEMENTUJE REKURZI PROHLEDÁVÁNÍ S NÁVRATEM (BACKTRACK) Strom / tree uzel, vrchol / node, vertex hrana / edge vnitřní uzel

Více

TGH08 - Optimální kostry

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í

Více

TGH10 - Maximální toky

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

Více

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

Kostry. 9. týden. Grafy. Marie Demlová (úpravy Matěj Dostál) 16. dubna 2019 Grafy 16. dubna 2019 Tvrzení. Je dán graf G, pak následující je ekvivalentní. 1 G je strom. 2 Graf G nemá kružnice a přidáme-li ke grafu libovolnou hranu, uzavřeme přesně jednu kružnici. 3 Graf G je souvislý

Více

Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A

Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A Každá úloha je hodnocena maximálně 25 body. Všechny své odpovědi zdůvodněte! 1. Postavte na stůl do řady vedle

Více

Rekurzivní algoritmy

Rekurzivní algoritmy Rekurzivní algoritmy 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) ZS

Více

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky Pokročilé heuristiky jednoduchá heuristika asymetrické stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy pokročilá heuristika symetrické stavový prostor, který vyžaduje řízení 1 2 Paměť pouze

Více

Prioritní fronta, halda

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

Více

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STROJNÍHO INŽENÝRSTVÍ ÚSTAV AUTOMATIZACE A INFORMATIKY FACULTY OF MECHANICAL ENGINEERING INSTITUTE OF AUTOMATION AND COMPUTER SCIENCE

Více

ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ

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

Více

Cvičení 5 - Průchod stromem a grafem

Cvičení 5 - Průchod stromem a grafem Cvičení 5 - Průchod stromem a grafem Radek Mařík Marko Genyk-Berezovskyj ČVUT FEL, K13133 14. března 2013 Cvičení 5 - Průchod stromem a grafem 14. března 2013 1 / 18 Outline 1 Průchod stromem 2 Cvičení

Více

Seminář z umělé inteligence. Otakar Trunda

Seminář z umělé inteligence. Otakar Trunda Seminář z umělé inteligence Otakar Trunda Plánování Vstup: Satisficing task: počáteční stav, cílové stavy, přípustné akce Optimization task: počáteční stav, cílové stavy, přípustné akce, ceny akcí Výstup:

Více

Vraťme se k základům: DFS = Depth First Search

Vraťme se k základům: DFS = Depth First Search Prohledávání do hloubky Vraťme se k základům: DFS = Depth First Search DFS Programování s omezujícími podmínkami Roman Barták Katedra teoretické informatiky a matematické logiky roman.bartak@mff.cuni.cz

Více

Dynamické datové struktury III.

Dynamické datové struktury III. Dynamické datové struktury III. Halda. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované

Více

8 Přednáška z

8 Přednáška z 8 Přednáška z 3 12 2003 Problém minimální kostry: Dostaneme souvislý graf G = (V, E), w : E R + Našim úkolem je nalézt strom (V, E ) tak, aby výraz e E w(e) nabýval minimální hodnoty Řešení - Hladový (greedy)

Více

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

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13. Grafy doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Grafy 104 / 309 Osnova přednášky Grafy

Více

Obecná informatika. Matematicko-fyzikální fakulta Univerzity Karlovy v Praze. Podzim 2012

Obecná informatika. Matematicko-fyzikální fakulta Univerzity Karlovy v Praze. Podzim 2012 Obecná informatika Přednášející Putovních přednášek Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Podzim 2012 Přednášející Putovních přednášek (MFF UK) Obecná informatika Podzim 2012 1 / 18

Více

Metody síťové analýzy

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ý

Více

Spojový seznam. Jan Kybic.

Spojový seznam. Jan Kybic. Spojový seznam Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2017 1 / 25 Složitost operací u lineárních datových struktur v Pythonu operace zásob. fronta pole pole řetězce přidej na začátek

Více

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

HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO HEURISTICKÉ ALGORITMY PRO ŘEŠENÍ ÚLOH OBCHODNÍHO CESTUJÍCÍHO Heuristické algoritmy jsou speciálními algoritmy, které byly vyvinuty pro obtížné úlohy, jejichž řešení je obtížné získat v rozumném čase. Mezi

Více

Dynamické programování

Dynamické programování Dynamické programování 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)

Více

11. Tabu prohledávání

11. Tabu prohledávání Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI

Více

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

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

Více

TGH12 - Problém za milion dolarů

TGH12 - Problém za milion dolarů TGH12 - Problém za milion dolarů Jan Březina Technical University of Liberec 7. května 2013 Složitost problému Co je to problém? Složitost problému Co je to problém? K daným vstupním datům (velkému binárnímu

Více

Intervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti.

Intervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti. Intervalové stromy Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme průběžně provádět tyto dvě operace: 1. Změna jednoho čísla v posloupnosti. 2. Zjištění součtu čísel

Více

A4B33ZUI Základy umělé inteligence

A4B33ZUI Základy umělé inteligence LS 2014 Jméno: A4B33ZUI Základy umělé inteligence 11. 6. 2014 O1 O2 O3 O4 O5 Total (50) Instrukce: Na vypracování máte 150 min, můžete použít vlastní poznámky v podobě ručně popsaného listu A4. Použití

Více

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. 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ý

Více

TGH09 - Barvení grafů

TGH09 - Barvení grafů TGH09 - Barvení grafů Jan Březina Technical University of Liberec 15. dubna 2013 Problém: Najít obarvení států na mapě tak, aby žádné sousední státy neměli stejnou barvu. Motivační problém Problém: Najít

Více

Metodický koncept k efektivní podpoře klíčových odborných kompetencí s využitím cizího jazyka ATCZ62 - CLIL jako výuková strategie na vysoké škole

Metodický koncept k efektivní podpoře klíčových odborných kompetencí s využitím cizího jazyka ATCZ62 - CLIL jako výuková strategie na vysoké škole Pattern matching Metodický koncept k efektivní podpoře klíčových odborných kompetencí s využitím cizího jazyka ATCZ62 - CI jako výuková strategie na vysoké škole Pattern matching porovnávání vzorů Hledání

Více

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

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?

Více

popel, glum & nepil 16/28

popel, glum & nepil 16/28 Lineární rezoluce další způsob zjemnění rezoluce; místo stromu směřujeme k lineární struktuře důkazu Lineární rezoluční odvození (důkaz) z Ë je posloupnost dvojic ¼ ¼ Ò Ò taková, že Ò ½ a 1. ¼ a všechna

Více

Algoritmy výpočetní geometrie

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)

Více

NPRG030 Programování I, 2018/19 1 / :03:07

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í

Více

1. Nejkratší cesta v grafu

1. Nejkratší cesta v grafu 08. Nekratší cesty. Úloha obchodního cestuícího. Heurstky a aproxmační algortmy. Metoda dynamckého programování. Problém batohu. Pseudopolynomální algortmy 1. Nekratší cesta v grafu - sled e lbovolná posloupnost

Více

Lineární spojový seznam (úvod do dynamických datových struktur)

Lineární spojový seznam (úvod do dynamických datových struktur) Lineární spojový seznam (úvod do dynamických datových struktur) Jan Hnilica Počítačové modelování 11 1 Dynamické datové struktury Definice dynamické struktury jsou vytvářeny za běhu programu z dynamicky

Více