Нахождение предварительного плана перевозок

Существует много методов построения предварительного плана перевозок: диагональный, северо-западного угла, наименьшей стоимости и др.

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

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

Ckj = , (1.29)

и отметим ее.

Далее проведем такой же выбор по столбцам (строкам):

Cik = . (1.30)

В результате все клетки матрицы стоимости разделяются на три категории: клетки с двумя отметками, с одной отметкой и без отметок.

После этого составим предварительный (опорный) план перевозок, пользуясь следующим правилом:

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

Если с помощью этих маршрутов не удается выполнить условия (1.26), (1.27), то назначаются маршруты, определяемые клетками матрицы без отметок. Клетки матрицы, в которых есть назначения r, будем называть занятыми (загруженными). Заметим, что число занятых клеток, т.е. назначений, должно быть r=m+n-1.

Рассмотрим это высказывание. Действительно, число уравнений в условиях (1.25), (1.26) равно m+n. Выразим каждую строку условия (1.25), кроме первой, относительно неизвестного xi 1 , стоящего в первом столбце матрицы перевозок:

xi 1 = ai - xi 2 - … -xin, i = 2, m. (1.31)

Аналогично каждый столбец, кроме первого из (1.26), разрешим относительно неизвестного x 1 j, стоящего в первой строке матрицы перевозок: x 1 j = bj - x 2 j - … -xmj, j = 2, n. (1.32)

Остается два уравнения:

x 11 + x 12 + … + x 1 n = a 1 - из первой строки;

x 11 + x 21 + … + xm 1= b 1 - из первого столбца.

Выразим из этих уравнений переменную x 11 , получим

x 11 = a 1 - x 21 - - x1 n; (1.33)

x 11 = b 1 - x 21 - … -xm 1. (1.34)

Если вместо неизвестных, входящих в правые части (1.33) и (1.34), подставим их выражения из (1.31) и (1.32), тогда получим:

x 11 = a 1 -(b 2 - x 22 - … -xm 2 ) - … - (bn - x 2 n - … -xmn)=

= a 1 - b 2 - … bn - (j=2); (1.35)

x 11 = b 1 -(a 2 - x 22 - … -x 2 n ) - … - (am - xm 2 - … -xmn)=

= b 1 - a 2 - … am - (i=2). (1.36)


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: