1. Общая задача линейного программирования

advertisement
Российский государственный гуманитарный университет (филиал г. Киров)
ЭКОНОМИКО-МАТЕМАТИЧЕСКИЕ МОДЕЛИ
Методические указания и задания к типовой работе
УТЁМОВ ВЯЧЕСЛАВ ВИКТОРОВИЧ
1
Российский государственный гуманитарный университет (филиал г. Киров)
Введение
КОНТРОЛЬНАЯ РАБОТА СОСТОИТ ИЗ 3 ЗАДАЧ ПРИВЕДЕННЫХ В КОНЦЕ
МЕТОДИЧЕСКИХ УКАЗАНИЙ. ВАРИАНТ ВЫБИРАЕТСЯ В СООТВЕТСТВИИ С
ДВУМЯ ПОСЛЕДНИМИ ЦИФРАМИ НОМЕРА ЗАЧЕТНОЙ КНИЖКИ.
Линейные модели являются одним из наиболее активно используемых классов математических моделей. Они сравнительно просты, хорошо разработаны, допускают полное исследование и достаточно эффективны в целом ряде стандартных ситуаций.
Линейное программирование – это математический метод решения задачи оптимального распределения имеющихся ресурсов (денег, материалов, времени) для достижения определённой цели (наибольшего дохода или наименьших издержек). Программирование в данном термине имеет смысл планирования. Линейное означает, что ищется экстремум линейной
целевой функции при линейных ограничениях (линейных уравнениях или линейных неравенствах).
Общие ситуации, в которых линейное программирование применяется часто и эффективно:
задачи о составлении смеси, цель которых заключается в выборе наиболее экономичной смеси ингредиентов (руды, нефти, пищевых продуктов и др.) при учёте ограничений на
физический или химический состав смеси и на наличие необходимых материалов;
задачи производства, целью которых является подбор наиболее выгодной производственной программы выпуска одного или нескольких видов продукции при использовании
некоторого числа ограниченных источников сырья;
задачи распределения, цель которых состоит в том, чтобы организовать доставку материалов от некоторого числа источников к некоторому числу потребителей так, чтобы оказались минимальными либо расходы по этой доставке, либо время затрачиваемое на неё, либо
некоторая комбинация того и другого. В простейшем виде это задача о перевозках (транспортная задача).
Наиболее распространённым методом решения задачи линейного программирования
является симплекс-метод. В простейшем случае, когда число переменных равно двум, удобен простой и наглядный графический метод.
2
Российский государственный гуманитарный университет (филиал г. Киров)
1. Общая задача линейного программирования
Задача линейного программирования состоит в составлении плана максимизирующего
или минимизирующего некую линейную функцию при ограничениях в виде линейных уравнений или линейных неравенств:
найти вектор X  ( x1 , x2 ,..., xn ) , максимизирующий (минимизирующий) функцию
n
f (X )  c j x j ,
(1)
j 1
и удовлетворяющий условиям
n
a
j 1
ij
x j  bi ,
(2)
x j  0, j  1, n
Линейная функция f (X ) называется целевой функцией задачи. Условия (2) называются
ограничениями задачи.
Любое решение системы ограничений ЗЛП называется допустимым планом.
Допустимый план, максимизирующий или минимизирующий целевую функцию называется оптимальным.
План, у которого отличным от нуля компонентам соответствует система линейно независимых векторов, называется опорным планом.
Теорема. Множество планов задачи линейного программирования является выпуклым
множеством.
Теорема. Оптимальный план задачи линейного программирования находится в крайней точке выпуклого множества планов. Если оптимальный план находится в двух крайних
точках выпуклого множества планов, то он находится также и в любой точке, являющейся
выпуклой комбинацией этих крайних точек.
Формы ЗЛП
Форма задачи линейного программирования, у которой ограничения заданы в виде неравенств, называется стандартной, а форма задачи, у которой ограничения заданы в виде
уравнений – канонической. Если же система ограничений содержит и уравнения и неравенства, то такая форма называется смешанной.
Стандартная
n
f ( X )   c j x j  max
j 1
n
a
j 1
ij
x j  bi ,
x j  0.
Каноническая
n
f ( X )   c j x j  max
j 1
n
a
j 1
ij
Смешанная
n
f ( X )   c j x j  max
j 1
n
a
x j  bi ,
x j  0.
j 1
n
a
j 1
ij
ij
x j  bi (i  1,k ) ,
x j  bi (i  k  1, m) ,
x j  0.
3
Российский государственный гуманитарный университет (филиал г. Киров)
2. Графический метод решения задачи линейного программирования
Если задача содержит только две переменные, а система ограничений задана в виде неравенств, то её можно решить графическим методом.
Графический метод решения ЗЛП состоит из следующих этапов.
1. Строится область допустимых решений (ОДР) ЗЛП.
2. Строится вектор-градиент целевой функции (вектор, координатами которого являются частные производные функции) с приложением в начале координат –   (C1 , C2 ) .
3. Линия уровня C1x1+C2x2 = а (а – постоянная величина) - прямая, перпендикулярная
вектору–градиенту  – передвигается в направлении этого вектора в случае максимизации
f(x1,x2) до тех пор, пока не покинет пределов ОДР. Предельная точка (или точки) области при
этом движении и является точкой максимума f(x1,x2).
4. Для нахождения ее координат достаточно решить систему из двух уравнений прямых, получаемых из соответствующих ограничений и дающих в пересечении точку максимума. Значение f(x1,x2), найденное в полученной точке, является максимальным.
При минимизации f(x1,x2) линия уровня перемещается в направлении, противоположном вектору-градиенту. Если прямая при своем движении не покидает ОДР, то целевая
функция f(x1,x2) не ограничена на максимум (в задаче максимизации) или минимум (в задаче
минимизации).
Если линия уровня параллельна какой-либо прямой из ограничений задачи, то оптимальное значение целевой функции будет достигаться в любой точке этой прямой.
Пример. Найти максимальное значение функции f=2x1 + 3x2 при условиях
 x1  3 x 2  18,
2 x1  x 2  16,
 x  5,
2

x
,
 1 x 2  0.
Построим область допустимых значений:
1) первое ограничение x+3x18; прямая x+3x=18 пересекает оси координат в
точках 06180; неравенству соответствует полуплоскость, содержащая данную прямую
и лежащая ниже неё (контрольная точка 000+3*0<18 принадлежит полуплоскости);
2) второе ограничение 2x+x16: прямая 2x+x=16 пересекает оси координат в
точках 01680; неравенству соответствует полуплоскость, содержащая данную прямую
и лежащая ниже неё (контрольная точка 002*0+ 0<16 принадлежит полуплоскости);
3) неравенству x5 соответствует полуплоскость, содержащая прямую x=5 и лежащая ниже неё.
4) x10правее ОX;
5) x20выше ОX1.
Вектор-градиент имеет координаты   (2;3) .
Построим линии уровня 2x+ 3x = а. При а =0 получим прямую 2x+3x =0, проходящую через начало координат, перпендикулярно вектору-градиенту. Так как задача на максимум, то передвигаем линию уровня в направлении градиента. Предельной точкой (последней из области допустимых решений, с которой соприкасается линия уровня) является точка
С. Значит, в ней достигается максимум функции f (рис. 1).
Найдём её координаты. Для этого решим систему, составленную из уравнений прямых
пересекающихся в точке С (I и II):
 x1  3 x 2  18,  x1  6,
