Решение и постоптимальный анализ задачи линейного программирования
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
БЕРДЯНСКИЙ УНИВЕРСИТЕТ МЕНЕДЖМЕНТА И БИЗНЕСА
КАФЕДРА МАТЕМАТИКИ ТА МАТЕМАТИЧНИХ МЕТ0ДИВ
КУРСОВАЯ РАБОТА
по дисциплине
«Математические методы исследования операций»
на тему
Решение и постоптимальный анализ задачи линейного программирования
Вариант № 3 / 4
1 .Теоретические сведения
1.1 Симплекс-метод
Теорема (фундаментальная). Если ЗЛП имеет оптимальное решение (в ограниченной области всегда, а в неограниченной - в зависимости от ограниченности целевой функции Z), то оно совпадает, по крайней мере, с одним из допустимых базисных решений (ДБР) системы ограничений.
Согласно фундаментальной теореме вместо исследования бесконечного множества допустимых решений, необходимо исследовать лишь конечное число ДБР. Таким образом, принципиальная схема решения ЗЛП такова:
найти все ДБР;
вычислить для каждого из них соответствующее значение ЦФ z;
сравнить и определить наилучшее.
Но, в общем случае при больших значениях п и т количество ДБР может быть огромным (порядка С пт) и практическое осуществление перебора всех ДБР станет невозможным. Эти трудности обусловлены тем, что указанная принципиальная схема связана с беспорядочным перебором ДБР, без учета, насколько новое проверяемое ДБР изменяет ЦФ z и приближает ли оно нас к искомому оптимуму. Если же указанный перебор ДБР производить целеустремленно, добиваясь на каждом шаге монотонного изменения ЦФ z, т.е. чтобы каждое следующее ДБР было лучше предыдущего (или по крайней мере не хуже), то число анализируемых ДБР можно резко сократить.
Основной метод решения ЗЛП - симплекс-метод - базируется на идее последовательного улучшения решения. Очевидно, что для реализации этой идеи метод должен включать три основных элемента:
> способ определения исходного ДБР;
> правило перехода к следующему "лучшему" ДБР;
> критерий, по которому можно определить оптимальность найденного решения или необходимость его дальнейшего улучшения.
Табличный симплекс-метод
Пусть для исходной ЗЛП задано начальное ДБР, базис которого образуют первые т столбцов матрицы А. Введем новую переменную z и с помощью элементарных преобразований Жордана-Гаусса преобразуем расширенную систему к диагональной форме относительно переменных z,x1,x2,...,xm :
Данной диагональной форме в дальнейшем будем ставить в соответствие следующую таблицу:
В дальнейшем второй столбец будем опускать!
Построенная таблица называется симплекс-таблицей. Она содержит всю информацию, необходимую для осуществления одной итерации симплекс-метода. Реализация симплекс-метода с помощью симплекс-таблицы называется табличным симплекс-методом. По сути симплекс-метод и табличный симплекс-метод соотносятся между собой как метод и алгоритм.
Схема табличного симплекс-метода.
Шаг 0. Начальный шаг.
Пусть задано ДБР х° исходной задачи. Построим соответствующую этому ДБР х° симплекс-таблицу.
Шаг 1. Проверка условия оптимальности.
Если коэффициенты z-строки d0J, j = 1,m неотрицательные, то прекратить вычисления: текущей симплекс-таблице соответствует оптимальное ДБР.
Шаг 2. Выбор ведущего столбца.
Среди коэффициентов d0j,j = 1,n выбрать отрицательный. Пусть мы выбрали d0p. Тогда р-й столбец будет ведущим. Переменная хр будет вводиться во множество базисных переменных.
Шаг 3. Выбор ведущей строки.
Если коэффициенты aip,i = 1,m неположительные, то прекратить вычисления:
целевая функция не ограничена сверху, иначе выбрать q-ую строку, для которой q-ая строка называется ведущей.
Элемент таблицы aqp на пересечении ведущих строки и столбца называется ведущим элементом.
Шаг 4. Переход к новой симплекс-таблице.
Используя преобразования Жордана-Гаусса над СЛАУ, в симплекс-таблице сделать ведущий элемент равным единице, а все остальные коэффициенты ведущего столбца равными нулю. Слева от таблицы в q-ой строке запишем переменную хр.
Перейти на шаг 1.
1.2 Постоптимальный анализ
Постоптимальный анализ (анализ моделей на чувствительность) – это процесс, реализуемый после того, как оптимальное решение задачи получено. В рамках такого анализа выявляется чувствительность оптимального решения к определенным изменениям исходной модели. Иными словами, анализируется влияние возможных изменений исходных условий на полученное ранее оптимальное решение. Важность этого анализа ЗЛП объясняется также ещё и тем, что большая часть параметров ЗЛП точно не известна, и на практике обычно берутся приближенные значения параметров.
Отсутствие методов, позволяющих выявить влияние возможных изменений параметров модели на оптимальное решение, может привести к тому, что полученное (статическое) решение устареет еще до своей реализации. Существует два способа постоптимального анализа: графический метод и аналитический.
В постоптимальном анализе исследуются три класса параметров:
1. Компоненты вектора ограничений bt
После нахождения оптимального решения .представляется вполне логичным выяснить, как отразится на оптимальном решении изменение запасов ресурсов. Отметим, что неравенства модели типа "<" обычно могут быть интерпретированы, как ограничения на использование лимитированного ресурса. А ограничения типа ">" могут быть интерпретированы, как некоторые требования к моделируемому процессу.
При анализе изменений запасов ресурсов особенно важны два следующих аспекта:
> На сколько можно увеличить (уменьшить) запас некоторого ресурса для улучшения полученного оптимального значения целевой функции z?
> На сколько можно снизить (увеличить) запас некоторого ресурса при сохранении полученного оптимального значения целевой функции z?
2. Коэффициенты ЦФ Cj
Определяется пределы допустимых изменений коэффициентов целевой функции.
> Каков диапазон изменения (увеличения или уменьшения) того или иного коэффициента целевой функции, при котором не происходит изменение оптимального решения?
> Насколько следует изменить тот или иной коэффициент целевой функции, чтобы сделать некоторый недефицитный ресурс дефицитным и, наоборот, дефицитный ресурс сделать недефицитным?
1. Существует диапазон изменения А коэффициентов ЦФ как базисных, так и небазисных переменных, в которых текущее оптимальное решение остается оптимальным.
- для небазисных переменных существует только нижняя или верхняя граница;
- для базисных - обычно существуют и нижняя и верхняя границы.
2. Изменение коэффициента ЦФ базисной переменной всегда приводит к изменению значения ЦФ.
3. Эффект от изменения коэффициентов ЦФ может рассматриваться с двух позиций :
- с точки зрения сбыта нас интересуют равновесные цены;
- с точки зрения производства нас интересует диапазон изменения коэффициента ЦФ, ' в пределах которого текущий план производства остается оптимальным.
Нахождение диапазонов изменения запасов ресурсов
Недефицитные ресурсы
Если в оптимальном решении дополнительная переменная S i-ro ограничения базисная, то это ограничение является не связывающим (не активным в точке оптимума), а ресурс - недефицитный. В этом случае значение дополнительной базисной переменной дает диапазон изменения, в котором соответствующая компонента di может:
• Уменьшатся (в случае знака ограничения "<")
• Увеличивается (в случае знака ограничения ">").
Пусть S0 - значение соответствующей дополнительной переменной в точке оптимума. Тогда решение остаётся допустимым и оптимальным в диапазоне bi+ ∆ , где
Дефицитные ресурсы
Если в оптимальном решении некоторая дополнительная переменная небазисная, то существующее ' ей ограничение является связывающим (активным в точке оптимума), а ресурс - дефицитным.
Для ограничения типа "<":
Для ограничения типа ">":
Изменение коэффициентов Ц.Ф.
Существует диапазон изменения коэффициентов ' целевой функции как базисных так и не базисных переменных, в которых полученное решение остаётся оптимальным. Изменение коэффициента базисной переменной в пределах этого диапазона приводит к изменению значения целевой функции, так как Z = Ств*β, а одна из компонент вектора Св изменяется. Изменение коэффициента небазисной переменной не меняет значения задачи.
Для задачи на mах:
Базисные переменные:
Для базисной переменной диапазон устойчивости, в котором может изменяться коэффициент Ci , оставляя текущее решение оптимальным, задаётся выражением: Ci + ∆
где dj - относительная оценка переменной xj в текущем оптимальном решении.
Eсли отсутствуют соответственно.
Не базисные переменные:
Для не базисной переменной диапазон устойчивости, в котором может изменятся коэффициент Сi оставляя текущее решение оптимальным, задаётся выражением:
Для задачи на min: Базисные переменные:
Для базисной переменной диапазон устойчивости, в котором может изменяться коэффициент Сi , оставляя текущее решение оптимальным, задаётся выражением: Сi + ∆
He базисные переменные:
Для не базисной переменной диапазон устойчивости, в котором может изменятся коэффициент С; оставляя текущее решение оптимальным, задаётся выражением:
(dN) < ∆ < ∞
2. Содержательная постановка задачи
Вариант 3/2
Транспортная компания для перевозки инжира из Багдада в Мекку использует мулов, одногорбых и двугорбых верблюдов. Двугорбый верблюд может перевезти - 1000 фунтов, одногорбый – 500 фунтов, а мул – 300 фунтов. За один переход двугорбый верблюд потребляет 2 кипы сена и 40 галлонов воды. Одногорбый верблюд потребляет 2 кипы сена и 30 галлонов воды. Мул – 1 кипу сена и 10 галлонов воды. Пункты снабжения компании, расположенные в различных оазисах вдоль пути, могут выдать не более 900 галлонов воды и 35 кип сена. Верблюды и мулы арендуются у пастуха близ Багдада, арендная плата равна 12 пиастрам за двугорбого верблюда, 5 пиастрам за одногорбого и 4 пиастрам за мула.
Если компания должна перевести 8000 фунтов инжира из Багдада в Мекку, сколько надо использовать верблюдов и мулов для минимизации арендной платы пастуху?
3. Математическая постановка задачи
Переменные:
Х1 - Двугорбый верблюд
Х2 - Одногорбый верблюд
Х3 – Мул
Целевая функция – минимизация арендной платы.
Zmin = 12Х1 + 5Х2+ 4Х3
Ограничения:
Использования ресурса «вода» не более 900 галлонов:
40Х1 + 30Х2+ 10Х3 < 900
Использования ресурса «сено» не более 35 кип:
3Х1 + 2Х2+ Х3 < 35
Компания должна перевести 8000 фунтов инжира:
1000Х1 + 500Х2 + 300Х3 =8000
Все переменные должны быть не отрицательны:
Х1, Х2, Х3 > 0
4. Решения задачи симплекс-методом
ЦФ:
Zmin = 12X1 + 5X2 + 4X3
Ограничения:
40X1 + 30X2 + 10X3 < 900
3X1 + 2X2 + X3 < 35
1000X1 + 500X2 + 300X3 = 8000
X1, X2, X3 > 0
Приведем задачу к канонической форме и введём искусственные переменные:
Zmin = 12X1 + 5X2 + 4X3 + 0S1 + 0S2 – MR1
40X1 + 30X2 + 10X3 + 0S1 = 900
3X1 + 2X2 + X3 + 0S2 = 35
1000X1 + 500X2 + 300X3 + R1 = 8000
X1, X2, X3 > 0
R1 = – 1000X1 – 500X2 – 300X3 + 8000
Zmin = 12X1 + 5X2 + 4X3 + 0S1 + 0S2 – M (– 1000X1 – 500X2 – 300X3 + 8000) = (12 + 1000M) X1 + (5 + 500M) X2 + (4 + 300M) X3 – 8000M
Z + (–12 – 1000M) X1 + (–5 – 500M) X2 + (–4 – 300M) X3 = – 8000M
Составляем симплекс таблицу:
Шаг 0 | |||||||
БП | X 1 | X2 | X3 | S1 | S2 | R1 | решение |
S1 | 40 | 30 | 10 | 1 | 0 | 0 | 900 |
S2 | 3 | 2 | 1 | 0 | 1 | 0 | 35 |
R1 | 1000 | 500 | 300 | 0 | 0 | 1 | 8000 |
Z | -1000M+12 | -500M+5 | -300M+4 | 0 | 0 | 0 | -8000M |
Шаг 1 | |||||||
S1 | 0 | 10 | -2 | 1 | 0 | -1/25 | 580 |
S2 | 0 | 1/2 | 1/10 | 0 | 1 | -3/1000 | 11 |
X1 | 1 | 1/2 | 3/10 | 0 | 0 | 1/1000 | 8 |
Z | 0 | -1 | 2/5 | 0 | 0 | M-3/250 | -96 |
Шаг 2 | |||||||
S1 | -20 | 0 | -8 | 1 | 0 | -3/50 | 420 |
S2 | -1 | 0 | -1/5 | 0 | 1 | -1/250 | 3 |
X2 | 2 | 1 | 3/5 | 0 | 0 | 1/500 | 16 |
Z | 2 | 0 | 1 | 0 | 0 | M-1/100 | -80 |
В итоге: Z = 80, X1 = 0, X2 = 16, X3 = 0
5. Постоптимальный анализ решения
5.1 Определения статуса и ценности ресурсов
Zmin = 12X1 + 5X2 + 4X3
40X1 + 30X2 + 10X3 + S1 = 900
3X1 + 2X2 + X3 + S2 = 35
1000X1 + 500X2 + 300X3 = 8000
Двойственная задача имеет вид:
ω max = 900Y1 + 35Y2 + 8000Y3
40Y1 + 3Y2 + 1000Y3 < 12 (X1)
30Y1 + 2Y2 + 500Y3 < 5 (X2)
10Y1 + 1Y2 + 300Y3 < 4 (X3)
Y1 < 0 (S1)
Y2 < 0 (S2)
В оптимальной таблице прямой задачи базисными переменными являются S1, S2 и X2. Согласно с соотношениями дополняющей нежесткости соответствующие этим переменным ограничения – неравенства двойственной задачи в точке оптимума выполняются как равенства. Таким образом, получаем следующую систему линейных равенств.
30Y1 + 2Y2 + 500Y3 = 5 Y1 = 0
Y1 = 0 Y2 = 0
Y2 = 0 Y3 = 0,01
Решения полученной системы линейных уравнений:
Y1 = 0; Y2 = 0; Y3 = 0,01
По основной теореме двойственности решения прямой и двойственной задачи должны совпадать:
ω = 900*0 + 35*0 + 8000*0.01 = 80 => ω = Z
5.2 Ценности ресурсов
№ ресурса | Наименования | Статус | Ценность |
1-й | Вода | Недефицитный | 0 |
2-й | Сено | Недефицитный | 0 |
3-й | Соотношение | Дефицитный | 0,01 |
Согласно теории двойственности, двойственная переменная Yi (і = 1,2,3) определяет ценность і-го ресурса – величину, на которую изменится значения целевой функции при увеличении на единицу уровня запаса соответствующего ресурса.
Таким образом, при изменении в некоторых границах уровней запасов ресурсов имеем:
- при увеличении на 1 единицу ресурса «вода» не приведут к изменению
- при увеличении на 1 единицу ресурса «сено» не приведут к изменению
- при увеличении на 1 фунта перевозки, повысится арендная плата на 0,01 пиастров.
5.3 Определения допустимых диапазонов изменения уровней запасов ресурсов
Недефицитные ресурсы:
Переменная S1 – базисная, ресурс «вода» недефицитный.
Ограничения имеет знак « < »
-420 < ∆1 < ∞
Абсолютный диапазон изменения:
480 < b1 < ∞
Переменная S2 – базисная, ресурс «сено» недефицитный.
Ограничения имеет знак « < »
-3 < ∆2 < ∞
Абсолютный диапазон изменения:
32 < b2 < ∞
Дефицитные ресурсы:
Переменная R1 – не базисная, ресурс дефицитный.
-8000 < ∆3 < 750
Абсолютный диапазон изменения:
0 < b3 < 8750
5.4 Определение допустимых диапазонов изменения коэффициентов целевой функции
Базисные переменные:
Переменная X2 – базисная:
-∞ < ∆2 < 1
Абсолютный диапазон изменения коэффициента ЦФ:
-∞ < С2 < 13
Не базисные переменные:
Переменная Х1 – не базисная:
2 < ∆1 < ∞
Абсолютный диапазон изменения коэффициента ЦФ:
14 < C1 < ∞
Переменная Х3 – не базисная:
1 < ∆3 < ∞
Абсолютный диапазон изменения коэффициента ЦФ:
5 < C3 < ∞
6. Ответ
Оптимальное решения задачи:
- использование «двугорбый верблюд» - 0
- использование «одногорбый верблюд» - 16
- использования «мул» - 0
При этом оптимум = 80 пиастрам
Диапазон изменения уровня запасов:
- запасы воды -420 < ∆1 < ∞
- запасы сена -3 < ∆2 < ∞
- соотношение -8000 < ∆3 < 750
Абсолютные диапазоны изменения уровней запасов:
- запасы воды 480 < b1 < ∞
- запасы сена 32 < b2 < ∞
- соотношение 0 < b3 < 8750
Ценность ресурсов:
- при увеличении на 1 единицу ресурса «вода» не приведут к изменению
- при увеличении на 1 единицу ресурса «сено» не приведут к изменению
- при увеличении на 1 фунта перевозки, повысится арендная плата на 0,01 пиастров.
Диапазон изменения коэффициентов:
- двугорбый верблюд 2 < ∆1 < ∞
- одногорбый верблюд ∞ < ∆2 < 1
- мул 1 < ∆3 < ∞
Абсолютные диапазоны изменения:
- двугорбый верблюд 14 < C1 < ∞
- одногорбый верблюд -∞ < С2 < 13
- мул 5 < C3 < ∞
7. Задание на применения графического способа решения задач линейного программирования
№ 28
Z = 2X1 + X2 → min
X1 - X2 > 4 (1)
X1 + X2 > 4 (2)
4X1 - X2 < 16 (3)
7X1 + X2 < 14 (4)
X1, X2 > 0
Ответ: Нет решений
№ 58
Z = -X1 + 3X2 → max
-2X1 + X2 < 2 (1)
X1 + 2X2 > 6 (2)
X1 > 2 (3)
3X1 + 4X2 < 24 (4)
X1, X2 > 0
Ответ: X1 = 2
X2 = 4.5
Z = 11.5
СПИСОК ЛИТЕРАТУРЫ
Исследование операций. В 2-ух томах. Методологические основы и математические методы. / Под ред. Дж. Моудера, С. Элмаграби. - М.: Мир, 1981. Т. 1.-712 с.
Муртаф Б. Современное линейное программирование. Теория и практика -М.: Мир, 1984.- 224 с. Т.
Таха X. Введение в исследование операций: В 2-ух томах. - М.: Мир, 1985. Т. 1.-325с.
Калихман И.Л. Линейная алгебра и программирование. - М.: Высшая школа, 1967.-428 с.
Конспект лекций.