Оптимальное управление динамическими системами - одна из ключевых тем современной прикладной математики и теории систем. Среди множества подходов и техник в этой области особое место занимает уравнение Гамильтона-Якоби-Беллмана (HJB), дающее фундаментальную связь между динамическим программированием и оптимизацией. Важно отметить, что суть уравнения Гамильтона-Якоби-Беллмана можно рассматривать через призму линейной двойственности из теории линейного программирования, что позволяет понять и применять этот инструмент с новой, более глубоким уровнем понимания и универсальности. Рассмотрим динамическую систему, которая эволюционирует во времени от начального момента t=1 до конечного T. В каждый момент времени эта система находится в одном из множества состояний, общее количество которых обозначим через m.
После наблюдения текущего состояния система может принять одно из n возможных действий. Таким образом, в каждый момент времени имеется m×n возможных пар состояние-действие, которые мы будем обозначать через индекс j. Для формализации задачи создадим двухмерную матрицу S размером m×mn, которая суммирует вероятности по действиям для каждого состояния. Элемент S_{ij} равен 1, если действию j соответствует состояние i, и 0 в противном случае. Если представить распределение вероятностей выполнения пар состояние-действие в виде вектора y размером mn, то умножение Sy даёт вектор размером m, в котором для каждого состояния сумма вероятностей по всем действиям выражена явно.
Это важно, поскольку позволяет описывать переходы в системе, связывая вероятности по парам состояние-действие с распределением по самим состояниям. Для каждого промежутка времени от 1 до T−1 вводится матрица переходов M_t размером m×mn, отражающая динамику системы. Каждый столбец этой матрицы описывает вероятностное распределение перехода из состояния при выполнении конкретного действия к состоянию на следующий момент времени. Такая постановка позволяет в общем виде учитывать стохастические или детерминированные переходы в системе. Параллельно с динамикой задаётся вектор потерь ℓ_t размером mn для каждого момента времени t=1,.
..,T, где каждый элемент отражает непосредственный убыток при выполнении соответствующей пары состояние-действие. Основная цель - выбрать последовательность действий, минимизирующую суммарный ожидаемый убыток. Формально задача оптимального управления сводится к минимизации суммы скалярных произведений между векторами вероятностей xt и векторами потерь ℓ_t по всем моментам времени.
Условия включают сохранение согласованности распределения вероятностей по состояниям и действиям - выражается через равенства Sx_{t+1} = M_t x_t при t=1,...,T−1, начальное распределение по состояниям Sx_1 = p_1, а также неотрицательность переменных xt, интерпретируемых как распределения. Эта оптимизационная постановка представляет собой классическую задачу линейного программирования.
Однако более глубокое понимание достигается при переходе к дуальной задачи, где переменные ν_t, ассоциированные с ограничениям на распределение по состояниям, интерпретируются как функции стоимости или "cost-to-go". Именно из анализа дуальной задачи естественным образом вытекает уравнение Беллмана, которое лежит в основе динамического программирования. Дуальная задача выражается в максимизации функции p_1^T ν_1 с ограничениями, в которых значение ν_t от состояния должно быть не больше минимального ожидаемого убытка от текущих действий с учётом следующего шага стоимости ν_{t+1}. Это условие буквально совпадает с классическим уравнением Беллмана, связывающим динамическое программирование с линейной двойственностью. Это демонстрирует, что ценность перехода, либо функция стоимости, решает не только интуитивно понятную динамическую задачу, но формализуется через линейную оптимизацию и её двойственную структуру.
Более того, максимальное значение функции стоимости ν_{T} на последнем шаге определяется непосредственно минимальным значением убытка среди доступных действий для каждого состояния. Начиная с этого этапа и продвигаясь назад во времени, рекурсивно вычисляются оптимальные функции стоимости на всех промежуточных моментах, воплощая принцип оптимальности Беллмана. После нахождения функций стоимости можно восстановить оптимальную стратегию выбора действий, сопоставляя для каждого состояния и времени те действия, которые обеспечивают минимизацию выражения (ℓ_t + M_t^T ν_{t+1}) по соответствующей паре состояние-действие. Теоретические доказательства оптимальности такого подхода могут быть основаны как на принципах динамического программирования, так и на свойствах двойственности, например, через условия дополнительной нежёсткости (complementary slackness). Примечательно, что рассмотренный аналитический подход позволяет расширить традиционное представление уравнения Гамильтона-Якоби-Беллмана и интерпретировать его как частный случай двойственной линейной программы.
Эта связь открывает новые возможности для решения сложных задач управления при помощи мощных инструментов оптимизационной теории, а также облегчает переход к бесконечномерным или непрерывным системам, где уравнения HJB приобретают более классическую форму. Подытоживая, уравнение Гамильтона-Якоби-Беллмана - это не только теоретически фундаментальный объект теории управления, но и естественное следствие линейной двойственности, лежащей в основе оптимальной последовательности действий в динамических системах. Понимание этой связи открывает перспективы для разработки эффективных алгоритмов и углублённого анализа сложных стохастических и детерминированных систем в самых разных прикладных областях, включая робототехнику, финансовую математику, экономику и инженерию. .