Опубликован: 17.02.2011 | Уровень: специалист | Доступ: платный
Лекция 22:

Разновидности экспериментов с билинейными автоматами

< Лекция 21 || Лекция 22: 12
Аннотация: Исследованы эксперименты по распознаванию неизвестного входного слова билинейного автомата и некоторые модификации понятия билинейного автомата без потери информации. Рассмотрены различные типы билинейных автоматов с запаздыванием и для них приведены критерии существования синхронизирующих, установочных и диагностических последовательностей.

Эксперименты по распознаванию неизвестного входного слова

БА \tilde A назовем БА без потери информации из состояния \bar s (БПИ- \bar s ), если, зная это состояние и наблюдая выходную последовательность на любую неизвестную входную последовательность, последнюю можно определить однозначно.

По формуле (21.2) имеем

\bar s(0)=C\bar s(0)+ \left ( \sum_{i=1}^{l}G_iu_i(0) \right ) \bar s(0)+D\bar u(0)

Преобразуем это равенство следующим образом:

\sum_{i=1}^lG_i\bar s(0) u_i(0)+D\bar u(0)=\bar u(0)-C\bar s(0) ( 22.1)

Будем интерпретировать (22.1) как систему линейных уравнений относительно неизвестных u_1(0), \dots, u_l(0) , являющихся координатами вектора \bar u(0). Условимся матрицу этой системы обозначать через L(\bar s(0)) и называть матрицей распознавания для состояния \bar s(0).

Будем говорить, что состояние \bar {s_j} БА \tilde A достижимо из состояния \bar {s_j}, если существует такая входная последовательность, которая переводит БА из состояния \bar {s_j} в \bar {s_j}. Обозначим через R(\bar {s_j}) множество тех состояний БА, которые достижимы из состояния \bar {s_j}.

Теорема 22.1. Для того чтобы БА \tilde A был БА БПИ- \bar s(0), необходимо и достаточно, чтобы для любого состояния \bar s \in R(\bar s(0)) ) выполнялось условие \rank L(\bar s) = l.

Доказательство. Очевидно, что неизвестный входной вектор \bar u(0) БА \tilde A, стартующего в начальном состоянии \bar s(0), может быть распознан тогда и только тогда, когда система (22.1) имеет единственное решение. Из [33] известно, что необходимым и достаточным условием для этого является равенство ранга этой системы числу l. Если входной вектор \bar u(0) найден, то по формуле (21.1) легко вычислить следующее состояние \bar s(1) этого БА. Зная его и выходной вектор \bar y(1), можно найти вектор \bar u(1) из системы \sum_{i=1}^l G_i\bar s(1)+D\bar {u_i}(1)=\bar y(1)-C\bar s(1) поскольку \bar s(1) достижимо из \bar s(0) и по условию теоремы ранг матрицы последней системы равен l. Доказательство леммы получается отсюда по индукции.

Следуя [18], БА \tilde A назовем БА БПИ, если для него возможно однозначно определить неизвестную входную последовательность по известному начальному состоянию и наблюдаемой реакции независимо от начального состояния и подаваемой входной последовательности.

Теорема 22.2. Для того чтобы БА \tilde A был БА БПИ, необходимо и достаточно, чтобы для любого состояния \bar s \in S_n  \rank L(\bar s) ) был равен l.

Доказательство теоремы очевидно.

Отметим, что каждый БА БПИ является БА БПИ- \bar s(0) для любого \bar s(0), однако, если БА не является сильно связным, то, вообще говоря, не каждый БА БПИ- \bar s(0) будет одновременно и БА БПИ.

Приведем одно достаточное условие принадлежности БА классу БА БПИ.

Теорема 22.3. БА \tilde A является БА БПИ, если \sum_{i=1}^lG_i=[0] и rank D = l.

В этом случае система (22.1) вырождается в систему

D\bar u(0)=\bar y(0)-C\bar s(0)

откуда и следует справедливость теоремы.

