Метод гамильтона-якоби-беллмана
Метод гамильтона-якоби-беллмана
9.1.
Идея и основные элементы
При постановке задачи ТОУ предполагалось, что такие ее элементы, как начальное состояние и начальный момент времени, фиксированы. Однако это не всегда выполняется на практике. Посему при решении конкретной задачи оказывается удобным рассматривать ее в составе множества качественно однотипных задач, описываемых теми же уравнениями процесса и функционалом, но с различными значениями перечисленных параметров.
Определяя оптимальное управление сразу для всего множества таких задач, получим решение в форме синтеза, которое будет представлять зависимость качественных свойств оптимального управления от состояния системы и текущего момента времени. Имея решение задачи в подобном виде, нетрудно получить ее решение и для любых фиксированных начальных условий в обычной форме, т.е. найти оптимальное управление как функцию времени. Решение подобных задач обладает рядом преимуществ. Главное из них состоит в том, что имеется полная информация об оптимальном управлении. Если при этом реализовались заранее не известные значения состояния системы, а на практике это типичная ситуация, то значение синтеза оптимального управления позволяет принять оптимальное решение и в данной ситуации.
Однако поиск синтеза оптимального управления, т.е. совокупности качественно однородных свойств системы, — это закономерно значительно более трудоемкая процедура по сравнено
нию с решением обычной задачи оптимального управления. С математической точки зрения отыскание синтеза оптимального управления сводится к решению нелинейного дифференциального уравнения с частными производными, называемого уравнением Гамильтона—Якоби—Беллмана (для непрерывных процессов). Сложность численного решения этого уравнения чрезвычайно сильно возрастает с увеличением размерности решаемой задачи. Для дискретных процессов в подобной ситуации получаем функциональное конечно-разностное уравнение, несколько менее сложное. В учебной литературе по исследованию операций это, по-видимому, породило представление о приемлемости практического применения метода Гамильтона— Якоби—Беллмана (другое название — динамическое программирование) лишь к дискретным (многошаговым) процессам. Покажем, что по крайней мере теория развита для непрерывных и дискретных управляемых систем. С вычислительной точки зрения действительно многошаговые процессы проще.
9.1.1.
Управление Гамильтона-Якоби-Беллмана. Непрерывный вариант
Рассмотрим задачу оптимального управления, заданную следующими условиями:
/ = J /° (t,x,u)dt + F(x(T)) -» min; (9О
о
х(0) = х0,иє Vtx. (9-3)
Как видно из постановки (9.1) (9.3), в ней отсутствуют ограничения на состояние, а множество допустимых управлений Vх, в отличие от принципа максимума (см. формулу (6.2)), не зависит от состояния х. Другими словами, множество Ух при всех t є (0; 7) совпадает со всем пространством X, при / = 0 задано начальное условие фиксированная точка х0. Ограничения на состояние х в момент t = Гне заданы, т.е. рассматривается задача со свободным правым концом на траектории состояний. Как увидим далее, если в реальной задаче присутствует условие на правом конце, от него нетрудно избавиться, модифицируя терминальный член в формуле (9.1) с использованием метода «штрафных функций» (другое название — Л/-метод [2]). В случае наличия ограничений на состояние системы х можно рискнуть, проигнорировав их и решив при этом задачу. Затем следует проверить: если полученное решение при W находится внутри допустимой по х области, риск оказался оправданным и полученное решение — оптимальное; если хотя бы при одном значении t оптимальное решение без учета ограничений на х выйдет за пределы этих ограничений, настоящее оптимальное решение не получено, а затраченные усилия — напрасны.
Для получения уравнения Гамильтона—Якоби—Беллмана воспользуемся теоремой 4.2 о достаточных условиях оптимальности, согласно которой если есть допустимый процесс А = = (**(/), u*(f)) є М и непрерывно дифференцируемая функция Ф (/, х) такие, что при всех х
R(t,x*(t),u*{t))= max R(t,x,u), Vt е[0;Т];
Ф(х*(Т)=тіпФ(х) при t = Т,
хе VI
то процесе (x*(f), и*(0) оптимален, т.е.
J(x*,u*)= inf Ах,и).
veM
Известно, что
R{t,x,u)Af(t,x,u)-f ,x,u) + d-^; дх dt
<b(x) = q>(T,x) + F(x). Введем функцию
P(t,x) = max R(t,x,u).
и
Предположим, что удалось так определить функцию ср(/, х),
что
/>(/,*) = с(/); (94)
Ф(х) = сх. (9-5)
Так как функция ср(/, х) задана, следовательно, задана и функция /?(/, х, м), максимизируя которую по управлению и е Vх, найдем х)):
u*(t,x) = arg щахV/.
Как будет показано ниже, х) является синтезом оптимального управления, решением рассматриваемой оптимизационной задачи.
Для определения оптимального состояния — вектора х*(/) подставим синтез оптимальных управлений u*(t, х) в уравнение процесса:
Ну
^ = /(/,*, и *(*,*)), *(0) = х0<9-6> at
Итак, определение оптимального состояния х*(0 сводится к решению задачи Коши (9.6) для уравнения процесса, замкнутого синтезом оптимальных управлений с начальными условиями х (0) = х0. В отличие от синтеза оптимального управления u*(t, х) функцию
u(t) = u*(t,x)x4t) (9.7)
называют оптимальной программой управления. Данное определение отражает тот факт, что оптимальная программа управления, определяемая формулой (9.7), отвечает уже не произвольному состоянию х, а конкретному оптимальному х*(/). Здесь можно провести такую аналогию: синтез оптимальных управлений — это, например, Конституция страны, которая в целом предопределяет общественное поведение ее граждан, а оптимальная программа управления — это обусловленное законом наиболее целесообразное поведение человека в конкретных условиях.
Изложенный метод нахождения процесса «*(0) ПРИ
априорных ограничениях, наложенных на функцию ф(/, х), называется методом Гамильтона—Якоби—Беллмана. В этом случае
процесс Сх*(/), u*(t)) является оптимальным. Для доказательства
данного положения покажем, что рассматриваемый процесс допустим и удовлетворяет условиям 1 и 2 теоремы 4.2. Это означает, что состояние и управление удовлетворяют уравнению процесса (9.2), начальному условию и априорным
ограничениям (9.3).
Нахождение процесса (x*(t), u*(t)) мы начинали с определения синтеза оптимальных управлений u*(t, х). В свою очередь, w*(/, х) находили из условия 1 теоремы 4.2, т.е. из условия
u*(t,x) = arg max и), W.
ueVtx
А это значит, что управление w*(/, х) за пределы области Vtx не выходит и, следовательно допустимо. Состояние х*(0 находится подстановкой u*(t, х) в уравнение процесса (9.2). Следовательно, пары функций Сх*(Г), «*(0) удовлетворяют уравнению процесса. Кроме того, состояние х*( О удовлетворяет начальным условиям. Область Vx совпадает со всем пространством X.
Итак, процесс (jc*(/), u*(t)) допустим, так как все условия его принадлежности области М выполнены.
Покажем, что при наложении на функцию ф(/, х) формальных требований условия 1 и 2 теоремы 4.2 выполнены. Для этого представим максимум по совокупности переменных как последовательность максимумов по отдельным переменным:
max R(t,х,и) = тах [max R (t,x,u)]= max P(t,x).
(xfu)EVt x uGVtx
Функция u*(t, x) обеспечивает rnax R(t,x,u), a P(t, x) co-гласно формуле (9.4) не зависит от х. Это обеспечивает выполнение условия max R(t,x*(t))9 т.е. условия 1 теоремы 4.2. Для (х,и)
выполнения условия 2 теоремы 4.2 рассмотрим соотношение (9.5), выполненное согласно заданию функции ф(Г, х).
Так как функция Ф(х) постоянна, то ее минимум достигается при любом значении аргумента, в частности при x*(t). Следовательно, условие 2 выполнено.
Таким образом, выбранная функция ср(г, х) и построенный процесс (x*(f), u*(t)) допустимы и удовлетворяют теореме 4.2. Следовательно, процесс оптимален.
Еще раз отметим, что метод Гамильтона—Якоби—Беллмана применим только к задачам оптимального управления, в которых отсутствуют ограничения на состояние, в том числе и при t= Т. Высказанная в начале настоящего раздела реплика относительно возможного риска, разумеется, к строгим методам последующего изложения не относится.
9.1.2.
Синтез оптимального управления
Остановимся подробнее на введенном выше очень важном понятии синтеза оптимальных управлений. Вновь обратимся к задаче (9.1) — (9.3). В ней ограничения на состояние х отсутствуют. Множество М допустимых процессов — это множество пар вектор-функций x(t), u(t), удовлетворяющих условиям задачи и накладывающих на них соответствующие ограничения. Необходимо подчеркнуть, что множество М зависит от tQ и xQi т.е. М = М (Г0, х0). При изменении аргументов tQ и х0 на t0,x0 получим новое допустимое множество М (tQ, х0). Если решать задачу при различных параметрах (/0, х0), оставляя без изменения другие условия задачи, то получим семейство оптимизационных задач, которое назовем А.
Зададим управление в виде функции
u = u*(t,x), u*(t,x)e Vtx. (9'8)
Задав начальное состояние (/0, х0) и подставляя выражение (9.8) в уравнение (9.2), получим, решая задачу Коши (см. формулу (1.1)), вектор состояния jc*(f, f0, х0), отвечающий заданному закону управления. Это решение является допустимым, так как отсутствует ограничение на состояние системы. Подставляя его в выражение (9.8), получим соответствующее ему управление в виде функции времени: u*(t,t0,x0) = u*(t9x) |л=л-*(ио,л.о),
т.е. значение и вдоль траектории — функции состояния. Как уже отмечалось, вектор-функция u*(t, х) является синтезом оптимального управления, если процесс
v*(/, /о, х0) = (**(/, t^Xb),U*(t, /0, х0))
есть решение задачи А для любых /0, х0. На формальном уровне это означает, что, как только получена вектор-функция u*(t, х) и подставлена в уравнение процесса при любых /0, х0, найденный процесс становится оптимальным.
Таким образом, зная оптимальную синтезирующую функцию u*(t, х), получаем решение не одной оптимизационной задачи, а семейства задач А при различных начальных условиях /0, х0, наложенных на время и состояние системы. В этом состоит отличие от метода Лагранжа—Понтрягина, где оптимальное решение отыскивается не в форме синтеза оптимального управления u*(t, х), а в виде программы
В теории автоматического регулирования u*(t, х) называют управлением с обратной связью, a u(i) — программой управления. На содержательном уровне эти вопросы более подробно рассматривались в разд. 2.2.
В экономических задачах программа управления u(t) соответствует принятию решений на перспективу, а синтеза u(t, х) — регулированию (отслеживанию плана и принятию оперативных решений). Синтез оптимальных управлений u*(t, х) в случае отклонения состояния системы от планового значения дает оптимальное решение и при новом ее состоянии, характеризующемся начальным уровнем х0. Программное же управление, не зависящее от текущего состояния х, при этом теряет свойство оптимальности.
Обсуждение Оптимальное управление в экономике: теория и приложения
Комментарии, рецензии и отзывы