Automaty skończone i sposoby ich ustawiania. Automaty Sposoby ustalania Podstawowe definicje n Skończone. Standardowe lub automatyczne języki opisu

Reprezentacja automatu skończonego sprowadza się właściwie do opisu funkcji automatu, które go definiują.

Istnieją trzy sposoby definiowania automatów skończonych:

· Tabelaryczne (macierze przejść i wyjść);

Graficzny (za pomocą wykresów);

· Analityczne (za pomocą formuł).

Metoda analityczna– automat dany jest układem równań. Z takiego układu wynika, że ​​dla skończonej liczby możliwych stanów wewnętrznych liczba możliwych wartości funkcji automatu również okazuje się skończona. Przykładem takiego zadania jest układ równań definiujących automaty Mealy'ego i automaty Moore'a

sposób tabelaryczny. Dla funkcji przejścia - δ i funkcji wyjściowej zestawiana jest tablica stanu automatu. W którym:

kolumny tabeli odpowiadają elementom wprowadzonego alfabetu x,

wiersze tabeli odpowiadają stanom (elementom zbioru skończonego Q).

Przecięcie i-tego wiersza i j-tej kolumny odpowiada komórce (i, j), która jest argumentem funkcji 8 i λ automatu w chwili, gdy znajduje się on w stanie q i przy jego wejściu - słowo x j , aw odpowiedniej komórce wpisujemy wartości funkcji 8 i λ. Zatem cała tabela odpowiada zestawowi Q X x.

Podczas wypełniania tablicy przejść każda komórka jest jednoznacznie określona przez parę symboli: symbol następnego stanu i symbol sygnału wyjściowego.

W praktyce funkcje automatów są określone przez dwie tablice skończone, odpowiednio nazwane macierz przejść oraz macierz wniosków. W tym przypadku wiersze są oznaczane literami alfabetu wejściowego, a kolumny literami alfabetu wewnętrznego (symbole kodujące stan wewnętrzny automatu).

W macierzy przejścia, na przecięciu wiersza x k i kolumny q r, wartość funkcji przejścia δ(q i , X) i funkcje wnioskowania λ(q, X). W niektórych przypadkach obie tabele są łączone w jedną tabelę.

Graficzny sposób.

Automat jest określony za pomocą wykresu, diagramu, wykresu itp. Przypisanie za pomocą grafu skierowanego jest wygodniejszą i zwięzłą formą opisu automatu.

wykres automatu zawiera

· szczyty, odpowiada stanowi q iОQ,

· łuki, wierzchołki łączące to przejścia automatu z jednego stanu do drugiego. Na łukach zwyczajowo wskazuje się pary sygnałów wejściowych i wyjściowych - sygnały przejścia.

Jeśli automat przechodzi ze stanu q 1 w stan q2 pod wpływem kilku sygnałów wejściowych, to ten wariant będzie reprezentowany na odpowiednim łuku wykresu przez dysjunkcję. Do reprezentacji automatu używane są grafy bipolarne z wyróżnionymi stanami początkowymi i końcowymi.

Opracowanie skali „przyrządu do pomiaru pojemności”.

wskazanie + - przeciążać wyłączony
0 stan początkowy 1 0 0 0 Nie
1 0 2 0 13 0 TAk
2 50 3 1 13 0 TAk
3 100 4 2 13 0 TAk
4 150 5 3 13 0 TAk
5 200 6 4 13 0 TAk
6 250 7 5 13 0 TAk
7 300 8 6 13 0 TAk
8 350 9 7 13 0 TAk
9 400 10 8 13 0 TAk
10 450 11 9 13 0 TAk
11 500 13 10 13 0 TAk
12 OW 0 0 0 0 Nie
13 wypadek 0 0 0 0 Nie

Ryc.2.5. Wykres skali urządzenia do pomiaru pojemności


Wniosek

Ponieważ zastosowanie generatorów z obwodami oscylacyjnymi (typu RC) do generowania oscylacji o wysokiej częstotliwości nie jest satysfakcjonujące, dla opracowanego generatora przyjęto obwód typu LC (jako obwód fazujący przyjęto obwód trójpunktowy ze sprzężeniem autotransformatorowym, obwód aktywny elementem jest tranzystor).

W części teoretycznej zajęć rozpatrzono elementy generatorów typu LC. Rozważono również klasyfikację generatorów typu LC, ich przeznaczenie, a także różne obwody generatorów. Jak również parametry techniczne elementów generatora.

W części praktycznej przybliżono tematykę dotyczącą koderów, dekoderów, ich przeznaczenia, zaprojektowano również elektryczne schematy funkcjonalne i elektryczne koderów i dekoderów. Ujawniono motyw map Karnota. Opracowano również segment „b” wskaźnika siedmiosegmentowego. Opracowano maszynę stanów dla skali przyrządu do pomiaru pojemności, a także jej wykres.


Baranow Wiktor Pawłowicz Dyskretna matematyka. Sekcja 6. Maszyny stanowei języków formalnych.

Wykład 31 Zadanie syntezy. Samochody podstawowe i ty

Wykład 30 DEFINICJA I METODY WYZNACZANIA AUTOMATU SKOŃCZONEGO.

PROBLEM SYNTEZY. AUTOMATY ELEMENTARNE

Plan wykładu:

1. Definicja automatu skończonego.

