
- •Методология систем и принятие решений
- •Лекция 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. Анализ иерархий
- •Список литературы
9.2. Численные методы математического программирования
Численные методы математического программирования – раздел вычислительной математики, связанный с отысканием решения задач математического программирования в тех случаях, когда затруднено получение строго математического решения [1]. Численные методы оптимизации, численный вычислительный эксперимент считаются важным разделом системного анализа.
Численные методы представляют собой последовательность однотипных шагов, итераций.
Выделяют конечные и бесконечные численные методы [1].
Конечные методы позволяют получать решение за конечное (но обычно заранее неизвестное) число шагов. К ним относят:
• симплекс-метод (с полной симплексной таблицей, с использованием обратной матрицы, с мультипликативным представлением обратной матрицы);
• двойственный симплекс-метод;
• метод последовательного сокращения невязок (комбинация обычного и двойственного симплекс-метода);
• метод наискорейшего спуска;
• метод сопряженных градиентов для минимизации квадратичной функции;
• методы условной минимизации, основанные на теореме Куна-Такера.
Область применения конечных методов ограничена линейным программированием и квадратичным программированием .
Бесконечные методы основаны на построении последовательности все более точных приближений к решению. При этом, прекращая процесс на том или ином шаге итераций, можно получить решение с заданной точностью.
К этой группе методов относят:
• метод Брауна-Робинсона [1], основанный на связи между парой задач линейного программирования (исходной и двойственной) и матричной игрой, т.е. на применении при решении задач математического программирования методов теории игр ;
• метод штрафных функций или метод штрафов [1], базирующийся на использовании функций штрафов.
Поскольку конечные и бесконечные методы математического программирования обладают общими достоинствами и недостатками, вводят классификацию методов по видам итераций.
При этом выделяют 4 вида итераций.
1. Методы возможных направлений.
Строится последовательность хk, к = 0,1,..., так, что каждое хk удовлетворяет всем ограничениям задачи. Вблизи очередного приближения хk минимизируемая функция и ограничения (существенные для хk) аппроксимируются более простыми (как правило, линеными или квадратичными). Решая получающуюся вспомогательную задачу линейного или квадратичного программирования, находят возможное (т.е. не выходящее за пределы области допустимых решений) направление, являющееся одновременно и направлением убывания функции. Сдвиг по этому направлению приводит к новой точке хk+1 .
Примерами могут служить симплексный метод в линейном программировании и метод проекции градиента и условного градиента, метод возможных направлений Зойтендейка в нелинейном программировании.
2. Методы, в которых последовательные приближения хk не удовлетворяют ограничениям, и в процессе итераций невязка в выполнении ограничений сводится к нулю.
При этом обычно используются те же приемы и аппроксимации и решения вспомогательных задач, что и в 1-й группе.
К этой группе относят двойственный симплекс-метод в линейном программировании, метод отсечения в выпуклом программировании ), при этом точка хk отсекается путем добавления нового линейного ограничения.
3. Итерационный процесс ведется не только по исходным, но и по двойственным переменным (множителям Лагранжа, оптимальным оценкам).
Одна итерация метода заключается в решении задачи о выборе оптимального варианта при заданных ценах на ресурсы (без учета их ограниченности) и в последующем пересчете цен в зависимости от степени нарушения ограничений на ресурсы.
К этой группе относится градиентный метод Эрроу-Гурвица-Удзавы.
4. Методы, основанные на учете ограничений с помощью штрафов.
Штрафы включаются в минимизируемую функцию. При этом получается последовательность задач на безусловный минимум, каждая из которых может решаться с помощью различных методов.
Задачи могут решаться с помощью градиентного метода, метода сопряженных градиентов, метода Ньютона и т. д.
К численным методам относят также методы решения задач специального вида: транспортные (Транспортная задача), блочные ( Блочное программирование).
В современных условиях при применении ЭВМ число методов расширяется. В частности, разрабатываются методы, основанные на использовании кусочно-линейной аппроксимации [5,6 и др.], комбинаторных алгоритмов [2], разработке непрерывных вариантов дискретных методов, строится непрерывная траектория х(t), задаваемая дифференциальными уравнениями.
Лекция 10. Решение задач линейного программирования симплекс-методом
В основе симплекс-метода лежит идея поиска базисного решения с последующим переходом от одного базиса к другому таким образом, чтобы целевая функция при этом все время увеличивалась, если речь идет о задаче максимизации. Для начала работы требуется, чтобы заданная система ограничений выражалась равенствами, причем в этой системе ограничений должны быть выделены базисные неизвестные. Решение задачи при помощи симплекс-метода распадается на ряд шагов. На каждом шаге от данного базиса Б переходят к другому, новому базису Б1 с таким расчетом, чтобы значение функции f(x) уменьшалось, т. е. fБ’≥fБ. Для перехода к новому базису из старого базиса удаляется одна из переменных и вместо нее вводится другая из числа свободных. После конечного числа шагов находится некоторый базис Б(k) , для которого fБ(k) есть искомый максимум для линейной функции f, а соответствующее базисное решение является оптимальным либо выясняется, что задача не имеет решения.
Пусть мы имеем задачу линейного программирования:
Целевая функция вида:
и ограничения
,
Переобозначим свободные коэффициенты ограничений aj0=bj. Приведем матрицу ограничений к каноническому виду:
(10.1)
Используя метод Жордана-Гаусса, приведем записанную систему к виду, где выделены базисные переменные. Введем условные обозначения:
x1, x2 , ... , xr - базисные переменные;
xr+1, xr+2 , ... , xn - свободные переменные.
Будем применять метод полного исключения к расширенной матрице ограничений. Выбираем направляющий элемент aij на данной итерации. В результате преобразования Гаусса получим новые значения коэффициентов:
(10.2)
Если l≠I, l=1,2,…,m.
Выясним
условия, при которых новое базисное
решение будет допустимым, т.е.
для
всех l.
По предположению, al0≥0, тогда
Если
то
очевидно,
,
так как
,
Если
то
будет
больше нуля при всех значениях l=1,2,…,m тогда
и только тогда, когда
при
условии
Преобразование Гаусса называется симплексным преобразованием, когда направляющий элемент определяют по следующим правилам:
направляющий столбец выбирают из условия, что в нем имеется хотя бы один положительный элемент;
направляющую
строку выбирают так, чтобы отношения
были
минимальными при условии, что aij>0.
Задачи линейного программирования, решаемые с помощью симплекс-метода, основываются на представлении решения в табличной форме. Рассмотрим последовательность действия при решении задачи линейного программирования.
По последней системе ограничений и целевой функции в каноническом виде построим симплекс-таблицу.
Таблица 10.1