|
Korektor diakritiky
Veselý, Lukáš ; Sumec, Stanislav (oponent) ; Smrž, Pavel (vedoucí práce)
Cílem předkládané práce je návrh a implementace aplikace, umožňující doplňování a naopak odstranění diakritiky v česky psaném textu. Popsána je použitá vyhledávací struktura trie a její vztah s konečnými automaty. Dále je předveden algoritmus minimalizace konečného automatu a diskutovány různé metody pro doplňování diakritiky. V praktické části je uvedena samotná implementace programu v programovacím jazyce Java s využitím objektově orientovaného přístupu. Na závěr je provedeno vyhodnocení a analýza dosažených výsledků.
|
|
Syntaxí řízený překlad založený na hlubokých zásobníkových automatech
Solár, Peter ; Lukáš, Roman (oponent) ; Meduna, Alexandr (vedoucí práce)
Tato práce představuje zavádí syntaxí řízený překlad založený na použití hlubokých zásobníkových automatů. V teoretické části jde především o zavedení potřebných teoretických modelů. Nejdůležitějším modelem představeným v této práci je hluboký zásobníkový převodník, který lze jednoduše využít při nejdůležitější části překladu - syntaktické analýze. V praktické části je ilustrováno využití nově zavedených modelů při implementaci interpretu jednoduchého programovacího jazyka.
|
|
Návrh zobecněného LCD řadiče
Hornung, Tomáš ; Kubek, Ján (oponent) ; Strnadel, Josef (vedoucí práce)
Diplomová práce se zabývá principem řízení a činnosti LCD displejů. Jsou zde popsány různé typy LCD displejů a způsob jejich ovládání, a také obecný popis bloků řadiče LCD displeje. Jejich implementace v jazyce VHDL a popis výsledků simulace a realizace tohoto řadiče na platformě FITkit.
|
|
Měření spolehlivosti vyhledávání vzorů
Dvořák, Milan ; Košař, Vlastimil (oponent) ; Kaštil, Jan (vedoucí práce)
Tato práce se zabývá metodami vyhledávání vzorů pomocí konečných automatů a popisuje některé optimalizace těchto algoritmů. Dále rozebírá návrh a implementaci metodiky pro měření spolehlivosti vyhledávání na základě srovnávání s výsledky PCRE knihovny. Experimentální měření byla provedena pro konečný automat s perfektním hašováním a chybující přechodovou tabulkou. Nakonec je prezentováno výsledné hodnocení spolehlivosti algoritmu spolu s návrhem řešení zjištěných problémů.
|
|
Nástroj pro práci s Büchi automaty
Schindler, Petr ; Lengál, Ondřej (oponent) ; Rogalewicz, Adam (vedoucí práce)
Tato práce zpracovává problematiku Büchiho automatů a představuje knihovnu, umožňující provádět základní operace nad těmito automaty. V práci jsou uvedeny základy teorie automatů. Ty jsou použity při popisu konečných automatů, mezi které patří Büchiho automaty, jejichž popis tvoří hlavní část zde uvedené teorie. Znalost jejich vlastností je důležitá pro pochopení algoritmů, které s nimi pracují. Dále jsou tyto algoritmy představeny i s detailním vysvětlením. Následuje návrh datových struktur formátu, v jakém jsou automaty ukládány na disk. Stěžejní část práce se věnuje implementaci knihovny a pomocných skriptů. Detailně jsou zde popsány důležité nebo zajímavé části implementace jednotlivých metod. Závěr práce je věnován testování funkčnosti knihovny.
|
|
Systémy formálních modelů a jejich aplikace
Čermák, Martin ; Lukáš, Roman (oponent) ; Meduna, Alexandr (vedoucí práce)
Tato práce pojednává o automatových systémech jako o novém způsobu zpracování formálních jazyků. V textu jsou zmíněny čtyři modely. První z nich pracuje v sekvenčním módu. V jednom okamžiku počítá jediná komponenta systému. Druhý z nich pracuje v částečně paralelním módu. Zde během jednoho výpočetního kroku aktivně pracují buďto všechny, nebo pouze jediná komponenta systému. V posledních dvou modelech každý automat zpracovává svůj vlastní vstupní řetězec, přičemž jeho výpočet je řízen stavy, resp. přechody ostatních komponent. Stavy, resp. pravidla přechodů komponent mohou zapříčinit i tzv. blokaci, nebo odblokování dílčích automatů.
|
|
Teploměr využívající platformu FITKit
Čižinský, Vojtěch ; Šimek, Václav (oponent) ; Vašíček, Zdeněk (vedoucí práce)
Skutečný rozmach v oblasti měření teploty proběhl ve 20. století. Tento obor pronikl téměř do všech oblastí lidské činnosti a usnadnil mnoho výrobních i jiných procesů. Tato bakalářská práce se zabývá návrhem měřícího modulu připojitelného k platformě FITkit a implementací programu, který s modulem komunikuje. Na modulu jsou umístěny senzory pro měření teploty, které se navzájem liší způsoby její prezentace.
|
|
Aplikace pro zobrazení struktury konečného automatu
Polcer, Ondřej ; Horáček, Petr (oponent) ; Zámečníková, Eva (vedoucí práce)
Cílem práce je aplikace, která převádí textovou podobu konečného automatu na tzv. "stavový diagram", který je obecně pro vyjádření vzájemných vazeb názornější, než textová forma. Nejprve se strojová podoba konečného automatu určité syntaxe převede do objektové podoby a doplní se o další udaje. Následuje algoritmizace hledání vhodných umístění pro jednotlivé stavy, aby struktura jejich přechodu byla přehledná a srozumitelná s ohledem na komplexnost zadaného konečného automatu. Aplikace vytvoří sadu ekvivalentních zobrazení v různé formě a dodá vhodné informace pro snadnou interpretaci výsledku.
|
|
Grafická simulace činnosti konečných automatů
Šrajer, Roman ; Goldefus, Filip (oponent) ; Čermák, Martin (vedoucí práce)
Tato bakalářská práce se zabývá teorií převodu regulárního výrazu na konečný automat a zpět. Cílem praktické části je vytvořit webovou aplikaci, která tyto převody zajistí a odsimuluje automat pro vstupní řetězec. Pro převod konečného automatu na regulární výraz je použita algebraická metoda, která spočívá ve vytvoření soustavy rovnic a jejím následném vyřešení. Pro implementaci jsem zvolil jazyk Java a technologie Java Applet a Java Web Start, které umožňují přístup k aplikaci přes webové stránky. Nezbytnou součástí aplikace je možnost pracovat se třemi způsoby reprezentace konečného automatu, možnost ukládát automaty do XML a možnost zcela intuitivně vytvářet vlastní automaty.
|
|
Automatické shlukování regulárních výrazů
Stanek, Timotej ; Kořenek, Jan (oponent) ; Kaštil, Jan (vedoucí práce)
Práce pojednává o detekci útoků na počítačové síti pomocí IDS systémů. IDS obsahují pravidla pro detekci ve formě regulárních výrazů, které jsou při detekci reprezentovány pomocí konečných automatů. Je vysvětlena náročnost této detekce pomocí nedeterministických a deterministických konečných automatů. Tuto náročnost je možné redukovat pomocí shlukování regulárních výrazů. Je uvedem shlukovací algoritmus a možné přístupy jak tento algoritmus vylepšit a zrychlit. Jedním z přístupů je genetický algoritmus, který dokáže pracovat v reálném čase. Nakonec je popsán přítup pomocí algoritmu Random Search. Na~závěr jsou prezentovány výsledky experimentů s těmito přístupy a jsou porovnány mezi sebou.
|