Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основые понятия теории автоматов.doc
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
290 Кб
Скачать
☆

3.4 Связь между автоматами Мили и Мура

Для любого автомата Мили можно построить эквивалентный ему автомат Мура и, обратно, для любого автомата Мура можно построить эквивалентный ему автомат Мили.

Рассмотрим преобразование автомата Мили в автомат Мура. Пусть задан автомат Мили S = (A, Z, W, , , a1), построим автомат Мура S / = (A /, Z /, W /,  /,  /, a1 /), у которого Z / = Z; W / = W.

Для определения множества A / необходимо выполнить расщепление состояний автомата Мили исходя из следующего. Если автомат Мили при переходе в некоторое состояние as может выдавать в разные моменты времени один из выходных сигналов из алфавита W , то такое состояние as должно быть расщеплено на состояний. То есть число элементов в множестве As равно числу различных выходных сигналов на дугах автомата S, входящих в состояние as (рис.3.8):

As = {(as, w1), (as, w2), (as, w3), ..., (as, wk)}.

As = {(as, w1), (as, w2), (as, w3)}

Рис.3.8. Построение множества As

Множество состояний автомата S / получим как объединение множеств As:

A / ,

где M – число состояний в автомате Мили S.

Такое расщепление состояний автомата Мили необходимо потому, что все состояния эквивалентного ему автомата Мура должны быть отмечены только одним выходным сигналом из алфавита W.

Функцию переходов  / и выходов  / определим следующим образом. Если в автомате Мили S был переход (am, zf) = as и при этом выдавался выходной сигнал  (am, zf) = wg, то в автомате Мура S / (рис.3.9) будет переход из множества состояний Am, порождаемых am, в состояние (as, wg) под действием того же входного сигнала zf.

В качестве начального состояния автомата Мура можно взять любое состояние из множества A1, порождаемого начальным состоянием a2.

Рис.3.9. Иллюстрация перехода от автомата Мили к автомату Мура

Пример3.4. Преобразовать автомат Мили, изображенный на рис.3.7,а, в автомат Мура.

Решение.

Для автомата Мура Z / = Z = {z1, z2};

W / = W = {w1, w2, w3, w4, w5}.

Построим множество А / для чего найдем множества пар порождаемых каждым состоянием автомата Мили S. Каждую пару обозначим символами b1, b2, ... :

A1 = {(a1, w2),(a1, w4)} = {b1, b2}; A2 = {(a2, w1)} = {b3};

A3 = {(a3, w3),(a3, w5)} = {b4, b5}; A4 = {(a4, w4),(a4, w5)} = {b6, b7}.

A / = {b1, b2, b3, b4, b5, b6, b7}.

Для определения функции  / с каждым состоянием вида (as, wg), представляющим собой пару, отождествим выходной сигнал, являющийся вторым элементом этой пары:

 /(b1) = w2;  /(b2) =  /(b6) = w4;  /(b3) = w1;

 /(b4) = w3;  /(b5) =  /(b7) = w5.

Поясним построение функции  /.

Так как в автомате Мили S есть переход из состояния a1 под действием сигнала z1, в состояние a2 с выдачей w1, то из множества состояний A1 = {b1, b2}, порождаемых а1 в автомате S / должен быть переход в состояние (a2, w1) = b3 под действием сигнала z2. Аналогично из состояний множества A1 = {b1, b2} должен быть переход в состояние (a4, w5) = b7 под действием сигнала z2 и т.д.

В качестве начального состояния можно выбрать одно из состояний, порождаемых а1, например, b2.

На рис.3.10 приведен граф автомата Мура S /, эквивалентного автомату Мили S. Табл. 3.13 - отмеченная таблица переходов автомата Мура .

Таблица 3.13