|
36 |
|
Пример 1. |
Рассмотрим задачу: имеется три поставщика с |
|
определенными |
запасами однородного груза ai 30, 40, 50 |
и четыре |
потребителя с известными потребностями в этом грузе bj |
10, 20, 20, 50 . |
|
Кроме того, задана матрица тарифов:
|
3 |
4 |
1 |
4 |
cij |
2 |
1 |
2 |
3 . |
|
3 |
2 |
3 |
1 |
Модель задачи открытая, так как |
ai |
b j : |
||||
|
|
|
|
|
i |
j |
30 |
40 |
50 |
10 |
20 |
20 |
50 . |
Поэтому вводим фиктивного потребителя с потребностью в 20 единиц груза и нулевыми тарифами.
Составляем таблицу и первоначальное распределение поставок производим по методу «северо-западного» угла:
b j |
B |
|
B |
2 |
|
B |
3 |
|
B |
4 |
|
B |
5 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
Ui |
||||
ai |
|
10 |
|
|
20 |
|
|
20 |
|
|
50 |
|
|
20 |
|
|
|
|
|
|
|
|
|
|
|
||||||
A1 |
10 |
3 |
20 |
4 |
0 |
1 |
|
|
4 |
|
|
0 |
|
||
|
|
|
|
|
|
|
|
|
0 |
||||||
30 |
|
|
|
|
|
|
1 |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
A2 |
|
2 |
|
|
1 |
|
|
2 |
|
|
3 |
|
|
0 |
|
|
|
|
|
- |
20 + |
20 |
|
|
|
|
1 |
||||
40 |
2 |
|
4 |
|
|
2 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
A3 |
|
3 |
|
|
2 |
|
|
3 |
30 |
1 |
20 |
0 |
|
||
|
|
|
|
|
|
|
|
|
|
-1 |
|||||
50 |
|
|
1 |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Vj |
3 |
|
4 |
+ |
|
1 |
|
- |
2 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Число занятых клеток должно быть равно 3+5–1=7, у нас получилось 6. Это получилось потому, что при заполнении клетки (1,2) мы одновременно вычеркнули первую строку и второй столбец. Надо занести нулевую поставку в одну из клеток, расположенных рядом по строке или столбцу то клетки (1,2), т.е. или в (1,3), или в (2,2). Займем клетку (1,3). При таком расположении поставок затраты на перевозку груза составят:
Z1 |
10 3 |
20 4 |
0 1 |
20 2 |
20 3 |
30 1 |
20 0 |
240 . |
Вычислим потенциалы Ui , i
1,...,3 , Vj , j
1,...,5
исходя из того, что для занятых клеток должно выполняться равенство Ui Vj cij . Полагаем, что один из потенциалов равен нулю, например U1 0 .
|
|
|
37 |
|
|
|
|
U1 |
V1 |
c11 |
0 V1 |
3 |
V1 |
3, |
|
U1 |
V2 |
c12 |
0 V2 |
4 |
V2 |
4, |
|
U1 |
V3 |
c13 |
0 V3 |
1 |
V3 |
1, |
|
U 2 |
V3 |
c23 |
U2 |
1 2 |
U2 |
1, |
|
U 2 |
V4 |
c24 |
1 V4 |
3 |
V4 |
2, |
|
U3 |
V4 |
c34 |
U3 |
2 1 |
U3 |
1, |
|
U3 |
V5 |
c35 |
-1 V5 |
0 |
V5 |
1. |
|
Далее вычислим характеристики для свободных клеток: Eij cij
Ui Vj . Отрицательные характеристики заносятся в левый нижний угол клетки.
E14 |
c14 |
U1 |
V4 |
4 0 2 2, |
E 25 |
c25 |
U 2 |
V5 |
0 |
1 1 |
2, |
||
E15 |
c15 |
U1 |
V5 |
0 0 |
1 |
1, |
E31 |
c31 |
U3 |
V1 |
3 |
1 3 1, |
|
E 21 |
c21 |
U 2 |
V1 |
2 1 |
3 |
2, |
E32 |
c32 |
U3 |
V2 |
2 |
1 4 |
1, |
E 22 |
c22 |
U 2 |
V2 |
1 1 |
4 |
4, |
E33 |
c33 |
U3 |
V3 |
3 |
1 1 3. |
|
Выбираем клетку с наименьшей отрицательной характеристикой, т.е. (2,2). Строим контур с вершиной в этой клетке. Свободную клетку помечаем знаком «+», следующую по контуру – знаком «–» и т.д., меняя знаки. В свободную клетку заносится минимальная поставка из клеток, помеченных знаком «–». В нашем случае обе поставки равны 20 единицам. Поэтому мы вычитаем 20 единиц груза из поставок, стоящих в «отрицательных клетках» и прибавляем 20 единиц груза к поставкам, стоящим в « положительных клетках». Так как в «отрицательных клетках» было по 20 единиц груза, то после перераспределения поставок, в одну из них запишем нулевую поставку, а другую оставим пустой. Получим следующее (лучшее) распределение:
b j |
B |
|
B |
2 |
|
B |
3 |
|
B |
4 |
|
B |
5 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
Ui |
||||
ai |
|
10 |
|
|
20 |
|
|
20 |
|
|
50 |
|
|
20 |
|
|
|
|
|
|
|
|
|
|
|
||||||
A1 |
10 |
3 |
|
|
4 |
20 |
1 |
|
|
4 |
|
|
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
30 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
A2 |
|
2 |
20 |
1 |
0 |
|
2 |
20 |
3 |
|
|
0 |
1 |
||
|
|
|
|
|
|
|
|
|
|||||||
40 |
|
|
|
|
|
|
|
|
|
|
|||||
2 |
|
|
|
|
|
|
|
|
|
|
2 |
|
|
||
A3 |
|
3 |
|
|
2 |
|
|
3 |
30 |
1 |
20 |
0 |
-1 |
||
|
|
|
|
|
|
|
|
|
|
||||||
50 |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Vj |
3 |
|
0 |
|
|
1 |
|
|
2 |
- |
|
1 |
|
+ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
При таком распределении поставка в 20 ед. попала в клетку с характеристикой равной –4, следовательно функция затрат улучшилась на
20 4 80 ед. Т.о. Z2 |
Z1 |
80 240 80 160 . |
+ |
- |
|
|
|
|
|
|
|
|
|
|
38 |
|
|
|
|
|
|
|
|
Снова полагаем U1 |
0 и вычисляем потенциалы. |
Далее, как и прежде, |
|||||||||||||
вычисляем характеристики для свободных клеток. Выбираем клетку с |
|||||||||||||||
наименьшей отрицательной характеристикой, например, (2,5). Строим |
|||||||||||||||
контур. Груз, равный min (20, 20) = 20 ед. перераспределяем по контуру. |
|||||||||||||||
Получаем следующее распределение: |
|
|
|
|
|
|
|
|
|||||||
b j |
B |
|
B |
2 |
|
B |
3 |
|
B |
4 |
|
B |
5 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
Ui |
||||
ai |
10 |
|
|
20 |
|
|
20 |
|
|
50 |
|
|
20 |
||
|
|
|
|
|
|
|
|
|
|||||||
A1 |
10 |
3 |
|
|
4 |
20 |
1 |
|
|
4 |
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
||||
30 |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A2 |
|
2 |
20 |
1 |
0 |
|
2 |
|
|
3 |
20 |
0 |
|
||
|
|
|
|
|
|
|
|
|
1 |
||||||
40 |
2 |
- |
|
|
+ |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||
A3 |
|
3 |
|
|
2 |
|
|
3 |
50 |
1 |
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
||||
50 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Vj |
3 |
|
0 |
|
|
1 |
|
- |
0 |
|
|
-1 |
|
|
|
|
+ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
При таком распределении Z3 |
Z2 |
|
20 E25 |
|
160 |
20 2 |
120 . |
||||||||
Находим потенциалы, характеристики для незанятых клеток и строим |
|||||||||||||||
контур для клетки (2,1). Поставку, равную min (10,0) =0, перераспределяем |
|||||||||||||||
по контуру. Получаем следующее распределение: |
|
|
|
|
|||||||||||
b j |
B |
|
B |
2 |
|
B |
3 |
|
B |
4 |
|
B |
5 |
|
|
1 |
|
|
|
|
|
|
|
|
Ui |
||||
ai |
|
10 |
|
|
20 |
|
|
20 |
|
|
50 |
|
20 |
|
|
|
|
|
|
|
|
|
|
||||||
A1 |
10 |
3 |
|
|
4 |
20 |
1 |
|
|
4 |
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
||||
30 |
|
|
|
|
|
|
|
|
1 |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||
A2 |
|
2 |
|
|
1 |
|
|
2 |
|
|
3 |
|
0 |
|
0 |
|
20 |
|
|
|
|
|
|
|
20 + |
-1 |
|||
40 |
|
|
|
|
|
|
|
|
||||||
- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A3 |
|
3 |
|
|
2 |
|
|
3 |
50 |
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
-1 |
||||
50 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Vj |
3 |
|
2 |
|
|
1 |
|
|
2 |
|
|
1 |
|
|
|
+ |
|
|
|
|
|
|
|
|
|
|
|
- |
|
Продолжая вышеописанный процесс нахождения потенциалов, характеристик для пустых клеток и построение контура, приходим к следующему распределению:
|
|
|
|
|
39 |
|
|
|
|
|
|
b j |
B1 |
|
B2 |
|
B3 |
|
B4 |
|
B5 |
|
Ui |
|
|
|
|
|
|
|
|
|
|
||
ai |
|
10 |
|
20 |
|
20 |
|
50 |
|
20 |
|
|
|
|
|
|
|
|
|||||
A1 |
|
3 |
|
4 |
20 |
1 |
|
4 |
10 |
0 |
|
|
|
|
|
|
|
|
|
0 |
|||
30 |
1 |
|
3 |
|
|
3 |
|
|
|||
|
|
|
|
|
|
|
|
||||
A2 |
10 |
2 |
20 |
1 |
|
2 |
|
3 |
10 |
0 |
|
|
|
|
|
|
|
|
0 |
||||
40 |
|
|
1 |
|
2 |
|
|
||||
|
|
|
|
|
|
|
|
|
|||
A3 |
|
3 |
|
2 |
|
3 |
50 |
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
0 |
|||
50 |
1 |
|
1 |
|
2 |
|
|
|
|||
|
|
|
|
|
|
|
|
||||
Vj |
2 |
|
1 |
|
1 |
|
1 |
|
0 |
|
|
Найдя для этого распределения характеристики незанятых клеток, видим, что среди них нет отрицательных характеристик, и, следовательно, мы нашли оптимальное решение, при котором функция затрат на перевозку груза достигла своего минимального значения:
1
20 2 10 1
20 1
50 110 .
Чтобы оптимальный план получить за меньшее число итераций, надо первоначальное распределение поставок проводить по методу «наименьшего тарифа», т.е. сначала заполнить клетки соответствующие минимальным тарифам.
Попробуйте для следующей задачи составить первоначальный опорный план по методу «наименьшего тарифа».
|
|
|
|
ai |
60,180, 60 , |
|
7 |
4 |
3 |
|
|
|
|
|
|
|
cij |
2 |
5 |
4 . |
|
|
|||
|
|
|
|
b j |
100,120, 80 , |
|
|
|||||
|
|
|
|
|
1 |
3 |
8 |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|||
Решить следующие задачи: |
|
|
|
|
|
|
|
|||||
1. ai |
20, 30, 50 , |
|
|
2. ai |
50, 70, 80 , |
|
||||||
b j |
20, 20, 40, 20 , |
|
|
|
b j |
50, 60, 90 , |
|
|||||
|
4 |
3 |
5 |
2 |
|
|
|
|
8 |
3 |
7 |
|
cij |
4 5 6 7 . |
|
|
|
cij |
5 4 10 . |
||||||
|
3 |
2 |
4 |
3 |
|
|
|
|
3 |
5 |
10 |
|
3. ai |
30,30,40,60 , |
|
|
4. ai |
40,50,10, 50 , |
|||||||
b j |
20, 40, 70, 30 , |
|
|
|
b j |
20, 30, 50, 50 , |
||||||
|
1 |
2 |
3 |
1 |
|
|
|
|
2 |
2 |
4 |
3 |
cij |
3 |
2 |
3 |
2 . |
|
|
|
cij |
1 |
1 |
2 |
2 . |
|
1 |
3 |
1 |
1 |
|
|
|
|
2 |
1 |
2 |
3 |
|
1 |
2 |
2 |
1 |
|
|
|
|
3 |
3 |
1 |
3 |
40
5.ai b j
cij
7.ai b j
cij
9.ai b j
cij
11.ai b j
cij
13.ai b j
cij
15.ai b j
cij
20, 50, 70 , |
|
6. ai |
27, 8, 50 , |
|
|
||||
10, 20, 30, 80 , |
b j |
15,12,13, 45 , |
|
||||||
3 |
2 |
4 |
5 |
|
3 |
7 |
2 |
4 |
|
2 1 2 4 . |
cij |
1 5 7 6 . |
|
||||||
1 |
5 |
3 |
3 |
|
2 |
9 |
3 |
1 |
|
50, 70, 60 , |
|
8. ai |
60, 80,100 , |
|
|||||
40, 60, 80, 60 , |
b j |
30, 60, 90 , |
|
||||||
1 |
2 |
3 |
4 |
|
1 |
2 |
3 |
|
|
4 3 2 0 . |
cij |
5 2 4 . |
|
|
|||||
0 |
2 |
2 |
1 |
|
1 |
3 |
7 |
|
|
50, 60, 80,100 , |
10. ai |
20, 30, 55, 25 , |
|
||||||
30, 70,100,100 , |
b j |
30, 40, 60 , |
|
||||||
1 |
1 |
5 |
2 |
|
2 |
3 |
4 |
|
|
3 4 2 3 . |
cij |
5 6 3 . |
|
||||||
3 |
8 |
9 |
7 |
|
4 |
8 |
2 |
|
|
1 |
2 |
3 |
4 |
|
1 |
3 |
3 |
|
|
51,110, 40,100 , |
12. ai |
60, 80,100 , |
|
||||||
72, 48,195 , |
b j |
40, 60, 80, 60 , |
|
||||||
1 |
4 |
3 |
|
|
|||||
|
|
1 |
2 |
3 |
4 |
|
|||
6 5 7 . |
|
|
|||||||
cij |
4 3 2 6 . |
|
|||||||
7 |
8 |
4 |
|
|
6 |
2 |
2 |
1 |
|
8 |
9 |
1 |
|
|
|
||||
|
|
|
|
|
|
|
|||
80, 75, 45 , |
14. ai |
35, 50, 40 , |
|
||||||
55, 90, 40,15 , |
b j |
25, 20, 30, 50 , |
|||||||
5 |
4 |
3 |
2 |
|
11 |
8 |
7 |
5 |
|
3 |
5 |
7 |
5 . |
cij |
12 |
|
13 |
10 |
11 . |
5 |
4 |
3 |
4 |
|
6 |
|
9 |
7 |
8 |
30, 40, 20 , |
|
16. ai |
13,14,15 , |
|
||||
20, 30,10,10 , |
b j |
16,19,10,11 , |
||||||
2 |
3 |
2 |
4 |
|
2 |
4 |
1 |
6 |
3 |
2 |
5 |
1 . |
cij |
1 |
3 |
5 |
7 . |
4 |
3 |
2 |
6 |
|
3 |
2 |
1 |
4 |