Идентификация динамических автоматов

УДК 303.093.7

ИДЕНТИФИКАЦИЯ ДИНАМИЧЕСКИХ АВТОМАТОВ* В.И. Левин

Пензенская государственная технологическая академия Представлена членом редколлегии профессором Ю.Л. Муромцевым

Ключевые слова и фразы: автоматические устройства; автоматическое управление; булевы функции.

Аннотация: Рассмотрена задача идентификации логических функций, реализуемых в дискретных динамических системах (автоматах). Найдены условия существования и единственности решения задачи. Показано, что решение сводится к построению системы логических булевых функций по автоматной таблице, однозначно отображающей заданное соответствие «входные процессы - выходные процессы» дискретной системы.

1. Введение

Проблема идентификации параметров и структуры автоматических устройств - одна из главных и наиболее трудных в автоматике и управлении. Развитие автоматики во второй половине XX века характеризовалось повышением внимания к дискретным автоматическим системам, которые ввиду ряда преимуществ начинали все более широко внедряться в практику. Особенно бурно развивалась теория и практика применения логических дискретных систем автоматики. Вся научная и прикладная деятельность в этой области долгое время базировалась на основополагающих работах К.Э. Шеннона [1], В.И. Шестакова [2] и А. Нака-шимы [3], открывших в 1938-1941 гг. возможность адекватного описания статики работы логических дискретных систем с помощью булевой алгебры логики. В 1971 г. В.И. Левиным была впервые доказана возможность адекватного описания динамики работы указанных систем с помощью алгебры непрерывной логики [4]. После этого в течение короткого времени была создана обстоятельная теория динамики логических дискретных систем [5-7], позволившая эффективно решать задачи расчета и анализа динамических процессов в таких системах в аналитической форме, с помощью математического аппарата алгебры непрерывной логики [8-10]. Эта теория оказалась весьма полезной при изучении широкого класса объектов, для которых логические дискретные системы (автоматы) являются подходящими моделями их динамического поведения (системы управления, вычислительные системы, объекты с обеспечиваемой повышенной надежностью, распознающие системы, системы анализа пространственных сцен, системы обслужива-

Работа поддержана РФФИ, грант № 03-06-80268

ния, системы синхронизации, в экономике - системы обеспечения занятости населения, в социологии - процессы в социальных группах, в истории - процессы возникновения и окончания войн, кризисов и т.д. [11-13]). Однако у созданной теории отсутствовала одна существенная часть - методы идентификации динамических характеристик модели логической дискретной системы, позволяющие вычислять передаточные функции модели по известным ее входным и выходным процессам. Между тем, лишь с помощью эффективных методов идентификации динамических характеристик модели возможно практическое построение модели логической дискретной системы по измеренным входным и выходным процессам этой системы. Поэтому разработка эффективных методов идентификации динамических характеристик моделей логических дискретных систем (автоматов) оказывается важной и актуальной задачей.

2. Постановка задачи

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

Л(0 = /1 [ X1(t),..., Xn (t)] ym (t) = fm [ Xn (t)]

Xj є X, j = 1,...,n, yi є Y, i = 1,...,m, X = Y = {0,1},

в которой /1,..., /т - некоторые логические булевы функции, связывающие входные х]- (?) и выходные уг- (?) процессы системы, развивающиеся в непрерывном времени ?, но принимающие дискретные, двоичные значения (уг-, х]- е {0,1}). Функции / назовем функциями выходов системы.

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

Л(0 = /1 [ X1(t),..., Xn (t), U1(t),..., Up (t) ] ym (t) = /m [X1(t),...,Xn (t),U1(t),...,Up (t)]

U1(t + X1) = g1 [X1(t),..., Xn (t), U1(t),..., Up (t)] p (t + t p ) = gp [ X1(t),..., Xn (t), U1(t),..., Up (t) ]

Xj є X, j = 1,...,n, yi є Y,i = 1,...,m, Uk єи, к = 1,...,p, X = Y = U = {0,1}.

В (2) /1,...,/т - логические булевы функции, связывающие входные х]-(?), внутренние щ (?) и выходные у- (?) процессы, развивающиеся в непрерывном времени ?, но принимающие дискретные, двоичные значения (х]-, щ, у- е {0,1}), Т1,..., - времена задержки процессов и^),..., Ир (?) в соответствующих цепях

обратной связи. Функции /, как и выше, будем называть функциями выходов системы. Далее, в (2) £1,..., £р - логические булевы функции, связывающие предыдущие и последующие (с задержками на время хг-) значения внутренних процессов и^), ..., Ир (?). Функции назовем функциями переходов системы.

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

Задача идентификации динамических характеристик дискретных динамических систем без памяти формулируется так. Заданы входные х]- (?), ] = 1,..., п и

выходные у- (?), - = 1,..., т процессы системы. Известно, что эти процессы связаны системой уравнений (1), сформированной при помощи некоторых неизвестных передаточных функций /, - = 1,..., т (функций выходов). Требуется найти функции выходов (передаточные функции) системы /.

Аналогично формулируется задача идентификации динамических характеристик дискретных динамических систем с памятью. Заданы входные х]- (?),

У = 1,..., п и выходные у-(?), - = 1,..., т процессы системы. Известно, что эти процессы связаны системой уравнений (2а), в которой, кроме заданных, фигурируют также неизвестные внутренние процессы щ (?), к = 1,..., р , и которая сформирована с помощью некоторых неизвестных передаточных функций /, - = 1,..., т (функций выходов). Внутренние процессы Ик(?) определяются системой уравнений (2б), в которой функции переходов £к, к = 1,..., р , и задержки 1к, к = 1,..., р , известны. Требуется найти передаточные функции (функции выходов) системы /.

3. Идея решения. Метод квантования времени

Опишем возможный подход к решению задачи идентификации параметров и структуры моделей динамических автоматов. Предлагаемая идея решения этой, поставленной в п. 2, задачи проста. Она основана на методе подходящего квантования времени. Этот метод, впервые представляемый в данной статье, использует результаты теории динамического поведения дискретных динамических систем с непрерывным временем (динамических автоматов), основанной на непрерывной логике и ее обобщениях (так называемых логических определителях) и разработанной в 70-80-е гг. ХХ века В.И. Левиным [4-7]. Названная теория, помимо решения задач расчета и анализа динамических процессов в таких системах, позволяет решать и много других практически полезных задач. Самая важная из них для идентификации дискретной динамической системы - задача определения интервалов времени, в которых все входные и все выходные процессы системы имеют постоянные значения. Разбиение времени на последовательные интервалы с постоянными значениями всех входных и всех выходных процессов системы и есть нужное нам квантование времени. Оно составляет первый этап решения задачи. Содержание других этапов различается в зависимости от того, является ли изучаемая система системой с памятью или без нее.

Рассмотрим сначала произвольную дискретную динамическую систему с непрерывным временем (динамический автомат) без памяти. Она описывается системой уравнений (1). Выполним для изучаемой системы этап квантования времени, исходя из заданных входных х^/), ..., хп (/) и выходных у^/),..., ут (/) процессов. В результате ось времени окажется разбитой на последовательные временные интервалы, в каждом из которых все входные и все выходные процессы сохраняют постоянные значения. Выберем какой-нибудь конкретный интервал. Согласно сказанному, этот интервал характеризуется набором постоянных входных сигналов системы (х1,..., хп) и соответствующим ему набором постоянных выходных сигналов (у1,..., ут). Просмотрев все временные интервалы, получим автоматную таблицу (табл. 1).