Опишем теперь процедуру нахождения множества R(\bar s(0)) всех состояний БА \tilde A, достижимых из состояния \bar s(0). На первом шаге, полагая в формуле (21.1) t=0 и подставляя в (21.1) все возможные входные векторы \bar u(0), общее число которых равно p^l, получим множество всех состояний БА, достижимых из \bar s(0) входными последовательностями длины 1, которое обозначим через R_1(\bar s(0)). Построим множество R(\bar s(0)):=\{s_0\} \bigcup R_1(\bar s(0)). На втором шаге положим в (21.1) t=1 и для каждого \bar s \in R_1(\bar s(0)) и всех возможных входных векторов \bar u построим множество R_2(\bar s(0))= \bigcup R(\bar s). Положим теперь множество R(\bar s(0)):R(\bar s(0)) Y_{\bar s \in R_1(\bar s(0))}. Если мощность только что построенного множества R(\bar s(0)) равна мощности множества R(\bar s(0)), полученного на предыдущем шаге, то процедура заканчивается - искомое множество найдено. В противном случае выполнение процедуры продолжается далее аналогичным образом до t=p^n-1, поскольку любое состояние, достижимое из \bar s(0), может быть достигнуто входной последовательностью, длина которой не превышает числа состояний БА.

Введем еще одну разновидность автоматов БПИ. БА \tilde A назовем БА существенно без потери информации (СБПИ), если, зная только входную последовательность, можно всегда однозначно определить неизвестную входную последовательность, породившую наблюдаемую реакцию.

Сформулируем одно достаточное условие принадлежности БА классу БА СБПИ.

Теорема 22.4. БА \tilde A является БА СБПИ, если \sum_{i=1}^lG_i=[0], C=[0] и \rank D = l.

При выполнении условий теоремы система (22.1) вырождается в систему D\bar u(0)=\bar y(0), которая не зависит от начального состояния \bar s(0) БА. Отсюда и следует справедливость утверждения.

Эксперименты с билинейными автоматами с запаздыванием

По аналогии с [17] приведем классификацию билинейных автоматов с запаздыванием.

Начнем с общих билинейных систем с распределенным запаздыванием.

Запаздывание по состоянию

Уравнение состояния имеет вид

\bar s(t+1)=A_0\bar s(t)+A_1\bar s(t-1)+ \dots +A_h \bar s(t-h)+\\
+\left ( \sum_{i=1}^lF_i^{(0)}u_i(t) \right ) \bar s(t) + \dots + \left ( \sum_{i=1}^lF_i^{(h)}u_i(t) \right ) \bar s(t-h)+B \bar u(t) ( 22.2)

Уравнение выхода имеет вид

\bar y(t)=C_0\bar s(t)+C_1 \bar s(t-1)+ \dots + C_h\bar s(t-h)+\\
+ \left (\sum_{i=1}^lG_i^{(0)}u_1(t) \right ) \bar s(t)+ \dots + \left (\sum_{i=1}^l G_i^{(h)}u_i(t) \right ) \bar s(t-h)+D\bar u(t) ( 22.3)

где A_0, A_1, \dots, A_h, F_1^{(0)}, \dots, F_l^{(0)}, F_1^{(1)}, \dots, F_l^{(1)}, \dots, F_1^{(h)}, \dots, F_l^{(h)} - матрицы размерности n \times n ;

B - матрица размерности n \times l ;

C_0, C_1, \dots, C_h, G_1^{(0)}, \dots, G_l^{(0)}, G_1^{(1)}, \dots, G_l^{(1)}, \dots, G_1^{(h)}, \dots, G_l^{(h)} - матрицы размерности m \times n ;

D - матрица размерности m \times l ;

h - натуральное число (запаздывание).

Все элементы матриц и векторов берутся из основного поля GF(p).

Запаздывание по управлению

Уравнение состояния имеет вид

\bar s(t+1)=A\bar s(t)+ \left ( \sum_{i=1}^l F_i^{(0)}u_i(t) \right ) \bar s(t)+ \left (\sum_{i=1}^lF_i^{(1)}u_i(t-1) \right )\bar s(t)+ \dots +\\
+ \left ( \sum_{i=1}^l F_i^{(h)}u_i(t-h) \right )\bar s(t)+B_0\bar u(t)+B_1\bar u(t-1)+ \dots +B_h\bar u(t-h) ( 22.4)

Уравнение выхода имеет вид

\bar y(t)=C\bar s(t)+ \left (\sum_{i=1}^lG_i^{(0)}u_i(t) \right ) \bar s(t)+ \left ( \sum_{i=1}^lG_i^{(1)}u_i(t-1) \right ) \bar s(t) + \dots +\\
+ \left (\sum_{i=1}^lG_i^{(h)}u_i(t-h) \right )\bar s(t)+D_0\bar u(t)+ D_1 \bar u(t-1)+ \dots + D_h\bar u(t-h) ( 13,5)

