- •Курсовая работа
- •1 Теоретический вопрос «Конечные автоматы. Двоичные автоматы.»
- •Введение
- •1.2 Способы задания автоматов Мили
- •1.2.1 Табличный способ
- •1.2.2 Графический способ
- •1.3 Элементарные автоматы
- •1.4 Вывод
- •2 Решение задачи «о спящем парикмахере»
- •2.1 Постановка задачи
- •2.2Реализация задачи с помощью сетей Петри
- •2.3 Листинг программы
- •2.3.1 Фрагмент программы «Barber»
- •2.3.2 Фрагмент программы «Hall»
- •2.3.3 Фрагмент программы «Main»
- •3 Список использованных источников
1.2 Способы задания автоматов Мили
Чтобы задать конечный автомат S, необходимо описать все элементы множества S = {A, X, Y, d, l}. То есть необходимо описать входной, выходной алфавиты и алфавит состояний, а также функции переходов d и выходовl. При этом среди множества A = {a0,a1,…, an} необходимо выделить начальное состояния a0, в котором автомат находится в момент времени t = 0. Существует несколько способов задания работы автомата, но наиболее часто используются табличный и графический.
1.2.1 Табличный способ
При табличном способе задания автомат Мили описывается двумя таблицами: таблицей переходов и таблицей выходов.
Таблица 1.1 Переходы автомата Мили
xj\ai |
a0 |
… |
an |
x1 |
d(a0,x1) |
… |
d( an,x1) |
… |
… |
… |
… |
xm |
d( a0,xm) |
… |
d( an,xm) |
Таблица 1.2 Выходы автомата Мили
xj\ai |
a0 |
… |
an |
x1 |
l( a0, x1) |
… |
l( an, x1) |
… |
… |
… |
… |
xm |
l( a0, xm) |
… |
l( an, xm) |
Строки этих таблиц соответствуют входным сигналам x(t), а столбцы – состояниям. На пересечении столбца ai и строки xj в таблице переходов ставится состояние as = d[ ai, xj], в которые автомат перейдет из состояния ai под воздействием сигнала xj; а в таблице выходов – соответствующий этому переходу выходной сигнал yg = l[ ai,xj]. Иногда автомат Мили задают совмещенной таблицей переходов и выходов, она в некоторых случаях более удобна.
Таблица 1.3 Переходы и выходы автомата Мили.
Xj\ai |
a0 |
… |
an |
x1 |
d(a0,x1)/ l(a0,x1) |
… |
d(an,x1)/ l(an,x1) |
… |
… |
… |
… |
xm |
d(a0,xm)/ l(a0,xm) |
… |
d(an,xm)/ l(an,xm) |
Задание таблиц переходов и выходов полностью описывает работу конечного автомата, поскольку задаются не только сами функции переходов и выходов, но также и все три алфавита: входной, выходной и алфавит состояний.
Примеры табличного задания автоматов Мили.
Таблица 1.4 Автомат Мили:
xj\ai |
a0 |
a1 |
a2 |
a3 |
x1 |
a1/y1 |
a2/y3 |
a3/y2 |
a0/y1 |
x2 |
a0/y2 |
a0/y1 |
a3/y1 |
a2/y3 |
По этим таблицам можно найти реакцию автомата на любое входное слово.
Для автомата Мили: |
||||||
|
x1 |
x2 |
x2 |
x2 |
x1 |
… |
|
a0 |
a1 |
a0 |
a0 |
a0 |
a1 |
|
y1 |
y1 |
y2 |
y2 |
y1 |
|
|
|
|
|
|
|
|
