УДК 517.977
АЛГОРИТМЫ ПОСТРОЕНИЯ ИНФОРМАЦИОННЫХ МНОЖЕСТВ ДЛЯ РЕАЛИЗАЦИИ МИНИМАКСНОГО ФИЛЬТРА
М.В. Уханов, ВМ. Ширяев
Статья посвящена разработке алгоритмов построения информационных множеств, заданных системами линейных неравенств, для нахождения в темпе реального времени минимаксной оценки состояния линейной динамической системы в условиях неопределенности возмущений.
Введение
Задача оценивания состояния динамических систем при наличии неопределенных, но ограниченных мешающих факторов, занимает важное место в теории идентификации. Начиная с пионерской работы Б.С. ЯсЬшерре [1], этой задаче посвящается все возрастающее количество исследований, включая фундаментальные работы А.Б. Куржанского [2] и Ф.Л. Черноусько [3].
Первоначально выдвинутая ¥.С. 8с11\¥ерре идея оценивания заключалась в построении компактного множества, гарантированно включающего оцениваемое состояние динамической системы. В качестве такого множества предлагалось использовать многомерный эллипсоид. Преимущество такого выбора состояло в том, что вычислительная сложность соответствующих алгоритмов оценивания не зависела от числа наблюдений (например, см. [4]). В работе [5] Г.М. Бакан предложил использовать метод динамического программирования для эллипсоидального оценивания.
Исследовались и другие варианты оценивающих множеств. Так, исходя из требований повышения точности оценивания, в [6] было предложено использовать многогранники, заданные своими вершинами. В работе М.М. Лычака [7] многогранник задан методом двойного описания (вершинами и гранями). Учитывая, что при больших объемах измерительной информации число вершин многогранников может значительно возрастать, что соответственно увеличивает вычислительные затраты, в [8] Е.К. Костоусовой был приведен вариант аппроксимации оценивающих множеств параллелотопами.
При реализации минимаксного фильтра на ЭВМ основную трудность представляет выполнение операций над множествами в темпе реального времени. Необходим компромисс между объемом данных для описания аппроксимации (объемом памяти ЭВМ), скоростью выполнения преобразований (временем выполнения на ЭВМ) с одной стороны и точностью построения аппроксимации (погрешностью вычислений) с другой. Более точные аппроксимации требуют больших вычислительных ресурсов и, следовательно, больше времени на выполнение операций.
Чем больше вычислительные мощности, тем с более сложной структурой оценок в виде многогранников можно работать, — и тогда тем меньшая степень загрубления используется. В алгоритме эллипсоидальных оценок величина загрубления не зависит от мощности вычислителя.
Вычислительная техника постоянно совершенствуется, что дает возможность решать все более трудоемкие задачи и, следовательно, позволяет сдвинуть компромисс между простотой и точностью в сторону точности. Поэтому в настоящей работе, развивающей идеи оценивания с использованием многогранников [9-11], информационные множества аппроксимированы системами линейных неравенств (гранями многогранников). А именно, рассмагривается задача построения аппроксимации информационного множества в виде системы линейных неравенств. Такой выбор класса и способа задания аппроксимирующих областей по сравнению с представлением вершинами дает экономию памяти, а по сравнению с эллипсоидами - повышает точность. Когда множества заданы вершинами, алгоритмы преобразования информационных множеств получены И.С. Панченко [10]. При задании информационных множеств эллипсоидами результаты были получены Ф.Л. Черноусько [3], Г.М. Баканом [4, 5] и др.
1, Постановка задачи
Рассматривается задача теоретико-множественного оценивания состояния наблюдаемой линейной дискретной динамической системы, действующей в условиях неопределенности, в которой объект описывается линейным разностным уравнением
хш =Акхк+Щ> & = 0,1,...,ЛГ-1. (1)
Состояние системы на £-ом шаге характеризуется вектором состояния хк е Ж2. Известные матрицы перехода состояний системы Ак е Шпхп являются обратимыми.
В каждый дискретный момент времени состояние наблюдается по результатам зашумлен -ных измерений, описываемых уравнением
Ук=скхк+Ъ* * = (2)
Здесь ук е У1т - вектор измерения; Ок е - матрица измерений.
На начальное состояние х0 и неопределенные воздействия щ е У\т наложены
ограничения
х0еХ0; * = ук*Ук9 к = 1.....ЛГ, (3)
где Х0,1¥к,Ук- заданные выпуклые компакты в соответствующих пространствах. Таким образом, информация о неопределенных возмущениях и начальном состоянии исчерпывается заданием выпуклых компактов.
Определение 1. Множеством достижимости Хк системы (1) называется множество всех точек хк е${п, в которые эту систему можно перевести из Х0 за к шагов.
Определение 2. Информационным множеством Хк состояния системы (1) при наличии измерений называется множество таких точек из множества достижимости Хк, которые по уравнениям (2) совместимы с измерениями при выполнении ограничений (3).
Информационное множество характеризует неопределенность знания вектора состояния на основе полученных данных наблюдений.
Многошаговая задача гарантированного оценивания текущего состояния системы (1)-{3) состоит в построении последовательности информационных множеств Хк+] по рекуррентным соотношениям, полученным И.Я. Кацом и А.Б. Куржанским [12]
Хк+\!к ~ АХк
Х[ук+1] = {х е Кп\уш = вмх + V, V € Ум}9 (4)
Хк+1 "Хк+Мк
Здесь Хк+}/к — множество прогнозов состояния системы на к +1 шаге (или, по-другому, область достижимости системы за один шаг). Х[ук+] ] множество состояний, совместимых с измерением ук+}.
Таким образом, задача гарантированного оценивания состоит в нахождении информационных множеств или их аппроксимаций.
Задача минимаксной фильтрации состоит в нахождении по известной реализации измерений
Ук(') = {У\>--->Ук} для каждого к >1 оценки хк> удовлетворяющей условию (минимум ошибки в наихудшем случае)
8*к - шах
х&Хк
Таким образом, по постановке задачи нам надлежит найти чебышевский центр информационного множества Хк (5к - чебышевский радиус множества Хк).
Для реализации на ЭВМ минимаксного фильтра системы (1)~(3) по уравнениям (4}-(5) необходимо выполнить следующие шаги:
1) выбрать класс областей и способ их задания для аппроксимации информационных множеств;
2) построить алгоритмы преобразования этих областей (операции сложения, пересечения и линейного преобразования) с хорошими временными и точностными характеристиками;
3) найти минимаксную точечную оценку хк состояния системы по множественной оценке.
= тттахЬ-с . (5)
С€д» хеХк М 11
2. Алгоритм построения суммы многогранников в задачах минимаксной фильтрации
Определение 3. Суммой по Минковскому [13, с. 76] двух множеств Рх и Р2 из я-мерного
евклидового пространства 9?и называется множество Р такое, что
р = Рх + Р2 = {х е 9Г \х = ху + х2,х{ е Ри х2 е Р2}.
Будем рассматривать случай, когда суммируемые множества заданы системами линейных неравенств (многогранниками)
Р1={х1еМп\А1х1<Ь[94е91т{Х\ЬуеШт1}9 Р2 = {х2 е 9Г | А2х2 <Ь2,А2с 9Г2Х", 62 е 9Г2}. Необходимо получить сумму Р многогранников Рх и Р2 также в виде системы линейных неравенств
Сумма по Минковскому имеет большое значение для геометрии многогранников [14], потому что применение этой операции к двум многогранникам вновь приводит к многограннику (в отличие от эллипсоидов, относительно суммы класс многогранников замкнут).
Построение суммы многогранников является самой трудоемкой по времени вычисления операцией при решении задачи минимаксной фильтрации состояния динамической системы [6, 9]. В случае, когда множества заданы эллипсоидами, алгоритм построения множеств, которые являются оценками сверху и снизу суммы, разработан ФЛ. Черноусько [3].
В настоящей работе разработаны алгоритмы построения внешней и внутренней аппроксимации суммы в виде системы линейных неравенств.
Нахождение оценки снизу (алгоритм последовательных приближений). Учитывая, что суммируемые множества заданы системами линейных неравенств, из определения суммы получаем систему линейных неравенств и равенств относительно переменных х е 91", х] еШп и х2 е 9?"
X
Ах\
•х-
0; К
< ъ2.
<
(6)
Заменяем в системе (6) хг е на разность (х - х2) и получаем эквивалентную ей систему относительно переменных х и х2
Введем обозначения
А}х
-V
'Ах2
А2х2 ^
< V,
ьг.
0 А
, О,
2 )
-А
V А2 ]
/г \
\Ъ2 У
Матрица С имеет размер (т{ + т2) х 2п ; матрица 02 - Ц+т2)хп; вектор § - т, + т2, где т] и т2 - количество граней в многогранниках Рх и Р2. Запишем в матричной форме
Ахх + С2х2 (7)
Описание суммы Р в виде системы линейных неравенств может быть получено путем исключения п компонент вектора х2 из системы (7). Таким образом, способ задания множества его
гранями (системой линейных неравенств) позволил заменить задачу построения суммы в 9?" на задачу построения ортогональной проекции многогранника из 912" в 91".
Исключение компонент вектора х2 из системы (7) можно выполнить методом фундаментального сокращенного свертывания Н.Б. Черниковой [15]. При решении задачи минимаксной или гарантированной фильтрации важно получить информационное множество к заданному времени. Существенным недостатком методов свертывания является то, что в том случае, когда
процесс свертывания не удается провести до конца, затраченные усилия не приводят даже к построению оценки информационного множества.
Наиболее приемлем для исключения вектора х2 из системы (7) итерационный алгоритм последовательных приближений (АПП) для построения ортогональной проекции многогранника В.А. Бушенкова [16]. Опишем алгоритм [16] применительно к задаче построения суммы многогранников.
Шаг 1. Пусть задано неотрицательное число е(Р), характеризующее требуемую точность описания суммы. Решим на системе ограничений (7) ряд задач линейного программирования. Причем, минимальное число таких задач — п + \ (тогда можно получить выпуклый многогранник ненулевого объема). Это могут быть, например, задачи максимизации и минимизации по каждой координате вектора хеШп. Проекции решений этих задач в пространство переменных х образуют множество V0 = . При проецировании возможно получение одинаковых вершин V, = / Ф 7 . В этом случае решить еще ряд задач линейного программирования.
Шаг 2. Построим описание выпуклой оболочки Н° векторов из V0 в виде системы линейных неравенств. В том случае, когда число векторов в V0 равно п +1, легко построить выпуклую оболочку. Для этого отбрасываем одну точку и проводим гиперплоскость через п точек. Далее определяем знак неравенства, подставляя отброшенную точку. И так п раз. Положим индекс к равным нулю.
Шаг 3. Для всех неравенств системы
(с*,= 1,2,...,^, (8)
описывающей Нк , вычислим значения сдвигов
где (х\х*2)~ решение задачи линейного программирования
(ск,х) + (0,х2)~^ max при ограничения (7). (9)
Если неравенство было перенесено в систему из системы (8), описывающей Нк~], и значение сдвига для него известно, то повторно находить это значение не требуется. Для неравенств с ненулевыми значениями сдвигов запомним проекции решений задач (9) в пространство переменных х.
Шаг 4. Величина Н(Нк,Р)-ртах = шах/?,*,/ = 1,2,...,qk характеризует достигнутую точность построения суммы. Если Н(Нк 9P)<s{P), то нижней оценкой суммы будет Нк и работа алгоритма заканчивается. Получаем описание суммы в виде системы линейных неравенств Сх < d. В противном случае вычисления продолжаются.
Шаг 5. Выберем из (8) неравенство с максимальным значением сдвига. Добавим к Vk проекцию решения задачи (9), соответствующую выбранному неравенству, и получим совокупность Vм .
Шаг 6. Найти выпуклую оболочку Ны совокупности векторов Vм в виде системы линейных неравенств. Увеличим значение к на единицу и вернемся к шагу 3 для выполнения следующей итерации алгоритма.
При решении задачи минимаксной или гарантированной фильтрации необходимо получить оценку информационного множества за какое-то определенное время (часто весьма ограниченное). Выполнение АПП можно прервать в любое время (если выполнена хотя бы одна итерация
алгоритма). При этом будет известна внутренняя аппроксимация суммы Нк с минимальным числом вершин при заданной точности s{P), Если ограничений по времени нет, то за конечное число шагов при s(P) = О АШТ строит точную сумму многогранников, причем, для ее нахождения необходимо найти все ее вершины.
Замечание 7. Скорость построения суммы АПП зависит от двух факторов: размерности п пространства и количества неравенств системы (7). От первого фактора зависит число итераций алгоритма, необходимых для достижения заданной точности описания суммы, и объем исполь-
зуемой памяти. От второго фактора зависит время решения вспомогательных задач линейного программирования.
Л'
Замечание 2. Если необходимо построить сумму , то матрица С будет иметь спе-
циальный вид
А, ~А -А - -лЛ
0 0 ... о
0 0 А3 ... 0
0 0 0 о 4,
то есть, это блочно-диагональная матрица. В этом случае решение задачи линейного программирования можно значительно ускорить, если применять методы разложения.
Замечание 3. При достаточно большой размерности п число вершин для аппроксимации
(количество элементов множества Ук) должно быть весьма большим. Например, гиперкуб в Я]0 имеет 1024 вершины и требует хранения 10240 вещественных чисел в оперативной памяти.
Замечание 4. Основной операцией в АПП является решение задачи линейного программирования. От количества решенных задач линейного программирования в конечном итоге зависит точность алгоритма. Причем, задачи линейного программирования могут решаться независимо друг от друга, то есть алгоритм допускает распараллеливание.
Точность построения суммы алгоритмом последовательных приближений. Расстоянием
по Хаусдорфу [3, с. 21] между двумя множествами А, В е 91" называется величина
Н(А,В) = ттг: г>0, + Щ В с= А + 5Г (0), где £Д0) - шар радиуса г с центром в 0. Каждая точка многогранника Нк находится на расстоянии 0 от некоторой точки многогранника Р (так как Нк с Р), и каждая точка многогранника Р находится не далее, чем на расстоянии Н(Нк ,Р) от некоторой точки многогранника Нк . Таким образом, Н(Нк 9Р) есть расстояние по Хаусдорфу между оценкой снизу Нк и точной суммой Р.
Мерой величины множества А является максимальное расстояние между двумя его произвольными точками, называемое диаметром множества (обозначается Вгат{А)) [17]. При решении практических задач необходимо задать точность построения суммы для случая, когда В1ат(Р) = 1. Чем больше диаметр результата суммирования, тем больше возможно отклонение оценки суммы снизу от точной суммы. Поэтому точность построения суммы любого диаметра задается выражением £(Р) = Огат{Р)€х. В случае, когда суммируемые множества известны с точностью ¿"(/5) и £-(Р2), то следует задавать
£{Р) - тах{В1ат(Р)£х, е(Р[) + е(Р2)}.
В п -мерном пространстве диаметр множества из N точек всегда можно определить за время 0(пМ2), вычисляя расстояние между каждой парой точек. В качестве оценки диаметра многогранника Р можно взять диаметр многогранника Н , при этом Пгат(Р) < Огат{Нк ) + 2Н(Нк, Р) .
Диаметр множества Нк легко найти, поскольку известны все его вершины (количество вершин п + к +1 не велико, так как строится внутренняя аппроксимация суммы с минимальным числом вершин). Если известны диаметры многогранников Рх и Р2, то в качестве приближенной оценки Вгат(Р) можно использовать сумму диаметров
Огат(Рх) + Вгат(Р2) > В1ат(Рх + Р2) = Шат(Р) .
Пример 1. Для иллюстрации работы АПП достаточно рассмотреть суммирование двух многогранников и Р2 в 9?2 (рис. 1). Пусть /; задан системой
Х\ Х2
и Д системой
2х1
2х, ~ь х^
•Хл
£ 1; * 3;
£ 1;
<
< < <
Решая задачи линейного программирования на максимум и минимум вдоль координатных осей, на первом шаге алгоритма находим координаты вершин ^ = (-5,-1), =(6.33,0.33),
v3 =(0,-11). Далее находим начальное приближение снизу к сумме - выпуклую оболочку Н°
векторов При этом достигнутая точность будет ртах =6.54, а диаметр построенного
множества В1ат(Н°) = 12.98. Находим последовательно грани с максимальными величинами
сдвига (рис. 2) и последовательно добавляем соответствующие вершины в описание оценки суммы (вершины пронумерованы в порядке их включения в описание суммы)
=(-1.5,6), ртах =2.93, Шат(Н1) = 17.06;
(3-5,6),
(6.33,-4.67),
(-5,-6),
Ртах = 2АЗ Дпах = 2-23 Ртах = 0 >
П1ат(Н2) = 17.36; /)шт(#3)-17.36; Шат(Н4) = 17.36.
После добавления вершины у7 и построения выпуклой оболочки задача суммирования решена точно, так как р1ШХ = 0 . Для построения точной суммы пришлось решить 7 задач линейного программирования (одну для каждой вершины суммы).
Х-
Рис. 1. Точная сумма многогранников в Ш
Рис. 2. Построение АПП точной суммы многогранников в
Найденная сумма описывается системой
Р = Н* =
-0.89*, 0.45*2 < 4.02;
< 6.00;
0.89*, 0.45*2 < 5.81;
0.71*, -0.71*2 < 7.78;
*, < 6.33;
-0.71*, -0.71*2 < 7.78;
< 5.00.
Нахождение оценки сверху (алгоритм сдвига граней). При решении задачи гарантированного оценивания необходимо получить оценку сверху информационного множества. Следовательно, алгоритм суммирования должен строить аппроксимацию сверху. В задаче же минимаксной фильтрации находится точечная оценка и не важно из какой множественной оценки
(сверху или снизу) она получена. Поэтому оценка Нк с расстоянием по Хаусдорфу не больше £(Р) достаточна для алгоритмов минимаксной фильтрации.
Пусть АПП построена Нк - нижняя оценка суммы. Тогда, Р - оценка суммы сверху, задается системой линейных неравенств
р,
или, используя определение для р1 , получаем описание многогранника Р
(с,\*)<(с,*,/).
В результате такого сдвига граней многогранника Нк сдвигаются и вершины. Если сдвинутые грани образуют вершину «-го гиперкуба в 9?", то точность построения верхней оценки будет удовлетворять неравенству
н(р,р)<4пн(нк,р).
В случае появления острых углов в вершинах верхняя оценка Р может сколь угодно сильно (в смысле хаусдорфова расстояния) отличаться от точной суммы.
Пример 2. Если задать точность £(Р) = 0.25 в примере 1, то две вершины суммы не будут
найдены (рис. 3). Тогда расстояние по Хаусдорфу Н(Р,Р) = 334 .
Рис. 3. Построение верхней оценки Р суммы по нижней Hk
Оценку Р суммы сверху можно получить, не выполняя трудоемкую операцию построения
выпуклой оболочки, то есть не строя оценку Нк суммы снизу. Что приводит к алгоритму сдвига граней (АСГ) для нахождения суммы.
В ACT используется тот факт, что сумма двух многогранников может быть аппроксимирована сверху пересечением исходных многогранников с передвинутыми гранями (рис. 4). Для построения суммы нужно найти сдвиги граней (например, симплекс-методом) обоих многогранников. Решаем задачи линейного программирования с\ = тах(я[,х) при ограничениях А2х<Ь2, где а\ - /-ая строка матрицы А} (i - l;/w, ). Получаем с\ - /-ую компоненту вектора с, е91"'1 . Далее решаем задачи линейного программирования с\ — тах(а{,х) при ограничениях А^х < Л,. где а{ -/-ая строка матрицы А2 (у = 1;/г/9 ). Получаем с2 - /-ую компоненту вектора с2 е SJ?W:. Всего необходимо решить w, + т2 задач линейного программирования. Тогда сумма будет описываться системой
Ахх<Ъх +сх; А2х<Ь2 +С2.
(10)
Рис. 4. Сумма квадрата и треугольника
Исключаем из многогранника описываемого системой (10) параллельные грани.
АСГ использует только грани многогранников и не хранит информацию о вершинах суммы. Построенные алгоритмы (АПП и АСГ) обладают свойством коммутативности: при перестановке многогранников Рх н Р2 результирующий многогранник не меняется. Однако ассоциативность АПП при £(Р) > 0 не имеет
места, то есть при сложении более двух многогранников внутренняя аппроксимация суммы в общем случае зависит от порядка выполнения сложения. АСГ обладает свойством ассоциативности.
АСГ строит аппроксимацию сверху суммы в 9?" (рис. 5). Рассмотрим случаи, когда АСГ строит точную сумму, то есть когда в сумме не возникают грани с новыми направлениями, кроме тех, которые есть в исходных многогранниках. Для этого докажем следующие теоремы.
Теорема 1. Алгоритм сдвига граней обеспечивает точное построение суммы многогранников
в 9?2.
Доказательство. Справедливость теоремы следует из того, что сумму многогранников в Ш можно получить, передвигая Рх вдоль граней Р2. Теорема не верна уже для 5Н3, так как для получения граней суммы нужно передвигать Рх еще и вдоль ребер Р2 (ребро задается сочетанием граней Р2).
Теорема 2. Алгоритм сдвига граней строит точную сумму многогранников Рх и Р2, если многогранник Рх представим в виде =Р2 +7, где произвольный многогранник. Причем, для построения суммы необходимо найти сдвиги граней многогранника Р] относительно Р2.
Доказательство. Покажем, что задача построения точной суммы Рх+ Р2 эквивалентна задаче сдвига граней многогранника относительно Р2, то есть сумма Рх + Р2 содержит грани с теми же направлениями что и многогранник Рх. Для суммы по Минковскому справедливы свойства коммутативности и ассоциативности, поэтому получаем
рх + р2 =(р2 + 2) + р2 ^{2 + р2) + р2 - г + (р2 + р2).
(И)
Сумма двух равных многогранников Р2 - {х2 е 9Г \А2х2 <Ь2,А2£ Ъ2 е Ш™2} описыва-
ется системой Р - Р2 + Р2 - 2Р2 = {х е 5ИЛ\А2х < 1Ъ2, А2 е ЗГ2*", Ъ2 е 9Г2} . Пусть щ - количество граней в , а т2 - количество граней в Р2. Тогда количество граней в многограннике Р2 + Р2 равно т2 и их направления такие же, как и у многогранника Р2. Суммы 2 + Рг и 2 + (Р2 + Р2) отличаются только столбцом свободных членов второго слагаемого. Операцию суммирования можно свести к операции исключения переменных из системы линейных неравенств. Формирование направлений неравенств свертки и их количество полностью зависит от матрицы системы и не зависит от столбца свободных членов. Следовательно, количество и направление граней суммы двух множесгв, заданных системами линейных неравенств, не зависит от столбцов свободных членов (конечно, учитывая лишние неравенства). Лишние неравенства в Рх не станут гранями 2 + (Р2+Р2). Поэтому многогранники 2 + Рг и 2 + (Р2+Р2) имеют по тх граней, направления которых совпадают. Используя свойство ассоциативности сложения по Минковскому (11), получаем, что количество граней в сумме Рх+Р2 совпадает с количеством граней в много-
граннике Рх ~ Р2 + 2, и направления граней в сумме Рх + Р2 совпадают с направлениями граней в Рх. Описание многогранника Рх в виде системы линейных неравенств задано. Следовательно, при построении суммы Рх + Р2 необходимо найти сдвиги граней многогранника Р{ относительно Р2 , а эту задачу АСГ решает точно. Теорема доказана.
Замечание 5. «Почти точно» АСГ будет работать для процесса
если Ак « Е (единичная матрица) и Хх = А0Х0 + ]¥ найдено точно, например, алгоритмом последовательных приближений при ¿(Р) = 0 .
Таким образом, результаты теоремы 2 можно применить к построению множества достижимости в гарантированном подходе, когда Ак « Е, к = 0,1,...,ТУ.
Пример 3. Пусть суммируемые множества Рх е 913 - куб, е 9?3 - пирамида
-х,
-х-
< 1;
< 1:
< 1;
< 0;
< 0;
< 0;
и
Р2 =
X,
+х-
+х, < 1;
0; 0; 0.
Оценка суммы сверху (рис. 5), найденная с помощью АСГ, описывается системой неравенств
Р =
X"
■х.
+Х> 4-х-
< 0;
< 0;
< 0;
< 2;
< 2;
< 2;
< 4.
Неточность построения суммы
Рис. 5. Сумма куба и пирамиды: оценка сверху и точная сумма
Точное описание суммы задается системой
хеР;
рАх 1 ^ 3;
х\ - 3;
х2 +х3 < 3.
По сравнению с оценкой сверху в точной сумме содержится дополнительно еще три грани (рис. 5).
3. Другие теоретико-множественные операции над многогранниками
Пересечение двух многогранников. Рассматривается система (1)—(3), подверженная действию неопределенных возмущений. Производятся измерения вектора состояния, причем ошибка измерения также является неопределенным вектором, о котором известно лишь, что он принадлежит некоторому заданному множеству. В результате, после выполнения каждого очередного измерения оказывается, что вектор состояния системы принадлежит двум множествам: одно из них есть результат обработки всей прошлой информации, а другое соответствует последнему произведенному измерению. Следовательно, вектор состояния принадлежит пересечению указанных двух множеств. Поэтому ясно, что в процессе реализации методов гарантированного и минимаксного оценивания необходимо многократно выполнять операцию пересечения множеств или строить аппроксимации этого пересечения. Следовательно, операция пересечения множеств играет важную роль при реализации минимаксного фильтра.
Определение 4. Пересечением [3, с. 20] двух множеств Рх и Р2 из п -мерного евклидового
пространства ЧЛ" называется множество Р е Шп такое, что
Р = Р1ПР2 ={хет*\хеРихеР2}.
Как и при построении суммы будем рассматривать случай, когда пересекаемые множества заданы системами линейных неравенств (многогранниками)
Р2 = {х2 е 9Г |А2х2 <Ь2уА2£ Шт2Х\Ь2 е 9Г2} .
Приходим к следующей задаче: необходимо получить пересечение Р многогранников Р{ и Р2 также в виде системы линейных неравенств
Р = {х£тп\Ах<Ь,АеЖтх\Ь£Жт}.
При аппроксимации информационного множества гранями пересечение многогранников само по себе не требует вычислительных ресурсов и сводится к простому объединению систем линейных неравенств
Р = Р^П Р2 = {х <-тп\А}х < А2х <Ь2} .
Следовательно, операция пересечения выполняется точно, но возникает задача удаления зависимых неравенств, и эта задача объединяется с задачей аппроксимации. При задании множеств эллипсоидами операция пересечения двух эллипсоидов производится с большой потерей точности, поскольку пересечение эллипсоидов не является эллипсоидом.
Линейное преобразование. Линейным преобразованием ^ € Шпхт множества Рх е называется множество Р е 9?" такое, что
р - = {х е 9}" | х - Рхг, X; е Р{}.
Будем рассматривать случай, когда множество, подвергаемое линейному преобразованию, задано системой линейных неравенств (многогранником)
Рх ={х1 еЗГЦх, <ЪиАх^щх\Ьх еГ}.
Необходимо получить линейное преобразование Р многогранника Рх также в виде системы линейных неравенств
Р = {х£тп\Ах<Ь,АеЖтх\Ьетт}.
В уравнениях (1)-(2) присутствуют вырожденное (в уравнении измерений, так как матрица измерений обычно вырожденная - не все координаты доступны непосредственному измерению)
и невырожденное преобразование (в уравнении движения объекта, так как матрицы перехода состояний являются обратимыми).
Легко получить аналитические формулы нахождения результата невырожденного линейного преобразования
Для вычисления результата невырожденного линейного преобразования необходимо выполнять операции над матрицами (умножение матриц и нахождение обратной матрицы). То есть невырожденное линейное преобразование многогранника вычисляется точно, быстро и дополнительная память не требуется.
Построение множества Х[ук] состояний, совместных с измерением. Рассмотрим множество состояний, совместимых с измерением ук
Будем рассматривать случай наиболее часто встречающийся на практике, когда данное преобразование представляет собой отображение из пространства Шт меньшей размерности в пространство большей размерности.
Пусть множество возмущений ¥к описывается системой линейных неравенств
укеУк={уеКт\и2г<и2},
Тогда
Х[ук] = {хеЯп |-и2Скх <и2~и2ук} . (12)
Система линейных неравенств (12) задает в пространстве Я" многогранник, который в общем случае является неограниченным. Отсюда следует невозможность задания множества Х[ук] с помощью вершин (так как есть еще лучи). Появляется вырожденный многогранник, но вырожденность уничтожается, так как далее в уравнениях гарантированной фильтрации следует операция пересечения с невырожденным многогранником (множеством прогнозов вектора состояния).
Полученная формула (12) справедлива и для случая, когда измеряем точно, то есть, когда ¥к = 0 и ук~Скхк. В этом случае, учитывая что, как правило, матрица Ск - вырождена, хк
принадлежит линейному подпространству пространства Шп.
Пример 4. Рассмотрим пример неограниченности множества Х[ук]. Пусть измеряем сумму двух переменных пространства состояний
Л = в* =(1,1), Ук =[-1;1].
Здесь нижний индекс - номер шага, а верхний индекс - номер координаты. Тогда
Х[ук] = {(х1,х2к)еВ.2 |х!+х,2<1.5, -х\-х2к <0.5}. (13)
Множество (13) является неограниченным.
В процессе фильтрации происходит рост количества граней («закругление» многогранника) в описании информационного множества. Отсюда - увеличение времени вычислений, которое ограничено (необходимо к заданному времени получить оценку состояния для вычисления управления объектом). Следовательно, необходимо проводить аппроксимацию информационного множества многогранником с меньшим числом граней.
4. Нахождения точечной оценки
Для того чтобы управлять объектом, нужно знать точечную оценку, а не гарантированную, поэтому появляется задача нахождения точечной оценки по информационному множеству.
Если известна гарантированная оценка состояния - информационное множество, то в качестве точечной оценки выберем точку, принадлежащую этому информационному множеству. При решении задачи минимаксной фильтрации из всех точек выбирают одну чебышевский центр информационного множества.
Определение 5, Чебышевским центром х* многогранника Р называется точка
х* =тттах{||х-1у||з;еР} .
Чебышевский центр множества - это точка максимальное расстояние от которой до любой другой точки этого множества минимально.
Так как разрабатываются приближенные алгоритмы преобразования множеств, то отсутствует необходимость точного нахождения чебышевского центра информационного множества. Точное нахождение чебышевского центра весьма затруднительно.
Для построения чебышевского центра информационного множества Хк = {х е Яя \Ах < Ъ, А е Штхп, Ъ е 9?т} решаем задачи линейного программирования
с[ = шах(а[, х) при ограничениях Ах <Ъ9 где а[ = (0,..., 1,..., 0) е 5ЯЛ - стоит единица на / -ом месте (/ = 1 ;п). Получаем с\ - г-ую компоненту вектора с1е!йи. Далее решаем задачи линейного программирования с', =тт(а!_19х) при ограничениях Ах<Ьу где а1_х = (0,...,-1,...,0)е9Г - стоит минус единица на у-ом месте (у =1 ;п). Получаем с1х ~ у-ую компоненту вектора е9?и. Всего необходимо решить 2п задач линейного программирования. Таким образом, вписываем информационное множество Хк в гиперпараллелепипед ориентированный по осям
За приближение к чебышевскому центру информационного множества Хк принимаем чебышевский центр гиперпараллелепипеда (14)
5. Результаты численного моделирования минимаксного фильтра на ЭВМ
Для реализации метода многогранников, изложенного в данной статье, был разработан комплекс программ на языке Borland С++. Комплекс программ предназначен для решения задач гарантированного и минимаксного оценивания состояния линейных дискретных динамических систем (1)-(2) с ограничениями (3), заданных системами линейных неравенств.
Так, аналогичный комплекс программ (но для метода эллипсоидов), разработанный B.J1. Трущенковым на языке Fortran в институте проблем механики АН СССР позволяет решать задачи для системы (1)-(3), когда размерность вектора состояния п < 10 при числе измеряемых параметров т < п в (2) [3, с. 279].
Близкая задача - задача построения множества достижимости для линейной динамической системы (1) решается пакетом прикладных программ ПОТЕНЦИАЛ , разработанным В.А. Бу-шенковым и A.B. Лотовым на языке АЛГОЛ 60 [18, 19]. На основе методов теории линейных неравенств [20, 21] и разработанного ими подхода удается строить множества достижимости с размерностью вектора состояния п порядка 4 - 6 на несколько сот шагов по времени [3, с. 40-41].
Программа для построения эллипсоидальных аппроксимаций областей достижимости динамических систем, описываемых обыкновенными дифференциальными уравнениями, разработана В.А. Хониным в Институте математики и механики УрО АН СССР [22]. Размерность вектора состояния не должна превосходить 10 [22, с. 127].
Результаты измерений ук должны либо поступать в комплекс программ непосредственно с измерительного устройства, либо моделироваться в ЭВМ. Во втором случае моделирование результатов измерений производится отдельной программой комплекса следующим образом. Задаются тем или иным образом внешнее возмущение wk при к > 0, удовлетворяющее ограничению
(14)
х
2
ошибки измерения vk при к > 1, удовлетворяющие ограничению
vkeVk^{xe9lm\U2x<u2},
а также начальное условие х0 , удовлетворяющее ограничению
х0 gX0 = {х е <Ь0}.
Вычисляется прогноз вектора состояния, в результате чего в любой момент времени определяется истинный вектор состояния хк. На основе хк и ук согласно (2) вычисляется вектор результата измерения ук , который используется в комплексе в процессе оценивания. Заметим, что вектор хк не поступает в процедуру обработки и служит лишь для вычисления ук ; при обработке он читается неизвестным.
В результате работы комплекса вычисляются грани многогранника Хк, содержащего неизвестный текущий вектор состояния хкеХк. При этом для момента дискретного времени к учитываются результаты измерений ук (•) = {у},..., ук}.
Рассмотрим операцию суммирования как самую трудоемкую операцию при реализации минимаксного фильтра. Грани суммируемых многогранников задавались датчиком случайных чисел так, чтобы многогранники стремились к шарам при стремлении числа граней к бесконечности. В алгоритмах используется двойственный симплекс-метод с нахождением начального псевдоплана М - методом. Для АПП была выбрана точность построения ех ~ 0.2 . Результаты приведены для Реп1;шт-233 в табл. 1 и 2.
Таблица 1
Суммирование многогранников в ЧЯ3 АПП
Число граней в Рх 10 10 20 40 40 100
Число граней в Р2 10 20 20 20 40 100
Время решения, с 2.20 14.50 7.52 33.23 17.36 87.93
Таблица 2
Суммирование многогранников АСГ {т^ ~ 100, т2 = 100)
Размерность пространства п 3 4 5 8 15 20
Время решения, с 1.54 2.01 2.63 5.33 16.98 30.16
Например, при суммировании двух многогранников в Л3 с числом граней 100 и 100 АПП получено, что сумма содержит 628 неравенств (граней) и 64 вершины. Проведена 61 итерация АПП (каждая итерация прибавляет по одной вершине). В результате работы АПП получаем многогранник, который имеет в несколько раз больше граней, чем вершин.
Из табл. 1 и 2 можно сделать вывод о том, что АСГ работает быстрее АПП, т.к. не использует в своей работе построение выпуклой оболочки. Разница в скорости вычисления суммы увеличивается по мере увеличения размерности пространства.
Результаты численного моделирования в 9?" показали, что разработанный комплекс программ позволяет решать задачи для системы (1)-{3), когда размерность вектора состояния п < 20 при числе измеряемых параметров т<п .
Заключение
Способ задания информационных множеств системами линейных неравенств (то есть только гранями, не используя вершины - метод двойного описания [20]) позволил реализовать алгоритм минимаксного оценивания на ЭВМ в реальном времени для размерности вектора состояния не более 20. При этом разработаны эффективные алгоритмы построения внутренней и внешней аппроксимации суммы многогранников при решении задач минимаксной (или гарантированной) фильтрации. Для построения внутренней аппроксимации суммы операция суммирования была сведена к классической задаче теории линейных неравенств - задаче построения ортогональной проекции многогранника. Для построения внешней аппроксимации суммы разработан алгоритм сдвига граней, доказаны теоремы о случаях, когда алгоритм строит точную сумму.
Работа поддержана грантами РФФИ - УРАЛ № 01-01-96419 и МО № ТОО/13.2/2647.
Литература
1. Schweppe F.С. Recursive state estimation: unknown but bounded errors and systems inputs // IEEE Trans. Autom. Control - 1968. -V. 13, № l.-P. 22-28.
2. Куржанский А.Б. Управление и наблюдение в условиях неопределенности. - М.: Наука, 1977.-392 с.
3. Черноусько Ф.Л. Оценивание фазового состояния динамических систем. Метод эллипсоидов. - М.: Наука, 1988. - 320 с.
4. Бакан Г.М. Нечеткий эллипсоидальный наблюдатель состояний многомерного статического объекта // Проблемы управления и информатики. — 1996.-№ 1,2.-С. 133-144.
5. Бакан Г.М. Гарантированное оценивание состояний динамических систем методом двустороннего динамического программирования // Кибернетика и системный анализ. - 2001. -№ 1.-С. 83-96.
6. Кунцевич В.М., Лычак М.М. Синтез оптимальных и адаптивных систем управления: игровой подход. - Киев: Наукова думка, 1985. - 245 с.
7. Лычак М.М. Идентификация и оценивание состояния объектов управления на основе множественного подхода // Проблемы управления и информатики. - 1999. - № 5. - С. 34-41.
8. Костоусова Е.К. Внешнее и внутреннее оценивание областей достижимости при помощи параллелотопов И Вычислительные технологии. - 1998. - № 2. - С. 11-20.
9. Ширяев В. И. Минимаксная фильтрация в реальном времени многошаговых систем // Проблемы управления и теории информации. - 1991. - № 5. - С. 805-812.
10. Панченко И.С. Алгоритмы оценивания аддитивных скачкообразных возмущений в линейных динамических системах в условиях статистической неопределенности: Дис...канд. техн. наук / ЧГТУ. - Челябинск: Изд-во ЧГТУ, 1997. - 141 с.
11. Уханов М.В. Решение задачи гарантированного оценивания в условиях неопределенности И Проблемы теоретической и прикладной математики: Труды 31-й Региональной молодежной конференции. - Екатеринбург: УрО РАН, 2000. - С. 100-101.
12. Кац И .Я., Куржанский А.Б. Минимаксная многошаговая фильтрация в статистически неопределенных ситуациях // Изв. РАН. Техн. киберн. - 1978. - № 11. - С. 79-87.
13. Лейхтвейс К. Выпуклые множества. - М.: Наука, 1985. - 336 с.
14. Бренстед А. Введение в теорию выпуклых многогранников. - М.: Мир, 1988. - 240 с.
15. Черникова Н.Б. Алгоритм для нахождения общей формулы неотрицательных решений системы линейных неравенств // Ж. вьгчисл. матем. и матем. физ. - 1965. - Т. 5, № 2. - С. 334—337.
16. Бушенков В.А. Итерационный метод построения ортогональных проекций выпуклых многогранных множеств// Ж. вычисл. матем. и матем. физ. - 1985. - Т. 25, № 9. - С. 1285-1292.
17. Препарата Ф., Шеймос М. Вычислительная геометрия: Введение. - М.: Мир, 1989. - 478 с.
18. Компьютер и поиск компромисса. Метод достижимых целей / Лотов А.В, Бушенков В.А., Каменев Г.К., Черных О.Л. - М.: Наука, 1997. - 239 с. (Серия «Кибернетика: неограниченные возможности и возможные ограничения»).
19. Бушенков В.А., Лотов A.B. Методы и алгоритмы анализа линейных систем на основе построения обобщенных множеств достижимости// Ж. вычисл. матем. и матем. физ. - 1980. - Т. 20, №5.-С. 1130-1141.
20. Моцкин Т.С., Райфа X., Томсон Дж.Л., Тролл P.M. Метод двойного описания // Матричные игры. - М.: Физматгиз, 1961. - С. 81-109.
21. Черников С.Н. Линейные неравенства. - М.: Наука, 1968. - 488 с.
22. Хонин В.А. О программах, реализующих алгоритмы аппроксимации области достижимости управляемой системы // Динамические задачи оценивания в условиях неопределенности. Свердловск: УрО АН СССР, 1989. - С. 125-129.