A véges automata elméletének alapjai
Az algoritmus az informatika alapvető fogamzásgátlója, és az adott algoritmusok számára megvalósuló automatikus eszközök felépítésének kérdése az egyik mikroprocesszoros információs adatfeldolgozó eszköz tervezésének fenyő kérdése. Az összes meglévő információfeldolgozó eszköz két fő osztályra oszlik:
1) Funkcionális jelátalakítók
2) Az automaták, amelyekben a beviteli adatváltás eredményei nem csak attól függenek, hogy milyen információk jelentek meg a bejáratnál, hanem azt is, hogy milyen információkat kaptak az automatákhoz. Az ilyen eszközöket véges automatáknak vagy automata memóriának nevezik (ilyen eszközök példái biológiai rendszerek). Ugyanazon a bemeneti jelen a véges állapotú készülék (SC) különbözőképpen reagálhat attól függően, hogy milyen állapotban van abban a pillanatban.
Amikor a bemeneti jelet fogadja, az állapotjelző gép nem csak a kimenetre továbbítja az információt, hanem annak állapotát is megváltoztatja, mert a bemeneti jel megváltoztatja az előzményeket.
Bármely véges automata bemeneti történeteinek száma végtelen, de megszámlálható. Ha a gép minden lehetséges háttér esetében másképp viselkedik, akkor végtelen erőforrással (memóriával) kell rendelkeznie, hogy minden előzmény valamilyen módon javítson. Ha bemutatjuk az őstörténeti halmazt ----, akkor két történet egyenértékűnek tekinthető, ha ugyanolyan hatással bírnak az automata további viselkedésére. Nyilvánvaló, hogy működéséhez az automatáknak csak emlékezniük kell az egyenértékűségi osztályra, amelyhez az őstörténet tartozik. Abban az esetben, ha finom sok ilyen ekvivalenciaosztály van, ez a legegyszerűbb, de ez a matematikai modell nagy gyakorlati értékű és széles körben használatos. A megfelelő formai modellt véges automatáknak nevezik.
A véges automaton matematikai modellje, egy automata belső állapota az előtörténeti egyenértékűség osztályának. Leegyszerűsíthető, hogy feltételezzük, hogy az automata belső állapota éppen annak jellemzője, amely egyedileg határozza meg az automata következő reakcióit egy külső eseményre.
A véges állapotú gép olyan eszköz, amely diszkrét időkben működik (az úgynevezett ciklusok). Mindegyik órai ciklusban bemeneti jeleket alkalmaznak az automata bemenetére, és kimeneti jel jelenik meg a kimeneten, és a belső állapot megváltozik. Az indítási momentumokat (ciklusokat) speciális időzítési jelek, vagy külső esemény előfordulása határozza meg, amely abban áll, hogy új bemeneti jel érkezik az automata bemenetére. Ebben az esetben úgy ítélik meg, hogy a gépet események vezérlik, és a gép működési ciklusai eltérő időtartammal rendelkeznek a külső jelek érkezésétől függően.
A véges automaták alapfogalmai és definíciói
A véges automata (Millie automaton) egy 5 elemből álló matematikai modell: (S, X, Y, # 948;, # 955;), ahol:
S az államok véges halmaza;
X az utolsó beviteli ábécé;
Y az utolsó kimeneti ábécé;
Ha egy speciális S0 kezdeti állapot van hozzárendelve a véges automatában. akkor ez az automatát kezdeti automatának nevezik.
Két véges automata A1 és A2 egyenértékű. Ha a végrehajtott bemeneti és kimeneti térképek egyenértékűek. Két logikai függvény f1 és f2 ekvivalens, ha ugyanazok az értékek minden argumentumcsoporton, mert a logikai függvény argumentumainak száma véges, akkor elegendő összehasonlítani e függvények értékét az összes argumentumkészletre. Az állam gép hajtja végre végtelen számú bemeneti szekvenciák véges számú kimenő jelek, ezért a bemeneti automata leképezések> kimenet nem határozható meg egyszerű felsorolás azok térképek és hasonlítsa össze őket a értékei minden végtelen halmazok. Annak érdekében, hogy meghatározzuk a egyenértékűségének gépek szükséges bővíteni úgy működik, hogy a funkciókat az átmenet és kimeneti meghatározása meghatározza a ábécé beviteli szignálszekvenciák (szekvenciális láncát) elemeinek x.
Definíció 2.3 Legyen A = - véges állapotú gép. Az A automata fejlett átmeneti és kimeneti funkciói funkciók
(e egy üres karakterlánc, az alfa maga a lánc
így A kibővített átmeneti és kimeneti funkciókat a bemeneti szekvenciák (bemeneti karakterláncok) halmazán definiálják, szemben a szokásos átmeneti és kimeneti funkciókkal, amelyeket a bemeneti jelek készlete határoz meg.
Más szavakkal, egy adott gépen, és annak funkcióit DA és LA lehet meghatározni nemcsak az X halmazon valamennyi betűket, hanem a forgatáson X * Az összes bemeneti szó. Bármely bemeneti szó esetén
Ez a hagyományos definíció az ellipszisekkel sokkal pontosabb és jobban olvasható, mint egy induktív definíció.
Az átmenet funkciója meg van adva:
a) d (Si, aj) az automatikus tábla;
b) bármely szó esetén aÎX * és minden aj betű
A speciális funkció használata # 948; a kiterjesztett függvényt (induktív módon is) definiáljuk # 955; :
Az A automaton az S kezdeti állapotot és az egyes szavakat rögzítjük # 945; = aj aj. a társítsuk a szót # 969; kimeneti ábécé Y:
ahol Ùösszekapcsolási művelet.
Ez a levelezés, amely a kimeneti szavakat adja ki a kimeneti szavaknak, automatikus leképezésnek, valamint automaton (vagy korlátozottan determinisztikus) operátornak nevezik. Ha az automata operátor alkalmazása a bemeneti szóra # 945; a kimeneti szó # 969, akkor ezt az A (S, # 945;) = # 969 jelöli; vagy A (# 945;) = # 969; a | # 945; | = | # 969; | vagy l (# 945;) = l (# 969;), azaz. a szavak # 945; és # 969; ugyanolyan hosszúságúak.
Automaton térképezés két tulajdonságokkal, amelyek közvetlenül következnek (2-5): egy szót, és W azonos (hossz megőrzése tulajdon), és ezen felül, gépi-üzemeltetők - a Nonanticipatory szereplők, azaz a Azok az üzemeltetők, akik balról jobbra feldolgozzák a szót, ne nézzenek előre. Ez a tulajdonság tükrözi azt a tényt, hogy a kimenőszó i-es betűje csak a bemeneti szó első i betűitől függ.
Definíció 2.4 Hagyja A =- véges állapotú gép. Az S S S államot akkor hívják hozzáférhetőnek, ha és csak akkor, ha ( # 945; ∈X) # 948; (S. # 945;) = S (vagyis bizonyos bemeneti jelek láncolata hatására az automatika beleesik ebbe az állapotba). A véges automatika állapota csak és csak akkor érhető el, ha bármely bemeneti lánc hatására az automata nem lép be ebben az állapotban: El nem érhető (S) ( # 945; ∈X) # 948; (S. # 945;) S.
Definíció 2.5 Az A automata erősen összekapcsolt. ha bármi más állam is elérhető bármely államából.
Meghatározás 2.6 Az automatát önállónak hívják. ha a beviteli ábécé egy betűből X =.
Fogalommeghatározás 2.7 Az automatát részben vagy teljesen nem határozzák meg. ha a két függvény közül legalább egy nem teljesen definiálva van. Egy ilyen automata gép néhány párhoz (állapotbevitel, állapotkibocsátás) a funkciók értékeit # 948; vagy # 955; nincs meghatározva. Az automata táblában az automaton hiányos definitása abban a tényben fejeződik ki, hogy néhány sejtje nem töltődik be.
Fogalommeghatározás 2.8 Véges állapotú gépek A = és B = egyenértékűek. ha két feltétel teljesül:
a) beviteli ábécéik egybeesnek X = X = X;
b) az általuk megvalósított leképezések egybeesnek: ( # 945;ÎX) # 955; (S. # 945;) = # 955; (S, # 945;
Azonban ahhoz, hogy megválaszolhassuk, vajon az automaták egyenértékűek-e, lehetetlen megoldani a reakciókat az összes bemeneti láncra, mivel végtelenül sokan vannak, így az űrhajó egyenértékűségének problémája nem triviális. A probléma megoldásának módja az automata közvetlen termékének fogalmán alapul.
Meghatározás 2.9 A véges automata közvetlen terméke A = és B = ugyanaz a beviteli ábécé X (AxB jelöli) egy automata:
AxB =, ahol
a) (S Î S) (S Î S) (x ÎX) # 948; ((S, S), x) = (# 948; (S, x) # 948; (S, x));
b) (S Î S) (S ÎS) (x ÎX) # 955; ((S, S), x) = (# 955; (S, x) # 955; (S, x)).
Más szavakkal, egy olyan gép, amely közvetlen terméke két űrhajó azok államok egy pár kimondja, kezdve gépek, kezdeti állapotában van egy pár kezdeti állapotok, a kimeneti ábécé - egy sor pár kimeneti szimbólum gépek - szorzók, és az átmeneti és kimeneti funkciók meghatározása komponensenként . így egy űrjármű közvetlen terméke egyszerűen két közeli, nem kölcsönhatásba lépő SC, amelyek egy közös bemenettel szinkronban működnek
14. Véges automaták meghatározásának módszerei.
Berendezés, amely működnek logikai jeleket, csak fogadás 2 értékek - 0 és 1, és amelynek nagyszámú belső egyenértékű állapotok S, több bemeneti jel X és több kimeneti jelek y - úgynevezett digitális készülék.
A legegyszerűbb digitális automatika bármely olyan kombinációs eszköz, amely egyetlen belső állapotot tartalmaz. Ebben az eszközben a bemeneti logikai változók mindegyike egy kimeneti jelnek felel meg. Ha a gépnek több azonos belső állapota is lehet, akkor a bemeneti jelekre adott válaszát nemcsak a bemeneti jelek aktuális készlete határozza meg, hanem az automata belső állapotát is.
Feltételezzük, hogy a bemeneti jelek és a belső állapotok változása azonnal megtörténik, így az automatika a Ti diszkrét időben működik, ahol az egyes mérések (intervallumok) hossza önkényesen nagy lehet.
Ha az idő alatt nincs változás az x bemeneti jelekben, és ennek megfelelően az S belső státuszai.
Vannak géppuskák, Moore és géppuskák, Millie.
A Moore automaton egy speciális eset a Mili automaton szélesebb fogalmának.
A Moore automatákat az alábbi átmeneti és kimeneti funkciók jellemzik:
A Moore automatának minden új állapotát az előző állapot és a bemeneti jel adja meg, és a kimeneti funkciót - az adott időpillanatban egyedülállóan határozza meg az automata állapota.
A Miley automata gépek eltérnek a Moore gépektől, mivel a gép kimeneti jele nem csak az állapot, hanem a bemeneti jel függvénye.
Si + 1 = f (Si, xi + 1) yi + 1 = y (si, xi + 1)
Az automata belső állapotának koncepciója feltételezi, hogy az automaton belső memóriával rendelkezik. A különböző egyenértékű állapotok száma a memória mélységétől függ.
Mint memória elemek, szabványos ROM modulok vagy visszacsatolási hurkok, különösen különböző típusú triggerek használhatók.
Elvileg bármely Moore automatát egy Mili gépre lehet csökkenteni és fordítva.
A Miley Automatic egy sokoldalú eszköz
A Mile gépnek nincs olyan korlátozása, amellyel Moore rendelkezik
A (x s y) készlet miatt nagyon nehéz meghatározni, hogy a véges állapotú gép hogyan működik. A fenti egyenletek működését leíró Moore automaták és mérföld közötti kapcsolat létrehozása a készlet x s y, de kényelmetlen, hogy leírja a működését speciális gépek, így a gyakorlatban is átterjedt más módon leírására véges állapotú automaták.
A legszélesebb körben használt asztali feladat, ahol a véges automata átmenetinek és kimenetének tábláit adják. Épület egy végső folyamatábra, valamint a feladat áííapotgép formájában LGSA (algoritmus logikai áramkör).
Tekintsük SC hozzárendelés, hogy minden számpár rögzítik a bináris rendszer kiszámítja, és kiadja az összegük, ahol az adatok kezdve a bitek a legkisebb szintje, a jobbról balra.
(A jegyek példát mutatnak triggerekkel, RS és mások)
A 2.1. Táblázatban az 1. sorban az elrendezett sorrendben szereplő lehetséges állapotok szerepelnek.
A bemeneti jelek rendezett formában vannak elrendezve az első oszlopban.
A sorok és oszlopok metszéspontján egy olyan cellát kapunk, amelyben új állam íródott.
Az átmeneti táblázat (2.1.) Pontosan meghatározható. Ebben az esetben a táblázat egyes cellákban tartalmaz kötőjeleket.
Egyes jelek nem okoznak állapotváltozást. Így a 0 és 1 bemeneti jel hatása alatt az automatika megőrzi az S0 állapotot, ha S1 állapotban volt, ha S1 állapotban volt, amikor bemeneti jelek ilyen kombinációját alkalmaztuk.
A kimeneti jelek halmaza hasonlóan definiálódik minden egyes Si, Lj párhoz és a megfelelő sor és oszlop metszéspontjában, megkapjuk az automata kimenőjelét.
Az automata kimenőjelének értékeit a 2.2 táblázat tartalmazza
Néha, ha van ilyen lehetőség - mindkét asztal kombinálódik.
A Moore automatánál a kimeneti táblázat egy sorba degenerálódik, amely az átmeneti táblázat első sorában írható.
A táblázatos leírás kényelmes, formalizált nyelvként szolgál, amelyen meghatározható bármilyen véges állapotú gép, amely kölcsönös megértést biztosít az ügyfél és a fejlesztő között.
Az automaton leírásának közös módja az algoritmus leírásának logikai gráf-sémája.
15. Véges állapotú gép mint "reaktív rendszer" modellje.
Legutóbb a számítástechnika területén dolgozó programozók számára nyilvánvalóvá vált, hogy külön rendszerosztályt kell felosztani, amelyet reaktív rendszereknek neveznek. Ezek a rendszerek képesek válaszolni a külső események áramlására. Kiderült, hogy egy véges automata matematikai modellje alkalmas arra, hogy leírja az ilyen rendszereket. A véges automaton matematikai modelljének kényelme az, hogy ez a modell szemantikája, láthatósága és expresszivitása egyértelmű, ugyanakkor meglehetősen szigorú és formális.
Azonban kiderült, hogy a véges automata klasszikus matematikai modellje számos hiányossággal jár. Ennek a modellnek a fő hátránya az állami hierarchiát kifejező eszközök hiánya, valamint a megszakítások megjelenítésére szolgáló matematikai berendezés és a rendszer normál működésének folytatása a megszakítás feldolgozása után.
A klasszikus véges automata modelljének egyszerű és viszonylag hatékony kiterjesztése egy "külső esemény" fogalmának bevezetése, amelynek támadása az automatának egy új állapotba való átmenetének feltétele. Ilyen események tekinthetők úgy, hogy jelet kapnak a gép bemenetére, megszakítják és elindítják az időzítőt. Az időzítő működésével természetesen az idő koncepciója az automatában van. Valójában az idő koncepciójának bevezetése egy véges automatonhoz kötődhet az automatának egy előre meghatározott, konkrét állapotban való tartózkodásának korlátozásával. Az ilyen korlátozást, ha szükséges, a legjobban a véges automata matematikai modelljének időzítője határozza meg, az időzítő működése az automatát egy másik állapotba való áttéréshez vezetheti. Vegyük például figyelembe egy olyan eljárás specifikációját, amely egy egér egyetlen vagy kettős kattintását határozza meg. Emlékezzünk arra, hogy egy dupla kattintás két billentyű lökése, melyet t = 250 ms időintervallum választ el. Ezt a problémát megoldó véges automaton átmeneti grafikonját képviseljük.
A találmány egy első kattintással (CPC) gép átmenetek állami S0 kijelenteni S1, és ha a lejárat előtt a következő t = 250ms van bemeneti másik jel (kattintás eseményt), akkor a kimenet kap egy jelet kattintással \ kettős egyébként t \ kattintással . E változatok mindegyikében az automatika visszatér az S0 pozícióba, és megismétli az automata működését.
16. Véges állapotú gép, mint az üzenetküldés protokolljának modellje hálózatokban.