Автоматика и телемеханика, № 1, 2015
Технические средства в управлении
© 2015 г. Р. ГАБАСОВ, д-р физ.-мат. наук (Белорусский государственный университет, Минск), Ф.М. КИРИЛЛОВА, д-р физ.-мат. наук (Институт математики НАН Беларуси, Минск), ВО ТХИ ТАНЬ ХА (Белорусский государственный университет, Минск)
ОПТИМАЛЬНОЕ УПРАВЛЕНИЕ В РЕАЛЬНОМ ВРЕМЕНИ МНОГОМЕРНЫМ ДИНАМИЧЕСКИМ ОБЪЕКТОМ1
Рассматривается задача оптимального управления в реальном времени линейным динамическим объектом в классе дискретных векторных управляющих воздействий с параллелепипедными ограничениями. Описываются методы оптимального управления нестационарными и стационарными объектами, основанные на быстрых двойственных алгоритмах коррекции программных решений. Результаты иллюстрируются на динамических объектах 4-го и 8-го порядков с двумерными управляющими воздействиями.
1. Введение
Синтез оптимальных систем - центральная проблема теории управления [1, 2]. В классический период развития этой теории преобразование текущей информации (замыкание объекта управления) в управляющие воздействия осуществлялось с помощью связей (прямых, обратных, комбинированных), описываемых в формульном виде. Связи (в основном линейные) допускали реализацию существующими тогда техническими средствами и позволяли строить аналоговые системы управления. Классическим методом синтеза оптимальных систем является динамическое программирование [3], при котором оптимальные обратные связи строятся (в общем случае) в табличной форме.
С созданием и бурным развитием ЭВМ появилась возможность не искать связи в формульном виде и не табулировать их, а необходимые для управления текущие значения связей вычислять в цифровых системах по ходу каждого процесса в режиме реального времени. Такой подход особенно актуален при синтезе оптимальных систем, где оптимальные связи чрезвычайно сложны и трудно реализуемы известными методами.
Структура работы. В разделе 2 дается постановка линейной задачи оптимального управления в классе дискретных управляющих воздействий и
1 Работа частично финансируется Белорусским республиканским фондом фундаментальных исследований (проект Ф12Р-042).
осуществляется редукция этой задачи к интервальной задаче линейного программирования (ЛП). В разделе 3 описываются основные элементы динамического аналога двойственного метода ЛП и формулируется критерий оптимальности опоры (основного понятия метода). Двойственный метод построения оптимальных программных решений (программ) описан в разделе 4. В разделе 5 содержатся определения оптимальной обратной связи и реализации оптимальной обратной связи в конкретном процессе управления. Приведен алгоритм реализации позиционного решения в реальном времени (раздел 6). Для ускорения вычисления текущих программ предлагается процедура распараллеливания (раздел 7). В случае оптимального управления стационарным объектом в реальном времени получены рекуррентные уравнения, позволяющие избежать операции интегрирования дифференциальных уравнений в процессе управления, и описан метод "разновесов" (раздел 9). Результаты численных экспериментов содержатся в разделах 8 и 10.
Цель работы - описать принципиальный метод оптимального управления в реальном времени многомерными линейными динамическими системами.
2. Постановка задачи
Пусть Т = [**,**] - конечный промежуток времени; Т (т ) = [т, **]; Н = (** — ¿*)/Х - период квантования; N > 1 - натуральное число; Т^ = = {**,** + Н,..., ¿* — Н}; ТЦт) = {т,т + Н,...,** — Н}, Т£ = {**,** + Н,...,т}, т € Т£; и = {и € Мг : и* ^ и ^ и*}; А(*) € Мгахга, В(*) € Мгахг, * € Т, - кусочно-непрерывные функции; с € Мга; $*,$* € Мт; Н € Мтхга, Н^) € Мга - совокупность элементов г-й строки матрицы Н, г € I = {1, 2,... , т}; X* = {ж € Мга : д* ^ Нж ^ $*}; € Мга - известное начальное состояние объекта; 7 = = {1, 2,... ,г}.
Определение 1. Функция и(*) € Мг, * € Т, называется дискретной (с периодом квантования Н), если и(*) = и(т), * € [т, т + Н[, т €
В классе дискретных управляющих воздействий и(*), * € Т, рассматривается задача оптимального управления динамическим объектом:
с'ж(**) — тах; ж = А(*)ж + В(*)и, ж(**) = ж*; (1) ж(**) € X*; и(*) € и, * € Т,
где ж = ж(*) € Мга - состояние объекта в момент времени и = и(*) € Мг -значение управляющего воздействия в момент времени
Определение 2. Управляющее воздействие и(*), * € Т, назовем доступным, если и(*) € и, * € Т.
Каждому доступному управляющему воздействию соответствуют единственные траектория ж(*), * € Т, и выходной сигнал г = Нж(**) объекта управления (1).
Определение 3. Доступное управляющее воздействие и(*), * € Т, будем называть программой, если имеет место включение ж(**) € X*.
Определение 4. Программа и0(*), * € Т, называется оптимальной (программным решением задачи (1)), если на соответствующей ей траектории ж0(*), * € Т, выполняется равенство с'ж0(**) = тахис'ж(**).
С помощью формулы Коши [4] задача (1) сводится к интервальной задаче ЛП:
У^ ch(tf)u(tf) — max; ^eTh
(2) g* < Ф(£*К Dh(tf)u(tf) < g*;
tfeTh
u* < u(tf) < u*, tf e Th. Здесь ch(tf) = (chj(tf), j e J)' = j/+h^(0)(s)B(s)ds; Dh(tf) = (dhj(tf), j e J) = = ( j e ^ = адвда, tf e Th; *(t)=( ^f) , t e T;
■0|O)(t) = c'$(í),^'i)(í) = h(i)$(í), i e I, t e T; $(t), t e T, - решение уравнения Ф = -$A(í), $(t*) = E.
Предлагаемый метод построения программного решения задачи (1) представляет собой динамический аналог двойственного метода [4, 5]. Приведем основные элементы этого метода.
3. Опора. Сопровождающие элементы
Из множеств I и S = J х Th = {{j, tf}, j e J, tf e Th} выделим произвольные подмножества 1оп С I, Son С S с одинаковым количеством элементов: |1оп| = |Son|. Составим квадратную матрицу Don = D(Ion,Son) = ( dhij (tf), {j,tf}e So,
V i e Ion
Определение 5. Пара Kon = {Ion,Son} называется опорой задачи (2), если det Don = 0.
В случае Ion = 0 и Son = 0 пустое множество Kon = 0 - (пустая) опора по определению.
Опору Kon сопровождают:
1) вектор Лагранжа v = (v¿, i e I) = (von,vH = 0), von = (v¿, i e Ion), vH = = (vi, i e IH = I \ Ion): опорная компонента von удовлетворяет уравнению von Don = con, где Con = (chj (tf), {j, tf} e Son). Если Kon = 0, то von = 0;
2) копрограмма ¿h = (¿hj(tf), {j, tf} e S) = (¿on = 0,¿h), ¿on = (¿hj(tf), {j, tf} e e Son), ¿H = (¿hj(tf), {j, tf} e SH = S \ Son): неопорные компоненты копро-
граммы ¿н равны ¿hj(tf) = Chj(tf) - ^(¿hj(tf), i e Ion) = //+h Ф'(s)bj(s)ds, {j,tf} e Sh, где Ф'(t) = Ф'0)(t) - ván^on(t), ^on(t) = (^(i)(t), i e Ion), bj(t) e e Rn - j-й столбец матрицы B(t).
Опору назовем регулярной, если v¿ = 0, i e Ion; ¿hj(tf) = 0, {j, tf} e Sh. Будем считать, что задача (1) не вырождена, т.е. все ее опоры регулярны.
3) псевдопрограмма w(tf) = (wj(tf), j e J), tf e Th, и выходной псевдосигнал (¿, i e I: (i = g*j, если v < 0; (i = g*, если v > 0, i e Ion; Wj (tf) = u*j, если ¿hj(tf) < 0; Wj(tf) = u*, если ¿hj(tf) > 0, {j, tf} e Sh; совокупность Wj(tf),
{j, tf} € Son, находится из системы (i = + E{¿0}е5оп dhi,(tf)w,(tf) +
+ dhij(tf)w,(tf), i € /on; совокупность Zi, i € /н, вычисляется по
формуле Zi = + £{j-^gs dhíj(tf)w,-(tf), i € /н.
Определение 6. Опора K°n = {/°n,S°n} оптимальна, если ее мера неоптимальности [4] равна нулю.
Критерий оптимальности опоры. Для оптимальности опоры K°n = = {/on, Son} необходимо и достаточно, чтобы на сопровождающих ее псевдопрограмме w0(t), t € T, и выходном псевдосигнале Z°, i € /, выполнялись неравенства u*, ^ w°(tf) ^ u*, {j, tf} € S0n; g*i ^ Z¿° ^ g**, i € /0-
При этом сопровождающая опору K,°n псевдопрограмма w0(í), t € T, является оптимальной программой задачи (1): u0(t) = w°(t), t € T.
4. Двойственный метод построения программного решения
Метод представляет собой итеративную замену опор, при которой на итерациях уменьшается их мера неоптимальности. Для регулярных задач метод конечен. Обобщение метода на нерегулярные задачи приведено в [4]. На итерации старая опора Кои заменяется на новую А"оп следующим образом.
Вычисляется а1 = - max{p¿0, p(jo,tfo)}, где p¿0 = maxp(Zi, [g*i,g*]), i € € /н; полагается p(jo,tfo) = maxp(w,(tf), [u*,, u*]), {j,tf} € Son; p(Y, [а,в]) -расстояние от числа y до отрезка [а,в]-
Если а1 = 0, то Л"оП = А"оп - оптимальная опора задачи (1). При а1 < О опора Коп заменяется на новую Л"0п- Для этого строятся направление Аг/ изменения вектора Лагранжа и направление A5h изменения копрограммы. Возможны два случая: 1) а1 = —pio; 2) а1 = —p(jo,tfo).
1. Полагается Av^ = sign(Z¿o — g*io), Av = 0, i € /н \ io; Av^Don = = — Avio (dhioj (tf), {j, tf } € Son )'; Aáhj (tf) = 0, {j, tf } € Son ; A5h, (tf) = — Av'dh, (tf), {j, tf} € Sh, dh, (tf) = (dhi, (tf ), i € /).
2. Полагается A¿hj0(tfo) = sign(w,o(tfo) — u*,); A5h,(tf) = 0, {j, tf} € Son\ \{jo, tfo}; Avi = 0, i € /н; Av'nDon = — (A5h,(tf), {j,tf}€ Son)'; A5h,(tf) = = —(dhij(tf), i € /on)'Avon, {j,tf} € Sh.
Вычисляются числа:
Oi = — vi/Avi при viAvi < 0; oi = то при viAvi ^ 0, i € /on;
(3)
o,(tf) = —5,(tf)/A5,-(tf) при 5, (tf)A5,(tf) < 0; o,(tf) = то при 5,(tf)A5,(tf) ^ 0, {j,tf} € Sh.
Если среди этих чисел нет конечных, то задача (1) не имеет программного решения из-за несовместности ограничений. В противном случае конечные числа из (3) упорядочиваются: o1 < o2 < ■ ■ ■ < ok* < то. Находится такой индекс ko, что < 0, аЙ0+1 ^ 0. Здесь ай+1 = + Aаfc; Aаfc =
= (д* — g*ifc)|Avifc 1 пРи °fc = °ifc; ^ = (u*k—u ,^^(tfk)| пРи °fc = ,(tfk).
Имеются две возможности: а) oko = oit и б) oko = o,(tf*).
Компоненты новой опоры Kon = {Ion, Son} имеют вид:
1-а) Ion = (Ion \ i*) U i0, Son = Son;
16) Ton = Ion U i0,_Son = Son U {j*,&*}] 2a) /on = Ion \ Í*, s on = S'on \ {jo, tfo}; 26) Ton = /on, Son = Son \ {jo, do} U {j*,'d*}.
5. Позиционное решение
Будем считать, что в процессе управления в каждый момент т € Th будет известно текущее состояние х*(т) объекта. В соответствии с этим погрузим задачу (1) в семейство
c'x(t*) ^ max; X = A(t)x + В(t)u, ж(т) = y;
(4) x(t*) € X*; u(t) € U, t € T(т),
зависящее от позиции (т € Th, y € Rn).
Пусть u0(î|t, y), t € T(т), - оптимальная программа задачи (4) для позиции (т,y); XT - множество состояний y,
Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.