Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Симплексный метод решения задач линейного программированияСодержание книги
Поиск на нашем сайте Доказано, что оптимальное решение задачи линейного программирования связано с угловыми точками многогранника решений, поэтому возникает мысль о следующем пути решения задачи линейного программирования с любым числом переменных. Найти каким-нибудь способом все угловые точки многогранника планов (а их Итак, симплексный метод предполагает: умение находить начальный опорный план, наличие признака оптимальности (неоптимальности) опорного плана, умение переходить к нехудшему опорному плану. 3.1. Построение начального опорного плана 1. Пусть задача линейного программирования представлена целевой функцией Z=c1х1 +с2х2 +...+сnхn = Говорят, что ограничение задачи линейного программирования имеет предпочтительный вид, если в i ³ 0 и левая часть этого ограничения содержит переменную с коэффициентом 1, а в остальные ограничения – равенства она входит с коэффициентом равным 0. Пример 7. Первое и второе ограничения имеют предпочтительный вид, а третье – нет. Если каждое ограничение – равенство задачи линейного программирования имеет предпочтительный вид, то и система ограничений представлена в предпочтительном виде. В этом случае легко найти ее опорное решение: все свободные переменные приравниваются к нулю, тогда базисные переменные равны свободным членам. Пример 8.
а) предпочтительными, т. е. базисными переменными являются х2, х3, х4, а свободными – х1 и х5 б) пусть система ограничений имеет вид в) в задачах линейного программирования на min (задача о составлении рациона) система ограничений имеет вид В целевую функцию переменные w i вводят с коэффициентом М в случае решения задачи на min и с коэффициентом (– M) для задачи на max, где М – большое положительное число. Полученная задача называется М-задачей, которая соответствует исходной. Она всегда имеет предпочтительный вид. Пусть исходная задача линейного программирования имеет вид: max(min) Z = причем ни одно из ограничений не имеет предпочтительной переменной. Тогда М-задача запишется так: max (min) =
хj ³ 0, (j = Эта система ограничений имеет предпочтительный вид, ее начальный опорный план Симплексные таблицы. Признак оптимальности опорного плана Итак, любую задачу линейного программирования можно представить в предпочтительном виде: max(min) Z =
хj ³ 0, (j = Рассмотрим эту задачу для n = 4, m = 2 (и распространим ее для общего случая): Z = c1x1 + c2x2 + c3x3 + c4x4.
Выразим базисные переменные (БП) х1, х2 через свободные х3 и х4
x2 =
Введем обозначения в общем виде:
где С учетом этих равенств целевая функция примет вид: max(min)Z= В общем случае задачу записывают в таблицу, которая называется симплексной (табл. 17). Таблица 17
Последнюю строку называют индексной строкой, число Теорема. Пусть исходная задача решается на max. Если для некоторого опорного плана все оценки Δj (j = Доказательство: Так как Z = ΔO Теорема. Если исходная задача решается на min и для некоторого опорного плана все оценки Δj (j = Пример 9. Решить задачу линейного программирования.
Система ограничений задачи имеет предпочтительный вид: базисом являются переменные х2,х4,х1. Заносим условие задачи в симплексную таблицу (табл. 18): Таблица 18
Заполним индексную строку (Z j – с j): ΔO = – 1 × 1,5 – 2 × 2 + 2 × 0,5 = – 4,5, Δ1 = – 1× 0 – 2 × 0 + 2 × 1 – 2 = 0, Δ2 = – 1× 1 – 2×0 + 2×0 – (–1) = 0, Δ3 = – 1× 0,5 – 2 + 2 × (– 0,5) – 3= – 6,5, Δ4 = – 1× 0 – 2×1 + 2×0 – (– 2) = 0, Δ5 = – 1× 0,5 – 2 × 0 + 2 × 0,5 – 1 = – 0,5. Начальный опорный план
3.3. Переход к нехудшему опорному плану Пусть решается задача линейного программирования с системой ограничений в предпочтительном виде
ее начальный опорный план Рассмотрим задачу на mах: если все Δ j ³ 0, то опорный план оптимален. Пусть существует jO, для которого ΔjO < 0. Вектор столбец x i = B I – При значительном увеличении Итак, xjo можно увеличивать до тех пор, пока B i – xjo = min (если это условие выполняется при нескольких i, то в качестве i O можно выбрать любое) Cтроку xm+1 = 0, …,
xm = Новый базис будет состоять из переменных х1, В результате преобразований получен новый опорный план Практика показывает, что в случае решения задачи на max число шагов уменьшается, если разрешающий столбец выбрать по правилу max В случае задачи на min разрешающий столбец нужно выбирать по правилу mах Δj (Δj > 0). Далее процесс повторяется. Проверяем, является ли план Шаг симплексного метода, позволяющий перейти от одного опорного плана к другому нехудшему, называется итерацией. Симплексные преобразования нового базиса выполняются по правилу: 1. Элементы строки i O новой таблицы равны соответствующим элементам разрешающей строки старой таблицы, деленным на разрешающий элемент: 2. Элементы разрешающего столбца j0 новой таблицы равны 0, за исключением 3. Чтобы найти любой другой элемент новой симплексной таблицы, нужно воспользоваться правилом прямоугольника и полученное число разделить на разрешающий элемент. 4. По 3 пункту вычисляются и элементы индексной строки. Для контроля вычислений они могут быть рассчитаны по формулам Пример 10. Найти max Z = 14х1 – 5х2 + 2х3 – х4 + 8х5, если
Решение. Так как задача имеет предпочтительный вид, то занесем ее условия в симплексную табл. 19 (итерация 0). Таблица 19
0 итерация: исходная задача на max, поэтому начальный опорный план
1 итерация: 1) выбираем разрешающий элемент из условия: max {|Δ1|, |Δ5|} = m a x (4; 1) = 4 – это соответствует 1 столбцу, поэтому его выбираем за разрешающий то есть X1 будем вводить в базис. Для определения разрешающей строки находим минимальное симплексное отношение:
итак, 1 – строка разрешающая =>элемент а11 = 1 – разрешающий; 2) переменную х2 выведем из базиса, а х1 введем в базис; 3) разрешающую строку делим на разрешающий элемент; 4) элементы разрешающего столбца заполняем нулями; 5) остальные элементы пересчитываем по правилу прямоугольника и делим на разрешающий элемент. Делаем контрольные проверки:
Так как существует отрицательная оценка ∆5 = – 5, план 2 итерация: 1) разрешающий столбец 5, переменную. х5,будем вводить в базис. 2) определяем разрешающую строку: min симплексное отношение 3) разрешающую строку делим на 8; 4) в разрешающем столбце проставляем нули; 5) остальные элементы пересчитываем; 6) делаем контрольные проверки, так же как и в итерации 1, так как все Dj ³ 0, опорный план Ответ: Пример 11. Решить М-задачу линейного программирования: Найти: min Z = 3x1 + 2х2 + 3х3, если Решение: Сведем задачу к каноническому виду и введем искусственные переменные
Занесем условие М-задачи в симплексную таблицу (индексную строку записываем в две строки: в первой – слагаемые без М, во второй – слагаемые с М) (табл. 20). Таблица 20
Окончание табл. 20
Примечание: по мере вывода из базиса искусственных переменных соответствующие им столбцы можно опускать.
Так как все Dj ≤ 0, то план оптимален, Ответ: Замечания: 1. Если в индексной строке последней симплексной таблицы, содержащей оптимальный план, имеется хотя бы одна нулевая оценка, соответствующая свободной переменной, то задача линейного программирования имеет бесконечное множество оптимальных планов. 2. Если в индексной строке симплексной таблицы задачи линейного программирования на max содержится отрицательная оценка Dj < 0, а в соответствующем столбце переменной хj. нет ни одного положительного элемента, то целевая функция на множестве допустимых планов задачи не ограничена сверху. Если же задача линейного программирования на min и в индексной строке содержится положительная оценка Dj > 0, а в столбце переменной хj нет ни одного положительного элемента, то на множестве допустимых планов целевая функция не ограничена снизу. С экономической точки зрения неограниченность целевой функции задачи линейного программирования говорит только об одном; разработанная модель недостаточно точна (бессмысленно говорить о бесконечной прибыли). Типичными ошибками, приводящими к построению моделей такого рода, являются: а) неполный учет ограничений, которые являются существенными в данной задаче; б) небрежные оценки параметров, которые участвуют в ограничениях.
Задания для самостоятельной работы Задание 1. Для изготовления двух видов продукции P1 и P2 используют три вида сырья (S1, S2, S3). На изготовление единицы продукции P1 используют сырье S1 – a1 (ед.), S2 – a2 (ед.), S3 - a3 (ед.). На изготовление единицы продукции P2 используют сырье S1 – b1 (ед.), S2 – b2 (ед.), S3 – b3 (ед.). Запасы сырья S1 составляют не более чем k1, сырья S2 – не более чем k2, сырья S3 – не более чем k3. Прибыль от единицы продукции P1 составляет a руб., от P2 составляет b руб. Необходимо составить такой план выпуска продукции, чтобы при ее реализации получить максимальную прибыль. Данные для выполнения задания соответствующего варианта представлены в табл. 21. Таблица 21
Окончание табл. 21
Заданеи 2. Задана каноническая модель задачи линейного программирования. Z = CX, AX = A0, X ³ 0, A = (aij)3 х 5. Требуется найти max Z М- методом. 1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22. 23.
24.
25.
26.
27.
28.
29.
30.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2020-11-11; просмотров: 239; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.009 с.) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||