- •Лабораторный практикум
- •По дисциплине «Математические методы в экономике»
- •Часть 2 .Линейное и дискретное программирование
- •Для подготовки студентов по направлениям 080500 - менеджмент и 080100 - экономика
- •Лабораторный практикум по дисциплине «Математические методы в экономике» . Часть 1.Линейное и дискретное программирование. Уч. Пособие. М.: фгоу впо ргау - мсха им. К.А. Тимирязева, - 127 с.
- •Содержание
- •Введение
- •Лабораторная работа № 13 «Решение задач линейного программирования в приложении ms Excel «Поиск решения»»
- •Последовательность выполнения
- •Лабораторная работа № 14 «Метод искусственного базиса или м- метод»
- •Лабораторная работа №15-17 «Основы теории двойственности»
- •1 Экономический смысл двойственных задач
- •2 Правило записи двойственных задач. Симметричные двойственные задачи
- •3 Свойства двойственных задач. Основные теоремы двойственности
- •4 Запись оптимального решение двойственной задачи по оптимальному решению прямой задачи. Краткий анализ оптимального решения прямой задачи
- •Лабораторная работа №18 «Транспортная задача на минимум целевой функции»
- •Лабораторная работа № 19 «Особенности решения транспортной задачи на максимум»
- •Лабораторная работа № 20 Видоизменения транспортной задачи (блокировка перевозок, ограничение пропускной способности).
- •I. Общая постановка задачи
- •II. Общая постановка задачи
- •Лабораторная работа № 21 «Транспортная задача с учетом производственных затрат»
- •Лабораторная работа № 22 «Решение задач о назначениях»
- •1 Постановка задачи и математическая формализация условий
- •2 Венгерский алгоритм решения задачи на минимум целевой функции
- •3 Особенности решения задачи на максимум
- •Лабораторная работа №23 «Целочисленное программирование»
- •Лабораторная работа № 24 «Параметрическое программирование с параметром в целевой функции»
- •Алгоритм решения задач в полных симплексных таблицах на максимум целевой функции
- •Лабораторная работа № 25. «Параметрическая транспортная задача с параметром в целевой функции»
- •Алгоритм решения параметрической транспортной задачи с параметром в целевой функции
- •Глоссарий основных понятий
- •Рекомендуемая литература
Лабораторная работа № 20 Видоизменения транспортной задачи (блокировка перевозок, ограничение пропускной способности).
Теоретическая часть
В некоторых задачах могут быть условия, которые с помощью специальных приемов приводятся к формулировке задач транспортного типа. Полученная таким способом задача решается по известному алгоритму. Рассмотрим некоторые из них.
Блокировка перевозок.
Если перевозки от i –го отправителя к j-му потребителю запрещены (например, из-за плохих дорог), то в качестве коэффициента транспортных затрат в клетке (i,j) следует взять большое число М (М→∞). В оптимальном решении (на min) клетка (i,j), как правило, будет свободной. Если же эта клетка все же окажется базисной, то это указывает на неразрешимость задачи из-за запрещенных перевозок.
Ограничение пропускной способности.
Пусть, например, требуется учесть ограниченную пропускную способность дороги от i-го отправителя к j-му потребителю.
В этом случае следует столбец j-го потребителя в распределительной таблице разделить на две части. В одном из новых столбцов указать потребность, равную ограниченной пропускной способности, а в другом – оставшуюся величину потребности. В клетке, соответствующей перевозке от i-го отправителя к j-му потребителю, заблокировать перевозку, т.е. поставить коэффициент М. В этом случае ограниченная пропускная способность дороги автоматически будут учитываться при решении задачи.
Пример выполнения работы
Задача 1 . Имеется три поставщика с ресурсами А1=3; А2=5; А3=2 и три потребителя с потребностями В1=4; В2=4; В3=2. Известны затраты на транспортировку груза от каждого поставщика к потребителю. От поставщика А2 к потребителю В2 можно доставить груз только в количестве 2 ед. Составить оптимальный план перевозки груза от поставщиков к потребителям так, чтобы транспортные затраты были минимальные.
Транспортная задача является закрытой, так как сумма ресурсов равна сумме потребностей (3+5+2=4+4+2)
Учитывая условие, что от поставщика А2 к потребителю В2 можно доставить груз только в количестве 2 ед., распределительная таблица будет иметь следующий вид.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
||
2 |
2 |
||||
А1 |
3 |
3
|
4 |
4 |
5 |
А2 |
5 |
2
|
3 |
М |
6 |
А3 |
2 |
1
|
4 |
4 |
5 |
Найдем исходное опорное решение методом "наименьшего элемента в строке".
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
2 |
2 |
|||||
А1 |
3 |
3 3 |
4
|
4 |
5 |
0 |
А2 |
5 |
2 1 |
3 2 |
М |
6 2 |
-1
|
А3 |
2 |
1
|
4 |
4 2 |
5 0 |
-2
|
vj
|
3 |
4 |
6 |
7 |
|
|
Z=3*3+2*1+3*2+6*2+4*2+5*0 =37
12=4+0-4=0 23=6-1-М=5-М
13=6+0-4=2 31=3-2-1=0
14=7+0-5=2 32=4-2-4=-2
Решение неоптимальное, т.к. две оценки положительные. Две клетки имеют равные положительные оценки. Это клетки (1,3) и (1,4). Выбираем клетку с меньшими транспортными затратами (эта клетка войдет в базис), то есть клетку (1,3). Для этой клетки строим цикл и выбираем минимальный груз у вершин со знаком "-".
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
||
2 |
2 |
||||
А1 |
3 |
3
- |
4
|
4 + |
5 |
А2 |
5 |
2
+ |
3 2 |
М |
6 - 2 |
А3 |
2 |
1
|
4 |
4
- |
5 + 0 |
= min {3, 2, 2} = 2
Минимальный груз, равный двум, находится в клетках (2,4) и (3,3). Выбираем клетку с большим коэффициентом транспортных затрат, т.к. переменная этой клетки выйдет из базиса. Это клетка (2,4). Выполняем преобразования однократного замещения.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
2 |
2 |
|||||
А1 |
3 |
3 1 |
4
|
4 2 |
5 |
0 |
А2 |
5 |
2 3 |
3 2 |
М |
6
|
-1 |
А3 |
2 |
1
|
4 |
4 0 |
5 2 |
0 |
vj
|
3 |
4 |
4 |
5 |
|
|
12=4+0-4=0 23=4-1-М=3-М
14=5+0-5=0 31=3+0-1=2
24=5-1-6=-2 32=4+0-4=0
Решение неоптимальное, т.к. оценка клетки (3,1) положительная. Для этой клетки строим цикл.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
||
2 |
2 |
||||
А1 |
3 |
3
- |
4
|
4 + 2 |
5 |
А2 |
5 |
2 3 |
3 2 |
М |
6
|
А3 |
2 |
1 + |
4 |
4 - 0 |
5 2 |
= min {1,0} = 0. Минимальный груз в клетке (3,3).Эта клетка станет свободной. Выполняем преобразования однократного замещения.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
2 |
2 |
|||||
А1 |
3 |
3 1 |
4
|
4 2 |
5 |
0 |
А2 |
5 |
2 3 |
3 2 |
М |
6
|
-1 |
А3 |
2 |
1 0 |
4 |
4
|
5 2 |
-2 |
vj |
3 |
4 |
4 |
7 |
|
|
12=4+0-4=0 24=7-1-6=0
14=7+0-5=2 32=4-2-4=-2
23=4-1-М=3-М 33=4-2-4=-2
Решение снова неоптимальное, т.к. оценка клетки (1,4) положительная.
Для этой клетки строим цикл.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
||
2 |
2 |
||||
А1 |
3 |
3 - 1 |
4
|
4 2 |
5 + |
А2 |
5 |
2 3 |
3 2 |
М |
6
|
А3 |
2 |
1 + 0 |
4 |
4
|
5 - 2 |
= min {1,2} = 1. Минимальный груз соответствует значению переменной клетки (1,1). Эта клетка станет свободной. Выполняем преобразования однократного замещения.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
2 |
2 |
|||||
А1 |
3 |
3
|
4
|
4 2 |
5 1 |
0 |
А2 |
5 |
2 3 |
3 2 |
М |
6
|
1 |
А3 |
2 |
1 1 |
4 |
4
|
5 1 |
0 |
vj
|
1 |
2 |
4 |
5 |
|
|
11=1+0-3=-2
12=2+0-4=-2 32=2+0-4=-2
23=4+1-М=5-М 33=4+0-4=0
Решение оптимальное, т.к. оценки неположительные и альтернативное, т.к. оценка 33=0
min Z = 4*2+5*1+2*3+3*2+1*1+5*1= 31 (в исходном опорном решении транспортные затраты составляли 37 ед.)
Оптимальный план грузоперевозок.
-
Поставщики
Потребитель В1
Потребитель В2
Потребитель В3
А1
-
2
1
А2
3
2
-
А3
1
-
1
Условие, что второй поставщик может поставить только 2 ед. груза второму потребителю, выполняется.
Задача 2. Имеется три поставщика с ресурсами А1=3; А2=5; А3=2 и три потребителя с потребностями В1=4; В2=4; В3=2. Известны затраты на транспортировку груза от каждого поставщика к каждому потребителю. От поставщика А2 к потребителю В2 можно доставить груз только в количестве 1 ед. Составить оптимальный план перевозки груза от поставщиков к потребителям так, чтобы транспортные затраты были минимальные.
Транспортная задача является закрытой, так как сумма ресурсов равна сумме потребностей (3+5+2=4+4+2)
Учитывая условие, что от поставщика А2 к потребителю В2 можно доставить груз только в количестве 1 ед., распределительная таблица будет иметь следующий вид.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
||
1 |
3 |
||||
А1 |
3 |
3
|
4 |
4 |
5 |
А2 |
5 |
2
|
3 |
М |
6 |
А3 |
2 |
1
|
4 |
4 |
5 |
Найдем исходное опорное решение методом "наименьшего элемента в строке".
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
1 |
3 |
|||||
А1 |
3 |
3 3 |
4
|
4 |
5 |
0 |
А2 |
5 |
2 1 |
3 1 |
М 1 |
6 2 |
-1
|
А3 |
2 |
1
|
4 |
4 2 |
5
|
-М+3
|
vj
|
3 |
4 |
М+1 |
7 |
|
|
Z=3*3+2*1+3*1+М*1+6*2+4*2 =34+M
12=4+0-4=0 13=М+1+0-4=М-3 31=3-М+3-1=5-М
14=7+0-5=2 32=4-М+3-4=-М+3 34=7-М+3-5=5-М
Решение неоптимальное, т.к. две клетки имеют положительные оценки. Это клетки [1,3] и [1,4]. Выбираем клетку с наибольшей положительной оценкой (эта клетка войдет в базис), то есть клетку [1,3]. Для этой клетки строим цикл [1,3]-[1,1]-[2,1]-2,3] и выбираем минимальный груз у вершин со знаком "-".
= min {3, 1} = 1
Минимальный груз, равный единице, находится в клетке [2,3]. Выполняем преобразования однократного замещения. Получаем следующую таблицу.
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
1 |
3 |
|||||
А1 |
3 |
3 2 |
4
|
4 1 |
5 |
0 |
А2 |
5 |
2 2 |
3 1 |
М |
6 2 |
-1 |
А3 |
2 |
1
|
4 |
4 2 |
5
|
0 |
vj
|
3 |
4 |
4 |
7 |
|
|
12=4+0-4=0 23=4-1-М=3-М 34=7+0-5=2
14=7+0-5=2 31=3+0-1=2
∆24=5-1-6= -2 32=4+0-4=0
Решение неоптимальное, т.к. три оценки положительные. Три клетки имеют равные положительные оценки. Это клетки [1,4], [3,1] и [3,4]. Выбираем клетку с меньшими транспортными затратами (эта клетка войдет в базис), то есть клетку [3,1]. Для этой клетки строим цикл [3,1]-[3,3]-[1,3]-[1,1]-[3,1] и выбираем минимальный груз у вершин со знаком "-".
Минимальный груз, равный двум, находится в клетках [1,1] и [3,3]. Выбираем клетку с большим коэффициентом транспортных затрат, т.к. переменная этой клетки выйдет из базиса. Это клетка [3,3]. Выполняем преобразования однократного замещения. Получим таблицу:
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
1 |
3 |
|||||
А1 |
3 |
3 0 |
4
|
4 3 |
5 |
0 |
А2 |
5 |
2 2 |
3 1 |
М |
6 2 |
-1 |
А3 |
2 |
1 2 |
4 |
4
|
5
|
0 |
vj
|
3 |
4 |
4 |
7 |
|
|
12=4+0-4=0 23=4-1-М=3-М 33=4+0-4=0 34=7+0-5=2
14=7+0-5=2 32=4+0-4=0
Решение неоптимальное, т.к. две оценки положительные. Для клетки [3,4] клетки строим цикл. Это [3,4]-[2,4]-[2,1]-[3,1]-[3,4]. = min {2,2} = 2. Минимальный груз в клетках [2,4] и [3,1]. Клетка [2,4] станет свободной, так как у неё коэффициент транспортных затрат больше, чем у клетки [3,1]. Выполняем преобразования однократного замещения.
Получим таблицу:
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
1 |
3 |
|||||
А1 |
3 |
3 0 |
4
|
4 3 |
5 |
0 |
А2 |
5 |
2 4 |
3 1 |
М |
6
|
-1 |
А3 |
2 |
1 0 |
4 |
4
|
5 2 |
-2 |
vj
|
3 |
4 |
4 |
7 |
|
|
12=4+0-4=0 23=4-1-М=3-М 33=4-2-4=-2
14=7+0-5=2 24=7-1-6=0 32=4-2-4= -2
Решение неоптимальное, т.к. есть положительная оценка в клетке [1,4]. Для неё строим цикл. Это [1,4]-[1,1]-[3,1]-[3,4]-[1,4]. = min {2,0} = 0. Минимальный груз в клетке [1,1]. Она становится свободной, а клетка [1,4] – базисной.
Выполняем преобразования однократного замещения. Получим таблицу:
потребн. ре- сурсы |
В1 4 |
В2 4 |
В3 2 |
ui
|
||
1 |
3 |
|||||
А1 |
3 |
3
|
4
|
4 3 |
5 0 |
0 |
А2 |
5 |
2 4 |
3 1 |
М |
6
|
1 |
А3 |
2 |
1 0 |
4 |
4
|
5 2 |
0 |
vj
|
1 |
2 |
4 |
5 |
|
|
12=2+0-4=-2 23=4+1-М=5-М 32=0+2-4= -2
14=1+0-3= -2 24=5+1-6=0 33=4+0-4=0
Решение оптимальное, т.к. оценки неположительные и альтернативное, т.к. оценка 24 = 33 = 0
min Z = 4*3+5*0+2*4+3*1+1*0+5*2= 33 ед. (в исходном опорном решении транспортные затраты составляли 34+М ед.)
Оптимальный план грузоперевозок.
-
Поставщики
Потребитель В1
Потребитель В2
Потребитель В3
А1
-
3
0
А2
4
1
-
А3
0
-
2
Условие, что второй поставщик может поставить только 1 ед. груза второму потребителю, выполняется.
Индивидуальное задание

3
1
2
1