Предприятие планирует выпуск двух видов продукции (Р1 и Р2), на производство которых используется три вида сырья (А1, А2 и А3). Потребности на каждую единицу вида продукции каждого вида сырья, запасы сырья и прибыль от реализации единицы каждого вида продукции представлены следующими данными:
Вид сырья | Запас сырья | Число единиц сырья, затрачиваемого на изготовление единицы продукции | |
Р1 | Р2 | ||
А1 | b 1 | а 11 | а 12 |
А2 | b 2 | а 21 | а 22 |
А3 | b 3 | а 31 | а 32 |
Прибыль от реализации единицы продукции: | c 1 | c 2 |
Используя математические методы, составьте план производства продукции (х 1, х 2), обеспечивающий максимальную прибыль.
Решение:
Вид сырья | Запас сырья | Число единиц сырья, затрачиваемого на изготовление единицы продукции | |
Р1 | Р2 | ||
А1 | 40 | 3 | 2 |
А2 | 60 | 1 | 4 |
А3 | 120 | 3 | 0 |
Прибыль от реализации единицы продукции: | 3 | 1 |
Составим математическую модель и приведем задачу к каноническому виду:
1. Присваиваем название листу 1 – Симплекс-метод.
2. В ячейке А1 введем Z = 3x1 + 1x2 max
3. В ячейке А3 введем 3х1 + 2х2 40
|
|
1х1 + 4х2 60
3х1 + 0х2 120
4. В ячейке Е3 введем x1 0; x2 0
5. В ячейке А8 приведем уравнение к каноническому виду и запишем:
Z = 3x1 + x2 + 0 * х3 +0 * х4 + 0 * х5 max
6. В ячейке А10 введем 3х1 + 2х2 + х3 = 40
х1 + 4х2 + х4 = 60
3х1 + х5 = 120
7. В ячейке Е10 введем хj 0
8. Найдем первое базисное решение. х1, х2 – свободные переменные, то есть количество продукции 1-го и 2-го видов, х3, х4, х5 – базисные переменные, то есть остатки ресурсов 1-го, 2-го, 3-го вида соответственно. Свободные переменные равны нулю, а базисные определяем из системы ограничений. Получаем х1 = 0, х2 = 0, х3 = 40, х4 = 60, х5 = 120.
Запишем решение в виде вектора. х1 = (0, 0, 40, 60, 120); Z1 = 0. – значение целевой функции при этом решении.
Все вычисления проводим в симплексных таблицах.
Заполним симплексную таблицу:
9. Выделим ячейки (А15:Н20), и заполним теми данными, которые имеем. Первая клетка в оценочной строке – это значение целевой функции.
Z = = 0 * 40 + 0 * 60 + 0 * 120 = 0
Оценки:
1 = - С1 = 0 * 3 + 0 * 1 + 0 * 3 – 3 = – 3
2 = - С2 = 0 * 2 + 0 * 4 + 0 * 0 – 1 = – 1
3 = - С3 = 0 * 1 + 0 * 0 + 0 * 0 – 0 = 0
4 = - С4 = 0 * 0 + 0 * 1 + 0 * 0 – 0 = 0
5 = - С5 = 0 * 0 + 0 * 0 + 0 * 1 – 0 = 0
10. Заполняем оценочную строку. В оценочной строке отрицательные оценки
1 = – 3, 2 = – 1. Следовательно, решение неоптимальное. Для перехода к новому решению выбираем ведущий столбец и ведущую строку. Из отрицательных оценок выбираем максимальную по модулю: max {│-3│,│-1│} это будет 1 = – 3; номер ведущего столбца будет равен 1.
11. Составляем отношение свободных членов bi к положительным элементам ведущего столбца. Затем находим минимальное из отношений. Номер строки соответствует номеру минимального из отношений.
12. В ячейке J17 вводим формулу = С17/D17.
|
|
13. В ячейки J18 и J19 скопируем формулу из ячейки J17, путем перетаскивания уголка. Получим следующее: min {bi/ai2} = min {40/3, 60/1, 120/3} = min {13,333; 60; 40} = 13,333
Ведущей строкой является первая строка.
14. Итак, в базис войдет х1 вместо х3.
Для перехода ко второй таблице разрешающую строку разделим на разрешающий элемент; в разрешающем столбце поставим 0, кроме разрешающего элемента, остальные элементы пересчитаем по формуле прямоугольников.
и заполняем симплексную таблицу.
15. Базисное решение соответствующее данной таблице,
х2 = (13,333; 0; 0; 46,667; 80), z2 = 40
В оценочной таблице нет отрицательных элементов, следовательно, решение оптимально.
Решение: х1 = 13,333, х2 = 0, Z = 40
Для получения максимальной прибыли необходимо использовать только первый ресурс в количестве 13,33 единиц, при этом максимальная прибыль достигает 40 условных единиц.
Правильность найденных значений проверим через Поиск решения.
1. Присваиваем листу 2 имя Поиск решения.
2. В ячейке А1 введем: Поиск решения.
3. В ячейку А3 введем Прибыль на единицу продукции (z).
4. В ячейках А4:В4 введем элементы целевой функции.
5. В ячейку А6 введем Нормы сырья.
6. В ячейках А7:В9 введем элементы нормы сырья.
7. В ячейку D6 введем Запасы ресурсов.
8. В ячейках D7:D9 введем компоненты запасов ресурсов.
9. В ячейку А11 введем Вектор решения.
10. В ячейки А12:В12 будут помещены найденные значения Х1, Х2. А пока присвоим им некоторое начальное значение, например 0. Внесем в ячейки А12:В12 значение 0.
11. В ячейку G6 введем Ограничение.
12. В ячейку G7 введем 7x1 + 4x2 56. Для этого в ячейку G7 введем, Вставка – функция – СУММПРОИЗВ, =СУММПРОИЗВ(А7:В7;$A$13:$В$13) и скопируем содержимое этой ячейки в ячейки G8, G9.
Приступим к решению задачи с помощью модуля поиск решения.
11. Выберем команду Сервис – Поиск решения.
12. В поле установить ячейку установим А16.
13. В поле Изменяя ячейки введем диапазон $A$13:$В$13.
14. В поле Ограничения щелкнем на кнопке Добавить.
15. В поле Ссылка на ячейку введем $G$7.
16. В поле знаков выберем знак <=.
17. В поле Ограничение введем $D$7.
18. Щелкнем на кнопке Добавить. Выполняя шаги 15-17 введем ограничения для второго и третьего уравнения.
19. Щелкнем еще раз на кнопке Добавить. В поле Ссылка на ячейку введем $A$13:$B$13. В поле знаков выберем знак >=. В поле Ограничение введем 0.
Выберем команду Параметры, отметим галочкой Линейная модель.
20. Щелкнем по кнопке Выполнить для поиска решения. Найдя решение поставленной задачи, модель поиска решения отобразит диалоговое окно: Результаты поиска решения, в котором и сообщит о результатах выполненной работы.
Сопоставим данные полученные через Поиск решения с данными рассчитанными симплекс-таблицей.
Максимальная прибыль z составляет 40 условных единиц.
Задача 2
Для перехода к двойственной задаче мы вектор целевой функции прямой задачи принимаем за вектор ограничений двойственной и, наоборот, при этом количество переменных в двойственной задаче равно числу ограничений в прямой.
Цель двойственной задачи – минимизировать стоимость (W) ресурсов (у)
1. Запишем двойственную задачу в каноническом виде:
W = 40у1 + 60у2 + 120у3 min
yj
2. Для решения системы неравенств необходимо применить вторую теорему двойственности, согласно которой:
3. Тогда подставив в систему неравенств результаты оптимального решения задачи получим:
3* 13,33 + 2* 0 = 40 → у1 > 0
1 * 13.33 + 4* 0 = 13.333 < 60 → у2 = 0
3 * 13.33 + 0 * 0 = 40<120 →у3 =0
т.к х1 = 13.33, то 3у1 + 1у2 + 3у3 = 3
т.к х2 = 0, то 2у1 + 4у2 + 0у3 = 1
т.к. y2 = 0, y3 = 0, то
Проверка.
W= 40*1+ 60*0+ 120*0 = 40 = Z
Cогласно первой теореме двойственности, полученные результаты подтверждают оптимальность решения прямой задачи.
Для анализа чувствительности делаем следующее:
1. На листе под именем Поиск решения выбираем меню – Сервис – Поиск решения.
|
|
2. Нажимаем кнопочку выполнить.
3. В появившемся окне Результаты поиска решения в графе Тип отчета выделяем РЕЗУЛЬАТ и нажимаем клавишу ENTER.
4. На отдельном листе появляются данные отчета по результатам.
5. На листе поиск решения производим шаги с 1 по 3, но в Типе отчета выделяем УСТОЙЧИВОСТЬ и получаем на отдельном листе отчет по устойчивости.
6. На листе поиск решения производим шаги с 1 по 3, но в Типе отчета выделяем ПРЕДЕЛЫ и получаем на отдельном листе отчет по пределам.