Лекція 16
Тема: Математичні методи і моделі в прийнятті рішень.
План
Дослідження операцій.
Класичні задачі.
Математичні методи і моделі, які передбачається розглянути, добре відомі, поширені і використовуються під різними «вивісками» — математичні методи в ухваленні рішень; методи дослідження операцій; економіко-математичні методи; методи економічної кібернетики; методи оптимального управління, прикладна математика в економіці і організації виробництва і ін. В безлічі публікацій на дану тему (більш менш всеохоплюючих) вони розглядаються в тих або інших поєднаннях.
Ми використовуватимемо термін математичні методи і моделі без конкретизації вживання (економіка, техніка і технологія, гуманітарні дослідження) у зв'язку з їх інваріантністю.
Метою всякого моделювання є дослідження об'єкту спочатку на якісному, а потім у міру накопичення інформації і розвитку моделі на все більш точних кількісних рівнях.
Дані міркування можуть бути проілюстровані простим прикладом. Існував (і існує) метод «теорія вірогідності» як широкий клас математичних моделей, що оперують поняттями «вірогідність», «випадкова подія», «випадкова величина», «математичні очікування (середнє значення) випадкової величини», «дисперсія (розсіяння)» і т.д. На межі XIX і XX ст. з'являється новий об'єкт — комутована система телефонного зв'язку, з яким асоціюються поняття «заявка на з'єднання», «відмова», «час очікування з'єднання», «комутація» і інші характеристики системи.
В 20-е рр. А. К. Эрланг з'єднав ці метод і об'єкт; в результаті була створена математична модель теоретико-вірогідності процесів в комутованих телефонних мережах, що оперує поняттями «потік заявок», «середній час очікування», «середня довжина черги на обслуговування», «дисперсія часу очікування», «вірогідність відмови» і т.д. Подальший розвиток цього наукового напряму показав плідність понятійної бази даної моделі, її широкі конструктивні можливості. Модель розвинулася в метод дослідження складних систем — «теорію масового обслуговування», термінологія і понятійна база якого абстрагувалися від асоціацій з телефонними мережами і знайшли загальнотеоретичний характер. І тепер нові моделі можуть будуватися шляхом вживання теорії масового обслуговування до інших об'єктів (виробничі процеси, операційні системи ЕОМ, транспортні потоки і ін.).
Таким чином, з одного боку, метод визначений, якщо розвинена однорідна сукупність моделей, тобто способів розгляду різних об'єктів в одному аспекті, а з іншою — об'єкт пізнається тим глибше, ніж більше моделей об'єкту розроблено. При цьому подвійна природа моделі приводить до дуалізму понятійної бази моделювання, що включає загальні (від «методу») і специфічні (від «об'єкту») поняття.
Можна сказати, що методи, моделі, об'єкти утворюють безперервну послідовність, усередині якої доцільно виділити групи моделей, що розрізняються по своєму походженню і застосовності, а саме:
• моделі, зв'язані із застосуванням відомих методів до нових об'єктів;
• моделі, вперше розроблені для опису даного об'єкту і допускаючі їх використовування для інших об'єктів.
1. Дослідження операцій
![]()
![]()
![]()
![]()
Дослідження
операцій —
сукупність прикладних математичних
методів, що використовуються для
вирішення практичних організаційних
(у тому числі економічних) задач.
Це — комплексна наукова дисципліна. Круг проблем, що вивчаються нею, недостатньо визначений. Іноді дослідження операцій розуміють дуже широко, включаючи в нього ряд чисто математичних методів, іноді, навпаки, дуже вузько — як практичну методику рішення за допомогою економіко-математичних моделей строго певного переліку задач [1, 2, 6, 7].
Головний метод дослідження операцій — системний аналіз цілеспрямованих дій (операцій) і об'єктивна (зокрема, кількісна) порівняльна оцінка можливих результатів цих дій.
Наприклад, розширення випуску продукції на заводі вимагає одночасного і взаємозв'язаного рішення безлічі приватних проблем: реконструкції підприємства, замовлення устаткування, сировини і матеріалів, підготовки ринку збуту, вдосконалення технології, зміни системи оперативно-виробничого планування і диспетчирования, організаційної перебудови, переміщення керівних працівників і т.д. При аналізі можливих наслідків ухвалюваних рішень доводиться враховувати такі чинники, як невизначеність, випадковість і ризик. До рішення таких задач привертають економістів, математиків, статистиків, інженерів, соціологів, психологів і ін., тому одну з особливостей дослідження операцій рахують його міждисциплінарний, комплексний характер.
Операційні дослідження перш за все призначені для попереднього кількісного обгрунтовування ухвалюваних рішень, оскільки вони дуже складні, вимагають великих витрат і, головне, можуть реалізуватися багатьма способами (ці способи називають стратегіями або альтернативами). Окрім обгрунтовування самих рішень дослідження операцій дозволяє порівняти можливі варіанти (альтернативи) організації операції, оцінити можливий вплив на результат окремих чинників, виявити «вузькі місця», тобто ті елементи системи, порушення роботи яких може особливо сильно позначитися на успіху операції, і т.д.
Таким чином, єство задач дослідження операцій — пошук шляхів раціонального використовування наявних ресурсів для реалізації поставленої мети.
Кількісні методи дослідження операцій будуються на основі досягнень економіко-математичних і математико-статистичних дисциплін (теорії масового обслуговування, оптимального програмування і т. д.). Різні математичні методи застосовуються (в тих або інших комбінаціях) при рішенні різних класів задач.
Серед найважливіших класів задач дослідження операцій можна назвати задачі управління запасами, розподіли ресурсів і призначення (розподільні задачі), задачі масового обслуговування, задачі заміни устаткування, впорядкування і узгодження (у тому числі теорія розкладів), змагальні (наприклад, ігри), задачі пошуку і ін. Серед вживаних методів — математичне програмування (лінійне, нелінійне і т. п.), диференціальні і різницеві рівняння, теорії графів, марківських процесів, теорія ігор, теорія (статистичних) рішень, теорія розпізнавання образів і ряд інших.
Вважається, що дослідження операцій зародилося напередодні другої світової війни, коли в Англії на одній станції радіолокації була створена група фахівців для вирішення технічних задач за допомогою математики. Вони зосередили увагу на порівнянні ефективності шляхів рішення задач, пошуку оптимального рішення. Участь в цій групі представників різних спеціальностей зумовила комплексний, або, як тепер прийнято говорити, системний, підхід. В даний час в цьому напрямі працюють сотні дослідницьких установ і груп в десятках країн. Організовані суспільства дослідження операцій, об'єднувані міжнародною федерацією (ІФОРС).
Методи дослідження операцій, як і будь-які математичні методи, завжди в тій чи іншій мірі спрощують, огрублюють задачу, відображаючи нелінійні процеси лінійними моделями, стохастичні системи — детермінованими і т.д. Тому не слід ні перебільшувати значення кількісних методів дослідження операцій, ні зменшувати його, посилаючись на приклади невдалих рішень. Відоме парадоксальне визначення, яке дав крупний американський фахівець в цій області Т. А. Сааті: «дослідження операцій є мистецтвом давати погані відповіді на ті практичні питання, на які даються ще гірші відповіді іншими способами».
2. Класичні
задачі дослідження операцій![]()
![]()
![]()
![]()
![]()
![]()
Розглянемо
деякі класичні задачі, дослідження
операцій, що традиційно відносяться до
проблематики.
Задача дієти (або задача про раціон) — задача лінійного програмування, що полягає у визначенні такого раціону, який задовольняв би потреби людини або тварини в живильних речовинах при мінімальній загальній вартості продуктів, що використовуються. Це окремий (найпоширеніший) випадок більш загальної задачі про оптимальний склад суміші.
Задача складання оптимального раціону для людини складна, оскільки доводиться враховувати багато додаткових, не завжди формалізуються чинників — смакові прихильності, різноманітність блюд і т.д. Проте в тваринництві визначення раціонів для худоби за допомогою задачі лінійного програмування сьогодні не просто реальне, але і необхідно. Досвід показує, що годування худоби раціонами, розрахованими по цьому методу, дає істотну економію. Наприклад, в США ними користуються багато фермерів. Це не означає, зрозуміло, що кожний сам вирішує задачу лінійного програмування: в різних районах країни видаються довідники раціонів годування, що враховують місцеві особливості і можливості, породи худоби і т.д.
Модель задачі можна записати так :
знайти мінімум добових витрат на продукти харчування
![]()
дее
—
ціна;;
—
кількість продукту під номеромм
;;
—
кількість таких продуктів при умові
![]()
тобто
в раціоні повинне міститися не
меншее
живильної
речовини з номеромм
;;
—
кількістьо
-го
речовини в одиниці
-го
продукту; крім того, повинна виконуватися
умова позитивності:
>
0.
Задача заміни полягає в прогнозі витрат, пов'язаних з оновленням устаткування, і у виробленні найекономічнішої стратегії проведення цієї роботи. Вироблений ряд методів, що дозволяють вирішувати задачі заміни двох типів:
а) продуктивність устаткування падає в процесі експлуатації (унаслідок зносу), і воно застаріває морально в результаті появи нових, більш вчинених машин;
б) устаткування не застаріває, але в деякий момент вибуває з ладу (наприклад, електролампочки).
В першому випадку порівнюються витрати на придбання нового устаткування з витратами експлуатації діючого і знаходиться оптимальний момент заміни. Для вирішення деяких з таких задач застосовні методи динамічного програмування.
В другому випадку визначають, які саме одиниці треба замінювати і як часто проводити заміну, щоб мінімізувати загальні витрати, пов'язані як з покупкою нового устаткування, так і із збитком, який наносить несправне устаткування до його заміни. В цих задачах широко використовуються м а -тематико-статистичні методи, оскільки вихід з ладу устаткування завжди має нерегулярний, вірогідність характер.
Задача про комівояжера полягає у відшуканні якнайкращого маршруту для комівояжера (бродячого торговця), який повинен об'їхати всі доручені йому міста і повернутися назад за найкоротший термін або з якнайменшими витратами на проїзд. Це — одна з типових задач, вирішуваних методом динамічного програмування. Про складність її говорить такий факт: якщо міст — 4, то число можливих маршрутів рівне 6, а вже при 11 містах існує більше 3,5 млн допустимих маршрутів. В загальному випадку, коли число міст п, кількість маршрутів рівна (n - 1)!, тобто «(n - 1) факторіал». Задача полягає в пошуку скорочених способів розрахунку, що дозволяють відмовитися від суцільного перебору можливих маршрутів.
Алгоритми, що дозволяють вирішувати на електронних обчислювальних машинах задачу про комівояжера, використовуються не тільки при виборі маршрутів автотранспорту при кільцевій доставці товарів (наприклад, в торгову мережу), але і при рішенні таких задач, які на перший погляд ніякого відношення до задачі комівояжера не мають, наприклад в плануванні виробництва на конвейєрах, що випускають машини різних моделей. На ЕОМ за допомогою таких алгоритмів розраховують оптимальні партії, що дозволяють випускати заданий об'єм продукції з мінімумом витрат на переналагодження конвейєра.
Розподільні задачі — клас економіко-математичних задач, пов'язаних з розподілом ресурсів по роботах, які необхідно виконати. Якщо ресурсів достатньо, щоб кожну роботу виконати найбільш ефективно, задача не виникає. В зворотному випадку перекидання, передача ресурсів з однієї роботи на іншу приводить до зміни загальної ефективності всіх робіт, разом узятих. Тому розподільна задача полягає у відшуканні якнайкращого розподілу ресурсів, при якому або максимізовувався загальний дохід або результат, виражений в якій-небудь іншій формі, або мінімізуються витрати.
Такі
задачі частіше за все приводяться до
лінійного вигляду (іноді штучно за
рахунок спрощень) і розв'язуються методом
лінійного програмування. Якщо
черезз
позначити
об'єм ресурсуа
,
виділеного на роботуу
,
то математичне формулювання розподільної
задачі таке: знайти мінімум або максимум
цільової функції (мінімум витрат
min
або
максимум ефекту max
при
обмеженнях за об'ємом ресурсів і потреби
в них. При цьому розрізняються два види
таких задач:
а)
збалансована (закрита), якщо загальний
об'єм ресурсівв
рівний
загальній потребі в нихх
;
б)
незбалансована (відкрита), колиа
і
вимагається не тільки розподілити
ресурси по роботах (споживачам), але
також вирішити, які роботи не слід
виконувати (тобто яких споживачів не
задовольняти), якщо ресурси менше потреб,
або які ресурси не використовувати —
в протилежному випадку.
До розподільних задач відносяться такі широко поширені задачі, як транспортна задача, задача про призначення і багато інших. Задачі розподілу можуть розв'язуватися в статичній (однократної) і в динамічній постановці. В останньому випадку часто застосовують методи стохастичного програмування (в яких ухвалення рішень засновано на оцінках вірогідності майбутніх значень параметрів).
Задача про призначення — вид задачі лінійного програмування, за допомогою якої розв'язуються питання типу: як розподілити робітників по верстатах, щоб загальне вироблення було найбільшим або витрати на заробітну платню якнайменшими (оскільки для кожної комбінації «робітник— верстат» характерна своя продуктивність праці), як найкращим чином розподілити екіпажі літаків, як призначити людей на різні посади (звідси і назва задачі) і т.д.
Математично
такі задачі — окремий випадок розподільних
задач з тією особливістю, що в них об'єми
наявних і потрібних для виконання кожної
роботи ресурсів рівні одиниці, тобто.
=
=1, іи
=1,
якщо працівникк
призначений
на роботу
,
або нулю в решті випадків. Інакше кажучи,
для виконання кожної роботи витрачається
тільки один вид ресурсу, а кожний ресурс
може бути використаний на одній роботі:
ресурси неподільні між роботами, а
роботи — між ресурсами. Початкові дані
групуються в таблиці, яка називається
«матрицею оцінок», результати — в
«матриці призначень».
Кількість можливих варіантів призначень рівна факторіалу числа робіт і ресурсів і величезно навіть в невеликій задачі. Тому для знаходження оптимального варіанту застосовують спеціальні алгоритми. Серед них особливо ефективний при рішенні задачі уручну так званий «угорський метод».
Задача про розкрій — окремий випадок задач про комплексне використовування сировини, звичайно що зводяться до методу лінійного програмування. Вироблений математиками метод рішення задачі про розкрій допомагає з якнайменшими відходами використовувати прутки і листи металу, листи скла, картону і інших матеріалів при розкроі їх на задану кількість деталей різних розмірів.
Постановку
задачі в загальному вигляді можна
сформулювати так: вимагається знайти
мінімум лінійної форми, що виражає число
витрачених листів матеріалу (листів і
т. п.) за всіма j-м способами їх розкроу:![]()
за умови,
що змінні задовольняють обмеженню
![]()
Це
означає, що дотримана комплектність:
всі необхідні заготівки зроблені в
достатній кількості,
((
—
число заготівок i-го типу при j-м способі
розкроу;;
—
число листів, розкроєних j-м способом).
Нарешті, приймається умова позитивності::
0,
тобто число листів не може бути негативне.