По табл. 1, используя хорошо известные методы алгебры логики [12], можно при определенных условиях найти функции выходов (передаточные функции) изучаемой системы уг = /(х^ ..., хп), г = 1,..., т , т.е. решить задачу идентификации этой системы. Смысл условий, при которых это можно сделать, состоит в том, что количество непротиворечивой информации об идентифицируемой системе должно быть достаточным. Математическая форма этих условий устанавливается с помощью тех же методов алгебры логики; она выражается в требовании непротиворечивости строк автоматной таблицы и определенном числе ее неповторяющихся строк (см. п. 4). Рассмотрим теперь произвольную дискретную динамическую систему с непрерывным временем (динамический автомат) с памятью. Она описывается системой уравнений (2).

Рассмотрим отдельно составляющие систему (2) подсистемы (2а) и (2б). Подсистема (2б) есть система уравнений, в которой известны функции gk, к = 1,..., р (функции переходов) и процессы ху (/), ] = 1,..., п (входные процессы), а неизвестны процессы щ(/), к = 1,..., р (внутренние процессы). Предположим, что мы можем найти тем или иным методом решение системы (2б) относительно неизвестных процессов Ык (/). Тогда найденные процессы щ (/) подставляем в систему уравнений (2а). В результате получаем систему уравнений, связывающую известные процессы х^/),..., хп(/), Ы1(/),..., Ыр (/) с известными

процессами у1 (/),..., ут (/) с помощью неизвестных функций выходов (передаточных функций) системы /1,..., /т , которые надлежит определить. Сопоставив полученную конкретизированную систему уравнений (2а) с системой уравнений (1), описывающей поведение произвольной дискретной динамической системы непрерывного времени без памяти, видим, что первая описывает некоторую дискретную динамическую систему непрерывного времени без памяти с известными

Таблица 1

x .У

x1 xn У1 Ут

0 0 0 1

0 1 1 0

1 0 0 1

входными х1(/), ..., хп (/), Ы1(/), ..., Ыр (/) и выходными у1 (/),..., ут (/) процессами и неизвестными функциями выходов (передаточными функциями) /1,..., /т. Применив к этой дискретной динамической системе метод идентификации систем без памяти, изложенный выше, найдем функции выходов (передаточные функции) изучаемой системы уг = /(х1,..., хп, Ы1,..., Ыр), г = 1,..., т. Тем самым получим решение задачи идентификации заданной дискретной динамической системы непрерывного времени с памятью.

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

4. Условия существования решения задачи идентификации

Рассмотрим автоматную таблицу произвольной дискретной системы непрерывного времени (динамического автомата) без памяти (см. табл. 1), полученную путем квантования времени, исходя из заданных входных х^/),..., хп (/) и выходных у1 (/),..., ут (/) процессов системы (см. п. 3). Будем говорить, что задача

идентификации этой системы имеет решение, если на основании ее автоматной

