научная статья по теме ЧИСЛЕННЫЕ МЕТОДЫ СИНТЕЗА ИМПУЛЬСНЫХ УПРАВЛЕНИЙ ДЛЯ ЛИНЕЙНЫХ СИСТЕМ Кибернетика

Текст научной статьи на тему «ЧИСЛЕННЫЕ МЕТОДЫ СИНТЕЗА ИМПУЛЬСНЫХ УПРАВЛЕНИЙ ДЛЯ ЛИНЕЙНЫХ СИСТЕМ»

ИЗВЕСТИЯ РАИ. ТЕОРИЯ И СИСТЕМЫ УПРАВЛЕНИЯ, 2008, № 2, с. 50-56

ДИСКРЕТНЫЕ СИСТЕМЫ

УДК 517.977.54

ЧИСЛЕННЫЕ МЕТОДЫ СИНТЕЗА ИМПУЛЬСНЫХ УПРАВЛЕНИЙ

ДЛЯ ЛИНЕЙНЫХ СИСТЕМ*

© 2008 г. А. Н. Дарьин, А. Ю. Малакаева

Москва, МГУ Поступила в редакцию 18.04.07 г.

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

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

Решения задач импульсного управления искались в основном в классе программных управлений [4-6]. Применение методов динамического программирования [7, 8] дает возможность представить оптимальное значение вариации в виде решения квазивариационного неравенства типа Гамильтона-Якоби-Беллмана (Г-Я-Б) [9] и исходя из этого указать множество состояний, в которых совершается скачок, и величины этих скачков, т.е. найти синтез импульсных управлений. Такой подход также позволяет решать задачи, допускающие управления в виде производных обобщенных функций (см. [2]).

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

1. Постановка задачи. Рассмотрим задачу импульсного управления

J( и(•)) = Уаг и(•) — М, (1.1)

йх( г) = А (г) х (г) йг + В( г) йи( г), х(г0) = х0, х(гх + 0) = 0.

* Работа выполнена при финансовой поддержке РФФИ (грант < 06-01-00332), программы государственной поддержки ведущих научных школ РФ (грант < НШ-5344.2006.1) и научной программы "Развитие научного потенциала высшей школы" (проект < РНП 2.1.1.1714).

Здесь x(t) е Rn - фазовый вектор - функция ограниченной вариации, непрерывная слева и справа имеющая предел, U(0 е BV([t0, tj; Rm) - обобщенное управление, Var U( ■ ) - полная вариация

[t0, ti]

управления на отрезке [t0, tj, BV([t0, tj; Rm) - пространство функций ограниченной вариации со значениями в Rm. Матричные функции A(t) е Rn х n, B(t) е Rn х m непрерывны. Будем считать, что функция x(t), являющаяся решением (1.2), непрерывна слева при всех t. Конечный момент времени t1 фиксирован. Задача с правым концом, отличным от нуля (x(t1 + 0) = x1) может быть сведена к (1.1) - (1.2) заменой переменных.

Задача 1. Найти синтез управлений в задаче (1.1) - (1.2), т.е. указать множество J ç [t0, t1] х Rn состояний (t, x), в которых управление имеет импульс, и значение этого импульса в зависимости от состояния, т.е. функцию v(t, x) : J —»- Rm {0}. Предположим, что синтез управлений не допускает последовательных скачков в один момент времени: если (t, x) е J, то для точки x' = x + Bv(t, x) верно (t, x') е J. После изложения численных алгоритмов для задачи 1 будет указано, каким образом они могут быть применены к минимизации функционала типа Майера-Больца и к задаче с производными обобщенных функций (далее задачи 2 и 3 соответственно).

Задача 2. Найти синтез управлений (множество J и функцию v) для задачи минимизации функционала

J(и(■ )) = Var U(■ ) + ф(x(ti + 0))— inf,

[ t0. ti]

где заданная терминальная функция 9(x) - собственная, замкнутая, выпуклая [10].

Подробная постановка задачи для системы с производными обобщенных функций приводится в [2]. Считаем, что матричные функции A(t), B(t)

являются k раз непрерывно дифференцируемыми на интервале (а, в) з [г0,

Задача 3. Найти синтез управления - множество состояний X в которых происходят скачки, и значения импульсов каждого порядка v0(t, x), v1(t, x), ..., vк(t, x) в этих состояниях для задачи минимизации функционала

^ <U <■ )> = n * (§

inf

при условии (1.2). Здесь N* - сопряженная норма

N(y( t)) =

i

2„2

= тах (||¥(t)||2 + |'(t)|| + ... + 1 1Ук)(t)|| )

г е [г0, г1]

на пространстве Окт[г0, к раз дифференцируемых функций со значениями в Кт. При этом если (?, X) е Х то в окрестности момента ? управление имеет вид

dU< t) = ^ V ;< t, X )5< i)< t -?)

(1.3)

i = 0

2. Метод динамического программирования.

Напомним необходимые факты из [7, 8]. Функцией цены У(г0, г1) задачи 1 называется оптимальное значение вариации управления

У(г0, х0) = {3(и(■ ))| при условии (1.2)}.

и (■)

Она может быть представлена как [4]

<р, X(г 1, г)х>

V< t, X) = sup

-Г»'1

p е R

\\B < ■)< ti, ■)p||c[to, ti]

(2.1)

где X(t, т) - фундаментальная матрица, т.е. решение задачи Коши для матричного дифференциального уравнения дХ(/' т ) = A(t)X(t, т), Х(т, т) = I.

at

Функция цены V(t, x) является вязкостным решением квазивариационного неравенства типа Га-мильтона-Якоби-Беллмана

min{И(t' X' V„ Vx)' Я2(t' X' Vt' Vx)} = 0,

И (t' x) = Иj (t' X' Vt' Vx) = Vt + < Vx' A(t)x>,

H2 < t, X ) = H2 < t, X, Vt, Vx ) =

= min < Vx, B < t) u) + 1 = 1-|\bt < t) Vx

u е ^i

с начальным условием

(2.2)

V(ti, x) =

IB < t1)XI, x е imB; +^ иначе.

Здесь - единичная сфера в пространстве Кт с центром в нуле, символ © означает псевдооб-

ратную матрицу. В соответствии с (2.2) в любой позиции (t*, x*) имеем одну из двух возможностей: либо И1 = 0, и тогда можно выбрать dU(t*) = 0; либо И1 > 0, тогда обязательно И2 = 0, и управление должно совершить скачок в направлении -BT(t*)Vx, т.е. управление в окрестности этой точки имеет вид dU(t) = -aBT(t*) Vx5(t - t*). При этом величина скачка а определяется из условий

И2(t*' x*' -вBT(t*) Vx(t*' x*)) = 0, в e [0' a];

И1(t*' x*' -aBT(t*) Vx(t*' x*)) = 0.

3. Численные алгоритмы. Функция цены (2.1) является положительно однородной по аргументу x. Следовательно, ее можно представить в виде калибровочной функции

V(t, x) = min{a > 0 | a-1x e X1[t]}, (3.1)

где X1[t] - непустой выпуклый компакт. Поскольку X1[t] = {x|V(t, x) < 1}, то X1[t] - множество достижимости системы (1.2) в обратном времени из

точки x(t1 + 0) = 0 при условии VarU (■) < 1

[ t' tj]

Xj[t] = Xj(t; tj' 0) = = { x (t; tj + 0' 0| U )| Var (U( s ))< J},

s e [t' tJ]

здесь x = x(t; t1 + 0, 0 | U) - решение системы при управлении U с начальным условием x(t1 + 0) = 0. В силу положительной однородности функцию цены также можно представить в виде опорной функции непустого выпуклого компакта Z[t]

V(t' x) = p(x|Z[t]) = sup <x' p>.

p e Z[t]

Множество Z[t] будем называть полярным множеством. Описываемые численные методы основаны на аппроксимации множеств Xx[t] и Z[t] выпуклыми многогранниками.

3.1. Множество достижимости. Множество достижимости Xx[t] может быть представлено в виде выпуклой оболочки точек, достижимых одним импульсом единичной амплитуды [3]

XJ[t] = conv О О {X(t' т)B(т)u}. (3.2)

т e [t' tj] ||u|| = J

Внутреннюю аппроксимацию множества достижимости Xx[t] выпуклым многогранником можно получить, заменив в (3.2) отрезок [t, tj на конечное множество точек t = т0 < т < ... < % = tx и единичную сферу {||u|| = 1} на конечное множество единичных векторов uj, ..., uM (в случае m = 1 выбираем M = 2, u1 = -1, u2 = 1). Таким образом, сформируем множество

Xj [ t] =

= conv О О {Х( итЩт) u }с XJ [t].

te {т,... %} u e {^...um }

k

Применив к нему алгоритм построения выпуклой оболочки [11], получим набор из N граней. Каждая грань описывается п вершинами - линейно независимыми векторами х{, ..., х'п, у = 1, ..., N.

Опишем, каким образом можно вычислить верхнюю оценку для функции цены

у(г, х) = шт{а> 0|а-1 хе г]}. (3.3) Составим для каждой грани у выпуклой оболочки множества XX1 [ г ] матрицу

М: = (х{, ..., х}п) е Кпхп.

жен но базису x[, ..., xJn, при этом коэффициенты множество Z[i] может быть представлено в виде (см. [8])

Произвольный вектор х е Кп может быть разложен по базису х{, ..., х}п, при этом коэффициенты разложения вычисляются с помощью матрицы Му

п

х = ^к^, к = М- Ь

Замечание 1. В целях решения задачи синтеза необходимо вычислить множество Х1 [ г] для заданного набора моментов времени т0 < т < < ... < тК. При этом соответствующие выпуклые оболочки можно вычислять последовательно, воспользовавшись представлением

Х1 [т,--1 ] = еопу] (Х(т,--1,т)Х1 [т,-])и

u( U { B u )})k

u e {ui, ..., uM} J

3.2. Полярное множество. Полярное

x.

i = 1

Найдем номер j, для которого x е cone {х{, ..., xJn} -конусу. Последнее эквивалентно условию X, > 0, i = 1, ..., n. Рассмотрим точку y = Л-1х, Л = = У? =1 X, = <1, X), 1 = (1, ..., 1)Т. Поскольку

У?_ 1 (M-1 y= <1, M-1 y) = 1, то точка y лежит на

грани j. Следовательно, V(t, y) = 1. Воспользовавшись положительной однородностью функции цены, получаем

V(t, х) _ <(Mj1 )Т 1, х), Mj1 х > 0.

г[г] = п {Р\\\вт(т)хт(г,т)р\\ < 1}.

те [г,г!]

Зададим К + 1 моментов времени г = т0 < т < ... < < тк = г1 и М единичных векторов и1, ..., иМ е К™ (в случае т = 1 выбираем М = 2, щ = 1, и2 = -1), тогда

z [ t ]с z [ t ] =

П П {p| <p, X(t,T)B(t)u>< 1}.

те {т0...тх} u e {u0^uM}

(3.4)

Множество г [ г] - внешняя оценка полярного множества г[г], поэтому функция

У(t, x) = sup < x, p>

P e Z [ t]

(3.5)

Отсюда можно найти и градиент функции у (в тех является верхней оценкой для функции цены У(г, х).

точках, где он существует)

Vx(t, x) = (Mj1)T1, Mj1 x > 0.

В позиции (t, x) управление может иметь импульс, если выполнено условие (см. [8])

||bt(t)vj| > 1 ^ \\ßT(t)(M-1 )T i|| > 1,

при этом направление импульса u = -BT(t)( M-1 )T1. Найдем амплитуду импульса а, такую что импульс в момент t равен u = а u. Для этого потребуем, чтобы после скачка траектория системы пришла на границу грани j

а = max{a|M-1(x + aB(t)u > 0)}.

Значение а можно определить следующим образом. Пусть X = M-1 x, ц = M-1 B(t) u, тогда

а = min { -X; ц-1 |ц; < 0 }.

i = 1, ..., n

Мы использовали то же обозначение (V), что и в предыдущем разделе, поскольку при од

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком