Similar presentations:
Теория автоматов
1.
2.
Автомат – дискретный преобразовательинформации, который на основе входных сигналов,
поступающих в дискретные моменты времени, и с
учетом своего состояния вырабатывает выходные
сигналы и изменяет свое состояние.
3.
Под автоматом будем понимать некоторуюматематическую модель. Вопросы практической
реализации не рассматриваются. В связи с этим
при построении автоматов будем иметь в виду,
что:
Автомат функционирует в абстрактном времени.
Все переходы происходят мгновенно.
4.
Автомат представляет собой кортеж:где X – множество входных сигналов (входной алфавит),
Y – множество выходных сигналов (выходной
алфавит),
A – множество внутренних состояний,
– функция перехода,
– функция выхода,
- начальное состояние автомата.
5. Законы функционирования автоматов.
В зависимости от законов функционированияразличают 3 вида автоматов:
1. Автоматы первого рода, или автоматы Мили:
6.
2. Автоматы второго рода7.
Правильные автоматы второго рода, или автоматыМура:
На практике наибольшее распространение получили
автоматы Мили и автоматы Мура.
8.
Задание автоматовАвтоматы могут быть заданы следующими
способами:
1. В виде графа
Рис. 1 Автомат Мили
9.
• Рис.2 Автомат Мура10.
При построении автомата Мили каждая дуга,соединяющая вершины
обозначение
, имеет
. Это означает следующее:
находясь, в состоянии
входной сигнал
и
автомат, отрабатывая
, выдает выходной сигнал
и переходит в состояние
.
11.
Так как в автомате Мура выходной сигналзависит только от текущего состояния
каждая дуга, соединяющая вершины
имеет обозначение
.
, то
и
,
12.
2 способ. В виде таблиц перехода и выхода (автоматМили); отмеченной таблицы перехода (автомат Мура).
Автомат Мили описывается с помощью двух таблиц:
таблицы перехода и таблицы выхода:
Таблица переходов (ТП)
a
x
1
x
2
0
a
1
a
2
a
1
a
2
a
0
a
a
a
Таблица выходов (ТВ)
a
2
2
0
x
1
x
2
y
0
2
y
3
a
1
y
3
y
1
a
2
y
3
y
1
13.
Автомат Мура описывается с помощью отмеченнойтаблицы перехода:
Таблица переходов (ТП)
x
1
x
2
y
1
a
0
a
1
a
2
y
2
a
1
a
2
a
0
y
3
a
2
a
2
a
0
14.
ПРИМЕР.Синтезировать автомат, на вход которого подаются
монеты номинальной стоимостью 1, 2 и 3 копейки, а на
выходе автомат выдает билет, если сумма набранных
монет составляет 3 копейки, если сумма меньше 3
копеек, то автомат ничего не выдает, если сумма
больше 3 копеек, то автомат возвращает деньги.
15.
Определим входной, выходной алфавиты и множествовнутренних состояний:
входной алфавит - монеты номинальной стоимостью 1, 2 и 3
копейки
выходной алфавит
- на выходе возможны
выходные символы: Н - ничего; Б - билет; В - возврат.
множество внутренних состояний ,
где
ничего нет»;
- начальное состояние автомата « в автомате
16.
17. Граф автомата Мили имеет вид: Рис. 2
18. Таблицы перехода и выхода представлены в виде: Таблица переходов (ТП) Таблица выходов (ТВ)
Таблицы перехода и выхода представлены в виде:Таблица переходов (ТП)
a
1
2
3
0
a
1
a
2
a
3
a
1
a
2
a
3
a
0
a
2
a
3
a
0
a
0
Таблица выходов (ТВ)
a
3
a
1
a
2
a
3
a
0
a
1
a
1
Н
Н
Б
Н
2
Н
Б
В
Н
3
Б
В
В
Б
2
a
3
19. 3. Автоматная матрица
a0a0
a1
3/В
a2
2/В,3/В
a3
a1
a2
a3
1/H
2/H
3/Б
1/H
2/Н
1/Б
1/Н
2/Н
3/Б
20.
Неопределенным состоянием называетсянесуществующее состояние.
Частичным автоматом называется автомат, в
котором некоторые состояния в таблице перехода не
определены. Для дальнейшего исследования
неопределенное состояние некоторым образом
доопределяют.
21. Минимизация автоматов
Входным словом называется совокупность сигналов,поступающих на вход.
Выходным словом называются совокупность сигналов
на выходе.
Два автомата называются эквивалентными, если они
имеют одинаковый входной и выходной алфавит, и на
одинаковые входные слова выдают одинаковые
выходные слова.
22.
Два состояния одноэквивалентными , если наодинаковое входное слово выдается одинаковый
выходной сигнал.
Два состояния k-эквивалентными, если на одинаковое
входное слово длиной в k-единиц выдается одинаковый
выходной сигнал длиной в k-единиц.
Эквивалентными состояниями называются kэквивалентные состояния для любых k.
23.
Эквивалентные состояния объединяются в классэквивалентности.
Минимальный автомат – это автомат, состоящий из
наименьшего числа состояний, каждое из которых
является классом эквивалентности исходного
автомата.
24. Алгоритм минимизации автомата Мили
1. По таблице выхода находятся состояния содинаковыми выходными сигналами. Данные состояния
объединяются в класс одноэквивалентных состояний.
Проводится перекодировка.
25.
2. По таблице перехода определяются классыдвухэквивалентных состояний: для любого класса
выделяется состояние, которое на одинаковый
входной сигнал переходит в одинаковое состояние.
Объединяем двухэквивалентные состояния в классы
двухэквивалентных состояний. Проводится
перекодировка.
26.
3. Алгоритм выполняется, пока в классах kэквивалентных состояний не находятся одинаковыесостояния.
4. Вводятся новые состояния, соответствующие
классам эквивалентных состояний.
5. С учетом новых состояний переписываются
таблицы перехода и выхода.
27.
ПРИМЕРПусть задан автомат Мили
Таблица выходов
x
1
x
2
x
3
1
1
2
0
3
1
4
0
5
1
6
0
7
1
8
1
9
0
0
1
0
1
0
1
0
0
1
0
1
0
1
0
1
0
0
1
28. Таблица переходов
x1
x
2
x
3
1
2
2
1
3
2
4
3
5
6
6
8
7
6
8
4
9
7
2
4
2
2
4
9
2
4
9
5
4
5
2
3
6
8
7
7
29.
Определяем класс одноэквивалентных состояний потаблице выхода
Таблица выходов
x
1
x
2
x
3
1
1
2
0
3
1
4
0
5
1
6
0
7
1
8
1
9
0
0
1
0
1
0
1
0
0
1
0
1
0
1
0
1
0
0
1
а
в
а
в
а
в
а
в
Выделяются два класса одноэквивалентных состояний a={1,3,5,7,8} и
b={2,4,6,9}. Перегруппируем таблицу перехода по классам одноэквивалентных
состояний
30. Таблица переходов
x1
x
2
x
3
1
2
3
2
а
5
6
в
2
2
4
2
4
4
2
9
9
5
5
3
8
7
4
2
6
7
7
6
8
4
2
1
4
3
6
8
9
7
31.
Перекодируем состояния по полученным классамТаблица переходов
x
1
x
2
x
3
1
2/в
3
2/в
а
5
6/в
в
2/в
2/в
4/в
2/в
4/в
4/в
2/в
9/в
9/в
5/а
5/а
3/а
8/а
7/а
4/в
2/в
6/в
7/а
7
6/в
8
4/в
2
1/а
4
3/а
6
8/а
9
7/а
32.
Выделяем внутри каждого из классов одинаковыесостояния, тем самым определяя классы
двухэквивалентных состояний
Таблица переходов
x
1
x
2
x
3
1
2/в
3
2/в
а
5
6/в
2/в
2/в
4/в
2/в
4/в
4/в
2/в
9/в
9/в
5/а
5/а
3/а
8/а
7/а
4/в
2/в
6/в
7/а
а
в
7
6/в
8
4/в
2
1/а
4
3/а
6
8/а
9
7/а
в
с
Определим новые классы двухэквивалентных состояний a={1,3,5,7,8},
b={2,4,6}, c={9}, перекодируем по новым состояниям и выделим классы
трехэквивалентных состояний
33.
Таблица переходовx
1
x
2
x
3
1
2/в
3
2/в
а
5
6/в
2/в
2/в
4/в
2/в
4/в
4/в
2/в
9/с
9/с
5/а
5/а
3/а
8/а
7/а
4/в
2/в
6/в
7/а
с
d
а
7
6/в
8
4/в
2
1/а
в
4
3/а
6
8/а
с
9
7/а
в
Классы трехэквивалентных состояний a={1,3,5,7,8}, b={2,4}, c={6}, d={9}
перекодируем по новым состояниям и выделим классы четырехэквивалентных
состояний
34.
Таблица переходовx
1
x
2
x
3
1
2/в
3
2/в
а
5
6/с
2/в
2/в
4/в
2/в
4/в
4/в
2/в
9/d
9/d
5/а
5/а
3/а
8/а
7/а
4/в
2/в
6/с
7/а
d
e
а
в
в
7
6/с
8
4/в
2
1/а
а
c
4
3/а
с
6
8/а
d
9
7/а
Перегруппируем таблицу перехода по новым классам a={1,3,8}, b={5,7},
c={2,4}, d={6}, е={9}, перекодируем по новым состояниям.
35.
Таблица переходовx
1
x
2
x
3
1
2/с
а
3
2/с
8
4/с
5
6/d
7
6/ d
2
1/a
2/с
2/с
4/с
4/c
2/c
5/в
5/в
7/в
3/a
8/a
а
в
в
c
4
3/a
d
6
8/a
e
9
7/b
4/c
2/c
9/e
9/e
4/c
2/c
6/d
7/b
d
e
c
Так как внутри из каждого класса дальнейшее разбиение на классы не
осуществляется, это означает, что найдены классы эквивалентных состояний:.
a={1,3,8}, b={5,7}, c={2,4}, d={6}, е={9}.
36.
Минимизированный автомат Мили в новых состоянияхимеет вид
Таблица переходов
x
1
x
2
x
3
a
с
b
d
c
a
d
a
e
b
с
c
c
e
e
в
c
c
d
b
Таблица выходов
x
1
x
2
x
3
a
1
b
1
c
0
d
0
e
0
0
0
1
0
0
0
0
1
1
1
37.
Особенности минимизации автомата Мура.Автомат Мура минимизируется аналогично
минимизации автомата Мили за исключением первого
шага. Выделение класса одноэквивалентных состояний
осуществляется по строке выходов отмеченной
таблицы переходов автомата Мура.
38.
Минимизация частичных автоматов.Для того, чтобы провести минимизацию частичных
автоматов неопределенное состояние доопределяется
самостоятельно. Далее минимизация автоматов
осуществляется по вышеизложенному алгоритму.
39.
Переход от автомата Мили к автомату МураАвтоматы Мили и автоматы Мура отличаются
функцией выхода.
Автомат Мили:
Автомат Мура:
40.
То есть произвольному состояниюМили и входному сигналу
состояние
автомата
соответствует
автомата Мура:
При этом начальные состояния автоматов Мили и
Мура совпадают:
41.
Таким образом, можно перекодировать таблицуперехода автомата Мили и составить отмеченную
таблицу переходов автомата Мура.
42.
Перекодируем матрицу перехода автомата Мили:43.
Составляем таблицу перехода автомата Мура.44.
При составлении таблицы перехода автомата Милирассуждаем следующим образом: состояние
автомата Мура соответствует состоянию автомата
Мили
, следовательно, столбец состояния
автомата Мура
совпадает со столбцом состояния
автомата Мили
.
45.
Так как в автомате Мура произвольному состояниюсоответствует некоторый выходной сигнал, то строка
выхода отмеченной таблицы перехода автомата Мура
однозначно определяется таблицей выхода автомата
Мили (состоянию
выходной сигнал
соответствует
; -
)
46.
47.
Выходной сигнал, соответствующий состояниювыбирается произвольно.
,
48.
Если автомат Мили содержит m-состояний и nвходных символов, то количество состояний
автомата Мура определяется по формуле:
49.
Переход от автомата Мура к автомату МилиПереход от автомата Мура к автомату Мили заключается
в построении таблицы выходов. Построение состоит в
подстановке выходных сигналов, отмечающих
состояния в отмеченной таблице переходов, вместо
состояний, в которые автомат переходит.
50.
Тем самым, если говорить в терминах графов,выходные сигналы от состояний переносятся на дуги,
которые в эти состояния заходят.
А таблица переходов автомата Мили получается из
отмеченной таблицы переходов автомата Мура
отбрасыванием строки выходов.
51.
ПРИМЕРПусть задан автомат Мура в виде отмеченной таблицы
перехода
52.
Данный автомат может быть представлен в виде графа:53.
Автомат Мили будет иметь вид:в виде таблиц перехода и выхода
Таблица переходов
Таблица выходов