таблицы можно определить логические булевы функции /1, ..., /т (1), связывающие входные х1(/), ..., хп (/) и выходные у1 (/),..., ут (/) процессы этой системы. Назовем две строки автоматной таблицы (х{, ..., хп, у1,..., ут) и (х{ ,..., х'п,

п // \ / /

у1 ,..., ут) противоречивыми, если входящие в них конкретные реализации х , у , х", у" векторов х = (х1,..., хп ) и у = (у1,..., ут) находятся в отношении

/ » / , » /0Х

х = х , у ф у .

В противном случае, т.е. при

/ // Г № Г №

х ф х или х = х , у = у ,

указанные строки назовем непротиворечивыми (первого рода, если х ф х , и второго рода, если х' = х" ). Обозначим общее число строк в автоматной таблице N, число попарно непротиворечивых строк первого рода - М .

Теорема 1. Для того чтобы задача идентификации дискретной системы с непрерывным временем без памяти имела единственное решение, необходимо и достаточно, чтобы ее автоматная таблица, полученная путем квантования времени по заданным входным и выходным процессам системы, не имела противоречивых строк, а число М попарно непротиворечивых строк первого рода в ней было равно

М = 2п

Доказательство. Достаточность. Пусть выполнены условия теоремы. Тогда все строки автоматной таблицы (см. табл. 1) нашей системы являются попарно непротиворечивыми строками первого или второго рода. Рассмотрим подмножество всех попарно непротиворечивых строк второго рода (х, у) с равными фиксированными значениями вектора х и вектора у . Все эти строки равны между собой.

Поэтому в автоматной таблице системы можно оставить только одну из них, не потеряв при этом информации. Проделав ту же операцию со всеми другими подмножествами попарно непротиворечивых строк второго рода (х, у), соответствующими другим фиксированным значениям векторов х и у, получим в итоге сокращенную автоматную таблицу системы. В этой таблице отсутствуют попарно непротиворечивые строки второго рода, а число оставшихся попарно непротиворечивых строк первого рода, согласно (5), равно 2п . Итак, полученная сокращенная автоматная таблица системы содержит 2п строк вида (х, у), где х = (х1,..., хп), у = (у1,..., ут), таких, что различные строки имеют различные значения вектора х. Это значит, что совокупность строк автоматной таблицы

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

У1 = ЖхЪ ..- хп X.-Ут = /т

По этой таблице с помощью хорошо известных методов [12] можно однозначно определить функции /1,...,/т в (6). А это означает, что при выполнении условий теоремы можно найти единственные передаточные функции /1,..., /т , связывающие входные хг- (?) и выходные у (?) процессы дискретной системы с непрерывным временем без памяти, описываемой моделью (1), т.е. найти единственное решение задачи идентификации этой системы. Что и требовалось доказать.

Необходимость. Пусть задача идентификации нашей дискретной системы с непрерывным временем без памяти, описываемой моделью (1), при заданных входных х]- (/) и выходных у- (?) процессах системы, имеет единственное решение в виде некоторого набора передаточных функций системы /1,..., /т . Этому набору взаимно однозначно соответствует таблица истинности (табл. 2), в которой имеется 2п различных наборов аргументов х1,..., хп и соответствующих значений у1,..., ут функций (6). Сравним с табл. 2 автоматную таблицу рассматриваемой системы (см. табл. 1), полученную путем квантования времени по заданным входным х^/),..., хп(?) и выходным у1 (?),..., ут (?) процессам. Обе таблицы определяют одну и ту же систему логических булевых функций (6) - передаточ-

Т аблица 2

x y

x1 xn У1 Ут

0 0 0 1

0 1 1 0

1 1 0 1

ных функций нашей системы - и потому должны быть эквивалентны. Но в табл. 2 содержатся все 2п возможных наборов аргументов х1,..., хп и соответствующих им наборов у1,..., ут значений функций (6). Поэтому для указанной эквивалентности таблиц табл. 1 должна содержать все 2п строк табл. 2 и, возможно, некоторое число дополнительных строк, совпадающих с отдельными строками табл. 2. Ясно, что такая табл. 1 (т.е. автоматная таблица рассматриваемой системы) не содержит пар строк (х,у) с равными х и неравными у, т.е. противоречивых строк. Кроме того, число строк (х, у) с неравными х, т.е. непротиворечивых

строк первого рода, составляет в ней 2п. Т аким образом, если задача идентификации заданной дискретной системы с непрерывным временем имеет единственное решение, то выполнены условия теоремы. Что и требовалось доказать.

Примечание. Если число строк M , фигурирующее в теореме 1, удовлетворяет условию M < 2п , то однозначного решения задачи идентификации системы не существует. В этом случае для получения однозначного решения необходимо пополнить автоматную таблицу дискретной системы 2п - M новыми строками того же рода.

5. Алгоритм идентификации

Содержание пп. 3 и 4 определяет следующий алгоритм решения задачи идентификации произвольной дискретной системы с непрерывным временем (динамического автомата) без памяти.

Шаг 1. Считаем заданными входные х, (?), I = 1, п и выходные у. (?), ] = 1, т процессы системы, которые записываем в виде

х, (?) = 1(%,Ь,1)0(-,-)1(а,2,Ьг7)...1(ац,Ъщ), I = 1,п,

