Основные идеи вычислительного метода динамического программирования
Стр 1 из 4Следующая ⇒ Глава 4. Динамическое программирование Некоторые задачи математического программирования обладают характерными особенностями, которые позволяют свести их решение к рассмотрению некоторого множества более простых «подзадач». В результате вопрос о глобальной оптимизации некоторой функции сводится к поэтапной оптимизации некоторых промежуточных целевых функций. В динамическом программировании рассматриваются методы, позволяющие путем поэтапной (многошаговой) оптимизации получить общий (результирующий) оптимум. Обычно методами динамического программирования оптимизируют работу некоторых управляемых систем, эффект которой оценивается аддитивной, или мультипликативной, целевой функцией. Аддитивной называется такая функция нескольких переменных
Слагаемые аддитивной целевой функции соответствуют эффекту решений, принимаемых на отдельных этапах управляемого процесса. По аналогии, мультипликативная функция распадается на произведение положительных функций различных переменных:
Поскольку логарифм функции типа (2) является аддитивной функцией, достаточно ограничиться рассмотрением функций вида (1). Изложим сущность вычислительного метода динамического программирования на примере задачи оптимизации
при ограничениях
В отличие от задач, рассмотренных ранее, о линейности и дифференцируемости функций
Содержательно задача (3)-(4) может быть интерпретирована как проблема оптимального вложения некоторых ресурсов j, приводимых к единой размерности (например, денег) с помощью коэффициентов Рассмотрим ситуацию, когда она решается последовательно для каждого актива. Если на первом шаге принято решение о вложении в п- йактив
при ограничениях
Очевидно, что максимальное значение (5) зависит от размера распределяемого остатка, и если оставшееся количество ресурса обозначить через
где индекс
Если бы имелась возможность влиять на
В результате получим выражение для значения целевой функции задачи при оптимальном поэтапном процессе принятия решений о распределении ресурса. Это значение в силу построения данного процесса равно глобальному оптимуму целевой функции
т. е. значению целевой функции при одномоментном распределении ресурса. Если в выражении (9) заменить значения b на
Значение переменной
т. е. допускает непосредственное вычисление функций Используя (12) как основание рекурсии, можно с помощью (11) последовательно вычислить Таким образом, динамическое программирование представляет собой целенаправленный перебор вариантов, который приводит к нахождению глобального максимума. Уравнение (11), выражающее оптимальное решение на k -м шаге через решения, принятые на предыдущих шагах, называется основным рекуррентным соотношением динамического программирования. В то же время следует заметить, что описанная схема решения при столь общей постановке задачи имеет чисто теоретическое значение, так как замыкает вычислительный процесс на построение функций
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2026 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|