Уравнение Гамильтона – Якоби – Беллмана

редактировать

В теории оптимального управления Гамильтон – Якоби – Беллман (HJB ) уравнение дает необходимое и достаточное условие для оптимальности контроля по отношению к функция потерь. В общем, это нелинейное уравнение в частных производных в функции значения , что означает, что его решением является сама функция значения. Как только это решение известно, его можно использовать для получения оптимального управления, взяв максимизатор (или минимизатор) гамильтониана, входящего в уравнение HJB.

Уравнение является результатом теория динамического программирования, впервые предложенная в 1950-х годах Ричардом Беллманом и его сотрудниками. Связь с уравнением Гамильтона – Якоби из классической физики впервые была проведена Рудольфом Кальманом. В задачах с дискретным временем соответствующее разностное уравнение обычно называется уравнением Беллмана.

, тогда как классические вариационные задачи, такие как задача о брахистохроне, может быть решена с помощью уравнения Гамильтона – Якоби – Беллмана, метод может быть применен к более широкому спектру задач. Кроме того, его можно обобщить на стохастические системы, и в этом случае уравнение HJB является эллиптическим уравнением в частных производных второго порядка. Однако главный недостаток состоит в том, что уравнение HJB допускает классические решения только для достаточно гладкой функции значений, что не гарантируется в большинстве ситуаций. Вместо этого требуется понятие решения вязкости, в котором обычные производные заменены (многозначными) подчиненными.

Содержание

  • 1 Задачи оптимального управления
  • 2 Частные дифференциальное уравнение
  • 3 Получение уравнения
  • 4 Решение уравнения
  • 5 Расширение для стохастических задач
    • 5.1 Применение к LQG Control
  • 6 См. также
  • 7 Ссылки
  • 8 Дополнительная литература

Задачи оптимального управления

Рассмотрим следующую задачу в детерминированном оптимальном управлении за период времени [0, T] {\ displaystyle [0, T]}[0, T] :

VT (x (0), 0) знак равно мин и {∫ 0 ТС [Икс (Т), и (Т)] dt + D [Икс (Т)]} {\ Displaystyle V_ {T} (х (0), 0) = \ мин _ { u} \ left \ {\ int _ {0} ^ {T} C [x (t), u (t)] \, dt + D [x (T)] \ right \}}{ \ Displaystyle V_ {T} (Икс (0), 0) = \ min _ {u} \ left \ {\ int _ {0} ^ {T} C [x (t), u (t)] \, dt + D [Икс (T)] \ право \}}

где C [⋅] {\ displaystyle C [\ cdot]}{\ displaystyle C [\ cdot]} - это скалярная функция ставки стоимости, а D [⋅] {\ displaystyle D [\ cdot]}{\ displaystyle D [\ cdot]} - функция, которая возвращает значение завещания в конечном состоянии, x (t) {\ displaystyle x (t)}x (t) - вектор состояния системы, x (0) {\ displaystyle x (0)}x (0) предполагается заданным, а u (t) {\ displaystyle u ( t)}u (t) для 0 ≤ t ≤ T {\ displaystyle 0 \ leq t \ leq T}{\ Displaystyle 0 \ leq t \ leq T} - вектор управления, который мы пытаемся найти.

Система также должна подчиняться

x ˙ (t) = F [x (t), u (t)] {\ displaystyle {\ dot {x}} (t) = F [ x (t), u (t)] \,}{\ dot {x}} (t) = F [x (t), u (t)] \,

где F [⋅] {\ displaystyle F [\ cdot]}F [\ cdot] дает вектор, определяющий физическую эволюцию вектора состояния в время.

Уравнение в частных производных

Для этой простой системы (с учетом V = VT {\ displaystyle V = V_ {T}}{\ displaystyle V = V_ {T}} ) уравнение Гамильтона – Якоби –Уравнение в частных производных Беллмана:

V ˙ (x, t) + min u {∇ V (x, t) ⋅ F (x, u) + C (x, u)} = 0 {\ displaystyle {\ dot {V}} (x, t) + \ min _ {u} \ left \ {\ nabla V (x, t) \ cdot F (x, u) + C (x, u) \ right \} = 0}{\ dot {V}} (x, t) + \ мин _ {и} \ влево \ {\ набла В (х, т) \ cdot F (х, и) + С (х, и) \ вправо \} = 0

с соблюдением конечного условия

V (x, T) = D (x), {\ displaystyle V (x, T) = D (x), \,}V (x, T) знак равно D (х), \,

где V ˙ (x, t) {\ displaystyle {\ dot {V}} (x, t)}{\ точка {V}} (x, t) обозначает частную производную от V {\ displaystyle V}V по отношению к переменная времени t {\ displaystyle t}t . Здесь a ⋅ b {\ displaystyle a \ cdot b}a \ cdot b обозначает скалярное произведение векторов a {\ displaystyle a}a и b {\ displaystyle b}b и ∇ V (x, t) {\ displaystyle \ nabla V (x, t)}{\ displaystyle \ nabla V (x, t)} градиент из V {\ displaystyle V}V относительно переменных x {\ displaystyle x}x .

Неизвестный скаляр V (x, t) {\ displaystyle V (x, t)}V (x, t) в приведенном выше уравнении с частными производными - это функция значения Беллмана , которая представляет затраты, понесенные при запуске в состоянии x {\ displaystyle x}x в момент t {\ displaystyle t}t и оптимальное управление системой с этого момента до времени T {\ displaystyle T}T .

Получение уравнения

Интуитивно уравнение HJB можно вывести следующим образом. Если V (x (t), t) {\ displaystyle V (x (t), t)}V (x (t), t) является оптимальной функцией затрат до конца (также называемой «функцией ценности»), то по принципу оптимальности Ричарда Беллмана, переходя от времени t к t + dt, мы имеем

V (x (t), t) = min u {V (x (t + dt), t + dt) + ∫ tt + dt C (x (s), u (s)) ds}. {\ Displaystyle V (Икс (T), T) = \ min _ {u} \ left \ {V (x (t + dt), t + dt) + \ int _ {t} ^ {t + dt} C (x (s), u (s)) \, ds \ right \}.}{\ displaystyle V (x ( t), t) = \ min _ {u} \ left \ {V (x (t + dt), t + dt) + \ int _ {t} ^ {t + dt} C (x (s), u (s)) \, ds \ right \}.}

Обратите внимание, что разложение Тейлора первого члена в правой части равно

V ( x (t + dt), t + dt) = V (x (t), t) + V ˙ (x (t), t) dt + ∇ V (x (t), t) ⋅ x ˙ (t). dt + о (dt), {\ displaystyle V (x (t + dt), t + dt) = V (x (t), t) + {\ dot {V}} (x (t), t) \, dt + \ nabla V (x (t), t) \ cdot {\ dot {x}} (t) \, dt + {\ mathcal {o}} (dt),}{\ displaystyle V (x (t + dt), t + dt) = V (x (t), t) + {\ dot {V}} (x (t), t) \, dt + \ nabla V (x (t), t) \ cdot {\ dot {x}} (t) \, dt + {\ mathcal {o}} (dt),}

где o (dt) {\ displaystyle {\ mathcal {o}} (dt)}{\ displaystyle {\ mathcal {o}} (dt)} обозначает термины в разложении Тейлора более высокого порядка, чем один в небольшой нотации. Затем, если мы вычтем V (x (t), t) {\ displaystyle V (x (t), t)}V (x (t), t) с обеих сторон, разделим на dt и возьмем предел по мере приближения dt нуля, мы получаем уравнение HJB, определенное выше.

Решение уравнения

Уравнение HJB обычно решается в обратном направлении во времени, начиная с t = T {\ displaystyle t = T}t = T и оканчивается на t = 0 {\ displaystyle t = 0}t = 0 .

При решении по всему пространству состояний и V (x) {\ displaystyle V (x)}V (x) является непрерывно дифференцируемым, уравнение HJB является необходимым и достаточным условием для оптимума, когда конечное состояние не ограничено. Если мы сможем найти для V {\ displaystyle V}V , тогда мы сможем найти из него элемент управления u {\ displaystyle u}u , который обеспечивает минимальную стоимость.

В общем случае уравнение HJB не имеет классического (гладкого) решения. Для таких ситуаций было разработано несколько понятий обобщенных решений, включая вязкостный раствор (Пьер-Луи Лионс и Майкл Крэндалл ), минимаксное решение ([ru ]) и другие.

Расширение на стохастические задачи

Идея решения задачи управления путем применения принципа оптимальности Беллмана и последующей разработки стратегии оптимизации в обратном направлении может быть обобщена на задачи стохастического управления. Рассмотрим аналогичный приведенному выше

min u E {∫ 0 TC (t, X t, ut) dt + D (XT)} {\ displaystyle \ min _ {u} \ mathbb {E} \ left \ {\ int _ {0} ^ {T} C (t, X_ {t}, u_ {t}) \, dt + D (X_ {T}) \ right \}}{\ displaystyle \ min _ {u} \ mathbb {E} \ left \ {\ int _ {0} ^ { T} C (t, X_ {t}, u_ {t}) \, dt + D (X_ {T}) \ right \}}

