АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Работа рассчитана на 2 аудиторных часа. Пример 2. Наколбасном заводе для приготовления крупнокусковых полуфабрикатов, вареных колбас, сырокопченых колбас и рубленых полуфабрикатов используют

Читайте также:
  1. II. Работа с кувезом.
  2. II. Самостоятельная работа студентов на занятии.
  3. III. Работа с подобранной литературой
  4. III. Работа с подобранной литературой
  5. IV. Контрольная работа, ее характеристика
  6. T-FACTORY HRM - управление персоналом и работами
  7. V. САМОСТОЯТЕЛЬНАЯ РАБОТА
  8. V. САМОСТОЯТЕЛЬНАЯ РАБОТА СТУДЕНТОВ
  9. V. Самостоятельная работа студентов с больными.
  10. V2: Работа и энергия
  11. Window - работа с окнами.
  12. А) Образовательные технологии, используемые в аудиторных занятиях

Пример 2. Наколбасном заводе для приготовления крупнокусковых полуфабрикатов, вареных колбас, сырокопченых колбас и рубленых полуфабрикатов используют ингредиенты в количестве соответственно 5, 15, 15, 10. Для обеспечения процесса используется сырье из трёх складов, запасы которых составляют 15, 25 и 5 соответственно. Сырье развозится по потребителям (цех крупнокусковых полуфабрикатов (1), сырьевой цех отделения вареных колбас (2), сырьевой цех для отделения сырокопченых колбас (3), цех полуфабрикатов (4)). Транспортные расходы (издержки Pij) при перевозке из складов в цеха приведены в таблице 2.2.


Таблица 2.1

№ варианта Транспортные расходы (издержки Pij) Количество ингредиентов (а) для приготовления продукции Количество видов сырья (b) по складам
со склада № 1 (i 1) со склада №2 (i 2) со склада №3 (i 3)
в цеха (потребителю j)
1 2 3 4 1 2 3 4 1 2 3 4
                          12, 5, 10, 11 9, 15, 15
                          4, 15, 10, 8 21, 14, 2
                          20, 15, 6, 3 10, 16, 18
                          9, 14, 11, 6 10, 15, 25
                          5, 11, 17, 6 12, 4, 13
                          10, 5, 10, 5 16, 6, 8
                          16, 4, 11, 10 8, 13, 10
                          9, 5, 13, 17 20, 11, 13
                          7, 19, 16, 3 15, 10, 20
                          11, 10, 6, 7 10, 18, 6

 

 


Таблица 2.2

Исходный пункт, i Потребитель, j
Цех крупнокусковых полуфабрикатов Сырьевой цех отделения вареных колбас Сырьевой цех для отделения сырокопченых колбас Цех полуфабрикатов
       
Склад № 1          
Склад № 2          
Склад № 3          

Как и в рассмотренной выше задаче распределения ресурсов (практическое задание № 1) транспортная задача является задачей линейного программирования и может быть решена симплекс-методом. В виду специфики транспортной задачи для нее был разработан специальный метод решения – метод потенциалов.

Задание 1 Решение задачи ЛП методом северо-западного угла

Обычно транспортная задача представляется в виде таблицы, где в ячейках помещаются переменные задачи (x ij), а в правом верхнем углу ячейки стоят стоимости перевозки из пункта i в пункт j (Cij). В крайнем правом столбце и нижней строке таблицы записываются числа определяющие ограничения задачи (в данном примере – это количество видов сырья и количество ингредиентов).

Для примера 2 таблица имеет вид (табл. 2.3):

Таблица 2.3

Издержки на перевозку единицы продукции со склада i потребителю j.

Склад, i Потребитель, j
       
                 
X11   X12   X13   X14  
                 
X21   X22   X23   X24  
                 
X31   X32   X33   X34  

Математическая модель задачи.

Переменные задачи. Обозначим количество видов сырья, которые будут перевозиться из склада i в цеха j как X ij (i = 1, 2, 3; j = 1, 2, 3, 4). Это переменные задачи, значения которых должны быть определены в процессе решения. Например, X 23 – это количество видов сырья, которое должно быть перевезено из склада № 2 (пункт 2) в сырьевой цех отделения сырокопченых колбас (пункт 3).

В задаче содержится 3·4=12 переменных.

Ограничения на переменные задачи. Очевидно, что все переменные задачи не отрицательные и целые числа, т.е.

 

Xij 0, (2.1)

 

Xij – целые числа, (2.2)

 

где i = 1, 2, 3; j = 1, 2, 3, 4.

 

Кроме этого, должны быть удовлетворяться следующие условия. Количество видов сырья, вывозимых из склада № 1 равно 15, поэтому:

X11 + X12 + X13 + X14 = = 15. (2.3)

 

Аналогично для склада № 2:

 

X21 + X22 + X23 + X24 = = 25. (2.4)

 

И для склада № 3:

 

X31 + X32 + X33 + X34 = = 5. (2.5)

 

По условию задачи для приготовления крупнокусковых полуфабрикатов (пункт 1) требуется 5 ингредиентов, поэтому:

 

X11 + X21 + X31 = = 5. (2.6)

 

Аналогично, для приготовления вареных колбас (пункт 2):

 

X12 + X22 + X32 = = 15 (2.7)

 

Для приготовления сырокопченых колбас (пункт 3):

 

X13 + X23 + X33 = = 15. (2.8)

 

Для приготовления рубленых полуфабрикатов (пункт 4):

 

X14 + X24 + X34 = = 10. (2.9)

 

Целевая функция. Транспортные расходы на перевозку сырья для приготовления каждого вида продукции вычисляется по формуле:

Z = CijXij = 10X11 + 0X12 + 20X13 +... +18X34. (2.10)

 

Окончательно транспортная задача имеет вид (табл. 2.2). Нужно найти такие значения переменных Xij (i = 1, 2, 3; j = 1, 2, 3, 4) при которых целевая функция, определяемая формулой (2.10), будет иметь минимальное значение и будут выполнены ограничения (2.1) - (2.9):

 

X ij 0, где X ij – целые числа (i = 1, 2, 3; j = 1, 2, 3, 4).

; .

 

; .

;

.

 

Шаг 1. Проверка на сбалансированность.

Общее число запасов на складах 15 + 25 + 5 = 45.

Общая потребность 5 + 15 + 15 + 10 =45.

Задача является сбалансированной (закрытой) [1] (суммы чисел в последнем столбце и нижней строке таблицы равны). Если транспортная задача не сбалансирована, то в таблицу добавляется еще одна строка или столбец. Причем, стоимости перевозки в добавленных ячейках принимают равные нулю.

Шаг 2. Поиск начального решения. Метод северо-западного угла.

Запишем настоящую задачу в виде транспортной таблицы (табл. 2.4). В верхней строке перечислим потребности потребителей по порядку номеров. В левом столбце перечислим имеющиеся запасы на складах. На пересечении j- го столбца и i -й строки будем записывать количество продукции, поставляемое с i- го склада j -му потребителю. Пока начальное решение не найдено, оставим эти клетки пустыми.

Таблица 2.4

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10
а 1 = 15        
а 2 = 25        
а 3 = 5        

Введем вспомогательные строку и столбец, в которых будем отмечать оставшиеся нераспределенные запасы и, соответственно, потребности (остатки). Изначально их содержимое равно исходным запасам и потребностям, так как еще ничего не распределялось. На рисунке они представлены серым цветом.

Выберем клетку, в которую будем распределять продукцию на следующей итерации, это левая верхняя клетка (северо-западный угол). В табл. 2.5, как сама клетка, так и соответствующие ей остатки отображаются жирным курсивом.

Таблица 2.5

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15 Х        
а 2 = 25          
а 3 = 5          
           

Итерация 1.

Заполним клетку a 1, b 1. Сравним значения остатков для склада a 1 и потребителя b 1.

Нераспределенных остатков по потребностям для b 1 меньше (см. табл. 2.5 выше, жирный курсив), запишем меньшее число в клетку a 1, b 1 одновременно вычитая его из обеих клеток остатков (см. табл. 2.6). При этом клетка остатков по потребностям обнулится, указывая, что все потребности для b 1 удовлетворены (см. табл. 2.6). Поэтому исключим столбец b 1 из дальнейшего рассмотрения (темно-серый фон).

Ненулевое значение остатка по запасам для a 1 показывает, сколько единиц продукции осталось на складе не потребленной.

Таблица 2.6

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15   Х      
а 2 = 25          
а 3 = 5          
           

 


Итерация 2.

Заполним клетку a 1, b 2. Сравним значения остатков для склада a 1 и потребителя b 2. Нераспределенных остатков по запасам для a 1 меньше (см. табл. 2.6, жирный курсив), запишем меньшее число в клетку a 1, b 2 одновременно вычитая его из обеих клеток остатков (см. табл. 2.7). При этом клетка остатков по запасам обнулится, указывая, что все запасы со склада a1 использованы (см. табл. 2.7). Поэтому исключим строку a 1 из дальнейшего рассмотрения (темно-серый фон).

Ненулевое значение остатка по потребностям для b 2 показывает, сколько единиц продукции ему еще требуется.

Таблица 2.7

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15         0
а 2 = 25   Х      
а 3 = 5          
  0        

 

Итерация 3.

Таблица 2.8

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15          
а 2 = 25     Х    
а 3 = 5          
           

Итерация 4.

Таблица 2.9

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15          
а 2 = 25       Х  
а 3 = 5          
           

Итерация 5.

Таблица 2.10

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15          
а 2 = 25          
а 3 = 5       Х  
           

Итерация 6.

Таблица 2.11

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10  
а 1 = 15          
а 2 = 25          
а 3 = 5          
           

Получено допустимое начальное решение (опорный план[2]) (см. табл. 2.12), удовлетворенны нужды всех потребителей и использованы все запасы со складов.

Таблица 2.12

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10
а 1 = 15        
а 2 = 25        
а 3 = 5        

Шаг 3. Проверка полученного опорного плана на невырожденность[3].

Количество заполненных клеток N должно удовлетворять условию N = n + (m -1). В нашем случае N = 6, n + m =4 + 3 = 7, что удовлетворяет условию невырожденности плана.

Шаг 4. Расчет общих затрат на перевозку всей продукции.

Запишем транспортную таблицу, в которой совместим найденный опорный план с величинами издержек. В левом верхнем углу каждой клетки будем указывать количество единиц продукции а в правом нижнем затраты на перевозку единицы продукции (табл. 2.13).

Таблица 2.13

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10
а 1 = 15                
  10   0        
а 2 = 25                
      7   9   20
а 3 = 5                
              18

Перемножим числа стоящие в одной клетке (для всех клеток), затем полученные произведения сложим. Получим значение суммарных затрат, для данного начального решения. Pнач=410.

Шаг 5. Проведение поэтапного улучшения начального решения. Метод потенциалов.

Итерация 1.

Составим вспомогательную рабочую матрицу затрат. Она строится из исходной матрицы издержек (см. таблицу 2.13) путем переноса только тех ячеек P ij, которые соответствуют заполненным клеткам транспортной таблицы. Остальные ячейки остаются пустыми. Кроме того, введем вспомогательный столбец, в который внесем значения неизвестных U1... U3 (3, это m - число складов) и вспомогательную строку, в которую внесем значения неизвестных V1... V4 (4, это n - число потребителей). На рисунке они представлены серым цветом заливки. Эти n+m неизвестных должны для всех (i, j), соответствующих загруженым клеткам, удовлетворять линейной системе уравнений

 

U i + V j = P ij (2.11)

 

Эту систему всегда можно решить следующим способом. На первом шаге полагают V4 = 0. Если на k -м шаге найдено значение неизвестной, то в системе всегда имеется еще не определенная неизвестная, которая однозначно может быть найдена на (k +1)-м шаге из уравнения (2.11), так как значение другой неизвестной в этом уравнении уже известно. То, какую неизвестную можно найти на (k +1)-м шаге, определяют методом проб. Переменные Ui и Vj называются симплекс-множителями или потенциалами. Рабочая матрица затрат с рассчитанными потенциалами представлена в табл. 2.14.

Таблица 2.14

  b 1 b 2 b 3 b 4  
а 1         U1 = 13
а 2         U2 = 20
а 3         U3 = 18
  V1 = -3 V2 = -13 V3 = -11 V4 = 0  

Порядок вычисления потенциалов следующий:

1) Пусть V4 = 0;

2) U2 = P2,4 - V4;

3) U3 = P3,4 - V4;

4) V2 = P2,2 - U2;

5) V3 = P2,3 - U2;

6) U1 = P1,2 - V2;

7) V1 = P1,1 - U1;

Теперь для всех свободных клеток рабочей матрицы затрат вычислим оценки Sij, по формуле Sij = Pij – Ui - Vj (курсив). Каждая такая оценка показывает на сколько изменятся общие транспортные затраты при загрузке данной клетки единицей груза. Таким образом, если среди оценок имеются отрицательные (затраты уменьшаются), то данный план можно улучшить переместив в соответствующую клетку некоторое количество продукции. Если же среди оценок нет отрицательных, то план является оптимальным.

Рабочая матрица затрат с заполненными оценками клетками, представлена в табл. 2.15.

Таблица 2.15

  b 1 b 2 b 3 b 4  
а 1     18 -2 u1 = 13
а 2 -5       u2 = 20
а 3 -15 9 9   u3 = 18
  v1 = -3 v2 = -13 v3 = -11 v4 = 0  

Из всех отрицательных оценок имеет смысл выбрать наибольшую по модулю (жирный курсив), так как ее воздействие на общие затраты является максимальными. В нашем случае такая оценка находится в ячейке а 3, b 1 (жирный курсив). В соответствующую ячейку транспортной таблицы необходимо переместить некоторое количество продукции, т.е. загрузить ее. Отметим в транспортной таблице ячейку а 3, b 1 знаком +. Пометим знаками - и + другие занятые числами ячейки таким образом, что в каждой строке и каждом столбце транспортной таблицы число знаков + будет равно числу знаков -. Это всегда можно сделать единственным образом, причем в каждой строке и каждом столбце содержится по одному + и -. То есть, помеченные знаками клетки должны образовывать цикл[4] (табл. 2.16).

Таблица 2.16

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10
а 1 = 15                
  -   +        
а 2 = 25                
      -       +
а 3 = 5                
  +           -

Затем определяем минимум M из всех элементов, помеченных знаком -, и выбираем одну ячейку, где этот минимум достигается. В нашем случае таковой является а 1, b 1 и обозначает загруженную клетку, которая должна стать свободной.

Число M при этом составляет 5.

Переход к новой транспортной таблице разбивается на следующие шаги:

а) в ячейку а 3, b 1 новой таблицы записывается число M;

б) ячейка а 1, b 1 остается пустой;

в) в остальных ячейках, помеченных знаками - или +, число M соответственно вычитается из стоящего в ячейке числа или складывается с ним. Результат вносится в соответствующую ячейку новой таблицы;

г) непомеченные числа переносятся в новую таблицу без изменений. Остальные ячейки новой таблицы остаются пустыми (табл. 2.17).

Таблица 2.17

  b 1 b 2 b 3 b 4
а 1 = 15        
а 2 = 25        
а 3 = 5        

Итерация 2.

Рабочая матрица затрат с пересчитанными потенциалами и оценкам (табл. 2.18).

Таблица 2.18

  b 1 b 2 b 3 b 4  
а 1 15   18 -2 U1 = 13
а 2 10       U2 = 20
а 3   9 9   U3 = 18
  V1 = -18 V2 = -13 V3 = -11 V4 = 0  

Ячейка а 1, b 4, транспортной таблицы, должна загрузиться (табл. 2.19).

Таблица 2.19

  b 1 = 5 b 2 = 15 b 3 = 15 b 4 = 10
а 1 = 15                
      -       +
а 2 = 25                
      +       -
а 3 = 5                
               

Ячейка а 2, b 4 становится свободной. M = 10 (табл. 2.20).


Таблица 2.20

  b 1 b 2 b 3 b 4
а 1 = 15        
а 2 = 25        
а 3 = 5        

Итерация 3.

Рабочая матрица затрат с пересчитанными потенциалами и оценкам (табл. 2.21).

Таблица 2.21

  b 1 b 2 b 3 b 4  
а 1 17   18   U1 = 11
а 2 12     2 U2 = 18
а 3   7 7   U3 = 18
  V1 = -18 V2 = -11 V3 = -9 V4 = 0  

 

В приведенной выше таблице нет отрицательных оценок (план улучшить нельзя), следовательно, достигнуто оптимальное решение (табл. 2.22).

Таблица 2.22

  b 1 = 5 b 2 = 5 b 3 = 5 b 4 = 5
а 1 = 15                
      0       11
а 2 = 25                
      7   9    
а 3 = 5                
  0           18

 

Общие затраты на перевозку всей продукции, для оптимального плана составляют: Pопт= 315.


Задание 2. Решение транспортной задачи в процедуре MS EXCEL «Поиск решения»

1) Ввод данных. Вводим данные таблицы 1 и 2 в ячейки MS EXCEL (рис. 2.1).

В ячейках B3: E5 введены стоимости перевозок (из табл. 2.1).

В ячейках F3: F5 находится число видов сырья. А в ячейках B6: E6 находится число мест на складах. Ячейки B8: E10 – рабочие (изменяемые) ячейки, в которых будут вычисляться значения переменных задачи X ij.

В ячейках F8: F10 нужно записать формулы для вычисления левых частей ограничений (2.3)- (2.5):

в F8 должна быть сумма ячеек B8: E8;

в F9 должна быть сумма ячеек B9: E9;

в F10 должна быть сумма ячеек B10: E10.

Формулы для вычисления левых частей ограничений (2.6)-(2.9) введем в ячейки B11: E11:

в B11 должна быть сумма ячеек B8: B10;

в C11 должна быть сумма ячеек C8: C10;

в D11 должна быть сумма ячеек D8: D10;

в E11 должна быть сумма ячеек E8: E10;

Целевую функцию поместим в ячейку G3:

G3: СУММПРОИЗВ (B3: E5; B8: E10).

Таблица исходных данных имеет вид (рис. 2.1):

 

2) Заполнение окна процедуры «Поиск решения».

целевая функция: G3;

значение целевой функции: min;

изменяемые ячейки: B8: E10;

ограничения задачи:

F8: F10 = F3: F5 (формулы (3)(5))

B11: E11 = B6: E6 (формулы (6)(9))

B8: E10 0 (1) и B8: E10 – целые числа (2).

 

Рис. 2.1.

 

В окне «Параметры» установить «Линейная модель», что соответствует решению задачи симплекс-методом. Результаты заполнения окна на рис. 2.2.

 

Рис. 2.2.

 

3) Выполнив процедуру «Поиск решения» получим следующие результаты (рис. 2.3):

 

Рис. 2.3.

 

Таким образом, со склада №1 (исходный пункт 1) следует 10 видов сырья отвезти в камеру посола мяса (пункт 4) и 5 видов сырья в отделение приготовления кишечной оболочки (пункт назначения 2); из склада № 2 (исходный пункт 2) 10 видов сырья в отделение приготовления кишечной оболочки (пункт назначения 2) и 15 в отделение приготовления искусственной оболочки (пункт назначения 3); из склада № 3 (исходный пункт 3) 5 видов сырья нужно отправить в отделение приготовления рассола (пункт назначения 1). Все эти результаты видны в конечной таблице (рис. 2.3) При этом суммарная стоимость транспортных расходов составит 315 рублей (ячейка G3).

 

 

Контрольные вопросы

 

1. Какая цель стоит в транспортной задаче?

2. В каком виде представляется, как правило, транспортная задача?

3. Как определить количество переменных в транспортной задаче?

4. Что представляет собой целевая функция в транспортной задаче, и как она записывается?

5. Когда транспортная задача является сбалансированной (закрытой) и какие действия предпринимаются, если транспортная задача не сбалансирована?

6. Каким методом осуществляется поиск начального решения транспортной задачи?

7. С какой целью вводятся вспомогательные строки и столбцы при начальном решении транспортной задачи?

8. По какому принципу в таблице выбирается клетка, в которой распределяют продукцию на следующей итерации?

9. Какое значение остатка по запасам для ai показывает, сколько единиц продукции осталось на складе не потребленной?

10. Что является опорным планом задачи? Что значит его невырожденность?

11. Какое табличное условие обеспечивает невыражденность опорного плана?

12. Каким образом записывается транспортная таблица при р асчете общих затрат на перевозку всей продукции?

13. Каким методом проводится поэтапное улучшения начального решения?

14. Какие переменные называются симплекс-множителями или потенциалами?

15. Что показывают оценки S ij, и по какой формуле вычисляются?

16. Когда транспортной таблице достигается оптимальное решение?

17. Почему из всех отрицательных оценок имеет смысл выбрать наибольшую по модулю?

18. Каким образом образовывать цикл? Что показывает цикл?

19. Какие шаги предпринимаются для перехода к новой транспортной таблице?

20. Какая процедура используется в MS EXCEL для решения транспортной задачи?

21. Какую модель необходимо установить при задании параметров в MS EXCEL для обеспечения решения транспортной задачи симплекс-методом?

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.045 сек.)