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

782

.pdf
Скачиваний:
0
Добавлен:
16.06.2024
Размер:
725.37 Кб
Скачать

2.3. Открытая модель транспортной задачи

При рассмотрении открытой модели транспортной задачи исследователь может столкнуться с двумя случаями:

m

n

1) суммарное предложение больше суммарного спроса ai bj ;

i 1

j 1

m

n

2)суммарное предложение меньше суммарного спроса ai bj .

i 1 j 1

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

системы ограничений.

 

 

 

Требуется

найти

минимальное

значение линейной функции

m n

 

 

 

 

Z Cij xij

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

 

 

i 1 j 1

 

 

 

 

 

 

n

i 1,2, ,m,

 

 

xij ai ,

 

j 1

 

(случай 1)

 

 

 

 

 

m

j 1,2, ,n;

 

xij bj ,

 

i 1

 

 

 

 

n

i 1,2, ,m,

 

xij ai ,

 

j 1

 

(случай 2)

 

 

 

 

 

m

j 1,2, ,n;

 

xij bj ,

 

i 1

 

 

 

xij 0 i 1,2, ,m;

j 1,2, ,n .

Открытая модель решается приведением к закрытой модели.

В первом случае вводят фиктивного (n 1) -го потребителя, спрос кото-

m

n

рого bn 1 ai bj , а тариф на перевозку этому потребителю от всех по-

i 1

j 1

ставщиков равен нулю Cin 1 0, i 1,2, ,m . Неравенство первой системы

m n 1

переходит в равенство ai bj .

i 1 j 1

Во втором случае вводят фиктивного (m 1) -го поставщика, предложе-

n

m

ние которого am 1 bj ai , тариф на перевозку от этого поставщика

j 1

i 1

51

всем потребителям равен нулю

Cm 1 j 0,

j 1,2, ,n .

Неравенство си-

 

 

 

m 1

n

 

 

 

стемы (2) переходит в равенство ai bj .

 

 

 

 

 

 

i 1

j 1

 

 

 

Пример 5. Найти оптимальное распределение поставок при следующих

исходных данных (табл. 2.12).

 

 

Таблица 2 . 1 2

 

 

 

 

 

 

Исходные данные

 

 

bj

45

 

35

 

55

 

65

ai

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

4

 

 

1

 

3

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

60

2

 

 

2

 

3

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

90

4

 

 

3

 

5

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

Суммарное предложение: ai 40 60 90 190 , суммарный спрос:

i 1

4

bj 45 35 55 65 200 , поэтому введем фиктивного поставщика

j1

сзапасами 200 – 190 10 . Исходную таблицу дополняем еще одной строкой

(табл. 2.13).

Найдем опорный план методом аппроксимации Фогеля (табл. 2.14). Наибольшая разность соответствует столбцам 3 и 4. Выберем, например, третийстолбец. Внемминимальныйтарифзаписанвчетвертойстроке. Заполним клетку (4.3). Четвертая строка закрыта. Снова найдем разности междуоставшимисядвумяминимальнымитарифами. Наибольшаяразность соответствует первому и четвертому столбцам и первой строке. Выбираем

первую строку.

Минимальный тариф в этой строке записан в клетку (1.2), заполним ее. Второй столбец закрыт. Продолжая итерационный процесс, выбираем первый столбец. Заполняем клетку (2.1). Первый столбец закрыт. Далее выбираем вторую строку и заполняем клетку (2.3). Потом заполняем клетки (1.3), (3.3) и (3.4) в указанном порядке.

Количество заполненных клеток соответствует норме 4 4 1 7 .

52

Таблица 2 . 1 3

Исходная таблица

bj

45

35

55

65

ai

 

 

 

 

 

 

 

 

 

40

4

1

3

5

 

 

 

 

 

 

 

 

 

60

2

2

3

7

 

 

 

 

 

 

 

 

 

90

4

3

5

3

 

 

 

 

 

 

 

 

 