2 x  x  16;  x  4;
2
 1
 2
Таким образом, получим x6, x24, fmax 2*6+3*4=24.
4
Российский государственный гуманитарный университет (филиал г. Киров)
Рис. 1.
3. Нахождение решения задачи линейного программирования
Для решения ЗЛП существует универсальный метод – метод последовательного улучшения плана или симплекс-метод, который состоит из двух вычислительных процедур: симплекс-метода с естественным базисом и симплекс-метода с искусственным базисом (Мметод).
Выбор конкретной вычислительной процедуры осуществляется после приведения исходной ЗЛП к каноническому виду.
Для применения симплекс-метода с естественным базисом ЗЛП должна содержать единичную подматрицу размером mxm – в этом случае очевиден начальный опорный план.
Исследование опорного плана на оптимальность, а также дальнейший вычислительный
процесс удобнее вести, если условия задачи и первоначальные данные записать в таблицу:
Базис
Сб
Р0
Р1
Р2
...
Рm
с1
с2
...
сm
b1
b2
...
bm
F0
с1
Р1
1
0
...
0
0
с2
Р2
0
1
...
0
0
...
...
...
...
...
сm
Рm
0
0
...
1
0
cm+1
Рm+1
a1m+1
a2m+1
...
amm+1
Δm+1
...
...
...
...
...
...
cn
Рn
a1n
a2n
amn
Δn
В первом столбце таблицы "Базис" записывают базисные векторы данного опорного
плана. Во втором столбце - коэффициенты целевой функции (с1, с2,…, сm) при базисных переменных (напомним, что в базис входят только векторы, образующую единичную подматрицу). В третьем столбце Р0 - правая часть ограничений задачи (базисные компоненты плана). Таким образом, перемножая элементы второго столбца таблицы со столбцом Р0, и суммируя эти произведения, мы получаем значение целевой функции (F0=с1*b1 + с2*b2+…+
сm*bm).
Первая строка симплексной таблицы содержит коэффициенты целевой функции нашей
задачи и остается неизменной на протяжении всего решения (с1, с2,…, сm).
В центральной части таблицы записывают коэффициенты при неизвестных в ограничениях исходной задачи. При этом следует заметить, что коэффициенты при базисных пере5
Российский государственный гуманитарный университет (филиал г. Киров)
менных в ограничениях задачи составляют единичную подматрицу. Последнюю оценочную
m
строку рассчитывают по формуле  j   ci aij  c j .
i 1
После заполнения таблицы исходный опорный план проверяют на оптимальность. Для
этого просматривают элементы последней (оценочной) строки. Возможны три варианта:
1. Все оценки  j  0 , значит на основании признака оптимальности получен оптимальный план.
2.  j  0 для некоторого j, и все соответствующие этому индексу величины aij  0 ,
значит целевая функция не ограничена сверху на множестве планов.
3.  j  0 для некоторых индексов j, и для каждого такого j по крайней мере одно из
чисел a ij  0 , значит можно перейти к новому опорному плану, при котором значение целевой функции увеличится.
Переход от одного опорного плана к другому осуществляется исключением из исходного базиса какого-нибудь из векторов и введением в него нового вектора. В качестве вводимого в базис вектора берётся один из векторов, для которых  j  0 . Пусть это будет вектор Рk.
Для определения вектора, подлежащего исключению из базиса находят
  min( bi / aik ), aik  0, i  1,2,, m . Тогда выполняется условие неотрицательности значений
опорного плана. Пусть этот минимум достигается при i=r. Тогда из базиса исключают вектор
Рr, а число a rk называют разрешающим элементом.
Элементы новой симплекс-таблицы получают методом Жордана-Гаусса по формулам:
a1rj  arj / ark , j  1,2,n для i = r;
aij1  aij  (arj / ark )aik ) при i  r .
Значения нового опорного плана рассчитываются по формулам:
br1  br / a rk для i = r;
bi1  bi  (br / a rk )aik при i  r .
Процесс решения продолжают либо до получения оптимального плана, либо до установления неограниченности целевой функции. Если среди оценок оптимального плана нулевые только оценки, соответствующие базисным векторам, то это говорит о единственности
оптимального плана. Если же нулевая оценка соответствует вектору, не входящему в базис,
то в общем случае это означает, что оптимальный план не единственный.
Если единичной подматрицы не обнаруживается, то либо придется перебирать все подсистемы m уравнений с m неизвестными в надежде обнаружить неотрицательные решения,
либо прибегнуть к методу искусственного базиса.
Метод искусственного базиса заключается в том, что для получения единичной подматрицы коэффициентов мы вводим в исходную задачу неотрицательные так называемые
искусственные переменные и включаем их в целевую функцию с коэффициентом +М для
задачи минимизации и с коэффициентом -М для задачи максимизации, где М>0 - сколь
угодно большое число. Полученная задача называется расширенной по отношению к исходной. Искусственные переменные образуют начальное базисное решение. Применив симплекс-метод, необходимо вывести из базиса все искусственные переменные. Если удается
доказать (или показать), что искусственные переменные полностью вывести из базиса невозможно, то это означает, что задача не имеет решения, то есть ее ограничения противоречивы.
Если на текущей итерации из базиса выводится искусственная переменная, то в следующей симплекс-таблице соответствующий ей столбец можно удалить, в дальнейших итерациях он не будет участвовать.
6
Российский государственный гуманитарный университет (филиал г. Киров)
4. Двойственность в задачах линейного программирования
С каждой задачей линейного программирования тесно связана другая линейная задача,
называемая двойственной; первоначальная задача называется исходной или прямой.
Исходная задача
Двойственная задача
m
n
g ( y1 , y 2 ,..., y m )   bi y i  min
f ( x1 , x2 ,..., xn )   c j x j  max
i 1
j 1
m
n
a
j 1
ij
a
x j  bi , i  1, m,
x j  0,
i 1
ij
yi  c j ,
j  1, n,
y i  0, i  1, m.
j  1, n.
Две приведенные задачи образуют двойственную пару.
Двойственная задача по отношению к исходной составляется согласно следующим
правилам:
1) целевая функция исходной задачи формулируется на максимум, а целевая функция
двойственной задачи — на минимум, при этом в задаче на максимум все неравенства в
функциональных ограничениях имеют вид "", в задаче на минимум — вид "";
2) матрица А, составленная из коэффициентов при неизвестных в системе ограничений
исходной задачи и аналогичная матрица Ат в двойственной задаче получаются друг из друга
транспонированием;
3) число переменных в двойственной задаче равно числу функциональных ограничений
исходной задачи, а число ограничений в системе двойственной задачи — числу переменных
в исходной задаче;
4) коэффициентами при неизвестных в целевой функции двойственной задачи являются свободные члены в системе ограничений исходной задачи, а правыми частями в ограничениях двойственной задачи — коэффициенты при неизвестных в целевой функции исходной задачи;
5) если переменная xj исходной задачи может принимать только положительные значения, то j-ое условие в системе ограничений двойственной задачи является неравенством вида
"≥". Если же переменная может принимать как положительные, так и отрицательные значения, то j-ое условие представляет собой уравнение. И наоборот, если i-ое соотношение в системе ограничений исходной задачи является неравенством, то i-ая переменная двойственной
задачи yi. В противном случае переменная yi может принимать как положительные, так и отрицательные значения.
В теории двойственности используются четыре пары двойственных задач (приведем их в
матричной форме записи):
Исходная задача
Двойственная задача
Симметричные пары
F ( X )  CX  max,
g (Y )  YB  min,
1. AX  B,
1. YA  C ,
X  0;
Y  0.
F ( X )  CX  min,
g (Y )  YB  max,
2. YA  C ,
2. AX  B,
Y  0.
X  0;
F ( X )  CX  max,
3. AX  B,
X  0;
Несимметричные пары
7
3. g (Y )  YB  min,
YA  C.
Российский государственный гуманитарный университет (филиал г. Киров)
F ( X )  CX  min,
4. AX  B,
X  0;
4. g (Y )  YB  max,
YA  C.
Первая теорема двойственности.
Если одна из пары двойственных задач имеет оптимальный план, то и другая имеет оптимальный план и значения целевых функций задач при их оптимальных планах равны между собой, т. е. Fmax  g min .
Если же целевая функция одной из пары двойственных задач не ограничена (для исходной – сверху, для двойственной – снизу), то другая задача вообще не имеет планов.
Вторая теорема двойственности.
План X *  ( x1* , x2* ,..., xn* ) исходной задачи и план Y *  ( y1* , y 2* ,..., y n* ) двойственной задачи являются оптимальными планами этих задач тогда и только тогда, когда для любых i и j
выполняются равенства:
 *
 x j  0,
