Диагностические эксперименты для двух состояний

Задача определения начального состояния автомата М в случае, когда А (М) имеет произвольную мощность m, конечно, намного сложнее относительно частного случая, когда m = 2. Чтобы различить между собой общий и этот частный случаи, первый будем называть диагностической задачей для т состояний, а второй — диагностической задачей для двух состояний.

В этой главе мы рассмотрим диагностическую задачу для двух состояний, предполагая, что данный автомат М имеет n состояний, с A(M)=(σi0, σj0). Так как М минимален, то σi0 и σj0 должны быть различимы и, следовательно, (n—1)-различимы. Значит, существует входная последовательность длины n — 1 или менее, которая, будучи приложенной к M|σi0 и M|σj0, вызывает различные выходные последовательности. Такая входная последовательность называется диагностической последовательностью для {σi0, σj0}.Диагностический эксперимент для двух состояний для автомата М при А (М) = {σi0, σj0} состоит, следовательно, в приложении к М диагностической последовательности для {σi0, σj0} и в наблюдении реакции; на основании этой реакции может быть определено истинное начальное состояние. В оставшейся части этого параграфа мы покажем, как могут быть построены диагностические последовательности для заданных пар состояний.

Пусть σi0 и σj0 будут i-различимы и (l — 1)-эквивалентны, для некоторого l, 1 ≤ l ≤ n - 1[23]. Тогда длина кратчайшей диагностической последовательности для { σi0, σj0} есть l. Любая диагностическая последовательность для { σi0, σj0}. Длина которой равна определенному выше значению l, будет называться минимальной диагностической последовательностью для { σi0, σj0}и обозначаться ε(σi0, σj0). Если σi0 и σj0 l -различимы и (l -1)-эквивалентны, то σi0 и σj0 должны быть разобщенными состояниями в Р l и объединенными в Р l-1. Поэтому i может быть определено путем построения k-эквивалентных разбиений для данного автомата М и нахождения наименьшей величины k такой, что P k содержит σi0 и σj0 в двух различных классах; эта величина должна равняться l.

Когда ε(σi0, σj0) прикладывается к M|σi0 и M|σj0, выходные последовательности получаются одинаковыми, за исключением последнего l -го символа. Следовательно, k-е преемники σi0 и σj0 относительно ε(σi0, σj0) являются (l — k)- различимыми и (l -k-1) - эквивалентными для всех 0 ≤ k ≤ l — 1. Это положение изображено на рис. 4.2, где ε(σi0, σj0) представлена в виде последовательности ξu1ξu2... ξu l. Последовательности состояний, которые проходят автоматы M|σi0 и M|σj0 есть соответственно σi1, σi2,..., σii и σj1, σj2,..., σj l . При этом выходные последовательности имеют вид ζ v 1, ζ v 2,..., ζ( t ) vl, для автомата M|σi0 и ζ v 1, ζ v 2,..., ζ( j ) vl для автомата M|σi0, где ζ(i) vl ≠ ζ(j) vl. Используя обозначения рис. 4.2, можно установить, что если σi0и σj0 и l -различимы (l — 1)-эквивалентны и если ξu1ξu2... ξu l и есть минимальная диагностическая последовательность для { σi0, σj0 }, то: (1) для

1 ≤ k ≤ l — 1 ξu k есть входной символ, который переводит σik-1 и σjk-1 в пару (l — k)-различимых и (l—k—1) -эквивалентных состояний σik и σjk; ξu l есть входной символ, при приложении которого к автоматам M|σi l-1 и M|σj l-1 последние выдают различные выходные символы.

Определение ξu k, σi k и σj k из σi k-1 и σj k-1 (1 ≤ k ≤ l —1). Определение ξu k, σi k и σj k, когда σi k-1 и σj k-1 известны, может быть наиболее удобно произведено с помощью таблиц Р k, построение которых для эквивалентных разбиений данного автомата описано в § 3.6. σi k-1 и σj k-1 выявляются (l — k + 1)-различимыми и (l — k)-эквивалентными состояниями; следовательно, они составляют смежные строки в таблице P l-k и разобщенные строки в таблице Р l-k+1. Поэтому строки σi k-1 и σj k-1 в таблице Р l-k должны содержать две клетки, скажем σ´i k-1 и σ´j k-1 соответственно, которые имеют различные нижние индексы, по меньшей мере в одном, скажем ξ´u k-1 -м столбце. При этом σ´i k-1 и σ´j k-1 должны быть (l — k—1)-эквивалентными, так как они являются первыми преемниками (l — k)-эквивалентных состояний σi k-1 и σj k-1 относительно входного символа ξ´u k-1; они должны быть также (l —k)-различимыми, так как σ´i k-1 и σ´j k-1 имеют различные нижние индексы в таблице P l-k. Следовательно, σ´i k-1 и σ´j k-1 являются искомыми состояниями σi k и σj k соответственно, и входной символ ξ´u k-1 есть искомый входной символ ξu k. Таким образом, ξu k, σi k и σj k могут быть определены путем просмотра таблицы P l-k.

Определение ξu l из σi t-1 и σj l-1. σi t-1 и σj l-1. являются 1-различимыми; поэтому должен существовать, по крайней мере, один входной символ, при приложении которого к автоматам M|σi l-1 и M|σj l-1 последние выдают различные выходные символы. Этот символ, который является искомым символом ξu l, может быть легко определен путем нахождения в z v -подтаблице столбца, в котором строки σi t-1 и σj l-1 различны.

Приведенные методы могут быть объединены и представлены в виде следующего алгоритма.

Алгоритм 4.1. σi 0 и σj 0 суть два состояния автомата М. Чтобы определить минимальную диагностическую последовательность для { σi 0,σj 0 }: (1) Построим таблицы P k для М. Найдем l такое, что σi 0 и σj 0, являются смежными строками в таблице P l -1 и разобщенными строками в таблице Р l. Предположим, что k=1. (2) (а) Если l — k > 0, то переходим к шагу 3. (б) Если l — k = 0, то ξu k соответствует любому столбцу в z v -подтаблице М, такому, что строки σi k-1 и σj k-1 в этом столбце различны. ξu1ξu2... ξu k есть минимальная диагностическая последовательность для { σi 0, σj 0 }. (3) ξu k соответствует любому столбцу в таблице P l -k, такому, что строки σi k-1 и σj k-1 этого столбца имеют клетки σi k и σj k соответственно с различными нижними индексами. Увеличиваем k на единицу и возвращаемся к шагу (2).

Для иллюстрации рассмотрим автомат A17, представленный таблицей 4.1 и изображенный на рис. 4.3. Таблицы 4.2 — 4.5 являются таблицами P1, Р2, Р3 и Р4 автомата A17. Для примера найдем минимальную диагностическую последовательность для {1,2}, т. е. ε(1,2). Начнем с рассмотрения таблицы Р3, так как это «последняя» таблица, в которой строки 1 и 2 являются смежными. Строки 1 и 2 в таблице Р3 имеют различные нижние индексы в клетках «4c» и «5d», которые находятся в столбце β. Значит, β есть первый символ в ε(1,2). В таблице Р2 строки 4 и 5 имеют различные нижние индексы в клетках «Зb» и «2а», которые находятся в столбце а. Значит, а есть второй символ в ε(1,2). В таблице Р1 строки 3 и 2 имеют различные нижние индексы в клетках «5b» и «1а», которые находятся в столбце а. Значит, а есть третий символ в ε(1,2). Β также может быть выбран в качестве третьего символа, так как строки 3 и 2 имеют различные нижние индексы в клетках «1а» и «5b», которые находятся в столбце β. В z v -подтаблице строки 1 и 5 имеют различные клетки (0 и 1) в столбце а. Значит, а есть четвертый и последний символ в ε(1,2). Таким образом, ε(1,2) имеет

вид β aaa или β a β a. Когда β aaa прикладывается к A17 в состоянии 1 и в состоянии 2, последний выходной символ есть 1 и 0 соответственно, что легко может быть проверено по таблице 4.1 или по рис. 4.3. Следовательно, если {1,2} является множеством допустимых начальных состояний A17, то диагностический эксперимент может быть проведен путем приложения β aaa и наблюдения последнего выходного символа: если этот символ—1, то начальное состояние — 1, если этот символ—0, то начальное состояние — 2. В таблице 4.6 перечислены все минимальные диагностические последовательности для всех пар состояний { σi 0, σj 0 } A17; последние два столбца в этой таблице указывают последние наблюдаемые выходные символы ζ(i) v1 и ζ(j) v1, когда минимальная диагностическая последовательность прикладывается к σi 0 и σj 0 соответственно. Хотя для данной пары состояний могут быть построены две или более минимальных диагностических последовательностей, в таблице приведена только одна такая последовательность.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: