- •7.080401 «Інформаційні управляючі системи та технології»
- •Математичні методи дослідження операцій у будівництві: б12 Навчальний посібник. – к: кнуба, 2006. – 107 с.
- •2.5. Алгоритм розрахунку псевдоплану для двоїстого
- •4.2. Класифікація методів розв’язання задач цілочислового
- •5.5. Задача прогнозування термінів ремонту будівельних
- •6.4. Задача про найкоротший шлях для орієнтованих та
- •6.5. Задача про найкоротший шлях для багатополюсних мереж.
- •6.7. Задача про максимальний потік для однополюсних мереж.
- •7.5. Сепарабельне програмування.
- •8.2. Загальний алгоритм складання розкладу занять
- •1. Загальні визначення, класифікація моделей і методів
- •1.1. Загальні визначення дослідження операцій
- •1.2. Приклади постановок задач лінійного програмування та їх геометрична інтерпретація Задача про рекламу
- •Задача про бетонно-розчинний вузол (брв)
- •1.3. Основні етапи та класифікація моделей та методів дослідження операцій
- •Контрольні запитання
- •2. Лінійне програмування
- •Розглянемо приклад розв’язання задачі лінійного програмування:
- •2.1. Графічний метод розв’язання задач лінійного програмування
- •2.2. Алгоритм зведення до канонічного вигляду задач лінійного програмування
- •2.3. Метод симплекс-таблиць
- •2.4. Двоїста задача лінійного програмування
- •Отримавши результат – вектор y, можна на базі описаної системи знайти вектор X. Для розв’язання прямої задачі потрібно:
- •2.5. Алгоритм розрахунку псевдоплану для двоїстого симплекс-методу
- •3*10 – Розмірність задачі см.
- •2.6. Двоїстий симплекс-метод
- •Контрольні запитання
- •3. Задачі спеціального лінійного програмування
- •Задача призначення (про розподілення обладнання). Між чотирма кар’єрами потрібно розподілити п’ять екскаваторів таким чином, щоб їх виробітка була максимальною.
- •3.2. Задача про призначення
- •Алгоритм угорського методу задачі призначення має такі етапи.
- •3.3. Методи пошуку опорного рішення транспортної задачі
- •Метод Північно–Західного Кута (мпзк) має такі етапи:
- •Метод мінімального елемента (мме) має такі етапи:
- •3.4. Метод потенціалів транспортної задачі
- •Примітка. Цільова функція має постійно покращуватися (крім випадку, коли спрямовуючий елемент рівний ). Контроль правильності розрахунку має завжди дорівнювати:
- •Розглянемо алгоритм розв’язання задач методом потенціалів.
- •3.5. Угорський метод транспортної задачі
- •3.6. Різновиди транспортної задачі та їх використання
- •Контрольні запитання
- •4. Задачі цілочислового лінійного програмування
- •4.1. Загальне визначення цілочислового лінійного програмування
- •4.2. Класифікація методів розв’язання задач цілочислового лінійного програмування
- •Розв’язавши графічно, одержимо:
- •4.3. Метод відтинаючих площин
- •У комп’ютерній програмі стратегія реалізується таким чином.
- •Контрольні запитання
- •5. Динамічне програмування
- •5.1. Загальні визначення та алгоритм динамічного програмування
- •До особливостей розв’язку задач дп можна віднести.
- •5.2. Задача про інвестиції
- •5.3. Задача розрахунку траєкторії літака
- •5.4. Задача про рюкзак (завантаження транспортного засобу)
- •5.5. Задача прогнозування термінів ремонту будівельних конструкцій
- •Контрольні запитання
- •6. Методи аналізу мереж та потокове програмування
- •6.1. Загальні визначення потокового програмування
- •6.2. Способи представлення мереж
- •6.3. Типові задачі оптимізації на мережах
- •1. Задача визначення найкоротшого шляху в мережі:
- •6.4. Задача про найкоротший шлях для орієнтованих та біорієнтованих мереж. Алгоритми Дейкстра 1 та 2
- •6.5. Задача про найкоротший шлях для багатополюсних мереж. Алгоритм Флойда
- •6.6. Задача про мінімальний остов
- •6.7. Задача про максимальний потік для однополюсних мереж. Алгоритм Дейкстра 4
- •6.8. Задача про максимальний потік для багатополюсних мереж. Мінімальний розріз. Алгоритм Гоморі-Ху
- •Контрольні запитання
- •7. Розв’язання задач нелінійного програмування
- •7.1. Загальні визначення нелінійного програмування
- •7.2. Правило множників Лагранжа
- •7.3. Узагальнене правило Лагранжа
- •7.4. Умова Куна-Такера
- •7.5. Сепарабельне програмування. Метод кусочно-лінійної апроксимації
- •7.6. Загальна класифікація задач нелінійного програмування
- •8. Розв’язання багатокритеріальних задач
- •8.1. Основні визначення та моделі багатокритеріальних задач
- •8.2. Загальний алгоритм складання розкладу занять з використанням методів дослідження операцій
- •8.3. Класифікація методів технічного пошуку рішень
- •8.4. Моделювання гнучкості для забезпечення властивості бути керованим
- •Список літератури
1.2. Приклади постановок задач лінійного програмування та їх геометрична інтерпретація Задача про рекламу
Фірма рекламує продукцію на радіо та телебаченні з обмеженням витрат на рекламу – 1500$ за тиждень. Хвилина реклами на радіо коштує 5$, на телебаченні – 100$. Фірма хоче рекламуватися на радіо не частіше, ніж в 2 рази порівняно з телебаченням. Досвід минулих років показав, що обсяг збуту, забезпечений хвилиною на телебаченні, в 25 разів вищий, ніж хвилиною на радіо. Кількість хвилин на радіо не має бути меншою, ніж 20. Визначити розподіл коштів на рекламу.
х1 – пошукові хвилини реклами на радіо, х2 – на телебаченні.
(1)
– обмеження за коштами; (2)
– обмеження за пропорціями; (3)
– обмеження за обсягом.
(4)
(1)
(2)
(3)
Область допустимих рішень (ОДР) моделі визначається шляхом перетину ОДР кожної прямої. Траєкторія руху цільової функції (4) до «сонечка» графічно інтерпретується переміщенням паралельних прямих до останньої точки ОДР. Отже, ОДР знаходиться в трикутнику АВС. Візуально розв’язок задачі знаходиться в точці В або С:
Точка В: Точка С:
Відповідь: час реклами на радіо – 20 хв., телебаченні – 14 хв., що дасть прибуток 370$.
Задача про бетонно-розчинний вузол (брв)
БРВ виробляє бетон 2-х марок, вартість яких 2 та 5 тис.$ за тонну. Потужність вузла обмежена п’ятьма тонами за зміну. Попит на 2-у марку бетону вище на одну тонну і більше, ніж на 1-у марку. Треба визначити роботу БРВ протягом 3-х змін для забезпечення максимуму прибутку.
х
1
– пошукова кількість бетону 1-ої марки,
х2 – 2-ої марки.
(1)
– обмеження за потужністю; (2)
– прогноз попиту.
(3)
(1)
(2)
Відповідь: кількість бетону 1-ої марки – 0 т, 2-ої – 15 т, що дасть прибуток 75 тис.$.
1.3. Основні етапи та класифікація моделей та методів дослідження операцій
Для ДО необхідно виконувати такі етапи робіт:
Постановка задачі.
Розробка математичної моделі.
Класифікація моделей та методів.
Вибір та обґрунтування методів розв’язку.
Аналіз результатів розв’язку та дослідження на чутливість.
При розробці постановки задачі, в першу чергу, визначається тип задачі та можливість зведення її до однієї з типових моделей, а також аналізується надмірність та достатність вхідної інформації.
При формулюванні математичної моделі спочатку визначаються пошукові змінні та їх одиниці виміру, цільова функція та обмеження, а також опис області допустимих рішень.
У наступному етапі треба розглянути всі типові та подібні моделі. Якщо модель невідома, то користувачу необхідно розробити модель, дати їй назву та представити у власному архіві моделей як типову.
При виборі методу розв’язку треба врахувати наявність ППДО (прикладного програмного забезпечення), його можливості, розмірність задачі, ефективність та надійність розв’язання.
У результаті отримується одне найкраще рішення, яке може бути рекомендоване для управління. Але це рішення має ще бути досліджене на чутливість до змін вхідних даних. Гра з вхідними даними виконується користувачем доти, доки не будуть проаналізовані всі можливі варіанти вхідних даних. Наприклад, для задачі про рекламу треба проаналізувати «скільки потрібно коштів для переводу реклами тільки на телебачення». Дослідження на чутливість виконується в інтерактивному режимі за допомогою комп’ютерної програми, яка відповідає методу ДО.
Для виконання третього етапу дослідження операцій треба уявити класифікацію груп методів та їх зв’язок з типовими моделями:
Методи технічного пошуку моделей та рішень.
Лінійне програмування.
Нелінійне програмування.
Динамічне програмування.
Дискретне програмування.
Потокове програмування чи оптимізація на мережі.
Багатокритеріальні задачі.
Стохастичне програмування або задачі масового обслуговування.
Евристичне програмування.
Перша група не є математичними методами, а використовується, в основному, для систематизації мислення, зокрема, при обробці типових задач і моделей, а також при розробці нових алгоритмів.
Лінійне програмування (лінійна оптимізація) використовують у тому випадку, коли цільова функція та ОДР – лінійні. Різновиди моделей базуються на задачах безперервного, цілочислового та спеціального програмування. Належність моделі до транспортної задачі, задачі вибору тощо залежить від досвіду користувача зі створення моделей.
Нелінійне програмування – це область, де не завжди можливо сформулювати модель та застосувати пакети програм. Розв’язання задач нелінійного програмування потребує глибшого математичного аналізу та розрахунків. Найбільше практичне застосування мають численні методи зведення до задач ЛП, сепарабельне програмування тощо.
Динамічне програмування – це програмування згідно з принципом умовної та безумовної оптимізації, а також розв’язання задач, в яких пошукові змінні є функціями від інших пошукових змінних (задача про розклад тощо).
Дискретне програмування (комбінаторна оптимізація) – це пошук змінних серед кінцевої множини точок ОДР. Динамічне програмування є областю оптимального управління для розв’язання задач дискретного програмування, до якої, крім інших, належить метод розгалужень та обмежень, в т.ч. і «булева» оптимізація – адитивний алгоритм.
Задачі оптимізації на мережі розв’язують такі типові проблеми: «пошук найкоротшого шляху», «розрахунок завантаження вулиць міста», «розрахунок укладання кабелю телефонної мережі», «розрахунок карти найкоротших маршрутів між пунктами» тощо.
Багатокритеріальні задачі базуються на розв’язанні згідно з моделями з декількома цільовими функціями. Розв’язок зводиться до моделі з однією ЦФ через їхню лінійну згортку або через декомпозицію одного складного алгоритму на множину послідовних і більш простих (метод поступок).
Стохастичне програмування хоч і належить до методів ДО, але використовується здебільшого в області моделювання складних систем.
Остання група методів базується на власних розробках замість класичних. Це робиться з метою врахування обмежень обчислювальної техніки та необхідності швидкого пошуку рішень. Ця група забезпечує добрий розв’язок, але не оптимальний.
При роботі з методами також важливо знати класифікацію методів, наприклад, симплекс-метод, двоїстий симплекс-метод, метод потенціалів, угорський метод, метод Флойда, метод Дейкстра-4 тощо. Кожний метод у користувача має ідентифікуватися якимись скороченнями. При пошуку методу для задачі користувач має швидко визначити, наприклад, чи це задача багатополюсної мережі з використанням методу Флойда, чи це задача Vengr-2 (транспортна задача).
Поряд із типовими алгоритмами та методами дослідження операцій існують також типові задачі дослідження операцій.
Задача про сортамент
|
Вироби |
Модель
m*n |
|||||
v1 |
v2 |
… |
vn |
||||
Ресурси |
r1 |
|
|
|
|
s1 |
Cклад |
r2 |
|
|
|
|
s2 |
||
… |
|
|
|
|
… |
||
rm |
|
|
|
|
sn |
||
|
c1 |
c2 |
… |
cm |
|
||
Коефіцієнт прибутку, собівартості, реалізації тощо |
|||||||
Задача про рекламу
Задача про рекламу вже розглянута в п. 1.2.
Задача змінно-добового планування
Період (год.)
Попит на машини
Пошукова
кількість
0-4
-
x1
5-8
2
x2
9-12
14
x3
13-16
16
x4
17-20
3
x5
21-0
2
x6
Це
задача цілочислового лінійного
програмування розмірністю 6*18,
яка може бути
розв’язана
з використанням програм симплекс-методу
із заокругленням, методу розгалужень
та обмежень або Гоморі-2.
Задача про ремонт та заміну обладнання
Прикладом задачі є проблема визначення часу ремонту або заміни будівельних конструкцій (вузлів автомобіля) для мінімізації загальних витрат. Задача розглядатиметься в п. 5.5.
Примітка. Задача розв’язується за допомогою програми Dinam.exe та вхідного текстового файла, де описана модель.
Задача проектування розкладу багатостадійних процесів
Типовим прикладом задачі є проблема складання розкладу у вузі, яка розглядатиметься в п. 8.2.
Задача вибору маршруту
Прикладом задачі є знаходження найкоротшої відстані (шляху) від пункту А до пункту В з обмеженим пальним та автозаправкою в пункті С. Задача розглядатиметься в п. 6.5.
Задачі мережного планування та управління (МПК)
Прикладом задачі є опис деякого технологічного процесу мережею та розрахунок календарного плану. Задача розглядатиметься в п. 6.4.
