Россия |
Оптимальные эксперименты с линейными автоматами
При исследовании различных видов экспериментов с автоматами в классической теории чаще всего рассматриваются задачи построения минимальных по длине входных последовательностей. Других критериев, кроме длины, для сравнения различных экспериментов в этой теории не используется. Это обстоятельство объясняется тем, что по умолчанию предполагаются равными затраты на подачу различных входных символов, из которых составлена соответствующая входная последовательность, подаваемая в процессе проведения эксперимента.
Вместе с тем упомянутые затраты в действительности могут быть различны, и при подаче двух последовательностей одинаковой длины, отличных по составу входных символов, суммарные затраты могут существенно отличаться. Это, в частности, происходит в том случае, когда моделью автомата описывается некоторый технологический процесс, включающий в качестве входных воздействий разного рода механические действия. Последние могут потребовать выполнения значительной работы, измеряемой, к примеру, в эргах, или затрат мощности, измеряемой в ваттах, и т. п.
В силу сказанного возникает проблема оптимального управления экспериментом по критериям минимизации общих затрат. Заметим, что некоторые эксперименты с автоматами, в частности, эксперименты по распознаванию состояний, можно рассматривать как процессы управления. Например, синхронизацию автомата можно трактовать как процесс управления автоматом путем подачи входной последовательности, устанавливающей автомат в известное заключительное состояние независимо от того, в каком начальном состоянии он находился.
В теории оптимального управления как непрерывными [38], [40], [41], так и дискретными системами [14] [42], входные воздействия, обеспечивающие достижения цели управления, оцениваются по различным содержательным критериям.
Вообще говоря, подобного рода критерии могут быть использованы и при построении теории экспериментов с автоматами.
Хотя линейный автомат и является дискретной системой, однако его задание над конечным полем исключает возможность использования результатов упомянутой теории оптимального управления, поскольку последняя развита для случая вещественного и комплексного полей.
Оптимальные синхронизирующие эксперименты
В этом разделе рассматриваются ЛА, фазовые пространства которых состоят из обобщенных состояний (ОС), определенных в "Обобщенные автоматы без потери информации" . Условимся считать, что в вектор-столбце, представляющем ОС, неопределенными являются последние его координат.
Напомним, что ЛА, для которого существует обобщенная синхронизирующая последовательность (ОСП), называется обобщенно синхронизируемым. Состояние, в котором рассматриваемый ЛА оказывается после подачи ОСП, называется обобщенным синхросостоянием.
Поскольку перевод ЛА в одно и то же обобщенное синхросостояние может осуществляться несколькими ОСП, то введем критерий, по которому будем сравнивать различные ОСП.
Каждому входному символу ЛА поставим в соответствие действительное число , называемое весом символа. Весом входной последовательности назовем величину
Содержательно вес входной последовательности можно интерпретировать как суммарные затраты на ее подачу.
Рассмотрим следующую задачу. Пусть задан обобщенно синхронизируемый ЛА и некоторые обобщенное синхросостояние . Требуется найти ОСП минимального веса, переводящую ЛА из произвольного начального состояния в ОС . При этом предполагается, что множество допустимых начальных состояний ЛА совпадает со всем множеством его состояний.
Прежде чем перейти к решению этой задачи, исследуем некоторые свойства множества всех синхросостояний ЛА и его ОСП.
Условимся ОСП наименьшей длины для ЛА называть далее минимальной ОСП и обозначать ее длину через .
Теорема 18.1. Если ЛА является обобщенно синхронизируемым, то для любого множество синхросостояний, порождаемых всеми ОСП длины , совпадает с множеством синхросостояний, порождаемых всеми ОСП длины .
Доказательство. Предположим, что ОСП длины переводит ЛА в обобщенное синхросостояние . Это означает, что
( 18.1) |
Поскольку есть ОСП, то по теореме 1.18 и тогда (18.1) примет вид
( 18.2) |
или
( 18.2) |
где
Далее (18.2) будем интерпретировать как СЛАУ относительно неизвестных, являющихся координатами вектора Как известно из алгебры [33], необходимым и достаточным условием разрешимости СЛАУ является представление столбца свободных членов в виде линейной комбинации линейно независимых столбцов матрицы системы (18.2).
Поскольку для любого
то
( 18.3) |
Таким образом, вектор является линейной комбинацией линейно независимых столбцов матрицы (18.3) или, что то же самое, линейно независимых столбцов матрицы .
Следствие 1. Мощность множества всех различных синхросостояний ЛА, заданного над полем , равна величине .
Заметим, что нулевое обобщенное синхросостояние всегда входит во множество всех синхросостояний ЛА, поскольку при подаче нулевой входной последовательности длины обобщенно синхронизируемый ЛА переходит в ОС .
Следствие 2. Если , то обобщенно синхронизируемый ЛА имеет ненулевое обобщенное синхросостояние .
Это вытекает из того, что если , то , но тогда для любого р.
Что касается определения множества всех обобщенных синхросостояний, то, как это следует из теоремы 18.1, оно сводится к нахождению линейного подпространства, порожденного базисом матрицы ).
Теорема 18.2. Пусть - минимальная ОСП, а - произвольная ОСП длины , переводящая ЛА в одно и то же синхросостояние, и пусть для любого входного символа этого ЛА. Тогда .
Доказательство. Предположим, что ОСП , где переводит ЛА в обобщенное синхросостояние . Это означает, что
Учитывая, что в силу обобщенной синхронизируемости для всех справедливо равенство , получаем
где слагаемые, содержащие при , равны [0]. Из полученного равенства следует, что ОСП длины переводит ЛА в обобщенное синхросостояние . В силу неотрицательности весовой функции отсюда следует утверждение теоремы.
Из этой теоремы вытекает следующий вывод: если весовая функция является неотрицательной, то минимальную по весу ОСП рассматриваемого обобщенно синхронизируемого ЛА следует искать среди ОСП минимальной длины.
В случае, когда весовая функция по крайней мере для одного входного символа ЛА, сформулированная в начале этого раздела задача имеет решение только тогда, когда длина искомой ОСП предполагается заранее заданной. Легко показать, что если на длину ОСП ограничений не накладывать, то для этого ЛА можно построить ОСП, вес которой будет меньше любого наперед заданного отрицательного числа.
Далее предполагается, что весовая функция является неотрицательной и матрица в СЛАУ (18.2), обозначаемая далее как , соответствует .
Вернемся теперь к рассматриваемой задаче. Множество всех ОСП, переводящих ЛА в обобщенное состояние , как это следует из сказанного выше, должно удовлетворять равенству
Здесь вектор-столбец . В соответствии с формулировкой задачи искомое решение должно доставлять минимум весовой функции . Учитывая, что переменные по смыслу задачи являются целыми неотрицательными числами, не превосходящими характеристику поля , рассматриваемую задачу можно описать в следующем виде:
( 18.4) |
( 18.5) |
Условимся для упрощения обозначений координаты вектора считать перенумерованными сверху вниз натуральными числами от 1 до . Тогда последнее неравенство примет вид
( 18.6) |
Сформулированная задача относится к классу задач математического программирования. Скажем более точно: она представляет собой задачу целочисленного программирования [35] с линейными ограничениями (18.5).
Перепишем систему ограничений (18.5) в виде системы сравнений
( 18.7) |
Как известно, сравнение эквивалентно равенству для некоторого целого . Поэтому (18.7) эквивалентна СЛАУ в целых числах:
где - вектор-столбец, число координат которого равно числу уравнений в системе (18.7). Таким образом, поставленная задача эквивалентна следующей задаче целочисленного программирования:
( 18.8) |
( 18.9) |
( 18.10) |
Заметим, что из (18.9) нетрудно установить диапазон изменения координат вектора :
Подведя итоги изложенного, сформулируем следующее утверждение.
Теорема 18.3. Задача построения ОСП минимального веса, переводящей обобщенно синхронизируемый ЛА в заданное обобщенное синхросостояние , всегда может быть сведена к задаче целочисленного программирования с линейными ограничениями.
В настоящее время известен ряд методов решения задач целочисленного программирования [35], в том числе метод сечения, метод разветвленного поиска и оценки и др. Остановимся кратко на том, как может быть адаптирован последний из названных методов для исследуемой нами задачи, поскольку ее специфика позволяет такую адаптацию осуществлять эффективно.
Напомним кратко идею метода разветвленного поиска посредством разделения и оценки, относящегося к группе методов ветвей и границ, широко применяемых в целочисленном программировании
Предположим, что поставлена следующая задача:
где - некоторое конечное множество целочисленных векторов. Используя верхние оценки для координат вектора , можно с помощью известных методов [28] свести задачу к двоичной. Поэтому далее будем считать, что есть множество двоичных векторов.
Используя дискретность множества , представим его в форме некоторого разветвления. Вершине нулевого уровня, т. е. корню ветвления, соответствует все множество Для построения вершины уровня 1 выберем некоторую переменную . Этот уровень содержит две вершины, которые соответствуют следующим подмножествам : подмножество векторов для которых , и подмножество , для которых . Понятно, что эти два подмножества образуют разбиение множества . Будем говорить, что множество разделено относительно переменных . Аналогично, для построения уровня 2 выберем вторую переменную и разделим каждое из полученных на предыдущем этапе подмножеств относительно переменной . Таким образом, на уровне 2 получим четыре подмножества: подмножество векторов , для которых , подмножество векторов для которых подмножество векторов для которых , и подмножество векторов , для которых . Аналогичным образом строятся уровни , где - число переменных задач. Каждой вершине построенного дерева соответствует конкретный двоичный вектор из .
Перейдем теперь к понятию оценки. Предположим, что для каждой вершины разветвления удалось получить оценку снизу для лучшего решения из множества :
Функцию будем называть далее функцией оценки. Построим шаг за шагом, начиная с уровня 0, разветвления множества . Пусть для некоторого допустимого вектора известно значение . Предположим, что для некоторой вершины построенного разветвления имеет оценку
Следовательно, по определению множество не содержит оптимального решения задачи. Это позволяет избежать исследования всех вершин разветвления, следующего за . Используя данный принцип, можно значительно уменьшить перебор элементов допустимого множества, что весьма существенно при большом числе переменных.
Заметим, что выбор множества, которое необходимо разделить на очередном этапе, и выбор переменной для разделения в общем случае произволен. Вместе с тем осуществлять такой выбор в каждом конкретном случае необходимо с учетом специфики задачи. Для получения оценок весовой функции часто решается соответствующая непрерывная задача линейного программирования, что является достаточно трудоемким этапом. Тот факт, что при все коэффициенты, кроме свободных членов в ограничениях для , равны 0 или 1, существенно облегчает решение соответствующих задач. Этот случай часто встречается на практике, поскольку ЛА над полем является адекватной моделью различных широко распространенных на практике цифровых устройств. Ниже будет показано, что специфика конкретной задачи позволяет иногда избежать этого этапа, вычисляя функции оценки из других соображений.