Автор работы: Пользователь скрыл имя, 27 Февраля 2012 в 17:40, курсовая работа
Математика необходима в повседневной жизни, следовательно определенные математические навыки нужны каждому человеку. Нам приходится в жизни считать(например, деньги), мы постоянно используем(часто не замечая этого) знания о величинах, характеризующих протяженности, площади, объемы, промежутки времени, скорости и многое другое. Все это пришло к нам на уроках арифметики и геометрии и пригодилось для ориентации в окружающем мире.
3.3 Метод аппроксимации Фогеля
При определении
опорного плана транспортной задачи
методом аппроксимации Фогеля находят
разность по всем столбцам и по всем
строкам между двумя
Если
минимальная стоимость
4 Решение транспортной задачи методом Фогеля
Задача :
У поставщиков A1 , A2 , A3 находится соответственно 110,190,90 единиц однотипной продукции, которая должна быть доставлена потребителям B1 , B2 , B3 , B4 в количествах 80,60,170,80 единиц соответственно.
Стоимость доставки единицы продукции от поставщика A1 к указанным потребителям равна 8,1,9,7 ден.ед.
Стоимость доставки единицы продукции от поставщика A2 к указанным потребителям равна 4,6,2,12 ден.ед.
Стоимость доставки единицы продукции от поставщика A3 к указанным потребителям равна 3,5,8,9 ден.ед.
Требуется найти оптимальное решение доставки продукции от поставщиков к потребителям с максимальной прибылью.
Решение :
Математическая модель транспортной задачи:
F = ∑∑cijxij,
при условиях:
∑xij = ai, i = 1,2,…, m,
∑xij = bj, j = 1,2,…, n,
С целью составления двойственной задачи переменные xij в условии (2) заменим на u1, u2, ui,.., um, а переменные xij в условия (3) на v1, v2, vj,.., vn.
Поскольку каждая переменная xij входит в условия (2,3) и целевую функцию (1) по одному разу, то двойственную задачу по отношению к прямой транспортной задаче можно сформулировать следующим образом.
Требуется найти не отрицательные числа ui (при i = 1,2,…,m) и vj (при j = 1,2,..,n), обращающие в максимум целевую функцию
G = ∑aiui + ∑bjvj (10)
при условии
ui + vj ≤ cij, i = 1,2,..,m; j = 1,2,..,n
В систему условий (4) будет mxn неравенств. По теории двойственности для оптимальных планов прямой и двойственной задачи для всех i,j должно быть:
ui + vj ≤ cij, если xij = 0,
ui + vj = cij, если xij ≥ 0,
Эти условия являются необходимыми и достаточными признаками оптимальности плана транспортной задачи.
Числа ui , vj называются потенциалами. Причем число ui называется потенциалом поставщика, а число vj – потенциалом потребителя.
По первой теореме двойственности в оптимальном решении значения целевых функций прямой и двойственных задач совпадают: F = G.
Стоимость доставки единицы груза из каждого пункта отправления в соответствующие пункты назначения задана матрицей тарифов
1 |
2 |
3 |
4 |
Запасы | |
1 |
8 |
1 |
9 |
7 |
110 |
2 |
4 |
6 |
2 |
12 |
190 |
3 |
3 |
5 |
8 |
9 |
90 |
Потребности |
80 |
60 |
170 |
80 |
Проверим
необходимое и достаточное
∑a = 110 + 190 + 90 = 390
∑b = 80 + 60 + 170 + 80 = 390
Условие баланса соблюдается. Запасы равны потребностям. Следовательно, модель транспортной задачи является закрытой.
Занесем исходные данные в распределительную таблицу.
1 |
2 |
3 |
4 |
Запасы | |
1 |
8 |
1 |
9 |
7 |
110 |
2 |
4 |
6 |
2 |
12 |
190 |
3 |
3 |
5 |
8 |
9 |
90 |
Потребности |
80 |
60 |
170 |
80 |
Поиск первого опорного плана.
1. Используя метод Фогеля, построим первый опорный план транспортной задачи. Для каждой строки и столбца таблицы условий найдем разности между двумя минимальными тарифами, записанными в данной строе или столбце, и поместим их в соответствующем дополнительном столбце или строке.
Данный метод состоит в следующем:
1. на каждой
итерации находят разности
2. находят
максимальную разность и
Находим разности по строкам.
Для строки N=1 первый минимальный элемент min11 = 1, второй минимальный элемент min21 = 7. Их разность равна d = min21 - min11 = 6.
Для строки N=2 первый минимальный элемент min12 = 2, второй минимальный элемент min22 = 4. Их разность равна d = min22 - min12 = 2.
Для строки N=3 первый минимальный элемент min13 = 3, второй минимальный элемент min23 = 5. Их разность равна d = min23 - min13 = 2.
Находим разности по столбцам.
Для столбца N=1 первый минимальный элемент min11 = 3. второй минимальный элемент min21 4. Их разность d = min21 - min11 = 1.
Для столбца N=2 первый минимальный элемент min12 = 1. второй минимальный элемент min22 5. Их разность d = min22 - min12 = 4.
Для столбца N=3 первый минимальный элемент min13 = 2. второй минимальный элемент min23 8. Их разность d = min23 - min13 = 6.
Для столбца N=4 первый минимальный элемент min14 = 7. второй минимальный элемент min24 9. Их разность d = min24 - min14 = 2.
Вычислив все эти разности, видим, что наибольшая из них соответствует строке (1). В этой строке минимальный тариф записан в клетке, находящейся на пересечении строки (1) и столбца (2).
1 |
2 |
3 |
4 |
Запасы |
Разности по строкам | |
1 |
8 |
1 |
9 |
7 |
110 |
6 |
2 |
4 |
6 |
2 |
12 |
190 |
2 |
3 |
3 |
5 |
8 |
9 |
90 |
2 |
Потребности |
80 |
60 |
170 |
80 |
0 |
0 |
Разности по столбцам |
1 |
4 |
6 |
2 |
0 |
Искомый элемент равен 1
Для этого элемента запасы равны 110, потребности 60. Поскольку минимальным является 60, то вычитаем его.
x12 = min(110,60) = 60.
0 |
0 |
0 |
0 |
110 - 60 = 50 |
0 |
x |
x |
x |
x |
0 |
x |
x |
0 |
0 |
0 |
60 - 60 = 0 |
x |
0 |
0 |
Находим разности по строкам.
Для строки N=1 первый минимальный элемент min11 = 7, второй минимальный элемент min21 = 8. Их разность равна d = min21 - min11 = 1.
Для строки N=2 первый минимальный элемент min12 = 2, второй минимальный элемент min22 = 4. Их разность равна d = min22 - min12 = 2.
Для строки N=3 первый минимальный элемент min13 = 3, второй минимальный элемент min23 = 8. Их разность равна d = min23 - min13 = 5.
Находим разности по столбцам.
Для столбца N=1 первый минимальный элемент min11 = 3. второй минимальный элемент min21 4. Их разность d = min21 - min11 = 1.
Для столбца N=3 первый минимальный элемент min13 = 2. второй минимальный элемент min23 8. Их разность d = min23 - min13 = 6.
Для столбца N=4 первый минимальный элемент min14 = 7. второй минимальный элемент min24 9. Их разность d = min24 - min14 = 2.
Вычислив все эти разности, видим, что наибольшая из них соответствует столбцу (3). В этом столбце минимальный тариф записан в клетке, находящейся на пересечении строки (2) и столбца (3).
1 |
2 |
3 |
4 |
Запасы |
Разности по строкам | |
1 |
8 |
1 |
9 |
7 |
50 |
1 |
2 |
4 |
6 |
2 |
12 |
190 |
2 |
3 |
3 |
5 |
8 |
9 |
90 |
5 |
Потребности |
80 |
0 |
170 |
80 |
0 |
0 |
Разности по столбцам |
1 |
- |
6 |
2 |
0 |
Искомый элемент равен 2
Для этого элемента запасы равны 190, потребности 170. Поскольку минимальным является 170, то вычитаем его.
x23 = min(190,170) = 170.
0 |
0 |
x |
0 |
0 |
0 |
0 |
0 |
x |
190 - 170 = 20 |
0 |
x |
x |
x |
x |
0 |
0 |
170 - 170 = 0 |
x |
0 |
Находим разности по строкам.
Для строки N=1 первый минимальный элемент min11 = 7, второй минимальный элемент min21 = 8. Их разность равна d = min21 - min11 = 1.
Для строки N=2 первый минимальный элемент min12 = 4, второй минимальный элемент min22 = 12. Их разность равна d = min22 - min12 = 8.
Для строки N=3 первый минимальный элемент min13 = 3, второй минимальный элемент min23 = 9. Их разность равна d = min23 - min13 = 6.
Находим разности по столбцам.
Для столбца N=1 первый минимальный элемент min11 = 3. второй минимальный элемент min21 4. Их разность d = min21 - min11 = 1.
Для столбца N=4 первый минимальный элемент min14 = 7. второй минимальный элемент min24 9. Их разность d = min24 - min14 = 2.
Вычислив все эти разности, видим, что наибольшая из них соответствует строке (2). В этой строке минимальный тариф записан в клетке, находящейся на пересечении строки (2) и столбца (1).
1 |
2 |
3 |
4 |
Запасы |
Разности по строкам | |
1 |
8 |
1 |
9 |
7 |
50 |
1 |
2 |
4 |
6 |
2 |
12 |
20 |
8 |
3 |
3 |
5 |
8 |
9 |
90 |
6 |
Потребности |
80 |
0 |
0 |
80 |
0 |
0 |
Разности по столбцам |
1 |
- |
- |
2 |
0 |