Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Постановка задачи динамического программированияСтр 1 из 3Следующая ⇒
Краткие теоретические сведения Постановка задачи динамического программирования Принцип оптимальности и уравнения Беллмана Постановка задачи динамического программирования Динамическое nрограммирование (ДП) - метод оптимизации, приспособленный к операциям, в которых процесс принятия решения может быть разбит на этапы (шаги). Такие операции называются многошаговыми. Начало развития динамического программирования относится к 50-м годам ХХ в. Оно связано с именем американского математика Ричарда Беллмана. Если модели линейного программирования можно использовать в экономике для принятия крупномасштабных плановых решений в сложных ситуациях, то модели динамического программирования применяются в основном при решении задач значительно меньшего масштаба, например, при разработке правил управления запасами, устанавливающими момент пополнения запасов и размер пополняющего заказа; при разработке принципов календарного планирования производства и выравнивания занятости в условиях колеблющегося спроса на продукцию; при распределении дефицитных капитальных вложений между возможными новыми направлениями их использования; при составлении календарных планов текущего и капитального ремонта сложного оборудования и его замены; при разработке долгосрочных правил замены выбывающих из эксплуатации основных фондов и т. п. В реально функционирующих больших экономических системах еженедельно требуется принимать микроэкономические решения. Модели динамического программирования ценны тем, что позволяют на основе стандартного подхода при минимальном вмешательстве человека принимать такие решения. И если каждое взятое в отдельности такое решение малосущественно, то в совокупности эти решения могут оказать большое влияние на прибыль. Приведем общую постановку задачи динамического программирования. Рассматривается управляемый процесс, например, экономический процесс распределения средств между предприятиями, использования ресурсов в течение ряда.лет, замены оборудования, пополнения запасов и т. п. В результате управления система (объект управления) S переводится из начального состояния So в конечное Si. Предположим, что управление можно разбить на п шагов, т.е. решение принимается последовательно на каждом шаге, а управление, переводящее систему S из начального состояния в.конечное, представляет собой совокупность п пошаговых управлений. Обозначим через Xk управление на k-м шаге (k=I, 2,..., п). Переменные Xk удовлетворяют некоторым ограничениям и в этом смысле называются допустимыми (Xk, может быть числом, точкой в n-мерном пространстве, качественным признаком и т.д.). Пусть Х (X1, Х2,.,, Хп) - управление, переводящее систему S из состояния So в состояние Si. Обозначим через Sk состояние системы после k-ro.шага управления. Получаем последовательность состояний S0, S1,,.., Sk-1, Sk, …, Sn-1, Sn=Si. Изобразим каждое состояние окружностями(рис. 13.1).
Рисунок 13.1 – Процесс управляемого изменения состояний системы
Показатель эффективности рассматриваемой управляемой операции - целевая функция - зависит от начального состояния и вектора управления: Z = F (S0, X). (13.1) Сделаем несколько предположений. 1. Состояние Sk системы в конце k-ro шага зависит только от предшествующего состояния Sk-1 и управления на k-м шаге Xk (и не зависит от предшествующих состояний и управлений). Это требование называется " отсутствием последействия": Сформулированное предположение записывается в виде уравнений (13.2.) которые называются уравнениями состояний. 2. Целевая функция (13.1) является аддитивной от показателя эффективности каждого шага. Обозначим показатель эффективности k-ro шага через . (13.3.) Тогда . (13.4) Задача пошаговой оптимизации (задача ДП) формулируется так: определить такое допустимое управление Х, переводящее систему S из состояния So в состояние Si, при котором целевая функция (13.4) принимает наибольшее (наименьшее) значение. Выделим особенности динамического программирования. 1. Задача оптимизации интерпретируется как п-шаговый процесс управления. 2. Целевая функция равна сумме целевых функций каждого шага. 3. Выбор управления на k-м шаге зависит только от состояния системы к этому шагу и не влияет на предшествующие шаги (нет обратной связи). 4. Состояние Sk после k-го шага управления зависит только от предшествующего состояния Sk-1 и управления Xk (отсутствие последействия). 5. На каждом шаге управление Xk зависит от конечного числа управляющих переменных, а состояние Sk - от конечного числа параметров (смысл замечания 5 станет ясным из рассмотренных примеров). Следует вспомнить, что существуют различные способы решения подобных задач, применяемые в зависимости от вида целевой функции, функций ограничений, размерности и т. п. Вычислительная схема ДП является универсальной, т.е. безразличной к способам задания целевой функции и функций ограничений. Она основана на принципе оптимальности Беллмана и использует рекурентные соотношения (уравнения) Беллмана.
|