Контрольная работа по ПМО Вариант 1 I. Задача линейного программирования (графический метод) Решить графическим методом задачу линейного программирования. Найти максимум и минимум функции F(x) при заданных ограничениях. F ( x) 3x1 5x2 x1 5 x2 5, 3x x 3, 1 2 2 x1 3x2 6, x1 0, x2 0. Решение. Решим задачу графическим методом. Построим область допустимых решений, для этого вначале построим границу области (прямые li и x1 0, x2 0 ), затем подставим точку (0,0) в неравенства и выделим нужную полуплоскость. (1) l1 : x1 5 x2 5 (2) l2 :3x1 x2 =3 (3) l3 : 2 x1 3x2 6 x1 0 5 x1 0 1 x1 0 -3 x2 1 0 x2 -3 0 x2 2 0 Полученный многоугольник АВDC - область допустимых решений. Построим нормаль линий уровня целевой функции 3x1 5x2 сonst , вектор-градиент с (3, 5) , координатами которого являются коэффициенты в целевой функции. Вектор показывает направление максимизации. Чтобы найти максимум целевой функции, будем перемещать линию уровня ("красную" прямую), перпендикулярно вектору с по направлению вектора; чтобы найти минимум – против направления вектора. В точке, в которой линия уровня первый раз касается многоугольника будет минимум – это точка А(0;1)(пересечение прямой l1 и x1 0 ); в точке, в которой линия уровня последний раз касается многоугольника будет максимум - это точка D (пересечение прямых l2 и l3 .) Чтобы найти координаты точки D, решим систему: 15 1 x1 2 2,14 3x1 x2 =3 x2 =3 x1 3 7 7 2 x 3 x 6 7 x 15 24 3 1 2 1 x 3 3, 43 2 7 7 Значение целевой функции в точках экстремума: Fmin F (0;1) 3 0 5 1 5 15 24 165 1 3 Fmax F 2 ;3 3 5 23,57. 7 7 7 7 7 II. Задача линейного программирования (симплекс-метод, теоремы двойственности) Для изготовления трех видов продукции используют три вида сырья. Запасы сырья, нормы его расхода и прибыль от реализации каждого продукта приведены в таблице. Тип сырья I II III Цена изделия А 4 3 1 10 Нормы расхода сырья на одно изделие Б 2 1 2 14 В 1 3 5 12 Запасы сырья 180 210 244 1. Сформулировать прямую оптимизационную задачу на максимум общей стоимости; указать оптимальную производственную программу; пояснить, почему в производственную программу вошли не все виды изделий. 2. Сформулировать двойственную задачу и найти ее оптимальный план 3. Определить, как изменится стоимость продукции и план выпуска при увеличении запасов сырья I и III вида на 4 ед. каждого. 4. Определить целесообразность включения в план изделия «Г», на изготовление которого расходуется соответственно 1, 3 и 2 ед. каждого вида сырья (цена изделия 13 д.ед.) и изделия «Д», на изготовление которого расходуется по две единицы каждого вида сырья (цена изделия 12 д. ед.). Решение. 1. Составим прямую задачу ЛП. Пусть x1 - количество выпускаемых единиц изделий вида А ; x2 - количество выпускаемых единиц изделий вида Б; x3 - количество выпускаемых единиц изделий вида В. Тогда, в силу норм расходов сырья на каждый вид изделий и имеющихся запасов, имеем ограничения (на затраты) 4 x1 2 x2 x3 180 3x1 x2 3x3 210 x 2 x 5 x 244 2 3 1 x1 0, x2 0, x3 0 Целевая функция (общая стоимость реализации) F 10 x1 14 x2 12 x3 max Решили задачу симплекс-методом в Эксель (при помощи надстройки «Поиск решения»). Получили следующий оптимальный план: x1 0; x2 82; x3 16; Fmax F (0;82;16) 1340 Оптимальная производственная программа: чтобы получить максимальную прибыль равную 1340 ден.ед., при имеющихся запасах сырья, нужно выпускать 82 единицы изделий вида Б и 16 единиц изделий вида В, изделия вида А при этом выпускать не нужно. Это связано с тем, что прибыль от реализации изделий вида А (цена изделия) меньше других видов (Б,В), а расходы наиболее ограниченных запасов вида I на изготовление единицы продукции вида А больше, чем у других видов. 2. Составим двойственную задачу и решим ее 4 y1 3 y2 y3 10 2 y1 y2 2 y3 14; y 3 y 5 y 12 2 3 1 y1 0, y2 0, y3 0 L 180 y1 210 y2 244 y3 min . По теореме о сильной двойственности, если прямая задача имеет оптимальное решение, то двойственная задача имеет такое же оптимальное решение. Решение также получим в Эксель симплекс-методом: Lmin L(5, 75;0;1, 25) 1340. 3. Определим план выпуска и стоимость продукции, при увеличении запасов сырья I и III вида на 4 ед. каждого. Получаем задачу 4 x1 2 x2 x3 184 3x1 x2 3x3 210 x 2 x 5 x 248 2 3 1 x1 0, x2 0, x3 0 F 10 x1 14 x2 12 x3 max оптимальный план, которой будет Fmax F (0;84;16) 1368 . При увеличении запасов сырья I и III вида на 4 ед. каждого, стоимость продукции увеличится на 28 ден.ед., если увеличить выпуск изделий вида Б на 2 единицы (по сравнению с исходным оптимальным планом). Оптимальная программа в этом случае будет такая: чтобы получить максимальную прибыль равную 1368 ден.ед., при имеющихся запасах сырья, нужно выпускать 84 единицы изделий вида Б и 16 единиц изделий вида В, изделия вида А при этом выпускать не нужно. 4. Включим в исходный план изделия «Г» и «Д»: пусть x4 количество выпускаемых единиц изделий вида Г; x5 - количество выпускаемых единиц изделий вида Д, тогда с учетом расходов сырья на их изготовление и запасов, получим задачу 4 x1 2 x2 x3 x4 2 x5 180 3x1 x2 3x3 3x4 2 x5 210 x 2 x 5 x 2 x 2 x 244 2 3 4 5 1 x1 0, x2 0, x3 0, x4 0, x5 0 F 10 x1 14 x2 12 x3 13x4 12 x5 max Оптимальный план: Fmax F (0;66;0;48;0) 1548 . При включении в исходный план изделий Г и Д, максимальная стоимость увеличится на 208 ден.ед. Оптимальная программа в этом случае будет такая: чтобы получить максимальную прибыль равную 1548 ден.ед., при имеющихся запасах сырья, нужно выпускать 66 единиц изделий вида Б и 48 единиц изделий вида Г, изделия вида А, В и Д при этом выпускать не нужно. Таким образом, целесообразно включить в исходный план только изделие вида «Г». III. Транспортная задача Для строительства четырех объектов используется кирпич, изготовляемый на трех заводах. Ежедневно каждый из заводов может изготовлять 100, 150 и 50 усл. ед. кирпича. Ежедневные потребности в кирпиче на каждом из строящихся объектов соответственно равны 75, 80, 60 и 85 усл. ед. Известны также тарифы перевозок 1 усл. ед. кирпича с каждого с заводов к каждому из строящихся объектов: 6 7 3 5 C 1 2 5 6 8 10 20 1 Составить такой план перевозок кирпича к строящимся объектам, при котором общая стоимость перевозок является минимальной. Решение. Обозначим заводы ПО (пункт отправления), Ai , i 1, 2,3 - количество кирпича на заводах; строящиеся объекты ПН (пункт назначения), В j , j 1, 2, 3, 4 – потребность в кирпиче на объектах. Проверим, является ли наша задача закрытой (запасы=потребностям) Ai B j (100+150+50=300=75+80+60+85), условие выполнено – задача закрытая. Составим план перевозок, найдем оптимальное решение методом потенциалов, а затем проверим решение в Эксель (в надстройке «Поиск решения») а) Начинаем заполнять таблицу методом наименьшей стоимости перевозок, так быстрее придем к оптимальному плану. Вначале отправляем заполняем ПН, в которых стоимость перевозок минимальна (из A2 в В1, A3 в В4, A2 в В2, из A1 в В3, A1 в В4, A1 в В2) остатки кирпича на заводе и остатки потребности в кирпиче на объекте записываем сверху и справа таблицы, пока не распределим весь кирпич и не удовлетворим все потребности. ПН ПО A1=100 0 5, 0 В1=75 В2=80 В3=60 В4=85 6 0 7 5 1 A2=150 75 A3=50 35, 0 3 60 5 40, 5,0 35 2 5 6 10 20 1 75 8 50 75, 0 0 Построили первый опорный план транспортной задачи. Убедимся, что: 1. Сумма грузов по каждой строке равна грузу в соответствующем ПО. Сумма грузов в каждом столбце равна грузу в соответствующем ПН. 2. n+m-1=3+4-1=6 совпадает с числом занятых клеток. План невырожденный Найдём значение целевой функции – стоимость перевозки L=5*7 + 60*3 + 35*5 + 75*1 + 75*2 + 50*1 = 665 ден.ед. б) Проверим план на оптимальность ПН ПО A1=100 U1=0 В1=75 V1=6 0 В2=80 В3=60 В4=85 V2=7 V3=3 V4=5 6 7 3 5 1 2 7 5 60 35 5 6 6 A2=150 75 75 U2=-5 6 8 7 10 21 20 1 A3=50 50 U3=-4 Итерация 1. Найдем потенциалы для всех потребителей и поставщиков из соотношения Ui + Vj = Cij (для всех базисных клеток,т.е. занятых отличными от нуля Cij), где: Ui - потенциал i-го поставщика; Vj – потенциал j-го потребителя; Cij (правый верхний угол в ячейке) - стоимость товарных перевозок в базисной ячейке, расположенной в i-й строке, j-м столбце. Имеем: Возьмем U1=0 U2+V2=2, U2=-5 U1+V2=7, V2=7 U3+ V4=1, U3=-4 U1+V3=3, V3=3 U2+ V1=1, V1=6 U1+V4=5, V4=5 Затем вычислим оценки не базисных (свободных) ячеек, используя соотношение ∆ij = Cij - (Ui + Vj), где ∆ij - стоимость товарных перевозок в соответствующей не базисной ячейке (в таблице оценки отмечены голубым цветом ∆ij). Получим: ∆11= C11 – (U1+V1)=6-(0+6)=0; ∆23=5-(-5+3)=7 ∆32=10-(-4+7)=7, ∆24=6-(-5+5)=6 ∆33=20-(-4+3)=21. ∆31=8-(-4+6)=6, Если хотя бы в одной клетке оценка отрицательна, то план не является оптимальным и следует перераспределить поставки. Так как все оценки свободных ячеек положительны, то уменьшить общую стоимость доставки кирпича от заводов к строящимся объектам невозможно, данный план является оптимальным (стоимость перевозки минимальна). 0 5 60 35 Ответ: X опт 75 75 0 0 , Lmin 665 ден.ед. 0 0 0 50 IV. Задача динамического программирования В таблице приведены значения возможного прироста выпуска продукции на четырех фирмах в зависимости от суммы x, выделенной на модернизацию производства. Распределить между фирмами 1 млн. руб. так, чтобы общий прирост выпуска продукции был максимальным. Для упрощения вычислений значения x принимать кратными 200 тыс. руб. Прирост выпуска продукции на предприятиях, i(x) 200 Средства x, тыс. руб. 400 600 800 1000 1(x) 2(x) 3(x) 4(x) 95 114 164 133 183 191 321 273 241 302 402 442 383 442 571 692 501 591 701 733 Решение. Поскольку возможны различные варианты распределения средств между фирмами (от 0 до 1 млн. рублей), то и состояния перед i-м шагом могут быть различными, и каждое из них будет характеризоваться соответствующим значением оставшейся суммы - xi 1 (множество состояний системы перед i-м шагом.) В соответствии с условием задачи элементами множества x будут числа 0, 200, 400, 600, 800 и 1000. Целевая функция i ( x, xi 1 ) ) означает прирост выпуска продукции на i-м предприятии при условии, что величина остатка средств перед выделением ему выбранной из множества x ( с - xi 1 , где с – имеющаяся сумма на данный момент) суммы определялась элементом множества x. i ( x) i 1 (c x) Прирост на каждом шаге составит i (c) max( 0 x c Процедуру условной оптимизации начинаем с первой фирмы: пусть все средства выделяются первой фирме. Тогда прирост составит 1 (c) . В результате получаем следующую таблицу: x1 c 1 (c) 200 95 400 183 600 241 800 383 1000 501 Предположим теперь, что средства вкладываются в два предприятия. Тогда 200 400 600 800 1000 X2 2 (c ) 114+0 114+95 114+183 114+241 114+383 191+0 191+95 191+183 191+241 302+0 302+95 302+183 442+0 442+95 591+0 200 200 600 800 1000 114 209 302 442 591 X3 3 (c ) 200 0+114 164+0 400 0+209 164+114 321+0 600 0+302 164+209 321+114 402+0 800 0+442 164+302 321+209 402+114 571+0 1000 0+591 164+442 321+302 402+209 571+114 701+0 Наконец, пусть средства вкладываются во все 4 фирмы, тогда 200 400 400 800 1000 164 321 435 571 701 x 0 200 400 600 800 c 200 0+164 133+0 400 0+321 133+164 273+0 600 0+435 133+321 273+164 442+0 800 0+571 133+435 273+321 442+164 692+0 1000 0+701 133+571 273+435 442+321 692+164 Сведем все полученные результаты в одну таблицу: 1000 X4 4 (c ) 733+0 0 0 200 800 800 164 321 454 692 856 X4 4 (c ) c x 0 200 400 600 800 1000 0+95 0+183 0+241 0+383 0+501 Предположим, что средства вкладываются в 3 фирмы, тогда c x 0 с 200 X1 1 (c) 400 X2 600 2 (c ) 800 X3 1000 3 (c ) 0 0 0 0 0 0 0 0 0 200 200 95 200 114 200 164 0 164 400 400 183 200 209 400 321 0 321 600 600 241 600 302 400 435 200 454 800 800 383 800 442 800 571 800 692 1000 1000 501 1000 591 1000 701 800 856 Из последней таблицы видно, что при вложении в 1 млн. рублей максимальный прирост выпуска продукции на всех четырех предприятиях составляет 856 ед, если четвертому предприятию будет выделено 800 тыс. рублей, остаток составит 1000-800=200 тыс рублей. Если в наличии имеется 200 тыс.рублей, то максимальный прирост продукции будет, если 200 тыс.рублей вложить в третье предприятие, остается 200-200=0. Найденное оптимальное распределение можно записать в виде вектора (0; 0;200; 800). Именно такое распределение имеющихся средств в 1 млн.рублей обеспечивает максимальный прирост выпуска продукции в 856 ед. Ответы проверены в Эксель (Поиск решения).