10

0

0

0

0

 

 

 

 

 

 

 

 

 

ai

40

60

90

10

Разности по столбцам

Таблица 2 . 1 4 Опорный план методом аппроксимации Фогеля

bj

45

35

55

65

 

Разности по строкам

 

 

 

4

1

3

 

5

2

 

2

 

1

 

2

 

 

 

 

 

 

 

35

5

 

 

 

 

 

 

2

2

3

 

7

0

 

0

 

1

 

4

 

45

 

15

 

 

 

 

 

 

4

3

5

 

3

0

 

0

 

1

 

2

 

 

 

25

65

 

 

 

 

 

0

0

0

 

0

0

 

 

 

 

 

 

10

 

 

 

 

 

 

2

1

3

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

1

0

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

0

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

53

Проверим найденный опорный план на оптимальность методом потенциалов:

1. Построим систему потенциалов:

u1 v2 1,

 

u1 0 , v2 1,

u1 v3 3 ,

 

v3 3 ,

u2 v1 2 ,

 

u2 0 , v1 2 ,

u2 v3 3,

 

u3 2 , v4 1,

u3 v3 5 ,

 

u4 3,

u3 v4

3,

 

 

u4 v3

0 .

 

 

2. Для свободных клеток:

u1 v1 0 2 2 4 , u1 v4 0 1 1 5 , u2 v2 0 1 1 2 , u2 v4 0 1 1 7 , u3 v1 2 2 4 4 , u3 v2 2 1 3 3, u4 v1 3 2 1 0 , u4 v2 3 1 2 0 , u4 v4 3 1 2 0 .

Найденный опорный план является оптимальным:

0 35 5 0 X 45 0 15 0 .

0 0 2565

При оптимальном распределении третий потребитель недополучит 10 ед. груза, и минимальное значение целевой функции составит

Zmin 35 1 5 3 45 2 15 3 25 5 65 3 505 .

Оптимальноераспределениенеявляетсяединственным, таккакдлясвободных клеток имеются равенства.

Пример 6. Найти оптимальное распределение поставок при следующих исходных данных (табл. 19).

54

Таблица 2 . 1 5

Исходные данные

bj

55

45

125

55

ai

 

 

 

 

 

 

 

 

 

150

2

4

6

7

 

 

 

 

 

 

 

 

 

70

4

4

5

2

 

 

 

 

 

 

 

 

 

80

5

9

3

2

 

 

 

 

 

 

 

 

 

3

Суммарное предложение: ai 150 70 80 300 , суммарный спрос:

i 1

4

bj 55 45 125 55 280 , поэтому введем фиктивного потребителя со

j 1

спросом 300 – 280 20 . Исходную таблицу дополняем еще одним столбцом

(табл. 2.16).

Таблица 2 . 1 6

Исходная таблица

ai

bj

55

45

125

55

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

150

 

2

4

6

7

0

 

55

45

30

 

20

 

 

 

 

 

 

 

70

 

4

4

5

2

0

 

 

 

15

55

 

 

 

 

 

 

 

 

80

 

5

9

3

2

0

 

 

 

80

 

 

 

 

 

 

 

 

 

Найдем начальный опорный план методом минимальной стоимости. За-

полняем клетки (1.1), (2.4), (3.3), (1.2), (2.3), (1.3) и (1.5) в указанной после-

довательности.

Проверим на оптимальность методом потенциалов. 1. Построим систему потенциалов:

u1 v1 2 ,

u1 0 ,

v1 2 ,

u1 v2 4 ,

v2 4 ,

u1 v3 6 ,

v3 6 ,

 

55

u1 v5 0 ,

 

v5 0 ,

u2 v3 5,

 

u2 1,

u2 v4 2 ,

 

v4 3,

u3 v3 0 ,

 

u3 3.

2. Для свободных клеток: u1 v4 0 3 3 7 ,

