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

Методы линейного программирования. Практикум

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
21
угольника решений, а именно в ее крайней вершине — точке В. Подставим ко­ординаты точки В в саму целевую функцию и тем самым получим ее искомое оптимальное значение.
Следовательно, целевая функция f будет принимать оптимальное значе­ние в том случае, когда в нее вместо х1 и х2 подставим координаты точки В. Для того чтобы найти координаты точки В, необходимо решить систему уравнений, так как точка В — это точка пересечения прямых — границ области допусти­мых решений:
12
3 9 0x х
,
12
2 8 0x х
.
Решение системы уравнений позволит найти координаты точки В:
12
12
3 9 0,
2 8 0.
x х
x х
 
Имеем:
12
2, 3x х
.
Следовательно, наименьшее значение целевой функции принимает вид:
260360240
.
Таким образом, дневной рацион составляет: х1 = 2 (кг) — количество корма I, x2 = 3 (кг) — количество корма II, при минимальной стоимости в 260 руб. и выполнении потребления необходимого минимума витаминов.
Рассмотрим еще одну задачу, явно отличающуюся от типовой задачи ли­нейного программирования.
Задача 6. Предприятие выполняет три технологических процесса для вы­деления из руды двух видов элементов. Из каждой тонны руды при применении процессов I, II и III получается соответственной 0,4, 0,6 и 0,2 кг первого вида элемента, 0,6, 0,5 и 0,2 кг второго вида элемента. Затраты на выделение руды составляют: 5 тыс. руб. при применении техпроцесса I, 6 тыс. руб. при приме-
22
нении техпроцесса II, 1 тыс. руб. при применении техпроцесса III. Необходимо
определить оптимальное распределение 10 т руды по технологическим процес-
сам (затраты на их применение должны быть минимальны), если требуется по­лучить каждого элемента не менее 4 кг.
Решение. В данной задаче имеются три переменные, поэтому графиче­ский метод в явном виде для ее решения не применим. Между тем эта задача
может быть сведена к задаче с двумя переменными с помощью введения до-
полнительных переменных, и тогда она уже может считаться задачей линейно-
го программирования с ограничениями в виде уравнений и количеством пере-
менных, превышающем количество уравнений на 2.
Поэтому введем переменные х1, х2, х3 (т) — количество тонн руды, рас­пределенных соответственно на обработку по техпроцессам I, II , III. Тогда рас­пределение 10 т руды по технологическим процессам можно записать как
10
321
xxx
.
Из каждой тонны руды при применении каждого техпроцесса получаем
321
2,06,04,0 xxx
кг вещества А,
321
2,06,04,0 xxx
кг вещества B. Запишем
условия выделения из руды минимального количества веществ, 4 кг:
42,06,04,0
321
xxx
для вещества А,
42,05,06,0
321
xxx
для вещества В.
Получим систему, содержащую уравнение и неравенства (кроме того, пе­ременные х
1
, х2, х3, выражающие количество тонн руды, выделенное на перера-
ботку посредством каждого технологического процесса, должны быть неотри-
цательны):
23
 
 
.42,05,06,0
,42,06,04,0
,10
321
321
321
xxx
xxx
xxx
Общие затраты на выделение руды по трем техпроцессам составят
321
65 xxx
(тыс. руб.).
Следовательно, модель задачи линейного программирования с рядом ограничений имеет вид:
 
 
.0,,
,42,05,06,0
,42,06,04,0
,10
321
321
321
321
xxx
xxx
xxx
xxx
где целевая функция
321
65 xxxf
принимает наименьшее значение.
Построить непосредственно множество решений системы с тремя пере-
менными не представляется возможным.
Приведем данную задачу линейного программирования к каноническому
виду (напомним, задача линейного программирования называется канониче- ской, если ее система ограничений содержит только уравнения, при условии,
что переменные принимают неотрицательные значения). Для этого введем две добавочные неотрицательные переменные х
4
и х5:
0,0
54
xx
.
Вычтем из левой части каждого неравенства по одной добавочной неот-
рицательной переменной величине, и тогда неравенства можно записать как ра-
венства (
0
i
x
, i = 1, 2, 3, 4, 5):
24
 
 
.42,05,06,0
,42,06,04,0
,10
5321
4321
321
xxxx
xxxx
xxx
Получили систему трех равенств с пятью переменными, в которой первые три переменные будут главными, а четвертая и пятая переменные — свобод­ными. Далее выясним, какие переменные будут главными, а какие — свобод-
ными, для этого посчитаем всевозможные определители при соответствующих
переменных.
В силу того, что определитель, составленный из коэффициентов, стоящих
при переменных х3, х4, х
5
, не равен нулю, можем переменные х
3
, х4, х5 принять
за главные:
01
102,0
012,0
001
.
Теперь выразим главные переменные через свободные переменные, т.е. неосновные, выполнив следующие преобразования:
 
 
.42,05,06,0
,42,06,04,0
,10
3215
3214
213
xxxx
xxxx
xxx
 
 
.4)10(2,05,06,0
,4)10(2,06,04,0
,10
21215
21214
213
xxxxx
xxxxx
xxx
 
 
.23,04,0
,24,02,0
,10
215
214
213
xxx
xxx
xxx
25
В данном случае имеются ограничения на все переменные, а именно:
1 2 3 4 5
0, 0, 0, 0, 0x x x x x
, тогда с учетом всех ограничений получа-
ем следующий вид:
 
 
.0,
,023,04,0
,024,02,0
,010
21
21
21
21
xx
xx
xx
xx
где целевая функция
212121
54101065 xxxxxxf
принимает наименьшее значение.
Применим графический метод решения. Для этого построим многоуголь­ник решений системы ограничений — четырехугольник АВСD (рис. 7). Каждая точка, принадлежащая области допустимых значений, определяет оптимальный план распределения руды по техпроцессам при выполнении условия получения необходимого минимального значения каждого вида элемента. Требуется найти
такую точку (х1; х2), в которой целевая функция
1 2 1 2
( , ) 10 4 5f x x x x
будет
принимать оптимальное значение. Для этого необходимо построить линии уровня, поэтому приравняем f числовому параметру с:
cxx
21
5410
.
Построим линию уровня при с = 10 — прямую
054
21
xx
, проходящую
через точки (0; 0) и (5; −4). Определим вектор нормали (4; 5).
Далее будем сдвигать линии уровня параллельным переносом в сторону
возрастания целевой функции, перпендикулярно к вектору нормали. Здесь ис­комая точка — это точка пересечения прямых (А) — точка «входа» в много­угольник решений в силу того, что значения целевой функции только увеличи­ваются при сдвиге линии уровня в данном направлении (рис. 7).
26
В том случае, когда линия уровня
cxx
21
5410
будет проходить через точку пересечения следующих прямых (точка А):
024,02,0
21
xx
,
023,04,0
21
xx
,
целевая функция f примет наименьшее значение.
Решим систему уравнений и тем самым найдем координаты точки А:
.023,04,0
,024,02,0
21
21
xx
xx
1
x
5
А
В
С
024,02,0
21
xx
023,04,0
21
xx
10
10
с = 10
3
2
6
010
21
xx
D
5
с = 38
2
x
Рис. 7
27
Получим:
4,2
21
xx
. Требуется найти наименьшее значение целевой
функции:
38452410
.
Следовательно, оптимальное распределение составляет: х
1
= 2 (т) — ко-
личество руды, обрабатываемое по техпроцессу I, х2 = 4 (т) — количество руды, обрабатываемое по техпроцессу II, х3 = 10 – 2 – 4 = 4 (т) — количество руды, обрабатываемое по техпроцессу III, при минимальных затратах в 38 тыс. руб. и получения необходимого минимума веществ М и К.
28
§ 3. МЕТОДЫ РЕШЕНИЯ ТРАНСПОРТНОЙ ЗАДАЧИ
Сформулируем в общем виде следующую транспортную задачу.
Определенный груз находится на различных складах (С1, С2, и т.д. — это пункты отправления, или поставщики), этот груз необходимо развести по не­скольким магазинам (М1, М2, и т.д. — это пункты назначения, или потребите­ли). Стоимость перевозки единицы груза со склада С
i
в магазин Мj составляет
k
ij
руб. Требуется найти оптимальный вариант перевозок всего груза со скла­дов, чтобы удовлетворить потребности всех магазинов, при котором затра­ты будут наименьшими.
Для определенности предположим, что есть три склада и пять магазинов.
В таблице перевозок указаны мощности поставщиков а1, а2, а3 и потребителей
b1, b2, b3, b4, b5:
Исходные данные
Поставщики
Всего на
складе
Потребители
М
1
М
2
М
3
М
4
М
5
С1 а1 k
11 k12
k13
k14
k15
С2
а2
k21
k22
k23
k24
k25
С3
а3
k31
k32
k33
k34
k35
Потребности магазинов
b1
b2
b3
b4
b5
Введем переменные хij — это оптимальный объем перевозки от i-го по-
ставщика к j-му потребителю. Например, х
24
— искомый объем перевозки со
второго склада в четвертый магазин. Заданные мощности складов и потребно­сти магазинов накладывают ограничения на значения переменных х
ij
. Общее
количество груза, вывозимого со склада С1, будет составлять x11 + x12 + x13 + x14 +
+ x
15
, со склада С
2
— x21 + x22 + x23 + x24 + x
25
, со склада С
3
— x31 + x32 + x33 + x34 +
+ x35. Общее количество груза, привозимого в магазин М1, должно равняться
x11 + x21 + x31, в магазин М2 —
322212
xxx
, в магазин М
3
—
332313
xxx
,
в магазин М4 —
342414
xxx
и в магазин М5 —
352515
xxx
.
Составим систему уравнений баланса, позволяющую реализовать необхо-
димую мощность каждого из поставщиков и спрос, удовлетворяющий каждого из потребителей, с учетом следующих ограничений:
29
.
,
,
,
,
,
,
,
5352515
4342414
3332313
2322212
1312111
33534333231
22524232221
11514131211
bxxx
bxxx
bxxx
bxxx
bxxx
axxxxx
axxxxx
axxxxx
(1)
Дополнительные ограничения на условия следуют из того, что объем пе-
ревозимого груза не может быть отрицательным, поэтому следует предполо-
жить, что
0
ij
x
(i = 1, 2, 3; j = 1, 2, 3, 4, 5).
Заметим, что суммарные затраты f на перевозку выражаются через коэф-
фициенты затрат k
ij
и поставки xij следующим образом:
212115151414131312121111
xkxkxkxkxkxkf
k22x22 + k23x
23
+
k24x
24
353534343333323231312525
xkxkxkxkxkxk
. (2)
Требуется выбрать все перевозки таким образом, чтобы общая стоимость
доставки груза была наименьшей.
Переформулируем условие транспортной задачи: на множестве неотри-
цательных решений системы ограничений (1) найти такое решение (
353433323125242322211514131211
,,,,,,,,,,,,,, xxxxxxxxxxxxxxx
), при котором линей-
ная функция (2) принимает минимальное значение.
В случае выполнения равенства: а1 + а2 + а3 = b1 + b2 + b3 + b4 + b5, можем
называть такой вид транспортных задач закрытым, в ином случае — открытым.
Отметим, что в открытой задаче равенство заменено на неравенство. Если
знак неравенства «меньше», т.е. а1 + а2 + а3 < b1 + b2 + b3 + b4 + b
5
, тогда весь
груз будет вывезен, но при этом для экономически невыгодных потребителей
30
будут недопоставки груза. Если знак неравенства «больше», т.е. а1 + а2 + а
3
>
> b1 + b2 + b3 + b4 + b5, тогда, наоборот, будут удовлетворены все потребители,
но при этом часть груза у экономически невыгодных поставщиков останется на складах. Открытая транспортная задача может быть решена только в результате сведения ее к закрытой.
Далее рассмотрим закрытые транспортные задачи, их методы решения.
Задача 7. Имеются два склада С1 и С2, причем на складе С1 есть 100 кг некоторого товара, а на складе С2 — 200 кг. Весь этот товар должен быть до­ставлен в четыре магазина с их соответственными потребностями: 50, 100, 75 и 75 кг этого товара. Стоимость перевозки 1 кг товара (руб./км) со складов к магазинам дана в таблице:
Исходные данные
Склад
Магазины
Стоимость
перевозки 1 кг
товара (руб./км)
М
1
М
2
М
3
М
4
С1 4 3 5 6 100
С2 8 2 4 7 200
Потребности магазинов (кг)
50
100
75
75
Требуется составить оптимальный план перевозок, удовлетворяющий по­требности в товаре всех магазинов и учитывающий наименьшие затраты средств на перевозку.
Решение. Обозначим через переменные хij, — объем перевозки от i-го ме- сторождения к j-му потребителю, например, х13 — искомый объем перевозки со склада С1 в магазин М
3
. Заданные объемы поставщиков и спросы перерабаты-
вающих заводов, в свою очередь, накладывают ограничения на значения вве­денных переменных хij. Уравнение баланса по первой строке имеет следую­щий вид:
100
14131211
xxxx
,
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]