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

Экономические задачи линейного программирования и их решение с испол

..pdf
Скачиваний:
14
Добавлен:
15.11.2022
Размер:
2.4 Mб
Скачать

Метод «северо-западного угла». Метод «северо-западного уг-

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

Составим распределительную таблицу – это транспортная таблица (табл. 1.10) без плана поставок. Начинаем ее заполнение с левого верхнего (северо-западного) угла. При заполнении двигаемся по строке вправо и по столбцу вниз. В клетку, находящуюся на пересечении первой строки и первого столбца, помещаем максимально возможное число единиц продукции, разрешенное ограничениями на предложение и спрос: x11 min(a1 ,b1) .

Если a1 b1 , то x11 a1 . Первую строку вычеркиваем (весь

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

x21 min(a2 , b1 a1 ).

 

Если b1 a1 a2 , то

x21 b1 a1 . Спрос первого потребителя

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

Пример 1. Составить план перевозки груза из четырех пунктов отправления Аi, в которых запас продукции составляет ai, в четыре пункта назначения Вj, в которых потребность составляет bj. Затраты на перевозку единицы груза равны cij. Исходные данные задачи приведены в табл. 1.10.

51

 

 

 

 

 

 

 

 

Таблица 1.10

 

 

 

 

 

 

 

 

 

Поставщики

 

 

Тарифы (cij)

 

Запас груза ai

 

 

потребителей

 

 

 

B1

B2

B3

 

B4

 

 

A1

 

9

8

3

 

1

 

25

A2

 

4

1

5

 

7

 

60

A3

 

6

5

3

 

2

 

75

A4

 

8

7

3

 

4

 

10

Потребность

 

20

45

55

 

50

 

170

в грузе bj

 

 

 

 

 

 

 

 

 

 

 

Суммарный

запас

равен

суммарной

потребности

( Ai Bj 170),

значит, это транспортная задача в закрытом

виде.

Найдем исходный опорный план методом «северо-западного угла» (табл. 1.11). В первую клетку помещаем x11 min(25, 20) 20.

Потребность потребителя В1 в запасах удовлетворена поставщиком А1. Первый столбец вычеркиваем и двигаемся по первой строке влево. Оставшийся запас продукции у первого поставщика составляет 25 – 20 = 5 ед. Тогда x12 min(5, 45) 5 . Весь запас ресурсов постав-

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

В2 составляет 45 – 5 = 40 ед. Тогда x22 min(60, 40) 40. Потреб-

ность потребителя В2 в запасах удовлетворена, поэтому вычеркиваем второй столбец и двигаемся по второй строке влево. Оставшийся запас продукцииу второго поставщика составляет 60 – 40 = 20 ед. Тогда x23 min(20,55) 20 . Весь запас ресурсов поставщика А2 использо-

ван, поэтому вычеркиваем вторую строку и двигаемся по третьему столбцу вниз. Оставшаяся потребность потребителя В3 составляет 55 – 20 = 35 ед. Тогда x33 min(75,35) 35. Потребность потребителя

В3 в запасах удовлетворена, поэтому вычеркиваем третий столбец и двигаемся по третьей строке влево. Оставшийся запас продукции у третьего поставщика составляет 75 – 35 = 40 ед. Тогда

52

x34 min(40,50) 40. Весь запас ресурсов поставщика А3 использо-

ван, поэтому вычеркиваем третью строку и двигаемся по четвертому столбцу вниз. Оставшаяся потребность потребителя В4 составляет

50 – 40 = 10 ед. Тогда x44 min(10,10) 10. Потребностьпотребителя

В4 в запасах удовлетворена, и весь запас ресурсов поставщика А4 использован, поэтому вычеркиваемчетвертыйстолбецистроку.

 

 

 

 

 

Таблица 1.11

 

 

Тарифы (cij)

 

 

Поставщики

 

потребителей

 

Запас груза ai

 

B1

B2

B3

B4

 

A1

9

8

3

1

25

20

5

 

 

 

 

 

 

A2

4

1

5

7

60

 

40

20

 

 

 

 

 

A3

6

5

3

2

75

 

 

35

40

 

 

 

 

A4

8

7

3

4

10

 

 

 

10

 

 

 

 

 

Потребность

20

45

55

50

170

в грузе (bj)

 

 

 

 

 

Число ненулевых значений переменных xij = 7. Число базисных переменных задачи m + n – 1 = 4 + 4 – 1 = 7. Остальные m n (m n 1) 4 4 7 9 переменных являются свободными,

их значения равны нулю.

Итак, исходный опорный план имеет вид

 

 

 

 

20

5

0

0

 

 

 

 

 

0

40

20

0

 

X1

 

 

0

0

35

40

 

.

 

 

 

 

0

0

0

10

 

 

 

 

 

 

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

Z (X1 ) 9 20 8 5 1 40 5 20 3 35 2 40 4 10 585.

53

Метод наименьшей стоимости. Составим распределитель-

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

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

Пример 2. Рассмотрим предыдущую задачу из примера 1. Со-

ставим распределительную табл. 1.12.

 

Таблица 1.12

 

 

 

 

 

 

 

Тарифы (cij)

 

 

Поставщики

 

потребителей

 

Запас груза (ai)

9

B1

B2

B3

B4

 

 

8

3

1

25

A1

 

 

25

 

 

 

 

 

 

4

 

1

5

7

60

A2

15

45

 

 

 

 

 

 

6

 

5

3

2

75

A3

5

 

20

50

 

 

 

8

 

7

3

4

10

A4

 

 

10

 

Потребность

 

 

 

 

20

45

55

50

170

в грузе (bj)

 

 

 

 

 

Найдем исходный опорный план методом наименьшей стои-

мости. Находим в таблице клетку, соответствующую наименьшей

стоимости перевозки единицы ресурса ( c22 1

и c14 1). Таких

клеток две, поэтому выбираем любую, например с22 = 1. Помещаем

в эту клетку значение

x22

min(60, 45) 45. В этом случае вычер-

киваем второй столбец, так как потребность В2 в запасах удовле-

творена.

 

 

 

 

 

54

 

 

 

 

 

Затем двигаемся по второй строке, в клетку с минимальным тарифом с21 = 4 помещаем максимально допустимое значение

x21 min(15, 20) 15 и вычеркиваем вторую строку, поскольку

весь запас ресурсов поставщика А2 использован.

Двигаемся по первому столбцу, в клетку с минимальным тарифом с31 = 6 помещаем максимально допустимое значение

x31 min(75,5) 5 и вычеркиваем первый столбец, так как потреб-

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

Итак, исходный опорный план имеет вид

 

 

 

0

0

25

0

 

 

 

15

45

0

0

 

X 1

 

5

0

20

50

.

 

 

 

 

 

 

 

0

0

10

0

 

 

 

 

 

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

Z (X 1 ) 3 25 4 15 1 45 6 5 3 20 2 50 3 10 400.

Сравнивая значения целевых функций для опорных планов, полученных с помощью методов «северо-западного угла» и наименьшей стоимости, замечаем, что суммарные расходы на перевозку в расчете по первому методу на 185 больше, чем по второму, следовательно, метод наименьшей стоимости дает лучший результат.

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

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

55

Теорема 3 (о потенциалах). Если план транспортной задачи X (xij )mn является оптимальным, то существует набор (m n)

чисел ui*,v*j , удовлетворяющий условиям:

ui* v*j cij , если xij* 0 , ui* v*j cij , если xij* 0 ,

i 1, m, j 1, n.

Числа ui*,v*j называются потенциалами i-го поставщика и j-го

потребителя.

Из теоремы следует, что для оптимального плана транспортной задачи необходимо выполнение следующих условий:

1) каждой занятой клетке в распределительной таблице соответствует сумма потенциалов, равная тарифу этой клетки, т.е.

