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

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

ИЗВЕСТИЯ РАН. ТЕОРИЯ И СИСТЕМЫ УПРАВЛЕНИЯ, 2012, № 4, с. 14-25

= ОПТИМАЛЬНОЕ УПРАВЛЕНИЕ =

УДК 517.977.58

МЕТОД ПОСЛЕДОВАТЕЛЬНОГО УЛУЧШЕНИЯ ВТОРОГО ПОРЯДКА ДЛЯ ДИСКРЕТНЫХ УПРАВЛЯЕМЫХ СИСТЕМ © 2012 г. С. Б. Бадмацыренова, В. А. Батурин

Иркутск, Институт динамики систем и теории управления СО РАН Поступила в редакцию 24.05.11 г., после доработки 06.12.11 г.

Рассматривается алгоритм улучшения второго порядка для дискретной по времени задачи оптимального управления со свободным правым концом. Применяется подход к решению этой задачи на основе разложения по параметру конструкций метода, предложенного в [1]. Приводится новый алгоритм для таких систем.

Введение. В настоящее время разработано достаточно большое количество методов решения задач оптимального управления, в частности, и для дискретных управляемых систем [2—14]. Один из таких методов предложен в [1] — метод улучшения второго порядка, основанный на достаточных условиях оптимальности В.Ф. Кротова [15], который включает трудоемкую процедуру решения дискретного нелинейного векторно-матричного уравнения на каждой итерации алгоритма. Предлагается подход к упрощению с вычислительной точки зрения этой процедуры с помощью разложения основных конструкций метода по параметру. Данный подход применялся для непрерывных систем и опубликован в [16].

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

х(1 + 1) = /(1, X (г), и(г)), х(*0) = х0, г е Т = {^ ¿0 + 1.....Ь}, (1.1)

где функция х(1) принимает значения в евклидовом пространстве Я", и(1) е Я™, ? е Т. Функцию х(1) будем называть фазовой переменной или состоянием, и(1) — управлением. Множество пар (х(0, и(0), удовлетворяющих соотношению (1.1), будем называть множеством допустимых и обозначать Б. Определим функционал

¿1 -1

1(Х, и) = Г(х(¿1)) + /0(г, X(г), и(г)). (1.2)

г0

Под задачей оптимального управления для дискретных систем будем понимать задачу о поиске последовательности {(х/0, иДО)} с Б, на которой

1(х,(г), и,(г))^ Ш7.

в

Такую последовательность будем называть минимизирующей. Если на элементе (х*(0, и*(0) е Б

функционал I = 'тП, то х*(0 — оптимальная траектория, и*(1) — оптимальное управление.

в

2. Метод второго порядка для дискретных систем. Для решения поставленной задачи используются итерационные методы, где на каждой итерации решается задача улучшения: по заданным х1(1) и и1(1) находятся хп(?) и ип(0, такие, что !(хп, и11) < Дх1, и1). Согласно [1], решение задачи улучшения обеспечивается разложением функционала

к -1

ьа(X, и) = оа(X(г1)) - £ яа(г, X(г), и(г)),

где оа (X (г 1)) = а (^)) + ф( гь x( ^)) - ф( г(ъ X (г0)),

Г(X, х(X), и(X)) = ф(X + 1,/(X, х(X), и(X))) - ф(X, X(X)) - а/°(X, х(X), и(0) - ^А"1 '

|АИ = и - и1 (X), а е [ 0, 1 ],

до слагаемых второго порядка, а функция ф(Х, х) находится из условий, доставляющих отрицательное приращение функционала Ьа. В этой процедуре функция Кротова задается в линейно-

квадратичном виде ф(Х, х) = у'(Х)Ах + 1- Ах'а(Х)Ах, где у(Х) — п-вектор, а(Х) — п х п-симметрическая

матрица, Ах = х — х*(Х) (здесь и далее штрих — операция транспонирования). На множестве допу-

1 — а

стимых Б выполняется соотношение Ьа(х, и) = а/(х, и) +---— |Аи|2 и при а = 1 Ьа = I. В результате получен метод улучшения второго порядка для дискретных задач оптимального управления вида (1.1), (1.2), состоящий из следующих основных этапов.

1. Задается управление и*(Х) и из системы (1.1) находится х*(Х), вычисляется /(х1, и1) по формуле (1.2).

2. Задается параметр а е (0, 1]. Из системы

у(X) = на - (/>(X + 1 )/и + <„)(/>(х + 1 )/и + Нии - (1 - а)Е)-1 на, (2.1)

а(0 = /Ха(Х + 1/ + НХ - (/>(? + 1)/и + H1Жа{X + 1)/и + Нии - (1 - а)Е)-1 (/>(? + 1/ + Ни)', (2.2)

у( Х1) = -а (х'( Х1)), а( ^) = -а Ехх (х1 (^)) (2.3)

вычисляются у(Х) и а(Х), где На(Х, х(Х), у(Х + 1), и(Х)) = у'(Х + 1)/(X, х, и) — а/0(X, х, и), производные функции На подсчитываются в точке (X, х*(Х), у(Х + 1), и1(Х)).

3. Из системы х(Х + 1) = /(X, х(Х), и (X, Ах)), х(Х0) = х0, где и (X, Ах) = и1(Х) + Аи(Х, Ах),

А и (X, Ах) = -(/>(? + 1/ + НИи - (1 - а) Е)-1 х X [Ни + (них + /.'а(х + 1)/х)Ах], Ах = х(X) - х1 (X),

вычисляется хп(Х) и ип(Х) = иг(Х) + Аи(Х, хп(Х) — хх(Х)).

4. Сравниваются значения функционалов /(х11, и11) и /(х1, и1), если улучшения не произошло, то параметр а уменьшается и процедура повторяется, начиная с шага 2.

Наиболее трудоемкой процедурой является решение дискретного векторно-матричного уравнения (2.1)—(2.3) на каждой итерации алгоритма. При изменении параметра а процесс повторяется, что приводит к большим вычислительным затратам. Также от значения параметра зависит улучшение функционала на каждой итерации. Рассмотрим задачу выбора параметра а на каждой итерации приведенного метода.

Согласно алгоритму, функции у, а, и зависят от а, что подчеркнем, указав их аргументы: и (X, х, у(Х + 1, а), а(Х + 1, а), а). Система уравнений и функционал для нахождения нового состояния х(Х) имеют вид

х(X + 1) = /(X, х(X), И(X, х(X), у(X + 1, а), а(X + 1, а), а)), х(Xo) =о,

X! - 1

I = Г(х(Xl)) + 0(X, х(X), И(X, х(X), у(X + 1, а), а(X + 1, а), а)).

Введем обозначения:

/(X, х(X), И(X, х(X),у(X + 1, а), а(X + 1, а), а)) = g(X, х(X), а),

/°(X, х(X), И(X, х(X), у(X + 1, а), а(X + 1, а), а)) = g0(X, х(X), а).

Тогда получаем следующую одномерную задачу минимизации вида:

х(t + 1) = g(t, x(t), а), x(t0) = Xo, (2.4)

ti -1

/(а) = F(x(t1)) + У g°(t, x(t), а) ^ min, (2.5)

а

to

где а e [0,1].

3. Вывод формул для нахождения функций ya(t, а) и oa(t, а). Поскольку параметр а скалярный, то на итерациях алгоритма можно применять процедуру одномерной минимизации. Однако эта процедура потребует значительных вычислительных ресурсов, поскольку при каждом подсчете

функции I (а) потребуется рассчитывать систему (2.1)—(2.3). Так как функции вспомогательной системы зависят от параметра а, на что указывают их аргументы у(t, а) и a(t, а), то их можно рассчитывать с помощью тейлоровской аппроксимации первого порядка по параметру а:

у( t, а) = у( t, а *) + уа( t, а* )(а - а *), ст( t, а) = ст( t, а *) + ста( t, а * )(а - а*),

избежав тем самым многократного расчета дискретных цепочек (2.1)—(2.3). Функции ya(t, а) и aa(t, а) являются производными функций y(t, а) и a(t, а) по а и находятся из системы, полученной с помощью дифференцирования системы (2.1)—(2.3) по а. Имеем

Уа(t, а) = -Г -

аа

-(/>(t + 1, а/ + Hu)](fu't + 1, а)/и + HUu - (1 - а)E)-1 H + .а а _

+ (/>( t + 1, а/ + Hu)(/>( t + 1, а/ + Huu - (1 - а) E)-1 х

х (fXt + 1, а/ + Huu - (1 - а)E)l(/>(t + 1, а/ + Huu - (1 - а)E)-1 H -_d а J

-1 jh

- (f>(t + 1, а)fu + H)(/>(t + 1, а/ + Hu - (1 - а)E)- ------,

аа

где производные функции Ha находятся в точке (t, xJ(t), y(t + 1, а), ul(t)), или

Уа(U а) = На + HVУа(t + 1, а) - (/>а(t + 1, а)/и + -Tua + HuVУа(t + 1, а)) Х

х (/>(t + 1, а/ + Huu - (1 - а)E)-1 H + + (/>(t + 1, а)fu + Hu)(/>(t + 1, а/ + Hm - (1 - а)E)-1 х Х (/Х(t + 1, а)Л + —ua + HuVУа(t + 1 а) + E) Х х (/>(t + 1, а/ + Huu - (1 - а)E)-1 H - (/>(t + 1, а/ + Hu) х х (/>(t + 1, а/ + Huu - (1 - а)E)-1 (Ha + Н¥Уа(t + 1, а)).

Обозначив H(t, x(t), ya(t + 1, а), u(t)) = у ä (t + 1, а) / (t, x, u) — /0(t, x, u), найдя производные от функции Ha и выполнив ряд преобразований, получим

Уа( t, а) = Hx( t, х( t), Уа( t + 1, а), и( t)) - (/>a( t + 1, а/ + Hxu( t, x\ t), Уа( t + 1, а), u1 (t)) х

х (/u'a(t + 1, а/ + Hm - (1 - а)E)-1 H +

+ (/«a(t + ^ + + ^ + Hu- (1 - а)E)-1 х (3.1)

х (/>a(t + 1, а/ + Huu(t, x1 (t), Уа(t + 1, а), u1 (t)) + E) х

х (/>(t + 1, а/ + Ни - ( 1 - a)E)-1H - (/>(t + 1, а/ + Ни) х х (/>(t + 1, а)/, + Ни - ( 1 - а)E)-4(t, xJ(t), Va(t + 1, а), u(t)). Аналогичным образом дифференцированием уравнения (2.2) по а находим

CTa(^ а) = f>a(t + 1,а/ + Н**(t, t), Va(t + 1, а), t)) - OXXt + 1,а)/и +

+ Hu(t, x1 (t), Va(t + 1, а), u\t)))(f'a(t + 1, а/ + Нт - ( 1 - а)E)-1 х х ОХt + 1 а)/и + НиУ + ^Xt + 1, а)/и + Ни)(/>(t + 1, а)/и + Ни -

- ( 1 - а)E)-1 (f'aa(t + 1, а/и + Ни(t, x\t), t + 1, а), и1 (t)) + E) х (3.2) х (/>(t + 1, а)/и + Hm - ( 1 - а)E)-1 (/>(t + 1, а/ + Ни)' -

- (/>(t + 1, а/ + Ни)(/>(t + 1, а/ + Ни - ( 1 - а)E)-1 х х f>a( t + 1, а/ + НХи( t, x1 ( t), Va( t + 1, а), и( t))]'. Дифференцируя граничные условия (2.3), имеем

Va( ^ а) = -Fx(x'( t1)), (33)

CTa(t1, а) = -Fxx(xI(t1 )).

Таким образом, векторно-матричная система (3.1)—(3.3) — линейна относительно функций ya(t, а) и aa(t, а), при использовании которой можно получить приближенное представление функций y(t, а) и a(t, а) без многократного расчета системы (2.1)—(2.3).

4. Алгоритм улучшения. Полученный подход позволяет создать новый алгоритм улучшения второго порядка. Преимуществами этого алгоритма являются: 1) наличие выбора значения параметра с помощью решения задачи одномерной минимизации; 2) быстрый расчет y(t, а) и a(t, а).

Шаг 1. Задаем управление uJ(t), из системы (1.1) находим xJ(t).

Шаг 2. Задаем значение параметра: а = а1.

Шаг 3. Из системы (2.1)—(2.3) при а1 вычисляем y(t, а1) и a(t, а1).

Шаг 4. Из уравнений (3.1)—(3.3) находим ya(t, а1) и aa(t, а1).

Шаг 5. Из дискретной цепочки x(t + 1) = f(t, x(t), u1 + Au(t, Ax, а)), x(t0) = x0, где

A и ( t, Ax, а) = -(/>( t + 1, а/ + Ни - ( 1 - а) E)-1 х

х [Н + (Н* + /Xt + 1, а/)Ax], Ax = x - x1,

при этом производные функции Ha находятся в точке (t, xJ(t), y(t + 1, а), uJ(t)) и

у(t, а) = у(t, а1 ) + ya(t, а1 )(а - а1 ),

ст(t, а) = ст(t, а1 ) + aa(t, а1 )(а - а1 ),

определяем xn(t, а), un(t, а) = uJ(t) + Au(t, xn(t) — xJ(t), а), параметр а выбирается из условия одномерной минимизации /(а) = I(xll(t, а), un(t, а)) по а е (0, 1].

Шаг 6. Если I(xn, u11) < I(xl, u1), то (x11, u11) принимаем за новое приближение, в противном случае величина а1 уменьшается и процесс повторяется с шага 3.

5. Алгоритм улучшения с a^art = 0. Рассмотрим случай, когда начальное(стартовое) значение параметра равно нулю. Покажем, что при а1 = 0 система (2.1)—(2.3) имеет тождественные нулю решения y(t, 0) = 0 и a(t, 0) = 0. Граничные условия на правом конце равны нулю y(t1, 0) = a(t1, 0) = 0, и слагаемые системы

Ни = />(t +

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

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