Толық мәтін
ВВЕДЕНИЕ
Одной из особенностей теории управления (см. [1]) является то, что вычисление разрешающего программного управления в задачах о сближении или позиционной стратегии в дифференциальных играх (см. [2], [3]) зачастую представляет собой длительный вычислительный процесс, в ходе которого вычисляются так называемые множества достижимости и интегральные воронки. Это обстоятельство представляет собой известную проблему, особенно в случае, когда условия задачи содержат некоторые неопределенности, которые невозможно выяснить до начального момента времени (см. [4]–[7]). Например, согласно работе [8], решение задачи управления с неполностью известным начальным условием состоит из трех подзадач:
- сбор информации о динамической системе,
- применение полученных сведений для устранения неопределенности,
- переход к этапу активного управления.
В этой схеме первый и второй этапы могут быть выполнены, в том числе, с помощью применения кратковременного пробного управления (см. [6], [7]). Однако, стоит обратить внимание па переход к третьему этапу, так как после устранения неопределенности осуществить мгновенное построение разрешающего управления при уже начавшемся движении некоторой динамической системы будет практически невозможно.
Также можно рассмотреть вполне естественную задачу, когда требуется быстрое реагирование динамической системы на обнаружение целевого множества в наблюдаемой области фазового пространства. Вторая ситуация, приводящая к схожим условиям задачи, это обработка сигналов коррекции относительно целевого множества, поступающих непосредственно во время движения управляемой системы.
В настоящей статье в качестве решения предлагается заранее построить разрешающие управления, соответствующие нескольким возможным положениям целевой точки, а для промежуточных положений целевой точки воспользоваться формулами линейной интерполяции. Отметим, что в общем случае линейная комбинация управлений, соответствующих разным “поводырям” (по терминологии метода экстремального прицеливания Н.Н. Красовского из [9], [10]) , может привести к слишком большой погрешности. Из-за этого в настоящей работе применяется схема, которая минимизирует диаметр интегральных воронок, содержащих ячейки сетки, наложенной на множество возможных положений целевой точки.
Ранее в работе [11] была рассмотрена задача линейной интерполяции программного управления по скалярному параметру, а в [12] по векторному параметру. В [13] была, в частности, рассмотрена интерполяция оптимального управления по пространственной переменной для систем с обратной связью. Кроме того, запатентован метод интерполяции в автоматическом программировании (см. [14]). К данной тематике также примыкают работы по интерполяции структуры нелинейных управляемых систем с помощью линейных (см. [15], |16|) и билинейных (см. [17], [18]) систем.
2. ПОСТАНОВКА ЗАДАЧИ
Пусть на конечном промежутке времени [t0,ϑ] задана управляемая система
(1)
где время, начальное состояние системы, фазовый вектор системы, вектор-функция динамики системы, измеримая вектор-функция управления, значения которой принадлежат компакту , и натуральные числа.
Будем предполагать, что правая часть системы (1) удовлетворяет следующим условиям.
Условие C1. Вектор-функция определена и непрерывна на области .
Условие C2. На любом компакте функция удовлетворяет условию Липшица по x с некоторой конечной и положительной постоянной Липшица , т.е.
где евклидова норма вектора в .
Условие C3. Выполняется условие подлинейного роста по фазовой переменной с некоторой конечной и положительной постоянной , т.е.
Замечание 2.1. Под допустимым управлением , , мы понимаем измеримую по Лебегу на вектор-функцию со значениями из . Условий C1, C2 и C3 достаточно, чтобы каждому допустимому управлению соответствовало движение , являющееся решением системы (1) в классе абсолютно непрерывных функций (см. [19, §2.1]). При этом производная понимается в обобщенном смысле, и для нее выполняется формула НьютонаЛейбница (см., например, [20, гл. 2, §4]).
Замечание 2.2. В силу условия C3 существует некоторый достаточно большой компакт , в котором заведомо содержатся всевозможные движения системы (1) вместе со всеми вспомогательными конструкциями для построения разрешающих управлений. В дальнейшем будем всюду использовать постоянную Липшица и другие конструкции именно для этой области .
Замечание 2.3. Учитывая условие C1, получаем, что модуль непрерывности
удовлетворяет предельному соотношению при .
Условие C4. Для любых точек и векторов функция является дважды непрерывно дифференцируемой по совокупности компонент векторных переменных и с ограниченными вторыми частными производными, т.е.
где , , постоянная определяется видом функции , областями и .
Оговорим информационные условия, в рамках которых осуществляется управление системой (1).
Условие I1. Заблаговременно до момента начала движения управляющему лицу известно только ограниченное множество возможных целевых точек и приближенное значение начального состояния системы с погрешностью , т.е. выполнено неравенство
Условие I2. Целевая точка сообщается управляющему лицу только в момент начала движения системы (1).
Условие I3. Лицо, управляющее системой, не в состоянии производить большой объем вычислений в реальном времени (а именно, не может мгновенно вычислять множества достижимости пиксельным методом). Также объем заранее вычисленной информации для быстрого построения разрешающих управлений не должен быть слишком большим.
Сформулируем для системы (1) задачу о сближении с заранее неизвестной целевой точкой.
Задача 1. Пусть система (1) удовлетворяет условиям C1–C4, а ее управление производится в рамках информационных условий I1–I3. Требуется определить существование разрешающего программного управления , переводящего движение системы (1) в момент в малую окрестность точки (заданной в момент ), и, в случае его существования, сконструировать его.
3. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ О СБЛИЖЕНИИ
Прежде чем сформулировать алгоритм решения задачи, состоящий из двух частей, введем некоторые вспомогательные обозначения.
Под диаметром произвольного множества (находящегося, как минимум, в метрическом пространстве) мы будем понимать точную верхнюю грань расстояний между любыми двумя точками из .
Обозначим через отображение, “прореживающее” множество, т.е. любому ограниченному множеству , , оно сопоставляет конечное множество , состоящее, по возможности, из меньшего количества его точек и обладающее свойством
где есть хаусдорфово расстояние между множествами и . Способы построения такого “прореженного” множества приведены в [21, c. 549].
Обозначим , где достаточно малая постоянная, выбранная из соображений оптимального соотношения между точностью и производительностью вычислений.
Пусть множество всех равномерных разбиений всех отрезков. Определим отображение , действующее по правилу
где натуральное число, равномерное разбиение некоторого отрезка , точка вычисляется с помощью рекуррентных соотношений
представляющих собой явный метод РунгеКутты второго порядка (см. [22], [23]).
Определим еще одно отображение следующим образом:
где равномерное разбиение отрезка , концы которого определены первыми двумя аргументами отображения.
Завершив введение необходимых обозначений, сформулируем вычислительный метод решения задачи 1 в виде двух алгоритмов. Первый алгоритм содержит громоздкие вычисления, которые выполняются заблаговременно до начала движения системы (1), второй алгоритм применяется непосредственно в процессе движения системы (1) в режиме реального времени.
Алгоритм 1
1. Выберем достаточно большое натуральное число и введем равномерное разбиение временного промежутка с диаметром . Кроме того, выберем натуральное число , и на каждом отрезке разбиения введем свое подразбиение:
2. Выберем достаточно малую постоянную и вычислим аппроксимации множеств достижимости по следующей итерационной процедуре:
При построении конечных множеств , для каждой точки мы будем запоминать “родительскую” точку и управляющий вектор , для которых выполнено соотношение , где обозначено .
3. Если евклидово расстояние , то заключаем, что разрешающее программное управление, переводящее движение системы (1) на любую точку из в момент с приемлемой точностью нашим методом построить не представляется возможным, и завершаем решение задачи о сближении.
Если хаусдорфово отклонение , то заключаем, что задача 1 разрешима для любой точки , которая будет сообщена в момент .
В остальных случаях мы не сможем гарантировать решение задачи 1 с приемлемой точностью для того , которое будет сообщено управляющему лицу в момент .
4. Обозначим через достаточно малую постоянную. В качестве конечного множества выберем такое множество точек , чтобы любая возможная целевая точка была внутри “своего” -мерного куба с вершинами
которые должны быть либо из , либо хотя бы удовлетворять соотношению
(2)
Замечание 3.1. Если выделение конечного множества указанным способом невозможно по причине “неудобной” геометрии и , то можно модифицировать наши алгоритмы, соотнеся “неудобные” точки к ближайшим кубам и выразив их в дальнейшем через невыпуклые линейные комбинации вершин (см. [12]), перейдя, таким образом, от интерполяции к экстраполяции. При этом оценка погрешности перевода состояния системы в целевую точку несколько ухудшится.
5. Для каждого куба с центром , , выбираем соответствующее сужение значений управляющего вектора так, чтобы , где множество достижимости системы (1) в момент из начальной позиции , порожденное всевозможными кусочно-постоянными управлениями со значениями из сужения при . При этом выбор таких сужений мы производим таким образом, чтобы максимальный диаметр временных сечений сужений был, по возможности, минимальным.
6. Для каждого и для каждой вершины выбираем из по одной точке , ближайшей к и порожденной сеточным алгоритмом, аппроксимирующего воздействие некоторого кусочно-постоянного управления, которое обозначим через , .
Алгоритм 2
1. Определяем куб , содержащий заданную целевую точку .
2. Представляем радиус-вектор в виде линейной комбинации
где коэффициенты при .
3. В качестве искомого разрешающего программного управления используем функцию
4. ОЦЕНКА ПОГРЕШНОСТИ
Лемма 4.1. Пусть и натуральные числа, постоянные при , векторы и из , функция , и все ее вторые частные производные ограничены некоторой постоянной , т.е.
Тогда
(3)
где через обозначено множество всех векторов длины , координаты которых принимают значения только или .
Доказательство. Воспользуемся методом математической индукции по размерности . Для доказательства базы индукции рассмотрим случай , а именно, докажем, что
Действительно, разложив вектор-функцию в точках и в ряды Тейлора с остаточным членом в интегральной форме и подставив в эти разложения , получаем, что
(4)
(5)
Теперь домножим (4) на , (5) на и сложим их между собой:
Отсюда получаем, что
Тем самым база индукции (лемма 4.1.) доказана.
Предположим, что неравенство (3) выполняется для некоторого . Докажем его для . Опираясь на базу и предположение индукции, с помощью неравенства треугольника несложно доказать его для размерности n + 1. Тем самым, мы осуществили индукционный переход, и, значит, лемма доказана.
Замечание 4.1. Для скалярной функции одной переменной с ограниченной второй производной (т.е. , где постоянная ) из оценки погрешности формулы интерполяции Лагранжа (см. [24, гл. XIV, §14, (6)])
и неравенства
непосредственно следует оценка
(6)
Однако для нашего многомерного случая приведенное в [24, гл. XIV, §14] доказательство оценки (6) не будет корректным из-за использования теоремы Лагранжа о конечных приращениях, которая, как известно, не применима для векторозначных функций.
Лемма 4.2. Пусть , , – некоторое сужение значений управления. И пусть измеримые по Лебегу вектор-функции и действуют из в и порождают некоторые абсолютно непрерывные движения и при подстановке их в систему (1) в качестве программных управлений. При этом считаем, что система (1) удовлетворяет условиям C1– C4 на правую часть (информационные условия I1– I3 не имеют значения).
Тогда выполняется оценка
Доказательство. Поскольку и есть движения системы (1), соответствующие программным управлениям и , то они удовлетворяют начальным условиям и дифференциальным уравнениям
которые в интегральной форме можно записать следующим образом:
Учитывая условие C2 и замечание 2.3, можно оценить
Отсюда в силу усиленной леммы Гронуолла (см. [25, гл.1, §2, c. 26]) вытекает утверждение леммы.
Пусть фиксированная кусочно постоянная вектор-функция со значениями из с разрывами на концах отрезков разбиения , решение задачи Коши
(7)
простейшая линейная аппроксимация сеточной функция, являющейся численным решением задачи (6) явным методом Рунге-Кутты второго порядка с шагом на участках при , а именно, по рекуррентным формулам
где подразбиения определены согласно первому шагу алгоритма 1 с некоторыми числами , .
Посредством функции обозначим оценку
(8)
вид которой, согласно [23, п. 4.3.1, п. 4.3.2], есть
где
, ,
постоянная выражается некоторым образом через максимум функции , ее первых и вторых частных производных по всем и .
Замечание 4.2. Заметим, что в местах линейной аппроксимации сеточной функции погрешность может оказаться несколько больше, чем в узловых точках метода РунгеКутты, что может привести к некоторому увеличению постоянной . В дальнейшем такую линейную аппроксимацию сеточной функции будем называть ломаной Эйлера.
Теорема 4.1 Пусть система (1) удовлетворяет условиям C1–C4, а управление ей производится в информационных условиях I1–I3, и пусть при решении задачи на шаге алгоритма было установлено существование допустимого разрешающего управления, а затем с помощью алгоритма было построено программное управление , порождающее движение . Тогда
(9)
Доказательство. В соответствии с шагом 3 алгоритма 1 целевая точка находится внутри некоторого -мерного куба с вершинами . Тогда можно выразить в виде некоторой выпуклой линейной комбинации вершин куба , т.е.
Через в формулировке теоремы обозначено движение системы (1), порожденное управлением
Отметим, что в наших обозначениях есть точное начальное состояние системы. По построению (см. (2)) для всех найдется такое , что
(10)
Обозначим через
(11)
Из (9) и (10) следует соотношение
(12)
Далее оценим
Через обозначим ломаные Эйлера, проходящие через точки
соответственно, через обозначим линейную комбинацию ломанных Эйлера
проходящую через точки , .
Через обозначим решения задач Коши:
их линейную комбинацию обозначим через
(13)
В силу обозначения (8) выполнены оценки
(14)
Применяя неравенство треугольника и учитывая обозначение , получаем, что
(15)
где второе слагаемое оценено через в силу (14).
Чтобы оценить первое слагаемое, рассмотрим следующую задачу Коши:
Заметим, что в силу леммы 4.1
(16)
где определено в (13), , , максимальный диаметр сечений интегральных воронок, соответствующих сужениям .
Учитывая лемму 4.2, можно оценить
Соответственно, в таком случае мы получим оценку
(17)
Из сложения соответствующих уравнений выполняется следующее равенство:
(18)
Из (16)–(18) и условия C2 следует, что
Отсюда, в силу усиленной леммы Гронуолла (см. [25, гл. §1, §2, c. 26]) следует, что
В частности,
Отсюда и из (15) получаем, что
С учетом (12) получаем утверждение теоремы.
Замечание 4.3. Если учесть, что это минимальная величина, при которой интегральная воронка, соответствующая сужению управления , накрывает своим последним временны`м сечением куб , то можно предполагать, что для многих систем (или при некоторых дополнительных условиях) будет величиной сопоставимой с диагональю наибольшего куба , т.е. .
5. ПРИМЕР
В качестве примера управляемой системы рассмотрим модифицированную математическую модель машины Дубинса. Пусть на промежутке времени задана управляемая система
(19)
где время, вектор фазового состояния управляемой системы, начальное состояние системы, измеримая по Лебегу вектор-функция управления со значениями из .
Задача состоит в быстром предъявлении разрешающего программного управления , которое бы переводило движение управляемой системы (19) из начальной точки в малую окрестность точки , координаты которой будут сообщены в начальный момент . Вместе с тем, заранее известно, что целевая точка будет принадлежать множеству . Кроме того, предположим, что начальное состояние системы (19) известно без погрешности, т.е. .
Итак, выполним алгоритм 1.
1. Выберем , тогда имеем разбиение c диаметром . Также выберем , на отрезке введем подразбиение
на отрезке введем подразбиение
2. Выберем и вычислим множества достижимости и , соответствующие моментам времени и (сечение плоскостью изображено на фиг. 1).
3. Поскольку хаусдорфово отклонение (см. фиг. 1), то мы заключаем, что задача 1 разрешима для любой точки , которая будет сообщена в момент времени .
4. Выберем , , , т.е. , (см. фиг. 1).
5. Поскольку чистым перебором найти минимально возможное значение затруднительно, то мы найдем квазиоптимальное решение следующим образом. Сперва заметим, что управление при приводит состояние системы в точку , т.е. практически в центр куба . В связи с этим искомые кусочно постоянные управления, выводящие движение системы на вершины куба , будем искать в виде суммы управлений и для каждой вершины будем минимизировать . Последняя задача минимизации нормы имеет уже приемлемую размерность и вполне может быть решена, например, методом циклического покоординатного спуска (см. [26, гл. 7, §3]).
Фиг. 1. Сечения множеств , и плоскостью .
В результате было найдено сужение управления
с диаметром .
6. Были выбраны , ближайшие к , и соответствующие им кусочно постоянные управления со значениями из . Для дальнейшего выполнения алгоритма 2 достаточно запомнить только следующие кусочно-постоянные «узловые» управления:
Таким образом, мы заготовили “узловые” управления, выполнив алгоритм 1.
Далее, пусть в некоторый момент были сообщены следующие координаты целевой точки . Для немедленного перевода состояния системы (1) в выполним алгоритм 2.
1. Очевидно, целевую точку содержит единственный имеющийся куб .
2. Представляем в виде линейной комбинации
3. В качестве искомого разрешающего программного управления получаем
Моделирование движения системы (1) под действием полученного управления с помощью метода РунгеКутты с шагом по времени показало, что состояние системы в момент времени перешло в точку . Величина промаха (в евклидовой метрике) составила , что составляет 2.68 % от длины ребра куба , являющимся ячейкой разбиения множества возможных целевых точек.
ЗАКЛЮЧЕНИЕ
Отметим, что исследуемая в настоящей работе задача была рассмотрена ранее в [12, п. 5]. В той работе было предложено путем замены фазовой переменной переводить неопределенность в целевой точке в неопределенность по параметру. Однако в общем случае ранее предложенный в [12, п. 5] алгоритм не годится, так как для выполнения введенного в [12, п. 2] условия E фактически необходимо совпадение размерностей управляющего вектора и фазового пространства. В настоящей работе построено “прямое” решение поставленной задачи без введения вспомогательного параметра, рассмотрен пример, в котором размерность управляющего вектора меньше размерности фазового пространства. Кроме того, способы проверки выполнения введенного в [12, п. 2] условия E пока еще не найдены. В настоящей же работе все условия на управляемую систему легко проверяемы, теоретическая оценка погрешности может быть явно вычислена.
Направлениями дальнейших исследований могут быть использование нелинейной интерполяции (см. [27], [28]) программного управления для еще большей точности, исследование возможности применения интерполяции программного управления и оценке его погрешности в задачах управления системами, описываемыми дифференциальными уравнениями дробного порядка (см. [29], [30]).