
- •Угорський метод транспортної задачі
- •Різновиди транспортних задач.
- •Розв’язок задач цлп.
- •Класифікація методів розв’язку цлп.
- •Комбінаторний метод
- •Метод відкидання Гоморі_1
- •Цілочисельне програмування гоморі 2.
- •Стратегії розгалуження для мро.
- •Динамічне програмування
- •Головний принцип оптимальності (принцип Белмана).
Комбінаторний метод
2)Дискретне динамічне програмування (без сімплекс методу, на основі "лавинообразного" дослідження варіантів).
Потрібно сформувати рівні, кожен рівень при програмуванні створюється памяттю.
а)ОДЗ для кожного Х можна збудувати шляхом перевірки кожного обмеження
x1= [0,0]
x2= [0,2]
б) Динамічне дискретне программування на основі "лавинообразної" перевірки варіант.
3)Методи відкидання (методи Гоморі 1,2).
Суть методу в слідуючому:
а) отримання першого рішення методом Simple або Double методом
б) на основі максимальної дробової змінної формуються нові обмеження (відкидання дробової частини).
в) рішення нової системи рівнянь, розмірністю (m+1; n+1)
г)повторення пунктів б) і в) доки рішення не буде цілочисельне.
Гоморі –1 : для умови коли всі змінні повинні бути цілечисельним.
Гоморі –2 : частково (не на всі змінні накладається умова цілочисельності).
4) Метод (принцип) Розгалужень і обмежень.
5)Адитивний алгоритм (будується на постійному додаванніі) для задач Булевої оптимізації.
Задача про рюкзак (задача управління передачі файлів в режимі електронної пошти )де
Σсixi->min ,
Σaixi≤ bj j=1,N
xi є {0,1}
xi – брати річ (файл) з собою;
сi – цінність речі (розмір файлу);
ai – маса речі (розмір файлу);
bj – об’єм рюкзака (швидкість передачі даних, помножена на час передачі).
Метод відкидання Гоморі_1
Алгоритм можна зобразити слідуючою схемою.
Використовуючи см-метод, ДСМ. Розв’язок може бути цілочисельним і нецілочисельним.
Якщо стовпчик А0 – всі значення цілі -> рішення знайдено.
Якщо значення дробове – виділяємо стовпчик для відкидання дробової частини
Приклад Гоморі_1.
7х1+9х2->max
-х1+3х2+х1 =6
7х1+х2+х4 =35
х1,...х4 є {0,1,2,...}
7 9 0 0
Сх Вх А0 А1 А2 А3 А4
0 х3 6 -1 3 1 0
0 х4 35 7 1 0 1
∆ -7 -9 0 0
В даному випадку використовується Simple метод.
Неприпустимого рішення в нас немає (А0) -> Simple метод. Базис х2 х1
А0 А1 А2 А3 А4
х2 3.5 0 1 0.318 0,045
max число -> х1 4.5 1 0 -0,1 0,135
Умова нецілочисельності – вибираємо направляючий рядочок і додаємо обмеження (на основі 0.5).
Z =63;
Х =(4.5,3.5,0,0).
Формуємо нове відкидання і добавляємо нову змінну х5
А0 А1 А2 А3 А4 А5
х2 3.5 0 1 0.318 0,045 0
х1 4.5 1 0 -0,1 0,135 0
х5 –0.5 0 0 -0.9 -0.136 1
∆ 0.3 0 0 2.545 1.364 0
Х=(4.5; 3.5; 0; 0), 7 ітерацій
Х=(4,2; 1,4; 1; 1; 0)
Z=54
Цілочисельне програмування гоморі 2.
Використовується у випадку , якщо всі змінні чілочисельні.
Алгоритм Гоморі 2 аналогічний до Гоморі1
ai0=bi , якщо j=0
,
якщо xj-ціле
та
yi
=
, якщо xj-ціле
та
, якщо xj-не
ціле та aij0
,
якщо xj-не
ціле та aij0
Метод "Розгалужень та обмежень".
Метод (принцип) Бренч & Браунд - Метод розгалужень та обмежень.
Принципи МРО.
1)Розгалуження. На основі вибраної стратегії та типу задачі розроблено алгоритм будування дерева (розгалуження).При цьому розгалуження в довжину і ширину
2)Рекорд
–
максимальне значення або максимально
можлива оцінка, яку можна отримати в
кінці розгалуження.
Не завжди рекорд можна вирахувати.
3) Оцінка – це поточний стан розгалуження, яке потрібно порівняти з Z≤ .
Якщо немає можливості такої операції, необхідно "тягнути" в пам’яті всі Z і визначити найкращі Z.
4)Відкидання - вибрати краще одне чи декілька розгалужень, найгірше відкинути і забути, погане відкласти в сторону для подальшого аналізу.