Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭММ (ОЗО) новое.doc
Скачиваний:
17
Добавлен:
29.04.2019
Размер:
4.12 Mб
Скачать

1. 3. Транспортная задача Классическая транспортная задача

В исследовании операций под транспортной задачей обычно понимают задачу выбора плана перевозок некоторого товара (изделий, груза) от m источников (пунктов произ­водства, поставщиков) к n стокам, (станциям назначения, пунктам сбыта), обеспечивающего минимальные транспортные затраты. При этом предполагают, что: а) мощность i-го источника (объем поставок товара от i-го источника) равна ; б) мощность j-го стока (объем поставок товара к j - му стоку) равна ; в) стоимость пере­возки единицы товара (в условных денежных единицах) от i-го источника к j-му стоку равна сij; г) суммарная мощность всех источников равна суммарной мощности всех стоков (условие закрытости транспортной задачи), т.е.

(1)

Считаем .

Для математического описания транспортной задачи вво­дят переменные xij, обозначающие объемы поставок товара от i-го источника к j-му стоку. В этом случае xi1+xi2+…+xin— общий объем поставок товара от i-го источника, т.е. мощ­ность этого источника; x1j+x2j+…+xmj — общий объем поставок товара к j-му стоку, т.е. мощность этого стока;

c11x11+c12x12+…+cmnxmn-суммарная стоимость перевозок товара от источников к стокам. С учетом этого рассматрива­емая задача может быть представлена в следующем виде:

(2)

Таким образом, классическую транспортную задачу (1)-(2) можно представить в виде так называемой транспортной таблицы (табл. 1).

Таблица.1

Пункт

производства

Пункт потребителя

1

j

n

Поставки

1

i

m

x11/ c11

xi1/ ci1

xm1/ сm1

x1j /c1j

xij /cij

xmjmj

x1n /c1n

xin/ cin

xmnmn

S1

Si

Sm

Спрос

D1

Dj

Dn

Симплексный метод решения задач транспортного типа (метод потенциалов)

Любое допустимое базисное решение классической транспортной задачи будет содержать n + m— 1 базисных переменных.

Легко показать, что задача линейного программирования, двойственная классической транспортной задаче состоит в максимизации целевой функции

(3)

при ограничениях

(4)

где переменные ui, , и vj, , не ограничены в знаке (будем называть их потенциалами).

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

Следуя правилу северо-западного угла, полагаем

Если x11=S1, то выделяем первую строку транспортной таблицы (возможности первого источника полностью исчерпаны и ) и заменяем d1 на D1-S1. Полученная транспортная таблица соответствует классической транспортной задаче c m-1 источником и n стоками. Следовательно, процедуру нахождения начального базисного решения можно повторить, определив значение переменного модели x21 расположенного в северо-западном углу новой транспортной таблицы, и т.д.

Понятно, что если x11 = D1, то нужно выделить первый столбец транспортной таблицы (возможности первого стока полностью исчерпаны и ) и заменить S1 на S1 — D1. В этом случае полученная транспортная таблица соответствует классической транспортной задаче с m источниками и n-1 стоками, а в ее северо-западном углу расположено переменное модели x12.

Если S1 = D1, то можно выделить либо только первую строку исходной транспортной таблицы, либо только ее первый столбец. Так, если выделить первую строку, то S1 + D1= 0 и на следующем шаге переменное модели х21 становится базисным и принимает нулевое значение. Поэтому на втором шаге выделяем первый столбец. Если сначала выделить первый столбец, то S1 - D1= 0, на следующем шаге переменное модели х12 становится базисным и принимает нулевое значение. Поэтому на втором шаге выделяем первую строку.

Задача 1. Пусть классическая транспортная задача, для которой необходимо найти начальное базисное решение представлена своей транспортной таблицей (табл. 2). В эту таблицу включены только значения сij, i=1,2,3, . В процессе нахождения начального базисного решения в транспортной таблице будем проставлять значения только базисных переменных. Это позволит различать нулевые значения базисных переменных начального решения и значения свободных переменных, которые равны нулю всегда.

Таблица 2

Источник

Сток

Поставки

1

2

3

4

1

2

3

с11

с21 с31

с12

с22

с32

с13

с23

с33

с14

с24

с34

10

5

15

Спрос

5

10

8

7

В данном случае 10 = S1> D1= 5. Поэтому по правилу северо-западного угла полагаем x11=D1=5, в табл.2 выделяем первый столбец, фиксируя тем самым, что все остальные переменные этого столбца (x21 и x31) являются свободными и, как следствие, равными нулю. Проставляя x11 = 5 и заменяя S1 на S1 – D1, приходим к табл.3

Таблица 3

Источник

Сток

Поставки

1

2

3

4

1

2

3

5 / с11

с21

с31

с12

с22

с32

с13

с23

с33

с14

с24

с34

5=10-5

5

15

Спрос

0=5-5

10

8

7

В северо-западном углу незаштрихованной части табл. 3 находится переменное х12 и 10 = D2>S1= 5. Поэтому полагаем x12= S1= 5, в табл. 8 заштриховываем первую строку и после замены D2 на D2 –D1 = 5 приходим к табл.4

Таблица 4

Источник

Сток

Поставки

1

2

3

4

1

2

3

5/с11

с21

с31

5 /с12

с13

с14

0=5-5

с22

с32

с23

с33

с24

с34

5

15

Спрос

0

5=10-5

8

7

В северо-западном углу незаштрихованной части табл. 4 находится переменное x22 и S2=5=D2. Таким образом, можно найти два начальных базисных решения, в первом из которых x22=D2 = 5 и заштриховывается второй столбец в табл. 4, а во втором x22=S2=5 и в табл. 4 заштриховывается вторая строка. Воспользуемся первым из возможных вариантов и, заменив S2 на S2-D2, приходим к табл. 5

Таблица 5

Источник

Сток

Поставки

1

2

3

4

1

2

3

5/с11

с21

с31

5/с12

5/с22

с32

с13

с14

0

0=5-5

15

с23

с33

c24

с34

Спрос

0

0=5-5

8

7

В северо-западном углу незаштрихованной части табл. 5 находится переменное модели x23 и 0 = S2<D3 = 8. Поэтому полагаем x23=S2=0 и в табл. 5 заштриховываем вторую строку и после замены D3 на D3-S2= 8 приходим к табл.6

Таблица 6

Источник

Сток

Поставки

1

2

3

4

1

2

3

5/с11

с21

с31

5/ с12

5/с22

с32

с13

0/с23

с14

с24

0

0=0-0

15

с33

с34

Спрос

0

0

8=8-0

7

Табл. 6 содержит единственную незаштрихованную строку и из нее непосредственно следует, что x33=8 и x34=7. А та как значения свободных переменных равны нулю, то найден. начальное базисное решение, определяемое следующими значениями базисных переменных: x11=5, x12=5, x22=5, x23=0, x33=8, x34=7.

Кроме правила северо-западного угла разработаны и другие процедуры нахождения начального базисного решения для классической транспортной задачи. Остановимся лишь на одной из них, известной в исследовании операций как метод минимальной стоимости. Единственное отличие этого метода от метода северо-западного угла заключается в том, что при его реализации используют переменное xij, которому соответствует минимальная удельная стоимость cij, а не переменное модели, расположенное в северо-западном углу транспортной таблицы.

Задача 2. Пусть классическая транспортная задача, для которой необходимо найти начальное базисное решение, представлена своей транспортной таблицей (табл.7).

Минимальной удельной стоимости c22=0 соответствует переменное модели x22. А так как в данном случае 1 = S2<D2 = 5, то полагаем x22=1, заменяем D2 на, D2- S2=4 и после штриховки второй строки приходим к табл.8.

Таблица 7

Источник

Сток

Поставки

1

2

3

4

1

2

3

x11/ 2

x21 /1

x31 /5

x12 /3

x22 /0

x32 /8

x13/11

x23/ 6

x33/15

x14/ 7

x24/ 1

x34 /9

6

1

10

Спрос

7

5

3

2

Таблица 8

Источник

Сток

Поставки

1

2

3

4

1

2

3

x11/ 2

x12/ 3

x13/11

x14/ 7

6

0=1-1

10

x21 /1

1 / 0

x23/6

x24/ 1

x31 /5

x32 /8

x33/15

x34 /9

Спрос

7

4=5-1

3

2

В незаштрихованной части табл. 8 минимальной удельной стоимости c11=2 соответствует переменное x11. В данном случае 6 = S1<D1=7. Поэтому полагаем x11=6, заменяем D1 на D1-S1=1 и после штриховки первой строки приходим к табл.9.

Табл. 9 представляет собой транспортную таблицу с одной незаштрихованной строкой. Поэтому x31=1, x32=4, x33=3, x34=2.

Таким образом, начальное базисное решение рассматрива­емой классической транспортной задачи определяется следую­щими значениями переменных: x11=6, x22=1, x31=1, x32=4, x33=3, x34=2.

Таблица 9

Источник

Сток

Поставки

1

2

3

4

1

2

3

6/ 2

x21 /1

x12/ 3

1/ 0

x13/11

x23/ 6

x14/ 7

x24/ 1

0=6-6

0

10

x31 /5

x32 /8

x33/15

x34 /9

Спрос

1=7-6

4

3

2

Условимся называть систему линейных алгебраических уравнений треугольной, если она содержит по крайней мере одно уравнение с единственным неизвестным, при исключении которого опять найдется по крайней мере одно уравнение с единственным неизвестным, и так далее, пока не будут исчерпаны все неизвестные.

Теорема. Все допустимые базисные решения классической транспортной задачи задаются треугольной системой линейных алгебраических уравнений.

Множество , пар индексов (i, j), соответствующих базисным переменным, содержит m+n-1 элементов, и можно по­казать, что система m + n — 1 линейных уравнений

(5)

всегда разрешима относительно m + n неизвестных ui, , и . При ее решении, как правило, независимому неизвестному придают нулевое значение.

Решив систему линейных алгебраических уравнений (5) и определив значения симплекс-множителей, можно найти значения для коэффициентов при свободных переменных в левой части равенства (6). Уменьшить значение целевой функции, соответствующей исходному допустимому базисному решению, можно путем введения в базис рассматриваемой задачи линейного программирования лишь того свободного переменного xij, для которого dij<0, где

(6)

При этом естественно выбирать то свободное переменное, для которого отрицательный коэффициент будет наибольшим по модулю. Если же коэффициенты при всех свободных переменных будут неотрицательными, то уменьшить значение целевой функции невозможно и исходное допустимое базисное решение является оптимальным решением.

Задача 3. Продолжим рассмотрение классической транспортной задачи, начатое в задаче 2. Для этой задачи найдено начальное допустимое базисное решение, характеризуемое значениями базисных переменных модели x11=6, x22=1, x31=1, x32=4, x33=3, x34=2 и значением целевой функции

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

и находим симплекс-множители в предположении, что u3= 0:

Используя полученные значения симплекс-множителей и известные удельные стоимости {сij}, представленные в табл. 12 вычисляем коэффициенты при свободных переменных согласно (6):

В новое допустимое базисное решение удобно ввести свободное переменное x12, так как |d12| = max{|d12|, |d13|, |d23|}.

Теперь необходимо найти то базисное переменное, которое должно быть выведено из базиса. В симплекс-методе реализация этого шага связана с условием допустимости выбора. Для уяснения идеи, используемой в симплексном методе при определении базисного переменного, выводимого из базиса, предположим, что при введении в базис свободного переменного x12 оно примет значение >0. В этом случае для сохранения ограничения по первой строке транспортной таблицы значение базисного переменного x11 должно уменьшиться на , т.е. x11=6—. Но тогда для сохранения ограничения по первому столбцу транспортной таблицы значение базисного переменного x31 должно увеличиться на , т.е. x31=1 +. В этом случае для сохранения ограничений по третьей строке и второму столбцу транспортной таблицы значение базисного переменного x32 должно уменьшиться на ш, т.е. x32=4—. Схема проведенных рассуждений представлена в табл. 10 в которой опущены значения сij

Таблица 10

Источник

Сток

Поставки

1

2

3

4

1

2

3

6-

1+

4-

6

1

10

Спрос

7

5

3

2


С ростом x12=>0 базисные переменные x11=6— и x32=4— будут уменьшаться. Следовательно, максималь­но возможное значение x12 равно 4, так как при этом значении  базисное переменное x32 принимает нулевое значение. При дальнейшем увеличении значений  базисное переменное x32 становится отрицательным, что противоречит требованию неотрицательности переменных. Следовательно, значение нового базисного переменного x12 равно 4, а переменное x32 должно быть выведено из базиса.

Необходимость введения нового базисного переменного со значением >0 приводит к построению так называемого цикла транспортной таблицы. В табл. 10 цикл предста­влен направленными звеньями замкнутой ломаной , начало и конец которой находятся в клетке, соответствующей вводимому в базис переменному модели x12. Такой цикл транспортной таблицы существует и определяется однозначно для любого переменного, вводимого в базис.

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

Задача 4. Вернемся к рассмотрению классической транспортной задачи, начатому в задачах 2, 3.

Новое допустимое базисное решение характеризуется значениями x11=2, x12=4, x22 = 1, x31=5, x33=3, x34=2 базисных переменных модели и значением целевой функции . На этом первая итерация симплексного метода завершена.

На второй итерации система линейных алгебраических уравнений (5) для нахождения симплекс-множителей имеет следующий вид:

а ее решением являются значения

Используя полученные значения симплекс-множителей и известные удельные стоимости cij вычисляем коэффициенты для небазисных переменных согласно (6):

В новое допустимое базисное решение целесообразно ввести свободное переменное x23, так как |d23|=max{|d13|, |d23|, |d24|}. Для определения базисного переменного, которое необходимо вывести из базиса, воспользуемся циклом транспортной таблицы (табл. 11). Сравнив базисные переменные, из которых вычитается , находим наименьшее из них: x22=1-. Таким образом, =1, перемен­ное x22 должно быть выведено из базиса, а новое допустимое базисное решение характеризуется значениями базисных пере­менных x11=1, x12=5, x23=1,

x3l=6, x33=2, x34=2 и значе­нием целевой функции

.

Вторая итерация симплексного метода завершена.

Таблица 11

Источ-

ник

Сток

Поставки

1

2

3

4

1

2

3

2-

5+

4+

1-

3-

6

1

10

Спрос

7

5

3

2


На третьей итерации система линейных алгебраических уравнений (5)для нахождения симплекс-множителей имеет следующий

вид :

Из этой системы находим

Используя полученные значения симплекс-множителей и известные удельные стоимости сij, вычисляем коэффициенты для свободных переменных согласно (6):

На третьей итерации отрицательную оценку имеет единственное свободное переменное x13, которое и вводим в базис. Для определения базисного переменного, которое необходимо вывести из базиса, воспользуемся циклом транспортной таблицы представленным в табл. 12. Сравнив базисные переменные, из которых вычитается , находим наи­меньшее из них: x11=1-. Таким образом, =1, переменное x11 должно быть выведено из базиса, а новое допустимое базис­ное решение характеризуется значениями базисных перемен­ных x12=5, x13=1, x23=1, x31=7, x33=1, x34 =2 и значением целевой функции .

Таблица 12

Источник

Сток

Поставки

1

2

3

4

1

2

3

1-

6+

2-

6

1

10

Спрос

7

5

3

2


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

Из нее находим

Используя полученные значения симплекс-множителей и извест­ные удельные стоимости сij, вычисляем коэффициенты для не­базисных переменных согласно (6):

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

Если транспортная задача открыта, то она сводится к закрытой введением ложного поставщика или потребителя, которому присваивается разностная мощность, а стоимости перевозки единицы груза приравниваются 0.