Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch

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

Download "Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch"

Transkript

1 Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch Katedra počítačových systémů FIT České vysoké učení technické v Praze 2011 MI-PAR, ZS2011/12, Cv.1-6 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti

2 Sekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... 1 of :10 Sekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS) Algoritmus DFS prohledává stavový prostor s použitím zásobníku. Koncový stav je stav, který nemá následníky. Ostatní stavy budeme nazývat mezistavy. Cílem DFS je nalézt koncový stav, který vyhovuje podmínkam řešení, čili tzv. přípustný koncový stav. Pojmy řešení a přípustný koncový stav budeme používat zaměnitelně. Jednotlivé algoritmy DFS se liší podle následujících hledisek, která nejsou úplně ortogonalní: kritéria pro ukončení DFS, úplnost prohledávání stavového prostoru, omezenost hloubky prohledavaného stavového prostoru. Kritéria pro ukončení DFS Existuje několik kriterií pro ukončení DFS. V semestrálních pracech budeme uvažovat tyto případy ukončení DFS: 1. DFS s jednoduchým návratem (simple backtrack, SB-DFS) Cílem je nalézt první přípustný koncový stav (t.j., první řešení). V případě, že existuji řešení s různou cenou nebo dosažitelná různým počtem kroků, SB-DFS nemusí nalézt řešení optimální. SB-DFS se používá v případě, že všechna řešení mají stejnou cenu nebo jsou dosažitelné ve stejném počtu kroků. Návrat se provádí z nepřípustného koncového stavu (stavu, který nemá následníky a nevyhovuje podmínkám řešení) nebo z mezistavu, který nesplňuje vlastnosti řešení a nemůže tudíž vést k přípustnému koncovému stavu. Takovému mezistavu budeme říkat nepřípustný mezistav. Mezistavům, které mohou vést k přípustným koncovým stavům, budeme tedy říkat přípustné mezistavy. 2. DFS metodou větví a řezů (branch-and-bound DFS, BB-DFS) Cílem prohledávání stavového prostoru je nalezení přípustného koncového stavu s nejmenší cenou (úplně analogicky funguje tato metoda v případě, že hledáme řešení s maximální cenou). Cena je definována nějakou funkcí, která vrací hodnotu ordinálního typu. Při prvním nalezení přípustného koncového stavu se nastaví počáteční hodnota této ceny nebo je možné před spuštěním algoritmu prohledávání nastavit počáteční odhad ceny (to může být buď +/-nekonečno nebo hodnota odvozená ze vstupních data). Pokud to je možné, je také třeba předem určit spodní mez na cenu. Ta může být triviální (a často nedosažitelná), těsná (v závislosti na konkrétní instanci i dosažitelná), nebo nějaký odhad mezi tím. Kdykoli se nalezne nový přípustný koncový stav, zkontroluje se, zda je jeho cena menší než cena dosavadního nejlepšího řešení. Pokud ano, provede se aktualizace nejlepšího řešení. V každém případě se provede návrat. Stejně jako v SB-DFS, návrat se provádí z nepřípustných mezistavů. Navíc se ale návrat provádí i z přípustných mezistavů, které nemohou vést k řešením s nižší cenou, než je nejlepší dosud nalezené řešení. Úplnost prohledávání stavového prostoru V závislosti na existenci dolní meze na cenu řešení zde existují pouze dvě možnosti. 1. Vždy úplné (always exhaustive, AE) prohledávání: Je nutné u úloh BB-DFS, u kterých nelze určit (vypočítat) dolní mez ceny řešení a proto do poslední