u2 v1 1 2 1 4 , u2 v2 1 4 3 4, u2 v5 1 0 1 0 , u3 v1 3 2 1 5 , u3 v2 3 4 1 9 , u3 v4 3 3 0 2 , u3 v5 3 0 3 0 .

Найденный опорный план является оптимальным:

5545 30 0

X0 0 15 55 .0 0 80 0

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

Zmin 55 2 45 4 30 6 15 5 55 2 80 3 895.

2.4. Вырождение в транспортных задачах

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

Рассмотрим, какэтопроявляетсявходерешенияконкретнойтранспортной задачи.

Пример 7. Решить транспортную задачу, данные которой приведены в табл. 2.17.

4

3

Так как ai bj 40 60 100 20 80 20 120 , то модель задачи

i 1

j 1

закрытая.

Первоначальное распределение поставок выполним по методу северозападного угла (табл. 2.18).

В табл. 2.18 баланс по строкам и по столбцам соблюден и первоначальное распределение поставок закончено.

56

 

Исходные данные

Таблица 2 . 1 7

 

 

 

bj

80

20

 

120

ai

 

 

 

 

 

 

 

 

 

 

40

6

9

 

10

 

 

 

 

 

 

 

 

 

60

2

5

 

7

 

 

 

 

 

 

 

 

 

100

3

6

 

8

 

 

 

 

 

 

 

 

 

20

7

1

 

5

 

 

 

 

 

 

 

 

 

Таблица 2 . 1 8 Первоначальное распределение поставок по методу северо-западного угла

ai

bj

80

20

 

 

120

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

6

 

9

 

 

10

 

40

 

 

 

 

 

 

 

 

 

 

 

 

 

60

 

2

 

5

 

 

7

 

40

20

 

 

 

 

 

 

 

 

 

 

 

 

100

 

3

0

6

+

100

8

 

 

 

 

 

 

 

 

20

 

7

 

1

 

20

5

 

 

 

+

 

 

 

 

 

 

 

 

 

Число заполненных клеток должно равняться 4 3 – 1 6 , а в табл. 22 заполненных клеток только 5.

Для устранения вырожденности дополним количество занятых клеток до т п – 1, вводянулевыеперевозки. Вданнойзадаченужноввеститолько одну клетку.

При распределении поставок в табл. 2.18 произошло нарушение ступенчатости, которая характерна для распределения поставок по методу северозападного угла. Запись нулевой поставки в клетку (3.2) или клетку (2.3) восстанавливает эту ступенчатость. Выбираем клетку (3.2), так как в ней тариф меньше, чем в клетке (2.3).

57

Проверим опорный план на оптимальность, построив систему потенциалов:

u1 v1 6 ,

 

u1 0 , v1 6 ,

u2 v1 2 ,

 

u2 4,

u2 v2 5 ,

 

v2 9 ,

u3 v2 6 ,

u3 3,

 

u3 v3 8 ,

 

v3 11,

u4 v3 5.

 

u4 6,

и для свободных клеток определив значения:

u1 v2 0 9 9 9 , u1 v3 0 11 11 10 , u2 v3 4 11 7 7 , u3 v1 3 6 3 3, u4 v1 6 6 0 7 , u4 v2 6 9 3 1.

Далее осуществим выбор клетки, в которую необходимо послать пере-

возку: 13 11 – 10 1, 42 3 – 1 2 , max{ 13; 42} 2 , следовательно, заполняем клетку (4.2). Цикл будет содержать клетки (4.2), (3.2), (3.3), (4.4).

Чтобы не нарушать принятого алгоритма решения задачи, передвинем в цикле для клетки (4.2) нулевую поставку, клетка (3.2) стоит свободной, поставки в клетках (3.3) и (4.3) сохранятся. Новое распределение поставок записано в табл. 2.19.

 

 

Новое распределение поставок

Таблица 2 . 1 9

 

 

 

 

 

ai

bj

80

 

 

 

20

 

 

120

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

