- •Історична довідка
- •Розділ 1.Класифікація задач математичного програмування
- •Задачі математичного програмування
- •Приклади економічних задач математичного програмування
- •Розділ 2.Загальна задача лінійного програмування та методи її розв’язку
- •Форми запису задачі лінійного програмування
- •Графічний метод розв‘язку задач лінійного програмування
- •Симплексний метод розв’язку задач лінійного програмування
- •У табл. 2 отримали опорний план, бо у колонці вільних елементів немає від’ємних елементів, але не оптимальний, тому що у цільовому рядку є від’ємні елементи.
- •Як підсумок наведемо етапи розв’язку задачі лінійного програмування симплексним методом у вигляді схеми: Зведення задачі лінійного програмування до стандартної форми
- •Знаходження базисного розв’язку (довільний план задачі, при якому небазисні змінні дорівнюють 0, а базисні – відповідним елементам колонки вільних членів симплексної таблиці)
- •Встановлення опорності
- •Проблема двоїстості в лінійному програмуванні
- •Запитання для самоконтролю
- •Завдання для самостійної роботи
- •1.Знайти оптимальні розв’язки задач графічним методом :
- •Розділ 3. Транспортна задача лінійного програмування
- •Методи побудови опорного плану тз
- •Алгоритм методу потенціалів
- •Початкову транспортну таблицю доповнимо колонками Ui та Vj, куди і впишемо одержані потенціали. Перевіримо, чи виконується умова (6) для небазисних клітин таблиці:
- •Заключні зауваження
- •Запитання для самоконтролю
- •Завдання для самостійної роботи
- •Розділ 4. Загальні відомості про задачі нелінійного програмування. Особливості їх розв’язку
- •Економічна постановка цілочисельної задачі математичного програмування
- •Загальна характеристика методів розв'язку цілочисельних задач математичного програмування
- •Запитання для самоконтролю
- •Тестові завдання з дисципліни “Математичне програмування”
Алгоритм методу потенціалів
Міркування, що стосуються побудови методу потенціалів, виходять з другої теореми подвійності (розділ 2 ), яку в застосуванні до опорного плану транспортної задачі можна сформулювати так.
Теорема (умова оптимальності опорного плану транспортної задачі): Для того, щоб деякий опорний план транспортної задачі був оптимальним, необхідно і достатньо його потенціальності.
Якщо
для деякого опорного плану
існують числа (потенціали) Ui
та Vj
для
яких виконуються умови:
для
базисних клітин:
(5)
для
небазисних клітин:
.
(6)
для всіх і=(1,2,...m) та j=(1,2,...n), то він є оптимальним планом транспортної задачі.
Знайдемо оптимальний план методом потенціалів, маючи не- вироджений опорний план, побудований за діагональним методом.
|
|
|
|
|
ai |
Ui |
|
2 80 |
5 20 |
4 |
6 |
a1=100 |
U1=0 |
|
8
|
4 – 120 |
3 + 80 |
8 |
a2=200 |
U2= -1 |
|
5
|
1 + |
4 – 20 |
5 80 |
a3=100 |
U3=0 |
bj |
b1=80 |
b2=140 |
b3=100 |
b4=80 |
400 400 |
|
Vj |
V1=2 |
V2=5 |
V3=4 |
V4=5 |
|
|
Розглянемо умову (5), згідно з якою позначимо рядки (пункти виробництва) через U1, U2, U3; а колонки (пункти споживання) через V1; V2; V3; V4.
Сукупність чисел Ui та Vj називають системою потенціалів і складають по заповненим клітинам, тобто
x>0
(7)
Ця система містить 6 рівнянь та 7 невідомих і є неозначеною, тобто не має єдиного розв’язку. Нехай один із потенціалів (бажано потенціал того рядка чи колонки, що містить найбільшу кількість заповнених клітин) дорівнює 0, тобто нехай U1=0. Тоді, шляхом підстановки у систему (7) замість U1=0, отримаємо:
V1=2; V2=5; V3=4; V4.=5; U2=-1, U3=0.
Початкову транспортну таблицю доповнимо колонками Ui та Vj, куди і впишемо одержані потенціали. Перевіримо, чи виконується умова (6) для небазисних клітин таблиці:
xij=0
Умова потенціальності порушена у клітині (U3; V2). Якщо такі порушення є більше ніж у одній клітині, то вибирають ту з них, для якої найбільше порушена умова потенціальності плану.
У даному випадку вона одна, що і визначить першу клітину ланцюга транспортної задачі.
Ланцюгом транспортної задачі називають послідовність клітин таблиці, яка задовольняє умови:
Кожна пара клітин міститься або в одному рядку або в одній
колонці;
Кількість клітин має бути парною (починаючи з 4-х), тобто
4,6,8 і т.д.;
Перша і остання клітини ланцюга транспортної задачі мають бути або в одному рядку, або в одній колонці, тобто він повинен бути замкнутим;
Клітини ланцюга транспортної задачі почергово позначають
“+”, “-“ і т.д.
Ланцюг, у якого збігається перша та остання клітини, називається циклом. Ланцюг, що не утворює циклу, називається ациклічним.
Четвертий крок розв’язку транспортної задачі – побудова ланцюгу та перехід до нового плану
Серед елементів ланцюга транспортної задачі, які позначені мінусом (-), треба вибрати найменший.
Перехід до наступної таблиці здійснюється за правилом:
якщо елемент таблиці не входив у ланцюг транспортної задачі, то у наступну таблицю він переноситься без змін, тобто
х=х′
якщо елемент таблиці входив у ланцюг транспортної задачі з позначкою плюс “+”, то у наступній таблиці він буде збільшений на λ
якщо елемент таблиці входив у ланцюг транспортної задачі із позначкою мінус “-“, то у наступній таблиці він буде зменшений на λ.
Отримали наступну таблицю
|
|
|
|
|
ai |
Ui |
|
2 80 |
5 – 20 |
4 |
6 + |
a1=100 |
U1=5 |
|
8
|
4 100 |
3 100 |
8 |
a2=200 |
U2=4 |
|
5
|
1 + 20 |
4
|
5 – 80 |
a3=100 |
U3=1 |
bj |
b1=80 |
b2=140 |
b3=100 |
b4=80 |
400 400 |
|
Vj |
V1= –3 |
V2=0 |
V3= –1 |
V4=4 |
|
|
Тобто Z1>Z2. Ми перейшли до другого опорного плану, що є кращим за попередній (дешевший) і ближчим до оптимального.
Перевіримо його на оптимальність згідно з умовами (5;6).
Для базисних клітин х>0
(8)
Нехай V2=0, тоді розв’яжемо систему рівнянь (8) і отримаємо відповідні значення:
V1= -3; V3= -1; V4.=4; U2=4, U3=1. U1=5.
Для порожніх клітин x=0
Умова потенціальності порушена у клітині (U1; V4).
Будуємо з цієї клітини ланцюг транспортної задачі.
Вибираємо
Переходимо до нової таблиці.
|
|
|
|
|
ai |
Ui |
|
2 80 |
5
|
4 |
6 20 |
a1=100 |
U1=2 |
|
8
|
4 100 |
3 100 |
8 |
a2=200 |
U2=4 |
|
5
|
1 40 |
4
|
5 60 |
a3=100 |
U3=1 |
bj |
b1=80 |
b2=140 |
b3=100 |
b4=80 |
400 400 |
|
Vj |
V1=0 |
V2=0 |
V3= –1 |
V4=4 |
|
|
тобто Z(x1)>Z(x2)>Z(x3)
Перевіримо на оптимальність 3-й план перевезення продукції:
х>0
Нехай V2=0, тоді розв’язавши систему рівнянь, отримаємо такі значення:
V1=0; V3= -1; V4.=4; U2=4, U3=1. U1=2.
x=0
Умова потенціальності виконується для всіх небазисних клітин. Це свідчить про те, що останній план перевезень є оптимальним, і йому відповідає найменша загальна вартість перевезень, тобто
Представимо загальні етапи розв’язку транспортної задачі у вигляді схеми (рис.3)
Перевірка
балансової умови задачі
Не
виконується –балансуємо задачу шляхом
введення фіктивного виробника, якщо( фіктивного
споживача якщо (
)
або
)
Виконується
–зведення умови задачі в таблицю
Побудова початкового
опорного плану перевезень
Перевірка
його на виродженість k=m+n
–1
Рівність
не виконується k<m+n
–1
Подолання
виродженості опорного плану шляхом
введення в базу додаткових клітин за
умови одержання ациклічної сукупності
Рівність виконується
– план не вироджений
Застосовуємо
метод потенціалів для знаходження
оптимального плану перевезень
Будуємо систему
потенціалів
Перевіряємо
виконання умов потенціальності плану
Виконується
–знайдено оптимальний
план
Не виконується
–будуємо цикл в транспортній таблиці,
переходимо до нового опорного плану