3 Sekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... 2 of :10 chvíle neznáme hodnotu minimální ceny řešení a proto nelze tedy vyloučit, že i to úplně poslední nalezené řešení má nejmenší cenu. 2. Úplné v závislosti na vstupních datech (data-dependent exhaustive, DDE) prohledávání: Týká se jednak SB-DFS a jednak BB-DFS, u kterých dokážeme předem určit (vypočítat) dolní mez ceny řešení. SB-DFS: Celý prostor se bude prohledávat pouze tehdy, neexistuje-li pro daná vstupní data žádné řešení nebo je-li existující řešení na konci stavového DFS prostoru. BB-DFS: Ze vstupních dat lze vypočítat dolní mez na cenu řešení. Pokud ji žádné řešení nedosahuje, je nutné prohledávat celý prostor. Jinak je výpočet ukončen nalezením prvního řešení s cenou rovnou dolní mezi. Hloubka prohledávaného stavového prostoru 1. Omezená hloubka prohledávaného stavového prostoru Počet kroků nutných pro dosažení všech řešení může být stejný anebo hloubka prohledávaného stavového prostoru, tudíž i maximální výška zásobníku, může být různá pro různá řešení, ale je zaručeně omezena a hodnota této meze závisí na vstupních datech. Vyskytuje se jak u SB-DFS, tak u BB-DFS. 2. Neomezená hloubka prohledávaného stavového prostoru Délka cesty z počátečního do přípustného koncového stavu není buď známa nebo vznikají cykly (při DFS procházení stavového prostoru se generují stejné stavy). V některých úlohách se setkáme s BB-DFS s neomezenou hloubkou hledání, ve kterém existuje pouze jediný přípustný koncový stav, tzv. cílový stav, kterého chceme dosáhnout v minimálním počtu kroků. Jedná se tedy o BB-DFS, ve kterém je cena, kterou ohodnocujeme řešení a kterou minimalizujeme, rovna délce nebo ceně cesty v stavovém stromu nutné pro dosažení cílového stavu. Pro nalezení konečné cesty k řešení je obvykle nutno použít omezení za pomoci horní meze ceny řešení. U těchto úloh buď dokážeme vypočítat těsnou horní mez na hloubku prohledávaného prostoru (zásobníku), kde se hledaný stav musí vyskytovat, nebo musíme provést odhad této horní meze (zásobníku), a zacyklení zabráníme omezením hloubky prohledávání na tuto mez bez újmy na řešitelnost úlohy. Obecný algoritmus pro paralelní DFS Ve všech úlohách uvažujeme paralelní počítač s distribuovanou pamětí s p procesory označovanými P 1, P 2,, P p, propojených propojovací sítí topologií úplný graf (UG) (čili každá dvojice procesorů je přímo propojena). Efektivní implementace prohledávání stavového prostoru pomocí více procesorů by měla splňovat následující podmínky: Všechny procesory by měly být pokud možno neustále vytíženy prohledáváním pokud možno disjunktních částí stavového prostoru. V případě, že je nalezeno první (u SB-DFS) nebo optimalní (u BB-DFS) řešení, je paralelní výpočet ukončen pomocí zprávy typu jeden-všem (one-to-all broadcast, OAB).

4 ekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... of :10 3. V případě nutnosti prohledat celý stavový prostor, protože neznáme dolní mez ceny řešení (u BB-DFS), procesory prohledají jim přidělené podprostory a výpočet bude ukončen algoritmem pro detekci ukončení (TTDA). Splnění bodu 1) předpokládá existenci lokalních zásobníků procesorů a dynamické vyvažování výpočetní zátěže (load balancing). Vyvažování zátěže je implementováno pomocí 2 algoritmů: algoritmus pro dělení zásobníku (ADZ) a algoritmus pro hledání dárce (AHD), kterými nečinný procesor s prázdným lokálním zásobníkem (stav I=idle) získává práci od vhodného dárce, což je aktivní procesor s neprázdným zásobníkem (stav A=active), jehož zásobník odpovídá dostatečně velkému stavovému podprostoru. Na počátku procesor P.. 1 zná počet procesorů p, na kterých se úloha bude řešit. Provede dostatečný počet expanzí počátečního stavu, rozdělí svůj zásobník na p částí a rozešle jednotlivé části ostatním procesorům. Všechny procesory začnou prohledávat svůj přidělený podprostor a přitom realizují programovou smyčku naznačenou na tomto obrázku. Aktivní procesor, který vyčerpá svůj přidělený díl práce, se stane nečinný a pomocí algoritmu pro hledání dárce AHD vybere dárce a pošle mu žádost o práci. Pokud mu dárce práci pošle, přepne se zpět do stavu aktivní. Pokud se mu vrátí odmítnutí, vše se opakuje. Procesor ve stavu nečinný musí take periodicky kontrolovat, zda nemá ve frontě žádosti o práci, na které odpovídá odmítnutím, nebo zprávy o nalezení řešení jiným procesorem. V případě, že se jedná o optimální řešení, jsou to v podstatě žádosti o ukončení výpočtu. Aktivní procesor provádí fixní objem práce nad lokálním zásobníkem (expanduje určitý daný počet stavu na lokálním zásobníku) a pak kontroluje frontu zpráv. V té mohou být žádosti o práci, informace o nalezení řešení jiným procesorem a žádosti o ukončení výpočtu. Pořadí, ve kterém zprávy z fronty vybírá, záleží na typu DFS. Například nemá smysl dělit práci, je-li již ve frontě zpráva, že první/optimální řešení bylo nalezeno. Aktivní procesor zpracovává žádosti o práci následujícím způsobem: Zjistí počet žádostí ve frontě. Nechť je jich k>=1. Pak algoritmem ADZ rozdělí svůj zásobník na k+1 částí a k částí rozešle k žadatelům. Sám pak pokračuje ve výpočtu se zbytkem zásobníku. Pokud má sám nebo by mu zbylo jen podprahové množství práce (položky zásobníku nad prahem řezné výšky), část požadavků nebo všechny požadavky odmítne. Algoritmy pro hledání dárce (AHD)

5 Sekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... 4 of :10 Existuje několik algoritmů pro hledání dárce. V rámci semestrálních projektů uvažujeme následující 3: 1. ACZ-AHD (asynchroní cyklické žádosti): Každý procesor si udržuje lokální čítač D, kde 1 D p, označující potenciálního dárce. Procesor s prázdným zásobníkem pošle žádost o práci procesoru P D a inkrementuje čítač D mod p. Může se stát, že jeden a tentýž procesor obdrží několik žádostí o práci. 2. GCZ-AHD (globální cyklické žádosti): Procesor P 1 centrálně udržuje globální čítač D. Kdykoli nějaký procesor potřebuje práci, požádá procesor P 1 o aktuální hodnotu D. P 1 poté inkrementuje D modulo p. 3. NV-AHD (náhodné výzvy): Procesor P i hledající práci si náhodně generuje číslo potenciálního dárce z množiny {1,..,p}-{i}. Generátor náhodných čísel nainicializujte v každém procesoru jiným semínkem. Algoritmy pro dělení zásobníku (ADZ) Zásobník je zobrazen obráceně, dno nahoře, vrchol dole, v souladu s odpovídajícím stavovým stromem. Má-li dárce za úkol rozdělit svůj zásobník na k+1 části, kde k je počet žadatelů o práci v jeho frontě (v praxi bude k řadu jednotek), pak provede dělení na nejbližší možné 1/2 i -tiny opakovaným dělením zásobníku na poloviny (i je horní celá část z log 2 (k+1)). Např. je-li k=2, pak si nechá polovinu a každému žadateli pošle jednu čtvrtinu. Je-li k=5, pak si nechá jednu čtvrtinu, prvnímu žadateli pošle jednu čtvrtinu a zbývajícím čtyřem žadatelům pošle po jedné osmině. Přestože není velikost stavového prostoru skrývajícího se za nerozvinutými stavy zásobníku odhadnutelná, předpokládáme, že podprostory jsou tím větší, čím je neexpandovaný stav blíže dnu zásobníku. Pro danou úlohu je třeba stanovit prah řezné výšky H, což je maximální výška zásobníku, do které se bude dělení provádět. Tuto výšku je pro danou úlohu nutno stanovit experimentalně jako funkci velikosti vstupních dat. Čili dělení se neprovádí, pokud by dělením vznikl zásobník pouze se stavy ve výšce větší než H. Není-li dárce schopen nalézt dost práce pro všech k čekajících žadatelů, uspokojí pouze první část a zbytek odmítne. Smysl dávají 3 strategie pro půlení zásobníku. Vysvětlíme si je na příkladu s počátečním stavem zásobníku dárce dle následujícího obrázku.

6 Sekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... 5 of :10 1. D-ADZ (půlení u dna). Žadatel obdrží zásobník s jednou polovinou stavu co nejblíže dnu. 2. R-ADZ (půlení na prahu rezne vysky). Žadatel obdrží polovinu stavu z výšky H či menší. 3. D-R-ADZ (půlení všech stavů mezi dnem a prahem řezné výšky). Žadatel obdrží zásobník vznikly odříznutím poloviny stavu mezi dnem a prahem řezné výšky zásobníku H.

7 ekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... of :10 Strategie průchodu a ukončování paralelního DFS Zpracování řešení a ukončování výpočtu závisí na typu DFS algoritmu. Paralelní DFS s jednoduchým návratem (PSB-DFS) Pokud má úloha alespoň jedno řešení, procesor, který nalezne první řešení, rozešle toto řešení spolu s žádostí o ukončení výpočtu všem procesorům. Pokud úloha řešení nemá, pak procesory pomocí algoritmu pro vyvažování zátěže společně prohledají celý stavový prostor, vyprázdní své zásobníky a distribuovaně provedou ukončení výpočtu pomocí algoritmu ADUV. Paralelní BB-DFS s vždy úplným prohledáváním stavového prostoru (PBB-DFS-V) Všechny procesory vědí nebo se dozvědí hodnotu horní meze ceny řešení a hodnota dolní meze není známa. Pak stačí, aby si každý procesor lokálně udržoval informaci o svém dosud nejlepším řešení. Po vyprázdnění všech zásobníků se provede distribuované ukončení výpočtu pomocí algoritmu ADUV a pak pomocí paralelní redukce se ze všech nejlepších lokálních řešení vybere globálně nejlepší. Paralelní BB-DFS s prohledáváním DDE stavového prostoru (PBB-DFS-D) Všechny procesory vědí nebo se dozvědí počáteční hodnotu horní i dolní meze ceny řešení. Budeme používat 2 strategie, jak minimalizovat prohledávání stavového prostoru. Lokální (L-PBB-DFS-D): Každý procesor si udržuje informaci o lokálně nejlepším řešení a pokud řešení s cenou rovnou dolní mezi neexistuje, bude prohledávat celý stavový prostor a po distribuovaném ukončení výpočtu pomocí algoritmu ADUV bude globálně nejlepší řešení ziskano paralelni redukci lokalnich reseni. Existuje-li reseni s cenou rovnou dolni mezi, procesor, který jej nalezne, ukončí výpočet vysláním zprávy typu jeden-všem. Globální (G-PBB-DFS-D):

