- •Методичні вказівки
- •“Математичне програмування” для студентів денної та заочної форм навчання за напрямом 6.030601– “менеджмент”
- •1 Перелік практичних занять
- •Тема. Розв´язання задач лінійного програмування
- •2 Варіанти практичних завдань
- •Тема 1 Лінійне програмування
- •Тема 2 Цілочислове програмування
- •3 Типовий розв΄язок задач
- •4 Питання до іспиту(заліку)
- •Список літератури Основна література
- •Семестрове практичне завдання з дисципліни “математичне програмування”
- •Підп. До друку Формат 60*841/16. Папір тип. Друк ризографія.
- •Видавничий відділ КрНу імені Михайла Остроградського
- •39614, М. Кременчук, вул. Першотравнева, 20
3 Типовий розв΄язок задач
Завдання 1 Дана З.Л.П.
minZ=3X1-X3+X4-2X5
X1-X2+2X3+4X4=11
X1-X2+3X3+6X4+X5=19
-2X1+3X2-5X3-11X4=-26
.
1.Методом Жордана-Гаусса
а) знайти початковий опорний план і обчислити Z( );
б) перейти до іншого опорного плану й обчислити Z( ).
2. Для одного з опорних планів виразити базисні змінні через вільні, перейти від рівностей в обмеженнях задачі до нерівностей і розв’язати задачу геометрично.
3. Виходячи з опорного плану з «гіршою» функцією мети замінити задачу лінійного програмування в канонічній формі та розв’язати її симплекс-методом.
4.Розв’язати вихідну задачу методом штучного базису.
Розв’язок
1.а) усі обчислення за методом Жордана-Гаусса будемо робити в таблиці 6, попередньо помноживши трете рівняння на – 1, щоб b3=26>0. Позначимо .
Таблиця 6
№ кроку |
Ā1 |
Ā2 |
Ā3 |
Ā4 |
Ā5 |
Ā0 |
|
1 |
-1 |
2 |
4 |
0 |
11 |
0 |
1 |
-1 |
3 |
6 |
1 |
19 |
|
2 |
-3 |
5 |
11 |
0 |
26 |
|
1 |
-1 |
2 |
4 |
0 |
11 |
1 |
0 |
0 |
1 |
2 |
1 |
8 |
|
0 |
-1 |
1 |
3 |
0 |
4 |
|
1 |
1 |
0 |
-2 |
0 |
3 |
2 |
0 |
1 |
0 |
-1 |
1 |
4 |
|
0 |
-1 |
1 |
3 |
0 |
4 |
|
1 |
1 |
0 |
-2 |
0 |
3 |
3 |
-1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
0 |
1 |
1 |
0 |
7 |
Вибравши a11=1 розв´язувальним елементом, застосуємо формулу прямокутника і перерахуємо елементи нової таблиці на 1-му кроці. При виборі розв´язувального елемента враховуємо дві умови: компоненти A0 у новій таблиці повинні бути не менші нуля і для спрощення рахунку розв´язувальний елемент повинен бути ближчим до 1, а найкраще– дорівнювати 1. Тому після 1-го кроку для перерахування таблиці розв´язувальний елемент a33=1, тому що в 1 і 2-ому рівняннях уже є базисні змінні X1 й X5 (вектори Ā1 і Ā5 одиничні). У результаті 2-го кроку були отримані три базисні змінні X1, X5 і X3, яким відповідають базисні одиничні вектори Ā1, Ā5, Ā3. Узявши вільні змінні X2 = X4 =0, одержимо початковий опорний план З.Л.П. *=(3;0;4;0;4), якому відповідає функція мети Z1=3·3-4·1-2·4=-3.
1.б) перейдемо на 3-му кроці до іншого опорного плану. Для цього треба замість якої-небудь базисної змінної ввести іншу. Наприклад, замість X1 X2. При цьому розв´язувальний елемент a12=1 і усі компоненти A0 у новій таблиці >0. У результаті перерахування таблиці одержали після 3-го кроку нові базисні змінні X2, X5, X3 (базисні одиничні вектори Ā2, Ā5, Ā3) і новий опорний план on=(0;3;7;0;1), що забезпечує функцію мети Z2=0·3+3·0-7·1+0-2·1= -9.
2. Розв´яжемо задачу геометрично. Це можливо, тому що n – m = 5 – 3 = 2. З огляду на результати, отримані на 3-му кроці, з таблиці 6 маємо систему рівнянь
X1+X2 -2X4 =3; X2=3-X1+2X4≥0
-X1 +X4+X5=1; => X5=1+X1-X4≥0
X1 +X3+ X4 =7; X3=7-X1-X4≥0
Xi≥0, і=1,…,5.
Виразимо Z через X1 і X4 , з огляду на отримані вирази базисних змінних X2, X5, X3 через вільні X1 і X4
Z=3X1-(7-X1-X4)+X4-2(1+X1-X4)=-9+2X1+4X4 .
Тоді розв'язувана З.Л.П. має вид
min Z=-9+2X1+4X4; -9+ minZ1=2X1+4X4
X1-2X4≤3
-X1+X4≤1 X1≥0
X1+X4≤7 X4≥0
Побудуємо багатогранник розв'язків на площині X1OX4 у 1-й чверті.
Граничні прямі: будуємо за двома точками
X1 |
0 |
3 |
X4 |
-1,5 |
0 |
X1 |
0 |
-1 |
X4 |
1 |
0 |
X4≤1+X1 => ℓ2: X4=7-X1;
X1 |
0 |
7 |
X4 |
7 |
0 |
X4≤7+X1 => ℓ3: X4=7-X1;
Шукані напівплощини позначимо штрихами. У результаті перетину напівплощин одержуємо багатокутник розв'язків ОАВСД,
рис.1.
Рис.1 Графічне розв΄язання З.Л.П.
Для відшукання min Z1 будуємо нормальний вектор N = (2;4) і сім´ю рівнобіжних прямих, що задаються Z1, перпендикулярних N.
Як випливає з рис.1, min Z1 = Z1 (0) = Z1 (0;0) = 2·0+4·0 = 0, то min Z = Z(0) = -9. Для відшукання оптимального плану вихідної задачі підставимо знайдені оптимальні X°1=X°4=0 до (1). Одержимо X°1=0; X°2=3; X°3=7; X°4=0; X°5=1.
3) розв´яжемо симплекс-методом задачу, розглянуту в попередньому прикладі. За початковий опорний план візьмемо перший опорний план =(3;0;4;0;4), якому відповідає функція мети Z1=-3 зі значенням, більшим, ніж для другого опорного плану (Z2=-9). Це дозволить зробити симплексним методом, принаймні, одне перерахування таблиці, тому що неоптимальний.
У цьому випадку ЗЛП має канонічну форму вигляду
X1+X2-2X4 =3
X2-X4+X5 =4
-X2+X3+3X4=4
Xj≥0, (j=1,..,5).
Min Z=3X1-X3+X4-2X5
Розв´яжемо цю задачу за алгоритмом симплекс-методу. Для цього заповнимо симплекс-таблицю, таблиця 7.
Таблиця 7–Симплекс- таблиця
Баз. |
С |
Xбаз |
3 |
0 |
-1 |
1 |
-2 |
Θ0 |
змін. |
базис. |
|
X1 |
X2 |
X3 |
X4 |
X5 |
|
X1 |
3 |
3 |
1 |
1 |
0 |
-2 |
0 |
3/4 |
X5 |
-2 |
4 |
0 |
1 |
0 |
-1 |
1 |
4/1 |
X3 |
-1 |
4 |
0 |
-1 |
1 |
3 |
0 |
- |
Z |
= |
-3 |
0 |
2 |
0 |
-8 |
0 |
|
X2 |
0 |
3 |
1 |
1 |
0 |
-2 |
0 |
|
X5 |
-2 |
1 |
-1 |
0 |
0 |
1 |
1 |
|
Продовження таблиці 7
X3 |
-1 |
7 |
1 |
0 |
1 |
1 |
0 |
|
Z=-9 |
-2 |
0 |
0 |
-4 |
0 |
|
Обчислюємо й оцінки . Оскільки ∆2=2>0,то план не оптимальний. Тому шукаємо інший опорний план, уводячи змінну X2, вектор Ā2, у базис. Для перерахування таблиці знаходимо симплексне відношення для X2 Θ0 = min(3/1; 4/1)=3. Тоді X12 =1 є розв´язувальним елементом. За формулої прямокутника перераховуємо всю таблицю, у тому числі й елементи останнього оцінного рядка. Оскільки всі , то отриманий опорний план =(X1=0; X2=3; X3=7; X4=0; X5=1) оптимальний, причому функція мети Z( )=-9.
Зауваження 1. Для простоти перерахування таблиці використовувалась така схема (правило або формула прямокутника (23)), рис.2:
, (23)
Рис.2 – Схема правила прямокутника
де Н.е –елемент у новій таблиці, що займає ту саму позицію, що і Се –елемент у старій таблиці;
Pе– розв´язувальний елемент;
D1 і D2 –додаткові елементи, що стоять на другій діагоналі прямокутника, якщо вважати, що першу діагональ складають елементи Се і Ре.
Зауваження 2. Правило заповнення оцінного рядка для початкової симплекс-таблиці можна для наступних симплекс-таблиць застосовувати з метою перевірки правильності обчислень за формулою прямокутника.
4) розглянемо і розв´яжемо ЗЛП методом штучного базису, наведену в прикладі.
Складемо з вихідної задачі М-задачу. У 2-му рівнянні є базисна змінна X5, тому туди не додаємо штучну змінну.
MinZ=3X1-X3+X4-2X5+M(X6+X7)
X1-X2+2X3+4X4+X6=11
X1-X2+3X3+6X4+X5=19
2X1-3X2+5X3+11X4+X7=26
Xj≥0 , .
Запишемо дані в симплекс-таблицю, таблиця 8, і заповнимо оцінні рядки 4 і 5 за формулами (24)
. (24)
Таблиця 8 – Симплекс-таблиця М– задачі
|
|
|
3 |
0 |
-1 |
1 |
-2 |
М |
М |
|
Xb |
Cb |
(Xb)i |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
Θ |
X6 |
M |
11 |
1 |
-1 |
2 |
4 |
0 |
1 |
0 |
11/4 |
X5 |
-2 |
19 |
1 |
-1 |
3 |
6 |
1 |
0 |
0 |
19/6 |
X7 |
M |
26 |
2 |
-3 |
5 |
11 |
0 |
0 |
1 |
26/11 |
БезM |
Z |
-38 |
-5 |
2 |
-5 |
-13 |
0 |
0 |
0 |
∆'j |
СМ |
Z |
37 |
3 |
-4 |
7 |
15 |
0 |
0 |
0 |
∆''j |
Х6 |
M |
17/11 |
3/11 |
1/11 |
2/11 |
0 |
0 |
1 |
-4/11 |
17/3 |
X5 |
-2 |
53/11 |
-1/11 |
7/11 |
3/11 |
0 |
1 |
0 |
-6/11 |
|
X4 |
1 |
26/11 |
2/11 |
-3/11 |
5/11 |
1 |
0 |
0 |
1/11 |
26/2 |
БезM |
Z |
80/11 |
-29/11 |
-17/11 |
10/11 |
0 |
0 |
0 |
13/11 |
∆'j |
CM |
Z |
17/11 |
3/11 |
1/11 |
2/11 |
0 |
0 |
0 |
-15/11 |
∆''j |
X1 |
3 |
17/3 |
1 |
1/3 |
2/3 |
0 |
0 |
11/3 |
-4/3 |
17/2 |
X5 |
-2 |
16/3 |
0 |
2/3 |
1/3 |
0 |
1 |
1/3 |
-2/3 |
16 |
X4 |
1 |
4/3 |
0 |
-1/3 |
1/3 |
1 |
0 |
-2/3 |
-1/3 |
4 |
БезM |
Z= |
23/2 |
0 |
-2/3 |
8/3 |
0 |
0 |
29/3 |
7/3 |
∆'j |
CM |
Z=0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
∆''j |
X1 |
3 |
3 |
1 |
1 |
0 |
-2 |
0 |
|
|
3/1 |
X5 |
-2 |
4 |
0 |
1 |
0 |
-1 |
1 |
|
|
4/1 |
Продовження таблиці 8
X3 |
-1 |
4 |
0 |
-1 |
1 |
3 |
0 |
|
|
- |
Z |
= |
-3 |
0 |
2 |
0 |
-8 |
0 |
|
|
∆j |
X2 |
0 |
3 |
1 |
1 |
0 |
-2 |
0 |
|
|
|
X5 |
-2 |
1 |
-1 |
0 |
0 |
1 |
1 |
|
|
|
X3 |
1 |
7 |
1 |
0 |
1 |
1 |
0 |
|
|
|
Z |
|
-9 |
-2 |
0 |
0 |
-4 |
0 |
|
|
∆j |
У 5-му (m+2) рядку є оцінки ∆''j >0 (∆1=3;∆3=7;∆5=15)
Тому опорний план М-задачі не оптимальний. Оскільки ∆5=15 (оцінка з М) найбільша, то X4 введемо в базис. Знайдемо для X4 симплексне відношення Θ0=min(11/4;19/6;26/11)=26/11.
Тому розв´язувальний елемент дорівнює 11 і X7 виводимо з базису. Для цього перераховуємо таблицю, застосовуючи симплексний алгоритм, і так далі.
Після двох перерахувань таблиці або двох ітерацій у базисі не залишиться штучних змінних, базисні змінні X1,X4,X5 ,m+2 (п'ятий) рядок відкидаємо й аналіз проводимо за четвертим рядком. Оскільки ∆3=8/3>0, то отриманий опорний план не оптимальний і в базис уводимо змінну X3 (вектор А3) замість X4, Θ0=min(17/2;16;4)=4.
Розв´язувальний елемент дорівнює 1/3. Після перерахування таблиці одержуємо, що опорний план з базисними змінними не оптимальний, тому що ∆2=2>0. Тому X2 вводимо як нову базисну змінну замість X1, бо Θ0=min(3/1;4/1)=3.
У результаті перерахування симплекс–таблиці одержали оптимальний план 0=(X01=0; X02=3; X03=7; X04=0; X05=1), тому що всі ∆j≤0, що забезпечує
min Z=Z( 0)= –9.
Завдання 2 Задача про розподіл ресурсів
Підприємство може виготовляти чотири види продукції П-1, П-2, П-3, П-4. Збут будь-якого її обсягу забезпечений. Норми витрати ресурсів і прибуток від одиниці кожного виду продукції надані в таблиці 9. Виконати економічний аналіз лінійної моделі:
1) побудувати модель вихідної та двоїстої задач, знайти оптимальні плани x0 і y0;
2) дати економічне тлумачення основних і додаткових змінних вихідної та двоїстої задач;
3) проаналізувати доцільне розширення асортименту продукції за рахунок включення нової продукції П5;
4) установити діапазони зміни вихідних даних за ресурсами і ціною од. продукції, за яких структура оптимального плану не змінюється.
Таблиця 9– Дані задачі розподілу ресурсів
Обсяг ресурсів: трудових, матеріальних, верстатних |
Норми витрат ресурсів на од. продукції |
Нова продукція |
|||
П-1 |
П-2 |
П-3 |
П-4 |
П-5 |
|
3000 |
3 |
4 |
4 |
5 |
5 |
5000 |
2 |
0 |
3 |
4 |
6 |
8000 |
10 |
12 |
10 |
8 |
9 |
Ціна од. продукції |
46 |
12 |
10 |
8 |
50 |
Розв’язок
1.Складемо математичні моделі вихідної та двоїстої задач, позначивши через план випуску j-го виду продукції, а через вартість одиниці i-го ресурсу. Тоді за формулами [2;3;5] математичні моделі вихідної та двоїстої задач мають вигляд:
вихідна задача двоїста задача
max=46X1+12X2+10X3+8X4 min f =3000У1+5000У2+8000У3
3X1+4X2+4X3+5X4≤3000 3У1+2У2+10У3≥46
2X1+3X3+4X4≤5000 4У1+12У3≥12
10X1+12X2+10X3+8X4≤8000 4У1+3У2+10У3≥10
5У1+4У2+8У3≥8
Xj0 Yi0
Для рішення симплекс-методом перейдемо в обмеженнях до рівностей шляхом уведення додаткових змінних
вихідна задача двоїста задача
max=46X1+12X2+10X3+8X4+0(X5+X6+X7) min f =3000У1+5000У2+8000У3
3X1+4X2+4X3+5X4+X5 =4000 3У1+2У2+10У3-У4 =46
2X1+3X3+4X4+X6 =5000 4У1+12У3 -У5 =12
10X1+12X2+10X3+8X4+X7=8000 4У1+3У2+10У3-У6 =10 Xj0 5У1+4У2+8У3-У7 =8
Yi0
У вихідній задачі 7 змінних і 3 обмеження, причому додаткові змінні є базисними. Тому цю задачу відразу можна розв´язувати симплекс-методом. У двоїстій задачі 7 змінних і 4 обмеження, причому для розв´язування симплекс-методом треба вводити штучний базис, а це ще плюс 4 змінні. Тому вихідну задачу розв´язувати простіше. Запишемо її дані в симплекс-таблицю 10 і виконаємо розв´язування за алгоритмом симплексного методу. У результаті після однієї ітерації перерахування таблиці одержали в оцінному рядку всі ∆j≥0. Виходить, отриманий опорний план вихідної задачі X1=800; X2=X3=X4=0; X5=600; X6=3400; X7=0, оптимальний.
Цей план випуску продукції =(800;0;0;0;600;3400;0) забезпечує її максимальну сумарну вартість max Z = 36800 грощ. од.
2. Для того, щоб знайти оптимальний план двоїстої задачі, визначимо взаємозв'язок змінних двоїстих задач і економічний зміст їх додаткових змінних. Для вихідної задачі i- а додаткова змінна
залишок i-го ресурсу для опорного плану вихідної задачі, ,
Таблиця 10–Симплекс-таблиця для задачі розподілу ресурсів
Базис. змін. |
Cb |
Xb |
46 |
12 |
10 |
8 |
0 |
0 |
0 |
Θo |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
||||
X5 |
0 |
3000 |
3 |
4 |
4 |
5 |
1 |
0 |
0 |
1000 |
X6 |
0 |
5000 |
2 |
0 |
3 |
4 |
0 |
1 |
0 |
2500 |
Продовження таблиці 4
X7 |
0 |
8000 |
10 |
12 |
10 |
8 |
0 |
0 |
1 |
800 |
|
Z = |
0 |
-46 |
-12 |
-10 |
-8 |
1 |
0 |
0 |
|
||
X5 |
0 |
600 |
0 |
0.4 |
1 |
2.6 |
0 |
1 |
-0.3 |
|
|
X6 |
0 |
3400 |
0 |
-2.4 |
1 |
2.4 |
0 |
1 |
-0.2 |
|
|
X1 |
46 |
800 |
1 |
1.2 |
1 |
0.8 |
0 |
0 |
0.1 |
|
|
Z = |
36800 |
0 |
43.2 |
36 |
28.8 |
0 |
0 |
4.6 |
|
||
|
|
|
У4 |
У5 |
У6 |
У7 |
У1 |
У2 |
У3 |
|
i-а змінна двоїстої задачі, означає ціну за одиницю цього ресурсу.
Для двоїстої задачі j-а додаткова змінна,
,
різниця між сумарною вартістю витрат усіх ресурсів ym+j на одиницю j-го виду продукції та вартістю за одиницю цієї продукції. Тому ym+j (j=1,…,n) можна трактувати як характеристику рентабельності випуску j-го виду продукції. Якщо ym+j>0, тоді випуск j-го виду продукції не рентабельний (витрати більші за ціну), якщо ym+j=0, тоді випуск j-го виду продукції рентабельний. У зв´язку за вищевикладеним, основним змінним однієї задачі відповідають додаткові змінні іншої, тобто
Ym+i Xi
Причому для оптимальних планів цих задач випливає, що
(25)
(26)
З огляду на те, що всі змінні від´ємні, з (25) і (26) одержимо для оптимальних планів
X0n+i=0 y0i>0 чи X0n+i>0 Y0i=0
Y0m+j=0 X0j>0 чи Y0m+j>0 X0j=0
З (6) випливає: для оптимальних планів двоїстих задач:
1) якщо i-й ресурс цілком використовується, (X0n+i=0) , тоді його ціна Y0i>0, якщо ні, (X0n+i>0) , тоді його ціна y0i=0, (j=1,…,m);
2) якщо витрати на випуск одиниці j-го виду продукції більші за її ціну, Y0m+j>0, то ця продукція не випускається, X0j=0, якщо Y0m+j=0, тоді випуск j-го виду продукції рентабельний і X0j>0, (j=1,…,n).
З огляду на вищесказане і відповідність змінних, знайдемо оптимальний план двоїстої задачі за даними симплекс-таблиці з оптимальним планом.
Одержимо =(0;0;4,6;0;43,2;36;28,8)
З симплекс-таблиці з оптимальним планом випливає, що min f = max Z = 36800 грош.од..
З огляду на економічний зміст змінних двоїстих задач проведемо економічний аналіз результатів.
Рентабельний тільки випуск продукції першого виду (y04=0) у кількості X01=800од. Випуск інших видів продукції не рентабельний, при випуску один. продукції цих видів збитки складуть, відповідно, 43,2(У05), 36(У06), 28,8(У07) грош. одиниць. Тому X02=X03=X04=0. При такому плані випуску максимальна вартість випущеної продукції складе 36800 грош.од..При цьому верстатні ресурси цілком витратяться, їхній залишок X07=0, вони дефіцитні, їхня ціна за один. складе В03=4,6 грош.од..Трудові та матеріальні ресурси витрачаються не цілком, вони не дефіцитні. Тому їхня ціна за одиницю. У01=У02=0, залишки, відповідно, X05=600 і X06=3400 од.
З огляду на вищевикладене, для збільшення сумарної вартості випущеної продукції необхідно збільшувати запаси дефіцитного ресурсу–верстатного.
З [2;3;5] випливає, що
.
Тому збільшення запасу верстатного ресурсу b3 на один. призведе до збільшення максимальної сумарної вартості випущеної продукції на В03 =
4,6 грош. од..
3) досліджуємо допустимі межі зміни дефіцитного ресурсу, усередині яких змінні, що входять в оптимальний базис, не змінюються, тобто не змінюється асортимент продукції, що випускається, а змінюється тільки її обсяг залежно від збільшення чи зменшення ресурсу на ∆b. Якщо дефіцитним є i-й ресурс, то, з огляду на лінійність матричних перетворень, можна показати [2;3;5], що новий оптимальний план при зміні i-го ресурсу на ∆bi буде
(27)
причому
(28)
З (27) і (28) знайдемо ∆b3, m=4
Тоді b3 + ∆b3 буде змінюватися
8000-8000≤b3≤8000+2000
0≤b3≤10000
Таким чином, якщо ринок не насичений продукцією першого виду і є конкуренти, підприємству доцільно зменшити запаси трудових і матеріальних ресурсів на 600 і 3400 од., відповідно, і за рахунок цих засобів закупити 2000 од. верстатних ресурсів. Це призведе до збільшення випуску продукції першого виду до X01 = 800+0,1·2000 = 1000 од. і вартості випущеної продукції до 46·1000 = 46000 грош. од., тобто на 4,6·2000 = 9200 грош. од..
Якщо на ринку немає конкурентів з реалізації продукції першого виду, тобто підприємство монополіст, то збільшення вартості продукції можна досягти іншим шляхом– за рахунок збільшення її ціни. Досліджуємо допустимі межі її зміни ∆C. При цьому будемо використовувати оптимальне розв´язання двоїстої задачі В0, що знаходиться в оцінному рядку останньої таблиці. Формули, аналогічні (27), (28) мають вигляд
причому
де - вектор – рядок останньої симплекс-таблиці, який відповідає виду продукції, що випускається.
У нашій таблиці це третій рядок. Тоді
∆С1≥0 ∆С1≥0
43,2+1,2∆С1≥0 ∆С1≥-36
36+∆С1≥0 => ∆С1≥-36 => ∆С1≥0
28,8+0,8∆С1≥0 ∆С1≥-36
4,6+0,1∆С1≥0 ∆С1≥-46
Тоді 46≤C1<∞
Одержали, що теоретично ціну на продукцію першого виду можна збільшувати необмежено.
4) проаналізуємо доцільність розширення асортименту за рахунок випуску продукції П-5. Для цього порахуємо для отриманих оптимальних цін на ресурси їхні сумарні витрати на одиницю П-5. Одержимо 5·У01+6·У02+9·У03=5·0 + 6·0 + 9·4,6 = 41,4 грош. од. оскільки витрати менші за заплановану ціну один. продукції (41,4 < 50), то випуск продукції П-5 рентабельний і прибуток від випуску одиниці П-5 складе 8,6 грош. од.
Завдання 3 Розв´язання транспортної задачі
Є три постачальники і чотири споживачі однорідного продукту. Потужності постачальників і попити споживачів, а також витрати на перевезення одиниці вантажу для кожної пари «постачальник-споживач» зведені в таблицю 11 постачань.
Задача у наступному: знайти об'єми перевезень для кожної пари «постачальник-споживач» так, щоб:
потужності всіх постачальників були реалізовані;
попити всіх споживачів були задоволені;
сумарні витрати на перевезення були мінімальні.
Таблиця 11–Потужності постачальників і попити споживачів, витрати на перевезення одиниці вантажу
|
Споживачі |
Потужність постачальників ai |
||||
B1 |
B2 |
B3 |
B4 |
|||
Постачальники |
A1 |
1 |
2 |
5 |
3 |
60 |
A2 |
1 |
6 |
5 |
2 |
120 |
|
A3 |
6 |
3 |
7 |
4 |
100 |
|
Попит bj |
20 |
110 |
40 |
110 |
280 |
Розв´язок
Поставлено збалансовану транспортну задачу, оскільки сумарний попит дорівнює сумарній потужності постачальників 280.
Для отримання начального опорного плану перевезень скористаємось методом мінімального елемента.
Для покращення будемо використовувати таблицю 12, у правому верхньому кутку якої стоїть тариф відповідного перевезення, а у лівому нижньому кутку – плановий обсяг перевезення.
Знаходимо в таблиці клітинки з найменшим тарифом. Таких клітин дві- (1;1) і (2;1) із тарифом, що дорівнює 1. Порівнюємо максимально можливі постачання для цих клітинок: для клітинки (1;1) x11=min{60,20}=20, для клітинки (2;1) x21=min{120,20}=20. Оскільки їх значення збігаються, то максимально можливе постачання записуємо в будь-яку з них. Наприклад, записуємо постачання, що дорівнює 20 од. у клітинку (2;1). У результаті попит першого споживача задоволений і перший стовпець таблиці постачань випадає
з наступного розгляду, а виробничу потужність для другого рядка зменшуємо на 20 од. Аналогічним способом продовжуємо заповнювати невикреслені
Таблиця 12– Отримання начального опорного плану перевезень
-
1
2
3
4
ai
1
1
2
5
3
60
60
2
1
6
5
2
120
100
20
100
3
6
3
7
4
100
50
40
10
bj
20
110
40
110
280
клітинки таблиці. У останній клітинці попит і пропозиція повинні збігтися, оскільки розглядається збалансована задача. Слід зазначити, що в таблиці повинна бути заповнена n+m-1 клітинка перевезень ( де n - число постачальників, m- число споживачів ).
Наприклад, для розглянутої задачі повинно бути заповнено 3+4-1=6 клітин. Остаточно одержуємо початковий опорний план перевезень.
Тепер скористаємося методом потенціалів, усі розрахунки виконаємо у таблиці 13. Для цього кожному стовпцю припишемо потенціал vj , а кожному рядку - потенціал ui. Для кожної заповненої клітини складемо лінійне рівняння за правилом ui+vj=cij, де cij - тариф відповідного перевезення. Потім розв’яжемо систему 6-ти рівнянь.
Оскільки в рівняннях буде 7 невідомих (3 потенціали u і 4 потенціали v), то довільний потенціал можна дорівняти до нуля.
Тепер для кожної незаповненої клітинки необхідно знайти оцінку ij= ui+vj-cij. Якщо всі оцінки будуть негативними або нульовими, то початковий опорний план є оптимальним.
Таблиця 13– Розрахунки методом потенціалів
|
1 |
2 |
3 |
4 |
ai |
|||||
V1=3 |
V2=3 |
V3=7 |
V4=4 |
|||||||
1 |
U1=-1 |
1 |
1 |
|
2 |
-1 |
5 |
0 |
3 |
60
|
|
|
60 |
|
|
|
|
|
|||
2 |
U2=-2 |
|
1 |
-5 |
6 |
0 |
5 |
|
2 |
120
|
20 |
|
|
|
|
|
100 |
|
|||
3 |
U3=0 |
-3 |
6 |
|
3 |
|
7 |
|
4 |
100 |
|
|
50 |
|
40 |
|
10 |
|
|||
bj |
20 |
110 |
40 |
110 |
|
11=-1+3-1=1; 13=-1+7-5=1; 14=-1+4-3=0; 22=-2+3-6=-5; 23=-2+7-5=0; 31=0+3-6= -3. Оцінки 11 і 13 позитивні, отже, отримане початкове опорне розв’язання не оптимальне. З оцінок вибираємо найбільшу– 11, отже, у клітинку (1;1) будемо заносити ненульове перевезення. Заносимо в клітинку (1;1) знак «+» і будуємо ланцюг потенціалів, що може проходити тільки по заповнених клітинках, із чергуванням знаків «+» і «-» і повертається у вихідну незаповнену клітину, таблиця 14.
Cеред клітинок, позначених мінусом, вибираємо ту, що містить найменше перевезення.Це клітинка (3;4) з К=Х34 =10. У подальших обчисленнях ця клітинка буде вважатися незаповненою, тому що далі вміст вибраної клітинки,10, додаємо до вмісту клітинок, що позначені «+», і віднімаємо з клітинок, що позначені «-».У таблиці 15 повинна виявитися, як і раніше, n+m-1
Таблиця 14– Перехід до іньшого опорного плану з використанням ланцюга потенціалів
|
1 |
2 |
3 |
4 |
ai |
|||||
V1 |
V2 |
V3 |
V4 |
|||||||
1 |
U1 |
|
1 |
|
2 |
|
5 |
|
3 |
60
|
+
|
|
- 60 |
|
|
|
|
|
|||
2 |
U2 |
|
1 |
|
6 |
|
5 |
|
2 |
120
|
- 20 |
|
|
|
|
|
+ 1 00 |
|
|||
3 |
U3 |
|
6 |
|
3 |
|
7 |
|
4 |
100 |
|
|
+ 50 |
|
40 |
|
- 10 |
|
|||
b j |
20 |
110 |
40 |
110 |
|
заповнена клітинка. Перевіряємо отриманий опорний план на оптимальність.
Таблиця 15– Отриманий опорний план
|
1 |
2 |
3 |
4 |
ai |
|||||
V1=2 |
V2=3 |
V3=7 |
V4=3 |
|||||||
1 |
U1=-1 |
|
1 |
|
2 |
1 |
5 |
-1 |
3 |
60
|
10 |
|
- 50 |
|
+
|
|
|
|
|||
2 |
U2=-1 |
|
1 |
- 4 |
6 |
1 |
5 |
|
2 |
120
|
10 |
|
|
|
|
|
110 |
|
Продовження таблиці 15
3 |
U3=0 |
-4 |
6 |
|
3 |
|
7 |
-1 |
4 |
100 |
|
|
+ 60 |
|
- 40 |
|
|
|
|||
bj |
20 |
110 |
40 |
110 |
|
13=1; 14=-1; 22= -4; 23=1; 31= -4; 34= -1.
Тому що є дві клітини (1;3) і (2;3) з позитивними оцінками, то отриманий опорний план, таблиця 15, не оптимальний. Знайдемо новий опорний план з використанням ланцюга потенціалів, таблиця 15.
Оскільки дві позитивні оцінки набувають однакових позитивних значень, 13=23=1, то можна занести ненульове перевезення або в клітинку (1;3), або в клітинку (2;3). Якщо у ланцюг будє включено клітинку (1;3),таблиця 15, то це перевезення буде дорівнювати 40 од.. Таким чіном одержано новий опорний план, таблиця 16.
Таблиця 16– Оптимальний опорний план
|
1 |
2 |
3 |
4 |
ai |
|||||
V1=1 |
V2=2 |
V3=5 |
V4=2 |
|||||||
1 |
U1=0 |
|
1 |
|
2 |
|
5 |
-1 |
3 |
60
|
10 |
|
10 |
|
40 |
|
|
|
|||
2 |
U2=0 |
|
1 |
-4 |
6 |
0 |
5 |
|
2 |
120
|
10 |
|
|
|
|
|
110 |
|
Продовження таблиці 16
3 |
U3=1 |
-4 |
6 |
|
3 |
-1 |
7 |
-1 |
4 |
100 |
|
|
100 |
|
|
|
|
|
|||
bj |
20 |
110 |
40 |
110 |
|
Перевіряємо отриманий опорний план на оптимальність.
14= -1; 22= -4; 23= 0; 31= -4; 33= -1; 34= -1.
Оскільки серед оцінок немає позитивних, можна сказати, що отриманий опорний план є оптимальним, але не єдиним (23= 0).
У підсумку підприємствам можна запропонувати наступний план перевезень:
П ри такому розподілі перевезень потужності всіх постачальників будуть реалізовані, попит усіх споживачів задоволений, сумарні витрати складуть:
грош. од.
Завдання 4 Розв´язання задачі про призначення
У конструкторському бюро потрібно розробити проект машини, що складається із чотирьох вузлів. До їх розробки можна залучити чотирьох конструкторів. Відомий час, що витрачається кожним конструктором на розробку будь-якого вузла. Потрібно визначити, хто і який вузол машини повинен проектувати, щоб сумарний час проектування всієї машини був мінімальним.
Розв´язок
Нехай необхідно розв’язати задачу про призначення, якщо задана матриця витрат часу на розробку будь-якого вузла кожним конструктором:
.
Приведемо матрицю до такого вигляду, щоб у кожному стовпці й кожному рядку знаходився хоча б один нуль. Для цього знайдемо в кожному рядку матриці мінімальний елемент і віднімемо його від усіх елементів відповідного рядка. Аналогічні перетворення виконаємо також з елементами стовпців.
Якщо після першого кроку можливий вибір чотирьох незалежних нулів, тоді можна стверджувати, що задача розв’язана. Незалежні нулі для зручності будемо позначати (*). При розставленні позначок найкраще вибирати рядок або стовпець, що містять найменшу кількість нулів. У цьому рядку (стовпці) вибираємо нуль, позначаємо його і викреслюємо інші нулі в рядку чи стовпці, на перетині яких знаходиться вибраний (або незалежний) нуль. Позначки ставимо доти, доки в матриці існують вільні (непозначені або невикреслені) нулі.
У розглянутому прикладі не вдалося відразу ж одержати оптимальне розв’язання, отже, переходимо до виконання третього кроку.
Проведемо мінімальне число горизонтальних і вертикальних ліній, що перетинають, принаймні, один раз усі нулі. Для задач невеликої розмірності візуально легко нанести шукані лінії, для більш складних зручно використати наступний алгоритм:
1. Позначаємо всі рядки, що не містять незалежних нулів.
2. Позначаємо всі стовпці, що містять нуль хоча б в одному позначеному рядку.
3. Позначаємо всі рядки, що містять незалежні нулі в позначених стовпцях.
Кроки 2 і 3 виконуємо доти, доки можливо ставити позначки. Далі викреслюємо непозначені рядки і позначені стовпці.
Якщо виявилося, що кількість ліній дорівнює n ,тоді необхідно повернутися на попередній крок (позначки нулів) і знову вибрати незалежні нулі. Такий варіант можливий, якщо при проставлянні позначок 2 або більше нулів у рядку мали «однакове право» бути незалежними.
Серед елементів, через які не пройшла жодна з ліній, вибираємо найменший. Віднімаємо це число від усіх елементів, через які не пройшла жодна лінія, і додаємо його до всіх елементів, через які проведені дві лінії.
П овертаємося до кроку вибору незалежних нулів. У розглянутому прикладі одержуємо відразу два оптимальних розв’язання:
1-ше завдання 1-й ресурс;
2-ге завдання 2-й ресурс (або 4-й ресурс);
3-тє завдання 3-й ресурс;
4-те завдання 4-й ресурс (або 2-й ресурс).
У результаті такого призначення система виконає всі завдання за 17 умовних одиниць часу.
Зауваження. У тому випадку, якщо необхідно розв’язати задачу отримання максимального значення функції мети, можна скористатися наступною формулою переходу, що слушна для будь-якої задачі лінійного і нелінійного програмування: min (L) = - max (-L) (тобто елементи матриці С помножити на (-1) ).
Завдання 5 Розв’язати задачу цілочислового програмування
Розв’язання
Зведемо ЗЛП до канонічного вигляду, помноживши перше рівняння на –1.
Оскільки в рівняннях обмежень відсутні базисні змінні, то введемо штучні базисні змінні , і розв’яжемо М-задачу в симплекс-таблиці 17.
Таблиця 17– Симплекс-таблиця М-задачі
|
|
с |
2 |
-1 |
-5 |
-3 |
М |
М |
|
хб |
сб |
xi |
x1 |
x2 |
х3 |
х4 |
x5 |
х6 |
Q |
х5 |
М |
7 |
-1 |
2 |
3 |
1 |
1 |
0 |
7/3 |
x6 |
М |
6 |
2 |
1 |
-1 |
3 |
0 |
1 |
6/3 |
без М |
|
0 |
-2 |
1 |
5 |
3 |
0 |
0 |
∆'j |
с М |
|
13 |
1 |
3 |
2 |
4 |
0 |
0 |
∆''j |
х5 |
М |
5 |
-5/3 |
5/3 |
10/3 |
0 |
1 |
-1/3 |
1,5 |
х4 |
-3 |
2 |
2/3 |
1/3 |
-1/3 |
1 |
0 |
1/3 |
|
без М |
|
-6 |
-4 |
0 |
6 |
0 |
0 |
-1 |
∆'j |
с М |
|
5 |
-5/3 |
5/3 |
10/3 |
0 |
0 |
-4/3 |
∆''j |
x3 |
-5 |
1,5 |
-0,5 |
0,5 |
1 |
0 |
0,3 |
-0,1 |
|
х4 |
-3 |
2,5 |
0,5 |
0,5 |
0 |
1 |
0,1 |
0,3 |
|
без М |
f |
-15 |
-1 |
-3 |
0 |
0 |
-1,8 |
-0,4 |
∆'j |
с М |
|
0 |
0 |
0 |
0 |
0 |
-1 |
-1 |
∆''j |
Оскільки , то отриманий план ЗЛП: не цілочисловий. Застосуємо метод Гоморі і знайдемо розв’язання ЗЦП.
Складемо правильне відсікання
.
Оскільки , то для побудови відсікання можна взяти будь-який рядок, наприклад, другий.
Одержимо
Додамо це обмеження новим рядком до симплекс-таблиці 18.
Оскільки j , то отриманий план: , оптимальний, цілочисловий,
Таблиця 18– Симплекс-таблиця
|
|
|
2 |
-1 |
-5 |
-3 |
0 |
|
Хб |
Сб |
Xі |
X1 |
X2 |
X3 |
X4 |
X5 |
Q |
x3 |
-5 |
1,5 |
-0,5 |
0,5 |
1 |
0 |
0 |
|
х4 |
-3 |
2,5 |
0,5 |
0,5 |
0 |
1 |
0 |
0,5 |
х5 |
0 |
-0,5 |
-0,5 |
-0,5 |
0 |
0 |
1 |
1 |
f |
= |
-1,5 |
-1 |
-3 |
0 |
0 |
0 |
j |
x3 |
-5 |
2 |
0 |
2 |
1 |
0 |
-1 |
|
х4 |
-3 |
2 |
0 |
0 |
0 |
1 |
1 |
|
x1 |
2 |
1 |
1 |
1 |
0 |
0 |
-2 |
|
f |
= |
-14 |
0 |
-2 |
0 |
0 |
-2 |
j |
Зауваження. Якщо розв’язувати З.Ц.П. на максимум функції мети f, тоді штучні базисні змінні додаються до функції мети з коефіцієнтами – М.