у} (?) = 1(сд, йд)0(-, -)1(С] 2, ё]2)...1(с]Ч], ]), ] = 1, т.

Здесь 1(а, Ъ) - единичный сигнал (импульс) в интервале времени (а, Ъ), а 0(-, -) - нулевой сигнал (пауза) в промежутке между двумя соседними единичными сигналами (импульсами).

Шаг 2. Из уравнений (1) следует, что выходные процессы системы без памяти у] (?), ] = 1, т могут изменяться только в моменты изменения входных процессов х, (?), , = 1, п . Поэтому необходимую нам операцию квантования времени в изучаемой дискретной системе, т.е. определение последовательных интервалов времени с постоянными значениями всех входных и выходных процессов системы в каждом интервале, мы заменим аналогичной, но более простой операцией квантования времени на входах этой системы, т.е. определения последовательных интервалов времени с постоянными значениями всех входных процессов системы в каждом интервале.

Шаг 3. Упорядочение множества

А = {а11, Ъ11,..., а1^1 , Ъ1^1 ,..., ап1, Ъп1,..., апяп , Ъпяп }

моментов изменения сигнала в совокупности входных процессов системы х1(?),..., хп(?), с получением в результате упорядоченного по возрастанию множества моментов

{а(1), а(2),а(2М>}, а(1) < а(2) < ... < а(2М\

П

где N = ^ 5г- есть суммарное число импульсов во всех п входных процессах

г=1

системы. Множество А можно представить в виде квазиматрицы [6, 7]

a11 b11 % b1sj

an1 bn1 ab unSn nsn

элементы в строках которой упорядочены слева направо по возрастанию. Это позволяет выполнять процедуру упорядочения путем выделения (с помощью попарных сравнений) минимального элемента первого столбца А , что дает а(1), затем выделения минимального элемента первого столбца А \ а(1), что дает а(2) и т.д., вплоть до а(2№).

Шаг 4. Квантование времени на входах системы путем разбиения оси времени на 2 N +1 последовательных интервалов

с постоянными значениями всех входных процессов системы (а, следовательно, коль скоро наша система без памяти, и ее выходных процессов) в каждом интервале.

Шаг 5. Для каждого временного интервала, найденного на шаге 4, по заданным входным процессам системы х, (/), I = 1, п, вычисляем действующий на этом интервале набор (х1,..., хп) постоянных входных сигналов, а по заданным выходным процессам системы у]- (/), ] = 1, т - действующий на этом интервале набор

(У1,..., ут) постоянных выходных сигналов.

Шаг 6. Результаты расчетов, выполненных на шаге 5 для всех временных интервалов, соединяем в автоматную таблицу изучаемой дискретной системы с непрерывным временем (см. табл. 1).

Шаг 7. Проверка условий существования и единственности решения задачи идентификации системы в соответствии с теоремой 1. Именно, в построенной на шаге 6 автоматной таблице выделяем все попарно противоречивые строки, а также попарно непротиворечивые строки первого и второго рода. Если имеются попарно противоречивые строки, то решения задачи не существует. Конец процедуры. Если таких строк нет, а число попарно непротиворечивых строк М < 2п , однозначного решения задачи не существует. Если попарно противоречивых строк

нет и М = 2п, существует однозначное решение задачи. Переход к шагу 8.

Шаг 8. По автоматной таблице системы (см. табл. 1), рассматривая ее как таблицу истинности, определяющую т логических булевых функций fj от п

переменных вида (1) (функций выхода системы), и используя известные методы алгебры логики [12], найдем все искомые функции ^,..., ^ . Конец решения задачи.

Трудоемкость изложенного алгоритма составляет 2(п -1)N операций сравнения на шаге 3 и (2N + 1)(2N + п)(2Р + т) операций сравнения на шаге 5. Значе-

т

ния п, т, N определены выше, параметр Р = ^ qj есть суммарное число им] =1

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

6. Заключение

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

