8713
.pdfницу; значения приращения ресурсов, при которых сохраняется оптимальный набор переменных, входящих в оптимальное решение.
Отчет по пределам. В нем показано, в каких пределах может изменяться выпуск продукции, вошедшей в оптимальное решение, при сохранении струк-
туры оптимального решения: приводятся значения Xj в оптимальном решении;
приводятся нижние пределы изменения значений Xj.
Кроме этого, в отчете указаны значения целевой функции при выпуске данного типа продукции на нижнем пределе. Далее приводятся верхние преде-
лы изменения х, и значения целевой функции при выпуске продукции, вошед-
шей в оптимальное решение на верхних пределах.
Параметрический анализ. Под параметрическим анализом будем понимать решение задачи оптимизации при различных значениях того параметра, кото-
рый ограничивает улучшение целевой функции.
Параметрический анализ будем выполнять для задачи линейного програм-
мирования в нескольких вариантах. Далее Сервис, Поиск решения, Выполнить.
На экране: диалоговое окно Результаты поиска решения, Сохранить сцена-
рий, Ввести имя сценария, ОК. Повторить данную процедуру для всех вариан-
тов. Затем Сервис, Сценарии. Окно Диспетчер сценариев, Отчет. Окно Отчет по сценарию, Структура, ОК.
В результате выполнения данных анализов определяется влияние управля-
емых переменных на результаты эксперимента.
Задача 3.
Пусть в производстве 4-х видов продукции участвуют 4 вида ресурсов. Из-
вестны нормы расхода ресурсов на производство единицы продукции (матрица А), цены ее реализации (матрица С) и запасы ресурсов (матрица В). Определить план производства продукции, максимизирующий выручку от реализации про-
изводственной продукции.
41
4 |
2 |
5 |
2 |
|
|
550 |
|
|
4 |
|
|
|
3 |
0 |
3 |
1 |
|
|
400 |
|
|
5 |
|
|
|
|
|
|
|
||||||
A |
0 |
5 |
2 |
6 |
, |
B |
650 |
, |
C |
7 |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
1 |
3 |
2 |
|
|
520 |
|
|
9 |
|
|
|
|
|
|
|
Тогда математическая модель задачи примет вид: найти х1, х2, х3, х4 (объемы производства каждого вида продукции), удовлетворяющие ограничениям:
4х1 |
+ 2x2 + 5x3 + 2x4 550, |
||||
3x1 |
|
|
+ 3x3 + x4 400, |
||
|
5x2 |
+ 2x3 + 6x4 650, |
|||
4x1 |
+ |
x2 |
+ 3x3 + 2x4 520, |
||
|
|
|
|
|
|
x j 0, |
( |
j 1,4 ), |
при которых функция z=4x1+5x2+7x3+9x4 достигает максимума.
При решении задачи симплексным методом она приводится к канониче-
скому виду добавлением в левые части ограничений неотрицательных балансо-
вых переменных: |
|
|
|
|
|||||
4х1 |
+ 2x2 |
+ 5x3 + 2x4 +s1 |
=550, |
||||||
3x1 |
|
+ 3x3 + x4 |
+s2 |
=400, |
|||||
|
5x2 |
+ 2x3 + 6x4 |
|
|
+s3 |
=650, |
|||
4x1 |
+ x2 |
+ 3x3 + 2x4 |
|
|
+s4 |
=520, |
|||
|
j |
|
,i |
|
, |
|
|||
x j 0, si 0, |
1,4 |
1,4 |
|
||||||
z 4x1 5x2 |
7x3 9x4 |
max . |
|
Значения балансовых переменных показывают объемы неизрасходованных ресурсов в соответствующем плане. Отчет о решении этой задачи с помощью Приложения «Поиск решения» в MS Excel.
Итак, для получения максимального дохода от реализации производствен-
ной продукции ее необходимо выпустить в объемах: х1*=67,083; х2*=0; х3*=15;
х4*=103,333. При этом zmax=1303,333.
Двойственная задача. Найти значения переменных у1, у2 у3, у4, удовлетво-
ряющих ограничениям:
42
4y1 |
+ 3y2 |
+4y4 |
4, |
||
2y1 |
|
|
|
+5y3 + y4 |
5, |
5y1 |
+ 3y2 |
+2y3 + 3y4 |
7, |
||
2y1 + y2 |
+ 6y3 + 2y4 |
9, |
|||
y 0,i |
|
, для которых целевая функция будет минимальной. |
|||
1,4 |
|||||
|
|
|
|
|
w=550y1+400y2+650y3+520y4 |
Решения этой задачи: y1*=0,833, y2*=0, y3*=1,167, y4*=0,167.
Проиллюстрируем свойства двойственных оценок на основе этой задачи.
1. Каждая из оценок указывает, на сколько изменится максимальное значе-
ние целевой функции (максимальная выручка), если изменить на единицу запа-
сы соответствующих ресурсов. Наибольшее изменение выручки произойдет,
если изменить объем 3-го ресурса ( y3* = 1,167), а изменение второго ресурса (в
границах устойчивости) не приведет к изменению целевой функции (у2*=0).
2. Оценки у1*, у3*, у4* положительны. Это означает, что при реализации оп-
тимального плана соответствующие |
ресурсы расходуются полностью. Прове- |
рим это. Подставим x j* в 1-е |
сопряженные условия исходной задачи. |
4 67,083 2 0 5 15 2 103,333 549,999 550 |
Аналогично для третьего и четвертого ресурсов (проверить самостоятель-
но). Следовательно, 1,3,4-й ресурсы дефицитны. у2*=0. Это означает, что в оп-
тимальном решении второй ресурс расходуется не полностью. Проверим это.
Подставим x j во второе ограничение исходной задачи:
3 67,083 3 15 103,333 349,582 400.
Остаток второго ресурса составляет 400-349б582 50,4. Это и есть значение балансовой переменной в оптимальном решении исходной задачи.
3. Рентабельными являются 1-я, 3-я и 4-я продукции (х1*, х2*, х3* в опти-
мальном плане положительны), а нерентабельной 2-я – х2*. Проверим это, под-
ставив уi* в сопряженные условия двойственной задачи. Для первой продукции:
43
4 0,833 3 0 4 0,167 4 . Получили строгое равенство.
Аналогично для 3-й и 4-й продукции (проверить самостоятельно). Покажем нерентабельность второй продукции, подставив yi во второе ограничение двойственной задачи. Получим:
2 0,833 5 1,167 0,167 7,668 5 .
Итак, оценка ресурсов, необходимых для производства единицы 2-й про-
дукции больше цены единицы этой продукции на 7,668-5=2,668.
Задача 4. Транспортные модели
Транспортная задача является одной из наиболее распространенных задач линейного программирования и находит широкое практическое применение.
Постановка транспортной задачи.
Некоторый однородный продукт, сосредоточенный у m поставщиков Аi в
количестве ai (i = 1, ..., m) единиц, необходимо доставить n потребителям Bj в
количестве bj (j = 1, ..., n) единиц. Известна стоимость cij перевозки единицы груза от поставщика i к потребителю j. Необходимо составить план перевозок,
позволяющий с минимальными затратами вывести все грузы и полностью удо-
влетворить потребителей.
Экономико-математическая модель транспортной задачи.
Обозначим через xij количество единиц груза, запланированных к перевоз-
ке от поставщика i к потребителю j. Так как от поставщика i к потребителю
j запланировано перевезти xij единиц груза, то стоимость перевозки соста-
вит cij∙xij. Транспортная задача относится к двух индексным задачам линейного программирования, так как в результате решения задачи необходимо найти матрицу Х с компонентами xij. Стоимость всего плана выразится двойной сум-
m |
n |
мой S cij xij . Систему ограничений получаем из условий задачи: |
|
i 1 |
j 1 |
44
n
а) все грузы должны быть перевезены, т.е. xij ai , i =1,..., m.
j 1
m
б) все потребности должны быть удовлетворены, т.е. xij bj , j =1,..., n.
i 1
Таким образом, математическая модель транспортной задачи имеет следу-
|
m |
n |
ющий вид: |
S cij |
|
|
i 1 |
j 1 |
xij min
|
n |
|
|
|
|
xij |
ai |
, i = 1,..., m |
|
j 1 |
|
|
||
m |
|
|
|
|
|
|
xij |
b j |
, j = 1,..., n |
|
||||
i 1 |
|
|
|
|
x |
0, i 1,..., m; j = 1,..., n. |
|||
|
ij |
|
|
|
|
|
|
|
|
|
|
|
|
|
В рассмотренной модели предполагается, что суммарные запасы равны
m |
n |
суммарным потребностям, т.е. ai |
bj . Транспортная задача, в которой |
i 1 |
j 1 |
суммарные запасы и потребности совпадают, называется закрытой моделью; в
противном случае − открытой. Для открытой модели может быть два случая:
m |
n |
а) суммарные запасы превышают суммарные потребности: ai |
bj . |
i 1 |
j 1 |
m |
n |
б) суммарные потребности превышают суммарные запасы: ai |
bj . |
i 1 |
j 1 |
Открытая модель решается приведением к открытой модели. В случае а),
когда суммарные запасы превышают суммарные потребности, вводится фик-
тивный |
потребитель bn+1, потребность |
которого |
описывается |
формулой: |
|
m |
|
n |
|
|
|
bn 1 ai |
bj , а для случая б), когда |
суммарные |
потребности |
превыша- |
|
i 1 |
|
j 1 |
|
|
|
ют суммарные запасы, вводится фиктивный поставщик am+1, запасы которого
45
n |
m |
описываются формулой: am 1 bj |
ai . Стоимость перевозки единицы |
j 1 |
i 1 |
груза до фиктивного потребителя и стоимость перевозки груза от фиктивного поставщика полагаются равными нулю, так как груз в обоих случаях не перево-
зится.
Транспортная задача имеет n + m уравнений с m∙n неизвестными. Матрицу перевозок Х = (xij)mn, удовлетворяющую ограничениям, называют планом пере-
возок транспортной задачи, а xij − перевозками. План Х*, при котором целевая функция S достигает минимума, называется оптимальным.
Пример. Четыре предприятия для производства продукции используют не-
которое сырье. Спрос на сырье для каждого из предприятий составляет соот-
ветственно 120, 50, 190 и 110 у.е. Сырье сосредоточено в трех местах. Предло-
жения поставщиков сырья равны 160, 140 и 120 у.е. На каждое предприятие сы-
рье может завозиться от любого поставщика. Тарифы перевозок известны и за-
7 |
8 |
1 |
2 |
|
|
|
|
|
|
|
|
даются матрицей C |
4 |
5 |
9 |
8 |
. |
|
9 |
2 |
3 |
6 |
|
|
|
Требуется составить план перевозок, при котором общая стоимость пере-
возок будет минимальной.
Решение: Так как суммарные запасы превышают суммарные потребности
(160 + 140 + 200 = 500 > 470 = 120 + 50 + 190 + 110), то вводим фиктивного по-
требителя b5, потребность которого составляет 500 – 470 = 30. Составим эко-
номико-математическую модель задачи:
xij − количество единиц груза, запланированных к перевозке от поставщика i к потребителю j, i = 1, 2, 3; j = 1, 2, 3, 4, 5.
S = 7x11 + 8x12 + x13 + 2x14 + 4x21 + 5x22 + 9x23 + 8x24 + 9x31 + 2x32 + 3x33 + 6x34 + 0x15 + 0x25 + 0x35 min
46
x11 |
x12 |
x13 |
x14 |
x15 |
160 |
|
|
|
|
|
|
|
|
x21 |
x22 x23 x24 x25 140 |
|||||
x |
x |
|
x |
x |
x |
200 |
31 |
|
32 |
33 |
34 |
35 |
|
x11 x21 x31 120 |
|
|||||
|
x22 |
x32 50 |
|
|
||
x12 |
|
|
||||
x |
x |
|
x |
190 |
|
|
13 |
|
23 |
33 |
|
|
|
x14 |
x24 |
x34 |
110 |
|
||
x |
x |
25 |
x |
30 |
|
|
15 |
|
35 |
|
|
|
|
x |
0, i 1,2,3; j 1,2,3,4,5 |
|||||
ij |
|
|
|
|
|
|
Рассмотрим технологию решения транспортной задачи, используя условия
примера.
1)выберем адреса ячеек, в которые будет помещен результат решения
(изменяемые ячейки) и оптимальное значение целевой функции;
Внашей задаче оптимальные значения хij будут помещены в ячейках В21:F23 (для удобства ссылок запишем в каждую из них 1), оптимальное зна-
чение целевой функции ‒ в ячейке G18.
2)введем зависимость для целевой функции;
Вячейки B16:F18 вводим тарифы. Далее необходимо произвести следую-
щие действия:
−поместить курсор в ячейку G18 (после решения задачи в данной ячейке будет находиться значение целевой функции);
−запустить Мастер функций (значок fх);
−в окне Категория выбрать Математические;
−в окне Функция выбрать СУММПРОИЗВ;
−нажать кнопку ОК;
−в окне СУММПРОИЗВ указать адреса массивов, элементы которых обрабатываются этой функцией. В задаче целевая функция представляет
собой произведение удельных затрат на доставку груза (расположенных в
47
блоке ячеек B16:F18) и объемов поставок для каждого потребителя (содержи-
мое ячеек В21:F23). Для этого надо:
−в поле Массив 1 указать адреса В21:F23;
−в поле Массив 2 указать адреса B16:F18;
−нажать кнопку ОК − подтверждение окончания ввода адресов массивов.
В поле ячейки G18 появится некоторое числовое значение, равное произ-
ведению единичных поставок на удельные коэффициенты затрат по доставке грузов (в данной задаче это число 64).
введем зависимости для ограничений;
−выделим курсором ячейки B21:F21;
−в главном меню выберем знак Σ;
−аналогичные действия выполним с ячейками B22:F22 и B23:F23. В ячей-
ках G21:G23 появятся пятерки;
− в ячейки H21:H23 поместим числа 160, 140, 200.
Таким образом мы описали первые три ограничения в математической мо-
дели. Аналогично поступаем с остальными ограничениями:
−выделим курсором ячейки B21:В23;
−в главном меню выберем знак Σ;
−аналогичные действия выполним с ячейками C21:C23, D21:D23, E21:E23, F21:F23. В ячейках B24:F23 появятся тройки;
−в ячейки B25:F25 поместим числа 120, 50, 190, 110.
48
Выберем команду меню Данные → Поиск решения. В отрывшемся окне выполним следующие действия:
а) назначим ячейку для целевой функции (G18), укажем адреса изменяе-
мых ячеек (В21:F23), установим флажок на минимум.
б) введем ограничения;
в) в строке Выберите метод решения выберем вариант «Поиск решения лин. задач симплекс-методом».
Теперь введены все необходимые условия для решения задачи:
Осталось поместить указатель мыши на кнопку Найти решение:
49
Ответ: от первого поставщика третьему предприятию следует перевезти
50 у.е. груза, четвертому предприятию – 110 у.е. груза;
от второго поставщика первому предприятию следует перевезти 120 у.е.
груза;
от третьего поставщика второму предприятию следует перевезти 50 у.е.
груза, третьему предприятию – 140 у.е. груза;
груз, предназначенный для пятого (фиктивного) потребителя остается у второго поставщика (20 у.е.) и третьего поставщика (10 у.е.).
Общая стоимость перевозок составит 1270 у.е.
Задача 5. Задача о назначениях
Задача о назначениях − это распределительная задача, в которой для выполне-
ния каждой работы требуется один и только один ресурс (один человек, одна автомашина и т.д.), и каждый ресурс может быть использован на одной и толь-
ко одной работе. То есть ресурсы неделимы между работами, а работы недели-
мы между ресурсами. Таким образом, задача о назначениях является частным случаем транспортной задачи. Задача о назначениях имеет место при распреде-
лении людей на должности или работы, автомашин на маршруты, водителей на машины, групп по аудиториям, научных тем по научно-исследовательским ла-
бораториям и т.п. Модель назначений можно построить в виде транспортной
50