Применение метода позиционной оптимизации для многопрограммной стабилизации билинейных систем

Сер. 10. 2009. Вып. 3

ВЕСТНИК САНКТ-ПЕТЕРБУРГСКОГО УНИВЕРСИТЕТА

УДК 517.977 + 519.71

Н. В. Смирнов, И. В. Соловьева

ПРИМЕНЕНИЕ МЕТОДА ПОЗИЦИОННОЙ ОПТИМИЗАЦИИ ДЛЯ МНОГОПРОГРАММНОЙ СТАБИЛИЗАЦИИ БИЛИНЕЙНЫХ СИСТЕМ

1. Введение. Постановка задачи. Задача стабилизации программных движений управляемых динамических систем является одной из основных в современной математической теории управления. Наиболее распространенный подход при ее решении состоит в построении управлений вида обратной связи различных типов: непрерывного, дискретного, релейного [1, 2]. Задача многопрограммной стабилизации была впервые сформулирована В. И. Зубовым в работах [3, 4]. В них рассмотрены проблема представления правых частей систем дифференциальных уравнений, имеющих наперед заданное конечное семейство решений, а также задача синтеза управлений, которые реализуют заданную совокупность программных движений и обеспечивают их асимптотическую устойчивость по Ляпунову. В [4] особое внимание уделяется представлению таких управлений в линейных стационарных управляемых системах. При этом полученные результаты иллюстрируются на задаче управления механическими системами, описываемыми уравнениями Лагранжа второго рода, и задаче управления движением заряженных частиц в электромагнитном поле.

В дальнейшем результаты В. И. Зубова были распространены на класс билинейных систем [5, 6]. Следуя этим работам, рассмотрим билинейную нестационарную управляемую систему вида

где x - n-мерный вектор фазового состояния; ui,... ,ur - скалярные управления; A(t), Bj(t), i = 1,... ,r, - вещественные, непрерывные (n х п)-матрицы с ограниченными при t ^ 0 элементами; F(t) - вещественная, непрерывная вектор-функция, заданная при t € [0, +го).

Введем в рассмотрение вектор управлений u = (ui,...,ur)T. Предположим,

что для системы (1) построены программные управления ui(t),...,UN(t) в классе непрерывных и ограниченных при t ^ 0 функций, а также соответствующие им программные движения xi (t),... ,xn(t). Число программных движений N не связано с размерностью системы (1) и размерностью пространства управлений. В данной работе

Смирнов Николай Васильевич — доктор физико-математических наук, профессор кафедры моделирования экономических систем факультета прикладной математики—процессов управления Санкт-Петербургского государственного университета. Количество опубликованных работ: 75. Научные направления: теория устойчивости, математическая теория управления, управление макроэкономическими системами. E-mail: nvs_v@mail.ru.

Соловьева Инна Владимировна — аспирант кафедры моделирования экономических систем факультета прикладной математики—процессов управления Санкт-Петербургского государственного университета. Научный руководитель: проф. Н. В. Смирнов. Количество опубликованных работ: 4. Научное направление: математическая теория управления. E-mail: isolovyeva@mail.ru.

© Н. В. Смирнов, И. В. Соловьева, 2009

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

Задача многопрограммной стабилизации состоит в том, чтобы для системы (1) построить управление и = и(х,Ь), которое реализует заданные программные движения х^(Ь),...,х^(Ь) и обеспечивает их асимптотическую устойчивость по Ляпунову. В [6] такое управление построено в виде

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

Для управления (2) и скалярных функций (3) выполнены следующие очевидные тождества:

В силу этих свойств, система (1), замкнутая управлением (2), (3), имеет заданные программные движения хі(і),... (і), т. е. будет двигаться по одному из них в случае

точной установки соответствующих начальных данных.

Указанные свойства имеют место, поскольку многопрограммное управление (2), (3) построено в виде интерполяционного полинома Лагранжа-Сильвестра. При этом матрицы коэффициентов обратных связей С;(і) должны быть построены в результате решения задач стабилизации вспомогательных линейных нестационарных систем [6] по методу, предложенному в [7].

Здесь следует особо отметить, что решение задач стабилизации в нестационарных системах затруднительно в плане практической реализации, потому в настоящей работе предлагается модифицировать метод построения многопрограммных управлений. Основная задача состоит в том, чтобы, отказавшись от интерполяционного полинома Лагранжа-Сильвестра как инструмента синтеза управления (2), (3), заменить явную обратную связь с коэффициентами С;(і) на технологию стабилизации объекта в режиме реального времени на основе метода позиционной оптимизации. Теоретические основы данного метода изложены в [8]; при этом он хорошо зарекомендовал себя даже при решении задач стабилизации нелинейных систем [9].

Г

х (і) = Р; (і)Х (і) + F(і), Р;(і) = А(і)+^ В4 (і)Щі(і).

і=1

где

(Ху-Х,)2

^Р;

и(х; (і),і) = и; (і); р; (хе(і),і) = 0,в = Р; (х; (і),і) = 1.

2. Представление многопрограммного управления. Для решения поставленной задачи будем строить многопрограммное управление в следующем виде:

к К (х(і) — х (і))2 14

ит

;=і а=1,а=;-(х;(і) х(і)) ;=1

где, как и прежде, и (Ь), х^ (Ь) - пары программных управлений и соответствующих программных движений. Индекс т означает «многопрограммное» и введен, чтобы в дальнейшем различать управления (2) и (4).

Управление ит(х,Ь) вида (4), как и многопрограммное стабилизирующее управление (2), (3), обладает свойством ит(х^ (Ь), Ь) = и (Ь), т. е. обеспечивает замкнутой системе (1), (4) заданные программные движения х^(£), j = 1, Ж, но в отличие от него не гарантирует их асимптотическую устойчивость. При этом следует отметить, что представление (4) гораздо проще, чем (2), (3), и не требует построения матриц коэффициентов усиления обратных связей Cj(Ь).

Рассмотрим произвольное хк(Ь) из исходного семейства х\(Ь),... ,хN(Ь) и построим для него систему в отклонениях. Для этого в системе (1) введем новые переменные

Ук

Мг ^т*

где птъ(х(Ь),Ь) - компоненты вектора ит(х,Ь). Из формул (5), (6) следует

х = Ук

щ=щ^) + итг{ ук

Для вектора отклонения ук

' г=1 ' ' г=1 '

Для выделения в правой части системы (9) линейных и нелинейных слагаемых относительно вектора ук проанализируем свойства функций pj (ук + хк, Ь), которые участвуют в представлении управлений итг(ук + хк,Ь) согласно (4). Отсюда

N

(ук + хк - Хs)2

, . Т Г \У к і Лк -

РіІУк+Хк,і)= И

о 1 о —А о ' • ^ '

і = • \х; ~ хэ)2

в = 1,в=;

При і = к функции р; (у к + хк,і) нелинейны по компонентам вектора у к. Если і = к, то имеет место представление [5]

Рк

і

8=1,э = к

в котором Нк (ук) - скалярная функция, являющаяся суммой слагаемых, порядок которых по компонентам вектора у к не меньше двух.

С учетом (4), (10) получаем

( N Хк - X )ук \ N

итг{ук + хй,г) = икА 1 + 2 ^2 к _ 3 к + ьк(ук) ] + 53 из^)Рз{Ук + хк^).

' я = 1,я = к (Хк Х ) ' з = 1,3 = к

Используя данное представление, систему (9) можно записать в следующем виде:

ук = Рк&)ук + Як&)ч + в*

4=1 '

Здесь

Г

Рк (Ь) = А(Ь) + Е Вг(г)иЫ + Вк (Ь),

1=1

при этом столбцы

г N

ь?(» = 2^2в^)хкиы ^2 ^Ы_ Х31\2' г=1^'

- 1 1 /7

г=1 э=1 ,э = к

V - вектор управлений с компонентами ^1,...,^г , а (п х г)-матрица С^к (Ь) имеет вид ^к(Ь) = (В1(Ь)хк, , Вг (Ь)хк); наконец, нелинейные слагаемые в (11) можно представить так:

н*(у*,*) = £в4(*)(им(2 Е {Т _Ха)? +МуО) +

„•-1 V У (Хк Ха) 7

+ Е изг(г)Рз (у к + Хк,г)\ у к+

3 = 1,3 = к

г ( N А

+ В )( иЫНк (ук)+ ^2 и3г(Ь)рз (ук + Хк ,г)\ Хк

1 = 1' 3 — 1 3 = к '

Явное представление нелинейных слагаемых (12) позволяет перейти ко второму этапу решения задачи.

3. Метод позиционной оптимизации в задаче многопрограммного управления. Для многопрограммной стабилизации билинейной системы (1) будем использовать метод позиционной оптимизации [9, 10]. Он позволяет находить текущее значение оптимального управления (позиционного решения специальной оптимизационной задачи) в режиме реального времени.

Зададим интервал времени, на котором решается задача многопрограммного управления Т = [Ь*,Ь*], Ь* < Ь* < +го, и шаг дискретности Н = (Ь* — Ь*)/К, где К - целое число. Определим функцию у(Ь), Ь € Т, как дискретное управление у(Ь) = у(Ь* + кН) при Ь € [£* + кк, + (к + 1)/г), к = 1,К — 1. В этом классе дискретных управлений рассмотрим задачу оптимального управления для системы в отклонениях (11), (12):

г

" Ь*

Г Ь

Бт(г) = шт ^2 [ I Щ(Ь) I *,

Ук = Рк

4=1 '

Ук (І*) = ъ, Ук (Ь* ) = (0,...,0)т,

|гл;(і)|<ь, * = і,г, г ет = [и,г*].

Будем обозначать через

«*

оптимальное программное управление в задаче (13) для позиции (т, ъ), где \к(т) - множество возможных начальных значений ъ, если эта задача имеет решение при фиксированном т, ъ = Ук(т), Ук(т) Є Ук(т), Ь Є Т(т) = [т,Ь*]. Функцию (14) назовем [9, 10] оптимальным управлением с обратной связью или позиционным решением задачи (13).

Отметим, что задача (13) нелинейна, как и система в отклонениях (11), (12). Потому нужно построить вспомогательную линейную задачу, используя аппроксимацию нелинейного слагаемого системы (11), (12). Для этого разобьем фазовое пространство на подпространства 0.^ в зависимости от знаков координат фазового вектора у^, 3 = 1 ,п- В данном случае любая граница для двух областей описывает-

ся одним из условий укз =0, j = 1, п.

Кусочно-линейная аппроксимация должна проходить через точку у к = (0,...,0). Для обеспечения такого условия в каждом 0^ будем приближать нелинейное слагаемое системы (13) функцией 5^1=і сд*"У(^) + к{ґ), где неизвестные векторы с^, г = 1, г,

и (п х п)-матрицы = (Ід,...,1зп) подлежат определению. Учитывая, что

для внутренней границы двух областей 0^, 0Я, на которой некоторая компонента фазового вектора становится равной нулю укт = 0, условие равенства двух линейных аппроксимирующих функций можно записать в виде

г п г п

'^2СзіУі(Ь) + Е ізіУка(ї) =

щ () + £

ІзіУкі(ь).

і=1 1=1,1=т і=1 1=1,1=т

Неизвестные коэффициенты искомых функций с^,, определяем по методу наимень-

ших квадратов

Еі / (н(Ук ,Ь) + Г Е Ві (Ь)щ(Ь)\ У к - £ СзіУі(г) - І У к (г)^ 3 й, Кі=1 ' і=1

шт.

Суммирование здесь ведется по числу областей разбиения.

Вспомогательная линейная задача в классе дискретных управлений имеет вид

г 1

ВТ (ъ) = ШІП £ / І уі(г) I ЗЬ,

У к =

і=1

3 = {3 \Ук(т) Є О,}, у к{т)=ъ, ук{Ь*) = (0, ...,0)5 \уі(і)\ < Ь, і=1,г, і Є [т,Ґ].

Функцией

vi

обозначим дискретное оптимальное программное управление в задаче (15). Будем последовательно находить компоненты вектора у*(Ь). К моменту т + Н = Ь* + кН определены первые к компонент вектора 'о*(Ь): 'и*(Ь*),'и* (Ь* + Н),... ,у* (Ь* + (к — 1)Н). Текущим положением системы (13), в котором она оказалась под действием этих управлений в момент т + Н, является у^ (т + Н). Чтобы получить следующую компоненту

V* (І) = у*(т + Н) в момент т + Н = Ь* + кН, снова решим вспомогательную задачу, но с новыми начальными условиями, и из нее найдем vi(т + Н, у^ (т + Н)). Имеем

На следующем интервале [т + Н,т + 2Н) в задачу (13) подставим первую компоненту vi(т + Н, у^(т + Н )). Реальная позиция, в которой оказалась система (13) в момент т + Н ук (т + Н) отличается от оптимальной позиции, в которой оказалась бы система

состояние системы, в котором она находилась в предыдущий момент времени, поэтому чтобы скорректировать значения остальных компонент го0(т + Н, у* (т + Н )) аналогично решается вспомогательная задача (16) с новыми начальными условиями.

В заключение отметим, что проведенные в п. 2, 3 рассуждения являются, по сути, конструктивным доказательством следующей теоремы.

Теорема 1. Если заданные программные движения х\(1),...,х^(^ системы (1) различимы при £ ^ £0 ^ 0, т. е.

то существует реализующее их многопрограммное управление (4), при этом управление (8) обеспечивает стабилизацию каждого из них в режиме реального времени.

4. Пример. Для иллюстрации предложенного подхода рассмотрим задачу синтеза многопрограммного управления для двух пар программных управлений и программных движений и^), хх^) и и2(£), Х2(£), т. е. при N = 2. Управление (4) будет иметь вид

Далее для первого программного движения х\(1) построим систему в отклонениях, т. е. в формулах (5)—(12) будем полагать к = 1. Получим

г

і=1

З = {з ІУй(г + Ь) Є О,}, Ук{т + Ъ) =у*к{т + Ъ), ук(Ґ) = (0,...,0)т, < Ь, і=1 , г, іє[т + к, і*}.

(16) в момент т + Н у10(т + Н). На каждой следующей итерации учитывается реальное

ІПІ IIX(Ь) — X (Ь)|| > ° і = з-,

пт(х(Ь),Ь) = П1(Ь)р1 (х(Ь),Ь) + П2(Ь)р2(х(Ь),Ь),

где

Р1 (у 1 + Х1) = 1 + 2

(хі-х2)уі у\

__ \9 ' _

(Х1 — Х2)2 (Х1 — Х2)2’

(Х1 — Х2 )2 (Х1 — Х2 )2

В результате система (11), (12) для к = 1 примет вид

У1 = Р1 (Ь)У1 + Ql(Ь+ ( £ Ві(Ь^і(Ь)\ У1 + Н1 (У1 ,Ь).

;=1

Здесь

Р1 (Ь) = А(Ь)+£ Ві (Ь)пи (Ь) + В1 (Ь), і=1

при этом столбцы матрицы В1

ьіт = 2^в,тт^і>(МІ)_хМ)2

і=1

V - вектор управлений с компонентами ,...,уг , а (п х г)-матрица (£) имеет вид Q1 (£) = (Вх (£)хх,..., Вг (Ь)х^. Наконец, нелинейные слагаемые можно записать в следующей форме:

Н

г /

1 (У1,Ь) = £Ві(ЬА П1і(Ь){2

і=1

(Х1 — Х2 )уі У2

+

+ п2і

У12

(Х2 — Х1 )2

У1 +

і=1

(Х1 — Х2 )2

(Х2 — Х1 )2

Х1.

Численная реализация. Для проверки работоспособности предложенного метода синтеза многопрограммных управлений в среде МаНаЪ была написана программа. Приведем результаты тестового примера для системы (1) второго порядка с постоянными коэффициентами при N = п = г = 2. Коэффициенты системы

А=

5 4

12

В1 =

2 0 2 2

В

2

4 4 0 4

Г

—8

3

Рис. 1. Аппроксимация нелинейной части системы в отклонениях

0.5

0-

0

*>12

0.4 0.8 1.2

б

1.6

Рис. 3. Дискретные стабилизирующие управления уц

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

Х1 =

-32

-1

Х2 =

-4

1

которые обеспечиваются программными управлениями

( -1, 84 \ ( -0, 67

U1 Д -0, 37 ) , U2 Д -1, 09

Для аппроксимации нелинейных слагаемых системы в отклонениях разобьем пространство на области Qj, j = 1,4, в зависимости от знаков уи^ i = 1,2. Результаты аппроксимации приведены на рис. 1.

Для перевода системы (1), (17) из начальной точки хо = (-1, 2) в положение равновесия xi за время T =2 построено дискретное стабилизирующее управление vi с компонентами \vu | ^ 1. Движение системы под действием этого управления изображено на рис. 2. На рис. 3, а, б приведены графики дискретных стабилизирующих управлений vii и vi2 соответственно.

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

в разных классах управляемых систем. Например, в [11] предложены методы построе-

ния программных управлений в квазилинейных системах, а в статье [12] рассмотрена исключительно актуальная задача стабилизации плазмы. В обоих случаях представляет интерес задача многопрограммного управления, поскольку для систем управления, функционирующих в реальных условиях эксплуатации, свойство многопрограмм-ности является дополнительным преимуществом.

Литература

1. Зубов В. И. Лекции по теории управления. М.: Наука, 1975. 496 с.

2. Зубов В. И. Математические методы исследования систем автоматического регулирования. Л.: Изд-во Ленингр. ун-та, 1974. 336 с.

3. Зубов В. И. Интерполяция систем дифференциальных уравнений // Докл. АН СССР. 1991. Т. 318, № 1. С. 28-31.

4. Зубов В. И. Синтез многопрограммных устойчивых управлений // Докл. АН СССР. 1991. Т. 318, № 2. С. 274-277.

5. Smirnov N. V., Smirnova T. E. Stabilization of programmed motions family of the bilinear system in the case of r-dimensional control // Proc. of the fifth Intern. workshop “Beam Dynamics and Optimization (BDO’98)”. St. Petersburg, Russia, June 29 - July 3, 1998. St. Petersburg, 2002. P. 131-134.

6. Смирнов Н. В., Смирнова Т. Е. Синтез многопрограммных управлений в билинейных системах // Прикл. математика и механика. 2000. Т. 64, № 6. С. 929-932.

7. Смирнов Е. Я. Стабилизация программных движений. СПб.: Изд-во С.-Петерб. ун-та, 1997. 307 с.

8. Альсевич В. В., Габасов Р., Глушенков В. С. Оптимизация линейных экономических моделей. Статические задачи. Минск: Изд-во Белорус. гос. ун-та, 2000. 210 с.

9. Габасов Р., Кириллова Ф. М., Ружицкая Е. А. Демпфирование и стабилизация маятника при больших начальных возмущениях // Изв. АН. Сер. Теория и системы управления. 2001. № 1. С. 29-38.

10. Балашевич Н. В., Габасов Р., Кириллова Ф. М. Численные методы программной и позиционной оптимизации для линейных систем // Журн. вычисл. математики и мат. физики. 2000. Вып. 40, № 6.

С. 838-859.

11. Демидова А. М., Квитко А. Н. Решение граничной задачи для квазилинейных управляемых систем // Вестн. С.-Петерб. ун-та. Сер. 10: Прикладная математика, информатика, процессы управления. 2006. Вып. 1. С. 140-147.

12. Макеев И. В. Синтез систем стабилизации плазмы с учетом требований к их динамическим и робастным свойствам // Вестн. С.-Петерб. ун-та. Сер. 10: Прикладная математика, информатика, процессы управления. 2008. Вып. 3. С. 63-70.

Статья рекомендована к печати проф. А. П. Жабко. Статья принята к печати 5 марта 2009 г.