Решение
Проверим необходимое и достаточное условие разрешимости задачи:
= 300 + 300 + 200 = 800 .
= 250 + 400 + 150 = 800.
Условие баланса соблюдается. Запасы равны потребностям. Следовательно, модель транспортной задачи является закрытой.
Занесем исходные данные в распределительную таблицу.
|
1 |
2 |
3 |
Запасы |
1 |
4 |
2 |
5 |
300 |
2 |
1 |
5 |
3 |
300 |
3 |
5 |
3 |
6 |
200 |
Потребности |
250 |
400 |
150 |
|
Используя метод северо-западного угла, построим первый опорный план транспортной задачи.
План начинается заполняться с верхнего левого угла.
Искомый элемент равен 4. Для этого элемента запасы равны 300, потребности 250. Поскольку минимальным является 250, то вычитаем его: .
4 |
2 |
5 |
300 - 250 = 50 |
x |
5 |
3 |
300 |
x |
3 |
6 |
200 |
250 - 250 = 0 |
400 |
150 |
|
Искомый элемент равен 2. Для этого элемента запасы равны 50, потребности 400. Поскольку минимальным является 50, то вычитаем его: .
4 |
2 |
x |
50 - 50 = 0 |
x |
5 |
3 |
300 |
x |
3 |
6 |
200 |
|
400 - 50 = 350 |
150 |
|
Искомый элемент равен 5. Для этого элемента запасы равны 300, потребности 350. Поскольку минимальным является 300, то вычитаем его:
4 |
2 |
x |
|
x |
5 |
x |
300 - 300 = 0 |
x |
3 |
6 |
200 |
|
350 - 300 = 50 |
150 |
|
Искомый элемент равен 3. Для этого элемента запасы равны 200, потребности 50. Поскольку минимальным является 50, то вычитаем его:
4 |
2 |
x |
|
x |
5 |
x |
|
x |
3 |
6 |
200 - 50 = 150 |
|
50 - 50 = 0 |
150 |
|
Искомый элемент равен 6. Для этого элемента запасы равны 150, потребности 150. Поскольку минимальным является 150, то вычитаем его:
4 |
2 |
x |
|
x |
5 |
x |
|
x |
3 |
6 |
150 - 150 = 0 |
|
|
150 - 150 = 0 |
|
|
1 |
2 |
3 |
Запасы |
1 |
4[250] |
2[50] |
5 |
300 |
2 |
1 |
5[300] |
3 |
300 |
3 |
5 |
3[50] |
6[150] |
200 |
Потребности |
250 |
400 |
150 |
|
В результате получен первый опорный план, который является допустимым, так как все грузы из баз вывезены, потребность магазинов удовлетворена, а план соответствует системе ограничений транспортной задачи.
Подсчитаем число занятых клеток таблицы, их 5, а должно быть . Следовательно, опорный план является невырожденным.
Значение целевой функции для этого опорного плана равно:
.
Проверим оптимальность опорного плана. Найдем предварительные потенциалы ui, vj. по занятым клеткам таблицы, в которых , полагая, что u1 = 0.
u1 + v1 = 4; 0 + v1 = 4; v1 = 4
u1 + v2 = 2; 0 + v2 = 2; v2 = 2
u2 + v2 = 5; 2 + u2 = 5; u2 = 3
u3 + v2 = 3; 2 + u3 = 3; u3 = 1
u3 + v3 = 6; 1 + v3 = 6; v3 = 5
|
v1=4 |
v2=2 |
v3=5 |
u1=0 |
4[250] |
2[50] |
5 |
u2=3 |
1 |
5[300] |
3 |
u3=1 |
5 |
3[50] |
6[150] |
Опорный план не является оптимальным, так как существуют оценки свободных клеток, для которых .
(2;1): 3 + 4 > 1; ∆21 = 3 + 4 - 1 = 6
(2;3): 3 + 5 > 3; ∆23 = 3 + 5 - 3 = 5
(6,5) = 6
Выбираем максимальную оценку свободной клетки (2;1): 1.
Для этого в перспективную клетку (2;1) поставим знак «+», а в остальных вершинах многоугольника чередующиеся знаки «-», «+», «-».
|
1 |
2 |
3 |
Запасы |
1 |
4[250][-] |
2[50][+] |
5 |
300 |
2 |
1[+] |
5[300][-] |
3 |
300 |
3 |
5 |
3[50] |
6[150] |
200 |
Потребности |
250 |
400 |
150 |
|
Цикл приведен в таблице (2,1 → 2,2 → 1,2 → 1,1).
Из грузов хij стоящих в минусовых клетках, выбираем наименьшее, т.е. . Прибавляем 250 к объемам грузов, стоящих в плюсовых клетках и вычитаем 250 из Хij, стоящих в минусовых клетках. В результате получим новый опорный план.
|
1 |
2 |
3 |
Запасы |
1 |
4 |
2[300] |
5 |
300 |
2 |
1[250] |
5[50] |
3 |
300 |
3 |
5 |
3[50] |
6[150] |
200 |
Потребности |
250 |
400 |
150 |
|
Проверим оптимальность опорного плана. Найдем предварительные потенциалы ui, vj. по занятым клеткам таблицы, в которых , полагая, что u1 = 0.
u1 + v2 = 2; 0 + v2 = 2; v2 = 2
u2 + v2 = 5; 2 + u2 = 5; u2 = 3
u2 + v1 = 1; 3 + v1 = 1; v1 = -2
u3 + v2 = 3; 2 + u3 = 3; u3 = 1
u3 + v3 = 6; 1 + v3 = 6; v3 = 5
|
v1=-2 |
v2=2 |
v3=5 |
u1=0 |
4 |
2[300] |
5 |
u2=3 |
1[250] |
5[50] |
3 |
u3=1 |
5 |
3[50] |
6[150] |
Опорный план не является оптимальным, так как существуют оценки свободных клеток, для которых .
(2;3): 3 + 5 > 3; ∆23 = 3 + 5 - 3 = 5
Выбираем максимальную оценку свободной клетки (2;3): 3.
Для этого в перспективную клетку (2;3) поставим знак «+», а в остальных вершинах многоугольника чередующиеся знаки «-», «+», «-».
|
1 |
2 |
3 |
Запасы |
1 |
4 |
2[300] |
5 |
300 |
2 |
1[250] |
5[50][-] |
3[+] |
300 |
3 |
5 |
3[50][+] |
6[150][-] |
200 |
Потребности |
250 |
400 |
150 |
|
Цикл приведен в таблице (2,3 → 2,2 → 3,2 → 3,3).
Из грузов хij стоящих в минусовых клетках, выбираем наименьшее, т.е. . Прибавляем 50 к объемам грузов, стоящих в плюсовых клетках и вычитаем 50 из Хij, стоящих в минусовых клетках. В результате получим новый опорный план.
|
1 |
2 |
3 |
Запасы |
1 |
4 |
2[300] |
5 |
300 |
2 |
1[250] |
5 |
3[50] |
300 |
3 |
5 |
3[100] |
6[100] |
200 |
Потребности |
250 |
400 |
150 |
|
Проверим оптимальность опорного плана. Найдем предварительные потенциалы ui, vj. по занятым клеткам таблицы, в которых , полагая, что u1 = 0.
u1 + v2 = 2; 0 + v2 = 2; v2 = 2
u3 + v2 = 3; 2 + u3 = 3; u3 = 1
u3 + v3 = 6; 1 + v3 = 6; v3 = 5
u2 + v3 = 3; 5 + u2 = 3; u2 = -2
u2 + v1 = 1; -2 + v1 = 1; v1 = 3
|
v1=3 |
v2=2 |
v3=5 |
u1=0 |
4 |
2[300] |
5 |
u2=-2 |
1[250] |
5 |
3[50] |
u3=1 |
5 |
3[100] |
6[100] |
Опорный план является оптимальным, так все оценки свободных клеток удовлетворяют условию .
Минимальные затраты составят:
.
Из 1-го склада необходимо весь груз направить в 2-й магазин.
Из 2-го склада необходимо груз направить в 1-й магазин (250), в 3-й магазин (50)
Из 3-го склада необходимо груз направить в 2-й магазин (100), в 3-й магазин (100)
Ответ: из 1-го склада необходимо весь груз направить в 2-й магазин; из 2-го склада необходимо груз направить в 1-й магазин (250), в 3-й магазин (50); из 3-го склада необходимо груз направить в 2-й магазин (100), в 3-й магазин (100); минимальные затраты составят: .
4. Решить задачу о назначении 5 кандидатов на 5 должностей, при котором суммарные затраты по времени на выполнение работ минимальны. Таблица времени выполнения конкретной работы (по столбцам) конкретным кандидатом (по строкам) имеет вид: