Прежде чем говорить о сетях из автоматов общего вида, рассмотрим некоторые основные виды соединения автоматов.
Параллельное соединение (рис. 3.11). Различаются соединения с общими и раздельными входами (алфавитами).
|
|
A
|
|
V2 V2
Рис. 3.11 - Параллельное соединение автоматов
Для случая, когда параллельное соединение автоматов представлено парой автоматов S1 = {A1, Q1, V1, d1, l1}; S2 = {A2, Q2, V2, d2, l2} то его можно рассматривать как один автомат S = {A, Q, V, d, l}, который определяется следующим образом: A = A1´A2, Q = Q1´Q2, V = V1´V2. Таким образом, входной символ автомата S - это пара символов: a = (a1, a2), состояние автомата S - это пара состояний: q = (q1, q2), где q1 Î Q1, q2 Î Q2. Далее d(q, a) = d((q1, q2), (a1, a2)) = (d1(q1, a1), d2(q2, a2)), т.е. смена состояний происходит независимо и одновременно. Аналогично: l(q, a) = (l1(q1, a1), l2(q2, a2)) = (v1, v2), где v1 Î V1; v2 Î V2. При этом автомат S называется прямым произведением автоматов S1 и S2.
Для второго варианта параллельного соединения входные алфавиты S1, S2 и S совпадают. Поэтому d(q, a) = (d1(q1, a), d2(q2, a)).
Последовательное соединение автоматов показано на рис. 3.12.
|
|
A1 A2=V1 V2
Рис. 3.12 - Последовательное соединение автоматов
Эту сеть можно описать как автомат S = {A, Q, V, d, l}, причем A=A1, V=V2, V1=A2 и Q = Q1 ´ Q2. Для определения d и l существенна задержка функции l1. Если задержка l1 равна нулю, то
l1(q1(t), a(t)) = V1(t);
q(t+1) = (q1 (t+1), q2(t+1)) =
= (d1(q1(t), a(t)), d2(q2(t), l1(q1(t), a(t)))).
Выражение в левой части зависит только от q(t) и a(t) и, следовательно, определяет q(t+1) как функцию от этих переменных. Эта функция и есть функция d для S.
Если же время задержки l1 равно единице, то получим:
l1(q1(t), a(t)) = V1(t+1);
q(t+1) = (d1(q1(t), a(t)), d2(q2(t), l1(q1(t-1), a(t-1)))).
Дата добавления: 2015-10-05; просмотров: 863;