2. Metody definiowania automatu skończonego.

  1. Problem syntezy automatów.
  2. Maszyny elementarne.
  3. Problem kompletności bazy automatu.
  4. Kanoniczna metoda syntezy automatów.
  1. Definicja maszyny stanowej

SFE nie biorą pod uwagę faktu, że rzeczywiste urządzenia działają w czasie. W porównaniu z SFE automat skończony jest dokładniejszym modelem przetwornika dyskretnego. b twórca informacji. Jednocześnie koncepcja automatu skończonego, jak każdy model, jest I ale z kilkoma upraszczającymi założeniami.

Po pierwsze, zakłada się, że wejście i wyjście automatu może znajdować się tylko w jednym ze skończonej liczby różnych stanów w dowolnym momencie. Jeśli prawdziwe b Jeżeli przetwornik ma ciągły sygnał wejściowy, to aby opisać go za pomocą automatu skończonego, konieczna jest kwantyzacja tego sygnału. W formalnej definicji automatu skończony zbiór stanów wejściowych i wyjściowych automatu nazywa się coo t odpowiedzialnie do wejścia i alfabet wyjściowyi poszczególne stany litery tych alfa i vit.

Po drugie, zakłada się, że czas zmienia się dyskretnie. Stany wejścia i wyjścia odpowiadają dyskretnej sekwencji czasu. b Ponieważ moment czasu jest jednoznacznie określony przez jego indeks, to dla uproszczenia przyjmiemy, że czas przyjmuje wartości 1, 2, ..., ... Przedział czasu nazywa się takt.

Działanie maszyny przedstawiono w następujący sposób.

Wejście automatu odbiera sygnały z alfabetu wejściowego, co prowadzi do pojawienia się sygnałów na wyjściu z alfabetu wejściowego. W a Zależność sekwencji wyjściowej od sekwencji wejściowej zależy od wewnętrznej struktury automatu. Zauważ, że w przeciwieństwie do SFE, które nie mają pamięci, automat pre d jest urządzeniem z pamięcią, tj. wyjście automatu jest określane nie tylko b do wejścia, ale także do historii. Rachunkowość historii I jest określona przez zależność sygnału wyjściowego nie tylko od wejścia, ale także od aktualnego stanu, który oznaczamy.

Podajmy formalną definicję automatu.

maszyna stanowanazwij pięć obiektów

, (1)

gdzie

wprowadź alfabet; jeden z możliwych stanów wejścia;

skończony zbiór tzwalfabet wyjściowy; element ty z tego zestawu określasz możliwe stany wyjściowe;

skończony zbiór tzwalfabet stanów wewnętrznych ja nii;

– funkcja przejściamaszyna: ; ta funkcja przypisuje stan do każdej pary „stan wejścia”;

funkcja wyjściowa maszyna: ; ta funkcja wiąże każdą parę stanu wejścia z wartością wyjściową.

Prawo funkcjonowania automatu: automat zmienia swoje stany zgodnie z t funkcję i generuje sygnały wyjściowe zgodnie z funkcją do akcji:

  1. Sposoby definiowania maszyny stanów

1. Metoda przypisania tabelarycznego. Ponieważ dla funkcji i zakresu mi wartości i wartości należą do zbioru skończonego, to są one określone za pomocą tabel.

Przykład 1 Definiujemy automat w następujący sposób: Zdefiniuj funkcję za pomocątabele skoków,i funkcja za pomocą tabele wyjściowe.

Tabela 1. Tabela skoków Tabela 2. Tabela wyników

Wejście

Państwo

Wejście

Państwo

Jeśli znana jest sekwencja sygnałów na wejściu automatu, to tabele mi przenosi i wychodzi jednoznacznie określa sekwencję wyjściową.

2 . Graficzny sposób ustawiania. używany diagram przejścia-wyjścia.Jest to skierowany multigraf, w którym każdy wewnętrzny t wierzchołek odpowiada wczesnemu stanowi automatu. Przejścia automatu ze stanu do stanu ilustrują strzałki, na każdej z których zapisany jest symbol wejścia, w s wywołanie tego przejścia oraz symbol wyjściowy wygenerowany przez automat.

| | |

Rys.1 Schemat przejść-wyjść

Przykład 2 Wymagane jest zbudowanie automatu, który działałby w następujący sposób a zom: w każdym cyklu na wejście automatu odbierane są kolejne cyfry binarne wyrazów, oraz w pomidor wytwarza odpowiednią cyfrę binarną ich sumy. Dla dwojga h wyrazy wierszowe mamy: , .

Automat jest w stanie 1, jeżeli podczas dodawania cyfr poprzednich oraz niesie przeniesienie i jest w stanie 0 w przeciwnym razie. Schemat przejścia-wyjścia i zana na ryc. 2.

00|0 11|1 01|0

01|1 10|0

10|1 00|1 11|1

Ryż. 2

  1. Problem syntezy automatów

Przez analogię do problemu syntezy SFE można postawić problem syntezy dla automatu a towarzysz Istnieje nieograniczony zestaw podstawowych automatów. Wymagane jest złożenie automatu o zadanym działaniu. W tym przypadku zderza się problem syntezy t z pewnymi problemami.

Załóżmy, że musisz połączyć wyjście automatu z wejściem automatu. Jest to możliwe pod warunkiem, że jest inaczej o maszyna roju nie zrozumie sygnałów pochodzących z pierwszej. Prowadzi to do zamieszania oraz sytuacje, w których niektóre połączenia nie są możliwe.

Aby pokonać tę przeszkodę, wprowadzono koncepcję automatu strukturalnego, w którym o wszystkie alfabety (stany wejściowe, wyjściowe i wewnętrzne) są zakodowane za pomocą słów binarnych.

Niech będzie skończonym zbiorem elementów i zestawem mi zbiór słów binarnych o długości, gdzie. Zostanie wywołane dowolne mapowanie iniekcyjnekodowanie zestawu w słowach binarnych.

Zakodujmy alfabety dla dowolnego automatu:

Oznaczmy odpowiednio zakodowane wejście, wyjście i stan automatu w danej chwili czasu. Następnie prawo działania zostanie przedstawione w postaci

(2)

Nazywa się automat uzyskany po zakodowaniu strukturalny . Zakładamy, że automat strukturalny ma wejścia binarne, wyjścia binarne, a stan wewnętrzny automatu jest określony przez binarne słowo długości. na ryc. 3 pokazano abstrakcyjny automat i odpowiadający mu automat strukturalny.

… …

Ryż. 3

Przejście do automatu strukturalnego zapewnia dwie ważne korzyści dla syntezy. e stva.

1 . Kompatybilność wejść i wyjść, od binarnych po n tworzenie. Nie podamy ogólnej definicji obwodu z automatów strukturalnych, jest on podobny do SFE.

2 . Zapiszmy relacje (2) we „współrzędnych”:

(3)

Z (3) wynika, żepodane jest prawo funkcjonowania automatu strukturalnego oraz Rdzeń funkcji boolowskiej.

  1. Automaty elementarne

Wyróżniamy najprostsze automaty strukturalne i nadajemy im nazwę.

Zauważ najpierw, że element funkcjonalny, który ma tylko jeden stan, można uznać za automat bez pamięci.

Przejdźmy do automatów z dwoma stanami. Niech automat ma jedno wejście binarne i jedno wyjście binarne zgodne ze stanem wewnętrznym:

Ryż. cztery.

Aby ustawić automat pokazany na ryc. 4 wystarczy podać tylko tabelę p e przejścia:

Tabela 3

Wejście

Państwo

Zamiast gwiazdek należy wstawić 0 i 1. Można to zrobić na 16 sposobów, jednak nie wszystkie z nich są dopuszczalne. Załóżmy na przykład, że w pierwszej kolumnie tabeli 3 oba elementy n jesteś zerem. Taki automat, gdy znajdzie się w stanie 0, już z niego nie wyjdzie, czyli będzie działał jako element funkcjonalny. Analiza podobnych sytuacji pokazuje, że aby otrzymać automat nieredukowalny do automatu bez pamięci, należy wymagać o aby upewnić się, że każda kolumna tabeli 3 zawiera zarówno zero, jak i jeden. Takie stoły są ego opona.

Tabela 4 Tabela 5

Wejście

Państwo

Wejście

Państwo

Tabela 6 Tabela 7

Wejście

Państwo

Wejście

Państwo

Mamy tylko dwa najprostsze automaty, ponieważ 7 otrzymujemy z 4, a 6 z 5 przez odwrócenie stanów wewnętrznych.

Nazywa się automat podany w tabeli 4 opóźnienie lub wyzwalacz:

to znaczy ten automat opóźnia sygnał o jeden cykl.

Nazywa się automat określony w tabeli 5wyzwalacz z wejściem licznika lub -wyzwalacz . Stan automatu zmienia się na przeciwny, jeśli na wejściu jest 1, i pozostaje niezmieniony, jeśli na wejściu jest 0:

Niech w początkowym czasie- wyzwalacz jest w stanie 0. Jeśli w n mi który punkt w czasie- wyzwalacz jest w stanie 0, oznacza to, że na wejście automatu odebrano parzystą liczbę jedynek. Jeśli w stanie 1, to jest nieparzyste. Więc przyj i zom, - wyzwalacz zlicza liczbę jednostek na wejściu, ale ponieważ ma tylko dwa stany I niya, a następnie liczy do dwóch.

Gdy wyzwalacze są fizycznie zaimplementowane, używane są dwa wyjścia: bezpośrednie i odwrócone (Rys. 5). Jeśli je wymienimy, to tak- wyzwalacz, otrzymasz automat określony w tabeli 7 i from- automat wyzwalający określony w tabeli 6.

Ryż. 5.

  1. Problem kompletności bazy automatu

Zbiór automatów strukturalnych nazywamy kompletnym (lub automatem b a zisom), jeśli można z nich zbudować dowolny z góry określony automat strukturalny.

Wysiłki matematyków zmierzające do uzyskania analogu twierdzenia Posta dla automatów nie wzrastają. n zaliczony sukces. W 1964 MI Pokrótce udowodniono nieistnienie algorytmu wyznaczania mi kompletność systemu. W tym przypadku interesujące są warianty twierdzenia o zupełności z dodatkowymi założeniami dotyczącymi systemu. Rozważmy najpopularniejsze z nich.

Twierdzenie. układ automatyczny,zawierające pełny zestaw PV i -wyzwalacz (lub -wyzwalacz) jest kompletny.

Dowód. Rozważmy dowolny automat określony przez relację mi (2) i opisz jego schemat wskazanych automatów, tzwstruktura kanoniczna(Rys. 6) .

Schemat składa się z dwóch części.

Ryż. 6.

