XV Ванько В.И., Ермошина О.В., Кувыркин Г.Н. Вариационное исчисление и оптимальное управление (1081425), страница 37
Текст из файла (страница 37)
Это приводит к существенному возрастанию объема обрабатываемой информации. Р. Беллман* предложил некоторые способы преодоления подобных трудностей. 284 8. МЕТОД ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ непрерывных задач. Непрерывные задачи также подчиняются принципу оптимальности. Поэтому для них можно получить уравнение, аналогичное рекурретным соотношениям Беллмана. Пусть система имеет закон движения (8.1), критерий оптимальности задается целевым функционалом т 1[х.,и] = 1 (х,и)Ж, в (8.10) где 1в(х, и) — непрерывная функция по совокупности аргумен- тов, а начальное состояние равно: х(0) = хв.
(8.11) 1,[х,и] = 1 (х,и)сй т среди всех допустимых процессов (х(с), и(~)) на отрезке времени [т, Т] с начальным состоянием х(т) = с. Положим т рЯ„т) = шш 7 (х.,и)сМ. аижс 1 [ <с(т> '; Тогда при ~ = х и т = 0 мы получим величину р(х~,О), представляющую собой наименьшее значение функционала (8.10). Время движения Т известно, а конечное состояние х(Т) нет. Мы имеем задачу с фиксированным временем и свободным правым концом.
Пусть х*(1), 1Е [О, Т], "-- оптим льная траектория, соответствующая оптимальному управлению и*Я. Выберем некоторый момент времени т Е [О, Т] и соответствующую точку ( = х" Я на оптимальной траектории. Согласно принципу оптимальности, участок траектории х*(1) от точки ( до точки х*(Х) является оптимальной траекторией. Это значит, что этот участок доставляет наименьшее значение функционалу 285 В.2. Уравнение Беллмана Будем предполагать, что для любой точки с фазового пространсеави и любого момента времени т Е [О, Т1 существует оптимальная траектория (т.е. доставляющая наименьшее значение функционалу 1,(х,и) ) с начальным условием х[т) = г,.
Тем самым функция д(е,т) определена всюду на декартовом произведении вен х [О, Т~) Обозначив аргументы этой функции через х и ~, будем называть д(х,~) функцией Беллмана. Согласно данному определению, функция Беллмана в точке (х, 1), 0 < 1 < Т, равна наименьшему значению функционала 1~[х, и) на всех допустимых процессах с начальным состоянием х(г) = х. Пусть (х'(т), и*(С)), О < 1 < Т, оптималнныи процесс. и оптимальная траектория х'(1) удовлетворяет начальному условию х*(0) = х". Тогда м*',е= . Ь м, ооа =)" г(*ч ~, "ао . и(!)ен х<'<тз о о Для произвольного момента времени т Е [О, Т1 участок оптимальной траектории от точки х*(т) до точки х*(Т) сам по себе, согласно принципу оптимальности, является оптимальным, т.е.
е( '( ), )= ' ~!'( х, аяа=~р( "(оАяа~ нше ° / ( <~<т~ .,- Рассмотрим приращение Ьт и соответствующий этому приращению момент времени т+ тат. В силу аддитивности определенного интеграла имеем е( "( ), ) = ~Г( '(о, 'оян= т т-, ат т 1( я, "аоа. ) у("о, "аяа. зн) а ттяат 286 в. МЕТОД ДИНА(Ъ|ИЧЕСКОГО ПРОГРАММИРОВАНИЯ Согласно принципу оптимальности, участок оптимальной траектории от точки х*(т+ Ьт) до точки х'(Т) сам является оптимальной траекторией, т.е. Учитывая последнее равенство, соотношение 18.12) можно пре- образовать к виду Второе слагаемое в (8.13) зависит от состояния системы х"'(т+Ьт). В зто состояние, в свою очередь, система попала под действием управления и*(г), действовавшего на интервале времени 1т, т+ Ьт~) Следовательно, значение р(х*(т+(лт),т+ Ьт) определяется выбором управления на отрезке (т, т + Ьт).
Чтобы представить это, рассмотрим различные допустимые управления и11) на отрезке (т, т+ Ьт)). Им будет соответствовать пучок траекторий х(,(), исходящих из точки х*(т) на оптимальной траектории (рис. 8.2). На каждой траектории из этого пучка фазовая точка займет в момент времени т+ Ьт некоторое положение х(т+ Ьт).
Выберем управление и(г) на отрезке [т+ (лт, Т~) так, чтобы траектория х(г) на этом участке была оптимальной, т.е. выбранное управление обеспечивает минимум функционалу 287 8.2. уравнении Беллиннн Рис. 8.2 Такой выбор управ.ления определяет дальнейшее продолжение каждой траектории рассматриваемого пучка (см. рис. 8.2). При этом минимальные значения функционала 1 >л,[х,и] вдоль траекторий пучка различны и зависят от точки х) т+ Ьт): т ) Г)*(~)ля)и=4 );-л ), -';л ).
ио)ее '-' ~'~т) т-~-Ьт Положение точки х(т + Ьт) определяется выбором управления и(1) на отрезке [т, т+ллт1 Поэтому значение р,(х)т+ллт), т+)л,т) зависит от управления и(г), 1 Е~[т, т+ Ьт1. Рассмотрим значения функционала 1,[х, и1 на траекториях пучка, построенного выше. Учитывая, что участок каждой траектории х(1) пучка от точки х)т+ Ьт) до точки х)Т) оптимален, т.е.
доставляет наименьшее значение функционалу 1т.еат[х,и) получаем т-'тат л ) , ] = ) т ) )~), щ ) и + т ) ) + л ), + л ). )8.15) т Выберем минимальное из зна гений 1т[х, и). Так как оба слагаемых в (8.15) справа зависят только от выбора управления и® 288 8. РИЕ ГОД ДИНАГИИЧЕСКОГО ПРОГРАМЛ|ИРОВАНИЯ на интервале ~т, т+ Гхт], то и минимальное значение 1„' опреде- ляется выбором управления на этом интервале, т.е. 1* = ппп 1„[х, и]. иажо ( <с< -~-ь ) 1,* > шш 1 [х,и] = 1,[х*,.и*] = р(х'(т),т). вайо (8.16) < <~<т> Но оптимальная траектория х'(1) содержится в пучке.
Поэтому в неравенстве (8.16) на самом деле имеет место равенство, т.е. 1пш 1,[х,и] = р(х'(т)), т~), ищес ( <~< .).Ь,) откуда с учетом (8.15) получаем г-~. Лг р(х*(т),т) = шш 1 (х(1),и(1)) дХ+ < «< ~ьо + р(х(т+ Ьг), г+ Ьт) . (8.17) Заметим, что в соответствии с (8.1) х(т+ Ьт) = х(т) + х(т) Ьт+ о(Гзт) = = х(т) + у(х(т),и(г)) Ьт+ о(Ьт).
(8Д8) Предположим, что функция Беллмана р.(х, ~) непрерывно дифференцируема по всем своим аргументам. Тогда, согласно (8.18), имеем р(х(т+ Ьт),т+ Ьт) = п(х(т),т) + п + ~~ ~ 1'(х(т),и(т)) Ьт+ — Ьт+ о(Ьт). (8З 9) дх, (*(),) д~ (ж(т)л) з=1 Построенный пучок траекторий является подмножеством более широкого множества всех допустимых функций., на которых ищется наименьшее значение функционала 1,. Поэтому верно неравенство 289 в.2. Уравнение Бвллмана Введем обозначение и перепишем (8.19) в виде у(х(т+ Ьт),т+ Ьт) = р1х(т), т) + т1в ви,У( ()л( ))) 1 т —, в т (в ).
дц (а(т),т) д1 1а1т),т) Учитывая последнее соотношение, а также то, что для траекторий х(1) пучка имеет место равенство х(т) = х*1т), перепишем равенство 18.17) в виде т-)-Ьт и( '( ), ) = ', ~ ) ( ( Р)лЮв'т н(()вн ( (с( тр( "( )Л)'-'(В'ВИ .Г(*"( )лк( ))) В -'- (а*1т1,т) + —, Ьт+ о1йт) . (8.20) др д1 (а" (т),т) Согласно определению, функция р(х'(т),т) получена в результате минимизации функционала 7 (х,и) по всем допустил(ыж управлениям и11), 1 Е (т, Т~), т.е. зта функция уже не зависит от и.
Поэтому слагаемые р(хт(т) т) и ~(х*(т)т г) в правой части равенства 18.20) можно вынести за знак минимума. После сокращений получим т-)-Лт — — Ьт = шш ~ ( 1 1х1г),и1г)) (11+ др Г Г д1 (~.1, ( ~~~ -а ) т + 8га(1р, Х(х*(т),и(т)) )ат+ о(Ьт) (а*(т),т) 290 8. МЕТОД ДИНАМИНЕСКОГО НРОГРАММИРОВАНИЯ Предположим, что и(1) непрерывна на отрезке '~т, т+ Гхт~) Тогда, разделив это равенство на Ьт и перейдя к пределу при о(Ьт) Тхт -+ 0 (при этом 1ш1 = 0), приходим к уравнению Л е Ьт Беллмана — — шш ~~ (х*(т),и(т))+ др 0 дГ <т*(т~т) я(т)ео ~ т(,'< >, («~, св « — (я*(т),т) — — шш ~1е(х(т),и(т)) + (8гас)р, т(х(т),и(т))1, (8.22) д1 я1т)ен где для удобства оптимальная траектория обозначена просто х(1).
К уравнению Беллмана можно добавить краевые условия (8.23) р(х,Т) = О, вытекающие непосредственно из определения функции Беллмана. Функция р(х, г) в данном случае играет ту же роль, что и функция Ии ~(х~ ~) в дискретном варианте динамического программирования, а уравнение Ьеллмана аналогично рекуррентным соотношениям Беллмана. Уравнение Беллмана представляет собой дифференциальное уравнение в частных производных относительно функции р(х,1).
Но это уравнение нс является линейным из-за наличия в выражении справа в (8.22) операции взятия минимума. Эта операция фактически означает подстановку в уравнение значения и*, на котором достигается минимум и которое меняется в зависимости от значений х и ягаг1 р, т.е. фактически является нелинейной функцией этих переменных. Уравнение Беллмана можно использовать для решения задачи (8.1), (8.10), (8.11) следующим образом.
Если сделанныс выше преположения выполняются и р*(х,1) -- решение 291 8.2. Уравнение Баллмааа задачи (8.22), (8.23)., то сразу же получаем наименьшее значение целевого функционала (оно равно р*(хм.,0) ). г1тобы найти оптимальную траекторию, нужно определить оптимальное управление и' как функцию текущего положения и градиента 8гаг(р'. и = й(х,дгаг(р*). В результате из закона движения при и = й(х,8гаг1д*) с начальными условиями х(0) = хе мы получаем задачу Коши., решением которой и будет оптимальная траектория. Зная оптимальную траекторию, мы уже можем найти оптимальное управление как функцию времени: и'(1) = й(х'Я,8гаг11г*(х(1),1)). Рассмотрим другую задачу, а именно добавим к условиям (8.1), (8.10), (8.11) условие закрепления на правом конце х(Т) = хт., (8.24) где значение хг задано, а Т заранее не известно.
В этом случае функция Беллмана зависит только от текущего состояния х: р = р(х). Действительно,по определению т д(х,т) = Г (х (г),и (г))Ж. т Но согласно свойствам автономного процесса значение инте- грала т | 1' (х'(г),и*(г)) Ж при фиксированных х*(г) и и*(г) зависит только от длины Т вЂ” г интервала интегрирования, который можно определить из автономной системы (8.1), зная точки х' = х'(г) и х*(Т) на траектории. Значит, Т вЂ” т есть функция от этих двух точек., а д явно не зависит от 1.
Для задачи (8.1), (8.10), (8.11), (8.24) с помощью аналогичных рассуждений можно получить уравнение Беллмана, которое в этом случае имеет вид гшп ~~~(х(г),и(г)) + (8гаг1д, 1(х(т),и(г))] = О. и(т)еп ~ 292 8. МЕТОД ДИНАМИНЕСКОГО НРОГРАГИМИРОВАНИЯ Практическая реализация предложенного метода наталкивается на определенные трудности. Например, вид правой части уравнения Беллмана нельзя назвать простым, так как туда входит операция взятия минимума. Но самая главная трудность состоит в том, что функция р(х,1) может нс быть всюду дифференцируемой (например, для линейных систем дифференцируемость нарушается в точках, принадлежащих линии переключений). Однако дифференцируемость функции Белл- мана — одно из предположений, на которые опирался вывод уравнения Белламана.
< (1 + 1ж ) ~р + 1к 5 = О, 1ж(й+Д = — т, (8.25) где 1,, 1ж моменты инерции соответственно аппарата и маховика относительно неподвижной оси; т -- момент двигателя маховика. К системе (8.25) следует добавить уравнение электрического двигателя маховика. Если это двигатель постоянного тока, то при некоторых допущениях момент т, развиваемый двигателем, может быть выражен уравнением т = й(и+ ввэ), (8.26) "Смв Д.8.1, а также: Летов А.М. Пример 8.2.