
- •Методология систем и принятие решений
- •Лекция 1. Введение в системный анализ и принятие решений
- •1.2. Классификация систем
- •1.3. Сущность системного подхода
- •Лекция 2. Задачи системного анализа
- •2.1. Характеристика задач системного анализа
- •11) Внедрение результатов анализа.
- •Лекция 3. Основные понятия и определения теории принятия решений
- •3.1. Основные принципы теории принятия решений
- •3.2. Постановка задач принятия оптимальных решений
- •3.3. Этапы принятия решений
- •Лекция 4 . Формулировка целей исследования
- •4.1. Определение целей
- •4.2. Роль целей и стратегий в процессе формирования управленческих решений
- •4.3. Отображение цели и условий ее достижения
- •Лекция 5 . Онтологический анализ
- •5.1. Анализ информационных потоков
- •5.2. Описательные логики
- •Лекция 6. Структурирование целей стратегического управления предприятием
- •6.2. Структурирование целей стратегического управления предприятием на основе методологии объектно-ориентированного анализа и проектирования
- •6.3. Системный анализ задач стратегического управления и методов их решения
- •6.1. Системный анализ проблем стратегического управления предприятием
- •6.2. Структурирование целей стратегического управления предприятием на основе методологии объектно-ориентированного анализа и проектирования (на примере оао «Уралтранснефтепродукт»).
- •6.3. Поддержка принятия решений на среднем уровне управления. Задача логистики
- •Лекция 7. Основные приемы формализации задач системного анализа
- •7.1. Реализация выбора и принятия решений
- •7.2. Внедрение результатов анализа
- •7.3. Построение (выбор) моделей системы
- •7.4. Классификация видов моделирования систем
- •7.5. Возможность и эффективность моделирования систем на вычислительных машинах
- •Лекция 8. Математическое программирование
- •8.1. Математические постановки задач, приводящие к моделям линейного программирования
- •9.1. Содержательные постановки задач, приводящие к моделям линейного программирования.
- •9.2. Численные методы математического программирования
- •Симплекс-таблица
- •Лекция 12. Транспортные задачи линейного программирования
- •12.1. Постановка задачи
- •12.2. Методы составления начального опорного плана
- •12.3. Понятие потенциала и цикла
- •12.4. Критерий оптимальности базисного решения транспортной задачи. Методы отыскания оптимального решения
- •12.5. Усложненные задачи транспортного типа
- •Лекция 13. Дискретное программирование.
- •Лекция 14. Нелинейное программирование.
- •13.2.Решение задач нелинейного программирования в системе matlab
- •Лекция 15. Динамическое программирование
- •Лекция 16. Многокритериальные задачи принятия решений
- •16.2. Способы решения многокритериальных задач: свертка критериев в один (аддитивная, мультипликативная, минимаксная), приоритет важнейшего критерия, отбор недоминирующих альтернатив
- •Лекция 17. Методы многокритериальной оптимизации
- •Лекция 18. Анализ иерархий
- •Список литературы
13.2.Решение задач нелинейного программирования в системе matlab
Для решения задач квадратичного программирования предназначена функция quadprog. Интерфейс quadprog практически не отличается от linprog, за исключением того, что первыми двумя входными параметрами являются массив H и вектор-столбец f, соответствующие матрице Н и вектору f целевой функции. Вместо матриц и векторов отсутствующих ограничений задаются пустые массивы.
Лекция 15. Динамическое программирование
Динамическое программирование - раздел теории оптимизации, посвященный исследованию и решению экстремальных задач специального вида, в которых целевая функция (целевой функционал) имеет вид суммы слагаемых (соответственно - интеграла). В основе метода динамического программирования лежит идея разбиения исходной задачи на последовательный ряд более простых задач. Основной областью приложения динамического программирования являются многошаговые процессы, т.е. процессы, протекающие во времени (дискретном или непрерывном).
Главным рабочим инструментом динамического программирования является метод рекуррентных соотношений, в основе которого лежит необходимое условие оптимальности, выражаемое обычно в виде так называемого принципа оптимальности и уравнения Беллмана (по имени американского математика Р. Беллмана).
Принцип оптимальности Беллмана утверждает, что оптимальный процесс (т.е. оптимальное управление и соответствующая ему оптимальная траектория) для всего периода управления обладает тем свойством, что любая его часть, рассматриваемая на промежутке времени, входящем в исходный промежуток, также представляет собой оптимальный процесс для этого частичного промежутка времени. Иными словами, любая часть оптимального процесса необходимо является оптимальным процессом.
Основные особенности дискретной модели динамического программирования состоят в следующем:
1) задача оптимизации интерпретируется как многошаговый процесс управления;
2) целевая функция равна сумме целевых функций для каждого шага;
3) выбор управлений хк на к-м шаге определяется только состоянием системы SK-1 на предыдущем шаге и не зависит от состояния системы на более ранних этапах управления;
4) состояние Sk на к-м шаге зависит только от предшествующего состояния Sk-1, и управления xk, принимаемого на данном шаге, т.е.
Sk=fk(Sk-1, xk) (1)
Схематически модель динамического программирования иллюстрирует следующая схема:
(2)
Число этапов n, как правило, считается фиксированным, однако в некоторых задачах n может быть неограниченным, что соответствует задаче с бесконечным горизонтом управления.
Следует иметь в виду, что принцип Беллмана справедлив только для задач, для которых целевые функции можно описать в виде аддитивных функций от траектории, т. е. для процессов с определенной структурой зависимости управлений.
Это означает, что критерий оптимальности (целевая функция) F имеет вид
, (3)
где числовая функция φk оценивает качество управленческого решения на к-м шаге.
Оптимальное управление удовлетворяет следующему принципу оптимальности Беллмана: предположим, что, осуществляя управление, уже выбрана последовательность оптимальных управленийx1, x2, ... , xp, на первых р шагах, которой соответствует последовательность состояний (т.е. траектория) S1, S2, ... , Sp. Требуется завершить процесс, т.е. выбрать xp+1.,..., хn (а значит и Sp+1,,... , Sn). Тогда, если завершающая часть процесса не будет максимизировать функцию
(4)
то
и весь процесс управления не будет
оптимальным. В частности, при р = п
- 1
получаем
требование максимизации функции
, зависящей
от переменной хn.
На основе принципа оптимальности Беллмана строится система рекуррентных соотношений (уравнения Беллмана):
(5)
где /, - заданная векторная функция соответствующих переменных, к = п,n-1,...,1, которым должен удовлетворять оптимальный процесс.
Максимум
в правой части равенства (2) берется по
всем управлениям х, допустимым на
шаге к
. Тем
самым, при вычислении
на
каждом шаге приходится решать семейство задач
максимизации функции переменной х, зависящих
от состояния Sk-1 на предыдущем
(k-1)-м
шаге. При этом величина
есть
оптимальное значение критерия
оптимальности.
Вычисление оптимального процесса на основе уравнений Беллмана (2) в каждом конкретном случае может оказаться непростой задачей, требующей навыка и изобретательности.
Модели динамического программирования применяются при распределении дефицитных капитальных вложений между предприятиями, при составлении календарных планов текущего и капитального ремонта оборудования и его замены и т.д.