- •Лекція №1
- •Лекція №2
- •Лекція №3
- •Лекція № 4
- •Лекція №5
- •Лекція № 6
- •Лекція №7
- •Лекція 8
- •2 Алгоритм симплекс-методу.
- •Двоїстість лінійного програмування.
- •Приклад
- •Симетричні двоїсті задачі. З адача іі
- •Двоїстий симплекс - метод.
- •Перша теорема двоїстості.
- •Симетричні двоїсті задачі.
- •Алгоритм двоїстого симплекс-методу.
- •Приклад.
- •Економічна інтерпретація прямої та двоїстої задачі.
- •Економічна інтерпретація прямої та двоїстої задачі.
- •Транспортна задача лінійного програмування (в найпростішому варіанті – класична).
- •Властивості транспортної задачі.
- •Знаходження первинного опорного розв’язку т-задачі. Метод північно-західного кута.
- •Метод мінімального елементу в рядках.
- •Метод потенціалів в розв’язку транспортної задачі.
- •Алгоритм методу потенціалів.
- •Дискретне програмування. Математичні моделі задач дискретного програмування.
- •Задачі про призначення.
- •Задача про комівояжера.
- •Метод відокремлюючих площин.
Лекція №2
Приклад:
Дані розв’язки:
х1= (4, 0, 8, 1, 0);
х2= (0, 1, 10, 0, 0);
х3= ( , , , ,).
Завдання: перевірити допустимість розвязків.
Відповідь: х1 , х2 - допустимі розвязки, х3 - недопустимий розв’язок.
Знайти значення цільової функції:
f (х1) = 2 – оптимальний розв’язок;
f (х2) = -7– оптимальний розв’язок.
Задачі лінійного програмування (ЗЛП).
Форми ЗЛП.
1. ЗЛП з обмеженнями – рівностями (основна ЗЛП).
Канонічна форма ЗЛП.
Маємо: х1, х2 , …, хn.
Необхідно знайти такі невідємні значення цих змінних, яких би задовольняли системи лінійних рівнянь (3)
і , крім цього, обертали б в мінімум лінійну функцію:
L = c1x1 + c2x2 + … cnxn min.
Симетрична форма.
L = c1x1 + c2x2 + … + cnxn min (4.1);
(4.2)
Будемо вважати, що всі ці нерівності лінійно – незалежні, тобто жодне з них неможливо представити в вигляді лінійної комбінації інших.
Перехід від однієї форми ЗЛП в іншу.
Від задачі з обмеженнями легко перейти до ОЗЛП. Будемо вважати, що ЗЛП задана в вигляді
(4.3).
Будемо називати змінні у1, у2, …, ум додатковими змінними.
Припустимо, що ЗЛП задана в вигляді
Таким чином виникає ЗЛП.
Знайти всі відємні значення n+m змінних х1, …, хn, у1, …, уm , щоби вони задовольняли систему (4.3) і перетворювали в максимум, або в мінімум функцію (4.1). Отже, отримали ОЗЛП.
Можливий і зворотній перехід.
Нехай дана ЗЛП в канонічній формі, або стандартній. Введемо позначення
- матриця ЗЛП,
- вектор вільних
членів,
с = (с1, с2, …, сn) – вектор коефіцієнтів ЦФ,
- вектор невідомих.
Тоді задача прийме вигляд
(c, x) max;
A1x1 + A2x2 + … + Anxn b , де
А – вектори умов задачі при Х.
Геометричний зміст ЗЛП.
Розглянемо випадок, коли число змінних (n) на два більше ніж число незалежних рівняннь (m), тобто (n – m) = 2.
В такому випадку можна дві змінних , наприклад х1 та х2, обрати в якості вільних, а інші зробити базисними і виразити їх через вільні. Припустимо, що це зроблено. Отже, маємо ОЗЛП:
(5.1)
Дамо задачі лінійного програмування геометричну інтерпритацію:
По віссям ОХ1 та ОХ2 бкдемо відкладувати значення вільних змінних х1 та х2. Візьмемо перше рівняння:
х3 = 31х1 + 32х2 +3 0
і припустимо, що х3 = 0. Тоді 31х1 + 32х2 +3 = 0. Розвязуємо це рівняння і отримуємо рівняння кривої. Візьмемо цю криву х3 і відмітимо рисками ту сторону, де х3 > 0.
Наступні криві будуємо аналогічно наведеному принципу.
В результаті ми отримали (m – 2) прямих, кожна з яких визначає припустиму півплощину.
Частину площини Х1ОХ2 , яка належить одночасно всім цим півплощинам, утворює ОПР (область припустимих розвязків).
Не важко переконатися, що ОПР утворює завжди опуклий многокутник.
Визначення:
Множина точок n – вимірного євклідового простору називається опуклим, якщо разом з будь – якими двома точками цього простору воно містить також відрізок, з цими точками на кінцях.
Лекція №3
Задача.
Знайти з числа припустимих оптимальний розвязок, тобто таке яке перетворює в мінімум ЦФ
L = c1x1 + c2x2 + … + cnxn (5.2).
Підставимо вираз (5.1) в формулу (5.2) і виразимо L як ЦФ лише вільних змінних х1 та х2. Отримаємо
L = 0 + 1x1 + 2x2 (5.3).
Як бачимо, рівняння (5.3) досягає мінімума при тих самих х1 та х2, що і функція
L = 1x1 + 2x2 (5.4).
Знайдемо ці значення. Нехай L = с, тоді отримаємо рівняння прямої на площині Х1ОХ2. Кутовий коефіцієнт цієї прямої дорівнює (1 / 2) , а відрізок, відрізаємий від віссі ОХ2 буде дорівнювати.
Нехай маємо ОПР і пряму L = 0. При переміщенні L = 0 лінійна форма L* буде спадати. Отже, найменше значення вона досягне в точці А. Нехай х*1 та х*2 визначають оптимальний розвязок ЗЛП. Можна підставити їх в (5.1), знайти значення базисних змінних х*3, х*4, …, х*n, а також значення функції
Lmin = 0 + 1x*1 + 2x*2 .
Основні властивості ЗЛП.
Розвязок ОЗЛП, якщо воно існує, не може лежати внутри, а лише на її кордонах.
Розвязок ОЗЛП може бути не єдиним.
ОЗЛП може не мати навіть в випадку, коли ОПР не обмежена.
Розвязок ОЗЛП, мінімізуючий функцію L завжди досягається в одній з вершин многокутника припустимих розвязків. Розвязки,які лежать в одній з вершин ОПР, називається опорним, а сама вершина – опорною точкою.
Для того, щоб знайти оптимальний розвязок, достатньо перебрати всі вершини ОПР і обрати з них ту, де L досягає мінімума.
Необхідною і достатньою умовою існування розвязку ЗЛП є обмеженість ЦФ на припустимій множині.
Симплекс – метод розвязку ЗЛП.
Алгоритм симплекс – методу:
Нехай відома деяка вершина допустимої множини.
Первіряємо належність цієї вершини до оптимального розвязку. Якщо так, то задача розвязана, інакше – переходимо до пункта 3.
Знаходиться вершина за визначеним правилом, яка краще попередньої. Переходимо до п. 2.
Так як число вершин обмежено, то через кінцеве число кроків знаходимо оптимальне рішення.
Симплекс – метод завжди застосовується в ЗЛП канонічної форми.
Зробимо припущення:
Система обмежень сумісна.
Ранг системи дорівнює кількості рівняннь.
Запишемо задачу в векторній формі
(1)
В такому випадку задачу можна поставити так: знайти розташування вектора b за векторами А1, А2, …, Аn з невідємним коефіцієнтом, щоб ЦФ досягла максимуму.
Визначення: допустимий розвязок задачі (1) будемо називати опорниим, якщо вектори Аj, які відповідають додатнім його координатам, лінійно незалежні.
Нульовий опорний вектор будемо вважати опорним.
Базисом порного розвязку називається будь – який набір з m лінійно незалежних векторів Аj .
Висновок: якщо опрне рішення містить точно m додатніх координат, то воно має єдиничний базис. В іншому випадку може бути декілько базисів.
Визначення: опорний розвязок називається невиродженим, якщо він рішення містить точно m додатніх координат, інакше, розвязок – вироджений.
Теорема
про звязок між вершинами і опорними
розвязками: вектор
тоді і лише тоді є опорним розвязком
ЗЛП, коли точка (вектор) є вершиною її
допустимого многокутника.
Основна лема симплекс – методу.
Нехай маємо m – вимірні вектори А1, А2, …, Аl, l m. Ранг цієї системи дорівнює їх розмірності m і нехай вектор Аi1, Аi2, …, Аim складає базис системи векторів А1, А2, …, Аm.
Замінимо один з базисних векторів Аік вектором Аs. Тоді нова система векторів буде знову базисом тоді і лише тоді, коли в розкладі
As = x1sAi1 + x2sAi2 + …+ xksAik + …+ xmsAim, xks 0 (6.1).
