8.2. Постановка задачи динамического программирования
Постановку задачи динамического программирования рассмотрим на примере инвестирования, связанного с распределением средств между предприятиями. В результате управления инвестициями система последовательно переводится из начального состояния S0 в конечное Sn. Предположим, что управление можно разбить на П Шагов и решение принимается последовательно на каждом шаге, а управление представляет собой совокупность П Пошаговых управлений. На каждом шаге необходимо определить два типа переменных - переменную состояния системы SK и переменную управления Хk. Переменная SK определяет, в каких состояниях может оказаться система на рассматриваемом K-м шаге. В зависимости от состояния S на этом шаге можно применить некоторые управления, которые характеризуются переменной ХK Которые удовлетворяют определенным ограничениям и называются допустимыми.
Допустим, - управление, переводящее систему из состояния S0 в состояние Sn , а Sn — есть состояние системы на K-м шаге управления. Тогда последовательность состояний системы можно представить в виде графа, представленного на рис. 41.
Применение управляющего воздействия Хk На каждом шаге переводит систему в новое состояние S1(S, Xk) И приносит некоторый результат Wk(S, Xk). Для каждого возможного состояния на каждом шаге среди всех возможных управлений выбирается оптимальное управление Xk*, такое, чтобы результат, который достигается за шаги с K-го по последний N-й, оказался бы оптимальным. Числовая характеристика этого результата называется функцией Беллмана Fk(S) и зависит от номера шага K И состояния системы S.
Задача динамического программирования формулируется следующим образом: Требуется определить такое управление , переводящее систему из начального состояния S0 в конечное состояние Sn, при котором целевая функция принимает наибольшее (наименьшее) значение .
Особенности математической модели динамического программирования заключаются в следующем:
1) задача оптимизации формулируется как конечный многошаговый процесс управления;
2) целевая функция (выигрыш) является аддитивной и равна сумме целевых функций каждого шага:
3) выбор управления ХK на каждом шаге зависит только от состояния системы K этому шагу Sk-1 и не влияет на предшествующие шаги (нет обратной связи);
4) состояние системы Sk после каждого шага управления зависит только от предшествующего состояния системы Sk-1 и этого управляющего воздействия Хk (отсутствие последействия) и может быть записано в виде уравнения состояния:
;
5) на каждом шаге управление ХK зависит от конечного числа управляющих переменных, а состояние системы зависит Sk — от конечного числа параметров;
6) оптимальное управление представляет собой вектор , определяемый последовательностью оптимальных пошаговых управлений: Число которых и определяет количество шагов задачи.
< Предыдущая | Следующая > |
---|