теперь с (X t) t ∈ [0, T] {\ displaystyle (X_ {t}) _ {t \ in [0, T]} \, \!}(X_ {t}) _ {t \ in [0, T]} \, \! стохастический процесс для оптимизации и (ut) t ∈ [0, T] {\ displaystyle (u_ {t}) _ {t \ in [0, T]} \, \!}(u_ {t}) _ {t \ in [0, T]} \, \! рулевое управление. Сначала используя Беллмана, а затем раскрывая V (X t, t) {\ displaystyle V (X_ {t}, t)}V (X_ {t}, t) с помощью правила Ито, можно найти стохастический Уравнение HJB

min u {AV (x, t) + C (t, x, u)} = 0, {\ displaystyle \ min _ {u} \ left \ {{\ mathcal {A}} V (x, t) + C (t, x, u) \ right \} = 0,}\ min _ {u} \ left \ {{\ mathcal {A}} V (x, t) + C (t, x, u) \ right \} = 0,

где A {\ displaystyle {\ mathcal {A}}}{\ mathcal { A}} представляет оператор стохастического дифференцирования и с учетом конечного условия

V (x, T) = D (x). {\ displaystyle V (x, T) = D (x) \, \ !.}V (x, T) = D (x) \, \ !.

Обратите внимание, что случайность исчезла. В этом случае решение V {\ displaystyle V \, \!}V \, \! последнего не обязательно решает основную проблему, это только кандидат, и требуется дополнительный проверяющий аргумент. Этот метод широко используется в финансовой математике для определения оптимальных инвестиционных стратегий на рынке (см., Например, портфельная задача Мертона ).

Применение в LQG Control

В качестве примера мы можем взглянуть на систему с линейной стохастической динамикой и квадратичной стоимостью. Если динамика системы задается как

dxt = (axt + but) dt + σ dwt, {\ displaystyle dx_ {t} = (ax_ {t} + bu_ {t}) dt + \ sigma dw_ {t},}dx_ {t} = (ax_ {t} + bu_ {t}) dt + \ sigma dw_ {t},

и стоимость накапливается по ставке C (xt, ut) = r (t) ut 2/2 + q (t) xt 2/2 {\ displaystyle C (x_ {t}, u_ {t})) = r (t) u_ {t} ^ {2} / 2 + q (t) x_ {t} ^ {2} / 2}C (x_ {t}, u_ {t}) = r (t) u_ {t} ^ {2} / 2 + q (t) x_ {t} ^ {2} / 2 , уравнение HJB задается как

- ∂ V (x, t) ∂ t = 1 2 q (t) x 2 + ∂ V (x, t) ∂ xax - b 2 2 r (t) (∂ V (x, t) ∂ x) 2 + σ 2 2 ∂ 2 V (x, t) ∂ x 2. {\ displaystyle - {\ frac {\ partial V (x, t)} {\ partial t}} = {\ frac {1} {2}} q (t) x ^ {2} + {\ frac {\ partial V (x, t)} {\ partial x}} ax - {\ frac {b ^ {2}} {2r (t)}} \ left ({\ frac {\ partial V (x, t)} {\ partial x}} \ right) ^ {2} + {\ frac {\ sigma ^ {2}} {2}} {\ frac {\ partial ^ {2} V (x, t)} {\ partial x ^ { 2}}}.}{\ displaystyle - {\ frac {\ partial V (x, t)} {\ partial t}} = {\ frac {1} {2}} q (t) x ^ {2} + {\ frac {\ partial V (x, t)} {\ partial x}} ax - {\ frac {b ^ {2}} {2r (t)}} \ left ({\ frac {\ partial V (x, t)} {\ partial x}} \ right) ^ {2} + {\ frac {\ sigma ^ {2}} {2}} {\ frac {\ partial ^ {2} V (x, t)} {\ partial x ^ {2}}}.}

с оптимальным действием, заданным как

ut = - br (t) ∂ V (x, t) ∂ x {\ displaystyle u_ {t} = - {\ frac {b} {r (t)}} {\ frac {\ partial V (x, t)} {\ partial x}}}{\ displaystyle u_ {t} = - {\ frac {b} {r (t)}} {\ frac {\ partial V (x, t)} {\ partial x}}}

Предполагая квадратичную форму для функции цены, мы получаем обычное уравнение Риккати для гессиан функции цены, как обычно для линейно-квадратично-гауссовского управления.

См. также

  • уравнение Беллмана, аналог уравнения Гамильтона – Якоби – Беллмана в дискретном времени.
  • Понтрягина. принцип максимума, необходимое, но не достаточное условие для оптимума, путем максимизации гамильтониана, но это имеет преимущество перед HJB, состоящее в том, что его нужно только удовлетворять по сравнению с одной рассматриваемой траекторией.

Ссылки

Читать далее ing

Последняя правка сделана 2021-05-22 11:54:30
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте