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

Обобщенные автоматы без потери информации

< Лекция 2 || Лекция 3: 12 || Лекция 4 >
Аннотация: Определен новый класс автоматов без потери информации, названных обобщенными автоматами БПИ. Приводится критерий принадлежности автомата этому классу в терминах состояний с потерей информации. Описывается алгоритм распознавания проекции неизвестного входного слова по заданному множеству каналов. Предложена конструкция так называемого проверочного графа автомата, и в его терминах формулируется еще один критерий принадлежности автомата классу ОБПИ.

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

Основополагающие работы в области исследования автоматов, являющихся моделями таких устройств, принадлежат Д. Хаффмену [76] и С. Ивену [74]. В этих работах введены и изучены два класса автоматов, названных соответственно автоматами без потери информации (БПИ-автоматами) и автоматами без потери информации конечного порядка (БПИК-автоматами), которые позволяют однозначно декодировать принятое сообщение. В упомянутых работах исследуемые автоматы предполагались инициальными, т. е. стартующими из известного начального состояния.

В этой лекции предложены обобщения БПИ- и БПИК-автоматов в двух направлениях. Одно из них связано с отказом от предположения об их инициальности, а второе - с исследованием такого рода автоматов со структурированными входными и выходными алфавитами. В последней ситуации восстановление неизвестных входных последовательностей осуществляется не в полном объеме, а на заданном подмножестве компонент структурированного входного символа.

В этом разделе в качестве математической модели ДУ используется слабоинициальный автомат Мили A=(S, X, Y, \delta, \lambda, s_0), где s_0 - множество его допустимых начальных состояний, причем |S_0| \ge 1. Далее предполагается, что входной и выходной алфавиты автомата являются структурированными, т. е. X=X_1 \times X_2 \times \dots \times X_n и Y=Y_1 \times Y_2 \times \dots \times Y_m.

Пусть \bar p=\bar {x_1} \dots \bar {x_k} - последовательность входных символов (входное слово) автомата A. Число d(\bar p)=k назовем длиной слова \bar p.

Пусть \bar x=(x_1, \dots, x_n) \in X, I \le i_1 \le i_2 \le \dots \le i_{\nu}, - натуральные числа, 1 \le i_j \le n, тогда проекцией \bar x по каналам с номерами i_1, i_2, \dots, i_{\nu} назовем вектор (x_{i_1}, \dots, x_{i_{\nu}}) и будем обозначать ее pr_{i_1, \dots, i_{\nu}} \bar x, а проекцией слова \ bar p= \bar {x_1} \dots \bar {x_k} по тем же каналам назовем упорядоченную последовательность (pr_{i_1, \dots, i_{\nu}} \bar {x_1}, \dots, pr_{i_1, \dots, i_{\nu}} \bar {x_k}) и будем обозначать ее pr_{i_1, \dots, i_{\nu}} \bar p.

Рассмотрим следующую задачу. На автомат A, находящийся в одном из состояний множества S_0, но неизвестно, в каком именно, подается неизвестное входное слово \bar p, и наблюдается реакция автомата на это слово по выходным каналам с номерами j_1 < j_2< \dots < j_{\mu}, где 1 \le j_i \le m. Требуется построить эксперимент, проводимый с автоматом A после приложения слова \bar p, позволяющий распознать проекцию этого слова по каналам с номерами i_1, i_2, \dots, i_{\nu}, где i_1 < i_2 < \dots < i_{\nu}.

Автоматы, для которых сформулированная задача может быть решена независимо от входного слова \bar p и действительного начального состояния из множества S_0, назовем обобщенными автоматами без потери информации (ОБПИ-автоматами).

Далее, не теряя общности, положим, что i_1=1, i_2=2, \dots, i_{\nu}=\nu и соответственно j_1=1, j_2=2, \dots, j_{\mu}=\mu, т. е. реакция автомата A на слово \bar p наблюдается по первым \mu выходным каналам, а в каждом символе \bar {x_i} (i=\overline {1,k}) слова \bar p восстановлению подлежат сигналы, поступающие на автомат по первым \nu входным каналам.

Из формулировки задачи следует, что ОБПИ-автоматы должны обладать следующим свойством:

\forall_{s,t \in S_0} \forall_{\bar p, \bar q \in X*} pr_{1, \dots, \mu} \lambda (s, \bar p)=pr_{1, \dots, \mu} \lambda (t, \bar p) \to pr_{1, \dots, \nu} \bar p=pr_{1, \dots, \nu} \bar q ( 3.1)

Отметим, что определенные нами ОБПИ-автоматы в качестве частного случая включают в себя ранее известные БПИ-автоматы, введенные Д. Хаффменом [76], и автоматы существенно без потери информации (СБПИ-автоматы) [9] [43], введенные автором предлагаемой монографии. БПИ-автоматы получаются при |S_0|=1, \nu =n, \mu = m, а СБПИ-автоматы получаются при S_0=S, \nu = n, \mu = m.

Определение 3.1. Пару состояний s и t автомата A назовем состояниями с потерей информации (СПИ-состояниями), если

\exists_{\bar p, \barq \in X^*} \delta (s, \bar p)=\delta (t, \bar q) & pr_{1, \dots, \mu} \lambda (s, \bar p)= pr_{1, \dots, \mu} \lambda (t, \bar q) \to pr_{1, \dots, \nu} \bar p \ne pr_{1, \dots, \nu} \bar q ( 3.2)

Заметим, что если s=t, то приведенное определение совпадает с определением из [76], и в этом случае s называется СПИ-состоянием.

Теорема 3.1. Для того чтобы автомат A был ОБПИ-автоматом, необходимо и достаточно, чтобы он не имел СПИ-состояний.

Доказательство. Необходимость условий теоремы очевидна, покажем их достаточность.

Пусть условия теоремы выполняются. Предположим, что на вход автомата A было подано неизвестное слово \bar {\nu}, а на первых \mu выходных каналах наблюдалось слово \bar w. По таблице переходов-выходов автомата A определим пары "состояние - входное слово" (s_{i_1}; \bar {\nu_1}), \dots, (s_{i_r}; \bar {\nu_r}), такие, что s_{i_j} \in S_0 и pr_{1, \dots, \mu} \lambda (s_{i_j}, \nu_j)=\bar w, где j=1, \dots, r. Понятно, что среди слов \bar {\nu_1}, \dots, \bar {\nu_r} находится и искомое слово.

Пусть \delta (s_{i_j}, \bar {\nu_j})=s_{i_j}*; j=1, \dots, r. Покажем, что между парами (s_{i_j}, \bar {\nu}) и состояниями s_{i_j}* существует взаимно однозначное соответствие. Последнее означает, что такое соответствие существует и между pr_{1, \dots, \nu} \bar {\nu_j} и состояниями s_{i_j}*, j=1, \dots, r.

Если все состояния s_{i_1}*, \dots, s_{i_r}* попарно различны, справедливость сформулированного утверждения очевидна. Предположим, что среди состояний s_{i_1}*, \dots, s_{i_r}* имеется по крайней мере два совпадающих. Без ограничения общности можно считать, что s_{i_1}*=s_{i_2}*. Из последнего равенства следует, что \delta (s_{i_1}, \bar {nu_1})= \delta (s_{i_2}, \bar {\nu_2}). По построению пары (s_{i_1}, \bar {\nu_1}) и (s_{i_2}, \bar {\nu_2}) различны, что возможно только в следующих трех случаях:

  1. s_{i_1}=s_{i_2}, pr_{1, \dots, \nu} \bar {\nu_1} \ne pr_{1, \dots, \nu} \bar {\nu_2}
  2. s_{i_1} \ne s_{i_2}, pr_{1, \dots, \nu} \bar {\nu_1} \ne pr_{1, \dots, \nu} \bar {\nu_2}
  3. s_{i_1} \ne s_{i_2}, pr_{1, \dots, \nu} \bar {\nu_1} = pr_{1, \dots, \nu} \bar {\nu_2}.

В первом случае состояние S_{i_1} является по определению СПИ-состоянием, что противоречит нашему предположению. Во втором случае пара состояний S_{i_1} и s_{i_2} является по определению СПИ-состояниями, что также противоречит нашему предположению. Таким образом, в действительности может иметь место только третий случай, когда у двух входных слов \bar {\nu_1} и \bar {\nu_1} их проекции по каналам 1, \dots, \nu совпадают. Это и доказывает справедливость утверждения о существовании взаимно однозначного соответствия между pr_{1, \dots, \nu} \bar {\nu_j} и состояниями s_{i_j}*, j=1,\dots, r.

Продолжим доказательство теоремы. Предположим, что среди состояний s_{i_1}*, \dots, s_{i_r}* все попарно различные состояния образуют множество \hat S=\{\hat {s_{k_1}}, \dots, \hat {s_{k_f}}\}, где f \le r. Рассматривая \hat S в качестве множества допустимых начальных состояний автомата A, построим для него установочную последовательность L. Обозначим через s состояние, в которое перейдет автомат A после подачи слова L, а выходную последовательность, которую он выдает при этом, обозначим через M. Если пара (L,M) порождается только из одного состояния множества \hat S (этот факт легко установить по таблице переходов-выходов автомата A ), тогда, очевидно, существует взаимно однозначное соответствие между заключительным состоянием s и состоянием \hat {s_{k_i}}, между \hat {s_{k_i}} и s_{i_j}* и, наконец, между s_{i_j}* и pr_{1, \dots, \nu}, \bar {\nu_j}. В силу сказанного, знание заключительного состояния s позволяет однозначно восстановить проекцию неизвестного входного слова, поданного на автомат A, по каналам с номерами 1, \dots, \nu.

Если пара (L,M) порождается из двух различных состояний множества \hat S, например \hat {s_{k_1}} и \hat {s_{k_2}}, то им взаимно однозначно соответствуют состояния s_{i_a}* и s_{i_b}*, последним - состояния s_{i_a} и s_{i_b} из множества S_0, а состояниям S_{i_a} и S_{i_b}, в свою очередь, взаимно однозначно соответствуют входные слова \bar {\nu_a} и \bar {\nu_b}. В силу выполненных выше построений имеем следующие равенства:

\delta (s_{i_a}, \bar {\nu_a}L)= \delta (s_{i_b}, \bar {\nu_b}L), pr_{1, \dots, \mu} \lambda (s_{i_a}, \bar {\nu_a}L)=pr_{1, \dots, \mu} \lambda (s_{i_b}, \bar {\nu_b}L)=\bar w pr_{1, \dots, \mu} M

Если входные слова \bar {\nu_a} и \bar {\nu_b} таковы, что pr_{1, \dots, \mu} \bar {\nu_a}=pr_{1, \dots, \mu} \bar {\nu_b}, то искомая проекция восстанавливается однозначно. Если же выписанные только что проекции различны, то это означает, что пара состояний s_{i_a} и s_{i_b} является СПИ-состояниями. Этот факт противоречит условию теоремы.

Заметим, что аналогичные рассуждения справедливы и для случая, когда пара (L,M) порождается более чем из двух состояний.

Теорема доказана.

Доказательство теоремы фактически содержит алгоритм распознавания проекции неизвестного входного слова по заданному множеству каналов, который сформулируем в явном виде.

  1. Наблюдаем проекцию \bar w выходного слова автомата A по каналам 1, \dots, \mu, являющуюся реакцией на подачу неизвестного входного слова \bar {\nu}. По таблице переходов-выходов автомата A определяем все пары "состояние - входное слово" (s_{i_1}; \bar {\nu_1}), \dots, (s_{i_r}; \bar {\nu_r}), такие, что s_{i_j} \in S_0 и pr_{1, \dots, \mu} \lambda (s_{i_j}, \nu_j)= \bar w, где j=1, \dots, r.
  2. Строим установочную последовательность L, считая множеством \hat S допустимых начальных состояний автомата множество всех попарно различных состояний из совокупности состояний \delta (s_{i_1}, \bar {\nu_1}), \dots, \delta (s_{i_r}, \bar {\nu_r}).
  3. Подаем на вход автомата A слово L и наблюдаем выходное слово M. По паре (L,M) определяем заключительное состояние автомата A и все те состояния \hat {S_{k_a}}, \dots, \hat {s_{k_b}}, которые этой парой порождаются.

Из множества пар (s_{i_1}; \bar {\nu_1}), \dots, (s_{i_r}; \bar {\nu_r}) выделяем все те его элементы, для которых \delta (s_{i_j}, \bar {\nu_j})=s_{k_f}*, f=1, \dots, b. Если этот элемент один, то проекция второго члена выделенной пары по каналам 1, \dots, \nu и есть искомое входное слово. Если число таких элементов больше двух, то у них упомянутые проекции вторых членов пар совпадают и являются искомым входным словом.

Рассмотрим пример. Пусть ОБПИ-автомат задан графом на рис.3.1. Условимся, что для наблюдения реакции выделен 1-й выходной канал автомата (по нему выдается левый символ выходной пары) и проекция неизвестного входного слова восстанавливается по 1-му входному каналу, т. е. \nu =\mu =1. Пусть S_0=\{1,2\}, на автомат подано неизвестное входное слово длиной 3, а по 1-му выходному каналу при этом наблюдалась реакция 0,1,1. Строим последовательность пар "состояние - входное слово", упомянутую в пункте 1 алгоритма: (1;10,00,10), (1;10,00,11), (1;10,00,00), (1;10,00,11), (1;10,01,10), (1;10,01,11), (1;10,01,00), (1;10,01,10), (1;11,00,10), (1;11,00,11), (1;11,00,00), (1;11,00,10), (1;11,01,10), (1;11,01,11), (1;11,01,00), (1;11,01,10), (2;10,10,10), (2;10,10,11), (2;10,11,10), (2;10,11,11), (2;11,10,10), (2;11,10,11), (2;11,11,10), (2;11,11,11).


Рис. 3.1.
< Лекция 2 || Лекция 3: 12 || Лекция 4 >
Дмитрий Степаненко
Дмитрий Степаненко
Россия
Юрий Фролов
Юрий Фролов
Украина