Lewa połowa nazywana jest częścią pamięci. Składa się z wyzwalaczy, których zbiór stanów tworzy stan automatu: jeśli w danym momencie czasu

, …,

oznacza to, że automat jest w stanie.

Prawa połowa nazywana jest częścią kombinowaną i reprezentuje SFE. Wejścia tego obwodu to:

  1. binarny sygnał wejściowy słowa automatu;
  2. słowo binarne bieżący stan wewnętrzny automatu.

Wyjścia:

  1. binarny sygnał wyjściowy słowa automatu, który jest realizowany t według wzorów (3);
  2. słowo binarne, które wprowadza wejścia wyzwalaczy do pamięci a bieżącą część i steruje pamięcią maszyny.

Pokażmy, że sygnały sterujące pamięcią są funkcjami boolowskimi tych samych zmiennych, co wyjście automatu, co oznacza, że ​​można je całkowicie zaimplementować za pomocą i łodyga FE.

W każdym momencie sygnały sterujące pamięcią muszą tłumaczyć a w pomidor od stanu do stanu. Aby to zrobić, musisz zmienić stan każdego wyzwalacza

, .

-wyzwalacze lub -wyzwalacze używane w schemacie kanonicznym mają następujące elementy mi następna właściwość: dla dowolnej pary stanów występuje sygnał wejściowy, mi napędzanie maszyny od stanu do stanu. Oznaczmy ten sygnał przez . Dla -trigger, ponieważ stan, w którym ustawiony jest -trigger jest równy sygnałowi wejściowemu. Dla -trigger: kiedy musisz wprowadzić n o daj 0, aby zachować stan bez zmian; na 1, tak że spust „przeskakuje”.

Tak, lub w formie wektorowej

Wyraźmy to z prawa działania automatu (2). Następnie

Twierdzenie zostało udowodnione.

  1. Kanoniczna metoda syntezy automatów

Rozważmy tę metodę na konkretnym przykładzie.

Przykład. Na przenośniku, wzdłuż którego poruszają się części dwóch typów i są instalowane w maszyna lniana, której zadaniem jest sortowanie części w taki sposób, aby po przejściu mi przechodząc obok maszyny tworzyli grupy. Niewłaściwa część maszyny sta l kiwa głową z linii montażowej. Wymagane jest zbudowanie obwodu takiego automatu za pomocą wyzwalacza i elementów „AND”, „OR”, „NOT”.

Synteza automatów podzielona jest na następujące etapy.

1 . Budowa abstrakcyjnego automatu.

Wprowadź alfabet . Alfabet wyjściowy, gdzie Zderzenie części C, P jej przepustkę. Stany wewnętrzne automatu odzwierciedlają jego pamięć, którą część grupy już utworzył: . W miarę formowania się grupy automat przechodzi cyklicznie przez te stany bez zmiany stanu, gdy nadejdzie nieodpowiednia część. Schemat przejścia-wyjścia pokazano na ryc. 7.

| | |

Ryż. 7.

2 . Kodowanie alfabetyczne.

Poniżej podano jedną z możliwych opcji kodowania. mi dmuchane stoły.

Wejście Stan wyjścia

3 . Budowa struktury kanonicznej automatu.

Kanoniczną strukturę opracowywanego automatu pokazano na ryc. osiem.

Ryż. osiem.

Znajdźmy zależności wyników SFE od zmiennych, najpierw w postaci tabelarycznej (Tabela 8), zgodnie z k o które później skonstruujemy formuły

, .

Tabela 8

Te funkcje nazywają sięczęściowo określone, ponieważ nie są one zdefiniowane w. Aby przedstawić te funkcje za pomocą wzorów, rozszerza się je w taki sposób, aby uzyskać prostszą postać formuł.

4 . Reprezentacja funkcji wyjściowych automatu i funkcji zarządzania pamięcią muły.

Wykorzystując metody minimalizacji funkcji boolowskich budujemy, o ile to możliwe, ek o reprezentacja nominalna funkcji, formuły w bazie:

5 . Implementacja SFE i ostateczny schemat automatu (rys. 9).

Ryż. 9.

SFE

SFE

NIE

LUB

Schematy kombinacji, chociaż pozwalają na wdrożenie dowolnego naprawił zależności między sygnałami wejściowymi i wyjściowymi nie mogą zmienić charakteru ich zachowania (tj. kolejności przetwarzania danych) – każda taka zmiana wymaga zmiany struktury obwodu, czyli de facto przejścia do innego obwodu. Możliwe jest rozwiązanie problemu restrukturyzacji pracy bez zmiany struktury schematu, jeśli do niej wprowadzimy elementy pamięci, co pozwoliłoby na ustalenie i zapamiętanie stanów pośrednich urządzenia – w tym przypadku sygnał wyjściowy będzie zależał nie tylko od sygnału wejściowego, ale również od stanu układu. Jeśli liczba takich elementów jest skończona, to, jak wspomniano powyżej, zostanie nazwane urządzenie dyskretne maszyna końcowa.

maszyna stanowazwany systemem Y, Q> , gdzie X i Y to skończone alfabety wejścia i wyjścia, Q to skończony zbiór stanów wewnętrznych, Y (x, q) - funkcja przejścia i Q (x,q) - funkcja wyjścia.

Jak wspomniano wcześniej, Y (x, q) określa kolejność transformacji symboli wejściowych i stan automatu z poprzedniego cyklu na stan z kolejnego, a Q (x,q) - przekształcenie symboli wejściowych i stanu automatu w bieżącym cyklu na symbol wyjściowy. Jeśli q 0 to stan początkowy automatu, a i- numer miary, wtedy jej pracę opisuje system:

