Замечание
В случае выполнения условия (с), т.е. когда на промежуточном интервале одновременно исчерпываются и столбец и строка, для предотвращения потери одной переменной необходимо в одну из пустых ячеек данных столбца или строки (обычно с наименьшим значением тарифа) записать близкое к нулю положительное число (на практике берут ноль). В этом случае начальный план транспортной задачи будет невырожденным, т.е. будет иметь ровно n+m-1 положительную переменную.
Для нашего примера построение начального опорного плана методом минимального элемента проиллюстрировано в таблице 4.2.
Таблица 4.2
Пункты отправления | Пункты назначения | Запасы | |||||||
В1 | В2 | В3 | В4 | В5 | |||||
А1 | |||||||||
А2 | |||||||||
А3 | |||||||||
Потребности | 130 90 60 | 220 | 60 | 70 | 80 | ||||
Выбираем ячейку с наименьшим тарифом. Это может быть одна из трех ячеек с тарифом 0: А1В5, А2В5, А3В5; например ячейку А1В5. Тогда: .
Пересчитываем остатки по формуле (в): b5' = 0, a1' = 120 – 80 = 40.
Столбец В5 исчерпывается, и все ячейки этого столбца из рассмотрения исключаются.
Выбираем следующую допустимую ячейку с наименьшим тарифом 1: А1В1 или А3В3, например А1В1: .
Пересчитываем остатки по формуле (а): a1' = 0, b1' = 130 – 40 = 90. Оставшиеся ячейки первой строки из рассмотрения исключаются.
Для ячейки А3В3: . Пересчет: a3' = 0, b3'=160–60=100 (формула (в)). Процесс дальнейшего построения опорного плана представлен в таблице 4.2.
Таким образом, имеем начальный опорный план:
Для данного плана перевозок транспортные расходы составят:
F(X0) = 40*1 + 80*0 + 60*4 + 220*2 + 30*3 + 60*1 + 70*2 = 1010 у.д.е.
Шаг 2 Проверяем построенное начальное допустимое решение Х0 на оптимальность методом потенциалов.
Алгоритм метода потенциалов
1. Построить систему потенциалов - действительные целые числа, сопоставляемые строке i и столбцу j соответственно. Для каждой базисной переменной текущего решения потенциалы ui и vj должны удовлетворять уравнению:
(4.5)
Так как базисных переменных m+n-1, то мы получим систему из m+n-1 уравнений вида (4.5) относительно m+n неизвестных. Значения потенциалов можно найти из этой системы, придав одному из них произвольное значение (обычно ui полагается равным нулю), и затем, решая систему относительно m+n-1, остальных потенциалов.
2. Определить оценки оптимальности для небазисных переменных:
, (4.6)
где crk – транспортные расходы по перевозке груза из пункта Аr в пункт Вk.
Рассчитанные значения Drk заносятся в нижний левый угол ячеек транспортной таблицы.
3. Проверить план на оптимальность:
а) если все Drk£0, то план оптимальный, конец вычислений;
б) если имеется хотя бы одна оценка Drk>0, то план не является оптимальным и необходимо перейти к лучшему опорному плану.
4. Переход к лучшему опорному плану:
а) Определить переменную, вводимую в базис:
, (4.7)
б) Определить переменную, выводимую из базиса. Для этого построим замкнутый цикл, соответствующий вводимой переменной. Цикл начинается и заканчивается выбранной небазисной переменной. Он состоит из связной последовательности горизонтальных и вертикальных отрезков, концами которых должны быть базисные переменные (за исключением тех концов, которые относятся к вводимой в базис переменной), т.е. каждая ячейка, стоящая на изломе цикла, должна содержать базисную переменную.
Для каждого базисного решения и соответствующей небазисной переменной можно построить лишь один цикл.
Затем вводимая в новый базис переменная помечается знаком Å, а все остальные базисные переменные, вошедшие в построенный цикл, помечаются чередующимися знаками , Å, причем, две любые рядом стоящие в цикле переменные должны быть помечены разными знаками.
Из базиса выводится переменная, помеченная и имеющая наименьшее значение Xmin.
в) Вычислить новые значения базисных переменных:
- для переменных, не вошедших в цикл, их значения не меняются;
- значение переменной, вошедшей в цикл, увеличивается на величину Xmin, если она помечена Å, и уменьшается на величину Xmin, если .
5. Переход к шагу 2.
Построим систему потенциалов для допустимого решения Х0 из нашего примера (см. табл. 4.3)
Таблица 4.3
vj ui | v1=1 | v2= -1 | v3= -1 | v4=0 | v5=0 | ||||||
u1=0 | 1 | ||||||||||
Å | -8 | -10 | -5 | ||||||||
u2=3 | |||||||||||
-4 | -5 | Å | |||||||||
u3=2 | |||||||||||
-7 | |||||||||||
Уравнения (4.5) для базисных переменных будут иметь вид:
x11: u1 + v1 = 1 x22: u2 + v2 = 2 x34: u3 + v4 = 2
x15: u1 + v5 = 0 x31: u3 + v1 = 3
x21: u2 + v1 = 4 x33: u3 + v3 = 1
Полагая u1=0, находим v1=1, v5=0, u2=3, v2=-1, u3=2, v3=-1, v4=0.
Оценки для небазисных переменных рассчитываем по формуле (4.6):
x12: D12=u1+v2–с12=0+(-1)–7=-8, x24: D24=u2+v4–с24=3+0–8=-5,
x13: D13=u1+v3–с13=0+(-1)–9=-10, x25: D25=u2+v5–с25=3+0–0=3,
x14: D14=u1+v4–с14=0+0–5=-5, x32: D32=u3+v2–с32=2+(-1)–8=-7,
x23: D23=u2+v3–с23=3+(-1)–6=-4, x35: D35=u3+v5–с35=2+0–0=2.
План Х0 не оптимален, так как D25 =3>0 и D35=2>0. Вводим в новый базис переменную x25, так как .
Строим замкнутый цикл (см. таблицу 4.3): x25 ® x21 ® x11 ® x15 ® x25. (Выбор направления цикла несущественен).
Из базиса выводится переменная x21 = 60, так как .
Определяем новые значения базисных переменных (4в)):
x11 = 40 + 60 = 100, x21 = 60 - 60 = 0,
x15 = 80 – 60 = 20, x25 = 0 + 60 = 60,
x22 = 220, x31 = 30, x33 = 60, x33 = 70,
т.е. их значения не меняются, так как они не входят в цикл.
Новый план транспортной задачи представлен в таблице 4.4.
Таблица 4.4
vj ui | v1=1 | v2=2 | v3= -1 | v4=0 | v5=0 | |||||||
u1=0 | 1 | |||||||||||
Å | -5 | -10 | -5 | |||||||||
u2=0 | ||||||||||||
-3 | -7 | -8 | ||||||||||
u3=2 | ||||||||||||
-4 | Å | |||||||||||
,
F(X1)=100*1+20*0+220*2+60*0+30*3+60*1+70*2=830 у.д.е.
Строим новую систему потенциалов, вычисляем оценки оптимальности. Так как D35=2>0, то план Х1 не оптимален.
Определяем переменную, подлежащую введению в базис (x35), строим цикл пересчета и находим переменную, выводимую из базиса (x15). Пересчитываем значения базисных переменных. Результаты пересчета представлены в таблице 4.5.
Таблица 4.5
vj ui | v1=1 | v2=0 | v3= -1 | v4=0 | v5= -2 | |||||||
u1=0 | ||||||||||||
-7 | -10 | -5 | -2 | |||||||||
u2=2 | ||||||||||||
-1 | -5 | -6 | ||||||||||
u3=2 | ||||||||||||
-6 | ||||||||||||
Новый опорный план: ,
F(X2)=120*1+220*2+60*0+10*3+60*1+70*2+20*0=790 у.д.е.
Проверяем план Х2 на оптимальность (см. таблицу 4.5). Так как все Drk£0, то последний план является оптимальным.
Ответ: Оптимальный план перевозок предусматривает транспортировку из 1го карьера 120 т гравия для строительства 1й дороги, из 2го карьера 220 т для строительства 2й дороги, из 3го карьера 10т для строительства 1й дороги, 60 т для 3ей дороги, 70 т для 4й дороги. При этом плане остается неиспользованным 60 т гравия во 2м карьере и 20 т гравия в 3м карьере, а общая минимальная стоимость перевозок составляет 790 условных денежных единиц.