
ТУ - лекции Шмырова / Лекции по ТУ / 26
.pdf
Лекция 26. Уравнение Беллмана.
В прошлой лекции было разобрано, что для управляемой системы вида
x = f(t; x; u); t 2 [t0; T ]; x(t0) = x0; u 2 U; |
(1) |
|
с критерием качества |
f0(t; x; u)dt ! min; |
|
J(u) = '(x(T )) + tZ0 |
(2) |
|
T |
|
|
необходимые условия оптимальности можно представить в виде уравнения Беллмана
min |
³ |
_ |
|
(t; x; u) |
= 0; t |
2 |
[t |
; T ]; |
(3) |
B(t; x) + f |
|||||||||
u2U |
|
0 |
|
´ |
0 |
|
|
||
ãäå B(t; x) - функция Беллмана, с краевым условием |
|
|
|
|
|||||
|
|
|
B(T; x(T )) = '(x(T )): |
|
|
|
(4) |
Приведем теорему, посвященную существованию и единственности оптимального |
||||||||||||||||
управляемого процесса. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Теорема 1. Пусть существует единственное непрерывно дифференцируемое ре- |
||||||||||||||||
шение B¤(t; x) задачи (3)-(4) и существует допустимое управление u¤(t; x), такое, что |
||||||||||||||||
min |
fò t; x; u |
) |
@B¤(t; x) |
+ |
f |
t; x; u |
)¶ = |
fò |
( |
t; x; u |
) |
@B¤(t; x) |
f |
t; x; u |
; |
(5) |
u2U µ |
( |
@x |
|
0( |
|
|
@x |
+ 0( |
) |
|
|
тогда в задаче (1)-(2) управление u¤(t; x) является оптимальным, а соответствующая функция Беллмана есть B¤(t; x).
Доказательство. Предположим, что функция B¤(t; x) является функцией Беллмана. С учетом (5) имеем
u2U µ |
@t |
|
( |
|
) |
|
|
@x |
|
+ |
0( |
|
)¶ |
= |
|
min |
@B¤(t; x) |
+ fò |
t; x; u |
|
@B¤(t; x) |
|
f |
t; x; u |
|
|
|||||
|
|
|
|
|
|
|
|
|
|||||||
|
= fò(t; x; u¤) |
@B¤(t; x) |
|
+ f0(t; x; u¤) = 0: |
|
|
|||||||||
|
|
|
|
||||||||||||
|
|
|
|
|
@x |
|
|
|
|
|
|
|
|
|
|
Последнее равенство справедливо, т. к. @B¤(t;x) |
|
|
|
|
|
|
|||||||||
|
|
|
|
|
@t не зависит от u. Перепишем его в виде |
||||||||||
|
|
_ ¤ |
(t; x) = ¡f0 |
¤ |
): |
|
|
|
(6) |
||||||
|
|
B |
(t; x; u |
|
|
|
|
равенство (6) справедливо для любого x 2 Rn, в том числе для траектории x¤(t), которая соответствует управлению u¤(t; x¤(t))
B_ ¤(t; x¤) = ¡f0(t; x¤; u¤):
Проинтегрируем последнее равенство по t îò t0 äî T
110
|
|
T |
|
|
B¤(T; x¤(T )) ¡ B¤(t0; x¤(t0)) = ¡tZ0 |
f0(t; x¤; u¤)dt; |
|
||
B¤(t0 |
; x¤(t0) = B¤(T; x¤(T )) + tZ0 |
f0(t; x¤; u¤)dt: |
(7) |
|
|
T |
|
|
|
В соответствии с (4)
B¤(T; x¤(t)) = '(x(T ));
и поэтому уравнение (7) можно переписать в виде
J(u¤) = B¤(t0; x¤(t0)):
Пусть теперь u(t; x) - любое допустимое управление. Тогда уравнение Беллмана принимает вид неравенства
@B¤(t; x) |
+ fò(t; x; u) |
@B¤(t; x) |
+ f0(t; x; u) ¸ 0 ) |
|
@t |
|
@x |
)B_ ¤(t; x) ¸ ¡f0(t; x; u):
Интергрируя последнее равенство по t îò t0 äî T , имеем
B¤(T; x(T )) ¡ B¤(t0 |
; x(t0)) ¸ ¡tZ0 |
f0(t; x; u)dt; ) |
|
|
T |
|
|
) B¤(t0; x(t0)) · B¤(T; x(T )) + tZ0 |
f0(t; x; u)dt; |
||
|
|
T |
|
откуда, в в силу (4)
B¤(t0; x(t0)) · J(u):
Таким образом справедливо соотношение
B¤(t0; x(t0)) = J(u¤) · J(u);
откуда можно заключить об оптимальности управления u¤.
¥
Сформулируем этапы построения управления с помощью метода динамического программирования:
1. Находим вид управления u = u(t; x; B(t; x)), при котором достигается минимум
в уравнении Беллмана (3) . Здесь управление зависит не только от (t; x), но и от частных производных функции Беллмана.
111

2. Подставляя u = u(t; x; B(t; x)) обратно в уравнение Беллмана (3) получаем систе-
му нелинейных уравнений в частных производных относительно функции Беллмана B(t; x) с краевым условием вида (4).
3. Решаем полученную краевую задачу находим функцию и ее частные про-
изводные .
4. Подставляя найденное выражение для частных производных функции Беллмана B(t; x) в выражение u = u(t; x; B(t; x)), определенное в пункте 1, находим вид
оптимального управления в виде синтеза u = u(t; x).
Следует отметить, что реализовать сформулированный алгоритм в конкретных |
|||||||
задачах может оказаться затруднительно. Это связано с трудоемкостью разрешения |
|||||||
краевой задачи для нахождения функции Беллмана, нелинейностью управляемой |
|||||||
системы и т. д. |
|
|
|
|
|
|
|
Применим аппарат динамического программирования для построения оптималь- |
|||||||
ного управления в линейной нестационарной системе с квадратичным критерий ка- |
|||||||
честве, т. е. к задаче ЛК-оптимизации. Рассматривается управляемая система вида |
|||||||
x = A(t)x + B(t)u; |
t 2 [t0; T ]; x(t0) = x0; x 2 Rn; u 2 Rr; |
(8) |
|||||
с квадратичным критерием качества |
|
|
|
|
|
||
J(x; u) = xò(T )N1x(T ) + ZT |
xò(t)N2(t)x(t) + uò(t)N3(t)u(t) dt ! min : |
(9) |
|||||
|
t0 |
£ |
|
|
|
¤ |
|
Квадратичные формы xòN1x, xòN2(t)x è uòN3(t)u отвечают неравенствам |
|
||||||
xòN1x ¸ 0; xòN2(t)x ¸ 0; uòN3(t)u > 0: |
|
||||||
Будем искать функцию Беллмана в виде |
|
|
|
|
|||
|
B(t; x) = xò£(t)x; |
|
(10) |
||||
с краевым условием (уравнение (4)) |
|
|
|
|
|
||
|
B(T; x(t)) = xòN1x; |
|
(11) |
||||
В этом случае уравнение Беллмана принимает вид |
|
|
|||||
min |
_ |
|
|
(t)x + uòN |
(t)u = 0; |
|
|
B(t; x) + xòN |
|
||||||
u2U |
³ |
|
2 |
|
3 |
´ |
|
ãäå |
|
|
|
|
|
|
|
_ |
|
|
|
|
ò _ |
|
|
B(t; x) = xò£(t)x + x |
£(t)x + xò£(t)x = |
|
|||||
= xòAò(t)£(t)x + uòBò(t)£x + x |
ò _ |
|
|
|
(12) |
||
£(t)x + xò£(t)A(t)x + xò£(t)B(t)u: |
112

применим первый пункт описанного выше алгоритма построения оптимального управления с помощью метода динамического программирования. Найдем вид управления u = u(t; x; B(t; x)), при котором достигается минимум в (12). Это выполняется когда
Bò(t)£(t)x + Bò(t)£(t)x + 2N3(t)u = 0; )
|
|
|
) u = ¡N3¡1Bò(t)£(t)x: |
|
(13) |
|||
Подставляя (12) в выражение для _ |
|
|
|
|
|
|||
|
|
|
B(t; x) (12), уравнение Беллмана принимает вид |
|||||
ò |
ò |
ò |
¡1 |
(t)B |
ò |
ò _ |
ò |
£(t)A(t)x¡ |
x |
A |
(t)£(t)x ¡ x |
£(t)B(t)N3 |
|
(t)£(t)x + x £(t)x + x |
|||
¡xò£BN3¡1(t)Bò(t)£(t)x + xòN2(t)x + xò£BN3¡1(t)N3(t)N3¡1(t)Bò(t)£(t)x = |
||||||||
= xò ³£_ (t) + Aò(t)£(t) + £(t)A(t) + N2(t) ¡ £BN3¡1(t)Bò(t)£(t)´x = 0; |
с краевым условием
xò£(T )x = xòN1x:
сокращая на xò è x уравнение Беллмана сводится к матричному уравнению Рикктати относительно матрицы £(t)
£_ (t) + Aò(t)£(t) + £(t)A(t) + N2(t) ¡ £BN3¡1(t)Bò(t)£(t) = 0; £(T ) = N1: (14)
Дальнейшие пункты алгоритма построения оптимального управления сводятся к разрешению уравнения Риккати (14) относительно нестационарной матрицы £(t).
В итоге синтезирующее управление имеет вид (13).
Связь между динамическим программированием и принципом макси- ìóìà. Рассмотрим управляемую систему (1)-(2) и предположим, что существует непрерывная функция Беллмана - решение уравнений (3)-(4). Также предположим, что существует допустимое управление u¤(t; x), такое справедливо уравнение (5).
Тогда, как доказано в теореме 1, управление u¤(t; x) является оптимальным. Соответствующую оптимальную траекторию обозначим x¤(t).
Введем функции Ã(t) è H(t; x; u; Ã) по следующим формулам
Ã(t) = ¡@B(t; x); @x
H(t; x; u; Ã) = Ãòf(t; x; u) ¡ f0(t; x; u);
Теперь преобразуем уравнение (5), прейдя в нем к максимуму
113
µ
max ¡fò(t; x; u)
u2U
@B¤(t; x) |
¡ f0(t; x; u)¶ = ¡fò(t; x; u) |
@B¤(t; x) |
¡ f0(t; x; u); |
|
@x |
|
@x |
Введем в это уравнение функции Ã(t) è H(t; x; u; Ã) и запишем его для оптимальной траектории x¤(t)
max |
Ãòf(t; x¤; u) |
¡ |
f (t; x¤; u) |
¢ |
= max (H(t; x¤; u; Ã)) = H(t; x¤; u¤; Ã) |
u2U |
¡ |
0 |
u2U |
Также, продифференцировав (4) по x получим краевое условие для вектора Ã(t)
@B(T; x¤(T )) |
= ¡Ã(T ) = |
@'(T; x¤(T )) |
: |
@x |
@x |
114