Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Прикладная математика. Решение задач с применением табличного процессора Excel. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
НЭ=СЭ – (А*В)/РЭ, где НЭ – новый элемент, СЭ – элемент старого плана, РЭ – разрешающий элемент (4), А и В – элементы старого плана, образующие прямоугольник с элементами СЭ и РЭ. Расчет каждого элемента можно представить в виде таблицы:
Б X1 X2 X3 X4 X5 План X2 2/4 X4 4-(2*4)/4 0 0-(4*1)/4 1-(4*0)/4 0-(4*0)/4 680-(4*580)/4 X5 3-(2*2)/4 0 0-(2*1)/4 0-(2*0)/4 1-(2*0)/4 430-(2*580)/4
F -30-(-40*2)/4 0 0-(-40*1)/4 0-(-40*0)/4 0-(-40*0)/4 0-(-40*580)/4
4/4
1/4 0/4 0/4
580/4
Новая симплекс таблица примет вид:
Базис X1 X2 X3 X4 X5 План План/X1
X2 0,5 1 0,25 0 0 145 145/0,5=280 X4 2 0 -1 1 0 100 100/2=50 X5 2 0 -0,5 0 1 140 140/2=70
F
-10
0 10 0 0
5800
Полученный план не является оптимальным, т.к. в целевой строке присутствует отрицательный коэффициент (–10). Формируется новая сим­плекс-таблица, в которой базисной переменной должна стать X1. Разре­шающий элемент определяется по наименьшему отношению свободных членов (столбец План) к положительным коэффициентам разрешающего столбца X1. Минимальное отношение находится в строке X4 и равно 50. Таким образом, разрешающий элемент (РЭ) находится на пересечении столбца X1 и строки X4 и равен 2. Далее базисная переменная X4 заменя­ется переменной X1, во всех клетках столбца X1 записывается 0, кроме клетки на пересечении со строкой X4 (клетки с РЭ), где должна быть 1. Все элементы разрешающей строки разделим на РЭ (2). Все остальные элементы новой симплекс-таблицы, включая и строку с целевыми оценка­ми, определяются по правилу прямоугольника Расчет каждого элемента можно представить в виде таблицы:
Базис X1 X2 X3 X4 X5 План
X2 0 1-(0*0,5)/2 0,25-(-1*0,5)/2 0-(1*0,5)/2 0-(0*0,5)/2 145-(100*0,5)/2 X1 X5 0 0-(2*0)/2 -0,5-(-1*2)/2 0-(2*1)/2 1-(0*2)/2 140-(2*100)/2
F 0 0-(-10*0)/2 10-(-10*(-1))/2 0-(-10*1)/2 0-(-10*0)/2
2/2
0/2 -1/2 1/2 0/2
100/2
5800-(-10*100)/2
Новая симплекс-таблица примет вид:
Базис X1 X2 X3 X4 X5 План
X2 0 1 0,5 -0,25 0 120 X1 1 0 -0,5 0,5 0 50 X5 0 0 0,5 -1 1 40
F 0 0 5 5 0
51
6300
),,,,(x4000120
50
6300
F
max
),,,,(y0005
5

6300
min
G
Последняя симплекс-таблица дает нам оптимальное решение пря­мой задачи ЛП, т.к. в оценочной строке все коэффициенты больше или
равны нулю:
. При этом
. С учетом правил
составления двойственной задачи (1 – 8) из последней симплекс-таблицы определим также и оптимальное решение двойственной задачи ЛП:
. Таким образом, из решения задачи ЛП следует:
1) оптимальный план выпуска продукции: 50
2) первый и второй вид сырья использован полностью: 0
3) третий вид сырья использован лишь частично, остаток 40
4) оценки сырья: первого вида 5
вида 0
y . Оценка третьего вида сырья равна нулю, т.к. третий вид ока-
3
зался использованным лишь частично: 40
y , второго вида 5
1
x (остаток).
5
x , 120
1
x ;
2
x , 0
3
y , третьего
2
x ;
4
x ;
5
Оценки сырья – это количество прибыли, которую можно получить с единицы сырья.
Составим двойственную задачу. Для этого припишем единице каж­дого i-го вида сырья оценку ),i(y
i
31 . Эти оценки должны удовлетворять
следующим условиям:
1) Общая оценка количества всех видов сырья, используемых в про-
изводстве, должна быть минимальной:
yyyG
min430680580
321
.
2) Суммарная оценка всех видов сырья, расходуемого на выпуск единицы продукции любого вида, должна быть не ниже прибыли от реали­зации единицы продукции данного вида. В противном случае предприятие откажется от выпуска данного вида продукции. Оценка сырья – это коли­чество прибыли, которую можно получить с единицы сырья. Математиче­ски ограничения двойственной задачи можно записать в следующем виде:
,30342
.40244
3) Оценки 3,1,0 iy
yyy
321
 
i
.
yyy
321
Прямая и двойственная задачи тесно связаны между собой, поэтому из решения одной из них без особого труда можно определить решение другой. Решение двойственной задачи находится в индексной строке по­следней симплекс-таблицы в столбцах, соответствующих избыточным пе­ременным
,, xxx . Таким образом, решение двойственной задачи, кото-
543
рое определяет оптимальное значение двойственных оценок, равно:
5
y , 5
1
y , 0
2
y . Минимальная оценка количества всех видов сырья
3
.
52
2.6. Анализ задачи ЛП на чувствительность
X
BRX
R
0*
X




Какое воздействие могут оказать изменения коэффициентов целевой функции, правых частей ограничений задачи ЛП на ее решение, на реше­ние двойственной задачи, на оптимальное значение целевой функции?
Определим интервалы устойчивости двойственных оценок к измене­нию количества сырья.
Если
Здесь
*
– оптимальный план, то справедливо равенство:
*
1
– подматрица из последней симплекс-таблицы с оптималь-
1
ным решением (обратная матрица, квадратная), столбцы этой матрицы располагаются на местах столбцов единичной матрицы первоначального базиса, B – вектор-столбец правой части системы ограничений прямой за­дачи, определяющий количество видов сырья.
Номенклатура продукции сохранится, если венные оценки всех видов сырья, т.е. оптимальные значения
. Поэтому двойст-
y , будут ус-
i
тойчивы к изменению запасов ресурсов (не поменяют своих значений), ес­ли выполняется условие:
01
)BB(R .
С учетом полученных решений последнее условие примет вид:
 
 
,,
,
025050
,,
05050 1150
580
680
430
B
1
B
2
B
3
0
0
.
0
Получим вектор-столбец, каждая компонента которого должна быть строго больше нуля:
0430068025058050
)B()B(,)B(,
 
043006805058050
)B()B(,)B(,
 
04301680158050
(7)
321
  
321
)B()B()B(,
321
Рассмотрим устойчивость двойственной оценки первого вида сырья к изменению его количества, т.е. при условиях: 00
BB,B . С
321
учетом этих условий определяем компоненты вектора-столбца (7), каждая из которых должна быть больше нуля. В итоге получим интервал измене­ния количества первого вида сырья
ка 5
y не изменится, т.е. каждая единица первого вида сырья в указан-
1
B
. В пределах этого интервала оцен-
1
ных пределах будет давать «5» единиц прибыли:
10080
B .
1
При изменении количества только второго вида сырья 0
0
BB получим следующий интервал:
31
40100
B .
2
B ,
2
53
Аналогично, при изменении количества только третьего вида сырья


4402
4404
120
405040
120
405020
F
6800
5800
F
6300
max
F
00
BB,B получим интервал:
213
40 B
3
Как и следовало ожидать, произвольное увеличение третьего вида сырья не изменит его нулевой двойственной оценки. При одновременном изменении всех видов сырья
B
следует проверить условие (7): каждая
i
компонента вектора-столбца должна быть строго больше нуля.
Определим устойчивость оптимального плана на изменение стоимости продукции.
Изучим вопрос: В каких пределах могут меняться значения коэффи­циентов целевой функции
неизменным, для рассматриваемого примера 50
Допустим, значение
c и 2c так, чтобы оптимальный план оставался
1
x и 120
1
c изменяется, а значение constc
1
x ?
2
2
, т.е. фикси-
ровано. При этом вектор ),( личину. В каких пределах может меняться значение
чтобы оптимальный план 50 нение значения
c приведет к такому расположению линейной формы (це-
1
левой функции
x и 120
1
xcxcF
), когда линейная форма станет параллель-
2211
ccgradF также изменит направление и ве-
21
c ,
x оставался неизменным? Изме-
2
min
1
1
max
ccc ,
11
ной поочередно сначала одной из прямых, ограничивающих область до­пустимых решений в оптимальном плане, потом другой, т.е. значение
c
1
изменим таким образом, чтобы линейная форма поочередно стала парал­лельной двум прямым, на пересечении которых находится оптимальный план. Из условия параллельности прямых (пропорциональности коэффи­циентов) имеем:
40xxcF
Отсюда получим:
║ 58042
211
c
1
20
c .
1
xx .
22
Проверяем параллельность линейной формы ко второй прямой, обра­зующей оптимальное решение:
40xxcF
Отсюда получим:
║ 68044
211
c
1
40
c .
1
xx .
21
Таким образом, значение дании 30
x и 120
1
c . При этом значение целевой функции в оптимальной точке
1
50
x меняется в пределах:
2
c меняется в пределах: 4020
1
симальное значение целевой функции
Аналогичные результаты можно получить при изменении том constc
1
. В каких пределах может меняться значение
54
.
c , а в за-
1
, а в задании мак-
c с уче-
2
c ,
2
min
4
2
4
4
120
605030
120
305030
F
8700
5100
F
6300
max
F
6305
F
max



6305
F
max



2
изменным. Значение
max
ccc , чтобы оптимальный план 50
22
c изменим таким образом, чтобы линейная форма
2
x и 120
1
x оставался не-
2
поочередно стала параллельной двум прямым, на пересечении этих пря­мых находится оптимальный план. Из условия параллельности прямых, пропорциональности коэффициентов, имеем:
Отсюда получим:
30
30 xcxF
c
2
60
c .
║ 58042
221
2
xx .
22
Проверяем параллельность линейной формы ко второй прямой, обра­зующей оптимальное решение:
Отсюда получим:
30
30 xcxF
c
2
30
c .
2
221
║ 68044
xx .
21
Таким образом, значение дании 40
x и 120
1
c . При этом значение целевой функции в оптимальной точке
2
50
x меняется в пределах:
2
симальное значение целевой функции
c меняется в пределах: 6030
2
, а в задании мак-
.
c , а в за-
2
Рассмотрим оптимальное решение прямой задачи ЛП из последней симплекс-таблицы, где обратная матрица выделена жирным цветом:
Базис X1 X2 X3 X4 X5 План
X2 0 1 X1 1 0 X5 0 0
0,5 -0,25 0
-0,5 0,5 0 0,5 -1 1
120
50 40
F 0 0 5 5 0 6300
Можно отметить следующее:
1) увеличение первого вида сырья на единицу )B( 1
увеличению прибыли на «5» единиц )y( 5 тимальное значение тимальное значение
x уменьшится на «– 0,5», т.е. 5495050
1
x увеличится на «+ 0,5», т.е. 512050120
2
1
1
, при этом
1
2
приводит к
; оп-
,,x
; оп-
,,x
; не-
использованные запасы третьего вида сырья увеличатся на «+ 0,5», т.е.
5405040
,,x
5
2) увеличение второго вида сырья на единицу )B( 1
увеличению прибыли на «5» единиц )y( 5 тимальное значение тимальное значение
2
кратятся на «– 1», т.е. 39140
;
2
2
x увеличится на «+ 0,5», т.е. 5505050
1
x уменьшится на «–0,25», т.е. значение
2
75119250120
,,x
; неиспользованные запасы третьего вида сырья со-
x ;
5
, при этом
1
приводит к
,,x
; оп­; оп-
55
3) увеличение третьего вида сырья на единицу )B( 1

3
приведет
лишь, как следует из симплекс-таблицы, к увеличению неиспользованных его запасов на «+1», т.е. 41140
x .
5
Таким образом, проведенный анализ чувствительности задачи ЛП
позволяет управлять процессом выпуска продукции.
2.7. Решение задачи ЛП с помощью табличного процессора Excel
Рассмотрим решение задачи ЛП с помощью модуля «Поиск реше­ния» в Excel, предназначенного для решения задач оптимизации. Алгоритм решения прямой и двойственной задач представим в виде электронной таблицы.
Запустим программу Excel и для рассматриваемой задачи составим электронную таблицу (рис.1). В ячейках B3 и C3 запишем входные значе­ния плана
x и 2x . В результате решения задачи в этих ячейках мы полу-
1
чим оптимальные значения плана. В ячейках B5 и C5 запишем значения коэффициентов целевой функции. В ячейке A7 разместим значение целе­вой функции в виде «=суммпроизв( B3:C3; B5:C5) ».
Рис.1 Левую часть системы ограничений по сырьевым ресурсам запишем в ячей­ки C10 – C12 в виде: в ячейку C10 «=суммпроизв( B3:C3; A10:B10) », C11 «=суммпроизв( B3:C3; A11:B11) », C12 «=суммпроизв(B3:C3; A12:B12) ».
b
Запасы ресурсов: 580, 680, 430 – значения
b
,
,
1
b , запишем в ячейки
2
3
E10:E12. В надстройках Excel найдем Поиск решения и запустим его. В появившемся диалоговом окне (рис.2) внесем необходимые данные:
56
Рис.2 адрес ячейки целевой функции $A$7; направление оптимизации – макси- мум; адреса изменяемых ячеек $B$3:$C$3.
Ограничения вводятся в окне Добавление ограничения (рис.3) ко-
торое активизируется кнопкой Добавить окна Поиск решения.
Рис.3
Левая часть системы ограничений по сырьевым ресурсам не превы­шает правой части, т.е. затраты ресурсов на производство не превышают запасов. В окне Добавление ограничения эти условия представляются в виде «$C$10:$C$12<=$E$10:$E$12», как указано на рис.3.
Следует добавить условие, что план должен быть неотрицательным
«$B$3:$C$3>=0».
В окне Параметры поиска решения (рис.4), вызванном командой
Рис.4. Параметры окна Поиск решения (рис.2), установим флажки: Автома- тическое масштабирование, сопряженных градиентов (выбранный чис­ленный метод решения задачи). Следует установить флажок Линейная модель. Далее, щелкнув левой кнопкой мыши по ОК, возвратимся в окно
57
Поиск решения. В этом окне, щелкнув левой кнопкой мыши по команде
6300
max
f
Выполнить, получим оптимальное решение задачи (рис.5).
Рис.5.
Оптимальное решение задачи (рис.5) располагается в изменяемых
ячейках B3 и C3, в ячейке B3 находится значение 50 находится значение 120 располагается в ячейке A7:
x . Максимальное значение целевой функции
2
. Нетрудно убедиться, что все ог-
x , а в ячейке C3
1
раничения задачи выполняются.
Далее рассмотрим решение двойственной задачи (рис.6).
Рис.6
В электронную таблицу, составленную для решения прямой задачи (рис.1), добавим алгоритм решения двойственной. В ячейках B16 – D16 за­пишем входные значения оценок сырья
y , 2y , 3y . В результате решения
1
двойственной задачи в этих ячейках мы получим оптимальные значения
b
оценок. В ячейках B18 – D18 запишем 580, 680, 430 – значения
b
,
,
1
b ,
2
3
которые являются коэффициентами целевой функции двойственной зада­чи. В ячейке A20 разместим значение целевой функции двойственной за­дачи в виде «=суммпроизв( B16:D16; B18:D18) ». Левую часть системы ограничений двойственной задачи, которая определяет суммарную оценку всех видов сырья для производства единицы продукции каждого вида, за­пишем в ячейки D22 – D23 в виде: в ячейку D22 «=суммпроизв ( B16:D16; A22:C22) », в ячейку D23 «=суммпроизв(B16:D16; A23:C23) ». В ячейки
58
F22:F23 вводятся 30, 40 – значения
.
min
max
G
F
c и 2c , которые являются правой ча-
1
стью системы ограничений двойственной задачи.
Для получения оптимального решения двойственной задачи запус­тим надстройку Поиск решения. В появившемся диалоговом окне внесем необходимые данные аналогично, как при решении прямой задачи: адрес ячейки целевой функции – $A$20; направление оптимизации – минимум; адреса изменяемых ячеек – $B$16:$D$16. В окне Добавление ограниче-
ния введем ограничения двойственной задачи в виде «$D$22:$D$23>=$F$22:$F$23». Следует также добавить условие, что
оценки
y должны быть неотрицательными «$B$16: $D$16>=0». В ре-
i
зультате выполнения процедуры Поиск решения получим оптимальное решение двойственной задачи (рис.7).
Отметим ряд важных свойств между решениями прямой задачи и двойственной, которые приведены на рис.5 и 7.
1) Максимальная прибыль в прямой задаче равна 6300 ед. (на рис.5 ячейка A7). Минимальная суммарная оценка всех ресурсов в двойственной задаче также равна 6300 ед. (на рис.7 ячейка A20). Таким образом, экстре­мальные значения целевых функций прямой и двойственной задач равны:
Рис.7
2) Положительную оценку имеют лишь те виды сырья, которые пол­ностью используются в оптимальном плане. Оценки первого и второго ви­да сырья положительны: 5
y и 5
1
y (на рис.7 ячейки B16 и C16). В
2
прямой задаче первый и второй вид сырья полностью израсходованы (на рис.5 значения в ячейках C10=E10 и C11=E11). Оценка третьего вида сы­рья равна нулю: 0
y (на рис.7 ячейка D16). В прямой задаче третий вид
3
сырья полностью не израсходован (на рис.5 значение ячейки C12 < E12). Третий вид сырья остался в излишках на 40 ед. Можно отметить и другие взаимосвязи между прямой задачей и двойственной.
На рис.8 приводятся результаты вычисления интервалов устойчиво­сти двойственных оценок на изменение количества сырья и устойчивости оптимального плана на изменение стоимости продукции с помощью про­цедуры Поиск решения.
59





Рис.8
По результатам устойчивости на рис.8, полученным с помощью над-
стройки Excel, можно отметить:
1) оптимальное решение прямой задачи ЛП 50
x и 120
1
x не по-
2
меняется при изменении коэффициентов целевой функции в пределах:
c и 20401040
1
10301030
c ;
2
2) оптимальное решение двойственной задачи ЛП (теневая цена)
5
y , 5
1
лах: 10058080580
y , 03y не поменяется при изменении запасов сырья в преде-
2
B , 40680100680
1
43040430
B .
3
B ,
2
2.8. Транспортная задача
Транспортная задача является частным случаем общей задачи линей­ного программирования. Она широко используется при определении ра­циональных перевозок грузов и пассажиров, для оптимального закрепле­ния потребителей за поставщиками, в производственном планировании и при решении других задач.
Каждой задаче линейного программирования можно поставить в со­ответствие задачу, двойственную по отношению к ней. При этом указан­ные задачи будут образовывать пару взаимно двойственных задач. Решая одну из них, мы получаем решение и второй задачи. Теория двойственно­сти расширяет область применения линейного программирования.
Сформулируем транспортную задачу следующим образом:
Пусть имеется mпоставщиков грузов и nпотребителей. Запасы груза у поставщиков равны:
равны: njb
j
,1, . Известны также затраты на перевозку единицы груза от
i
каждого поставщика к каждому потребителю
. Объемы заявок грузов у потребителей
m,i,a
1
c . Требуется составить та-
ij
кой план перевозок грузов от поставщиков к потребителям, чтобы сум­марные транспортные затраты были минимальными.
Математическая модель задачи имеет вид:
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]