- •Побудова математичної моделі задачі лінійного програмування
- •2. Перетворення задач лінійного програмування до канонічної форми запису
- •3. Розв’язання задачі лінійного програмування симплекс-методом
- •4. Побудова двоїстої задачі
- •5. Економічна інтерпретація задач двоїстої пари
- •Теоретичний матеріал для виконання завдання №3
- •1. Постановка транспортної задачі
- •Дослідження чутливості величини прибутку при зміні ресурсів
- •Теоретичний матеріал для виконання завдання №2
- •Постановка та математична модель задачі розподілу виробничої програми по видах взаємозамінного обладнання.
- •Приклад розв’язання задачі розподілу виробничої програми.
- •2. Метод північно-західного кута
- •3. Метод найменших вартостей
- •3. Метод потенціалів
- •5. Приклад розв’язання незбалансованої транспортної задачі
- •Теоретичний матеріал для виконання завдання №4
- •1. Постановка задачі комівояжера
- •Представлення задачі комівояжера у виді графа
- •Метод гілок і границь
- •4.11. Застосування методу гілок і границь до розв’язання задачі комівояжера
- •Приклад розв’язання задачі про обробку деталей
3. Метод потенціалів
Припустимо, ми знайшли вихідне опорне рішення і базис цього рішення Ai1, Ai2, … Aim. Поставимо у відповідність кожному обмеженню транспортної задачі деяку змінну, яку назвемо потенціалом пункту відправлення чи пункту споживання.
А1 (перше обмеження по запасах) U1,
А2 (друге обмеження по запасах) U2,
………………………………………..
Аm (m- е обмеження по запасах) Um,
B1 (перше обмеження по потребах) V1,
B2 (друге обмеження по потребах) V2,
………………………………………..
Bn (n- е обмеження по потребах) Vn.
Для кожної базисної клітинки справедливе співвідношення: Ui+Vj=Cij.
Для кожної базисної клітинки складаємо таке рівняння й одержуємо систему з m+n-1 векторів з m+n змінними. Щоб вирішити таку систему необхідно прийняти одну змінну (будь–яку) як нульову. Для небазисних клітинок знаходимо оцінки ∆ij у такий спосіб: ∆ij = Ui+Vj-Cij (для базисних клітинок : ∆ij = 0).
Якщо всі оцінки ∆ij 0, то знайдене рішення оптимальне. Якщо ні, то для однієї з клітинок, де max(∆ij>0) будуємо цикл перерахування. Ставимо у клітинку ”+”. У цьому стовпці та цьому рядку треба поставити ”-” у заповнених клітинках. Потім, якщо у якійсь клітинці ”-”, то у цьому стовпці та цьому рядку треба поставити ”+” у заповнених клітинках. Так отримується цикл. Для кожної порожньої клітинки можна побудувати єдиний цикл перерахування. Далі з тих клітинок, у яких стоїть " - " вибираємо ту, у якої найменша величина постачання. Це число треба додати у всі клітинки з ”+” та відняти в усіх клітинках з " - ". У наступному розподілі одна клітинка буде порожньою, інші переписуємо без змін.
Проілюструємо на прикладі. У якості опорного розв’язку візьмемо розв’язок, отриманий методом мінімальних вартостей. Поставимо у відповідність невідомі:
А1 U1,
А2 U2,
А3 U3,
B1 V1,
B2 V2,
B3 V3,
B4 V4,
B5 V5.
Виходячи з того, що для кожної базисної клітинки справедливе співвідношення: Ui+Vj=Cij, складаємо 7 рівнянь з 8 невідомими.
Таблиця 3.6
Пункт відправлення |
Пункт споживання |
Запас |
||||||||||
B1 |
V1 |
B2 |
V2 |
B3 |
V3 |
B4 |
V4 |
B5 |
V5 |
|
||
A1 |
U1 |
4
|
1 45 |
3 |
4 |
4 15 |
60 |
|||||
A2 |
U2 |
2 22 |
3
|
2 13 |
2
|
3 |
35 |
|||||
A3 |
U3 |
3
|
5 |
2 7 |
4 18 |
4 15 |
40 |
|||||
Потреба |
22 |
45 |
20 |
18 |
30 |
135 |
||||||
U1+V2=1;
U1+V5=4;
U2+V1=2;
U2+V3=2;
U3+V3=2;
U3+V4=4;
U3+V5=4.
Покладемо U1=0, тоді з системи знайдемо інші невідомі:
U1=0; U2=0; U3=0; |
V1=2; V2=1; V3=2; V4=4; V5=4. |
Для небазисних клітинок знаходимо оцінки ∆ij = Ui+Vj-Cij.
∆11 = U1+V1-C11=0+2-4= -2; ∆13 = U1+V3-C13=0+2-3= -1;
∆14 = U1+V4-C14=0+4-4=0; ∆22 = U2+V2-C22=0+1-3= -2;
∆24 = U2+V4-C24=0+4-2=2; ∆25 = U2+V5-C25=0+4-3=1;
∆31 = U3+V1-C31=0+2-3= -1; ∆32 = U3+V2-C32=0+1-5= -4.
Оскільки не всі ∆ij≤0, то план не оптимальний. Треба будувати цикл переходу. Шукаємо max(∆ij>0)=2=∆24. В А2В4 ставимо ”+”, в А3В4 ставимо ”-”, в А3В3 ставимо ”+”, в А2В3 ставимо ”-”.
Таблиця 3.7
Пункт відправлення |
Пункт споживання |
Запас |
||||||||||
B1 |
V1 |
B2 |
V2 |
B3 |
V3 |
B4 |
V4 |
B5 |
V5 |
|
||
A1 |
U1 |
4
|
1 45 |
3 |
4 |
4 15 |
60 |
|||||
A2 |
U2 |
2 22 |
3
|
2 13 ”-” |
2 ”+” |
3 |
35 |
|||||
A3 |
U3 |
3
|
5 |
2 7 ”+” |
4 18 ”-” |
4 15 |
40 |
|||||
Потреба |
22 |
45 |
20 |
18 |
30 |
135 |
||||||
Далі з тих клітинок, у яких стоїть " - " вибираємо найменшу величину постачання min(13;18)=13 та додаємо у всі клітинки з ”+” та віднімаємо в усіх клітинках з " - ". Отримуємо табл. 3.8.
Таблиця 3.8
Пункт відправлення |
Пункт споживання |
Запас |
||||||||||
B1 |
V1 |
B2 |
V2 |
B3 |
V3 |
B4 |
V4 |
B5 |
V5 |
|
||
A1 |
U1 |
4
|
1 45 |
3 |
4 |
4 15 |
60 |
|||||
A2 |
U2 |
2 22 |
3
|
2
|
2 13 |
3 |
35 |
|||||
A3 |
U3 |
3
|
5 |
2 20 |
4 5 |
4 15 |
40 |
|||||
Потреба |
22 |
45 |
20 |
18 |
30 |
135 |
||||||
Знову складаємо систему рівнянь:
U1+V2=1;
U1+V5=4;
U2+V1=2;
U2+V4=2;
U3+V3=2;
U3+V4=4;
U3+V5=4.
Знаходимо невідомі:
U1=0; U2= -2; U3=0; |
V1=4; V2=1; V3=2; V4=4; V5=4. |
Для небазисних клітинок знаходимо оцінки ∆ij = Ui+Vj-Cij.
∆11 = U1+V1-C11=0+4-4=0; ∆13 = U1+V3-C13=0+2-3= -1;
∆14 = U1+V4-C14=0+4-4=0; ∆22 = U2+V2-C22= -2+1-3= -4;
∆23 = U2+V3-C23= -2+2-2= -2; ∆25 = U2+V5-C25= -2+4-3= -1;
∆31 = U3+V1-C31=0+4-3=1; ∆32 = U3+V2-C32=0+1-5= -4.
Оскільки не всі ∆ij≤0, то план не оптимальний. Будуємо цикл переходу. В А3В1 ставимо ”+”, в А2В1 ставимо ”-”, в А2В4 ставимо ”+”, в А3В4 ставимо ”-”.
Таблиця 3.9
Пункт відправлення |
Пункт споживання |
Запас |
||||||||||
B1 |
V1 |
B2 |
V2 |
B3 |
V3 |
B4 |
V4 |
B5 |
V5 |
|||
A1 |
U1 |
4
|
1 45 |
3 |
4 |
4 15 |
60 |
|||||
A2 |
U2 |
2 22 ”-” |
3
|
2
|
2 13 ”+” |
3 |
35 |
|||||
A3 |
U3 |
3 ”+” |
5 |
2 20 |
4 5 ”-” |
4 15 |
40 |
|||||
Потреба |
22 |
45 |
20 |
18 |
30 |
135 |
||||||
Таблиця 3.10
Пункт відправлення |
Пункт споживання |
Запас |
||||||||||
B1 |
V1 |
B2 |
V2 |
B3 |
V3 |
B4 |
V4 |
B5 |
V5 |
|||
A1 |
U1 |
4
|
1 45 |
3 |
4 |
4 15 |
60 |
|||||
A2 |
U2 |
2 17 |
3
|
2
|
2 18 |
3 |
35 |
|||||
A3 |
U3 |
3 5 |
5 |
2 20 |
4
|
4 15 |
40 |
|||||
Потреба |
22 |
45 |
20 |
18 |
30 |
135 |
||||||
U1+V2=1; U1+V5=4; U2+V1=2; U2+V4=2;
U3+V1=3; U3+V3=2; U3+V5=4.
Знаходимо невідомі:
U1=0; U2= -1; U3=0; |
V1=3; V2=1; V3=2; V4=3; V5=4. |
∆11 = U1+V1-C11=0+3-4=0; ∆13 = U1+V3-C13=0+2-3= -1;
∆14 = U1+V4-C14=0+3-4= -1; ∆22 = U2+V2-C22= -1+1-3= -3;
∆23 = U2+V3-C23= -1+2-2= -1; ∆25 = U2+V5-C25= -1+4-3=0;
∆34 = U3+V4-C34=0+3-4= -1; ∆32 = U3+V2-C32=0+1-5= -4.
План оптимальний, оскільки всі ∆ij≤0.
;
zmin=45*1+15*4+17*2+18*2+5*3+20*2+15*4=290.
