Россия |
Эксперименты с автоматами, имеющими взвешенный входной алфавит
Синтез синхронизирующих последовательностей, минимальных по весу
В основе построения СП, УП и ДП, минимальных по весу, лежит так называемое дерево преемников, формируемое для автомата и множества
его допустимых начальных состояний. Оно незначительно отличается от аналогичной структуры, определенной в [18]. Остановимся на способе его построения.
Под -множеством автомата
понимается любая конечная совокупность состояний
, не все из которых обязательно различны. Если
-множество содержит один элемент, то оно называется простым. Если
-множество содержит два или более одинаковых элементов, оно именуется кратным.
-множество однородно, если все его элементы совпадают друг с другом.
Назовем -группой множество, состоящее из
-множеств, общее число элементов которых равно
.
-группа называется простой (однородной), если все
-множества в ней просты (однородны).
Пусть есть
-группа, состоящая из
-множеств
-преемник
есть другая
-группа, построенная по следующим правилам:
-
-множество
разбиваем на такие подмножества, каждое из которых содержит все те состояния из
, которые вырабатывают одинаковую реакцию на входную последовательность
. Каждое полученное подмножество далее интерпретируется как
-множество, а совокупность всех таких подмножеств интерпретируется как
-группа
.
- В
-множествах из
заменяем каждое состояние его преемником относительно входной последовательности
.
Получаемая в результате такого построения -группа является
-преемником
.
Определим теперь структуру, называемую деревом преемников для заданного автомата и множества допустимых начальных состояний
. Она состоит из ветвей, расположенных в последовательных уровнях, нумерация которых начинается с нуля. Нулевой уровень дерева содержит единственную, называемую начальной, ветвь. Условимся считать, что она связана с
-группой
. Если входной алфавит
автомата
содержит
символов, то каждая ветвь в
-м уровне
расщепляется на
ветвей, представляющих символы
соответственно и являющихся ветвями
-го уровня. Ветвь
-го уровня считается связанной с
-группой, являющейся
-приемником соответствующей
-группы уровня
. Будем называть вершины простыми, кратными или однородными, если они связаны с соответствующими
-группами.
Из описанного метода построения вытекает, что дерево преемников является бесконечной структурой. Для синтеза СП, УП и ДП нами будут из упомянутой бесконечной структуры выделяться конечные деревья за счет введения специальных правил обрыва ветвей. Каждая такая оборванная ветвь связана с вершиной дерева, которую мы будем называть листом, следуя терминологии, принятой в теории графов.
Для построения минимальной по весу СП используем граф, который назовем синхронизирующим деревом (СД). Основой для его построения является описанное выше дерево преемников.
Вершинами СД являются -группы дерева преемников. Корень СД представляет собой
-группу
нулевого уровня. Вершиной 1-го уровня СД, связанной с
-ветвью, является
-группа
, представляющая собой
-преемник
-группы
, при этом из вершины
в
проводится дуга, помеченная символом
. Аналогично строятся вершины СД всех последующих уровней и соединяющие их дуги. Каждой вершине
в СД поставим в соответствие флажок (на рисунках он будет обозначаться прямоугольником), в него будет вписано число, равное сумме весов входных символов последовательности, которая соответствует пути по СД, ведущему из корня в вершину
.
Условимся теперь об обозначениях вершин СД. Если вершине СД соответствует
-группа
, где
-
-множества, то для ее обозначения будем использовать множество состояний автомата
, равное

Для того чтобы выделить из дерева преемников конечное СД, введем правила обрыва ветвей. Правила эти должны определять момент, когда некоторая вершина дерева преемников становится листом, то есть из нее в процессе дальнейшего построения не исходит никаких дуг.
При построении СД автомата с множеством
допустимых начальных состояний вершина
-го уровня становится листом, если выполняется хотя бы одно из следующих условий:
-
;
- на уровнях, предшествующих
-му, имеется такая вершина
, что
, но значение флажка вершины
больше значения флажка вершины
;
- на уровнях, предшествующих
-му, имеется такая вершина
, что
, а значение флажка вершины
больше значения флажка вершины
.
Проиллюстрируем процесс построения СД для автомата, заданного табл. 1.1, считая, что . Этот граф приведен на рис. 1.1. В овале, изображающем вершину, перечислены состояния множества, соответствующего этой вершине.
s\x | ![]() |
![]() |
![]() |
---|---|---|---|
1 | 1/0 | 1/1 | 5/0 |
2 | 3/1 | 2/0 | 4/0 |
3 | 2/1 | 4/1 | 4/0 |
4 | 5/1 | 1/1 | 5/1 |
5 | 3/0 | 2/0 | 4/1 |
Так, вершина первого уровня, две вершины
второго уровня, вершины
и
третьего уровня и т. д. являются листьями в силу пункта 2 правил обрыва. Вершины
и
пятого уровня, вершина
третьего уровня являются листьями в силу пункта 1 правил обрыва. Две вершины
четвертого уровня, имеющие значение флажка 43, являются листьями в силу пункта 3 тех же правил.
Из способа построения СД вытекает, что последовательность входных символов, соответствующая пути по СД из корня в одну из вершин , где
, является СП для заданного автомата.
Понятно, что построение минимальной по весу СП сводится к следующей простой процедуре. Среди всех вершин СД, у которых
, отыскивается вершина с минимальным значением флажка
и в СД находится путь в нее из корня дерева. Очевидно, что соответствующая этому пути последовательность символов и является СП, имеющей минимальный вес, равный упомянутому значению флажка
.
Так, в СД на рис1.1 имеется 4 таких вершины, из которых вершина пятого уровня имеет минимальное значение флажка, равное 27.
Поскольку пути из корня в эту вершину соответствует входная последовательность , то она и является минимальной по весу СП. Заметим, кстати, что минимальной по длине СП для этого автомата и того же множества допустимых начальных состояний является последовательность
, соответствующая пути по СД из корня в вершину
третьего уровня.
Приведенный пример показывает, что в общем случае СП для автомата может быть минимальной по весу, но не являться минимальной по длине.