Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВКР-2010(Поляков).pdf
Скачиваний:
971
Добавлен:
15.05.2015
Размер:
4.39 Mб
Скачать

145

3 Для обеспечения минимальных потерь необходимы 4 носителя 1-го; 16 – 3-го; 10 – 5-го; 8 – 6-го типов. Потери при этом составят 13,2 единиц, в том числе: 1,6 – 1-го; 3,2 - 3-го; 6

5-го; 2,4 – 6 – го типов.

6.2.3Транспортная задача линейного программирования

Транспортная задача ставится следующим образом: имеются m пунктов отправления (ПО) A1, A2,…, Am, в которых сосредоточены запасы однородных грузов в количестве a1, a2,…, am соответственно (рисунок 6.27). Имеется n пунктов назначения (ПН) B1, B2,…, Bn, подавших заявки соответственно на b1, b2,…, bn единиц груза.

Рисунок 6.27 – Схема транспортной задачи

Сумма всех заявок равна сумме всех запасов

m

n

 

ai

bi .

(6.32)

i 1

j 1

 

Известны стоимости cij перевозки единицы груза от каждого ПО Ai до каждого ПН Bj (i = 1, 2, …, m, j = 1, 2, …, n), которые образуют матрицу

146

c11

c12

c1 j

c1n

c21

c22

c2 j

c2n

 

 

 

 

cij

 

 

 

 

 

 

 

или

 

 

(6.33)

ci1

ci 2

cij

cin

 

 

 

 

 

 

cm1 cm2 cmj

cmn

Условия задачи можно представить в виде транспортной таблицы (таблица 6.4).

Требуется составить такой план перевозок, чтобы все заявки были выполнены, а общая стоимость всех перевозок была бы минимальна.

Таблица 6.4 - Транспортная таблица

ПН

B1

B2

Bj

Bn

Запасы ai

ПО

 

 

 

 

 

 

 

 

A1

c11

c12

c1j

c1n

 

a1

A2

c21

c22

c2j

c2n

 

a2

 

Ai

ci1

ci2

cij

cin

 

ai

 

Am

cm1

cm2

cmj

cmn

 

am

 

 

 

 

 

 

 

m

n

Заявки bj

b1

b2

bj

bn

ai

bi

 

 

 

 

 

 

 

i 1

j 1

Обозначим xij – количество единиц груза, отправляемого из i -го ПО Ai в j –й ПН Bj, которые также можно записать в матричной форме

x11

x12

x1 j

x1n

 

 

x21

x22

x2 j

x2n

 

 

 

 

или

 

x

 

(6.34)

 

 

 

 

xij

xin

 

ij

 

 

xi1

xi 2

 

 

 

 

xm1 xm2 xmj

xmn

Матрица xij называется планом перевозок, а сами ве-

личины xij - перевозками.

Числа xij должны удовлетворять следующим условиям: 1 Суммарное количество груза, отправляемого из каждого ПО

во все ПН, должно быть равно запасу груза в данном пункте, т.е.

147

x11 x21

x1n

a1 ,

 

x21 x22

x2n

a2 ,

 

 

 

(6.35)

 

 

 

 

 

 

 

x

m1

x

m2

x

mn

a .

 

 

 

 

m

 

 

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

x11 x21 xm1

b1 ,

 

x12 x22 xm2

b2

 

 

,

(6.36)

 

 

 

 

 

 

x

x

2n

x

mn

b .

 

1n

 

 

n

 

3 Суммарная стоимость всех перевозок (целевая функция) должна быть минимальной

m

n

 

y cij xij min .

(6.37)

i 1

j 1

 

В этой задаче линейного программирования условияравенства (6.35) и (6.36) и минимизируемая целевая функция (6.37). Особенностью этой задачи является то, что все коэффициенты в (6.35) и (6.36) равны единице, что позволяет ре-

шить задачу по методу «северо-западного угла».

Следует отметить, что условия-равенства (6.35) и (6.36) не являются линейно независимыми, так как их правые части связаны условием (6.32). Общее число переменных xij равно m.n , число базисных переменных равно m + n - 1, а число свободных переменных k = mn – (m + n - 1) = (m - 1)(n - 1).

Оптимальное решение достигается в одной из вершин области допустимых планов, в опорной точке, в которой по крайней мере k переменных равны нулю. Следовательно, для оптимального плана, по крайней мере, (m - 1) (n - 1) перевозок должны быть равны нулю (из соответствующего ПО в соответствующий ПН ничего не перевозится).

Любой план перевозок называется допустимым, если он удовлетворяет условиям (6.35) и (6.36) (все заявки удовлетворены, все запасы исчерпаны). Если в допустимом плане отличны от нуля не более m + n – 1 базисных перевозок, а остальные перевозки равны нулю, то такой план называется

148

опорным. План xij будет оптимальным, если он, среди всех

допустимых планов, приводит к минимуму целевой функции. Условия конкретной транспортной задачи (заявки bj; за-

пасы aj), стоимости перевозок cij для m = 4 и n = 5 приведены в транспортной таблице (таблица 6.5).

Таблица 6.5 - Пример транспортной таблицы

ПН

B1

B2

B3

B4

B5

Запасы ai

ПО

 

 

 

 

 

 

A1

13

7

14

7

5

30

A2

11

8

12

6

8

48

A3

6

10

10

8

11

20

A4

14

8

10

10

15

30

Заявки bj

18

27

42

15

26

128=128

Произведем составление опорного плана методом «се- веро-западного угла» (таблица 6.6).

Таблица 6.6 - Пример (исходного) допустимого плана

ПН

B1

B2

 

B3

 

B4

B5

 

Запасы

ПО

 

 

 

ai

 

 

 

 

 

 

 

 

A1

13

7

 

14

 

7

 

5

30

18

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A2

11

8

_

12

+

6

 

8

48

 

15

33

 

 

 

 

 

 

 

 

 

 

 

 

 

A3

6

10

+

10

-

8

 

11

20

 

 

9

 

11

 

 

 

 

 

 

 

 

 

 

 

A4

14

8

 

10

 

10

 

15

30

 

 

 

 

4

 

26

 

 

 

 

 

 

 

 

 

Заявки

18

27

 

42

 

15

26

 

128=128

bj

 

 

 

 

 

 

 

 

 

 

 

 

ПН B1 подал заявку на 18 единиц груза; удовлетворим ее из запасов ПО A1. После этого в нем останется еще 30 – 18 = 12 единиц; отдадим их пункту B2. Но заявка этого пункта еще не удовлетворена; выделим недостающие 15 единиц из запасов пункта A2 и т.д.

Проверим, является ли этот опорный план допустимым. Так как сумма перевозок по строке равна запасу соответствующего пункта отправления, а сумма по столбцу равна заявке соответствующего пункта назначения, то план является допустимым. Все заявки удовлетворены, все запасы израсходованы.

149

В таблице 6.6 проставляются только отличные от нуля перевозки, клетки, соответствующие нулевым перевозкам, оставляем свободными. Проверим, является ли план перевозок опорным. Число свободных клеток с нулевыми перевозками равно 12. Так как (m - 1) (n - 1) = 3 . 4 =12, то план является опорным.

Однако план не является оптимальным, так как стоимость перевозок вообще не учитывалась при составлении плана перевозок. Из анализа плана следует, что его можно улучшить, если произвести перестановку перевозок между клетками таблицы. Например, уменьшить перевозки в «дорогой» клетке (2, 3) со стоимостью 12, но увеличить перевозки в «дешевой» клетке (2, 4) со стоимостью 6. Чтобы план оставался опорным, необходимо одну из свободных клеток (например, (2, 4)) сделать базисной, а одну из базисных – свободной (напри-

мер, (3, 4)). Из анализа цикла (2, 4) → (3, 4) → (3, 3) → (2, 3)

следует, что можно увеличить перевозки в четных и уменьшить в нечетных вершинах цикла не более чем на 11 единиц, иначе перевозки в клетке (3, 4) станут отрицательными.

Общая стоимость перевозок допустимого плана перево-

зок у1 = 18 . 13 + 12 . 7 +15 . 8 + 33 . 12 + 9 . 10 + 11 . 8 + 4 . 10 +

26 . 15 = 1442; общая стоимость улучшенного плана у2 = 18 . 13 + 12 . 7 +15 . 8 + 22 . 12 + 11 . 6 + 20 . 10 + 4 . 10 + 26 . 15 = 1398.

Следовательно, уменьшение стоимости перевозок составило 44 единицы. Пример улучшенного плана представлен таблице 6.7.

Таблица 6.7 - Пример улучшенного плана

ПН

B1

 

B2

B3

 

B4

 

B5

Запасы ai

ПО

 

 

 

 

 

 

 

 

 

 

 

 

A1

13

-

7

14

 

7

+

5

30

18

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A2

11

+

8

12

-

6

 

8

48

 

15

 

22

11

 

 

 

 

 

 

 

 

 

 

A3

6

 

10

10

 

8

 

11

20

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

A4

14

 

8

10

+

10

-

15

30

 

 

 

 

4

 

26

 

 

 

 

 

 

 

 

 

Заявки bj

18

 

27

42

 

15

 

26

128=128

 

 

 

 

 

 

 

 

 

 

Принято, что считать стоимость в вершине цикла со знаком плюс, если перевозки в ней увеличиваются, и со зна-

150

ком минус, если перевозки уменьшаются. Алгебраическая сумма стоимостей в вершинах цикла называется ценой цикла. Если она отрицательная, то возможно уменьшение стоимости перевозок. Для исследуемого цикла его цена равна 6 – 8 + 10 – 12 = - 4, т.е. при переносе одной единицы груза стоимость перевозок уменьшается на 4 единицы. Сущность оптимизации плана перевозок заключается в том, чтобы переносить перевозки по циклам, имеющим отрицательную цену.

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

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

ток: (1, 5) → (4, 5) → (4, 4) → (2, 4) → (2, 2) → (1, 2) → (1, 5).

Цена 5 – 15 + 10 – 6 + 8 – 7 = - 5. Так как цена цикла отрицательна, то переброска по этому циклу приведет к снижению стоимости. Максимальный размер (объем) перемещаемой перевозки определяется наименьшей перевозкой, стоящей в отрицательной вершине цикла. В данном случае 11 единиц (клетка (2, 4)). Следовательно, за счет переброски перевозок по данному циклу можно достичь снижения стоимости на 5 . 11 = 55 единиц. Вид оптимального плана перевозок после этой перевозки представлен таблице 6.8.

Таблица 6.8 - Оптимальный план

ПН

B1

B2

B3

B4

B5

Запасы ai

ПО

 

 

 

 

 

 

A1

13

7

14

7

5

30

18

1

 

 

11

 

 

 

 

A2

11

8

12

6

8

48

 

26

22

 

 

 

 

 

 

 

A3

6

10

10

8

11

20

 

 

20

 

 

 

 

 

 

 

 

A4

14

8

10

10

15

30

 

 

 

15

15

 

 

 

 

 

Заявки bj

18

27

42

15

26

128=128

 

 

 

 

 

 

 

В теории линейного программирования существуют способы, позволяющие автоматически, без поисков и раз-