Общая постановка задачи динамического программирования.
Разновидностью подхода оптимизации в задачах математического программирования является динамическое программирование. Отличительной особенностью решения оптимизационных задач динамического программирования является сведение его к решению более простых «подзадач» и оптимизации целевой функции на каждом этапе. Поэтому задача динамического программирования заключается в многошаговой оптимизации для получения общего результирующего оптимума.
Предметом динамического программирования являются задачи оптимального планирования, носящие динамический характер в том смысле, что при их решении приходится учитывать фактор времени, или структуру объекта исследования, или последовательность операций.
Методом динамического программирования решаются большой спектр задач в экономической практике, например: задачи оптимального распределения капиталовложений, замены оборудования, управления запасами; разработки принципов календарного планирования производства и выравнивания занятости при колебаниях спроса на продукцию и др.
Формально задача динамического программирования имеет общий вид:
при условиях
Целевая функция Z является аддитивной от показателя эффективности каждого шага.