УДК 62.501.12
А. А. ЛАВРУХИН А. Т. КОГУТ
Омский государственный университет путей сообщения
МОДИФИКАЦИЯ МЕТОДА ШАТРОВСКОГО РЕШЕНИЯ НЕЛИНЕЙНЫХ ЗАДАЧ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ_
Рассмотрен метод Шатровского поиска близкого к оптимальному управления на примере одной нелинейной системы. Предложена модификация этого метода на основе учета вторых производных в представлении функций, описывающих систему, отрезками ряда Тейлора. Показано преимущество модифицированного метода.
Один из приближенных методов решения задач оптимального управления нелинейными объектами был предложен Д.И. Шатровским [1]. Оноснованна итерационной процедуре, в ходе которой при заданном в виде функции времени начальном приближении управления, на каждом шаге решается линейная задача с использованием рекуррентных вычислений. В результате, как отмечается в [1], получается управление, достаточно близкое к оптимальному. Подробный алгоритм метода Шатровского для задачи Майера приведен в работе [2], где также отмечается, что сходимость метода в большой степени зависит от удачно выбранного начального приближения искомого управления. Для расширения области сходимости можно применить полиномиальную аппроксимацию [3), позволяющую в линейной модели учитывать как первую, так и вторую производные нелинейных функций. Построение итерационных процедур будем проводить в соответствии с методикой, изложенной в [2].
Рассмотрим пример применения метода Шатровского при поиске управления движением ракеты при выводе ее на прямолинейную траекторию. Ракета движется как материальная точка, обладающая постоянной массой, в вертикальной плоскости. Требуется перевести ракету из положения покоя на нулевой высоте в горизонтальный полет на высоте Л. Будем считать, что рассматриваемый объект описывается уравнением [2]:
"V
х2
В вектор состояния
*(0=к(0 *2(0 *э(0 *<(0Г
входят х,, хг - горизонтальная и вертикальная координаты (дальность и высота полета); х3, х4 — скорости изменения координат х, и х2 соответственно.
Начальные условия движения:
х,(0) = 0; х2(0) = 0 ; х3(0) = 0 ; х4(0) = 0. (2)
Ограничение на управление задается условием: \и\< я/2.
Требуется перевести объект за время Тв положение, при котором
х2(Л=Л; (3)
= и»
Для формулировки задачи Майера условия (3) и (4) необходимо записать в виде:
,;(и)=р(х(т))=(х2(г)-/,)2 + хКг). (5)
Таким образом, целью управления является минимизация функционала (5). Аналитическое выражение для оптимального управления и* (() описанным объектом приведено в [2]. Этому управлению соответствует траектория движения объекта х'(£), которая находится путем численного решения уравнения (1) при начальных условиях (2).
При решении задачи методом Шатровского в ходе итерационной процедуры производится приближение первоначально задаваемой функции управления к оптимальному управлению и*(<). Функция управления, найденная на /с-м шаге, обозначается как ик (I). Достаточное количество итераций к определятся неравенством:
(6)
где е - точность минимизации функционала.
В приведенном примере использовались следующие числовые значения параметров:
Г = 1; Л = 0,2; £- = 10"2.
В ходе моделирования получена функция управления й{1) и соответствующая ей траектория хЦ). Управления й(1) и ц'(() показаны на рис. 1. Графики, отражающие зависимость изменения высоты ракеты х2(0 от дальности ее полета приведены на рис. 2, а фазовый портрет системы в плоскости (х„, х2) — на рис. 3, где х*|2((), х*42(0 соответствуют оптимальным фазовым траекториям, а хп(1), ха(1) - найденным по методу Шатровского. Фазовые портреты построены для интервала времени [0, 2Т], на первой поло-
хл
4
СОБЧ
Б ¡П11
вине которого [О, Г] осуществляется управление, а на второй половине [Г, 2Т] — свободное движение.
Невыполнение условия (4), т.е. равенства нулю вертикальной составляющей скорости (при ОТ = 0,076), приводит к тому, что свободное движение ракеты оказывается нестабилизированным и после окончания управления ракета не задерживается на требуемой высоте (см. траекторию х12(1) на рис. 2). Поскольку в данной задаче выведение ракеты на нужную высоту является главной целью управления, решение задачи методом Шатровского можно считать неудовлетворительным, поэтому и требуется изменить алгоритм.
Рассмотрим возможную модификацию метода для движения объекта, описываемого в общем случае системой дифференциальных уравнений:
90
45
-45
-90
.....\
.................и \И* ".....
0.5 </Г—
Рис. 1. Функции управляющего воздействия (й=0,2).
7,(х, и)'
= /(х,и)=
А.
(7)
где векторы* и и имеют размерности соответственно пит.
Начальное приближение управления и(0 выберем равным и°(() = и0. Рассмотрим к-й шаг итерации. На этом шаге будем искать такое новое управление цк((), которое уменьшит функционал J{uk) по сравнению с предыдущим шагом.
Допустим, что функция и*(£) отличается от и*~'(() на вариацию И((), а соответствующая управлению и*(() траектория 0 отличается от соответствующей управлению траектории на величину
/С):
и'(1)=ик-'(0+И(0; Тогда уравнение объекта на А-м шаге: Если считать, что вариации у* и И малы:
ук
(8) (9)
(10)
то функцию / (•) можно аппроксимировать отрезком ряда Тейлора с учетом вторых производных:
хк =/(*'-', и*-')+ У/Д**"', и'-1).у* ик-')-ук +
+1 У2/„(**"', ик~')• ук ® у" + ^2/,11(хк'1, ц*"')■ ук ® V* +
где У/^х*"1, и*-1), У/и(х*_|, и*"1) - матрицы первых производных функции /по переменным х и и соответственно, имеющие размерности пхл и пхт (матрицы Якоби);
У2/^*"', И*"'), ^/у-1,!!»-1), У2/"^** ', и" ') - матрицы вторых производных функции / по переменным х и и, имеющие размерности лхл2, пхт2, пхтп, пхтп соответственно (матрицы Гессе);
® - прямое (кронекеровское) произведение матриц.
Рис.2. Фазовые траектории (Ь=0,2).
Рис.3. Фазовые портреты |й=0,2).
Для упрощения аналитических зависимостей, как и в примере (1), будем полагать, что смешанные производные равны нулю, тогда выражение (11) можно записать в виде:
х* = /*-' + ЧГхк'У +IУ^-'у" ®ук +
2
(12)
В соответствии с [3], выражение (12) представляется следующим образом:
к
у +
(13)
где /п, 1т - единичные матрицы размерности л*пи тхт соответственно.
Будем считать, что входящие в выражение (13) функции времени у* и у* известны, тогда вариация управления V* и вызванное ей изменение траектории у* линейно входят в функцию /(■).
Требуется определить такое И, которое приводит к уменьшению функционала т.е. выполняется неравенство
У<У
(14)
Определим изменение функционала на к-м шаге итерационного процесса:
(15)
Получим выражение для SJI' в виде линейной зависимости от у*. Для этого, считая, что
у* ->0,
аппроксимируем функционал
^=4хк-' + ук) (16)
отрезком ряда Тейлора с учетом вторых производных:
, (17)
где У«/-1, УУ'1 — векторы первых и вторых производных функции <рпо переменным х соответственно. Выражение (17) можно записать в виде:
у^-Ч^уу-'^"®/,,)
■ (18)
Задача улучшения управления ик сводится к задаче поиска такой вариации И, которая бы минимизировала приращение функционала
53к
у/-ч1уу-'(у*®/„)
(19)
на решениях линеинои системы
У* =
У/^Ду2/,*'1^'®0
у^-'+^У2/^''®^)
УЧ
(20)
р*(0=-с граничным условием
Рк(т)=-
Р*(0 (21)
После определения решения уравнения (21) можно найти В соответствии с [2), для того, чтобы выполнялось 53 к<0, требуется выбрать И((),
удовлетворяющее условию
"м
<0 = £
рЧО,
(23)
г = 0, 1, 2,... ттах. (24)
Значение гтах выбирается из условия:
(25)
где 5 — малое число, задающее точность приближения функции управления.
Для выбора гв выражении (23), производится проверка условия
(26)
начиная с г = 0.
В выражения (13), (18) — (20) входят некоторые функции времени ук(() и у"(I), которые мы считали известными. В работе [3] предлагается для определения этих функций использовать двухступенчатый метод. Для этого на каждом к-м шаге итерации применяется метод Шатровского в том виде, в котором он описан в [2]. В результате можно найти функции вариации управления V1 (I) и вариации траекторий у V,! I а также новые для данного шага функции управления а1'(1) итраектории хк(1). В модифицированном методе на каждом шаге итерации при поиске и*(0 и х*((), функции ик~'(/) их'"'(1] выбираются равными функциям, найденным методом Шатровского:
х*-'(0=*Ч0-
(27)
(28)
В соответствии с [2], для нахождения укЦ) и ук(1) функции /и7линеаризуются в виде:
ЧУ <рк~У\
(29)
(30)
Такая формулировка задачи получена по аналогии с описанной в [2] для метода Шатровского. Уравнение (20) является нестационарным неоднородным дифференциальным уравнением. В работе [2] показано, что в подобных задачах удобно использовать метод сопряженных уравнений, находя вектор р(<) размерности п, являющийся решением системы
(22)
При решении задачи модифицированным методом Шатровского получена траектория х(ф Зависимость изменения высоты ракеты х2и) от дальности полета х,(() показана на рис. 2, а фазовый портрет в плоскости (х4, х2) — на рис. 3. Модифицированному методу соответствуют функции х|2(<) их42((), которые можно сравнить с построенными ранее теоретическими х*12((), х*42(/) и экспериментальными хУ2(1), х42(Ч- При использовании модифицированного метода не удается достичь требуемой высоты, однако после окончания управления ракета продолжает движение, близкое к горизонтальному. В данной задаче стабилизация движения на определенной высоте является главной целью, поэтому модифицированный метод дает лучший результат. Для сравнения метода Шатровского и его модификации, ошибки по управлению приведены в таблице. Поскольку важно не только минимизировать функционал качества, но и обеспечить стабильный горизонтальный полет, рассматриваются две ошибки: функционал .7 и модуль вертикальной составляющей скорости ракеты х4 в момент окончания управления Т. Из таблицы видно, что хотя функционал для модифицированного метода .7(7] минимизирован хуже, модуль вертикальной скорости |х4(Т)| на порядок меньше.
Рис. 4. Функции управляющего воздействия (й=0,28).
Х]2.............................
/л а л12 <
Х1--
Рис. 5. Фазовые траектории (}г=0,28).
Рис. б. Фазовые портреты (Ь=0,28).
Таблица
Ошибки по управлению
Траектория 3(1) ЫТ) I
Л = 0,2
0,0000 0,0000
Щ) 0,0078 0,0764
т 0,0093 0,0091
Л = 0,28
т 0,0043 0.0617
т 0,0002 0,0110
Для увеличения точности работы системы (выведения ракеты на нужную высоту) используем метод масштабирования желаемой высоты. В частности, для Л = 0,28 были получены результаты, представленные на рис. 4 — 6. Функции управляющего воздействия приведены на рис. 4, зависимости изменения высоты от дальности полета — на рис. 5, фазовые портреты в плоскости {х4, х2) — на рис. 6. Кривые х"12({), х"42(() соответствуют оптимальным фазовым траекториям х12^, хАг(1), — найденным по методу Шатров-ского, а х12(() и х42(0 — найденным по модифицированному методу. Функционалы и модули вертикальной скорости в момент окончания управления приведены во второй части таблицы. При масштабировании желаемой высоты, модифицированный метод позволяет вывести ракету на требуемую высоту так, что в дальнейшем высота изменяется незначительно (см. рис. 5). Функционал для модифицированного метода 7(7] на порядок меньше функционала для метода Шатровского, а модуль вертикальной скорости для модифицированного метода в 5 — 6 раз меньше модуля вертикальной скорости для метода Шатровского.
Из приведенного анализа можно сделать вывод о том, что при решении задачи Майера поиска близкого к оптимальному управления можно использовать мо-
дификацию метода Шатровского с использованием полиномиальной аппроксимации, учитывающей вторые производные функций модели объекта. Это в некоторых случаях поможет лучше минимизировать функционал задачи Майера и достигнуть более стабильного движения объекта после окончания управления.
Библиографический список
1. Шатровский Л.И . Об одном численном методе решения задач оптимального управления. // ЖВМ и МФ, 1962, № 3. - С. 488-491.
2. Афанасьев В.Н. Математическая теория конструирования систем управления. — М : Высшая школа, 2003. — С. 614.
3. Когут А.Т. Полиномиальная аппроксимация в некоторых задачах оптимизации и управления. — Омск: Изд-во ОмГУПС, 2003. - С. 244.
ЛАВРУХИН Андрей Александрович, аспирант кафедры «Автоматика и системы управления». КОГУТ Алексей Тарасович, кандидат технических наук, доцент кафедры «Автоматика и системы управления».