5. Метод динамического программирования. Для управляемого объекта, описанного в предыдущем параграфе, мы рассмотрим задачу об оптимальном переходе ─ в смысле быстродействия ─ из фазового состояния x в фазовое состояние x1. При этом конечную фазовую точку x1 будем считать фиксированной, а в качестве начальной точки x будем рассматривать различные точки фазового пространства. Мы будем предполагать в этом пункте, что для рассматриваемого управляемого объекта выполняется следующая гипотеза:
Г и п о т е з а 1. Какова бы ни была отличная от x1 точка x фазового пространства, существует оптимальный (в смысле быстродействия) процесс перехода из точки x0 в точку x1 (рис. 6).
Время, в течение которого осуществляется оптимальный переход из точки x0 в точку x1, обозначим через T( x). В дальнейших рассуждениях будет удобно вместо T( x) ввести функцию ω(x), отличающуюся от неё знаком
ω(x)= ─T(x). (1.8)
Так как каждая точка x фазового пространства имеет координаты x1,…, xn, то ω(x)= ─T( x) является функцией от n переменных, т. е. ω(x)= ω(x1,…, xn). Поэтому имеет смысл говорить о непрерывности этой функции (по совокупности переменных x1,…, xn) и о дифференцируемости этой функции по каждой из переменных x1,…, xn.
А также будем предполагать, что для рассматриваемого управляемого объекта выполняется следующая гипотеза:
Г и п о т е з а 2. Функция ω(x) непрерывна и всюду, кроме точки x1, имеет непрерывные частные производные
Пусть теперь x0 ─ произвольная отличная от x1 точка фазового пространства, а u0 ─ произвольная точка области U. Предположим, что объект находится в момент t0 в фазовом состоянии x0 и движется в течение некоторого времени под воздействием постоянного управления u= u0. Фазовую траекторию объекта при этом движении обозначим через y(t)=(y1( t),…, yn( t)). Таким образом, фазовая траектория y( t) при t> t0 удовлетворяет уравнениям
(1.9)
(см. (1.2), (1.3)) и начальному условию
y(t0)=x0. (1.10)
Если мы будем двигаться из точки x0 до точки y( t) (по рассматриваемой фазовой траектории), то затратим на это движение время t ─ t0. Двигаясь затем из точки y( t) оптимально, мы затратим на движение от точки y(t) до точки x1 время T( y( t)). В результате мы совершим переход из точки x0 в точку x1, затратив на этот переход время (t ─ t0)+T(y(t)). Но так как оптимальное время движения от точки x0 до точки x1 равно T(x0), т. е. равно T(y(t0)), то T(y(t0))≤(t ─ t0)+T(y(t)). Заменяя функцию T через ω (см. (1.8)) и разделив обе части неравенства на положительную величину t ─ t0, получаем отсюда и поэтому, переходя к пределу при t→ t0, находим
│при ≤1. (1.11)
Но производная, указанная в левой части этого неравенства, вычисляется по формуле полной производной Поэтому согласно (1.9) и (1.10) неравенство (1.11) принимает вид Точки x0, u0 здесь были произвольными. Таким образом, для любой (отличной от x1) точки x фазового пространства и любой точки u области управления U выполнено соотношение
(1.12)
Пусть теперь (u(t), x(t)) ─ оптимальный процесс, переводящий объект из фазового состояния x0 в состояние x1, и t0≤t≤t1 ─ отрезок времени, в течение которого это оптимальное движение происходит, так что x(t0)= x0, x(t1)=x1 и t1=t0 + T(x0). Движение по рассматриваемой оптимальной траектории от точки x0 до точки x(t) осуществляется в течение времени t ─ t0, а движение от точки x(t) до точки x1 ─ в течение времени T(x0) ─ (t ─ t0). Быстрее, чем за время T(x0) ─ (t ─ t0), из точки x(t) попасть в точку x1 невозможно. Итак, T(x0) ─ (t ─ t0) есть время оптимального движения из точки x(t) в точку x1, т. е. T(x(t))= T(x0) ─ (t ─ t0). Заменив здесь T через ω, т. е. ω(x(t))= ω(x0) + t ─ t0) и взяв производную по t, получаем
t0≤t≤t1. (1.13)
Таким образом, для каждого оптимального процесса в течение всего движения выполняется равенство (1.13).
Если мы теперь введём в рассмотрение функцию
B(x, u(t))= , (1.14)
То соотношения (1.12) и (1.13) могут быть записаны следующим образом:
B(x, u)≤1 для всех точек x≠x1 и u; (1.15)
B(x, u)≡1 для любого оптимального процесса (u(t), x(t)). (1.16)
Итак, справедлива следующая
Т е о р е м а 1.1. Если для управляемого объекта, описываемого уравнением (1.5) и предписанного конечного состояния x1 выполнены гипотезы 1 и 2, то имеют место соотношения (1.15) и (1.16) (оптимальность понимается в смысле быстродействия).
Эта теорема и составляет сущность метода динамического программирования для рассматриваемой задачи. Эту теорему можно сформулировать и несколько иначе. Написав соотношение (1.16)
Для t=t0, получим B(x0, u(t0))=1, т. е. для любой точки x0 (отличной от x1) найдётся в U такая точка u (а именно u= u(t0)), что B(x0, u)=1. В сопоставлении с неравенством (1.15) получаем соотношение
для любой точки x≠x1. (1.16*)
Метод динамического программирования (1.15), (1.16) (или, что то же самое, (1.16*), (1.16)) содержит некоторую информацию об оптимальных процессах и потому может быть использован для их разыскания. Однако он имеет ряд неудобств. Во-первых, применение этого метода требует нахождения не только оптимальных управлений, но и функции ω(x), так как эта функция входит в соотношения (1.15) ─ (1.16*). Во-вторых, уравнение Беллмана (1.16*) (или соотношения (1.15), (1.16)) представляет собой уравнение в частных производных относительно функции ω, осложнённое к тому же знаком максимума. Указанные обстоятельства сильно затрудняют возможность пользования методом динамического программирования для отыскания оптимальных процессов в конкретных примерах. Но самым главным недостатком этого метода является предположение о выполнении гипотез 1 и 2. Ведь оптимальные управления и функция ω нам заранее не известны, так что гипотезы 1 и 2 содержат предположение о неизвестной функции, и проверить выполнение этих гипотез по уравнениям движения объекта невозможно. Этот недостаток можно было бы считать не особенно существенным, если бы после решения оптимальной задачи этим методом оказалось, что функция ω(x) действительно является непрерывно дифференцируемой. Но дело заключается в том, что даже в простейших, линейных задачах оптимального управления функция ω(x) не является, как правило, всюду дифференцируемой. Тем не менее, методом динамического программирования можно нередко пользоваться как ценным эвристическим средством.
6. Принцип максимума. Продолжим теперь рассуждения предыдущего пункта, предположив функцию ω(x) уже дважды непрерывно дифференцируемой (всюду, кроме точки x1). Итак, будем предполагать, что выполнена следующая
Г и п о т е з а 3. функция ω(x) имеет при x≠ x1 вторые непрерывные производные i, j=1,2,…,n, а функции fi(x, u) ─ первые непрерывные производные где i, j=1,2,…,n.
Пусть (u( t), x( t)), t0≤t≤t1, ─ оптимальный процесс, переводящий объект (1.2) (или (1.3)) из фазового состояния x0 в состояние x1. Фиксируем некоторый момент времени t, t0≤t≤t1, и рассмотрим функцию B(x, u(t))= переменного x. В силу гипотезы 3 вытекает, что функция B(x, u(t)) всюду, кроме точки x1, имеет непрерывные производные по переменным x1,x2,…,xn:
(1.17)
В частности, так как x(t)≠x1 (поскольку t<t1), то функция B(x, u(t)) имеет вблизи точки x=x(t) непрерывные производные по переменным x1,x2,…,xn. Далее, мы имеем в силу (1.15), (1.16) B(x, u(t))≤1 для любого x≠ x1; B(x, u(t))=1 при x= x(t).
Эти два соотношения означают, что функция B(x, u(t)) достигает в точке x=x(t) максимума, и потому её частные производные по x1,…, xn обращаются в нуль в этой точке:
(1.18)
Кроме того, дифференцируя функцию по t, находим
Поэтому соотношение (1.18) может быть переписано в следующем виде:
(1.19)
Заметим теперь, что в формулы (1.15), (1.16), (1.17) и (1.19) сама функция ω не входит, а входят только её частные производные . Поэтому мы введём для удобства следующие обозначения:
(1.20)
Тогда функция B (см. (1.14)) записывается таким образом:
B(x(t), u(t))=
и соотношение (1.16) принимает вид
, для оптимального процесса (x(t), u(t)), t0≤t<t1. (1.21)
Кроме того, согласно (1.15)
для любой точки u U и всех t0≤t<t1. (1.22)
Наконец, соотношения (1.19) записываются следующим образом:
(1.23)
Итак, если (u(t), x(t)), t0≤t<t1, ─ оптимальный процесс, то существуют такие функции ψ1(t), ψ2(t),…, ψ n(t) (они определяются равенствами (1.20)), что имеют место соотношения (1.21), (1.22), (1.23).
Рассмотрение левых частей соотношений (1.21), (1.22) подсказывает нам, что целесообразно ввести в рассмотрение следующую функцию:
(1.24)
зависящую от 2n+ r аргументов ψ1, ψ2,…, ψ n, x1,…, xn, u1,…, ur. С помощью этой функции соотношения (1.21), (1.22) записываются в следующем виде:
для оптимального процесса (u(t), x(t)), t0≤t<t1, (1.25)
где ψ(t)=(ψ1(t),…,ψ n(t)) определяются равенствами (1.20);
для любой точки u U и всех t0≤t<t1. (1.26)
Вместо неравенства (1.26) мы можем в силу (1.25) написать следующее соотношение:
t0≤t<t1. (1.27)
Наконец, соотношения (1.23) можно, очевидно, переписать так:
(1.28)
Итак, если (u(t), x(t)), t0≤t<t1, ─ оптимальный процесс, то существует такая функция ψ(t)=(ψ1(t),…, ψ n(t)), что выполняются соотношения (1.25), (1.27), (1.28), где функция H определяется соотношением (1.24).
Так как в соотношениях (1.24), (1.25), (1.27), (1.28) нигде не участвует явно функция ω(x), то равенства (1.20), выражающие функции ψ1(t),…, ψ n(t) через ω, никаких добавочных сведений не дают, и о них можно забыть, ограничившись утверждением, что какие-то функции ψ1(t),…, ψ n(t), удовлетворяющие перечисленным соотношениям (1.25), (1.27), (1.28), существуют. Соотношения (1.28) представляют собой систему уравнений, которым эти функции удовлетворяют. Заметим, что функции ψ1(t),…, ψ n(t) составляют нетривиальное решение этой системы (т. е. ни в какой момент времени t все эти функции одновременно в нуль не обращаются); действительно, если бы при некотором t было ψ1(t)= ψ2(t)=…=ψ n(t)=0, то в силу (1.24) мы получили бы H(ψ(t), x(t), u(t))=0, что противоречит равенству (1.25). Таким образом, мы получаем следующую теорему, которая носит название принципа максимума.
Т е о р е м а 1.2. Предположим, что для рассматриваемого управляемого объекта, описываемого уравнением (в векторной форме)
(A)
и предписанного конечного состояния x1 выполнены гипотезы 1, 2 и 3. Пусть (u(t), x(t)), t0≤t≤t1, ─ некоторый процесс, переводящий объект из начального состояния x0 в состояние x1. Введём в рассмотрение функцию H, зависящую от переменных x1(t),…, xn(t), u1,…, ur и некоторых вспомогательных переменных ψ1(t),…, ψ n(t) (см. (1.24)):
(B)
С помощью этой функции H запишем следующую систему дифференциальных уравнений для вспомогательных переменных:
(C)
где (u(t), x(t)) ─ рассматриваемый процесс (см. (1.28)). Тогда, если процесс (u(t), x(t)), t0≤t<t1, является оптимальным, то существует такое нетривиальное решение ψ(t)=(ψ1(t),…, ψ n(t)), t0≤t<t1, системы (C), что для любого момента t, t0≤t<t1, выполнено условие максимума
(D)
(см. (1.27)) и условие (1.25) H(ψ(t),x(t),u(t))=1.
Однако в приведённой здесь форме принцип максимума страдает одним недостатком: он выведен в предположение дифференцируемости (и даже двукратной) функции ω(x), а эта функция в действительности не является (в обычно встречающихся случаях) всюду дифференцируемой.
Из-за предположения о выполнении сформулированных гипотез (о функции ω(x)) принцип максимума в том виде, в каком он сформулирован выше, не является удобным условием оптимальности. По форме он выведен как необходимое условие оптимальности: если процесс оптимален, то выполнено соотношение (1.16*) и соответственно (D), т. е. выполнение этого условия необходимо для оптимальности. Однако это условие выведено лишь в предположении выполнения гипотез 1, 2, 3, а их выполнение отнюдь не необходимо для оптимальности. Вот почему сформулированные выше теоремы не могут считаться необходимыми условиями оптимальности.
Замечательным, однако, является тот факт, что если в теореме 1.2 решение ψ(t) и условие максимума (D) рассматривать на всём отрезке t0≤t≤t1 (а не только при t0≤t<t1), а заключительное условие
H(ψ(t1), x(t1), u(t1))≥0, (E)
то в этой форме принцип максимума будет справедлив без каких бы то ни было предположений о функции ω, т. е. принцип максимума станет весьма удобным и широко применимым необходимым условием оптимальности.
Пример. Задача синтеза
7. Пример применения принципа максимума. В этом пункте мы разберём один пример вычисления оптимальных процессов. Именно, рассмотрим управляемый объект, упомянутый в п. 3 (см. уравнения (1.1)), при условии, что сила трения и упругая сила отсутствуют (т. е. b=0, k=0), масса m равна единице (m=1), а управляющий параметр подчинён ограничениям |u|≤1. Иначе говоря, мы рассматриваем материальную точку G массы m=1 (см. рис. 10), свободно и без трения движущуюся по горизонтальной прямой и снабжённую двигателем, развивающим силу u, где |u|≤1. Согласно (1.1) уравнения движения этого объекта имеют вид:
(1.29)
─1≤u≤1. (1.30)
Для этого объекта рассмотрим задачу о быстрейшем попадании в начало координат (0, 0) из заданного начального состояния x0=(x01, x02). Иначе говоря, будем рассматривать задачу об оптимальном быстродействии в случае, когда конечным положением служит точка x1=(0, 0). Механически это означает, что материальную точку, имеющую заданное положение x01 и заданную начальную скорость x02, мы хотим за кратчайшее время привести в начало отсчёта с нулевой скоростью (т. е. добиться того, чтобы точка пришла в начало отсчёта и остановилась там).
Функция H в рассматриваемом случае имеет вид
H=ψ1x2+ψ2u (1.31)
(см. (1.29) и (B)). Далее, для вспомогательных переменных ψ1, ψ2 мы получаем систему уравнений . Из этой системы уравнений находим: ψ1=d1; ψ2= ─d1t+ d2, где d1, d2 ─ постоянные интегрирования. Далее, в силу соотношения максимума (D) мы находим, учитывая (1.31) и (1.30):
u(t)= +1, если ψ2(t)>0; u(t)= ─1, если ψ2(t)<0.
Иначе говоря, u(t)=sign ψ2(t)=sign (─ d1t + d2). Отсюда следует, что каждое оптимальное управление u(t), t0≤t≤t1, является кусочно-постоянной функцией, принимающей значения и имеющей не более двух интервалов постоянства (ибо линейная функция ─d1t + d2 не более одного раза меняет знак на отрезке t0≤t≤t1).
Для отрезка времени, на котором u 1, мы имеем (в силу системы (1.29)) , откуда находим
x1=1/2(x2)2+c. (1.32)
Аналогично для отрезка времени, на котором u ─1, мы имеем, откуда находим
x1= ─1/2(x2)2 + c’. (1.33)
Семейство парабол (1.33) (также получающихся друг из друга сдвигом в направлении оси x1) показано на рис. 14. По параболам (1.33) фазовые точки движутся сверху вниз (ибо )
На рис. 17 изображено всё семейство полученных таким образом фазовых траекторий (здесь AO ─ дуга параболы x1=1/2(x2)2, расположенная в нижней полуплоскости; BO ─ дуга параболы x1= ─1/2(x2)2, расположенная в верхней полуплоскости).
8. Проблема синтеза оптимальных управлений. Посмотрим на разобранный в предыдущих пунктах пример с несколько иной точки зрения. Найденное выше решение оптимальной задачи можно истолковать следующим образом. Обозначим через v(x)= +1 ниже линии AOB и на дуге AO, v(x)= ─1 выше линии AOB и на дуге BO. Тогда (см. 17) на каждой оптимальной траектории значение u(t) управляющего параметра (в произвольный момент времени t) равно v(x(t)), т. е. равно значению функции v в той точке, в которой в момент t находится движущаяся фазовая точка, пробегающая оптимальную траекторию u(t)=v(x(t)). Это означает, что, заменив в системе (1.29) величину u функцией v(x), мы получим систему
(1.34)
решение которой (при произвольном начальном состоянии x0) даёт оптимальную фазовую траекторию, ведущую в начало координат. Иначе говоря, система (1.34) представляет собой систему дифференциальных уравнений (с разрывной правой частью) для нахождения оптимальных траекторий, ведущих в начало координат.
Рассмотренный пример показывает, что решение задачи об оптимальных управлениях естественно ожидать в следующей форме. Будем решать оптимальную задачу в общей постановке:
(см. п. 3), рассматривая всевозможные начальные состояния и каждый раз предписывая в качестве конечного состояния начало координат O фазового пространства. Тогда (насколько можно судить по разобранному выше примеру) существует такая функция v(x), заданная в фазовом пространстве V принимающая значения в области управления U, что уравнение
(1.35)
определяет все оптимальные траектории, ведущие в начало координат. Иначе говоря, оптимальное управление оказывается естественным искать не в форме u= u(t), а в форме u= v(x), т. е. искомое оптимальное управление в каждый момент зависит лишь от того, в какой точке пространства находится в данный момент фазовая точка.
Функцию v(x), дающую уравнение оптимальных траекторий в форме (1.35), называют синтезирующей функцией, а задачу нахождения синтезирующей функции ─ задачей синтеза оптимальных управлений. В разобранном примере синтезирующая функция была кусочно-непрерывной (даже кусочно-постоянной).
Г л а в а II
Дата: 2019-07-30, просмотров: 208.