ui vj cij ;

2) каждой свободной клетке соответствует сумма потенциалов, не превышающая тарифа этой клетки, т.е. ui vj cij .

Пусть найден исходный опорный план. Необходимо, чтобы этот план был невырожденным, т.е. число занятых клеток равно рангу системы ограничений, r m n 1. Если полученный план вырожденный, то делаем «нуль-загрузку» в свободных клетках так, чтобы общее число занятых клеток равнялось m + n = 1. Вырожденный опорный план может получиться, если при заполнении распределительной таблицы будут одновременно вычеркнуты строка и столбец. Это возможно, если запас и потребность в какой-то занятой клетке таблицы совпадают. Чтобы сделать «нуль-загрузку», необходимо в свободную клетку записать число 0 и условно считать такую клетку занятой. Но число 0 можно записывать лишь в те свободные клетки, которые не образуют циклов с ранее занятыми клетками.

56

Проверяем план на оптимальность. Для этого в соответствие каждому поставщику поставим потенциал ui (i 1, m) , а каждому

потребителю – потенциал v j ( j 1, n).

Определяем потенциалы. Согласно теореме о потенциалах каждой занятой клетке будет соответствовать уравнение ui* v*j cij .

Число таких уравнений равно m + n – 1, а число неизвестных ui и vj равно m n . Система неопределенная, и, чтобы найти частное решение, одному из потенциалов присвоим произвольное числовое значение, например u1 = 0.

Решаем полученную систему уравнений и находим значения

потенциалов ui и vj.

Проверяем план на оптимальность. Для каждой свободной клетки вычисляем оценки Sij cij (ui vj ) . Если все Sij 0 , то содержащийся в таблице опорный план является оптимальным, при этом оптимальное решение единственно. Если же некоторые оценки равны нулю, то оптимальное решение не единственно. Если хотя бы одна из оценок Sij 0 , то опорный план не является опти-

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

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

57

Рис. 1.10

Вершинам цикла условно приписывают знаки: свободной клетке – плюс, следующей по часовой или против часовой стрелки занятой клетке – минус, следующей – снова плюс и т.д.

Из поставок в клетках цикла с «отрицательными» вершинами выбираем наименьшее количество груза ƛ, которое перемещается по клеткам этого цикла: прибавляется к поставкам в «положительных» вершинах и вычитается в «отрицательных», в результате чего баланс цикла не нарушается. В результате в свободной клетке оказывается поставка ƛ и одна из «отрицательных» клеток цикла становится свободной. Если таких клеток больше одной, то одна клетка будет свободной, а в остальные ставится поставка, равная 0, чтобы количество базисных клеток равнялось рангу r m n 1.

Укажем некоторые свойства цикла:

1)каждое звено соединяет две клетки строки и столбца;

2)цикл строится для свободной клетки, остальные вершины цикла находятся в занятых (базисных) клетках;

3)в цикле всегда четное число клеток;

4)для свободной клетки можно построить единственный цикл. Пример 3. Рассмотрим предыдущую задачу из примера 1. Тре-

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

Модель задачи: xij – количество перевезенного груза от i-го поставщика к j-му потребителю.

Тогда целевая функция примет вид

z9x11 8x12 3x13 x14 ... 4x44 min,

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

58

x11 x12 x13 x14 25,x21 x22 x23 x24 60,

x31 x32 x33 x34 75,

x41 x42 x43 x44 10,x11 x21 x31 x41 20,x12 x22 x32 x42 45,

x13 x23 x33 x43 55,

x14 x24 x34 x44 50,

 

 

xij 0 i 1, 4, j 1, 4.

 

 

 

 

В данной задаче мы нашли исходный опорный план методом

«минимального элемента» (табл. 1.13).

 

 

 

Таблица 1.13

 

 

 

 

 

 

 

Поставщики

 

Тарифы (cij)

 

 

Запас

 

Потенциал

 

потребителей

 

 

грузов

ui

 

B1

B2

B3

B4

 

ai

 

 

 

 

 

A1

9

8

3

1

 

25

 

0

 

 

25

 

 

 

 

 

 

 

 

 

 

 

A2

4

1

5

7

 

60

 

–2

15

 

45

 

 

 

 

 

 

 

 

 

 

A3

6

5

3

2

 

75

 

0

5

 

20

 

50

 

 

 

 

 

 

 

A4

8

7

3

4

 

10

 

0

 

 

10

 

 

 

Потребность

 

 

 

 

 

 

 

20

45

55

50

 

170

 

 

в грузе bj

 

 

 

 

 

 

 

 

 

 

 

Потенциал vj

6

3

3

2

 

 

 

 

Исходный опорный план имеет вид

 

 

 

 

 

 

 

0

0

25

0

 

 

 

15

45

0

0

 

X 1

 

5

0

20

50

.

 

 

 

 

 

 

 

0

0

10

0

 

 

 

 

 

59

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

Z (X 1 ) 3 25 4 15 1 45 6 5 3 20 2 50 3 10 400.

Число занятых клеток равно 7, а m + n – 1 = 4 + 4 – 1 = 7, значит, исходный опорный план является невырожденным.

Присваиваем потенциалы пунктам отправления ui (i 1, 4)

и пунктам назначения v j ( j 1, 4).

Определяем потенциалы из системы уравнений

u1 v3 3,

u2 v1 4,

u2 v2 1,

u3 v1 6,u3 v3 3,

u3 v4 2,

u4 v3 3.

Например, положим, что u1 0, тогда относительно базовой

клетки (1,3) v3 должно равняться 3 (с13 = u1 + v3). В 3-м столбце есть еще базовая клетка (3,3), тогда относительно нее u3 должно равняться 0 (с33 = u3 + v3), и базовая клетка (4,3), тогда относительно нее u4 должно равняться 0 (с43 = u4 + v3). Затем идем по 3-й строке. Относительно базовой клетки (3,1) v1 равняется 6 (с31 = u3 + v1). Относительно базовой клетки (3,4) v1 равняется 2 (с34 = u3 + v4). Далее переходим к 1-му столбцу. Относительно базовой клетки (2,1) u2 равняется –2 (с21 = u2 + v1). Аналогично определяем остальные потенциалы. Тогда получаем:

u2 2, u3 0, u4 0, v1 6, v2 3, v3 3, v4 2.

60

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