- •Лабораторний практикум
- •Краматорськ 2009
- •Загальні вказівки
- •Методи одновимірної оптимізації. Знаходження глобального екстремуму функції методом послідовного рівномірного перебору (сканування)
- •Знаходження екстремуму унімодальної функції
- •Знаходження екстремуму функції методом послідовного рівномірного перебору з уточненням
- •Пошук всіх екстремумів функції
- •Завдання до лабораторної роботи
- •Метод дихотомії
- •Метод золотого перетину
- •Завдання до лабораторної роботи
- •Методика оптимізації функції методом найшвидшого спуску
- •Приклад мінімізації функції методом найшвидшого спуску
- •Завдання до лабораторної роботи
- •Загальні вказівки
- •Обчислення градієнту функції на еом
- •Алгоритм оптимізації методом найшвидшого спуску
- •Програмна реалізація методу найшвидшого спуску
- •Завдання до лабораторної роботи
- •Лабораторна робота 5
- •Багатовимірних задач оптимізації
- •Порядок виконання роботи
- •Загальні вказівки
- •Алгоритм методу прямого пошуку
- •Програмна реалізація методу прямого пошуку
- •Завдання до лабораторної роботи
- •Лабораторна робота 6
- •Багатовимірних задач оптимізації
- •Порядок виконання роботи
- •Загальні вказівки
- •Алгоритм методу випадкового пошуку з перерахунком
- •Програмна реалізації методу випадкового пошуку
- •Завдання до лабораторної роботи
- •Лабораторна робота 7
- •Програмування графічним методом
- •Порядок виконання роботи
- •Загальні вказівки
- •Методика розв’язання задачі лінійного програмування графічним методом
- •Приклади розв’язання задач лінійного програмування графічним методом
- •Завдання до лабораторної роботи
- •Продовження таблиці 15
- •Лабораторна робота 8
- •З використанням симплексних таблиць
- •Порядок виконання роботи
- •Загальні вказівки
- •Алгоритм симплексного методу
- •Приклад розв’язання лп-задачі симплексним методом
- •Завдання до лабораторної роботи
- •Лабораторна робота 9
- •Порядок виконання роботи
- •Загальні вказівки
- •Опис роботи програми simc (intsim)
- •Приклад моделювання та розв’язку лп-задачі за допомогою програми simc
- •Індивідуальні завдання до лабораторної роботи
- •Лабораторна робота 10 моделювання транспортних задач та їх
- •Порядок виконання роботи
- •Загальні вказівки
- •Побудова початкового(вихідного) опорного плану
- •Алгоритм методу потенціалів
- •Приклад моделювання та розв’язку т-задачі методом потенціалів
- •Завдання до лабораторної роботи
- •Лабораторна робота 11
- •Лабораторна робота 12
- •Загальні вказівки
- •Загальна методика розв’язання задачі методом динамічного програмування
- •Методика розв’язання задачі оптимального розподілу коштів на розширення виробництва методом динамічного програмування
- •Приклад розв’язання задачі оптимального розподілу коштів методом динамічного програмування
- •Завдання до лабораторної роботи
- •Продовження таблиці 36
- •Список рекомендованої літератури
- •Додаток а завдання до лабораторної роботи 9 Задача 1
- •Задача 2
- •Задача 3
- •Задача 4
- •Задача 5
- •Задача 6
- •Задача 7
- •Задача 8
- •Задача 9
- •Задача 10
- •Задача 11
- •Задача 12
- •Задача 13
- •Задача 14
- •Задача 15
- •Задача 16
- •Задача 17
- •Задача 18
- •Задача 19
- •Задача 20
- •Задача 21
- •Задача 22
- •Задача 23
- •Задача 24
- •Задача 25
- •84313, М. Краматорськ, вул. Шкадінова, 72.
Алгоритм методу потенціалів
Алгоритм методу потенціалів полягає в наступному:
Етап 1. Будується початковий не вироджений опорний план перевезень, наприклад за правилом північно-західного кута або мінімального елемента.
Етап
2. Кожному постачальнику Ai
ставиться у відповідність деяке число
ui
(
),
а кожному споживачу Bj
(
)
– деяке число vj,
названі потенціалами, відповідно,
постачальника Ai
і споживача Bj.
Ці числа підбирають так, щоб у будь-якій
заповненій клітині їх сума дорівнювала
тарифу цієї клітинки, тобто ui
+ vj
= cij.
Оскільки
всіх потенціалів m+n,
а заповнених клітин (базисних перевезень)
m+n-1,
то для визначення всіх чисел ui,та
vj
необхідно розв’язувати систему з m+n-1
рівнянь виду ui+vj=сij
з m+n
невідомими. Для однозначного розв’язання
системи одному з невідомих надають
довільного значення; доцільно те
невідоме, яке найбільш часто зустрічається
в системі покласти рівним нулю. Інші
m+n-1
невідомих потенціалів визначаються
однозначно з розв’язання системи
рівнянь.
Етап 3. Отриманий початковий опорний план перевіряється на оптимальність. Для цього для кожної вільної клітини (i,j) обчислюється оцінка за формулою:
ij = cij - (ui + vj).
План буде оптимальний, якщо для кожної вільної клітини (i,j) оцінка ij є величина не меншою нуля, тобто всі ij0.
Етап 4. Якщо критерій оптимальності не виконаний (є клітини з ij <0), то переходять до нового опорного плану з меншим значенням цільової функції. В число зайнятих вводять вільну клітину, для якої оцінка найменша, і одержують новий план перевезень. Процес продовжується доти, поки не буде отримано оптимальний план, для якого всі оцінки вільних клітин ij 0.
Нехай, наприклад, найменша від’ємна оцінка ij буде для вільної клітини (l,k). Тоді ця клітинка внаслідок перерахунку буде введена в набір зайнятих (з додатними xij) в новому опорному плані. Для знаходження числового значення xlk=t в таблиці з попереднім опорним планом будується так званий цикл перерахунку з початковою (вихідною) клітиною циклу (l,k).
Для побудови такого циклу треба притримуватися таких основних правил:
1 Всі клітини циклу, крім початкової, повинні бути зайнятими (базисними).
2 Починаючи з початкової, пари сусідніх клітин (знаходяться в одному рядку або в одному стовпці) з'єднуються відрізками прямих, які в результаті побудови повинні утворити замкнену ламану (цикл).
3 Кожен наступний відрізок з попереднім повинен утворювати прямий кут.
4 В будь-якому рядку чи стовпці, де є клітинки циклу, їх повинна бути парна кількість (дві, чотири …); загальна кількість вершин циклу теж повинна бути парною.
5 Початкова клітина циклу позначається знаком "+", а інші - знаками "+" і "-" так, щоб будь-які дві сусідні клітини, з’єднані лінією, були позначені протилежними знаками. Клітини циклу, позначені знаком "+", утворять додатний напівцикл, а знаком "-" - від’ємний.
Знаходимо серед усіх клітин від’ємного напівциклу клітину, яка містить найменше значення xij=t. Позначимо таку клітинку (p,q). Ця клітина в новому плані стане вільною. Перерахунок значень в клітинах циклу виконуємо так: значення xij, що містяться у всіх клітинах додатного напівциклу, збільшуємо, а значення xij у всіх клітинках від’ємного напівциклу зменшуємо на величину t. Величини xij>0 в інших зайнятих клітинах залишаються незмінними.
Отримаємо новий поліпшений план, з якого клітина (p,q) виведена і замість неї введена нова клітина (l,k) з xlk=t.
Для перевірки нового плану на оптимальність знову виконують етапи 2, 3 алгоритму. Процес продовжується до одержання плану, в якому всі оцінки ij0.