Приведем теперь классификацию билинейных автоматов с запаздыванием.

БА с запаздыванием по состоянию

Уравнение состояния имеет вид

\bar s(t+1)=A_0\bar s(t)+A_h\bar s(t-h)+ \left (\sum_{i=1}^lF_i^{(0)}u_i(t) \right ) \bar s(t)++\left (\sum_{i=1}^lF_i^{(h)} u_i(t) \right )\bar s(t-h)+B\bar u(t)

Уравнение выхода имеет вид

\bar y(t)=C_0\bar s(t)+C_h\bar s(t-h)+ \left (\sum_{i=1}^lG_i^{(0)}u_i(t) \right ) \bar s(t)+ \left (\sum_{i=1}^lG_i^{(h)}u_i(t) \right )\bar s(t-h)+D\bar u(t)

БА с запаздыванием по управлению

Уравнение состояния имеет вид

\bar s(t+1)=A\bar s(t)+ \left (\sum_{i=1}^lF_i^{(0)}u_i(t) \right )\bar s(t)+ \left (\sum_{i=1}^{(h)}u_i(t-h) \right )\bar s(t)+B_0\bar u(t)+B_h\bat u(t-h)

Уравнение выхода имеет вид

\bar y(t)=C\bar s(t)+ \left (\sum_{i=1}^lG_i^{(0)}u_i(t) \right )\bar s(t)+ \left (\sum_{i=1}^lG_i^{(h)}u_i(t-h) \right )\bar s(t)+D_0\bar u(t)+D_h\bar u(t-h)

Очевидно, что билинейные автоматы с запаздыванием являются частным случаем общих билинейных систем с распределенным запаздыванием, где соответствующие матрицы (запаздывание на 1, 2, \dots, h-1 такт) являются нулевыми. Таким образом, все результаты, полученные для билинейных автоматов с распределенным запаздыванием, легко распространить на билинейные автоматы с запаздыванием . Поэтому далее рассматриваются только билинейные автоматы с распределенным запаздыванием.

Для однозначности определения состояний для t >0 необходимо задать начальные данные: для билинейных автоматов с распределенным запаздыванием по состоянию необходимо задать состояния в моменты времени t = 0, -1, -2, \dots, -h ; для билинейных автоматов с распределенным запаздыванием по управлению необходимо задать начальное состояние в момент времени t = 0, а также входные символы в моменты времени t = 0, -1, -2, \dots, -h.

Для изучения свойств билинейных автоматов с распределенным запаздыванием применим метод, использованный в [71] и уже примененный нами в лекции 3 (часть II) для линейных автоматов с запаздыванием. Он состоит в том, что более сложная система с запаздыванием сводится к эквивалентной ей системе, но уже без запаздывания, однако с большим числом состояний. Так, для билинейного автомата с распределенным запаздыванием необходимо найти эквивалентный ему билинейный автомат. Далее, учитывая специфику характеристических матриц билинейных автоматов, можно получить необходимые и достаточные условия существования синхронизирующих, установочных и диагностических последовательностей для исходного билинейного автомата с распределенным запаздыванием.

Рассмотрим билинейный автомат с распределенным запаздыванием по состоянию. Его состояние в произвольный момент времени t определим как вектор \bar z(t)=[\bar s(t) \bar s(t-1) \dots \bar s(t-h)]^T. Тогда следующее состояние после подачи очередного входа \bar u(t) будет

\bar z(t+1)=[\bar s(t+1) \bar s(t) \dots \bar s(t-h+1)]^T

Начальное состояние \bar z(0)=[\bar s(0) \bar s(-1) \dots \bar s(-h)]^T.

Тогда билинейный автомат с распределенным запаздыванием по состоянию можно описать следующим образом:

\bar z(t+1)=A*\bar z(t)+ \left (\sum_{i=1}^lF_i*u_i(t) \right ) \bar z(t)+B*\bar u(t) ( 22.6)
\bar y(t)=C*\bar z(t)+ \left ( \sum_{i=1}^lG_i*u_i(t) \right ) \bar z(t)+D*\bar u(t) ( 22.7)
< Лекция 21 || Лекция 22: 12
Дмитрий Степаненко
Дмитрий Степаненко
Россия
Юрий Фролов
Юрий Фролов
Украина