
Линейное программирование.ppt
- Количество слайдов: 182
ОБЩАЯ ЗАДАЧА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
1. 1 Задачи математического и линейного программирования • Исследование различных процессов, в том числе и экономических, обычно начинается с их моделирования, т. е. отражения реального процесса через математические соотношения. При этом составляются уравнения или неравенства, которые связывают различные показатели (переменные) исследуемого процесса, образуя систему ограничений. В этих соотношениях выделяются такие переменные, меняя которые можно получить оптимальное значение основного показателя данной системы (прибыль, доход, затраты и т. п. ). Соответствующие методы, позволяющие решать указанные задачи, объединяются под общим названием «математическое программирование» , или «математические методы исследования операций» .
• Итак, математическое программирование — это раздел высшей математики, посвященный решению задач, связанных с нахождением экстремумов функций нескольких переменных при наличии ограничений на переменные. • Построение математической модели экономической задачи включает следующие этапы: 1) выбор переменных задачи; 2) составление системы ограничений; 3) выбор целевой функции.
• Переменными задачи называются величины x 1 , x 2 , . . . , хn , которые полностью характеризуют экономический процесс. Их обычно записывают в виде вектора Х= (х1, х2, . . . , хn). • Система ограничений включает в себя систему уравнений и неравенств, которым удовлетворяют переменные задачи и которые следуют из ограниченности ресурсов или других экономических или физических условий, например положительности переменных и т. п. • Целевой функцией называют функцию переменных задачи, которая характеризует качество выполнения задачи и экстремум которой требуется найти.
• Общая задача математического программирования формулируется следующим образом: найти экстремум целевой функции • F(X) =f (х1, х2, . . . , хn) → max (min) (1. 1) • и соответствующие ему переменные при условии, что эти переменные удовлетворяют системе ограничений • (1. 2) • Если целевая функция (1. 1) и система ограничений (1. 2) линейны, то задача математического программирования называется задачей линейного программирования.
• В общем случае задача линейного программирования может быть записана в таком виде: • F(Х)=с1 х1+ с2 х2+…+ сn хn → max (min), (1. 3) • • Данная запись означает следующее: найти экстремум целевой функции задачи (1. 3) и соответствующие ему переменные Х = (х1, х2, . . . , хn) при условии, что эти переменные удовлетворяют системе ограничений (1. 4) и условиям неотрицательности (1. 5).
• Допустимым решением (планом) задачи линейного программирования (ЗЛП) называется любой n мерный вектор Х= (х1, х2, . . . , хn), удовлетворяющий системе ограничений и условиям неотрицательности. • Множество допустимых решений (планов) задачи образует область допустимых решений (ОДР). • Оптимальным решением (планом) ЗЛП называется такое допустимое решение (план) задачи, при котором целевая функция достигает экстремума.
1. 2 Математические модели простейших экономических задач • Задача использования ресурсов • Для изготовления нескольких видов продукции P 1, Р 2 , . . . , Рn используют т видов ресурсов S 1, S 2, . . . , Sm. Это могут быть различные материалы, электроэнергия, полуфабрикаты и т. п. Объем каждого вида ресурсов ограничен и известен (b 1, b 2, . . . , bm ). Известно aij (i = 1, 2, . . . , т; j = 1, 2, . . . , n) — количество каждого i го вида ресурса, расходуемого на производство единицы j-го вида продукции. Кроме того, известна прибыль, получаемая от реализации единицы каждого вида продукции (с1, с2, . . . , сп). Условия задачи можно представить в виде табл. 1. 1.
Таблица 1. 1 Вид ресурс. S 1 Объем ресурсов b 1 P 2 … Pn a 11 a 12 … a 1 n S 2 b 2 a 21 a 22 … a 2 n … … … Sm bm am 1 am 2 … amn c 1 c 2 … cn прибыль
• Пусть хj (j = 1, 2, . . . , n) — количество каждого вида продукции, ко тороенеобходимо произвести. Для первого ресурса имеет место неравенство ограничение a 11 x 1+ a 12 x 2+…+ a 1 n xn≤ b 1. • Аналогичные неравенства будут и для остальных видов ресурсов. Сле дуетучитывать также, что все значения хj≥ 0, j=1, 2, . . . , n. • Общая прибыль, получаемая от реализации всей продукции, может быть представлена как функция • F(X) = с1 х1 + с2 х2 +. . . + сn хn. • Необходимо эту функцию максимизировать. • Таким образом, математическая модель задачи использования ресурсов запишется в виде • F(X) = с1 х1 + с2 х2 +. . . + сn хn→max, • В более компактной форме целевую функцию и систему ограничений можно записать, используя знак суммирования, • max, • i=1, 2, . . . , m,
• Задача о составлении рациона питания • Требуется составить ежедневный рацион питания животного на основе имеющихся видов кормов так, чтобы общая стоимость использованных кормов была минимальной. При этом животное не должно получать менее определённого количества питательных веществ, например, таких, как жиры, углеводы, белки, витамины и т. п. • Каждый вид корма содержит разную комбинацию этих веществ. Известна цена единицы веса каждого корма. • Пусть имеется п различных кормов (продуктов) Р 1, Р 2, . . . , Рn и перечень из т необходимых питательных веществ S 1, S 2, . . . , Sm. Обозначим через аij содержание (в весовых единицах) i го питательного вещества в единице j го корма, а через bi минимальную суточную потребность животного в i м веществе. Через хj обозначим количество каждого вида корма в ежедневном рационе. Очевидно, что хj ≥ 0.
Условия задачи можно представить в виде табл. 1. 2. Питательное вещество P 1 P 2 … Pn S 1 a 12 … a 1 n Суточн ая потреб ность b 1 S 2 a 21 a 22 … a 2 n b 2 … … … Sm am 1 am 2 … amn bm c 1 c 2 … cn - СТОИМОСТЬ 1 кг КОРМА
• Для первого вида питательного вещества неравенство ограничение примет вид a 11 x 1+ a 12 x 2+…+ a 1 n xn≥ b 1. • Аналогичные неравенства будут и для остальных питательных веществ. Следует учитывать также, что все значения хj≥ 0, j=1, 2, . . . , n. • Общие затраты на весь рацион питания животного можно найти на основе линейной функции • F(X) = с1 х1 + с2 х2 +. . . + сn хn. • Необходимо эту функцию минимизировать. • Итак, математическая модель задачи составления рациона питания запишется в виде • F(X) = с1 х1 + с2 х2 +. . . + сn хn→min, • Рассмотрим варианты составления математической модели для следующих задач.
• Задача 1. (Планирование производства. ) • Некоторое предприятие выпускает три типа продукции П 1, П 2, П 3 двумя технологическими способами S 1 и S 2. Количество продукции j-гo вида (j = 1, 2, 3), произведенного i м способом (i = 1, 2) за единицу времени, задано табл. 1. 3. Необходимо так организовывать производство, чтобы получить наибольшую прибыль при реализации продукции по указанной стоимости.
Таблица 1. 3 Продукции П 1 Т. способ П 2 П 3 Лимит времени S 1 20 25 30 10 S 2 30 20 15 8 5 3 6 Стоимость 1 ед. продукции
• Математическая модель задачи • Обозначим через хi j — время, затраченное на изготовление продукции Пj (j = 1, 2, 3) i м способом. Тогда план производства будет иметь вид: • При этом продукции 1 го вида будет выпущено 20 х11+ 30 х21 , 2 го вида 25 х12+20 х22 , 3 го вида 30 х13+ 15 х23. Стоимость всей продукции (обозначим ее за F) равна 5(20 х11+30 х21)+3(25 х12+20 х22)+6(30 х13+15 х23) и она должна быть максимальной. Но при этом есть ограничения по времени: х11+ х12 + х13 ≤ 10, х21+ х22 + х23 ≤ 8 и очевидно, все хi j ≥ 0. • Окончательно получаем математическую модель задачи • F=5(20 х11+ 30 х21)+3(25 х12+20 х22)+6(30 х13+ 15 х23) → max, S 1 S 2 x 11 x 21 x 12 x 22 x 13 x 33
• Задача 2. (Задача о смеси. ) • Известно, что при правильном питании человек должен получать в день не менее 20 единиц витамина А, не менее 15 единиц витамина В. Содержание этих витаминов в одной единице каждого из продуктов П 1, П 2, П 3 задано табл. 1. 4. Составить наиболее дешевый рацион питания. Все данные занесены в табл. 1. 4.
Таблица 1. 4 Витамины продукты А В Стоимость одной единицы Пi 25 П 1 4 5 П 2 5 2 30 П 3 2 6 20 >15
• Математическая модель задачи • Пусть хi — количество продукта Пi, потребляемого в день (i=1, 2, 3), тогда стоимость всех продуктов (обозначим F) будет равна F=25 х1 +30 x 2 + +20 х3. При этом количество витамина А равно 4 x 1 + 5 х2 + 2 х3 , витамина В — 5 x 1 + 2 х2 + 6 х3, получаем математическую модель: • F=25 х1 +30 x 2 +20 х3 → min, • Задача 3. (О раскрое материала. ) • Для изготовления некоторого изделия требуется 2 планки по 2 м, 3 — по 2, 5 м и одна трехметровая. Для этого используют 100 досок по 7 м длиной. Как распилить доски, чтобы получить возможно большее число комплектов? • Математическая модель задачи • Рассмотрим возможные варианты распиливания досок. • Таблица 1. 5
№ вариан Длина планки 2 м 1 2 3 4 5 6 3 2 2 1 0 0 2, 5 м 0 1 0 2 1 0 3 м 0 0 1 2
• Обозначим через хi— количество досок, распиленных i м способом, тогда заготовок по 2 м получится 3 x 1+ 2 х2 + 2 х3 + х4, по 2, 5 м — x 2 + 2 x 4 + х5; по 3 м — х3 + x 5 + 2 x 6. Обозначим через к — число полученных изделий, тогда • 3 x 1+ 2 х2 + 2 х3 + х4 = или 2(3 x 1+ 2 х2 + 2 х3 + х4 )=к, • x 2 + 2 x 4 + х5 = или 3(x 2 + 2 x 4 + х5 )=к, • х 3 + x 5 + 2 x 6=к. Исключим к. • 2(3 x 1+ 2 х2 + 2 х3 + х4 )= 3(x 2 + 2 x 4 + х5 ) или 6 x 1+ х2 + 4 х3 4 х4 3 х5 =0, • 2(3 x 1+ 2 х2 + 2 х3 + х4 )= х3 + x 5 + 2 x 6 или 6 x 1+ 4 х2 + 3 х3 +2 х4 х5 2 х6=0. • Окончательно получим математическую модель • к=х 3 + x 5 + 2 x 6→ max, • • все хi ≥ 0. • Мы видим, что различные экономические задачи приводят к одному и тому же типу математических задач. Задачи такого типа решаются методами линейного программирования.
1. 3. Каноническая форма задачи линейного программирования • В общем случае задача линейного программирования записывается так, что ограничениями являются как уравнения, так и неравенства, а переменные могут быть как неотрицательными, так и произвольно изменяющимися. В том случае, когда все ограничения являются уравнениями и все переменные удовлетворяют условию неотрицательности, задачу линейного программирования называют канонической. Она может быть представлена в координатной, векторной или матричной форме записи. • 1. Каноническая задача линейного программирования в координатной записи имеет вид
• F(X) = с1 х1 + с2 х2 +. . . + сn хn→max (min), Данную задачу можно записать, используя знак суммирования: max (min), i=1, 2, . . . , m,
• • • • 2. Каноническая задача линейного программирования в векторной записи имеет вид F(X)=C·X → max (min), A 1 x 1+ A 2 x 2+…+ An xn=A 0 , X ≥ θ. В данном случае введены векторы Х=(х1, х2, …. , , хn), С=(с1, с2, …. , сn), θ =(0, 0, …, 0). Здесь C·X ― скалярное произведение векторов C и X. 3. Каноническая задача линейного программирования в матричной записи имеет вид F(X) = CX → max (min), AX = A 0 , X≥θ, где Здесь А ― матрица коэффициентов системы уравнений, Х ― матрица столбец переменных задачи, АО — матрица столбец правых частей системы ограничений. Нередко используются задачи линейного программирования, называемые симметричными, которые в матричной записи имеют вид F(X) = CX→ max, или F(X) = CX→ min, AX ≤A 0 , X≥θ AX ≥A 0 , X≥θ.
1. 4. Приведение общей задачи линейного программирования к канонической форме • В большинстве методов решения задач линейного программирования предполагается, что система ограничений состоит из уравнений и естественных условий неотрицательности переменных. Однако при со ставлении математических моделей экономических задач ограничения в основном формируются в системы неравенств, поэтому необходимо уметь переходить от системы неравенств к системе уравнений. Это может быть сделано следующим образом. • Возьмем, например, линейное неравенство а 1 х1 + а 2 х2 +. . . + аn хn ≤ b и прибавим к его левой части некоторую величину хn+1, такую, чтобы неравенство превратилось в равенство а 1 х1+ а 2 х2+. . . +аn хn+1 =b, где хn+1 =b-а 1 х1 -а 2 х2 - -. . . - аn хn. Неотрицательная переменная хn+1≥ 0 называется дополнительной переменной. • Следующая теорема дает основание для возможности такого преобразования.
• Теорема 1. 1. Каждому решению β=(β 1, β 2, … βn) неравенства а 1 х1 +а 2 х2 + +. . . + аn хn≤ b соответствует единственное решение =(β 1, β 2, … βn , βn+1) уравнения а 1 х1 + а 2 х2 +. . . + аn хn+1 =b, и неравенства хn+1 ≥ 0, и, наоборот, каждому решению уравнения и неравенства соответствует единственное решение β неравенства. • Доказательство. Пусть β=(β 1, β 2, … βn) — решение неравенства а 1 х1 + а 2 х2 +. . . + аn хn≤ b. Тогда а 1 β 1 + а 2 β 2 +. . . + аn βn≤ b или 0≤ b- (а 1 β 1 + а 2 β 2 +. . . + аn βn)= βn+1. • Подставив в уравнение вместо переменных значения β 1, β 2, … βn , βn+1, получим а 1β 1+а 2β 2+. . . +аn βn+βn+1= а 1β 1+а 2β 2+. . . +аn βn+ b-(а 1 β 1 +а 2 β 2 +. . . +аnβn)= b. • Таким образом, решение удовлетворяет уравнению и неравенству. Значит, доказана первая часть теоремы. Аналогично доказывается обратное.
• Например, если в задаче использования ресурсов в левую часть каждого уравнения системы ограничений добавить положительную переменную хn+1, i=1, 2, . . . , m, то получится система уравнений ограничений В задаче составления рациона питания система ограничений неравенств имеет вид В этом случае система уравнений ограничений получится, если в левой части каждого неравенства вычесть соответствующую неотрицательную дополнительную переменную Полученная таким образом система уравнений ограничений вместе с условиями неотрицательности переменных, т. е. хj ≥ 0, j = 1, 2, . . . , n , и целевой функцией является канонической формой записи задачи линейного программирования. • Дополнительные переменные вводятся в целевую функцию с нулевыми коэффициентами и поэтому не влияют на ее значение.
• Задачи для самостоятельного решения • Записать экономико математические модели следующих задач: • 1. Для выпуска изделий двух типов (А и В) на заводе используется сырье четырех видов (I, III и IV). Расход сырья каждого вида на изготовление единицы продукции задан табл. 1. 6. Запасы сырья составляют: I вида — 21 ед. , II вида — 8 ед. , III вида— 12 ед. , IV вида — 5 ед. Выпуск одного изделия типа А приносит 3 ден. ед. прибыли, одного изделия типа В — 2 ден. ед. Составить план производства, обеспечивающий наибольшую прибыль. • Таблица 1. 6
сырьё изделие I II IV А 2 1 В 3 1 1 0
• 2. На четырех станках (I, III и IV) обрабатываются два вида деталей (А и В), причем каждая деталь проходит обработку на всех станках. Известны время обработки деталей на каждом станке, время работы станков в течение одного цикла производства и прибыль, получаемая от выпуска одной детали каждого вида. Эти данные приведены в табл. 1. 7. Составить план производства, обеспечивающий наибольшую прибыль при условии, что количество деталей вида В не должно быть меньше количества деталей вида А.
• Таблица 1. 7 Станки Время обработки детали, ч А В Время работы за цикл пр-ва, ч I 1 2 16 II 2 3 26 III 1 1 10 IV 3 1 24 Прибыль на одну деталь 4 1
• • 3. Совхоз закупает удобрения двух видов. В единице массы удобрения I вида содержатся 3 усл. ед. химического вещества а, 2— вещества b и 1— вещества с; в единице массы удобрения II вида — 1 усл. ед. вещества а, 1—вещества b и 1— вещества с. На 1 га почвы необходимо внести не менее 9 усл. ед. вещества а, 8 — вещества b, 6 — вещества с. Составить наиболее экономичный план закупки удобрений (в расчете на 1 га), если цены удобрений (на 1 ед. массы) таковы: I вида — 3 ден. ед. , II вида — 4 ден. ед. 4. Для производства двух видов продукции (А и В) предприятие должно использовать оборудование трех видов (I, III), имеющееся в количествах соответственно 8, 6, 9 ед. По техническим условиям для производства 1 шт. продукции А требуется 2 ед. оборудования I вида, 1 ед.
• • оборудования — II вида и 3 ед. оборудования — III вида, а для производства 1 шт. продукции В — 2, 2 и 0 ед. соответствующих видов оборудования. Известно, что от реализации 1 шт. продукции А предприятие получит 1 ден. ед. прибыли, 1 шт. продукции В — 3 ден. ед. Сколько единиц продукции каждого вида должно выпустить предприятие, чтобы получить наибольшую прибыль? 5. Можно закупить корм двух видов (I и II). В каждой единице корма I вида содержатся 1 ед. витамина А, 2 ед. витамина В и нет витамина С; в каждой единице корма II вида — 2 ед. витамина А, 1 ед. витамина В и 1 ед. витамина С. Животному необходимо дать в сутки не менее 10 ед. витамина А , 10 ед. витамина В и 4 ед. витамина С. Составить наиболее дешевый рацион питания животного, если стоимость единицы корма I вида равна 2 ден. ед. , а стоимость единицы корма II вида — 5 ден. ед.
• • 6. Фирма выпускает 2 вида мороженого: сливочное и шоколадное. Для изготовления мороженого используются два исходных продукта: мо локо и наполнители, расходы которых на 1 кг мороженого и суточные запасы исходных продуктов даны в табл. 1. 8. Таблица 1. 8
Таблица 1. 8 Исходный продукт Расход исходных продуктов на 1 кг мороженого Запас, кг сливочное шоколадно е молоко 0, 8 0, 5 400 наполните 0, 4 ли 0, 8 365
• Изучение рынка сбыта показало, что суточный спрос на сливочное мороженое превышает спрос на шоколадное не более чем на 100 кг. Кроме того, установлено, что спрос на шоколадное мороженое не превышает 350 кг в сутки. Отпускная цена 1 кг сливочного мороженого 16 ден. ед. , шоколадного — 14 ден. ед. Определить количество мороженого каждого вида, которое должна производить фирма, чтобы доход от реализации продукции был мак симальным.
2. ГРАФИЧЕСКИЙ МЕТОД РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ • • 2. 1. Задача с двумя переменными Пусть требуется найти максимальное значение функции F(X) = с1 х1 + с2 х2 (2. 1) при ограничениях
• Допустим, что система ограничений (2. 2) совместна, т. е. имеет решение, а многоугольник ее решений (ОДР) ограничен. Каждое из неравенств (2. 2) определяет полуплоскость с границей , i = 1, 2, . . . , т или х1 = 0, х2 = 0. Представим этот многоугольник на плоскости Ох1 х2 (рис. 2. 1). Рис. 2. 1
• Линейная функция (2. 1) при фиксированных значениях F(X) является уравнением прямой линии c 1 x 1+ c 2 x 2=const. • Изобразим прямую, соответствующую линейной функции, при F(X) = 0. Эта прямая пройдет через начало координат. Другим значениям F(X) будут соответствовать прямые, параллельные другу. • Прямая, уравнение которой получено из целевой функции задачи при равенстве ее постоянной величине, называется линией уровня. • Известно, что коэффициенты при переменных в линейном уравнении являются координатами нормального вектора к соответствующей прямой или плоскости.
• Следовательно, нормальный вектор линий уровня и имеет координаты с1 и с2, т. е. = (с1, с2). • Если перемещать линию уровня параллельно ее начальному положению в направлении вектора , то для данного случая (см. рис. 2. 1) последней точкой, в которой линия уровня коснется ОДР, окажется точка С. Линия уровня, имеющая общие точки с ОДР и расположенная так, что ОДР целиком находится в одной из полуплоскостей, называется опорной прямой.
• Теорема 2. 1. Значения целевой функции в точках линии уровня увеличиваются, если линию уровня перемещать параллельно начальному положению в направлении нормали, и убывают при перемещении в противоположном направлении. • Доказательство. Пусть F(X) =c 1 x 1+ c 2 x 2— целевая функция. Изобразим систему координат Ох1 х2 и нормаль = (с1, с2), проведенную из начала координат (рис. 2. 2). Проведем две линии уровня перпендикулярно вектору. Возьмем на первой линии точку Р(х'1, х'2), а на второй линии точку М(х1, х2) так, чтобы вектор РМ был параллелен вектору. Проведем векторы ОМ и ОР. Вектор ОМ имеет координаты х1, х2, т. е. координаты точки М, а вектор ОР ― координаты точки Р.
Значение целевой функции в точке М • F(M)= c 1 x 1+ c 2 x 2=n·ОМ=n(ОР+ РМ)=n ·ОР+n·РМ. Рис. 2. 2 x 2 M(x 1 , x 2 ) 0 x 1
• Но n·ОР равно значению целевой функции в точке Р, т. е. F(P). По определению скалярного произведения · РМ= где φ— угол между векторами и РМ. Если и РМ направлены в одну сторону, то φ= 0 и cosφ= 1. Тогда F(M)= F(P)+ F(M)> F(P). Если и РМ направлены в противоположные стороны, то cosφ = 1 и F(M) < F(P). Что и требовалось доказать (Ч. т. д). • Алгоритм решения ЗЛП с двумя переменными графическим методом таков: • Строится область допустимых решений. • Строится вектор = (с1, с2) с точкой приложения в начале координат. • Перпендикулярно вектору проводится одна из линий уровня, например линия уровня, соответствующая уравнению с1 х1 + с2 х2 = 0.
• Линия уровня перемещается до положения опорной прямой. На этой прямой и будет находиться максимум или минимум функции. • В зависимости от вида ОДР и целевой функции F(X) задача может иметь единственное решение (рис. 2. 3, а), бесконечное множество решений (рис. 2. 3, б) или не иметь ни одного оптимального решения (рис. 2. 3, в).
• Пример 1. Решить задачу линейного программирования графическим методом: F(X)=2 x 1+4 x 2→ max, x 2 С B A В D А C 0 x 2 К x 1 0 x 1
• Решение. Изобразим на плоскости систему координат Ох1 х2 и построим
• граничные прямые области допустимых решений (номера прямых соответствуют их порядковому номеру в системе). Область допустимых решений определяется многоугольником OABCD (рис. 2. 4). • Для линий уровня 2 х1 + 4 х2 = с (с = const) строим нормальный вектор = (2, 4). • Рис. 2. 4 • граничные прямые области допустимых решений (номера прямых соответствуют их порядковому номеру в системе). Область допустимых решений определяется многоугольником OABCD (рис. 2. 4). • Для линий уровня 2 х1 + 4 х2 = с (с = const) строим нормальный вектор = (2, 4).
• Рис. 2. 4 • граничные прямые области допустимых решений (номера прямых соответствуют их порядковому номеру в системе). Область допустимых решений определяется многоугольником OABCD (рис. 2. 4). • Для линий уровня 2 х1 + 4 х2 = с (с = const) строим нормальный вектор = (2, 4). • Перпендикулярно вектору построим одну из линий уровня (на рис. 2. 4 она проходит через начало координат). Так как задача на максимум, то перемещаем линию уровня в направлении вектора до опорной прямой. В данном случае опорной прямой является прямая, проходящая через точку пересечения граничных прямых L 1 и L 2, т. е. через точку В = L 1∩L 2. Для определения координат точки В решаем систему уравнений
• Получаем х1 = 3, х2 = 6. Это и будет оптимальное решение данной задачи, которому соответствует максимальное значение целевой функции • max F(X) = 2 · 3 + 4 · 6 = 30. • Пример 2. Найти минимум функции F(X)=2 x 1+x 2→ min при ограничениях
• Отличие этого примера от предыдущего состоит в том, что здесь ищется не максимум, а минимум функции F. Областью решений данной системы ограничений является треугольник АВС (рис. 2. 5). На рисунке изображены также исходная линия уровня и вектор q = (2; 1), показывающий направление движения этой линии для достижения максимума функции F. Так как требуется найти минимум этой функции, то будем передвигать исходную линию уровня в сторону, противоположную вектору q. Как видно из рис. 2. 5, минимум функции F достигается в угловой точке А, координаты которой служат решением системы уравнений
• Отсюда А (6/7; 25/7) и Fmin = 37/7.
2. 2. Графический метод решения задач линейного программирования с п переменными • Графическим методом можно решить задачи линейного программирования, имеющие каноническую форму и удовлетворяющие условию n-r ≤ 2, где n—число неизвестных системы; r — ранг системы векторов условий (число линейно независимых уравнений системы). • Если уравнения системы ограничений линейно независимы, то r = т, где т — число уравнений. • Рассмотрим алгоритм метода на конкретном примере. • Пример. Решить графическим методом задачу • F(X)=x 1+x 2+5 x 3+3 x 4→ max,
• Решение. Проверяем, применим ли графический метод при решении данной задачи. Нетрудно видеть, что любые два из векторов условий, например линейно независимы, так как их координаты непропорциональны. Поэтому ранг системы векторов условий r=2. Находим n- r= 4 2 = 2 ≤ 2. Следовательно, метод применим. • Приведем систему уравнений ограничений к равносильной, с помощью линейных преобразований, предварительно записав её в матричной форме:
• Таким образом, получили систему: Выразим переменные х1 и х2: х2=4 -2 х3 - х4 х1=9 -2 х2 -3 х3 -3 х4=9 -2(4 -2 х3 - х4)-3 х3 -3 х4=9 -8+4 х3+2 х4 -3 х3 -3 х4=1+х3 - х4 Т. к. х1≥ 0 и х2≥ 0, то систему уравнений мы записываем в виде системы неравенств:
• В результате получим эквивалентную задачу линейного программирования с двумя переменными, которая решается графическим методом • F(X)= 1+х3 х4+4 2 х3 х4+5 х3+3 х4=5+4 х3+ х4 → max х3≥ 0, х4≥ 0. Изобразим на плоскости систему координат Ох1 х2 и построим граничные прямые области допустимых решений. Находим оптимальное решение эквивалентной
• задачи и соответствующее ему максимальное значение целевой функции: С(2, 0), F(C)=5+4· 2+0=13 • Используем систему ограничений исходной задачи, приведенную к каноническому виду, и оптимальное решение задачи с двумя переменными для нахождения оптимального решения исходной задачи: • х2=4 2 х3 х4=4 2· 2 0=0, х1=1+х3 х4=1+2 0=3. • Следовательно, X=(3, 0, 2, 0); F(X)=3+0+5· 2+3· 0=13. • Ответ: max F(X)= 13, при X=(3, 0, 2, 0).
• Задачи для самостоятельного решения • Найти максимум функции F при заданных ограничениях:
• Найти минимум функции F при заданных ограничениях:
• Ответы: 1. Fmax=4; 2. Fmax=∞; 3. Fmax=22/3; 4. решений нет; 5. Fmax=∞; 6. Fmax=37; 7. Fmax=6; 8. Fmin=∞; 9. Fmin= 1; 10. решений нет; 11. Fmin=8/3; 12. Fmin=300; 13. Fmin=9; 14. Fmin=1.
3. ОСНОВНЫЕ ПОЛОЖЕНИЯ О РЕШЕНИИ ЗЛП • Утверждение 1. Решением системы ограничений ЗЛП (если он совместна) является выпуклый многогранник (на плоскости многоугольник). • Утверждение 2. Целевая функция достигает оптимальное решение хотя бы в одной угловой точке многогранника решений (если он ограниченный). • Утверждение 3. Если многогранник решений неограничен в направлении градиента целевой функции, то fmax = +∞, если в противоположном направлении, то fmin = -∞. • Утверждение 4. Точка X является угловой точкой многогранника тогда и только тогда, когда она является базисным решением системы ограничений ЗЛП.
• Из четвертого утверждения следует, что для решения ЗЛП можно простым перебором из всех базисных решений выбрать то, в котором целевая функция принимает наибольшее или наименьшее значение. Это и будет решением задачи. Любая система уравнений имеет конечное число базисных решений, равное , где n — число неизвестных, r — ранг системы векторов условий, но с ростом n число базисных решений резко растет. Так, например, если n = 8, a r = 3, то число базисных решений N≤ = 56. • Базисные решения, координаты которых удовлетворяют условию неотрицательности, являются так называемыми опорными. Опорным решением задачи линейного программирования называется Х=( х10 , х20 , …, хт0 , 0, …, 0), для которого векторы условий, соответствующие положительным координатам А 1, А 2, . . . , Ат, линейно независимы.
• Число отличных от нуля координат опорного решения не может быть больше ранга r системы векторов условий (т. е. числа линейно независимых уравнений системы ограничений). В дальнейшем будем считать, что система ограничений состоит из линейно независимых уравнений, т. е. т = r. • Если число отличных от нуля координат опорного решения равно т, то оно (решение) называется невырожденным, в противном случае (меньше т) — вырожденным. • Базисом опорного решения называется базис системы векторов условий задачи, в состав которого входят векторы, соответствующие отличным от нуля координатам опорного решения.
Теоремы о взаимосвязи опорных решений и угловых точек области допустимых решений • Теорема 3. 1. Любое опорное решение является точкой области допустимых решений. • Доказательство. Пусть Х=( х10 , х20 , …, хт0 , 0, …, 0)— опорное решение с базисом Б = (A 1, А 2, . . . , Ат ) некоторой задачи с системой ограничений А 1 х1+А 2 х2 +. . . +Аn хn=А 0. Предположим, что X не является угловой точкой, тогда решение представляет собой выпуклую линейную комбинацию каких либо точек области допустимых решений, не совпадающих с X, например X' и X", т. е. Х=λ 1 Х'+λ 2 Х", λ 1 > 0, λ 2 > 0, λ 1 + λ 2= 1.
• Так как последние n - т координат вектора X равны нулю, а λ 1 и λ 2 положительные, то последние n-т координат векторов X' и X" также равны нулю, т. е. Х'= (х'1, х'2 , . . . , х'т, 0, . . . , 0) и Х"= (х"1, х"2, . . . , х"т, 0, . . . , 0). • Подставим X', X" в систему ограничений: • А 1 х´ 1 + А 2 х´ 2 +. . . + Ат хт´ = А 0 , • А 1 х´´ 1 + А 2 х´´ 2 +. . . + Ат хт´´= А 0. • Вычтем из первого равенства второе. Получим • А 1 (х´ 1 х´´ 1 )+ А 2 (х´ 2 х´´ 2) +. . . + Ат (хт´- хт´´)= θ. • Так как векторы А 1, А 2, . . . , Ат образуют базис, то они линейно независимы, а потому данное равенство может выполняться только тогда, когда все коэффициенты при векторах равны нулю, т. е. х´ 1 х´´ 1=0, х´ 2 х´´ 2=0, . . . , хт´хт´´=0.
• Отсюда получаем, что х´ 1 = х´´ 1, х´ 2 = х´´ 2, . . . , хт´= хт´´. Следовательно, X'=X" и опорное решение X является не выпуклой линейной комбинацией каких либо точек области допустимых решений, а угловой точкой этой области. Ч. т. д. • Теорема 3. 2. Любая угловая точка области допустимых решений является опорным решением. • Доказательство. Пусть Х= (х1, х2, . . . , хт, 0, . . . , 0) угловая точка области допустимых решений, а хj > 0 для любого j = 1, 2, . . . , т. Чтобы доказать, что это решение является опорным, достаточно показать, что векторы А 1 , А 2, . . . , Ат , соответствующие положительным координатам решения, линейно независимы.
• Предположим, что эти векторы линейно зависимы. Тогда существует ненулевой набор чисел l 1, l 2, . . . , lm, такой, что А 1 l 1+ А 2 l 2 +. . . + Am lm =θ. (3. 1) • Так как X ― допустимое решение, то А 1 х1 + А 2 х2 +. . . + Аnхn = А 0. (3. 2) • Умножим соотношение (3. 1) на некоторое число ε и прибавим к равенству (3. 2), получим А 1 (х1 + l 1ε )+ А 2 (х2+ l 2 ε) +. . . + Ат (хт+ lm ε)= А 0 , вектор Х'= (х1 + l 1ε, х2+ l 2ε, …, хт+ l mε, 0, …, 0) является решением системы ограничений задачи. Аналогично можно показать, что решением системы является также вектор X" =( х1 l 1ε, х2 l 2 ε, …, хтlm ε, 0, . . . , 0). • Для того чтобы векторы X ´ и X" удовлетворяли условиям неотрицательности, выберем достаточно малое число ε так, что х j ± l j ε > 0 при любых j. Эго возможно, так как х j > 0 при любых j = 1, 2, . . . , т.
• При таком выборе числа ε векторы X' и X" являются допустимыми решениями. Нетрудно видеть, что X = =, т. е. X представляет собой выпуклую линейную комбинацию X' и X". Это противоречит тому, что Х является угловой точкой. Следовательно, векторы А 1 , А 2, . . . , Ат линейно независимы и решение Х является опорным. Ч. т. д.
4. СИМПЛЕКСНЫЙ МЕТОД РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ • 4. 1. Симплекс-метод • Симплексный метод — это метод целенаправленного перебора опорных решений задачи линейного программирования. Он позволяет за конечное число шагов расчета либо найти оптимальное решение, либо установить, что оптимального решения не существует. • Идея симплексного метода состоит в следующем. Используя систему ограничений, приведенную к общему виду, т. е. к системе т линейных уравнений с n переменными (т < n), находят ее любое базисное решение, по возможности наиболее простое. Если первое же найденное базисное решение оказалось допустимым, то проверяют его на оптимальность. Если оно не оптимально, то переходят к другому допустимому базисному решению
• Симплексный метод гарантирует, что при этом новом решении линейная форма если и не достигнет оптимума, то приблизится к нему (в случае перехода к вырожденному базисному решению значение линейной формы не изменится). С новым допустимым базисным решением поступают так же, пока не находят решение, которое является оптимальным. • Если первое найденное базисное решение окажется недопустимым, то с помощью симплексного метода осуществляют переход к другим базисным решениям, которые позволяют приблизиться к области допустимых решений, пока на каком то шаге не получится допустимое базисное решение. После этого к нему применяют механизм симплексного метода, изложенный выше.
• Метод называется симплексным, так как области допустимых решений задач, которые рассматривались на начальном этапе развития метода, имели простейший (simple) вид. • Задача 1. Для изготовления шкафов и буфетов деревоотделочный завод применяет древесину четырех видов. Запасы древесины по каждому виду ограничены и составляют соответственно 120, 160, 120, 80 ед. Количество единиц древесины каждого вида, необходимое для изготовления одного шкафа и одного буфета, а также прибыль, получаемая заводом от реализации единицы продукции, даны в табл. 4. 1. • Требуется составить такой план выпуска продукции, который бы обеспечил предприятию наибольшую прибыль от реализации всей продукции.
Таблица 4. 1 Вид дреесины Запасы Количество единиц, древесины необходимое для п-ва шкафы буфеты 1 120 0 4 2 160 4 0 3 120 2 2 4 80 1 2 2 3 прибыль
• Решение. Дадим математическую формулировку задачи. Пусть х1 и х2 — количество шкафов и буфетов, запланированных к производству. • Так количество древесины по каждому виду ограничено, то должны выполняться следующие неравенства:
• Эта система неравенств и является системой ограничений данной задачи. Целевая функция (линейная форма), выражающая прибыль предприятия, имеет вид F = 2 х1 + 3 х2. • Итак, задача сводится к нахождению максимума функции F = 2 х1 + 3 х2 при ограничениях
• Для сведения системы ограничений неравенств к системе уравнений прибавим к левой части каждого неравенства добавочные неотрицательные переменные х3 , х4, х5, х6. В условиях данной задачи они имеют конкретное экономическое содержание, а именно выражают объем остатков древесины каждого вида после выполнения плана по выпуску продукции. После введения добавочных переменных получим систему уравнений
• Нужно найти такое допустимое базисное решение этой системы ограничений, которое бы максимизировало линейную форму F = 2 х1 + 3 х2. • Так как система ограничений есть система четырех независимых уравнений с шестью переменными, то число базисных переменных должно равняться четырем, а число свободных — двум. • Для решения задачи симплексным методом прежде всего нужно найти любое базисное решение. В данном случае это легко сделать. Для этого достаточно взять в качестве базисных добавочные переменные х3 , х4, х5, х6. Так коэффициенты при этих переменных образуют единичную матрицу, то отпадает необходимость вычислять определитель.
• Считая свободными переменные х1 и х2 равными нулю, получим базисное решение (0; 0; 120; 160; 120; 80), которое к тому же оказалось допустимым. Поэтому здесь отпадает надобность в применении первого этапа симплексного метода. Переходим сразу ко второму этапу, т. е. к поискам оптимального решения. • I ш а г. Базисные переменные: х3 , х4, х5, х6; свободные переменные: х1, х2. В системе (4. 1) базисные переменные выразим через свободные. Для того чтобы судить, оставить ли свободные переменные в числе свободных или их выгоднее с точки зрения приближения к оптимальному решению перевести в базисные, следует выразить через них и линейную форму (в данном случае она уже выражена через переменные х1 и х2).
• Тогда получим F = 2 х1 + 3 х2. При x 1 = х2 = 0 имеем х3 = 120, х4 = 160, x 5 = 120, х6 = 80, что дает базисное решение (0; 0; 120; 160; 120; 80), которое мы приняли за исходное. При этом базисном решении значение линейной формы F =2 х1 + 3 х2 = 0.
• Когда мы полагали x 1 = х2 = 0 (завод ничего не выпускает), была поставлена цель — найти первое, безразлично какое, базисное решение. Эта цель достигнута. Теперь от этого первоначального решения нужно перейти к другому, при котором значение линейной формы увеличится. Из рассмотрения линейной формы видно, что ее значение возрастает при увеличении значений переменных х1 и х2. Иными словами, эти переменные невыгодно считать свободными, т. е. равными нулю, их нужно перевести в число базисных. Это и означает переход к новому базисному решению. При симплексном методе на каждом шаге решения предполагается перевод в число базисных только одной из свободных переменных. Переведем в число базисных переменную х2, так как она входит в выражение линейной формы с большим коэффициентом.
• Как только одна из свободных переменных переходит в число базисных, одна из базисных должна быть переведена на ее место в число свободных. Какую же из четырех базисных переменных нужно вывести? Ответить на этот вопрос помогут следующие рассуждения. • Значение х2 необходимо сделать как можно большим, так как это соответствует конечной цели — максимизации F. Однако оказывается, что увеличение х2 может продолжаться только до известных границ, а именно до тех пор, пока не нарушится требование неотрицательности переменных.
• Так, из первого уравнения системы (4. 2) следует, что переменная х2 не должна превышать числа 120/4, т. е. х2 ≤ 30, поскольку только при этих значениях х2 переменная х3 остается положительной (если х2 = 30, то х3 = 0; если же х2 >30, то х3 < 0). Из третьего уравнения системы (4. 2) следует, что х2 ≤ 120/2, т. е. х2 ≤ 60, из четвертого — что х2 ≤ 80/2, т. е. х2 ≤ 40 (во второе уравнение переменная х2 не входит). Всем этим условиям удовлетворяет х2 ≤ 30. • Иными словами, для ответа на вопрос, какую переменную нужно перевести в число свободных, нужно принять х2= min {120/4; 120/2; 80/2} = min {30; 60; 40} = 30. Тогда х3= 0 и х3 переходит в число свободных переменных, a x 4 и х5 останутся положительными.
• II ш а г. Базисные переменные: х2, x 4, х5, х6; свободные переменные: х1 , х3. Выразим базисные переменные и линейную форму через свободные. В системе (4. 2) берем то уравнение, из которого получено минимальное значение отношения свободного члена к коэффициенту при х2. В данном случае это первое уравнение, которое выделено рамкой. Выразив из этого уравнения х2, имеем х2= 30 — 0, 25 х3. Подставим это выражение х2 во все остальные уравнения системы (4. 2) и в линейную форму F и, приведя подобные члены, получим
• Подставим это выражение х2 во все остальные уравнения системы (4. 2) и в линейную форму F и, приведя подобные члены, получим F = 90+2 х1 -0, 75 х3. При x 1 = х3 = 0 имеем F = 90. Это уже лучше, чем на I шаге, но не искомый максимум. Дальнейшее увеличение функции F возможно за счет введения переменной х1 в число базисных; так как эта переменная входит в выражение F с положительным коэффициентом, поэтому ее увеличение приводит к увеличению линейной формы и ее невыгодно считать свободной, т. е. равной нулю.
• Для ответа на вопрос, какую переменную вывести из базисных в свободные, примем х1 = min {160/4; 60/2; 20/1} = 20. Тогда х6 =0 и х6 переходит в число свободных переменных, a x 4 и х5 остаются при этом положительными. • Первое уравнение не используется при нахождении указанного минимума, так как х1 не входит в это уравнение. • III шаг. Базисные переменные: х1, х2, x 4, х5; свободные переменные: x 3, х6. Выразим основные переменные и линейную форму через свободные. Из последнего уравнения системы (4. 3) (выделено) имеем х1= 20 + 0, 5 х3 — х6.
• Подставляя это выражение в остальные уравнения и в линейную форму, получим: F = 130+0, 25 х3 -2 х6. Из выражения линейной формы следует, что ее максимальное значение еще не получено, так как возможно увеличение F за счет введения в базисные переменной х3 (она имеет положительный коэффициент). Полагаем х3 = min {∞; 30/0, 25; 80/2; 20/0, 5} = 40.
• Во первых, хотя переменная х3 и входит в выражение для х1 [первое уравнение системы (4. 4)], но имеет положительный коэффициент и при любом возрастании х3 переменная х1 не может стать отрицательной. Иными словами, в первом уравнении никаких ограничений на возрастание переменной х3 не накладывается, поэтому мы условно пишем ∞. Условимся в дальнейшем пользоваться этим же обозначением, если переменная, вновь вводимая в число базисных, не входит в какое либо уравнение системы ограничений. Во вторых, мы получим два одинаковых минимальных значения, равные 40. Если х3 = 40, то х4= 0 и х5 = 0, т. е. напрашивается вывод, что вместо одной переменной нужно перевести в число свободных сразу две: х4 и х5.
• Но число базисных переменных не должно быть меньше четырех. Поэтому одну из переменных (x 4 или х5) оставляют в числе основных, но при этом ее значение считают равным нулю, т. е. полученное на следующем шаге базисное решение оказывается вырожденным. Оставим, например, x 4 в числе базисных переменных, а х5 переведем в число свободных. • IV шаг. Базисные переменные: x 1, x 2, x 3, x 4; свободные переменные: х5, х6. Выразим базисные переменные и линейную форму F через свободные, начав это выражение из четвертого уравнения системы (4. 4).
• Получаем: F = 140 -0, 5 х5 -х6. Так как в выражение линейной формы переменные х5 и х6 входят с отрицательным коэффициентами, то никакое увеличение F за счет этих переменных невозможно. Отсутствие на каком-то шаге симплексного метода в выражении линейной формы F, максимум которой ищется, неосновных переменных с положительными коэффициентами является критерием оптимальности.
• Следовательно, на IV шаге критерий оптимальности достигнут и задача решена. Оптимальным служит решение (40; 20; 40; 0; 0; 0), при котором Fmаx= 140. Таким образом, для получения наибольшей прибыли, равной 140 ден. ед. , из данных запасов древесины завод должен изготовить 40 шкафов и 20 буфетов. При этом древесина II, III и IV видов окажется использованной полностью, а 40 ед. древесины I вида останутся неизрасходованными. • Задача 2. На свиноферме производится откорм свиней. Известно, что каждая свинья должна ежедневно получать не менее 6 ед. вещества К, 8 ед. вещества L и 12 ед. вещества М (вещества К, L, М могут, в частности, означать жиры, белки и углеводы). Для откорма свиней можно закупить три вида кормов: I, II и III (например, картофель, жмых и комбикорм). Содержание каждого вещества в различных видах корма и стоимость единицы каждого корма приведены в табл. 4. 2. Требуется обеспечить наиболее дешевый рацион откорма. •
Таблица 4. 2 Вид корма вещества K L M Стоимост ь ед корма 1 2 1 3 2 2 1 2 4 3 3 3 1, 5 2 2, 5
• Решение. Составим экономико математическую модель задачи. Пусть х1, х2 и х3, — количество единиц соответственно I, II и III видов корма. Требуется найти минимум линейной формы F = 2 х1+3 х2+2, 5 х3 при следующих ограничениях:
• Введя добавочные неотрицательные переменные x 1, х2 и х3, сведем систему неравенств к системе уравнений Проще всего получить базисное решение последней системы, если за базисные взять добавочные переменные х4, х5 и x 6. Правда, базисное решение (0, 0; 0; -6; -8; -12), в котором эти переменные являются базисными, — недопустимое.
Поэтому сначала воспользуемся симплексным методом для перехода к какому либо допустимому базисному решению, Переведем в базисные переменную х1. Для этого положим х1=min {3; 8; 4}=3. При х1 = 3 имеем x 4=0 и x 4 переходит в свободные переменные.
• II шаг. Базисные переменные: х1, х5, х6; свободные переменные: х2, х3; х4. Выразив x 1 из первого уравнения системы и подставив полученное выражение в остальные уравнения, приходим к следующей системе: Базисное решение (3; 0; 0; 0; -5; -3) хотя и является недопустимым, но все-таки лучше, чем на I шаге, поскольку содержит уже только две отрицательные компоненты.
• Переведем теперь в базисные переменную х4. Находим x 4=min{∞; 10; 2}= =2. При х4 =2 имеем х6 = 0 и х6 переходит в свободные переменные. • III шаг. Базисные переменные: х1, x 4, x 5; свободные переменные: х2, x 3, х6. Выразив из системы базисные переменные через свободные, получим Переводим в базисные переменную x 6. Полагаем х6=min{∞; ∞; 12}=12. При х6 =12 имеем х5 = 0 и х5 переходит в свободные переменные.
• IV шаг. Базисные переменные: х1, x 4, х6; свободные переменные х2, x 3, х5. Выразив из системы базисные переменные через свободные, имеем Полученное на этом шаге базисное решение (8; 0; 0; 12) является допустимым, и первый этап симплексного метода закончен.
• Переходим ко второму этапу, т. е. будем искать оптимальное решение. • Проверим сначала, не является ли найденное допустимое базисное решение оптимальным. Для этого выразим линейную форму F = 2 х1 + 3 х2 + +2, 5 х3 через свободные переменные. Подставив вместо х1 ее выражение из первого уравнения системы и приведя подобные члены, получим F =16 х2 -0, 5 х3 + 2 х5. • В данной задаче речь идет о минимизации функции цели, поэтому выгодны те переменные, которые входят в выражение линейной формы с отрицательными коэффициентами. В данном случае таких переменных две: х2 и х3.
• Переведем в основные переменную х2. Положим х2 =min{4; 10/3; 6}= = 10/3. При х2 = 10/3 имеем х4 = 0 и х4 переходит в свободные переменные. • V шаг. Базисные переменные: х1, x 2, х6 ; свободные переменные: х3, x 4, х5. Выразим из системы базисные переменные и линейную форму через свободные:
• Переводим в базисные переменную х3. Полагаем х3=min{}=. При х3 = 8/9 имеем х1 = 0 и х1 переходит в свободные переменные. • VI шаг. Базисные переменные х2, х3, х6; свободные переменные: х1, х4, х5. Выразим из системы базисные переменные и линейную форму через свободные:
• В выражение F все переменные входят с положительными коэффициентами, а это означает, что критерий оптимальности при отыскании минимума линейной формы выполнен. • Таким образом, оптимальным служит решение (0; 10/3; 8/9; 0; 0; 28/9). При этом Fmln = 110/9 ≈12, 22 ден. ед. • Итак, чтобы обеспечить наиболее дешевый рацион питания, нужно в основном покупать самый дорогой корм II вида, корма III вида нужно закупать почти в четыре раза меньше, а корм I вида хотя и самый дешевый, но невыгодный. При этом оптимальном решении будут обеспечены нормы вещества К и L, а вещества М окажется на 28/9 ≈3, 11 ед. больше нормы.
4. 2. Симплексные таблицы • Рассмотренный симплексный метод решения ЗЛП в предыдущем пункте можно свести к записи однотипно заполняемых таблиц. Осуществить это возможно, придерживаясь следующего алгоритма: • Привести задачу линейного программирования к каноническому виду. • Найти начальное опорное решение с базисом из единичных векторов и коэффициенты разложений векторов условий по базису опорного решения. Если опорное решение отсутствует, то задача не имеет решения в силу несовместности системы ограничений. • Вычислить оценки разложений векторов условий по базису опорного решения и заполнить симплексную таблицу.
• • • Если выполняется признак единственности оптимального решения (для любого вектора условий, не входящего в базис, оценка отлична от нуля), то решение задачи заканчивается. Если выполняется условие существования множества оптимальных решений (оценка хотя бы одного вектора условий, не входящего в базис, равна нулю), то путем простого перебора находят все оптимальные решения. Если выполняются условия отсутствия оптимального решения вследствие неограниченности целевой функции (не имеет решения, если для какого либо из векторов условий с оценкой, противоречащей признаку оптимальности, среди коэффициентов разложения по базису опорного решения нет положительного), то задача не имеет решения ввиду неограниченности целевой функции.
• • • Если пункты 4 6 алгоритма не выполняются, находят новое опорное решение с использованием условий нахождения оптимального решения. Пример. Решить задачу табличным симплексным методом. F(Х) = 9 х1+5 х2+4 х3 +3 х4 +2 х5 →max.
• Решение. Приводим задачу к каноническому виду. Для этого в левую часть первого ограничения неравенства типа «≤» вводим дополнительную переменную х6 с коэффициентом +1. В целевую функцию переменная х6 входит с коэффициентом 0 (т. е. не входит). Получаем F(Х) = 9 х1 +5 х2+4 х3 +3 х4 +2 х5 +0 х6→max.
• Находим начальное опорное решение. Для этого свободные (неразрешенные) переменные приравниваем к нулю х1=х2=х3=0. Получаем опорное решение Х 1= (0, 0, 0, 24, 30, 6) с единичным базисом Б 1 = (А 4 , А 5, А 6). • Вычисляем оценки разложений векторов условий по базису опорного решения, используя формулу (Δк=Сб. Хкск, где Сб=(с1, с2, …, ст) ― вектор коэффициентов целевой функции при базисных переменных; Хк=(х1 к, х2 к, …, хтк) вектор коэффициентов разложения вектора по базису опорного решения; ск ― коэффициент целевой функции при переменной хк):
Δ 1= Сб. Х 1 с1= (0, 3, 2) · (1, 1, 2) 9 = 0 + 3 + 4 9 = 2; Δ 2 = Сб. Х 2 -с2= (0, 3, 2) · ( 2, 2, 1) 5 = 0 + 6 + 2 5 = 3; Δ 3 = Сб. Х 3 - с3= (0, 3, 2) · (2, 1, 4) 4 = 0 + 3 8 4 = 9; Δ 4 = Сб. Х 4 - с4 = (0, 3, 2) · (0, 1, 0) 3 = 0 + 3 + 0 3 = 0; Δ 5 = Сб. Х 5 с5 = (0, 3, 2) · (0, 0, 1) 2 = 0 + 2 2 = 0; Δ 6 = Сб. Х 6 с6 = (0, 3, 2) ·(1, 0, 0) 0 = 0 + 0 0 = 0.
• Оценки векторов, входящих в базис, всегда равны нулю. Обычно эти вычисления проводятся устно. Опорное решение, коэффициенты разложений и оценки разложений векторов условий по базису опорного решения записываются в симплексную таблицу. Сверху над таблицей для удобства вычислений оценок записываются коэффициенты целевой функции. В первом столбце «Б» записываются векторы, входящие в базис опорного решения. Порядок записи этих векторов в симплексной таблице соответствует номерам разрешенных неизвестных в уравнениях ограничениях. Во втором столбце таблицы «Сб» записываются коэффициенты целевой функции при базисных переменных в том же порядке. При правильном расположении коэффициентов целевой функции в столбце «Сб» оценки единичных векторов, входящих в базис, всегда равны нулю.
• В последней строке таблицы с оценками Δ к в столбце «А 0» записывается значение целевой функции на опорном решении F(X 1). • 9 5 ↓ 4 3 2 0 Б Сб А о ← 0 6 А 4 3 24 А 5 2 30 Δк 13 А 1 1 А 2 -2 А 3 2 А 4 0 А 5 0 А 6 1 Ɵ 3 6 3 1 2 -2 2 1 3 1 -4 -9 1 0 0 0 0 24 24 15 -
• Начальное опорное решение не является оптимальным, так как оценки Δ 1= 2, Δ 3 = 9 для векторов А 1 и А 3 противоречат признаку оптимальности. Для оптимальности опорного решения в задаче на максимум требуется неотрицательность оценок для всех векторов условий. • По теореме об улучшении опорного решения, если в задаче на максимум хотя бы один вектор имеет отрицательную оценку, то можно найти новое опорное решение, на котором значение целевой функции будет больше. • Определим, введение какого из двух векторов приведет к большему приращению целевой функции. Приращения целевой функции найдем по формуле ΔFk = θ 0 к Δ к.
• Вычислим значения параметра θ 0 к для первого и третьего столбцов по формуле θ 0 к=, при хik>0, где к ― номер вектора, вводимого в базис; l номер вектора, выводимого из базиса; хi 0 ― координаты опорного решения; хik коэффициент разложения вектора Ак по базису опорного решения. Получаем θ 01 = 6 при l=1 (где l — номер строки) и θ 03 = 3 при l = 1. Находим приращение целевой функции при введении в базис первого вектора ΔF 1 = 6·( 2) = 12 и третьего вектора ΔF 3= 3·( 9) = 27. Следовательно, для наиболее быстрого нахождения оптимального решения необходимо ввести в базис опорного решения вектор А 3 вместо первого вектора базиса А 6, так как минимум параметра θ 03 достигается в первой строке (l = 1).
• Далее выполним преобразование с элементом х13 = 2, получим второе опорное решение Х 2=(0, 0, 3, 21, 42, 0) с базисом Б 2 = (A 3 , A 4, А 5) (следующая таблица). Это решение не является оптимальным, так как вектор А 2 имеет отрицательную оценку Δ 2 = 6. Для улучшения решения необходимо ввести вектор А 2 в базис опорного решения. Б Сб А 0 А 1 А 2 А 3 А 4 А 5 А 6 θ 2 А 3 4 3 1/2 -1 1 0 0 1/2 - ←А 4 3 21 1/2 3 0 1 0 -1/2 7 А 5 2 42 4 -3 0 0 1 2 - 159 5/2 -6 0 0 0 9/2 Δк
• Определим номер вектора, выводимого из базиса. Для этого вычислим параметр θ 02 для второго столбца, он равен 7 при l =2. Следовательно, из базиса выводим второй вектор базиса А 4. Выполним преобразование с элементом х22 = 3, получим третье опорное решение Х 3 = (0, 7, 10, 0, 63, 0) с базисом Б 2 = (А 3, А 2, А 5). Это единственное оптимальное решение, так как для всех векторов, не входящих в базис, оценки разложений по базису опорного решения положительны: Δ 1=7/2, Δ 4=2, Δ 6=7/2.
Б Сб А 0 А 1 А 2 А 3 А 4 А 5 А 6 А 3 4 10 2/3 0 1 1/3 0 1/3 А 2 5 7 1/6 1 0 1/3 0 -1/6 А 5 2 63 9/2 0 0 1 1 3/2 201 7/2 0 0 2 0 7/2 Δк Ответ: max F(X) = 201 при X * = (0, 7, 10, 0, 63).
Задачи для самостоятельного решения • Задачи решить симплексным методом:
• 9. Кирпичный завод выпускает кирпичи двух марок (I и II). Для производства кирпича применяется глина трех видов (А, В и С). По месячному плану завод должен выпустить 10 усл. ед. кирпича марки I и 15 усл. ед. кирпича марки II. В таблице указаны расход различных видов глины для производств 1 усл. ед. кирпича каждой марки и месячный запас глины. Какова наибольшая прибыль, если известно, что от реализации 1 усл. ед. кирпича марки I завод получает прибыль, равную 4 ден. ед. , а марки II — 7 ден. ед. ?
Марка кирпича Количество глины для произ-ва 1 усл ед. кирпича А В С I 1 0 1 II 0 2 2 Запасы глины, усл. 15 36 47
• 10. Для производства стали определенной марки, в которую в качестве легирующих веществ должны входить химические элементы К, L, Р, можно закупать шихту двух видов (I и II). В таблице указано, сколько требуется каждого из этих элементов для производства 100 т стали (по технологии можно немного больше, но меньше — нельзя). Содержание этих элементов в каждой тонне шихты, а также стоимость 1 т шихты каждого вида также приведены в таблице.
Определить наименьшие затраты для производства стали данной марки. вид стоим легирующие вещества шихты ость1 т L P шихты K I 2 3 2 1 II 3 1 1 1 9 8 6 Необходимое количетво легирующих
• Ответы: 1. х1=1, х2=0, Fmax =1; 2. х1=12, х2=6, Fmax =84; 3. Задача не имеет решений, т. к. F не ограничена на области D сверху; 4. х1=х2=0, х3=10, Fmax=10; 5. х1=0, х2=1, Fmin = 1; 6. х1=2, х2=0, Fmin= 4; 7. х1=х4=х5=0, х2=4, х3=5, х6=11, Fmin= 11; 8. х1=3/2, х2=7/4, Fmax= 1; 9. Fmax=191 ден. ед. ; 10. Fmin= 14 ден. ед.
5. ТЕОРИЯ ДВОЙСТВЕННОСТИ • 5. 1. Виды математических моделей двойственных задач Любой задаче линейного программирования (исходной, или прямой) можно поставить в соответствие другую задачу, которая называется двойственной или сопряженной. Обе эти задачи образуют пару двойственных (или сопряженных) задач линейного программирования. Каждая из задач является двойственной к другой задаче рассматриваемой пары.
• Составим двойственную задачу к следующей задаче. • Имеется т видов сырья в количестве b 1, b 2, . . . , bт, которые используются для изготовления n видов продукции. Известно: аij — расход i го вида сырья на единицу j ой продукции; сj. — прибыль при реализации единицы j го вида продукции. Составить план выпуска продукции, обеспечивающий максимальную прибыль. • Математическая модель данной задачи имеет вид F(X) = с1 х1 + с2 х2 +. . . + сn хn→max,
• Здесь х j, j = 1, 2, . . . , n — объем производства j го вида продукции. • Предположим, что второй производитель хочет перекупить сырье. Составим двойственную задачу, решение которой позволит определить условия продажи сырья. Введем вектор оценок (цен) видов сырья Y=(у1, у2, … …, ут). Затраты на приобретение i го вида сырья в количестве bi равны biуi. Второму производителю выгодно минимизировать суммарные затраты на приобретение всех видов сырья, поэтому целевая функция имеет вид • Z(Y) =b 1 у1 +b 2 у2 +…+bтут→ min.
• Первому производителю невыгодно продавать сырье, если суммарная стоимость всех видов сырья, расходуемых на каждое изделие j й продукции, т. е. а 1 j у1 + а 2 j у2 +…+ аmj ут, меньше прибыли сj получаемой при реализации этого изделия. Система ограничений задачи имеет вид
• Очевидно, что оценки видов сырья должны удовлетворять условиям неотрицательности уi ≥ 0, i = 1, 2, …, т. Таким образом, связь исходной и двойственной задач состоит в том, что коэффициенты cj целевой функции исходной задачи являются свободными членами системы ограничений двойственной задачи, cвoбодные члены bi системы ограничений исходной задачи служат коэффициентами целевой функции двойственной задачи, а матрица коэффициентов системы ограничений двойственной задачи является транспонированной матрицей коэффициентов системы ограничений исходной задачи.
• Рассмотренная пара задач относится к симметричным парам двойственных задач. В теории двойственности используются четыре пары двойственных задач (приведем их в матричной форме записи): • Исходная задача Двойственная задача • Симметричные пары 1. F(X)=CX→max, AX≤ A 0 , X≥θ; 2. F(X)=CX→min, AX≥ A 0 , X≥θ; Z(Y)=YA 0→min YA≥ C, Y≥θ. Z(Y)=YA 0→ max, YA≤ C, Y≥θ.
• • Несимметричные пары 3. F(X)=CX→max, Z(Y)=YA 0→min AX= A 0 , YA≥ C. X≥θ; 2. F(X)=CX→min, Z(Y)=YA 0→ max, AX=A 0 , YA≤ C. X≥θ; Здесь С=(с1, с2, …, сn), Y= (у1, у2, … …, ут),
5. 2. Общие правила составления двойственных задач • При составлении двойственных задач используют следующие правила. • Правило 1. Во всех ограничениях исходной задачи свободные члены должны находиться в правой части, а члены с неизвестными — в левой. • Правило 2. Ограничения неравенства исходной задачи должны быть записаны так, чтобы знаки неравенств у них были направлены в одну сторону. • Правило 3. Если знаки неравенств в ограничениях исходной задачи «≤» , то целевая функция F(X) =c 0+ c 1 x 1 + с2 х2 +. . . + сnхn должна максимизироваться, а если « ≥» , то минимизироваться.
• Правило 4. Каждому ограничению исходной задачи соответствует неизвестное в двойственной задаче; при этом неизвестное, отвечающее ограничению неравенству, должно удовлетворять условию неотрицательности, а неизвестное, отвечающее ограничению равенству, может быть любого знака. • Правило 5. Целевая функция двойственной задачи имеет вид • Z(Y) = c 0+ b 1 y 1 +. . . + bmym, где c 0 ―свободный член целевой функции F(X) исходной задачи; b 1, . . . , bт — свободные члены в ограничениях исходной задачи, при этом bi ― свободный член именно того ограничения, которому соответствует неизвестная yi; y 1, у2, . . . , ут — неизвестные в двойственной задаче. • Правило 6. Целевая функция Z(Y) двойственной задачи должна оптимизироваться противоположным по сравнению с F(X) образом, т. е. если F(X)→ max, то Z(Y) → min, и если F(X) →min, то Z(Y)→ max.
• Правило 6. Целевая функция Z(Y) двойственной задачи должна оптимизироваться противоположным по сравнению с F(X) образом, т. е. если F(X)→ max, то Z(Y) → min, и если F(X) →min, то Z(Y)→ max. • Правило 7. Каждому неизвестному xj, j= 1, 2, . . . , п исходной задачи соответствует ограничение в двойственной задаче. Совокупность этих n ограничений (вместе с условиями неотрицательности неизвестных yi, соответствующих ограничениям неравенствам исходной задачи) образует систему ограничений двойственной задачи. Все ограничения двойственной задачи имеют вид неравенств, свободные члены которых находятся в правых частях, а члены с неизвестными y 1, y 2, . . . , ут — в левых. Все знаки неравенств имеют вид «≥» , если Z(Y)→ min, и «≤» , если Z(Y)→ max.
• Коэффициенты, с которыми неизвестные y 1, y 2, . . . , ут входят в ограничение, соответствующее неизвестному хj, совпадают с коэффициентами при этом неизвестном хj в ограничениях исходной задачи, а именно: коэффициент при yi совпадает с тем коэффициентом при хj, с которым хj входит в ограничение исходной задачи, соответствующее неизвестному уi. • Пример 1. Составить задачу, двойственную к данной • F(X) = х1 + 4 х2 +3 х3→min,
• Решение. Умножим первое ограничение неравенство на 1. Задача примет вид исходной задачи симметричной пары двойственных задач: • F(X) = х1 + 4 х2 +3 х3→min, Умножим правые части ограничений на соответствующие переменные двойственной задачи и сложим их, получим целевую функции* Z(Y) = -10 у1 + 6 у2 + 12 у3→ max.
• Функция Z(Y) максимизируется, так как целевая функций исходной задачи минимизируется. • Умножаем коэффициенты при х1 на соответствующие переменные двойственной задачи и складываем их: -1 у1 + 2 у2 +1 у3. Данная сумма меньше или равна коэффициенту при х1 в целевой функции -1 у1 + 2 у2 +1 у3≤ 1. • Неравенство имеет вид « ≤» , потому что целевая функция двойственной задачи максимизируется. Аналогично составляются еще два ограничения двойственной задачи (соответствуют переменным х2, х3): • -1 у1 1 у2 + 2 у3 ≤ 4, • 1 у1+3 у3 ≤ 3.
• Все переменные двойственной задачи удовлетворяют условию неотрицательности, потому что все ограничения исходной задачи неравенства. • Окончательно двойственная задача имеет вид • Z(Y) = -10 у1 + 6 у2 + 12 у3→ max,
• Пример 2. Составить задачу, двойственную к данной • F(X) = х1 х2 -2 х3+3 х4→min, Решение. Данная задача имеет вид исходной задачи второй несимметричной пары двойственных задач. Запишем двойственную задачу Z(Y) = 7 у1 + 10 у2 → max,
• Пример 3. Составить задачу, двойственную к данной • F(X) = 3 2 х1 + х3→min, Решение. Используем общие правила составления двойственных задач. Умножим ограничениянеравенства на -1, так как в задаче на минимум они должны иметь вид «≥» (см. правило 3). Исходная задача запишется в виде F(X) = 3 - 2 х1 + х3→min,
• Составим двойственную задачу: Z(Y) =3 3 у1 + 5 у2 8 у3 + 6 у4 → max, Неизвестная у4, соответствующая ограничениюравенству, может быть любого знака (см. правило 4).
5. 3. Первая теорема двойственности • Теоремы двойственности позволяют установить взаимосвязь между оптимальными решениями пары двойственных задач. Решив одну из пары двойственных задач, можно или найти оптимальное решение другой задачи, не решая ее, или установить его отсутствие. Возможны следующие случаи: 1) обе задачи из пары двойственных имеют оптимальные решения; 2) одна из задач не имеет решения ввиду неограниченности целевой функции, а другая — ввиду несовместности системы ограничений.
• Теорема 5. 1. Если одна из пары двойственных задач имеет оптимальное решение, то и двойственная к ней имеет оптимальное решение; причем значения целевых функций задач на своих оптимальных решениях совпадают. Если же одна из пары двойственных задач не имеет решения ввиду неограниченности целевой функции, то другая не имеет решения ввиду несовместности системы ограничений. • Доказательства теорем приводить не будем, убедимся в справедливости сформулированных теорем на примерах.
• Пример 1. Для данной задачи составить двойственную, решить ее симплексным методом и, используя первую теорему двойственности, найти решение исходной задачи: F(X) = 6 х1 +7 х2+9 х3 →min,
• Решение. Используя вторую симметричную пару двойственных задач, составляем задачу, двойственную к исходной: • Z(Y) =5 у1 + 2 у2 +4 у3 → max,
• Вводим неотрицательные дополнительные переменные у4, у5, у6 для приведения задачи к каноническому виду: • Z(Y) =5 у1 + 2 у2 +4 у3+0 у4+0 у5 +0 у6→ max, Находим начальное опорное решение У 1 = (0, 0, 0, 6, 7, 9) с базисом Б 1= (А 4, А 5, А 6). Решение задачи симплексным методом приведено в таблице.
↓ 5 ↓ 2 4 0 0 0 Б Сб А 0 А 1 А 2 А 3 А 4 А 5 А 6 θ 1 θ 2 θ 3 А 4 0 6 1 1 0 0 6 6 А 5 0 7 2 1 2 0 1 0 7/2 7 7/2 А 6 0 9 3 1 6 0 0 1 3 0 -5 -2 -4 0 0 0 θ 2 Δj 6 9 3/2
ПРОДЛОЛЖЕНИЕ ТАБЛ А 4 0 3 0 2/3 -1 1 0 -1/3 9/2 А 5 0 1/3 -2 0 1 -2/3 3 А 1 5 3 1 1/3 2 0 0 -1/3 9 15 0 -1/3 6 0 0 5/3 Δj
Продолжение табл Б Сб А 0 А 1 А 2 А 3 А 4 А 5 А 6 А 4 0 1 0 0 3 1 -2 1 А 2 2 3 0 1 -6 0 3 -2 А 1 5 2 1 0 4 0 -1 1 16 0 0 4 0 1 1 Δj
• Оптимальное решение двойственной задачи Y*=(2, 3, 0), его базис Б*=(А 4, А 2, А 1), значение целевой функции max Z(Y)= Z(Y*)= 16. Оптимальное решение исходной задачи, двойственной к решенной, находим по формуле: • X* = C*D -1. • Матрица D 1 находится в последней симплексной таблице. Ее столбцы расположены под столбцами единичной матрицы, т. е. под единичными векторами А 4, А 5, А 6, образующими базис начального опорного решения:
• Координатами вектора С* являются коэффициенты целевой функции при базисных неизвестных оптимального решения у4, y 2, y 1. Дан ные коэффициенты записываются в том же порядке, в каком векторы условия входят в базис оптимального решения, т. е. С* = (0, 2, 5). • Вычисляем X* = C*D -1=
• Оптимальное решение исходной задачи проще найти по формуле: • хi*=Δi* + сi*, i=l, 2, 3. • Для этого необходимо к оценкам разложений векторов А 4, А 5, А 6, входящих в базис начального опорного решения, по базису оптимального решения, т. е. к оценкам этих векторов в последней симплексной таблице, прибавить соответствующие коэффициенты целевой функции (в таблице они расположены в верхней строке над оценками) х1*=0+0=0, х2*=1+0=1, х3*= 1+0=1. • Ответ: min F(X) = 16 при X*= (0, 1, 1).
• Пример 2. Найти решение данной задачи и двойственной к ней: • F(X) =х1 -6 х2+2 х3 x 4+3 x 5→max,
• Решение. Задача, двойственная к данной, имеет вид • Z(Y) =у1 + 11 у2 +2 у3 → min, В данной паре двойственных задач легче решить исходную задачу, так как она имеет начальное опорное решение Х 1= (0, 0, 1, 11, 2) с базисом Б 1 = (A 3, A 4, A 5) и ее без дополнительных преобразований можно решить симплексным методом. Решение исходной задачи приведено в таблице:
↓ 1 ↓-6 2 -1 3 Б Сб А 0 А 1 А 2 А 3 А 4 А 5 А 3 2 1 -2 1 1 0 0 А 4 -1 11 2 3 0 1 0 А 5 3 2 1 -2 0 0 1 -3 -4 -1 0 0 0 Δj θ 1 Δ θ 2 F 1 =8 1 Δ 11/ F 2 2 3 =1 2 -
Б А 3 А 4 А 1 Сб 2 -1 1 А 0 5 7 2 А 1 0 0 1 А 2 -3 7 -2 А 3 1 0 0 А 4 0 1 0 А 5 2 -2 1 2 -6 1 5 8 1 4 14 0 0 0 1 0 -9 0 1 0 0 0 0 3/7 1/7 2/7 9/7 4 8/7 -2/7 3/7 10/ 7 Δj А 3 А 2 А 1 Δj Max F(Y)=14. Y*=(4. 41. 8). Б*=(A 3. A 2. A 1)
• Оптимальным решением исходной задачи является вектор X*=(4, 1, 8), базис оптимального решения Б* =(А 3, А 2, А 1) значение целевой функции max F(Y)= F(X*)= 14. Находим оптимальное решение двойственной задачи • Y* = C*D -1=
• Данное решение можно найти уi* = Δi *+ci*, • у1* = 0+2 = 2, у2* =9/7 1 = 2/7, у3* =10/7+3=31/7. • Таким образом, оптимальным решением двойственной задачи является вектор Y*= (2, 2/7, 31/7), min Z(Y) = Z(Y*) = 14. • Ответ: max F(X) = 14 при X* = (4, 1, 8); min Z(Y) =14 при Y* = (2, 2/7, 31/7).
5. 4. Вторая теорема двойственности • Пусть имеется симметричная пара двойственных задач
• Теорема 5. 2. Для того чтобы допустимые решения Х= (х1, х2, . . . , хn), Y=(y 1, y 2, . . . , yт) являлись оптимальными решениями пары двойственных задач, необходимо и достаточно, чтобы выполнялись следующие равенства:
• Иначе, если при подстановке оптимального решения в систему ограничений i е ограничение исходной задачи выполняется как строгое неравенство, то i-я координата оптимального решения двойственной задачи равна нулю, и, наоборот, если i-я координата оптимального решения двойственной задачи отлична от нуля, то i е ограничение исходной задачи удовлетворяется оптимальным решением как равенство.
• Пример 1. Для данной задачи составить двойственную, решить ее графическим методом и, используя вторую теорему двойственности, найти решение исходной задачи: • F(X) = -2 x 1 + 2 х2 + 10 х3 + 4 х4 + 2 х5→ min,
• Решение. Составим двойственную задачу: Z(Y) = 2 у1 + 3 у2→ max,
• Решим эту задачу графическим методом. На рис. 5. 1 изображены область допустимых решений задачи, нормаль n = (2, 3) линий уровня, линии уровня 2 у1 + 3 у2 = с и оптимальное решение задачи Y* = (3, 4). Рис. 5. 1.
2 у1=6 у1*=3, у2*=4. Y *=(3, 4). Z(Y *)=2· 3+3· 4=18. Подставим оптимальное решение Y *= (3, 4) в систему ограничений. Получим, что первое, второе и пятое ограничения выполняются как строгие неравенства:
По второй теореме двойственности следует, что соответствующие координаты оптимального решения двойственной задачи, т. е. исходной задачи, равны нулю: х1* = х2* = х5*=0. Учитывая это, из системы ограничений исходной задачи получим :
Отсюда находим х3*= 1, х4* = 2. Окончательно записываем X*=(0, 0, 1, 2, 0). Ответ: min F(X) = 18 при X* = (0, 0, 1, 2, 0).
• Пример 2. Для данной задачи составить двойственную, решить ее графическим методом и, используя вторую теорему двойственности, найти решение исходной задачи: • F(X) = 5 x 1 + 3 х2 + 4 х3 х4 → max,
• Решение. Составляем двойственную задачу Z(Y) =3 y 1 + 3 у2→min,
• Решаем ее графическим методом (рис. 5. 2). Для этого строим область допустимых решений (ОДР), нормаль n = (3, 3), линии уровня 3 у1 + 3 у2 = с. Перемещаем линии уровня до опорной прямой. Оптимальное решение (точку Y*) найдем, решая совместно уравнения прямых L 1 и L 2 соответствующих первому и третьему неравенствам. Таким образом, оптимальное решение Y*= (1, 2), при котором min Z(Y) = 9.
• Используем вторую теорему двойственности. Подставляем координаты оптимального решения двойственной задачи Y* = (1, 2) в систему ограничений:
• Второе и четвертое ограничения выполняются как строгие неравенства, следовательно, вторая и четвертая координаты оптимального решения исходной задачи равны нулю: х2* = 0, х4* = 0. Учитывая это, первую и третью координаты оптимального решения X* находим при совместном решении уравнений ограничений: • 3 х1 = 3 => х1* = 1, х3* = 1. • Ответ: max F(X) = 9 при X* = (1, 0, 1, 0). •
• Задачи для самостоятельного решения • 1. Составить и решить табличным симплексным методом задачу, двойственную следующей: максимизировать функцию F =x 1+ x 2 +x 3 при ограничениях
• 2. Симплексным методом найти максимум функции F =x 1+ x 2 при ограничениях
• 3. Найти максимум функции F =2 x 1 3 x 2 при ограничениях Решить задачу симплексным методом, затем составить двойственную задачу и решить ее геометрически.
• 4. Найти минимум функции F =2 x 1+4 x 2 при ограничениях Решить задачу геометрически, затем составить двойственную задачу и решить ее табличным симплексным методом.
• 5. Составить двойственную задачу и решить ее симплексным методом. Найти решение исходной задачи, не решая её, применив первую теорему двойственности. • F =x 1+2 x 2→max
• 6. Составить двойственную задачу и решить исходную геометрическим методом. Найти решение двойственной задачи, не решая её, применив вторую теорему двойственности. • F =x 1+2 x 2→min Ответы: 1. Z min = 4/3; 2. F max = Z min =9; 3. F max =∞, двойственная задача не имеет решений; 4. F min = Z max =22; 5. F max = Z min==22/3, х*1=2/3, х*2=10/3; 6. F min = =Zmax ==-4, у*1=0, у*2=0, у*3=2/3.
• СПАСИБО ЗА ВНИМАНИЕ!!!
Линейное программирование.ppt