Te proporcje to tzw układy równań kanonicznych automat skończony. Możesz z nich korzystać od q 0 , sekwencyjnie znaleźć wszystkie kolejne stany automatu i symbole wyjściowe.

Istnieją dwa rodzaje maszyn – Inicjał oraz nie-początkowy. W automaty początkowe mają ustalony stan początkowy (tzn. zawsze zaczynają od tego samego stanu q0). W automatach niepoczątkowych dowolny ze zbioru Q; ten wybór determinuje dalsze zachowanie automatu.

Reprezentacja określonego automatu skończonego sprowadza się właściwie do opisu funkcji automatu, które go definiują. Z układu (9.3) wynika, że ​​dla skończonej liczby możliwych stanów wewnętrznych liczba możliwych wartości funkcji automatu również okazuje się być skończona. Można je opisać na różne sposoby, z których najczęstszym jest tabelaryczny i z pomocą diagramy.

W sposób tabelaryczny funkcje automatów są podane przez dwie tablice skończone, odpowiednio nazwane macierz przejść oraz macierz wyjściowa. W tablicach tych wiersze są oznaczane literami alfabetu wejściowego, a kolumny literami alfabetu wewnętrznego (symbole kodujące stan wewnętrzny automatu). W macierzy przejścia na przecięciu rzędu (xk) i kolumna (qr) umieszczane są wartości funkcji Y ( q r, xk), a w macierzy wyjść – wartości funkcji Q (q r , x k).

Elementy teorii automatów

Plan:

1. Pojęcie automatu, zasada działania automatu

2. Metody wyznaczania automatów skończonych

3. Ogólne problemy teorii automatów

Informacje teoretyczne

Człowiek od zawsze dążył do ułatwienia sobie pracy, sprawiając, że niektóre urządzenia mechaniczne pracowały dla niego bez jego własnej ingerencji. Na początku były to bajki, potem zaczęły zamieniać się w zwykłe rzeczy. Samochody, telewizory, pralki, całe gałęzie przemysłu działają bez interwencji człowieka. Ponadto interwencja człowieka w większości przypadków nie jest wymagana, aw niektórych przypadkach taka interwencja może prowadzić do negatywnych zjawisk. Pojęcie „maszyny”, jako urządzenia wykonującego określony rodzaj czynności, od dawna jest przez ludzi interpretowane w ten sposób.

Pojęcie automatu, zasada działania automatu

pojęcie maszyna rozpatrywane w dwóch aspektach:

1. Maszyna - urządzenie która wykonuje pewne funkcje bez bezpośredniego udziału osoby. Automat to prawdziwe urządzenie, zrozumiałe, dlaczego i jak działa, przynajmniej dla tych, którzy go zaprojektowali i wyprodukowali. Samochód, traktor, samolot, sygnalizacja świetlna, telewizor, telefon - wszystko to są automaty. W tym aspekcie komputer należy rozumieć jako automat, który działa według programu opracowanego przez człowieka.

2. Automat - pojęcie matematyczne oznaczający model matematyczny rzeczywistych urządzeń technicznych. Automat jest abstrakcyjnym urządzeniem, nie jest jasne, dlaczego i jak działa i ogólnie, dlaczego może działać. W tym aspekcie automat jest „czarną skrzynką”, która teoretycznie jest zdolna do wykonania określonych czynności. Z punktu widzenia matematyki jest absolutnie nieistotne, co, jak i dlaczego wywołuje określone działania.

Każdy automat musi mieć określoną liczbę wejść, określoną liczbę wyjść i określoną liczbę stanów wewnętrznych.

Teoria automatów algebraicznych jest gałęzią cybernetyki teoretycznej, która bada automaty dyskretne z abstrakcyjnego algebraicznego punktu widzenia.



Ogólna teoria automatów zawiera różne podrozdziały. W zależności od przedmiotu badań dzieli się ją na abstrakcyjną teorię automatów i strukturalną teorię automatów.

Teoria automatów abstrakcyjnych bada przejścia dokonywane przez automat, na który wpływają sygnały wejściowe, a także sygnały wyjściowe będące wynikiem tych przejść.

Przedmiot badań strukturalny teoria automatów to struktura automatu, a także struktura sygnałów wejściowych i wyjściowych, na przykład metody kodowania sygnałów wejściowych i wyjściowych itp.

Definicja maszyn stanowych

Maszyna- abstrakcyjny model urządzenia działającego w czasie dyskretnym, które przetwarza skończoną sekwencję sygnałów wejściowych i przekształca je w skończoną sekwencję sygnałów wyjściowych (reakcji).

W procesie działania automatu skończonego sekwencyjnie zmienia się skończona liczba jego stanów wewnętrznych, a stan automatu w określonym momencie czasu jest jednoznacznie określony przez sygnały wejściowe i wyjściowe. Takie automaty są podstawą całej nowoczesnej techniki komputerowej i wszelkiego rodzaju dyskretnych systemów automatycznego sterowania i zarządzania.

Pojęcie automatu jest tak abstrakcyjne, że trudno powiedzieć, kiedy dana osoba obeszła się bez automatu. Do definicji automatu nadają się dowolne urządzenia, w tym te, za pomocą których prymitywni ludzie polowali lub rzucali kamieniami, chroniąc swój dom przed wrogiem.

Algorytm- zrozumiałe i dokładna formalna instrukcja dla wykonawcy, która jednoznacznie określa treść i kolejność operacji, które przekładają dany zestaw danych początkowych na pożądany wynik

Uważa się, że pierwszym urządzeniem programowym stworzonym przez człowieka był zegar. Mechanizmy zegarków za pomocą sprężyny napędzającej koła zębate i mechanizmy krzywkowe, koła zębate i dźwignie wykonują szereg określonych czynności. Przykładem takiego mechanizmu zegarowego jest słynny zegar w Centralnym Teatrze Lalek w Moskwie, gdzie wprawia w ruch dwanaście baśniowych postaci umieszczonych na tarczy.

Zwróćmy uwagę na kilka interesujących faktów historycznych związanych z automatami jako urządzeniami mechanicznymi.

1. Niemiecki filozof i alchemik Albert Wielki w latach 1216-1246 stworzył „żelaznego” sługę - automat pełniący obowiązki odźwiernego w domu.

2. Astronom Johann Müller (Regiamontanus) (1436-1476) stworzył mechanicznego orła, który witał wjazd cesarza Maksymiliana II do Norymbergi pochyleniem głowy i ruchem skrzydeł.

3. Mechanik Jacques de Wacanson (1709-1782) - autor pierwszego na świecie automatycznego krosna. Stworzył wizerunek mechanicznej kaczki, wiernej kopii swojego żywego odpowiednika – pływał, czyścił pióra, połykał ziarna z dłoni. Jego mechaniczny flecista, który wykonał jedenaście utworów muzycznych, zadziwił ludzi żyjących w tamtych odległych latach.

4. Rosyjski wynalazca XIX wieku. A. M. Gamuletsky stworzył całą szafę mechaniczną, w której znajdowało się wiele zaprojektowanych przez niego automatów. Tutaj między innymi była gadająca głowa czarownika i amorek grający na harfie, co zadziwiało wyobraźnię współczesnych.

5. Pierwszą prymitywną maszynę sumującą zaprojektował w 1641 roku Blaise Pascal. Impulsem do otwarcia była męka ojca - podatek, inspektor, który dzień i noc pracował nad wielkimi obliczeniami. Wynalazł maszynę sumującą, osiemnastoletni syn uratował ojca przed skomplikowanymi obliczeniami i dał światu pierwszy kalkulator, który dodaje i odejmuje liczby.

6. Pierwsza maszyna szachowa została zbudowana w 1890 roku przez hiszpańskiego inżyniera Torresa Quevedo. Taki automat mógł rozgrywać tylko końcówkę z wieżą (król i wieża przeciwko królowi).

7. Pierwszy komputer ze sterowaniem automatycznym stworzył Charles Babbage w 1822 roku. Zaprojektował dodająca maszyna, który miał pamięć i urządzenia arytmetyczne. Urządzenia te stały się prototypami podobnych urządzeń we współczesnych komputerach.

Rodzaje maszyn.

Maszynę można interpretować jako urządzenie realizujące procesy odbierania, przetwarzania i przesyłania energii, materiałów lub informacji zgodnie z określonym w nich programem, ale bez bezpośredniego udziału osoby.

Każda maszyna ma swoją zestawy bazowe, do których należą: alfabet wejściowy, alfabet wyjściowy, zbiór stanów automatu.

Cechą charakterystyczną automatu skończonego jest obecność pamięć, który określa stan automatu w zależności od czasu. Zewnętrznym przejawem różnych stanów automatu jest jego reakcja na ten sam rodzaj wpływów (sygnałów).

W działaniu automatów cyfrowych skończonych ważną koncepcją jest czas.

Automaty można klasyfikować według różnych kryteriów.

1. Według rodzaju działalności - automaty dzielą się na: informacyjne, sterujące i obliczeniowe.

Domaszyny informacyjne obejmują różnorodne tablice referencyjne, tablice informacyjne na stadionach, urządzenia alarmowe.

Do maszyny kontrolne zwyczajowo przypisuje się urządzeniom sterowanie określonym procesem, w tym w szczególności: windą, przenośnikiem, obrabiarką, szlabanem.

Do maszyny obliczeniowe obejmują mikrokalkulatory, procesory komputerowe i inne urządzenia wykonujące obliczenia.

Jednak ściśle mówiąc, wiele automatów to tak złożone systemy, że są to zarówno automaty obliczeniowe, sterujące, jak i informacyjne.

2. Automaty skończone - z punktu widzenia informatyki są to automaty, które są dyskretnymi przetwornikami informacji. Należą do nich przetworniki zawierające skończony zestaw sygnałów wejściowych i wyjściowych, a także skończony zbiór stanów wewnętrznych

3. Maszyny cyfrowe- automaty, które konwertują cyfrowy Informacja. W takim automacie sygnały wejściowe są podane jako skończony zbiór chwilowych symboli: ich czas trwania jest tak mały, że można go pominąć. Przez ustalony czas symbole wejściowe są przekształcane, a wyjście jest skokowym przejściem z jednego stanu do drugiego.

4. Automaty abstrakcyjne - wyświetlanie zestawu słów w alfabecie wejściowym Xw zestaw wyjściowych słów alfabetu Y.

Automatem abstrakcyjnym jest:

~ Matematyczny Model,

~ Algorytm działania niektórych transformacji sekwencji kodu,

~ Prawo przekształcenia alfabetu wejściowego w alfabet wyjściowy.

5. Automaty synchroniczne i asynchroniczne. W zależności od tego, czy sygnał wejściowy i sygnał zmiany stanu są odbierane jednocześnie, czy sekwencyjnie, automaty dzielą się na automaty synchroniczne i asynchroniczne.

W maszynach synchronicznych czas trwania sygnałów wejściowych i czas przejść są ze sobą skoordynowane. Stosowane są w systemach komputerowych, zautomatyzowanych systemach sterowania itp.

W maszynach asynchronicznych czas trwania sygnałów wejściowych i czas przejść nie są ze sobą skoordynowane. Zależą od źródeł zewnętrznych - różnych wydarzeń i interwał próbkowania jest zmienna (na przykład w zamkach szyfrowych). W automatach asynchronicznych następna zmiana wartości sygnałów wejściowych może nastąpić dopiero po zakończeniu procesu przejściowego spowodowanego poprzednią zmianą tych sygnałów.

6. Automaty dzielą się na skończone i nieskończone. Jeśli klasyfikacja opiera się na rozmiar pamięci, wówczas różnica polega na tym, czy automat ma finał lub nieskończony liczba stanów wewnętrznych.

Pod nieskończonością automat jest zwykle rozumiany jako pewna matematyczna idealizacja idei dotyczących automatu, który ma nieskończoną liczbę stanów. Pamięć takiego automatu może potencjalnie rosnąć w nieskończoność. Na przykład słynne automaty abstrakcyjne Posta i Turinga są automatami nieskończonymi, ale sam komputer lub jego poszczególne części są automatami skończonymi.

7. Automaty dzielą się na deterministyczne i probabilistyczne. Jeśli klasyfikacja opiera się na mechanizm losowego wyboru następnie rozróżnia się automaty deterministyczne i probabilistyczne (stochastyczne).

W automatach deterministycznych zachowanie i struktura w każdym momencie są jednoznacznie określone przez bieżące informacje wejściowe i stan samego automatu w poprzednim momencie.

W automatach probabilistycznych zależność ta jest również związana z jakimś przypadkowym wyborem.

probabilistyczny automat jest dyskretnym przetwornikiem informacji, którego działanie w każdym momencie zależy tylko od stanów pamięci i jest opisane prawami statystycznymi.

8. Uniwersalna maszyna. W teorii automatów udowodniono, że aby dokonać różnych przekształceń informacji, wystarczy skonstruować uniwersalny automat za pomocą programu i odpowiedniego kodowania, zdolny rozwiązać wszelkie problemy.

Model matematyczny automatu cyfrowego z jednym wejściem jest określony przez pięć obiektów:

X- skończony zbiór symboli wejściowych, alfabet wejściowy:

X \u003d (x 1 (t), x 2 (t), ..., x n (t));

T- skończony zbiór symboli wyjściowych, alfabet wyjściowy:

Y \u003d (y 1 (t), y 2 (t), ..., y n (t));

Q~ skończony zbiór stanów automatu:

Q= (q 0 (t), q 1 (t), q 2 (t), …, q n (t)), q0- stan początkowy;

δ(q, X) - funkcja przejścia automatu z jednego stanu do drugiego: ( Q X x)®Q;

λ(q, X) ~ funkcja wyjściowa automatu: ( Q x X)® Y.

A więc maszyna stanowa C=(X, Q, Y, δ, λ.) jest określona przez relacje rekurencyjne

q(0) = q 0 , q(t + ja) = δ (g(t), x(t)), y(t) = λ (g(t), x(t)),

t jest zdyskretyzowanym momentem czasu lub jest obrazem funkcji monotonicznej t:. T® N i T - zwykły ciągły czas, N jest zbiorem liczb naturalnych.

Wszystkie godziny pracy T dzieli się na skończoną liczbę przedziałów, na granicy których zmienia się stan automatu. Jednocześnie t(Г 0) pokazuje liczbę zmian, które zaszły przed czasem Г 0 .

Przykładem dyskretyzacji jest zwykłe kino: czas jest podzielony na przedziały 1/24s. Ludzkie oko postrzega podążanie za dyskretnymi klatkami jako ciągły ruch.

9. Automaty synchroniczne dzielą się na automaty Mealy'ego i automaty Moore'a. W zależności od sposób organizacji funkcji wyjścia maszyny synchroniczne dzielą się na maszyny Mealy'ego ( automaty pierwszego rodzaju) i automaty Moore'a (automaty drugiego rodzaju).

W automatach Mili- Sygnał wyjściowy y(t) x(t) i stan q(t- 1) automat w poprzednim momencie czasu (t- jeden). Modelem matematycznym takiego automatu jest układ równań:

q(t) = δ (q(t-1), x(t)) i y(t) = λ (q(t-1), x(t)),

W maszynach Moore'a Sygnał wyjściowy y(t) jednoznacznie określony przez sygnał wejściowy x(t) i stan q(t) w określonym czasie t. Modelem matematycznym takiego automatu jest układ:

q(t) = δ (q(t-1), x(t)) i y(t) = λ (q(t)),

W takich automatach funkcja wyjściowa zależy tylko od stanów automatu w danej chwili i nie zależy od sygnału wejściowego. Zatem ciąg wejściowy takiego automatu jest odczytywany raz od lewej do prawej, wykonując skanowanie znak po znaku. W pewnym momencie maszyna stanów znajduje się w pewnym stanie wewnętrznym, który zmienia się po odczytaniu kolejnego znaku. Nowy stan można scharakteryzować za pomocą odczytanego symbolu i aktualnego stanu.

10. Automaty kombinacyjne– istnieją automaty, w których symbol wyjściowy nie zależy od jego stanu i jest określany tylko przez aktualne symbole wejściowe, tj. w tym automacie wszystkie stany są równoważne. W takim automacie funkcja przejścia jest zdegenerowana, jest zasadniczo nieistotna i niezmienna podczas działania. Dlatego minimalny automat kombinacyjny ma tylko jeden stan.

11 Logiczne automaty - istnieją automaty, z których składa się alfabet wejściowy 2 tyg binarne zestawy długości t, a wyjście pochodzi z 2 n binarnych zestawów długości P. Do logiczne kombinacje automatów funkcja wyjściowa ma postać układu P funkcje logiczne z t zmienne.

Teoria automatów jest gałęzią matematyki dyskretnej zajmującą się badaniem modeli dyskretnych przetworników informacji. Takimi przetwornikami są zarówno urządzenia rzeczywiste (komputery, organizmy żywe), jak i urządzenia urojone (teorie aksjomatyczne, maszyny matematyczne). W istocie skończoną maszynę stanów można opisać jako urządzenie M , który ma kanały wejściowe i wyjściowe, przy czym w każdym z dyskretnych momentów czasu, zwanych momentami zegarowymi, znajduje się w jednym ze stanów końcowych.

Na kanale wejściowym w dowolnym momencie t =1, 2, ... do urządzenia M docierają sygnały wejściowe (z pewnego skończonego zestawu sygnałów). Prawo zmiany stanu na następny moment czasu jest ustawiane w zależności od sygnału wejściowego i stanu urządzenia w danym momencie czasu. Sygnał wyjściowy zależy od stanu i sygnału wejściowego w danej chwili (rys. 1).

Maszyna stanów jest matematycznym modelem rzeczywistych dyskretnych urządzeń przetwarzających informacje.

maszyna stanowa zwany systemem A= (X , Q , Y , , ), gdzie X , Q , Y są dowolnymi niepustymi zbiorami skończonymi, oraz oraz - funkcje, w tym:

    wiele X ={a 1 , ..., a m ) jest nazywany wprowadź alfabet , a jego elementami są sygnały wejściowe , ich sekwencje są w slogany ;

    wiele Q ={q 1 , ..., q n ) jest nazywany wiele stanów automat i jego elementy - stany ;

    wiele Y ={b 1 , ..., b p ) jest nazywany alfabet wyjściowy , jego elementami są sygnały wyjściowe , ich ciągi są słowa wyjściowe ;

    funkcjonować : X Q Q nazywa funkcja przejścia ;

    funkcjonować :X Q Y nazywa funkcja wyjściowa .

W ten sposób, (x , q )Q , (x , q )Y dla  x X , q Q .

Wyimaginowane urządzenie jest powiązane z maszyną stanów, która działa w następujący sposób. Może być w stanie ze zbioru Q odbierać sygnały z zestawu X i emitować sygnały z zestawu Y .

2. Metody definiowania automatu skończonego

Istnieje kilka równoważnych sposobów definiowania automatów abstrakcyjnych, z których trzy to: tabelaryczny , geometryczny oraz funkcjonalny .

2.1 Przyporządkowanie tabeli maszyny

Z definicji automatu wynika, że ​​zawsze może on być zdefiniowany przez tablicę zawierającą dwa wejścia t linie i P kolumny, gdzie na przecięciu kolumny q i linie a wartości funkcji są warte (a i , q j ), (a i , q j ).

q

a

q 1

q j

q n

a 1

(a 1 , q 1), (a 1 , q 1)

(a 1 , q j ), (a 1 , q j )

(a 1 , q n ), (a 1 , q n )

a i

(a i , q 1), (a i , q 1)

(a i , q j ), (a i , q j )

(a i , q n ), (a i , q n )

a m

(a m , q 1), (a m , q 1)

(a m , q j ), (a m , q j )

(a m , q n ), (a m , q n )

2.2. Definiowanie automatu za pomocą diagramu Moore'a

Innym sposobem określenia skończonej maszyny stanów jest graficzny, to znaczy użycie wykresu. Automat jest reprezentowany jako graf skierowany z etykietą G(Q , D ) z wieloma wierzchołkami Q i wiele łuków D ={(q j , (a i , q j ))| q j Q , a i X ), podczas gdy łuk ( q j , (a i , q j )) jest oznaczony parą ( a i , (a i , q j )). Zatem przy tej metodzie stany automatu są przedstawiane za pomocą okręgów, w które wpisane są symbole stanów q j (j = 1, …, n ). Z każdego koła jest przeprowadzana t strzałki (skierowane krawędzie) jeden do jednego odpowiadające znakom wprowadzonego alfabetu X ={a 1 , ..., a m ). Strzałka odpowiadająca literze a i X i wyjście z kręgu q j Q , para ( a i , (a i , q j )), a ta strzałka prowadzi do okręgu odpowiadającego (a i , q j ).

Powstały rysunek nazywa się wykres automatu lub, Schemat Moore'a . W przypadku niezbyt złożonych automatów ta metoda jest bardziej ilustracyjna niż tabelaryczny.