40

 

6

 

9

 

 

10

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

60

 

 

 

2

 

5

 

 

7

 

40

+

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

 

3

 

6

 

 

8

 

 

 

 

 

 

 

 

100

 

 

 

 

 

 

 

 

 

 

20

 

 

 

7

 

1

 

 

5

 

 

 

 

+

0

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

58

Проверим опорный план на оптимальность, построив систему потенциалов:

u1 v1 6 ,

 

u1 0 , v1 6 ,

u2 v1 2 ,

 

u2 4,

u2 v2 5 ,

 

v2 9 ,

u3 v3 8 ,

 

u3 5

u4 v2 1,

 

u4 8,

u4 v3 5.

 

v3 13,

и для свободных клеток определив значения:

u1 v2 0 9 9 9 , u1 v3 0 13 13 10 , u2 v3 4 13 9 7 , u3 v1 5 6 1 3, u3 v2 5 9 4 6 , u4 v1 8 6 2 7 .

Далее осуществим выбор клетки, в которую необходимо послать пере-

возку: 13 13 – 10 3 , 23 9 – 7 2 , max{ 13; 23} 3. Заполняем клетку

(1.3). Цикл будет содержать клетки (1.3), (1.1), (2.1), (2.2), (4.2), (4.3), min 40;20;20 20. Получаем следующую таблицу (табл. 2.20).

 

 

 

 

Таблица 2 . 2 0

 

 

Новое распределение поставок

 

ai

bj

80

 

20

 

120

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

 

6

9

 

10

 

20

 

+

20

 

 

 

 

 

60

 

60

2

5

 

7

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

3

6

 

8

 

 

+

 

100

 

 

 

 

 

 

 

20

 

 

7

1

 

5

 

 

 

20

 

 

 

 

 

 

 

 

 

Выстраиваем систему потенциалов для проверки опорного план на оптимальность:

u1 v1 6 ,

u1 0 , v1 6 ,

u1 v3 10 ,

v3 10 ,

59

u2 v1 2 ,

 

u2 4,

u3 v3 8 ,

u3 2 ,

 

u4 v2 1,

 

v2 6 ,

u4 v3 5.

 

u4 5;

для свободных клеток:

 

 

u1 v2 0 6 6 9 , u2 v2 4 6 2 5 , u2 v3 4 10 6 7 , u3 v1 2 6 4 3, u3 v2 2 6 4 6, u4 v1 5 6 1 7 .

Таким образом, клетка, в которую необходимо послать перевозку:

31 1. Заполнимклетку(3.1). Циклбудетсодержатьклетки(3.1), (1.1), (1.3)

и(3.3), min 20;100 20 . Новое распределение поставок представлено в

табл. 2.21.

 

 

 

 

 

 

 

Новое распределение поставок

Таблица 2 . 2 1

 

 

 

 

 

 

 

 

 

 

ai

 

 

bj

 

 

 

80

20

 

120

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

 

 

 

6

9

 

10

 

 

 

 

 

 

 

 

 

 

40

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

60

 

 

 

 

2

5

 

7

 

 

 

 

 

 

 

60

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

 

 

3

6

 

8

 

 

 

 

 

 

 

20

 

 

80

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

 

7

1

 

5

 

 

 

 

 

 

 

 

20

 

0

 

 

 

 

 

 

Выстраиваем систему потенциалов для проверки опорного план на оп-

тимальность:

 

 

 

 

 

 

 

 

 

u1 v3 10 ,

u1 0 , v3 10 ,

 

 

 

 

u2 v1 2 ,

u2 3,

 

 

 

 

 

u3 v1 3 ,

v1 5 ,

 

 

 

 

 

u

3

v 8 ,

u

3

2 ,

 

 

 

 

 

3

 

 

 

 

 

 

 

u4 v2 1,

v2 6 ,

 

 

 

 

 

u4 v3 5.

u4 5;

 

 

 

 

60

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]