
Искуственный интелект / ШІ / files / Лекція 16
.docЛекція 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,
тобто число листів не може бути негативне.
Способи постановки і рішення таких задач добре відпрацьовані і їх можна застосовувати на будь-якому підприємстві. При правильній постановці задачі вживання методу лінійного програмування гарантує скорочення відходів до мінімально можливого. Часто на підприємствах відходи скорочуються у декілька разів.
Задачі пошуку — клас задач, що полягають у відшуканні якнайкращого способу отримання такої інформації, яка однозначно визначила б рішення. Критерієм в такій задачі є мінімум витрат двох видів: вартості отримання інформації і ціни помилки, обумовленої її використовуванням. В першому випадку йдеться про вартість вибірки, планування якої зводиться до визначення способу вибору наглядів або вибору спостережуваних об'єктів, в другому випадку — про помилки двох пологів: помилці вибірки (виявлення того, що насправді відсутній — «помилкова тривога») і помилці нагляду (пропуск того, що насправді має місце — «пропуск мети»).
Задачі узгодження — клас задач, пов'язаних з узгодженням сукупності окремих робіт і приватних операцій в часі для отримання оптимального загального результату. Це звичайно задачі мережного планування і управління.
Задачі впорядкування — клас задач, в яких проводиться вибір дисципліни обслуговування. Таким чином, вони як би протилежні задачам теорії масового обслуговування, в яких дисципліна (тобто порядок виконання вимог) задана. Вибір порядку обслуговування називається впорядкуванням. Найбільш поширені серед задач (моделей) впорядкування задачі теорії розкладів. До них відносяться також методи ситуаційного управління і деякі інші.
Задачі теорії розкладів — один з видів задач дослідження операцій, об'єднуваних в класі задач впорядкування. Теорією розкладів називається тут сукупність моделей календарного планування і розроблених для їх вирішення методів дискретного програмування.
Складність таких задач можна проілюструвати прикладом: вимагається спланувати виготовлення чотирьох виробів, кожне з яких проходить обробку на кожному з п'яти верстатів. Існує (4!) 5 або майже 7962 тис. різних варіантів обробки (послідовностей); деякі з них до того ж треба якось відсіяти, оскільки певні операції слід виконувати в заданому порядку. На практиці, зрозуміло, задачі набагато складніше.
Простіше за інші розв'язуються так звані задачі одного верстата: пошук якнайкращої послідовності обробки на ньому деякої безлічі деталей (якнайкращої з погляду мінімуму витрат на пролежування деталей до обробки і після неї, мінімуму часу затримки у видачі деталей в порівнянні зі встановленим терміном, мінімального об'єму незавершеного виробництва і т. п.).
Існує також ряд моделей планування роботи виробничої ділянки (методичну основу для них дає модель Джонсона для п деталей і двох верстатів, але вона представляє лише теоретичний інтерес і малоприменима на практиці). Нарешті, теорія розкладів містить методи складання календарних планів роботи підприємств. Звичайно задача ставиться таким чином: скласти план виготовлення всіх виробів, в якому не порушувалися б технологічні обмеження, обмеження по потужності устаткування, а також терміни запуску і випуску. Такі задачі розв'язуються звичайно наближеними методами, у тому числі методом Монте-Карло і ін. В описаних умовах велике значення мають способи скорочення розмірності задач. Теорія розкладів — теоретична база оптимального календарного планування. Використовує ряд методів лінійного програмування, дискретного програмування, методи гілок і меж, мережного планування і управління і ін. Моделі теорії розкладів дозволяють, наприклад, вирішувати такі задачі, як визначення оптимальної послідовності обробки деталей на верстатах, планування роботи виробничої ділянки, складання программы-«диспетчера» для управління роботою електронної обчислювальної машини в мультипрограмному режимі.
Задача про розміщення складів — одна із задач, звичайно вирішувана методом нелінійного програмування (але за деяких умов вона може зводитися і до звичайної транспортної задачі лінійного програмування). Полягає в мінімізації загальної суми транспортних і складських витрат при наступних обмеженнях: з кожного заводу повинна бути відвантажена вся продукція, місткість будь-якого складу не повинна бути перевищена, потреби всіх покупців повинні бути задоволені. По суті справа зводиться до відшукання трехзвенных комбінацій підприємство — склад — споживач, в сукупності забезпечуючих мінімум витрат.
Управління запасами — комплекс моделей і методів, призначених для оптимізації запасів, тобто ресурсів, що знаходяться на зберіганні і призначених для задоволення попиту на ці ресурси. Терміни ресурси і запаси тут розуміються узагальнено: можна говорити про запаси кінцевої продукції, про запаси напівфабрикатів (тоді відповідна задача буде задачею про оптимізацію незавершеного виробництва), про запаси сировини, природних і трудових ресурсів, грошових коштів і т.д. Роль виробництва зводиться тут до поповнення рівня запасів у міру виникнення потреби в них. Іншим джерелом задоволення заявок на ресурси є склад, власне запас.
Як цільова функція в задачах управління запасами виступають сумарні витрати на зміст запасів, на складські операції, втрати від псування при зберіганні і моральне старіння, втрати від дефіциту і штрафи і т.д. Природно, що відстежується мінімум цієї функції. Керованими змінними в таких задачах є об'єм запасів, частота і терміни їх поповнення (шляхом виробництва, закупівлі і т. д.), ступінь готовності продукції, що зберігається у вигляді запасів і ін. Задачі статичні (коли ухвалюється разове рішення про рівень запасу на певний період) і динамічні, або багатокрокові, коли ухвалюються послідовні рішення або коректується раніше ухвалене рішення з урахуванням змін, що відбуваються. Спрощеним прикладом задач управління запасами може служити задача про оптимальну партію.
Теорія ігор — розділ, що вивчає математичні моделі конфліктних ситуацій (тобто ситуацій, при яких інтереси учасників або протилежні і тоді ці моделі називаються іграми антагоністів, або не співпадають, хоча і не протилежні, і тоді йдеться про ігри з непротилежними інтересами.) Основоположники теорії Дж. фон Нейман і О. Моргенштерн спробували математично описати явища конкуренції як якусь «гру». В найпростішому випадку йдеться про протиборство тільки двох супротивників, наприклад двох конкурентів, що борються за ринок збуту. В складніших випадках в грі бере участь багато хто, причому вони можуть вступати між собою в постійні або тимчасові коаліції, союзи. Гра двох осіб називається парною; коли в ній беруть участь п гравців, це гра п осіб, у разі утворення коаліцій гра називається коаліційною.
Суть гри в тому, що кожний з учасників ухвалює такі рішення (тобто вибирає стратегії дій), які, як він вважає, забезпечують йому найбільший виграш або якнайменший програш, причому цьому учаснику гри ясно, що результат залежить не тільки від нього, але і від дій партнера (або партнерів), іншими словами, він ухвалює рішення в умовах невизначеності. Ці рішення відображаються в таблиці, яка називається платіжною матрицею. Часто виявляється така точка (седловая), в якій досягається рівновага, прийнятна для партнерів.
Чисто математична і тому вельми абстрактна теорія ігор, зрозуміло, далеко не повно відображає складні процеси, що відбуваються в економіці, проте теоретичне і практичне її значення набагато ширше.
Принциповою гідністю теорії ігор вважають те, що вона розширює загальноприйняте поняття оптимальності, включаючи в нього такі важливі елементи, як, наприклад, компромісне рішення, що влаштовує різні сторони в подібній суперечці (грі). Крім того, математичні прийоми теорії ігор можуть застосовуватися для вирішення численних практичних економічних задач на промислових підприємствах. Наприклад, для вибору оптимальних рішень в області підвищення якості продукції або визначення запасів. «протиборство» тут відбувається в першому випадку між прагненням випустити більше продукції (затрачувати на неї менше праці) і зробити її краще, тобто затрачувати більше праці, в другому випадку — між бажанням запасти ресурсів більше, щоб бути застрахованим від випадковостей, і запасти поменьше, щоб не заморожувати засобу.
Слід зазначити, що подібні задачі розв'язуються і іншими способами. І це не випадково — багато задач теорії ігор можуть бути зведено, наприклад, до задач лінійного програмування, і навпаки.