Список литературы

1. Шеннон, К. Работы по теории информации и кибернетике / К. Шеннон. -М. : Изд-во иностр. лит., 1963. - 836 с.

2. Шестаков, В.И. Алгебра двухполюсных схем, построенных исключительно из двухполюсников (алгебра А-схем) / В.И. Шестаков // Журн. технич. физики. -1941. - Т. 11, № 2. - С. 532-549.

3. Nakashima, A., Hanzawa M. The Theory of Equivalent Transformation of Simple Partial Paths in the Relay Circuit // Nippon Electr. Communic. Eng. - 1938. -№ 9. - P. 32-39.

4. Левин, В.И. Бесконечнозначная логика и переходные процессы в конечных автоматах / В.И. Левин // Автоматика и вычисл. техника. - 1972. - № 6. -С. 1-9.

5. Левин, В.И. Введение в динамическую теорию конечных автоматов / В.И. Левин. - Рига : Зинатне, 1975. - 376 с.

6. Левин, В.И. Динамика логических устройств и систем / В.И. Левин. - М. : Энергия, 1980. - 224 с.

7. Левин, В.И. Теория динамических автоматов / В.И. Левин. - Пенза : Изд-во Пенз. гос. техн. ун-та, 1995. - 408 с.

8. Левин, В. И. Бесконечнозначная логика в задачах кибернетики / В. И. Левин. - М. : Радио и связь, 1982. - 176 с.

9. Левин, В.И. Непрерывная логика. Ее обобщения и применения / В.И. Левин // Автоматика и телемеханика. - 1990. - № 8. - С. 3-22 ; № 9. - С. 3-26.

10. Levin, V.I. Continuous Logic. Parts I, II / V.I. Levin // Kybernetes. The Intern. Journal of Systems and Cybernetics. - 2000. - Vol. 29, № 9. - P. 1234-1249 ; № 10. -P. 1250-1263.

11. Рогинский, В.Н. Основы дискретной автоматики / В.Н. Рогинский. - М. : Связь, 1975. - 432 с.

12. Захаров, В.Н. Системы управления. Задание, проектирование, реализация /

B.Н. Захаров, Д.А. Поспелов, В.Е. Хазацкий. - М. : Энергия, 1977. - 424 с.

13. Левин, В.И. Математическое моделирование систем с помощью динамических автоматов / В.И. Левин // Информационные технологии. - 1997. - № 9. -

C. 15-26.

Identification of Dynamic Automats V.I. Levin

Department Penza State Technological Academy

Key words and phrases: automated control; automated devices; Boolean functions.

Abstract: The task of identification of logic functions realized in discrete dynamic systems (automats) is considered. The conditions of existence and uniqueness of the solution to the task are found. It is shown, that the solution is based on the construction of the system of logical Boolean functions by automat table, showing the given correlation «input processes - output processes» of the discrete system.

Identifizierung der dynamischen Automate

Zusammenfassung: Es ist die Aufgabe der Identifizierung der logischen Funktionen, die in den diskreten dynamischen Systemen (Automaten) realisierbar werden, untersucht. Es sind die Bedingungen der Existenz und der Einzigkeit des Beschlusses der Aufgabe gefunden. Es ist aufgezeigt, dass der Beschluss auf die Konstruktion des Systems der logischen Booleschfunktionen nach der Automattabelle, die die aufgegebene Ubereinstimmung «Eingangsprozesse - Abgabeprozesse» des diskreten Systems eindeutig darstellt, zuruckgefuhrt wird.

Identification des automates dynamiques

Resume: Est examine le probleme de l’identification des fonctions logiques realisees dans les systemes dynamiques discrets (automates). Sont trouvees les conditions de l’existence et de l’unicite de la sоlution du probleme. Est montre que la solution aboutit a la construction du systeme des fonctions logiques booleennes d’apres le tableau d’automate qui montre sans ambiguite la conformite donnee «processus d’entree - processus de sortie» du systeme discret.