*
*
x j ( aij y i  c j )  0  
i 1
 x *j  0,

 *
y i  0,

n

*
*
y i ( a ij x j  bi ) = 0  
j 1
 x *j  0,


m
m
a
i 1
m
a
i 1
ij
y i*  c j ,
ij
y i*  c j ,
n
a
ij
x *j  bi ,
a
ij
x *j  bi .
j 1
n
j 1
Если в оптимальном плане одной из задач соответствующая переменная отлична от нуля, то ограничение другой задачи в оптимальном плане выполняются в виде равенства. Если
в оптимальном плане одной из задач какое-либо ограничение выполняется в виде строгого
неравенства, то соответствующая переменная другой задачи в оптимальном плане равна нулю.
Эти условия позволяют, зная оптимальное решение одной из взаимно двойственных задач, найти оптимальное решение другой задачи.
Пример. Решить задачу линейного программирования симплексным методом. Составить для данной задачи линейного программирования двойственную задачу и по решению
прямой задачи найти решение двойственной, используя теоремы двойственности.
z  2x1  3x2  max
 x1  2 x 2  1,
 2 x1  x 2  8,
 2 x  x  3,
1
2

x1 , x 2  0.

Приведем задачу к каноническому виду. Для этого к левой часть первого неравенства
прибавим дополнительную неотрицательную переменную x3 , к левой части второго - x 4 . А
вот из левой части третьего неравенства вычтем переменную x5 . В целевую функцию каждая
из этих переменных входит с коэффициентом 0 (т. е. не входят). Получаем
z  2 x1  3x2  0 x3  0 x4  0 x5  max
  x1  2 x 2  x3  1,
 2 x1  x 2  x 4  8,
 2 x  x  x  3,
1
2
5

 x1 , x 2 , x3 , x 4 , x5  0.
Преобразованную систему уравнений запишем в векторной форме:
8
Российский государственный гуманитарный университет (филиал г. Киров)
x1 P1  x2 P2  x3 P3  x4 P4  x5 P5  P0 ,
  1
 2
1
 0
0
1
где P1   2  ; P2   1  ; P3   0  ; P4   1  ; P5   0  ; P0   8  .
2
  1
 3
1
 0
 0
 
 
 
 
 
 
Среди векторов P1, P2, P3, P4, P5, только два единичных вектора (P3 и P4), т.е. единичного базиса нет. Поэтому составим расширенную задачу. Для этого в левую часть третьего
уравнения системы ограничений добавим искусственную переменную x 6 . Её нужно как
можно быстрее вывести из базиса. Поэтому в целевую функцию в задаче максимизации новая переменная войдёт с очень большим отрицательным коэффициентом –М. Расширенная
задача имеет опорный план X  (0, 0, 1, 8, 0, 3) , определяемый системой трёх единичных векторов: P3 , P4 , P6 .
Составим симплексную таблицу для I итерации:
1
2
P1
-1
3
P2
2
0
P3
1
0
P4
0
0
P5
0
-М
P6
0
0
8
2
1
0
1
0
0
-М
3
1
0
0
-1
1
0
2
-2
-3
0
0
0
0
-3
-2
-1
0
0
1
0
Базис
СБ
P0
1
P3
0
2
P4
3
P6
4
j
5
j
F0
Вычислим оценки разложений векторов по базису опорного решения по формуле
 j  z j  c j , где zj находится как скалярное произведение вектора Pj (j=1,m) на вектор Сб=(с1,
с2, ...,сm):
m
z j   ci aij ( j  1, m) .
i 1
 1  C б P1  с1  (0,0, M )  (1,2,2)  2  2  2M ;
 2  C б P2  с 2  (0,0, M )  (2,1,1)  3  3  M ;
 3  C б P3  с3  (0,0, M )  (1,0,0)  0  0;
 4  C б P4  с 4  (0,0, M )  (0,1,0)  0  0;
 5  C б P5  с5  (0,0, M )  (0,0,1)  0  M ;
 6  C б P6  с6  (0,0, M )  (0,0,1)  ( M )  0.
Оценки векторов, входящих в базис, всегда равны нулю.
Значение F0 равно скалярному произведению вектора P0 на вектор Сб:
F0=1*0+8*0+3*(-М) = -3М.
Значения F0 и z j  c j состоят из двух слагаемых M j   j . Слагаемое, которое не содержит М, записываем в 4-й строке, а число, стоящее при М – в 5-й.
Начальное опорное решение не является оптимальным, так как в 5-й строке имеется два
отрицательных числа 1  2 и  2  1 . Для оптимальности опорного решения в задаче на
максимум требуется неотрицательность оценок для всех векторов. Чтобы перейти к новому
опорному решению в базис можно ввести любой из векторов P1 и P2. Выберем P1, так как ему
соответствует наибольшая по модулю оценка. Для определения вектора, подлежащего вывоb
ду из базиса, находят  j  min( i ) для всех aij>0. Для вектора P1 получим
aij
1  min(
b2 b3
b
8 3
3
; )  min( ; )  ( a11  1  0 , поэтому отношение 1 не рассматриваем).
a21 a31
2 2
2
a11
9
Российский государственный гуманитарный университет (филиал г. Киров)
Минимум достигается при i=3. В третьей строке столбца «Базис» находится вектор Р6. Следовательно, его из базиса исключаем.
Далее выполним преобразование Жордана с разрешающим элементом a 31 =2: 1) разделим всю третью строку на 2 и запишем результат в новую симплексную таблицу; 2) остальные элементы первого столбца нужно занулить, для этого полученную 3-ю строку сложим с
первой, результат запишем в первую строку новой симплексной таблицы; 3) умножим 3-ю
строку на -2 и сложим со второй строкой, результат запишем во вторую строку новой симплексной таблицы.
Получим симплексную таблицу для II итерации:
Базис
СБ
P0
2
P1
3
P2
0
P3
0
P4
0
P5
-М
P6
1
P3
0
5/2
0
5/2
1
0
-1/2
1/2
2
3
4
P4
0
2
5
3/2
3
0
1
0
0
1/2
-2
0
0
0
1
0
0
1
-1/2
-1
-1
1/2
1
P1
Она содержит только четыре строки, так как искусственный вектор из базиса исключён
и оценки больше не содержат слагаемого с М. Этот вектор не имеет смысла вводить ни в
один из последующих базисов, поэтому в дальнейшем столбец данного вектора можно не
заполнять. Но так как от нас требуется найти решение двойственно задачи, то мы его оставим.
3
5
Получили новый опорный план X  ( , 0, , 5, 0, 0) и значение целевой функции F0 = 3.
2
2
Рассмотрим элементы 4-й строки. В столбце векторов P2 и P5 имеются отрицательные
числа, значит, найденный план не является оптимальным. Вводить в базис будем вектор P2 ,
исключать P3 . Получим симплексную таблицу для III итерации.
1
2
P1
0
3
P2
1
0
P3
2/5
0
P4
0
0
P5
-1/5
-М
P6
1/5
0
5
0
0
0
1
1
-1
2
1
5
1
0
0
0
-1/5
4/5
0
0
-2/5
-7/5
2/5
7/5
Базис
СБ
P0
1
P2
3
2
P4
3
4
P1
Последняя строка снова содержит отрицательное число. В базис вводим вектор P5 , исключаем P4 .
2
5
2
P1
0
0
3
P2
1
0
0
P3
2/5
0
0
P4
1/5
1
0
P5
0
1
-М
P6
0
-1
3
12
1
0
0
0
-1/5
4/5
2/5
7/5
0
0
0
0
Базис
СБ
P0
1
2
P2
P5
3
0
3
4
P1
2
10
Российский государственный гуманитарный университет (филиал г. Киров)
В 4-й строке последней симплексной таблицы нет отрицательных чисел. Значит
найденный опорный план X *  (3, 2, 0, 0, 5, 0) является оптимальным. Значение целевой
функции z max  12 .
Составим двойственную задачу.
Умножим третье ограничение на -1, тогда все неравенства будут содержать знак «≤».
Задача примет вид исходной задачи симметричной пары 1:
z  2x1  3x2  max
  x1  2 x 2  1, y1

 2 x1  x 2  8, y 2
 2 x1  x 2  3, y 3
x1 , x 2  0.
Число переменных в двойственной задаче равно числу ограничений в исходной задаче,
т.е. трём: y1 , y 2 , y3 .
Умножим правые части ограничений на соответствующие переменные двойственной задачи и сложим их, получим целевую функцию: g  y1  8 y 2  3 y3 .
Целевая функция исходной задачи исследуется на максимум, следовательно, целевая
функция двойственной задачи исследуется на минимум.
 1 2 
Матрица системы ограничений исходной задачи имеет вид: A   2 1  . Транспони  2  1



1
2

2  . Правыми
руем её и получим аналогичную матрицу двойственной задачи - AT  

2
1

1


частями в ограничениях двойственной задачи являются коэффициенты при неизвестных в
целевой функции исходной задачи.
Окончательно двойственная задача имеет следующий вид:
g  y1  8 y 2  3 y3  min .
 y1  2 y 2  2 y 3  2,

 2 y1  y 2  y 3  3,

y1 , y 2 , y 3  0.
Найдём её решение, используя теоремы двойственности. По первой теореме двойственности оптимальные решения исходной и двойственной задач равны, следовательно,
g min  z max  12 .
Из соотношений второй теоремы двойственности следует, что если какое-то ограничение исходной задачи выполняется в виде строгого неравенства, то соответствующая двойственная оценка равна нулю. Подставим найденное оптимальное решение в систему ограничений исходной задачи:
 1 * 3  2 * 2  1  1,
2 * 3  1 * 2  8  8,
2 * 3  1 * 2  7  3.
Третье ограничение выполняется в виде строгого неравенства, следовательно, y 3*  0 .
Если некоторая компонента x i* оптимального плана исходной задачи отлична от нуля,
то соответствующее ограничение двойственной задачи выполняется в виде равенства. В
нашем примере и x1*  3  0 , и x2*  2  0 , следовательно, оба ограничения двойственной задачи выполняются в виде равенства.
11
Российский государственный гуманитарный университет (филиал г. Киров)
 y1  2 y 2  2 y 3  2,
 y  2 y  2,
*
 2 y  y  y  3. Учитывая, что y 3  0 , получим:  2 y1  y 2  3.
1
2
3
2
 1

Решив систему, получим y1  4 / 5, y2  7 / 5.
Окончательно Y *  (4 / 5, 7 / 5, 0), g min  12.
Решение двойственной задачи можно получить другим способом, используя формулу
*
Y  C Б P 1 .
Матрица P 1 находится в последней симплексной таблице. Ее столбцы расположены
под столбцами единичной матрицы, образующими базис начального опорного решения, т. е.
под векторами P3 , P4 , P6 (именно для этой цели мы продолжали вычислять вектор P6 ):
 2 / 5 1 / 5 0   3 * 2 / 5  0 * 0  2 * (1 / 5) 

 

Y *  (3 0 2) 0
1  1   3 *1 / 5  0 *1  2 * 2 / 5   4 / 5 7 / 5 0.
  1 / 5 2 / 5 0   3 * 0  0 * (1)  2 * 0 

 

Ответ: X *  (3, 2) , z max  12 ; Y *  (4 / 5, 7 / 5, 0), g min  12.
5. Транспортная задача
Пусть имеется m поставщиков А1, А2, ..., Аm однородного груза в количествах соответственно а1, а2, .., .аm единиц и n потребителей В1, В2, ..., Вn этого груза, потребность которых
составляет соответственно b1, b2 ..., bn единиц.
Известны стоимости перевозок (тариф) единицы груза от i-го поставщика к j-му потребителю - сij (i=1,m; j=1,n).
Требуется составить такой план перевозок, который обеспечит минимальные транспортные расходы.
Возможны три ситуации:
1) количество груза у всех поставщиков равно потребности в данном грузе всех потребителей:
a1  a2  ...  am  b1  b2  ...  bn или
m
n
i 1
j 1
 ai   b j .
2) количество груза у всех поставщиков больше потребности в данном грузе всех потребителей:
a1  a2  ...  am  b1  b2  ...  bn или
m
n
 a  b
i
i 1
j 1
j
.
3) количество груза у всех поставщиков меньше потребности в данном грузе всех потребителей:
a1  a2  ...  am  b1  b2  ...  bn или
m
n
i 1
j 1
 ai   b j .
В первом случае модель задачи называется закрытой, во втором и третьем – открытой.
Теорема. Для разрешимости транспортной задачи необходимо и достаточно, чтобы запасы груза в пунктах отправления были равны потребностям в грузе в пунктах назначения, т.
е. чтобы выполнялось равенство
m
n
i 1
j 1
 ai   b j .
12
Российский государственный гуманитарный университет (филиал г. Киров)
В случае превышения запаса над потребностью вводится фиктивный (n + 1)-й пункт
m
n
i 1
j 1
назначения с потребностью bn1   ai   b j и соответствующие тарифы считаются равными нулю.
Аналогично вводится фиктивный (m + 1)-й пункт отправления с запасом груза
n
m
j 1
i 1
a m1   b j   ai и тарифы полагаются равными нулю. Этим задача сводится к закрытой
транспортной задаче, из оптимального плана которой получается оптимальный план исходной задачи.
Решение транспортной задачи включает следующие этапы:
1. Нахождение первоначального опорного плана (метод северо-западного угла, метод
минимальной стоимости). При этом число заполненных клеток должно быть равно m+n-1.
При нахождении опорного плана методом северо-западного угла запасы очередного поставщика используются для обеспечения запросов очередных потребителей до тех пор, пока
не будут исчерпаны полностью, после чего используются запасы следующего по номеру поставщика.
Заполнение начинается с левой верхней клетки (северо-западный угол). На каждом шаге, исходя из запасов очередного поставщика и запросов очередного потребителя, заполняется только одна клетка и исключается из рассмотрения один поставщик или потребитель. Если в очередную клетку таблицы требуется поставить перевозку, а поставщик или потребитель имеют нулевые запасы или запросы, то в клетку ставится перевозка, равная нулю (базисный нуль), и после этого исключается из рассмотрения поставщик или потребитель.
Метод минимальной стоимости позволяет построить решение, близкое к оптимальному, так как использует матрицу стоимостей транспортной задачи. На каждом шаге заполняется только одна клетка, соответствующая минимальной стоимости, и исключается из рассмотрения только один поставщик или один потребитель. Очередную клетку, соответствующую минимальной стоимости, заполняют по тем же правилам, что и в методе северозападного угла. Поставщик исключается из рассмотрения, если его запасы исчерпаны полностью. Потребитель исключается из рассмотрения, если его запросы удовлетворены полностью. При этом если поставщик еще не исключен, но его запасы равны нулю, то на том шаге,
когда от поставщика требуется поставить груз, в соответствующую клетку таблицы заносится базисный нуль и лишь затем поставщик исключается из рассмотрения.
2. Проверка опорного плана на оптимальность, например, методом потенциалов.
Пример. Четыре предприятия используют три вида сырья. Потребности в сырье каждого из предприятий соответственно равны 100, 90, 170 и 30 ед. Сырьё сосредоточено в трёх
пунктах, а запасы соответственно равны 200, 160, и 140 ед. Тарифы перевозок заданы матрицей
12 15 21 14 
С  13 8 15 10  .
19 16 26 12 


Составить такой план перевозок, при котором общая стоимость перевозок является минимальной?
Данная задача является открытой, так как потребности в сырье 100+90+170+30=390
меньше запасов 200+160+140=500. Введём 5-го фиктивного потребителя с потребностью
b5  500  390  110 .
Теперь исходные данные задачи запишем в виде таблицы, а опорный план получим методом северо-западного угла.
Заполнение таблицы начинаем с клетки (1,1). х11 = min(a1=200,b1=100)=b1=100 – запасы А1 позволяют полностью удовлетворить потребности пункта В1, значит исключаем этого
13
Российский государственный гуманитарный университет (филиал г. Киров)
потребителя из рассмотрения. Теперь запасы пункта A1 считаем равными a1=200-100=100
ед. В оставшейся части таблицы левой верхней клеткой является (1,2): х12 = min(a1,b2)=b2=90
– снова запасы удовлетворяют потребность полностью. Внесём значение в соответствующую
клетку и исключим из рассмотрения столбец В2. Запасы пункта А1 считаем равными a1=10090=10 ед. Теперь «северо-западным углом» является клетка (1,3). х13 = min(a1,b3)=a1=10 –
запасы могут удовлетворить потребность пункта B3 частично. Заполняем клетку (1,3) и исключаем из рассмотрения строку A1. Потребности пункта B3 считаем равными b3=17010=160. х23 = min(a2,b3)=a2=b3=160 – запасы A2 исчерпаны, потребность B3 удовлетворена.
Но по правилам мы не можем вычеркнуть и строку и столбец одновременно. Поэтому исключим из рассмотрения сначала столбец B3, а в клетку (2,4) запишем х24 =0 (так как запасы
А2 уже исчерпаны) и только теперь вычеркнем строку А2. И так далее. Получим следующую таблицу.
Потребности
Запасы
a1=200
a2=160
a3=140
α1=0
α2=-6
α3=-4
b1=100
b2=90
b3=170
b4=30
b5=110
β1=12
β2=15
β3=21
β4=16
β 5=4
0
100 15
90 21
10 14
8
15
160 10
0 0
16
26
12
30 0
110
12
13
19
Число заполненных клеток равно 7 и m+n-1=3+5-1=7 – план невырожденный. Оптимальный план найдём методом потенциалов.
Теорема. В оптимальном плане транспортной задачи заполненным клеткам отвечают
равенства αi  β j  cij , а пустым неравенства αi  β j  cij .
Расставим потенциалы:
 α1  0
 α1  β1  с11  12
α 2   6
 α1  β 2  с12  15
 α  -4
 α  β  с  21
 3
1
3
13
 β  12

α 2  β3  с 23  15 , положим α1  0 , тогда  β 1  15 .
 2
α 2  β 4  с 24  10
 β 3  21
α  β  с  12
3
4
34
 β 4  16
α  β  с  0
5
35
 3
 β 5  0
(Обычно равным нулю принимают потенциал строки или столбца с наибольшим числом заполненных клеток.)
Теперь проверим пустые клетки на выполнение неравенства α i  β j  c ij .
α1  β 4  0  16  16  14; Δ14  16  14  2
α1  β5  0  4  4  0; Δ15  4  0  4
α  β  6  12  6  13
1
 2
α 2  β 2  6  15  9  8; Δ22  9  8  1 .

α 2  β5  6  4  2  0
α3  β1  -4  12  8  19
α3  β 2  -4  15  11  16
α3  β3  -4  21  17  26
Для клеток (1,4), (1,5), (2,2) неравенство не выполняется, значит опорный план не является оптимальным. В одну из этих клеток нужно "ввезти" груз. Выбираем ту, для которой
разница  ij максимальна, т. е. в (1,5). Строим цикл.
Цикл перерасчёта таблицы - это последовательность ячеек, начинающаяся и заканчивающаяся в одной и той же клетке, с вершинами, лежащими в занятых клетках, кроме одной.
Вершина цикла – клетка, в которой происходит поворот под прямым углом.
"Перемещаем" груз по следующим правилам:
14
Российский государственный гуманитарный университет (филиал г. Киров)
1. каждой из клеток, связанных циклом присваивается знак: пустой ячейке "+",
остальным - поочерёдно знаки "-" и "+" .
2. среди минусовых клеток находим число x  min( xij ) и прибавляем его к числам,
стоящим в плюсовых клетках, и вычитаем из чисел, стоящих в минусовых клетках; остальные клетки вне цикла остаются без изменения.
В нашем примере цикл образуют шесть ячеек: (1,5) – пустая, для которой не выполняется неравенство, и (3,5), (3,4), (2,4), (2,3), (1,3) – заполненные.
х = min(10,0,110)=0. Значит в плюсовые клетки "завозим" 0 ед. груза, из минусовых
"вывозим". Получим новый опорный план:
Потребности
Запасы
a1=200
a2=160
a3=140
α1=0
α2=-6
α3=0
b1=100
b2=90
b4=30
b5=110
β1=12
β2=15
β3=21
β4=12
14
12
100 15
90 21
10
β 5=0
0
0
13
19
10
0
12
30 0
8
16
b3=170
15
26
160
110
Расставим потенциалы и проверим пустые клетки на выполнение неравенства
αi  β j  cij . Для клетки (2,2) неравенство не выполняется. Строим новый цикл.
х = min(90,160)=90. Значит в плюсовые клетки "завозим" 90 ед. груза, из минусовых
"вывозим". Получим новый опорный план:
Потребности
Запасы
a1=200
a2=160
a3=140
α1=0
α2=-6
α3=0
b1=100
b2=90
b3=170
b4=30
b5=110
β1=12
β2=15
β3=21
β4=12
β 5=0
15
14
12
100
21
100
0
0
13
0
8
90 15
70 10
19
16
26
12
30 0
110
Расставим потенциалы и проверим пустые клетки на выполнение неравенства
αi  β j  cij . Полученный план является оптимальным.
100 0 100 0 0 
Ответ: X   0 90 70 0 0  ,
 0 0 0 30 110 


zmin  x11c11  x13c13  x22c22  x23c23  x32c32  x34c34 =100*12+100*21+90*8+70*15+30*12=5430.
Так как пятый потребитель является фиктивным, то 110 ед. груза у третьего поставщика останутся невостребованными.
15
Российский государственный гуманитарный университет (филиал г. Киров)
Задачи для самостоятельного решения
Задание 1
Построить на плоскости область решений системы линейных неравенств
 a11x1  a12 x2  b1

a21x1  a22 x2  b2
 a31x1  a32 x2  b3
и геометрически найти наименьшее и наибольшее значения линейной функции
f  c1 x1  c2 x2 в этой области.
  x1  x 2  3,

1. 5 x1  3x 2  97,
 x1  7 x 2  77;
f  3x1  4x2 .
 3x1  x 2  9,

2.  2 x1  3x 2  50,
 x1  4 x 2  19;
f  x1  5x2 .
 x1  4 x 2  53,

3.  x1  x 2  3,
7 x1  3x 2  71;
f  9x1  2x2 .
 6 x1  5 x2  17,

4.  x1  2 x2  34,
 4 x1  9 x2  17;
f  5x1  3x2 .
 3x1  14 x 2  78,

5.  5 x1  6 x 2  26,

x1  4 x 2  26;
f  5x1  7 x2 .
 11x1  3x 2  24,

6.  9 x1  4 x 2  110,
 2 x1  7 x 2  15;
f  9x1  2 x2 .
 4 x1  5 x2  29,

7.  3x1  x2  14,
 5 x1  2 x2  38;
f  3x1  2x2 .
 2 x1  x2  4,

8.  x1  3x2  37,
 4 x1  9 x2  20;
10 x1  x 2  57,

9. 2 x1  3x 2  53,
6 x1  7 x 2  15;
4 x1  x 2  6,


10.  9 x1  8 x 2  157,
 3x1  11x 2  16;
f  x1  x2 .
  x1  x 2  3,

11. 5 x1  3x 2  97,
 x1  7 x 2  77;
f  7 x1  2 x2 .
 3x1  x 2  9,

12.  2 x1  3x 2  50,
 x1  4 x 2  19;
f  6 x1  x2 .
 x1  4 x 2  53,

13.  x1  x 2  3,
7 x1  3x 2  71;
f  x1  7 x2 .
 6 x1  5 x2  17,

14.  x1  2 x2  34,
 4 x1  9 x2  17;
f  x1  9x2 .
 3x1  14 x 2  78,

15.  5 x1  6 x 2  26,

x1  4 x 2  26;
f  x1  8x2 .
 11x1  3x 2  24,

16.  9 x1  4 x 2  110,
 2 x1  7 x 2  15;
f  7 x1  x2 .
 4 x1  5 x2  29,

17.  3x1  x2  14,
 5 x1  2 x2  38;
f  3x1  x2 .
 2 x1  x2  4,

18.  x1  3x2  37,
 4 x1  9 x2  20;
f  x1  3x2 .
10 x1  x 2  57,

19. 2 x1  3x 2  53,
6 x1  7 x 2  15;
f  2x1  3x2 .
4 x1  x 2  6,


20.  9 x1  8 x 2  157,
 3x1  11x 2  16;
f  8x1  5x2 .
 4 x1  5 x2  29,

21.  3x1  x2  14,
 5 x1  2 x2  38;
f  x1  x2 .
f  4x1  3x2 .
16
f  5x1  x2 .
Российский государственный гуманитарный университет (филиал г. Киров)
 6 x1  5 x2  17,

22.  x1  2 x2  34,
 4 x1  9 x2  17;
f  4x1  3x2 .
  x1  x 2  3,

23. 5 x1  3x 2  97,
 x1  7 x 2  77;
f  3x1  4x2 .
 2 x1  x2  4,

24.  x1  3x2  37,
 4 x1  9 x2  20;
f   x1  3x2 .
10 x1  x 2  57,

25. 2 x1  3x 2  53,
6 x1  7 x 2  15;
 x1  2 x 2  6,

26.  x1  x 2  9,
 3x1  x 2  15;
3x1  2 x 2  6,

27.  x1  4 x 2  2,
 x1  x2  5;
f  2x1  3x2 .
f  5x1  x2 .
4 x1  x 2  6,


28.  9 x1  8 x 2  157,
 3x1  11x 2  16;
f  x1  4x2 .
f  4x1  2 x2 .
 x1  4 x 2  53,

29.  x1  x 2  3,
7 x1  3x 2  71;
f  3x1  x2 .
 11x1  3x 2  24,

30.  9 x1  4 x 2  110,
 2 x1  7 x 2  15;
f  x1  7 x2 .
Задание 2
а) Решить задачу линейного программирования графическим и симплексным методом.
б) Составить для данной задачи линейного программирования двойственную задачу и
по решению прямой задачи найти решение двойственной, используя теоремы двойственности.
  x1  x 2  3,
 x1  2 x 2  8,
 x1  4 x2  12,
 2 x1  x 2  6,
 2 x1  x 2  2,
4 x  7 x2  30,
1. 
2. 
3.  1
2 x  5 x 2  10,
x  2 x 2  2,
x  x2  1,
 1
 1
 1
x
,
x

0
;
x
,
x

0
;
x1 , x2  0;
1
2
1
2



z  x1  2 x2  min .
z  4x1  5x2  max .
z   x1  2x2  min .
2 x1  x 2  14,
4 x  x 2  16,
4.  1
3 x  x 2  6,
 1
 x1 , x 2  0;
z  5x1  x2  max .
 3x1  5 x2  15,
 3x1  x2  9,
5. 
4 x1  5 x2  20,

x1 , x2  0;

z  x1  3x2  min .
5 x1  2 x2  18,
 x  2 x2  10,
6.  1
4 x  5 x2  20,
 1
x1 , x2  0;

z  2x1  3x2  max .
 5 x1  2 x2
 x  2 x2
7.  1
4 x  3x2
 1
x1 , x2

2 x1  3x2  12,
7 x  3x2  9,
8.  1
x1  1,

x1 , x2  0;

 x1  2 x2
3x  2 x2
9.  1
x  2 x2
 1
x1 , x2

 7,
 5,
 12,
 0;
z  4 x1  6 x2  max .
 x1  2 x2  2,
 2 x1  x2  2,
10. 
x1  x2  2,

x1 , x2  0;

z  3x1  5x2  max .
z  x1  3x2  max .
 x1  x2  1,
 x  x2  7,
11.  1
8 x  3x2  24,
 1
x1 , x2  0;

z  4x1  x2  min .
17
 8,
 12,
 2,
 0;
z  3x1  4x2  min .
7 x1  4 x2  26,
 x  2 x2  8,
12.  1
x1  1,

x
,
x
1
2  0;

z  2x1  3x2  max .
Российский государственный гуманитарный университет (филиал г. Киров)
 3x1  4 x2  0,

x1  x2  7,
13. 
3x1  7 x2  21,

x1 , x2  0;

z  3x1  4x2  min .
9 x1  7 x2  64,
 x  4 x2  20,
14.  1
9 x  4 x2  36,
 1
x1 , x2  0;

z  3x1  5x2  max .
 x1  x2  1,
 x  x2  7,
15.  1
x  x2  3,
 1
 x1 , x2  0;
z  2 x1  3x2  min .
 2 x1  3x2  7,
4 x  9 x2  36,
16.  1
2 x  3x2  6,
 1
x1 , x2  0;

z  3x1  2x2  max .
 4 x1  2 x 2  3,
 8 x1  9 x 2  72,
17. 
3x1  2 x 2  6,

x1 , x 2  0;

z  2 x1  3x2  min .
 x1  2 x 2  15,
3x  5 x 2  12,
18.  1
5 x  3x 2  26,
 1
x1 , x 2  0;

z  4x1  3x2  max .
 3x1  2 x2  5,
 7 x1  2 x2  7,
19. 
4 x1  5 x2  20,

x1 , x2  0;

z  2x1  6x2  min .
 x1  2 x 2  7,
 x1  x 2  1,
20. 
x1  x 2  1,

x1 , x 2  0;

z  5x1  7 x2  max .
  x1  x 2  3,
 2 x  x 2  6,
21.  1
2 x  5 x 2  10,
 1
x1 , x 2  0;

z  x1  2 x2  max .
2 x1  x 2  14,
4 x  x 2  16,
22.  1
3 x  x 2  6,
 1
 x1 , x 2  0;
z  5x1  x2  max .
 5 x1  2 x2  7,
 x  2 x2  5,
23.  1
4 x  3x2  12,
 1
x1 , x2  0;

z  4 x1  6 x2  max .
 x1  2 x2  2,
 2 x1  x2  2,
24. 
x1  x2  2,

x1 , x2  0;

z  3x1  5x2  max .
7 x1  4 x2  26,
 x  2 x2  8,
25.  1
x1  1,

x
,
x
1
2  0;

z  2x1  3x2  max .
 x1  2 x 2  8,
 2 x1  x 2  2,
26. 
x  2 x 2  2,
 1
x1 , x 2  0;

z  2x1  x2  min .
 x1  4 x2  12,
4 x  7 x2  30,
27.  1
x  x2  1,
 1
x1 , x2  0;

z  2x1  x2  max .
 3x1  5 x2
 3x1  x2
28. 
4 x1  5 x2

x1 , x2

5 x1  2 x2
 x  2 x2
29.  1
4 x  5 x2
 1
x1 , x2

2 x1  3x2  12,
7 x  3x2  9,
30.  1
x1  1,

x1 , x2  0;

 15,
 9,
 20,
 0;
z  4x1  x2  max .
 18,
 10,
 20,
 0;
z   x1  x2  max .
18
z  3x1  x2  min .
Российский государственный гуманитарный университет (филиал г. Киров)
Задание 3
На базах Ai имеется однородный груз в количестве a i тонн. Этот груз требуется перевезти в пункты B j , имеющие потребности b j тонн. Расстояние между пунктами отправления
и пунктами назначения заданы матрицей расстояний D .
Стоимость перевозки пропорциональна количеству груза и расстоянию, на которое этот
груз перевозится.
Спланировать перевозки так, чтобы их общая стоимость была минимальной (ввиду
пропорциональности затрат количеству груза и расстоянию, для решения задачи достаточно
минимизировть общий объём плана, выраженный в тонно-километрах).
Задачу решить методом потенциалов, первоначальный опорный план составить методом северо-западного угла.
b1  90
a1  200
12 15 21 14 
b2  100
1.
a 2  150
D  14 8 15 11 .
b3  160
19 16 26 12 
a3  150


b4  40
a1  300
a 2  280
a3  220
b1  180
b2  140
b3  260
b4  120
12 21 10 10 
D  13 15 11 13  .
19 26 12 17 


3.
a1  250
a 2  220
b1  180
b2  120
b3  90
b4  80
b5  105
D  12 8 21 10 15  .
13 4 15 13 21
4.
a1  400
a 2  250
a3  280
b1  200
b2  200
b3  230
b4  220
 13 9 5 15 
D   14 5 12 14  .
 20 17 13 18 


5.
a1  150
a 2  250
b1  160
b2  70
b3  90
b4  80
b5  100
D   8 20 7 11 16  .
 4 14 12 15 17 
6.
a1  280
a 2  300
a3  220
b1  170
b2  110
b3  190
b4  140
 28 12 7 18 
D   35 14 12 15  .
 35 15 11 25 


7.
a1  150
a 2  240
b1  180
b2  120
b3  90
b4  100
b5  80
D  14 18 17 19 4  .
 7 10 5 11 5 
8.
a1  250
a 2  400
a3  550
b1  300
b2  350
b3  200
b4  150
 9 15 35 20 
D   15 35 12 11  .
 20 19 40 15 


2.
19
Российский государственный гуманитарный университет (филиал г. Киров)
9.
a1  170
a 2  150
b1  100
b2  70
b3  130
b4  110
b5  90
10.
a1  280
a 2  220
a3  300
b1  190
b2  140
b3  170
b4  120
 7 3 9 15 
D   3 10 12 20  .
15 11 16 19 


11.
a1  200
a 2  250
b1  120
b2  80
b3  205
b4  90
b5  105
D   9 6 17 11 9  .
13 4 9 5 7 
12.
a1  350
a 2  400
a3  250
b1  170
b2  180
b3  230
b4  270
 5 13 18 17 
D   6 10 15 6  .
 24 21 9 16 


13.
a1  250
a 2  250
b1  120
b2  130
b3  80
b4  270
b5  50
D   13 7 16 4 15  .
 20 9 6 10 19 
14.
a1  250
a 2  180
a3  370
b1  160
b2  170
b3  100
b4  220
 4 11 9 13 
D  6 5 4 4  .
 4 9 11 6 


15.
a1  350
a 2  360
a3  350
b1  160
b2  190
b3  300
b4  250
 6 9 10 14 
D  17 6 4 1  .
12 8 9 8 


16.
a1  250
a 2  350
b1  150
b2  100
b3  250
b4  210
b5  190
D   7 9 16 8 16  .
13 12 18 12 20 
17.
a1  100
a 2  150
a3  150
b1  100
b2  50
b3  100
b4  100
 2 3 5 7
D   1 3 0 4 .
 3 1 2 1


18.
a1  200
a 2  200
b1  100
b2  100
b3  80
b4  50
D   3 2 5 1  .
 2 2 4 2
D   20 3 9 15 35  .
 14 10 12 20 45 
20
Российский государственный гуманитарный университет (филиал г. Киров)
19.
a1  200
a 2  300
b1  100
b2  150
b3  250
b4  100
D   2 2 3 1  .
 4 2 1 4
20.
a1  180
a 2  120
a3  200
b1  90
b2  100
b3  110
b4  100
 2 1 2 5
D   3 1 1 4 .
2 4 2 1


21.
a1  200
a 2  150
a3  150
b1  90
b2  100
b3  160
b4  40
12 15 21 14 
D  14 8 15 11 .
19 16 26 12 


a1  250
a 2  220
b1  180
b2  120
b3  90
b4  80
b5  105
D  12 8 21 10 15  .
13 4 15 13 21
a1  140
a 2  260
b1  150
b2  80
b3  90
b4  80
b5  100
D   8 18 7 11 16  .
 4 14 12 13 17 
a1  160
a 2  230
b1  190
b2  110
b3  100
b4  90
b5  80
D  14 16 17 15 4  .
 7 10 5 11 5 
25.
a1  180
a 2  140
b1  90
b2  80
b3  130
b4  110
b5  90
D  18 3 9 15 35  .
14 10 12 20 25 
26.
a1  260
a 2  240
a3  300
b1  200
b2  140
b3  160
b4  120
 7 4 9 15 
D   3 10 12 14  .
17 11 16 12 


27.
a1  150
a 2  210
a3  190
b1  100
b2  140
b3  160
b4  90
 7 4 9 11
D   6 10 12 14  .
17 11 15 12 


22.
23.
24.
21
Российский государственный гуманитарный университет (филиал г. Киров)
28.
a1  240
a 2  160
29.
a1  300
a 2  240
a3  260
30.
a1  220
a 2  180
b1  130
b2  100
b3  90
b4  80
b5  100
b1  160
b2  140
b3  200
b4  120
b1  120
b2  110
b3  90
b4  70
b5  110
D   8 15 7 11 16  .
 6 14 12 13 17 
 7 6 9 16 
D   3 10 12 14  .
13 11 15 12 


D   8 12 7 11 16  .
 4 14 12 13 15 
ЛИТЕРАТУРА
1. Акулич И. Л.. Математическое программирование в примерах и задачах. – М.: Высшая школа, 1986.
2. Высшая математика для экономистов / Под ред. Н. Ш. Кремера. – М.: Банки и биржи, ЮНИТИ, 1997.
3. Калихман И. Л. Сборник задач по математическому программированию. – М.: Высшая школа, 1979.
4. Кузнецов Ю. Н., Кузубов В. И., Волощенко А. Б. Математическое программирование. – М.: Высшая школа, 1986.
5. Руководство к решению задач с экономическим содержанием по курсу высшей математики / Под ред. А. И. Карасева и Н. Ш. Кремера. – М.: ВЗФЭИ, 1989.
22
Download