8 ekvencni algoritmy prohledavani do hloubky (Depth-first search, DFS... of :10 Každý procesor, který nalezne lepší řešení než jemu známé nejlepší řešení, neaktualizuje pouze svou informaci, ale rozešle zprávu typu jeden-všem ostatním procesorům, kteří si nastaví informaci o dosud nejlepším řešení. Je-li to optimalní řešení, pak opět dojde k ukončení výpočtu. Jinak proběhne po vyprázdnění všech zásobníků distribuované ukončení výpočtu pomocí algoritmu ADUV bez nutnosti nasledné redukce lokálních řešení. V porovnání s lokalní strategií vede tato strategie k vyšší komunikační režii, ale zase dovoluje eliminovat prohledávání větší části stavového prostoru, protože každy procesor zna momentálně nejlepší globální řešení a častěji pozná zbytečnost prohledávání v podprostorech. Algoritmus pro distribuované ukončení paralelního výpočtu (ADUV) Každý procesor může být obarven 2 barvami, B nebo W. Na počátku mají procesory barvu W. Pro zjištění, zda může celý výpočet skončit, cirkuluje mezi procesory pešek, který může být také dvou barev, B a W. Algoritmus ukončení funguje takto: Jakmile se první procesor P stane idle, nastaví svou barvu na W a pošle peška barvy W 1 procesoru P. 2 Jestliže procesor P pošle práci procesoru P, kde i>j, pak P nastaví svou barvu na B. i j i Jestliže P obdrží peška, pak má-li P barvu B, nastaví barvu peška na B. Jakmile se P stane i i i idle, pošle peška po kružnici procesoru P a nastaví svoji barvu na W. i+1 Pokud P obdrží zpět peška barvy W, je možné výpočet ukončit. Pokud má pešek barvu B, P 1 1 zahájí nové kolo vysláním barvy W procesoru P. 2 Ukončení je detekováno, jakmile P obdrží zpět peška v barvě W. 1 /mnt/www/courses/mi-par/data/pages/labs/prohledavani_do_hloubky.txt Poslední úprava: 2010/09/17 12:02 autor: tvrdik

Ú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

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

1 Definice problému a popis sekvenčního algoritmu

1 Definice problému a popis sekvenčního algoritmu Semestrální projekt X36PAR 2008/2009: Paralelní algoritmus pro řešení problému Marek Handl. ročník, obor výpočetní technika K336 FEL ČVUT, Karlovo nám. 13, 121 3 Praha 2 May 17, 2009 1 Definice problému

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

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

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

Ř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

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

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

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

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

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

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

Standardní algoritmy vyhledávací.

Standardní algoritmy vyhledávací. Standardní algoritmy vyhledávací. Vyhledávací algoritmy v C++ nám umožňují vyhledávat prvky v datových kontejnerech podle různých kritérií. Také se podíváme na vyhledávání metodou půlením intervalu (binární

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

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

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

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

Časová a prostorová složitost algoritmů

Časová a prostorová složitost algoritmů .. Časová a prostorová složitost algoritmů Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Hodnocení algoritmů Programovací techniky Časová a prostorová

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

Ú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

Stromy, haldy, prioritní fronty

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

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

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

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Přednáška Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského

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

Numerické metody a programování. Lekce 8

Numerické metody a programování. Lekce 8 Numerické metody a programování Lekce 8 Optimalizace hledáme bod x, ve kterém funkce jedné nebo více proměnných f x má minimum (maximum) maximalizace f x je totéž jako minimalizace f x Minimum funkce lokální:

Více

12. Globální metody MI-PAA

12. Globální metody MI-PAA 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

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

Cvičení MI-PRC I. Šimeček

Cvičení MI-PRC I. Šimeček Cvičení MI-PRC I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PRC, LS2010/11, Cv.1-6 Příprava studijního programu Informatika

Více

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

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í

Více

Úvod do mobilní robotiky AIL028

Úvod do mobilní robotiky AIL028 Pravděpodobnostní plánování zbynek.winkler at mff.cuni.cz, md at robotika.cz http://robotika.cz/guide/umor05/cs 12. prosince 2005 1 Co už umíme a co ne? Jak řešit složitější případy? Definice konfiguračního

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky

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

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

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

Zablokování (Deadlock) Mgr. Josef Horálek

Zablokování (Deadlock) Mgr. Josef Horálek Zablokování (Deadlock) Mgr. Josef Horálek Deadlock = V multiprogramovém prostředí si mohou různé prostředky konkurovat v získaní konečného počtu zdrojů = může se tedy stát, že čekající proces svůj stav

Více

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem ČVUT FEL X36PAA - Problémy a algoritmy 3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem Jméno: Marek Handl Datum: 1. 1. 2009 Cvičení: Pondělí 9:00 Zadání Naprogramujte

Více

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

Třída PTIME a třída NPTIME. NP-úplnost. VAS - Přednáška 9 Úvod ke kursu. Složitost algoritmu. Model RAM. Odhady složitosti. Metoda rozděl a panuj. Greedy algoritmy. Metoda dynamického programování. Problémy, třídy složitosti problémů, horní

Více

Dijkstrův algoritmus

Dijkstrův algoritmus Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované

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

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

Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch

Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch Cvičení předmětu MI-PAR P. Tvrdík, I. Šimeček, M. Šoch pavel.tvrdik,xsimecek,soch@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze 2011 MI-PAR, ZS2011/12, Cv.1-6 Příprava

Více

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Pravděpodobnost a učení Doc. RNDr. Iveta Mrázová,

Více

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

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"

Více

Datové struktury 1: Základní datové struktury

Datové struktury 1: Základní datové struktury Datové struktury 1: Základní datové struktury 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í

Více

Principy operačních systémů. Lekce 7: Obrana proti deadlocku

Principy operačních systémů. Lekce 7: Obrana proti deadlocku Principy operačních systémů Lekce 7: Obrana proti deadlocku Deadlock Deadlock = uváznutí, zablokování Vznik problému: proces drží určité prostředky, požaduje přidělení dalších prostředků, tyto nedostane

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

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Přednáška Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského

Více

Arnoldiho a Lanczosova metoda

Arnoldiho a Lanczosova metoda Arnoldiho a Lanczosova metoda 1 Částečný problém vlastních čísel Ne vždy je potřeba (a někdy to není ani technicky možné) nalézt celé spektrum dané matice (velké řídké matice). Úloze, ve které chceme aproximovat

Více

DobSort. Úvod do programování. DobSort Implementace 1/3. DobSort Implementace 2/3. DobSort - Příklad. DobSort Implementace 3/3

DobSort. Úvod do programování. DobSort Implementace 1/3. DobSort Implementace 2/3. DobSort - Příklad. DobSort Implementace 3/3 DobSort Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 V roce 1980 navrhl Dobosiewicz variantu (tzv. DobSort),

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

4. Úvod do paralelismu, metody paralelizace

4. Úvod do paralelismu, metody paralelizace 4. Úvod do paralelismu, metody paralelizace algoritmů Ing. Michal Bližňák, Ph.D. Ústav informatiky a umělé inteligence Fakulta aplikované informatiky UTB Zĺın Paralelní procesy a programování, Zĺın, 26.

Více

Předmět: Algoritmizace praktické aplikace

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.

Více

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

Více

4EK213 Lineární modely. 10. Celočíselné programování

4EK213 Lineární modely. 10. Celočíselné programování 4EK213 Lineární modely 10. Celočíselné programování 10.1 Matematický model úlohy ILP Nalézt extrém účelové funkce z = c 1 x 1 + c 2 x 2 + + c n x n na soustavě vlastních omezení a 11 x 1 + a 12 x 2 + a

Více

ALGORITMY A DATOVÉ STRUKTURY

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

Více

Paralelní programování

Paralelní programování Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 14 Atomické akce dále nedělitelná = neproložitelná jiným procesem izolovaná =

Více

Fakulta informačních technologií. Teoretická informatika

Fakulta informačních technologií. Teoretická informatika Vysoké učení technické v Brně Fakulta informačních technologií Teoretická informatika Třetí úkol 2 Jan Trávníček . Tato úloha je řešena Turingovým strojem, který je zobrazen na obrázku, který si můžeme

Více

Základy algoritmizace. Pattern matching

Základy algoritmizace. Pattern matching Základy algoritmizace Pattern matching 1 Pattern matching Úloha nalézt v nějakém textu výskyty zadaných textových vzorků patří v počítačové praxi k nejfrekventovanějším. Algoritmy, které ji řeší se používají

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

Testování a spolehlivost. 1. Laboratoř Poruchy v číslicových obvodech

Testování a spolehlivost. 1. Laboratoř Poruchy v číslicových obvodech Testování a spolehlivost ZS 2011/2012 1. Laboratoř Poruchy v číslicových obvodech Martin Daňhel Katedra číslicového návrhu Fakulta informačních technologií ČVUT v PRaze Příprava studijního programu Informatika

Více

Přidělování paměti II Mgr. Josef Horálek

Přidělování paměti II Mgr. Josef Horálek Přidělování paměti II Mgr. Josef Horálek Techniky přidělování paměti = Přidělování jediné souvislé oblasti paměti = Přidělování paměti po sekcích = Dynamické přemisťování sekcí = Stránkování = Stránkování

Více

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

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory K množina reálných nebo komplexních čísel, U vektorový prostor nad K. Lineární kombinace vektorů u 1, u 2,...,u

Více

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

5 Orientované grafy, Toky v sítích Petr Hliněný, FI MU Brno, 205 / 9 FI: IB000: Toky v sítích 5 Orientované grafy, Toky v sítích Nyní se budeme zabývat typem sít ových úloh, ve kterých není podstatná délka hran a spojení, nýbž jejich propustnost

Více

Dynamické datové struktury I.

Dynamické datové struktury I. Dynamické datové struktury I. Seznam. Fronta. Zásobník. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz

Více

1. Implementace funkce počet vrcholů. Předmět: Algoritmizace praktické aplikace (3ALGA)

1. Implementace funkce počet vrcholů. Předmět: Algoritmizace praktické aplikace (3ALGA) Předmět: Algoritmizace praktické aplikace (3ALGA) Vytvořil: Jan Brzeska Zadání: Vytvoření funkcí na stromech (reprezentace stromu směrníky). Zadané funkce: 1. Počet vrcholů 2. Počet listů 3. Součet 4.

Více

PDV /2018 Detekce selhání

PDV /2018 Detekce selhání PDV 08 2017/2018 Detekce selhání Michal Jakob michal.jakob@fel.cvut.cz Centrum umělé inteligence, katedra počítačů, FEL ČVUT Detekce selhání Systémy založeny na skupinách procesů cloudy / datová centra

Více

Optimalizace & soft omezení: algoritmy

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

Více

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

STROMY. v 7 v 8. v 5. v 2. v 3. Základní pojmy. Řešené příklady 1. příklad. Stromy STROMY Základní pojmy Strom T je souvislý graf, který neobsahuje jako podgraf kružnici. Strom dále budeme značit T = (V, X). Pro graf, který je stromem platí q = n -, kde q = X a n = V. Pro T mezi každou

Více

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ Michal Brožek, Dominik Svěch, Jaroslav Štefaník MEDIUM SOFT a.s., Cihelní 14, 702 00 Ostrava, ČR Abstrakt Neustále rostoucí význam sběru dat, možnost

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

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2 Euklidův algoritmus Doprovodný materiál pro cvičení Programování I. NPRM044 Autor: Markéta Popelová Datum: 31.10.2010 Euklidův algoritmus verze 1.0 Zadání: Určete největšího společného dělitele dvou zadaných

Více

OPTIMALIZACE. (přehled metod)

OPTIMALIZACE. (přehled metod) OPTIMALIZACE (přehled metod) Typy optimalizačních úloh Optimalizace bez omezení Nederivační metody Derivační metody Optimalizace s omezeními Lineární programování Nelineární programování Globální optimalizace

Více

Amortizovaná složitost. Prioritní fronty, haldy (binární, d- regulární, binomiální, Fibonacciho), operace nad nimi a jejich složitost

Amortizovaná složitost. Prioritní fronty, haldy (binární, d- regulární, binomiální, Fibonacciho), operace nad nimi a jejich složitost Amortizovaná složitost. Prioritní fronty, haldy binární, d- regulární, binomiální, Fibonacciho), operace nad nimi a jejich složitost 1. Asymptotické odhady Asymptotická složitost je deklarována na základě

Více

5 Informace o aspiračních úrovních kritérií

5 Informace o aspiračních úrovních kritérií 5 Informace o aspiračních úrovních kritérií Aspirační úroveň kritérií je minimální (maximální) hodnota, které musí varianta pro dané maximalizační (minimalizační) kritérium dosáhnout, aby byla akceptovatelná.

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

Výpočet globálního stavu

Výpočet globálního stavu PDV 09 2017/2018 Výpočet globálního stavu Michal Jakob michal.jakob@fel.cvut.cz Centrum umělé inteligence, katedra počítačů, FEL ČVUT Globální Stav Globální stav: množina lokální stavů procesů v DS a stavů

Více

10 Přednáška ze

10 Přednáška ze 10 Přednáška ze 17. 12. 2003 Věta: G = (V, E) lze nakreslit jedním uzavřeným tahem G je souvislý a má všechny stupně sudé. Důkaz G je souvislý. Necht v je libovolný vrchol v G. A mějme uzavřený eurelovský

Více

V ypoˇ cetn ı sloˇ zitost v teorii graf u Martin Doucha

V ypoˇ cetn ı sloˇ zitost v teorii graf u Martin Doucha Výpočetní složitost v teorii grafů Martin Doucha Parametrizovaná složitost Nástroj, jak zkrotit výpočetní složitost NP-těžkých problémů Klasický přístup: exponenciála v n Parametrizovaná složitost Nástroj,

Více

METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1

METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1 METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1 DOLOVÁNÍ V DATECH (DATA MINING) OBJEVUJE SE JIŽ OD 60. LET 20. ST. S ROZVOJEM POČÍTAČOVÉ TECHNIKY DEFINICE PROCES VÝBĚRU, PROHLEDÁVÁNÍ A MODELOVÁNÍ

Více

ČVUT FEL X36PAA - Problémy a algoritmy. 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu

ČVUT FEL X36PAA - Problémy a algoritmy. 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu ČVUT FEL X36PAA - Problémy a algoritmy 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu Jméno: Marek Handl Datum: 4. 2. 2009 Cvičení: Pondělí 9:00 Zadání Zvolte si heuristiku,

Více

Cílem seminární práce je aplikace teoretických znalostí z přednášky na konkrétní úlohy. Podstatu algoritmu totiž

Cílem seminární práce je aplikace teoretických znalostí z přednášky na konkrétní úlohy. Podstatu algoritmu totiž Zadání příkladů pro semestrální práci 9 Cílem seminární práce je aplikace teoretických znalostí z přednášky na konkrétní úlohy. Podstatu algoritmu totiž člověk nejlépe pochopí až pokud jej sám implementuje,

Více

Zákony hromadění chyb.

Zákony hromadění chyb. Zákony hromadění chyb. Zákon hromadění skutečných chyb. Zákon hromadění středních chyb. Tomáš Bayer bayertom@natur.cuni.cz Přírodovědecká fakulta Univerzity Karlovy v Praze, Katedra aplikované geoinformatiky

Více

Static Load Balancing Applied to Time Dependent Mechanical Problems

Static Load Balancing Applied to Time Dependent Mechanical Problems Static Load Balancing Applied to Time Dependent Mechanical Problems O. Medek 1, J. Kruis 2, Z. Bittnar 2, P. Tvrdík 1 1 Katedra počítačů České vysoké učení technické, Praha 2 Katedra stavební mechaniky

Více

Aplikovaná numerická matematika

Aplikovaná numerická matematika Aplikovaná numerická matematika 6. Metoda nejmenších čtverců doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních

Více

4EK213 LINEÁRNÍ MODELY

4EK213 LINEÁRNÍ MODELY 4EK213 LINEÁRNÍ MODELY Úterý 11:00 12:30 hod. učebna SB 324 Mgr. Sekničková Jana, Ph.D. 2. PŘEDNÁŠKA MATEMATICKÝ MODEL ÚLOHY LP Mgr. Sekničková Jana, Ph.D. 2 OSNOVA PŘEDNÁŠKY Obecná formulace MM Množina

Více

Přidělování CPU Mgr. Josef Horálek

Přidělování CPU Mgr. Josef Horálek Přidělování CPU Mgr. Josef Horálek Přidělování CPU = Přidělování CPU je základ multiprogramového OS = pomocí přidělování CPU různým procesům OS zvyšuje výkon výpočetního systému; = Základní myšlenka multiprogramování

Více

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

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez Síť Síť je čtveřice N = ( G, s, t, c) kde G ( V, A) = je prostý orientovaný graf a každé orientované hraně ( u, v) je přiřazeno nezáporné číslo, které se nazývá kapacita hrany ( u, v), formálně c ( u,

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

1 Úvod do celočíselné lineární optimalizace

1 Úvod do celočíselné lineární optimalizace Úvod do celočíselné lineární optimalizace Martin Branda, verze 7.. 7. Motivace Reálné (smíšeně-)celočíselné úlohy Optimalizace portfolia celočíselné počty akcií, modelování fixních transakčních nákladů,

Více

Základy matematické analýzy

Základy matematické analýzy Základy matematické analýzy Spojitost funkce Ing. Tomáš Kalvoda, Ph.D. 1, Ing. Daniel Vašata 2 1 tomas.kalvoda@fit.cvut.cz 2 daniel.vasata@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních

Více

vyhledávací stromové struktury

vyhledávací stromové struktury vyhledávací algoritmy Brute Force Binary Search Interpolation Search indexové soubory Dense index, Sparse index transformační funkce Perfect Hash, Close Hash Table, Open Hash Table vyhledávací stromové

Více

Katedra informatiky a výpočetní techniky. 10. prosince Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc.

Katedra informatiky a výpočetní techniky. 10. prosince Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc. Katedra informatiky a výpočetní techniky České vysoké učení technické, fakulta elektrotechnická Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc. 10. prosince 2007 Pamět ové banky S výhodou používáme

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

Generování pseudonáhodných. Ing. Michal Dorda, Ph.D.

Generování pseudonáhodných. Ing. Michal Dorda, Ph.D. Generování pseudonáhodných čísel při simulaci Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky V simulačních modelech se velice často vyskytují náhodné proměnné. Proto se budeme zabývat otázkou, jak při simulaci

Více

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

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, [161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p

Více

Automatizované řešení úloh s omezeními

Automatizované řešení úloh s omezeními Automatizované řešení úloh s omezeními Martin Kot Katedra informatiky, FEI, Vysoká škola báňská Technická universita Ostrava 17. listopadu 15, Ostrava-Poruba 708 33 Česká republika 25. října 2012 M. Kot

Více

Implementace LL(1) překladů

Implementace LL(1) překladů Překladače, přednáška č. 6 Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 30. října 2007 Postup Programujeme syntaktickou analýzu: 1 Navrhneme vhodnou LL(1) gramatiku

Více

PB153 Operační systémy a jejich rozhraní

PB153 Operační systémy a jejich rozhraní PB153 Operační systémy a jejich rozhraní Uváznutí 1 Problém uváznutí Existuje množina blokovaných procesů, každý proces vlastní nějaký prostředek (zdroj) a čeká na zdroj držený jiným procesem z této množiny

Více