Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Konečné automaty a vyhledávání
2
Formální definice konečného automatu
Formálně je konečný automat definován jako uspořádaná pětice , kde: S je konečná množina stavů (např. {Ano,Ne}) Σ je konečná množina vstupních symbolů, nazývaná abeceda (např. { 0,1,2,3,4,5,6,7,8,9}). σ je tzv. přechodová funkce (též přechodová tabulka), popisující pravidla přechodů mezi stavy. Může má podobu S × Σ → S. s je počáteční stav, s je prvek S (V předchozím příkladu Ano). A je množina přijímajících stavů, A je podmnožina S (V předchozím příkladu Ano).
3
Popis automatu tabulkou
1 2 3 4 5 6 7 8 9
4
Popis grafem
5
Vyhledávací automaty Přesto, že sestrojení konkrétního konečného automatu může vypadat složitě a zbytečně komplikovaně, při řešení „lingvistických“ problémů se může jednat o nejrychlejší způsob řešení.
6
Mooreův stroj a vyhledávání
V aplikované informatice nacházejí konečné automaty uplatnění především při zpracování a vyhledávání textů. Pro tuto práci ovšem potřebujeme, aby automat měl širší výstup, než pouhou výstupní informaci po dočtení textu. Proto zavadíme konečné automaty s výstupem. Existují základní dva typy takových automatů, prvním z nich je Mooreův stroj, který po přečtení znaku a změně stavu ještě zapíše vybraný znak z předem dané množinu na výstup. Formálně je tedy Mooreův stroj sedmice kde tvoří konečný automat, V je množina výstupních znaků a výstupní funkce.
7
Mealyho automat Rozšířením Mooreova stroje je Mealyho automat. U Mealyho automatu je výstupní funkce definovaná jako zobrazení Výstup tedy nezáleží pouze na stavu, ve kterém se automat nachází, ale i na aktuálním vstupu. Ve skutečnosti lze ke každému Mealyho automatu sestrojit odpovídající Mooreův stroj. Postačí, když rozšíříme množinu stavů, že za stavy budeme brát uspořádané dvojice z kartézského součinu Pokud Mealyho automat přechází přečtením znaku a do stavu s, ekvivalentní Moorův stroj přejde do stavu (a,s).
8
Příklad 1 Sestrojme konečný automat, který v textu vyhledá řetězce znaků pes, pepa a pepek. Pro řešení plně postačuje, pokud budeme konstruovat automat pouze pro abecedu , kde zastupuje všechny ostatní znaky.
9
Pes, pepa a pepek
10
Příklad 2 Sestrojte automaty vyhledávající řetězce autor, auta a tora.
11
Řešení A O R T U * NIC AU TO AUT AUTA AUTO AUTOR TOR TORA
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.