Текст
                    ЗйЙЧЕНКП Ю.П.


Міністерство освіти і науки України Ю.П. Зайченко ДОСЛІДЖЕННЯ ОПЕРА І ТІЙ Підручник Сьоме видання, перероблене та доповнене Затверджено Міністерством освіти і науки України як підручник для студентів вищих навчальних закладів, що навчаються за напрямами «Комп’ютерні науки» та «Прикладна математика» Київ 2006
УДК 519.8(075.8) ББК 22.18я73 317 Затверджено Міністерством освіти і науки України як підручник для студентів вищих навчальних закладів, які навчаються за напрямками «Прикладна математика» та «Комп’ютерні науки» (Лист №1/11-1850 від 28.04.2004 р.) Рецензенти: О.А.Волков - доктор технічних наук, професор; О.Ф.Волошин - доктор фізико-математичних наук, професор. З 17 Ю.П. Зайченко. Дослідження операцій. Підручник. Сьоме ви- дання, переробленетадоповнене. —К.:Видавничий Дім «Слово», 2006. — 816 с. I8ВN 966-8407-64-4 У підручнику розглянуто основи дисципліни «Дослідження операцій» - науки, що займається кількісним обгрунтуванням прийнятих рішень в різних сферах людської діяльності, в першу чергу у виробничих і економічних систе- мах. Викладені принципи дослідження операцій, приводяться змістовні поста- новки основних класів вирішуваних задач. Розглянуті принципи і методи прий- няття рішень в умовах визначеності, ризику і невизначеності. Основну увагу в підручнику приділено систематизованому викладу методів прийняття оптималь- них рішень. Розглянуто методи лінійного, нелінійного дискретного, динамічно- го і стохастичного програмування. Розширено главу прийняття рішень в умовах невизначеності. Тут викладе- ний апарат нечітких множин, відношень, а також математичні методи нечіткої оптимізації. Розглянуто нові задачі багатокритеріальної оптимізації в нечітких умовах. Нове видання доповнено розділом прийняття рішень в умовах конфліктних ситуацій. В ній розглянуто основи теорії матричних ігор, біматричні ігри, умо- ви виникнення коаліцій, кооперативна теорія біматричних ігор та знаходження її компромісного розв’язку (точки Неша). Підручник орієнтовано в першу чергу на студентів бакалаврів «Прикладна математика», «Комп’ютерні науки», а також студентів економічних спеціаль- ностей. Він буде корисний всім фахівцям, яким необхідно освоїти і використову- вати математичний апарат оптимізації. Підручник може служити довідником по сучасних методах оптимізації. I8ВN 966-8407-64-4 © Ю.П.Зайченко, 2006 © Видавничий Дім «Слово», 2006
Дослідження операцій ЗМІСТ Передмова до сьомого видання 6 Вступ 8 Розділ 1. Основні принципи і задачі дослідження операцій 13 1.1. Основні етапи дослідження операцій 13 1.2. Типові класи задач дослідження операцій 19 1.3. Деякі принципи і проблеми прийняття рішень в задачах дослідження операцій.. 34 1.4. Прийняття рішень при векторному критерії оптимальності 48 Розділ 2. Лінійне програмування 63 2.1. Постановки задач лінійного програмування і дослідження їхньої структури 63 2.2. Симплекс-метод 78 2.3. Визначення допустимих базисних розв’язків 94 2.4. Двоїста задача лінійного програмування 99 2.5. Метод оберненої матриці 116 2.6. Двоїстий симплекс-метод 130 2.7. Дослідження моделей задач лінійного програмування на чутливість . 139 2.8. Багатокритеріальні задачі лінійного програмування 148 Розділ 3. Транспортна задача лінійного програмування 155 3.1. Постановка і основні властивості транспортної задачі 155 3.2. Метод потенціалів 173 3.3. Угорський метод 186 Розділ 4. Дискретне програмування 203 4.1. Математичні моделі задач дискретного програмування 203 4.2. Метод відсікаючих площин 214 4.3. Метод гілок та меж 225 4.4. Задача булевого програмування та адитивний алгоритм 251 4.5. Послідовні алгоритми дискретної оптимізації 260 4.6. Наближені методи дискретної оптимізації 288 Розділ 5. Нелінійне програмування 302 5.1. Класичний метод визначення умовного екстремуму 302 5.2. Метод множників Лагранжа 310 5.3. Задача нелінійного програмування при обмеженнях нерівностях 315 5-4. Двоїстість в задачах оптимізації 327 1* З
Зайчеико Ю П 5.5. Квадратичне програмування 333 5.6. Геометричне програмування 341 Розділ б Чисельні методи нелінійної оптимізацГї 363 6.1. Градієнтні методи 363 6.2. Методи змінної метрики 376 6.3. Прямі методи пошуку 382 6.4. Метод апроксимуючого програмування 396 6.5. Методи можливих напрямків 400 6.6. Метод проекції градієнта Розена 416 6.7. Метод зведеного градієнта 424 6.8. Метод штрафних функцій 431 6.9. Мінімізація негладких функцій. Узагальнений градієнтний метод 441 Розділ 7. Динамічне програмування 448 7.1. Основна ідея та особливості обчислювального методу динамічного програмування 448 7.2. Динамічне програмування для задач з декількома обмеженнями та змінними 469 7.3. Задачі керування запасами 479 7.4. Динамічні задачі управління запасами 492 7.5. Задачі динамічного програмування з нескінченним числом кроків 500 7.6. Задачі динамічного програмування на мережах 510 7.7. Динамічне програмування для марковських процесів 522 Розділ 8 Стохастичне програмування 537 8.1. Одноетапні задачі стохастичного програмування 539 8.2. Двоетапні задачі стохастичного програмування 550 8.3. Метод проектування стохастичних квазіградієнтів 567 8.4 Застосування методу стохастичних квазіградієнтів для задач стохастичного програмування 576 Розділ 9. Прийняття рішень в умовах нечіткої інформації 584 9.1. Нечіткі множини та операції над ними 585 9.2. Нечіткі відношення. Операції над ними 589 9.3. Задачі нечіткого математичного програмування 595 9.4. Прийняття рішень при нечіткому відношенні переваги на множині альтернатив 602 9.5. Узагальнення нечіткого відношення переваги. Принцип узагальнення 619 4
Дослідження операцій 9.6. Загальна задача нечіткого математичного програмування і метод її розв’язання на основі підмножини недомінуючих альтернатив 631 9.7. Багатокритеріальні задачі лінійного програмування як задачі нечіткого математичного програмування 646 9.8. Багатокритеріальне нелінійне програмування з нечіткими параметрами 654 9.9. Арифметичні операції над нечіткими числами 663 9.10. Метод побудови функцій приналежності нечітких множин 672 Розділ 10. Методи оптимізацГЇ в задачах великої вимірності 677 10.1. Метод декомпозиції Данціга-Вульфа 677 10.2. Декомпозиція на основі розділення змінних 696 10.3. Декомпозиція Корнаї-Ліптака 707 10.4. Метод декомпозиції на основі агрегування в задачах великої розмірності 720 10.5. Метод декомпозиції на основі агрегування в задачах нелінійного програмування 731 Розділ 11. Прийняття рішень в конфліктних ситуаціях 740 11.1. Основні поняття і визначення в області теорії ігор. Позиційні ігри 740 11.2. Стратегія гри. Нормальна форма гри. Антагоністичні ігри 742 11.3. Теорема про мінімакс Дж. фон Неймана. Застосування ЛП для розв’язків матричних ігор 749 11.4. Розв’язання ігор з матрицею (2хл)і(/пх2) 756 11.5. Основи теорії корисності 760 11.6. Ігри з ненульовою сумою. Біматричні ігри 764 11.7. Кооперативна гра двох осіб. Задача про угоди. Теорема Неша 768 Додатки 1- Деякі питання лінійної алгебри 780 2. Властивості опуклих множин 793 3. Елементи теорії двоїстості геометричного програмування 795 Завдання для самоконтролю 805 Список використаної і рекомендованої літератури 812 Р 5
Зайченко Ю.П. Моїй доньці Олені присвячується ПЕРЕДМОВА ДО СЬОМОГО ВИДАННЯ Даний підручник підготовлено на основі конспекту лекцій, які автор протягом багатьох років читає студентам спеціальностей «Прикладна математика» та «Інтелектуальні системи прийняття рі- шень» в НТУУ «Київський політехнічний інститут», також в Міжна- родному науково-технічному університеті. З часу попереднього видання підручника пройшло більше двох років. За останні роки дисципліна дослідження операцій поповнилася новими результатами в перспективних напрямках, зокрема суттєво розвинулись такі її розділи як прийняття рішень в умовах невизначе- ності, багатокритеріальна оптимізація тощо. Автор намагався висвітити ці напрямки в новому виданні. Суттє- во розвинутий розділ «Прийняття рішень в умовах невизначеності», наведено класифікацію задач нечіткого математичного програмуван- ня та викладено сучасні методи їх розв’язання. Розглянуто нові багатокритеріальні задачі прийняття рішень в умовах нечіткої інформації, зокрема нечіткі багатокритеріальні зада- чі лінійного та нелінійного програмування і відповідні методи їх розв’язання. Перероблено розділ «Методи оптимізації в задачах великої вимі- рності», яку доповнено методом декомпозиції на основі агрегування для задач лінійного та нелінійного програмування. В порівнянні з попереднім виданням, з’явився також новий розділ 11 «Прийняття рішень в конфліктних ситуаціях». В ній роз януто осно- ви теорії матричних ігор двох осіб, викладено та доведено теорему Дж. фон Неймана про мінімакс, на якій базуються методи вирішення матричних ігор. Детально розглянуто застосування лінійного програ- мування для розв’язання матричних ігор. Розглянуто також основні елементи некооперативної теорії біматричних ігор. Докладно висвіт- 6
Дослідження операцій лено основи теорії кооперативних ігор двох осіб, та метод знаходжен- ня компромісного розв’язку в умовах кооперації - точки Неша. Викладання теоретичних методів оптимізації в підручнику зав- жди ілюструється розв’язанням конкретних задач та прикладів, які доведено до чисельних результатів. Це надає можливість використа- ти підручник для самостійного вивчення дисципліни. Підручник орієнтовано в першу чергу на студентів університетів та ВНЗ напрямів «Прикладна математика» та «Комп’ютерні науки», він буде корисним і для студентів напряму «Комп’ютерна інженерія» та економічних спеціальностей, а також для вчених та фахівців, яким потрібно оволодіти сучасним математичним апаратом оптимізації. Автор висловлює щиру подяку керівникам Видавничого дому «Слово» за фінансову підтримку, що забезпечила можливість видан- ня цього підручника, своїй доньці Олені, за велику допомогу в підго- товці рукопису, копіткій роботі з перевірки викладених матеріалів та розв’язків численних прикладів, а також багатьом студентам Учбово- наукового комплексу «Інститут прикладного системного аналізу», які розробили електронну версію підручника, зокрема, А. Сукретній та С. Романовій. 1**
ісійченко Ю.П. ВСТУП Одним з найбільш важливих класів систем керування є системи організаційного керування, до числа яких належать окремі підприємс- тва. фірми, концерни, галузі економіки, економіка держави в цілому, а також глобальні системи, що об'єднують економіку різних держав, наприклад, СНД, Європейський економічний союз (ЄЕС) та інші. Під системами орі анізаційного керування (або організаціями) ро- зуміють системи, що складаються з великої кількості взаємодіючих між собою підсистем (або підрозділів), інтереси яких не збігаються, а вступають у протиріччя, і потрібно відшукати деякий компроміс між ними. Рішення, яке виявляється найбільш вигідним для всієї органі- зації в цілому зветься оптимальним, а рішення, найвигіднішс для од- ного чи декількох підрозділів— субоптимальним. Наведемо такий приклад. Підприємство має виробничий відділ, відділ матеріально-технічного забезпечення (МТЗ), а також фінансо- во-економічний відділ. Розглянемо взаємодію цих підрозділів щодо політики керування запасами на підприємстві. Виробничий відділ зацікавлений в широкому асортименті та досить великій обсягах за- пасів на складах заводу, які забезпечують безперебійне постачання виробництва у випадках затримки поставок партій матеріалів, ком- плектуючих та дії інших випадкових збурень. При цьому відділ МТЗ обмежений розмірами складів, а також наявними оборотними фон- дами та умовами поставок. В свою чергу, фінансово-економічний підрозділ прагне якнайбільше скоротити рівень запасів на складах заводу, оскільки вони являють собою «заморожений капітал», який не дає прибутку. Отже, інтереси цих підрозділів щодо рівня запасів на складах за- воду протилежні. Щоб правильно сформулювати задачу керування запасами, слід розглядати її не на рівні окремих підрозділів (підсистем), а на рівні всієї організації (системи) в цілому. Треба знайти такий рівень запа- сів на складах заводу, який виявляється найвипднішим щодо крите- ріїв ефективності всього підприємства (це так званий «системний підхід»).
Дослідження оперспіііі Розробкою та практичним впровадженням методів найбільш ефе- ктивного керування організаційними системами і займається дисци- пліна «Дослідження операцій». Розглянемо основні особливості (принципи) дослідження операцій. Характерною особливістю дослідження операцій є системний підхід до поставленої проблеми та аналіз. Системний підхід є голо- вним методологічним принципом дослідження операцій. Він полягає ось у чому. Будь-яка задача, що розв'язується, має розглядатися з то- чки зору впливу на критерій функціонування системи в цілому. Вище розглянуто ідею системного підходу на прикладі задачі керування запасами підприємства. Докладно основи системного аналізу викла- дено в [38]. Для дослідження операцій характерне те, що при розв’язанні ко- жної проблеми можуть виникати щораз нові задачі. Тому, якщо з са- мого початку дослідження задачі ставляться вузькі обмежені цілі, застосування методів дослідження операцій не ефективне. Найбіль- шого ефекту можна досягти тільки при неперервному дослідженні, що забезпечує наступність в переході від однієї задачі до іншої. Важливою особливістю дослідження операцій є прагнення знай- ти оптимальний розв'язок поставленої задачі (принцип «оптимально- сті»). Проте часто на практиці такий розв'язок відшукати неможливо з таких причин: 1) відсутність методів, що дали б змогу знайти гло- бально оптимальне рішення задачі; 2) обмеженість наявних ресурсів (наприклад, обмеженість машинного часу ЕОМ), що унеможливлює реалізацію точних методів оптимізації. Для багатьох комбінаторних задач оптимізації, зокрема календа- рного планування; при кількості робочих місць (верстатів) т > 4 оп- тимальний розв'язок при сучасному розвитку математики можна знайти лише простим перебором варіантів Однак, навіть при досить невеликих значеннях т число можливих варіантів виявляється таким великим, що простий перебіг усіх варіантів навіть при використанні найпотужніших ЕОМ стає неможливим. У таких випадках обмежуються пошуком не оптимальних, а до- сить хороших з погляду практики рішень. Доводиться шукати комп- роміс між ефективністю рішень та затратами на їх пошук. Одна з ва- жливіших особливостей дослідження операцій - це те, що воно дає інструмент для пошуку таких компромісів. 1’ 9
Заиченко Ю.П. Тому один із засновників дослідження операцій Т Сааті визна- чив цю науку як «мистецтво» давати погані відповіді на такі практи- чні запитання, на які інші методи дають ще гірші відповіді. Особли- вість дослідження операцій полягає також і у тому, що відповідні дослідження проводяться комплексно у різних напрямках. Для про- ведення такого дослідження створюється операційна група, до скла- ду якої входять фахівці з різних галузей знань інженери з організації виробництва, математики, економісти, психологи тощо. Завдання такої комплексної групи є комплексне дослідження поставленої за- дачі, з використанням для цього ідей та методів різних наук Як самостійна наука дослідження операцій виникло і почало фор- , муватися ще на початку 40-х р в період другої світової війни Перші публікації з цієї тематики з'явилися у 1939—1940 рр. і були присвя- чені деяким задачам аналізу та дослідження військових операцій, зо- крема розглядалася задача найбільш ефективного розміщення зеніт- ної артилерії для охорони військових об'єктів від повітряною нападу. Звідси походить назва даної дисципліни. Пізніше після закінчення друюї світової війни принципи та методи дослідження операцій по- чали використовувати у сфері промислово-фінансового керування. Із зростанням масштабів виробництва, розвитком методів та форм ор- ганізації керування економічними системами розширювалися масш- таби операційних досліджень, коло вирішуваних задач Виникла по- треба у координуванні робіт баї атотисячної армії спеціалістів, регу- лярному обміні результатами теоретичних досліджень та прикладних розробок. З цією метою було створено національні федерації з дослі- дження операцій в багатьох розвинених країнах заходу. З 1957 р. іс- нує Міжнародна Федерація з дослідження операцій - ІРОК8, до скла- ду якої увійшли національні федерації і товариства, у тому числі і з України Курс «Дослідження операцій» з 50-х рр. викладається в багатьох університетах США, Великобританії та інших країн при підготовці бізнесменів, менеджерів, управлінців, а з кінця 60-х років в універси- тетах та інститутах України, зокрема в Київському політехнічному інституті. Найбільший внесок у формування і розвиток нової науки зро- били Р. Акоф, Р, Беллман, Г. Данції, Г. Кун, Т. Сааті, Р. Чсрмен (США), А. Кофман, Р. Форд (Франція) та інші. 10
Дос лідження операцій Важ іива роль у створенні сучасного математичного апарату і роз- витку багатьох напрямків дослідження операцій належить вітчизняним вченим Л. В. Канторовичу, Б. В. Гнеденку, М. П. Бусленку, В. С. Ми- халсвичу, М. М. Моїсеєву, Ю. М. Ср.мольєву, Н. 3. Шору та іншим. Видатний внесок у створення апарату лінійного програмування та його застосування до вирішення практичних задач економіки зро- бив Л. В. Канторович. В його праці «Математичні методи організації та планування виробництва» (1939 р.) було закладено основи ліній- ного програмування. Важливе значення мало введення Л. В. Канто- ровичем поняття об'єктивно зумовлених оцінок. Вони являють со- бою розв'язок задачі, двоїстої до задачі розрахунку оптимального плану За допомогою цих оцінок можна в окремих випадках, врахо- вуючи зміну обмежень на ресурси, оперативно коригувати розрахо- ваний оптимальний план. Об'єктивно зумовлені оцінки, характери- зуючи ефективність використання обмежених ресурсів, мають вели- ке значення для аналізу формування сисгс.ми цін на ресурси та інших економічних показників. За видатний внесок у розробку теорії опти- мального використання ресурсів в економіці акад. Л. В. Канторовичу разом з проф. Чарльзом Купменсом (США) у 1975 р. присуджено Нобелівську премію з економіки. Великий внесок в розробку та використання апарату імітацій- ного моделювання для дослідження складних систем зробив М. П. Бусленко. Важлива роль в розробці нових методів розв’язання комбінато- рних задач дискретної оптимізації належить українським вченим В. С. Михалсвичу, В. В. ІПкурбі та Н. 3. Шору. Створений ними ме- тод послідовного аналізу варіантів знайшов широке застосування при розв'язанні багатьох задач теорії розкладів, розташування нових виробництв, проектування мереж, магістральних газопроводів і т. п. Значний внесок в розробку наближених методів дискретної оп- тимізації та їх впровадженні при вирішенні задач планування та проектування зробив І. В. Ссргієнко Останніми роками інтенсивно розвиваються методи прийняття оптимальних рішень в умовах неповної інформації, коли суттєву роль відіграють випадкові фактори. Відповідний напрям в теорії оп- тимізації — стохастичне програмування — плідно розвивається в працях Ю. М. Єрмольсва. Д. Б. Юдіна та інших. І *** II
Іайченко Ю.П. У багатьох практичних задачах дослідження операцій, зокрема проектування складних систем, виникає потреба прийняття оптима- льних рішень з урахуванням декількох критеріїв опгимальності. Значний внесок в розробку методів багатокритеріа іьної оптимізації, а також їх застосування в задачах керування складними системами та їх проектування зробили В. Л. Волкович, О. С. Венцель, Ю. Б. Гер- мейср, Р. Ніні, X. Райфа. Значний внесок в розробку математичного апарату прийняття рішень в умовах невизначеності та нечіткої інформації зробив проф. Л. Заде (СІНА)
Дослідження операцій Розділ І ОСНОВНІ ПРИНЦИПИ 1 1АДАЧІ ДОСЛІДЖЕННЯ ОПЕРАЦІЙ______________________________________ 1.1. ОСНОВНІ ЕТАПИ ДОСЛІДЖЕННЯ ОПЕРАЦІЙ За всієї усій різноманітності змісту конкретних робіт в галузі дослі- дження операцій кожне операційне дослідження проходить послідовно через декілька етапів, основними з яких є: - постановка задачі та розробка концептуальної моделі; - розробка математичної моделі; - вибір (розробка) методу та алгоритму; - перевірка адекватності та коригування моделі; - пошук розв’язку на моделі; — реалізація знайденого розв’язку на практиці. Постановка задачі та розробка концептуальної моделі Це надзвичайно важливий та відповідальний етап операційного дослідження. Недарма кажуть, що правильно поставити задачу - це наполовину її вирішити. Спочатку мету та задачу операційного до- слідження формулює замовник (керівництво фірми, концерну, орга- нізації тощо). Як правило, ця мета та постановка задачі має досить загальний характер, наприклад: дослідити організацію системи по- стачання або основного виробництва, поставити діагноз та розробити конкретні рекомендації щодо її поліпшення. На цьому етапі створюється операційна іруна з системних аналі- тиків, фахівців у галузі організації виробництва, соціологів і психо- логів тощо. Операційна група детально обстежує відповідну систему (об’єкт), вивча» інформаційні та матеріальні потоки як в середині самої системи, так і її зв’язки із зовнішнім середовищем Одночасно вивчаються організація підсистеми керування даною системою (об’єктом), а також функціонування системи (показники якості або критерії ефективності) і зовнішні фактори, що впливають на ці хара- ктеристики. Після збору результатів обстеження проводиться їх докладний аналіз, в результаті якого виявляються суттс ві фактори та змінні, об- грунтовується вибір певних показників якості функціонування сис- 13
Зайченко Ю.П. темп, а також суттєвих зовнішніх факторів, структура самої системи, склад її елементів, їх взаємозв'язки, внутрішні змінні. Проводяться неодноразові консультації із замовниками, в ході яких уточнюється постановка задачі. В разі потреби, проводиться додаткове обстеження орі анізаційної системи з метою виявлення не- врахованих факторів та їх взаємозв’язків Результатом цього етапу є концептуальна модель досліджуваної системи (задачі), в якій у змістовній формі описується склад системи, її компоненти та їх взаємозв’язки, перелік основних показників якос- ті, змінних, як контрольованих так і нсконтрельованих зовнішніх факторів, а також їх взаємозв’язків з показниками якості системи, перс ик стратегій керування (або рішень), які треба визначити в ре- іульгап розв’язання поставленої задачі Розробка математичної моделі. Після одержання концептуальної моделі системи (змістовної постановки задачі) потрібно побудувати її математичну модель. Цей процес зветься формалізацією задачі. Будь-яка задача прийняття рішень характеризується такими елемен- тами- - множина змінних, значення яких вибирає особа, що приймає рішення, (ОГІР). Називатимемо їх страгеиями або керуючими змін- ними і позначатимемо X = {ху); - множина змінних, що залежать від вибору стратегій. їх називати- мемо вихідними змінними задачі прийняття рішень або розв’язками ¥ = {у,}; - множина змінних, значення яких не регулюються ОПР Ці змінні можуть бути внутрішніми змінними і тоді їх називають пара- метрами системи А = {ак}, В інших випадках ці змінні можуть бути зовнішніми, які зміню- ються незалежно від ОПР, і тоді їх називають збуреннями або зовні- шнім середовищем П= . Обмеження на керуючі та вихідні змінні, а також ресурси систе- ми, які задаються у вигляді ресурсних функцій від керуючих змінних та вихідних змінних. Цільова функція - критерій ефективності / , який залежить від при- йнятих стратегій, параметрів системи та збурень: /:Х Л ЇЇ »¥ 14
Дослідження операцій Цей критерій може бути як скалярним, так і векторним. І в остан- ньому разі ми магмо т. з. багатокригеріальну задачу прийняття рі- шень У загальному випадку математична модель задачі прийняття рі- шень мас такий вигляд: /•’ = / (Х,¥, А,П)-> іпах(тіп) (1.1.1) х при обмеженнях £, (Х,А,І2) < Ь,, с = \,т (1 1.2) \пт - X < Х1тіах гін), (1.1.3) тіп — ¥ < ¥ тах ««> ’ (1.1.4) де /(X,У,А,£2) = (Д (Х,¥,А,£1)] -р цільова функція (критерій якос- ті); £,(Х,А.Г>) - функція витрат і-го ресурсу; Л - наявна величина і- го ресурсу в системі. Дуже часто обмеження (1.1.3), (1.1.4) мають такий вигляд (умови невід’ємності): Х> 0, ¥ > 0. Вибір методу та алгоритму розв’язання. Для знаходження оп- тимального розв’язку задачі (1 1 1) - (1.1 4) в залежності від виду та структури ці іьової функції та обмежень використовують ті або інші методи теорії оптимальних рішень (методи математичної о програ- мування). Лінійне програмування, якщо функції /(Х,¥,А,Л) лінійні відно- сно змінних X. Нелінійне програмування, якщо функції /(Х,¥,А) га (або) £, (Х,¥, А, П) - нелінійні відносно змінних X. Дискретне програмування, якщо на керуючі змінні X накладена умова дискретності, наприклад, цілочисельності: х) - ціле, ] = \,н. Динамічне програмування, якщо функція /(Х,¥) та £, (Х,¥) ма- ють спеціальну структуру і є адитивними або мультиплікагивними від змінних X. 15
іайченко Ю II_______________________________________________________ Зазначимо, що /(X) = /(тьт2,...,~ адитивна функція, якщо /(Х)= /(х1,х2,...,л„)= X/,(',) ’ І(хх.х2,.:,хп) - мультиилікагивна, /=і якщо /(л1,х2,. ,х„)= П //(•'/)- 7-і Гео.метричне програмування, якщо цільова функція / (X) та об- меження представляють собою гак звані функції - позіноми: 1=1 Математична модель задачі в цьому випадку записується у ви- гляді: мінімізувати х“' х,'2.. х""“ * (1 1-5) іє/'О] при обмеженнях 8*(Х) = Хс.х^'ха2-. .Х°т- < Г {1к6) ,є/.4 де /[0] = [»!0,т0 - І,...,п0]; /[А] = тнА+. =иА-*-1; лі0=1; пр=п. (1.1.7) Стохастичне програмування, коли вектор зовнішніх змінних П= {я\.} або параметрів системи А =[а, ] нерегульований та випадковий. В цьому випадку математична модель задачі (1.1.1)-(1.1.2) матиме виї ляд: мінімізувати (118) при обмеженнях Л/(X,¥,<«)! <Л,, і-\,т. (11-9) або випадкових обмеженнях Р{&,ДХ,¥,<и) <Ь,} > 1 - е, і-\,т, де Мс0 математичне сподівання по змінних о, Р{§і(Х,У.аз)<Ь,} - відповідна ймовірність, що виконується умова у, (X) < />,-. 16
Дослідження операцій Нечітке математичне програмування, коли доводиться прийма- ти рішення в умовах невизначеності, наприклад, параметри системи А=[ау] та зовнішні змінні {<оЛ.} точно невідомі, і ОПР може лише вказати інтервал їх значень за вказати свої суб’єктивні оцінки щодо шансів появи певних значень лу (так звані степені належності) (а,,), ДДсаД. Евристичне програмування. Його застосовують для розв’язання тих задач, в яких точний оптимум знайти неможливо через комбінаторний характер задачі і пов’язану з ним величезну кількість варіантів В тако- му випадку відмовляються від пошуку оптимальних розв’язків і обме- жуються пошуком задовільного розв’язку з точки зору ОПР. При цьому вдало користуються спеціальними прийомами - так званими «евристиками», які дозволяють суттєво скоротити число проглянутих варіантів. Перевірка адекватності та корегування моделі. У складних систе- мах, до яких належать і системи організаційного типу, модель лише час- тково відображує реальний об’єкт (або процес). Тому необхідно проводити перевірку ступеня відповідності (або адекватності) моделі та реально- го процесу. Перевірку можна проводити шляхом порівняння вихідних харак- теристик моделі у„, або передбачуваної поведінки моделі з фактич- ними характеристиками об’єкта у0 при змінюванні значень зовніш- ніх факторів , а також (за можливості) параметрів системи А в широкому діапазоні коливань (рис. 1) За міру адекватності моделі вибирають одну з таких величин: а) абсолютне відхилення єа =| у„, -у0 ;< е()гііі; б) відносне відхилення Е/, = У™ - У о Уо 100%<4„; в) імовірнісна оцінка Р{еь < еЬЛоп } > Ршд це Едоп та ЕЛ„п ~ допустиме відхилення, яке задається експертом і визначає заданий степінь адекватності моделі, Рш<) - задана величи- на ймовірності нерівності єь <еьйоп. Якщо величина еа перевищує єдон> або ЕЬ перевищує Е/, доп, то це свідчить про те, що упущені деякі важливі фактори і модель погребує корегування. 17
Іанченко ЮII Рис. 1. Схема перевірки адекватності моделі Можливі корегування концептуальної .моделі, математичної мо- делі і, відповідно, методу розв’язання. Корегування може вимагати проведення додаткових досліджень на об’єкті, наборі необхідних даних, уточнення набору змінних та структури моделі. Можна виділити таю варіанти корегувань математичної моделі - розширення набору зовнішніх факторів, керуючих змінних та вихідних характеристик .моделі; - перехід від лінійних залежностей / (Х,¥,А,го) та #((Х,¥,А,л>) до нелінійних або підвищення степеню нелінійності; - розширення набору обмежень або їхніх комбінацій. Корегування може повторюватися багаторазово доти, поки не бу- де досягнута задовільна відповідність між вихідними характеристи- ками об’єкта та моделі. 18
Дослідження опеїмиїй Пошук розв’язку на моделі. Після досягнення задовільного рів- ня адекватності моделі застосовують відповідний метод або алго- ритм для знаходження оптимального (або субопгимального) розв’язку на математичній моделі. Цей розв’язок може приймати різ- ні форми: аналітичну, чисельну або алгоритмічну (у вигляді набору процедур, правил тощо). Реалізація знайденого розв’яжу на практиці. Це один з найважливі- ших етапів, які завершують операційне дослідження. Впровадження в практику знайденого на моделі розв’язку можна розглянути як само- стійну задачу, застосувавши системний підхід та аналіз. Отриманій на моделі оптимальній стратегії управління необхідно надати відповідну змістовну форму у вигляді інструкцій та правил, що і як робити, яка бу- ла б зрозумілою для адміністративного персоналу даної фірми чи оріа- нізації і легкою для виконання у виробничих умовах. З точки зору реалізації оптимального розв’язку на практиці до- слідження операцій займає особливе місце в проблематиці АСУ. Ві- домо, шо впровадження АСУ ефективне для розв’язання таких задач керування, які неможливо розв’язати при застарілій практиці керу- вання. Тому свого часу В. М. Глушков висунув принцип нових задач АСУ. Під ним розуміють пошук та постановку на виробництві дійсно нових задач оптимального управління, які можуть виправдати витра- ти на створення АСУ. Дослідження операцій і є методологічною ос- новою для пошуку таких задач, розробки їхніх математичних моде- лей та алгоритмів розв’язання, а також для практичного впроваджен- ня знайдених оптимальних розв’язків. 1.2. ТИПОВІ КЛАСИ ЗАДАЧ ДОСЛІДЖЕННЯ ОПЕРАЦІЙ За своїм змістом та постановками множину задач дослідження операцііз можна розбити на класи, найпоширенішими з яких є: - задачі керування запасами; - задачі розподілу ресурсів; - задачі ремонту та заміни обладнання; - задачі масового обслуговування; - задачі календарного планування (теорії розкладів); - задачі зранспортного типу (вибору маршрутів перевезень); 19
Зиііченко Ю.ІІ. задачі сітьового планування та керування; - задачі планування та розміщення об’єктів; - комбіновані задачі Розглянемо їх змістовні постановки та особливості. Задачі керування запасами. Це один з найпоширеніших та доб- ре вивчених класів задач. Вони мають такі особливості. Із збільшен- ням рівня запасів підвищуються витрати на їхнє зберігання, але зме- ншуються втрати внаслідок можливого дефіциту. Задачі керування запасами характеризуються такими елементами: системою постачання, попитом на предмети постачання, способами поновлення запасів, функцією витрат, обмеженнями, стратегіями ке- рування запасами. Системи постачання поділяються на децентралізовані та центра- лізовані. Попит на предмети постачання буває стаціонарним або не- стаціонарним, детермінованим або випадковим. Розрізняють такі способи поповнення запасів: миттєва поставка (коли нехтують затримкою часу з моменту оформлення замовлення на поставку до моменту самої поставки); затримка поставки на детермі- нований проміжок часу; затримка поставки на випадковий інтервал. Функція витрат являє собою критерій ефективності обраної страте- гії керування запасами і включає такі складові витрати на зберігання запасів, вартість поставки, втрати (штрафи) внаслідок дефіциту. Найпоширенішими в задачах керування запасами є такі обмежен- ня: на максимальний обсяг (рівень) запасів на складах, на максима- льну вартість запасів, на число поставок, на вартість поставки, на ймовірність дефіциту і т. п. Залежно від умов задачі керування запасами поділяються на такі категорії. Моменти оформлення замовлень на поставки або моменти самих поставок {/ь/2задано. Визначити обсяги поставок партій запа- сів {Уі,у2- >УИ}- Обсяги поставок ІУі.і'г, ••>>„} задано. Визначити моменти офор- млення замовлень {г1л2,...л„} • Як моменти поставок Лг»—Л„}. так і обсяги поставок не задано. Визначити ці величини так, щоб мінімізувати прийнятий критерій опти- мальності (рис. 1.2). 20
Дослідження операцій Задачі розподілу ресурсів. Вони виникають, коли є повний набір робіт, які потрібно виконати, а наявних ресурсів для виконання кож- ної роботи найкращим чином не вистачає Залежно від умов задачі розподілу ресурсів поділяються на такі групи. Задано як роботи, гак і ресурси. Розподілити ресурси поміж робота- ми гак, щоб максимі гувати певний критерій ефективності (наприклад, прибуток) або мінімізувати очікувані витрати (виробничі витрати). Приклад. Відомі виробничі завдання га виробничі потужності підприємства. При існуючих різних способах виготовлення виробів (наприклад, обробка на різних верстатах) обмеження потужностей не дає змоги для кожного виробу використати найкращу технологію. Які способи виробництва потрібно вибрати, щоб виконати завдання з мінімальними витратами? Задано лише наявні ресурси. Визначити, який склад робіт можна виконаїи з цими ресурсами, щоб забезпечити максимум деякої міри ефек гивності. Приклад. Задано підприємство з певними виробничими, матеріаль- ними га трудовими ресурсами. Вибрати такий асортимент вигогов- люваної продукції, який забезпечить максимальний прибуток. 21
Зайченко Ю.П. ^зам І Рис. 1.3. Задано лише роботи, які потрібно виконати. Підібрати такі ресур- си, що дають змогу виконати їх з мінімальними виробничими витра- тами. Приклад. Відомий місячний розклад руху пасажирських літаків авіалініями. Яка кількість екіпажів потрібна, щоб виконати план пере- везень з мінімальними експлуатаційними витратами? Задачі ремонту та заміни обладнання. Ці задачі виникають у тих випадках, коли устаткування з часом спрацьовується, старіє і підлягає ремонту або повній заміні. Типову криву старіння облад- нання та зниження його ефективності Е(і) (наприклад, продуктивно- сті, якщо мається на увазі верстат) наведено на рис 1.3. Зношене обладнання може підлягати в деякі моменти часу .,і„ ремонту, який підвищує його ефективність до величин Еу.Ег,....Еп, або повній заміні. З кожним ремонтом пов’язані витрати Ср] .Ср2 ,-,Ср . Позначимо вартість нового обладнання (машини) через Сїо„ , а час, що минув від купівлі машини до її заміни іши -10, через Гч (час життєвого циклу). Потрібно визначити строки віднов- лювальних ремонтів С„ ,С„......С„ , їхню кількість, а також момент заміни старого обладнання модернізованим, за яких мінімізуються 22
______________________________________________Дослідження опертій середні витрати на ремонт та заміну обладнання за весь період його життєвого циклу, тобто: 1 " Ур, ) х тіп ‘ц 1=1 Існує і таке обладнання, в якому деталі повністю виходять з ладу, не відновлюються і підлягають заміні (наприклад, радіодеталі, кон- денсатори, транзистори тощо). Постановка задачі ремонту та заміни у цьому випадку така Для виявлення можливих несправностей потрібно визначити строки профілактичного контролю, за яких мінімізується сума витрат на проведення контролю та очікуваних витрат від простою облад- нання через вихід з ладу (зіпсування) деталей в інтервалі між сусідні- ми моментами контролю. Задачі масового обслуговування. Вони пов'язані з досліджен- нями та аналізом систем обслуговування з чергами заявок. З явищем виникнення черг доводиться стикатися у виробничій практиці та по- всякденному житті. Типовими прикладами є черги клієнтів в ательє побутового обслуговування; абонентів, які чекають виклику на між- міській АТС; покупців біля кас універмагу тощо. Черги виникають через те, що потік заявок (абонентів) не керова- ний і випадковий, а кількість приладів обслуговування п (злітно- посадкових смуі аеродрому, приймальників в ательє або касирів у магазині) обмежена. Якщо кількість приладів обслуїовування взяти досить великою, то черги виникатимуть рідко і середній час чекання в черзі г,. буде невеликим, проте неминучі тривалі простої приладів обслуговування. Якщо, навпаки, кількість приладів обслуговування мала, то виникають великі черги і мають місце великі витрати через чекання в черзі: ^(г,.) = Г[Т,., де Г| - витрати за одиницю часу чекан- ня. Тому одна з можливих задач масового обслуговування така: ви- значити таке число приладів п0, за якого мінімізується сума очікува- них втрат від чекання в черзі р.(п) та простоїв обладнання ^("І (див. рис. 1.4): (н) = Р{ (п) + Ез (и) тіп. /1 23
Зийченко Ю.П. Рис. 1.4 Задачі календарного планування (теорії розкладів). Вони ха- рактеризуються такими особливостями. Є множина деталей (робіт) ........^п-> підлягають обробці, на деякій множині верстатів ;В],В2>--вя,|. Задано технологічні маршрути обробки дегалей ТМ І = ].п, які назначають порядок проходження верстатів. У загально- му випадку для різних деталей технологічні маршрути неоднакові Нехай для простоти всі ГМ у однакові, а саме: ТМі = {В, -В2 -...-Вт\ = ТМ, у/ = и. Оскільки одночасно обробляти на верстаті більш як одну деталь не можливо, го біля окремих верстатів утворюються черги. Введемо такі позначення: і - тривалість обробки деталі <7 у на верстаті В,; Т6ир у - потрібний (директивний) строк закінчення обробки ]-ї деталі на останньому верстаті; 7)у - фактичний строк закінчення обробки ]-ї деталі; - питомий штраф за одиницю часу іапізнення в завершенні обробки деталі г/у стосовно часу Тдир.. Погрібно визначити такі 24
Дослідження операцій черговості обробки деталей на кожному верстаті 31,82,...,8,„ відпові- дно, для яких оптимізусться певний критерій оптимальності, напри- клад, загальна тривалість всього комплексу робіт. Така задача і зветься задачею календарного планування (КП) або складання роз- кладу. а вибір черговості запуску деталей в обробку - упорядкуван- ням (рис. 1 5) Найчастіше в задачах календарного планування використовують- ся такі критерії Мінімізація загальної тривалості робіт, тобто інтервалу між мо- ментами початку першої операції та закінчення останньої операції для останньої деталі: тіп ТІІ(8у.82,...,дІ„). 6'----Ят Черга Готові вироби Рис. 1.5 Мінімізація сумарних штрафів (втрат) через запізнення: тіп ^г)2](8х,62....,8т), /=1 де гу(5) = тах[0;Тгін/>/(^)-7’і>] - запізнення завершення обробки у-ї деталі.
іайченко Ю.1І. п Мінімізація загальної о запізнення: тіп , (<*>). ** >-1 Мінімізація максимального запізнення: тіптахг (о) і Максимі зація завантаження верстатів. Задачі календарного планування належать до комбінаторних задач. Загальна кількість можливих варіантів розкладів у„, у зага- льній задачі для т верстатів га п деталей Тому для розв’язання таких задач послуговуються, в основному, наближе- ними евристичними методами, за вийнятком окремих випадків, задачі для т = 1; т = 2 та /п = 3. Задачі КП розрізняються за такими ознаками: за числом верстатів т: видом технолої ічних маршрутів з однаковими ТМ (задачі конвеєрного типу) і з неоднаковими ТМ; використованим критерієм оптимальності: видом верстатів: з ідентичними та неідентичними верстатами. Задачі сітьового планування та керування. У цих задачах розгля- дають співвідношення між строком закінчення певного комплексу опе- рацій, з яких він складається, і моментами початку виконання всіх опе- рацій комплексу. Вони актуальні при розробці складних проектів. Для строгої постановки цих задач необхідні такі умови: - наявність точно визначеної множини операцій, які потрібно вико- нати для закінчення всього комплексу, що включає ці операції як свої складові; - множина операцій комплексу (проекту) упорядкована гак, що для кожної з них відомо, які операції безпосередньо їй передують, а які безпосередньо слідують за нею; - в межах заданого відношення порядку операції можна починати і закінчувати незалежно одну від одної; - відомий взаємозв'язок між величиною використованого ресурсу та тривалістю кожної операції. Комплекс операцій в такому разі можна подати у вигляді сітьово- го графіка (орієнтованого графа), що складається з вершин (вузлів) га орієнтованих дуг. При цьому операції зображують дугами, а вер- шини являють собою деякі події. Дуги, що входять у вершину, відпо- відають операціям, що мають бути закінчені раніше, ніж можна буде почати операції, які зображені вихідними дугами 26
Дослідження операцій Подію, яка відповідає початку виконання комплексу операцій, позначають номером І, а останню - номером п. Всі інші події (вузли) нумерують так, що коли події і та у ів’яіані деякою операцією (і, у), то використовується нерівність /„(у) >!„(/)*/,у , де /„(/); /„(у) - мо- менти появи подій і та у, —грива іість операції (/,/). Звичайно для першої події беруть /„(!) = 0, а момент настання останньої події — Ткр , де величина Ткр - це загальна тривалість виконання всього ком- плексу. Вводиться поняття критичного шляху. Критичними вважа- ються операції, затримка яких призводить до еквівалентної затримки всього проекту - тобто до збільшення Ткр . Шлях в сітьовому і рафіку (мережі) від початкової події до кінцевої, який складається цілком з таких робіт, зветься критичним. У невеликих мережах критичний шлях можна легко розрахувати, якщо задано час настання всіх подій і всі роботи починаються якомо- га раніше. Якщо визначено ранні моменти настання всіх подій і,ір(і), що передують події у, то ранній момент настання події у виїначається умовою: /р(у) = тах{//,(і)+ <;,}. (1.2.1) Очевидно, що ір (я) = Ткр У більших мережах критичний шлях визначають як шлях з ну- льовим резервом часу. Резерв часу операції (і, у) - це інтервал часу, протягом якого операція може затягуватися, не призводячи до збіль- шення часу настання останньої події (тобто часу закінчення всього комплексу). Щоб обчислити резервний час, слід спочатку виконати розрахунок мережі від початку до кінця і, таким чином, визначити ран- ні моменти початку кожної роботи в кожному вузлі мережі. Далі об- числюють найпізніший час настанИя кожної події в мережі. Під ним розуміють такий найпізніший час настання подій, ^(і), який не при- зводить до збільшення значення Ткр Для визначення часу найпізнішого закінчення кожної роботи в кожному вузлі мережі здійснюють розрахунок мережі в зворотньому порядку - від кінця до початку. Для цього беруть іп(п) = ір(п), де 2* 27
Зайченко Ю.П. ~ пізній час настання події у. Якщо вже визначено момент /„(у) то для попередньої події і обчислюють („(і) - найпізніший допустимий час закінчення уеіх робіт, що входять в /-Й вузол: /„(/) = пцп(/„(у)-Г,;), (1 2.2) Після визначення величин /,,(/) для усіх / = 1.л резервний час для кожної роботи (операції) визначається за формулою 'рі/ї.у) = 'п(У)-'р(О-/(у (1.2 3) Згідно з означенням /^(/.у) = /„ (у)-/,,, ір(і,ІЇ = ір(і)~іу, де (Лу) - найпізніший час початку, а /*(ї,у) - щонайраніший час за- кінчення операції (і,у). Отже рівності: '/,„('.7) = б7('>У)-'рО), (12 4) 'реї('-7) = 'и(./)-'р('>7) (1 2.5) еквівалентні рівності (1.2.3). Результати обчислень величин ір(і), а також резервний час для мережі, наведеної на рис. 1.6, наведено в табл 1.1 та 1.2. 28
Дослідження опертий Таблиця. 1.1 і 1 2 3 4 5 6 7 8 Ір(ії 0 5 9 3 12 14 16 26 0 5 9 7 12 18 16 26 Таблиця І 2 (м) (1.2) (13) (1,4) (2,3) (43) (2,5) (3,5) (3,7);(5,7) (5,6) (6,8) (7,8) Ірез(іД) 0 1 4 0 4 1 0 3 0 4 4 0 Як бачимо, критичний шлях визначається ланцюжком (1-2-3-5-7- 8-), а його тривалість дорівнює Ткр = 26 одиниць. У межах резервно- го часу можна зсувати початок виконання відповідних робіт без змі- ни тривалості критичного шляху. Для виконання операцій (/,у) прое- кту виділяються відповідні ресурси (трудові та матеріальні), від ве- личин яких гч залежить тривалість операції (іД). Залежність /у(гу) може бути різною, найчастіше вона має вигляд- /,/=-, (1.2.6) гіі де а - константа; єу - обсяг виділених ресурсів. Залежно від того, чи є величини детермінованими або випад- ковими, виділяють два класи сітьових моделей: детерміновані та ймовірнісні. Задачі сітьового планування та керування (СПК), залежно від по- чаткових умов та постановок, поділяються на такі групи. СІ ІК за критерії V «Час». Задано сітьовий графік виконання проек- ту, загальні виділені ресурси для виконання робіт К та їх змінювання в часі К(/), і е[(),Г]. Погрібно розподілити ці ресурси по операціях (цу) і визначити такі моменти початку та закінчення всіх операцій ком- 29
іайченко Ю.П. плексу, за яких мінімізується загальна тривалість всього комплексу опе- рацій Ткр. СПК за критерієм «Вартість-». Задано загальну тривалість всьо- го комплексу робіт 7\р. Визначити строки початку кожної операції та розподілення ресурсів по операціях, за яких мінімізується один з та- ких критеріїв: а) загальні витрати на виконання всього комплексу робіт ; б) серсдньоквадратичний показник нерівномірності ресурсів: — і Т - /?2 = -|(/?-Я(/))2Л; т о _ і т де /? = — |Я(/)гй ; т о в) ймовірність невиконання комплексу операцій в директивні строки. Якщо структура сітьової моделі (СМ) жорстко задана і не зміню- ється, то маємо сітьову модель з детермінованими оцінками робіт. Якщо ж залежно від певних випадкових факторів структура СМ змі- нюється, то маємо СМ з ймовірнісною структурою. Як і задачі календарного планування, задачі СПК мають комбіна- торний характер, а для їх розв’язання використовуються переважно евристичні алгоритми. Задачі планування та розміщення об’єктів. Ці задачі характе- ризуються такими особливостями. На території деякого регіону зада- но вихідне розміщення наявних об’єктів (наприклад, споживачів про- дукції та складів) і потрібно визначити кількість нових об’єктів та місця їх розміщення з урахуванням їхньої взаємодії із наявними та між собою, таким чином, щоб оптимізувати деякий критерій ефек- тивності. Розглянемо основні показники та характеристики цих за- дач. До них належать: а) характеристики наявних та нових об’єктів; б) характер взаємодії між ними; в) тип простору рішень (розміщень); г) міра відстані між об’єктами (мезрика простору розміщень); д) критерій оцінки варіантів рішень. Одним з основних показників, що характеризують нові об’єкти, є їхня кількість. Крім того, залежно від розмірів, кожний новий об’єкт ЗО
Дослідження операцій можна розглянути або як точку, або як простягнений об’єкт. В останньому випадку керуючою змінною є форма об’єкта або форма займаємо!’ їм площини, а задача зводиться до задачі планування роз- міщення. Щодо наявних об’єктів, то вони також, в залежності від розмірів, можуть розглядатися як точкові або як протяжні об’єкти. Крім того, розміщення може бути статичним або динамічним, де- термінованим або стохастичним. Якщо розміщення наявних об’єктів є керованою змінною, то виникає задача перепланування (розміщен- ня). Міра відстані (метрика простору розміщень) також має врахову- ватися при формулюванні задач розміщення. Часто як наближену оцінку фактичних відстаней використовують евклідову відстань. Можливі різні критерії оптимальності: мініміза- ція сумарних витрат, мінімізація максимальних витрат, максимізація деякого прибутку. Взаємодія нових і наявних об’єктів може бути: а) такою, що залежить від розміщення, і незалежною від нього; б) статичною або динамічною; в) детермінованою або стохастичною. Простір розв’язків може бути неперервним, коли нові об’єкти можуть бути розміщені в будь-якій його точці, та дискретний, коли задано лише кінцеву множину точок, де можливе розміщення нових об’єктів. Розглянемо деякі типові постановки задач розміщення. Узагальнена задача розміщення з неперервним простором (задача Штейнера-Вебера). Нехай наявні об’єкти розміщені в різних точках Р,,Р2, ...,Р„ площини, а нові об’єкти — в точках х.,х,,...,х„. Відстань між точками розміщення рго нового об’єкта х ; та і-го старого об’єкта Р(. позначимо через <7(х ,Р,), а між точками розміщення 7-го та к-го нових об’єктів - через с/(х/,х<). Питомі втрати на перевезення міжрм новим та і-м старим об’єктами позначимо через и>у,, а аналогічні ви- трати на перевезення між 7-м та к-м новими об’єктами — через V^|і. По- трібно знайти такі місця розташування нових об’єктів Х|, х2,...,х„, за яких мінімізуються загальні річні іранспортні виграти: _ __ п т .А(хр*2..х„)=ЕЕ>^(х;-х*)+ЕЕмї///(р1-х,)- о-2-7) к /=і ,=і 2** 31
кпіченмі К) II Він іяд функцій <7(х ,хд ) визначається відповідною метрикою. Найчастіше використовується метрика Ьвкліда- </ (х,, хА) = 7( ' ,)3+0-,-у*Г та метрика Мінковського: </(х,,хА)= х, - г4(- у,- у, , де г;. у і - координати точок х(. Задачі розміщення - розподілу. Вони полягають у визначенні чи- сла нових об'єктів та координат їх розміщення, а також в розподілі перевезень між новими та наявними об’єктами. Прикладом є задача розміщення оптових баз, що отримують товари від виробничих під- приємств, і розподілу їх між оптовими та роздрібними торговельни- ми підприємствами. Математична модель цієї задачі записується іак: Мінімізувати = ^^2чи;//(хг,рі)^^(л). (1.2.8) І- н ___, за умов = (1.2.9) /=і де (р - загальні витрати на перевезення за одиницю часу; §(и) - витрати на перевезення за одиницю часу при установці п нових об’єктів; и'7( - питомі витрати в одиницю часу при взаємодіїу-го нового та і-го наявного об’єктів; \\. якщо і й новин об'єкт фмікціонально зв' язаний з і - м старші. ' ' (0. в протилежному випадку. 32
Дослідження опсрашй Задачі розміщення - розподілу з дискретним простором розв'язків. Такі задачі, як правило, доводиться розв’язувати при розміщенні вироб- ництва га складів. Задачі розміщення підприємств зазвичай включають визначення їхньої кількості, місць розміщення та потужності заводів та складів, необхідних для постачання споживачів продукцією. Ця задача формулює гься так. Нехай мат мо т споживачів продукції з відомими місцями розмі- щення. Задано п можливих місць розміщення підприємств. Відомо- потреби і-іо споживача в продукції / = 1,/п; сталі витрат, пов’язані і розміщенням підприємства ву’-му місці, та змінна частина втрат, що залежить від його виробничих потужностей, питомі транспортні ви- грати С,- на перевезення одиниці продукції із /-то пункту виробниц- тва в і-й пункт споживання. Потрібно визначити такі фактичні місця розміщення підприємств, їхні виробничі потужності, а також частку задоволення потреб споживачів, за якої мінімізуються сумарні витра- ти на розміщення підприємств га поставки (перевезення) продукції відповідним складом. Такі задачі ще називають виробничо-транспорт ними Задачі про покриття. До цього типу належи гь, зокрема, задача ви- значення місць розміщення складів при обмеженні, що відстань від складу до кожного споживача, якого він обслуювує, не перевищує 50 км, або задача розміщення пожежних команд, таким чином, щоб відстань до будь-якої точки міста була подолана відповідною пожеж- ною командою не більш як за 10 хв. Задачі Іран спор гною гину (або вибору маршрутів перевезень). Такі задачі найчастіше зустрічаються при дослідженні різноманітних процесів на транспорті га в системах зв’язку. Типовою задачею є за- дача знаходження деякого маршруту проїзду з міста А в місто В при наявності декількох маршрутів через різні проміжні пункти (міста). Вартість проїзду за обраним маршрутом відома, потрібно визначити найбільш економічний маршрут зіідно з обраним критерієм оптима- льності. На допустимі маршрути може бути накладено ряд обмежень. Так, наприклад, може заборонятися повернення до вже пройденою пункту або вимога обходу усіх пунктів транспортної мережі іа умо- ви, що в кожному пункті можна побувати лише один раз (задача ко- мівояжера) Часто вводять обмеження на пропускні здатності комунікацій. 2’ 33
Зийченко К) П____________________________________________________.. Комбіновані задачі. Досить часто практичні задачі дослідження операцій містять декілька розглянутих вище липових задач одночасно. Такі задачі є комбінованими Наприклад, при плануванні керування ви- робництвом часто доводиться розв’язувати такий комплекс згідач. Скільки виробів кожного типу потрібно випустити та які оптимальні розміри партій (типова задача планування виробництва). Як розподілити одержані виробничі замовлення по типах облад- нання (станкам) після того, як визначено оптимальний план вироб- ництва (типова задача розподілу ресурсів). В якій послідовності і коли слід виконувати виробничі замовлен- ня (типова задача календарного планування). Оскільки ці гри задачі не можна вирішувати ізольовано, незалеж- но одну від одної, то можливий такий підхід до вирішення комбіно- ваної задачі. Спочатку одержують оптимальний розв’язок задачі планування виробництва. Потім, залежно від цього оптимуму, знаходять най- кращий розподіл обладнання. Нарешті, на основі такого розподілу складають оптимальний графік виконання робіт. Однак, гака послідовна оптимізація часткових підзадач не завжди приводить до оптимального розв’язку задачі в цілому. Поки що не знайдено метод, який би дав змогу отримати одночасний оптимум для усіх трьох задач, а можливо він і зовсім не існує для конкретних задач. Тому для розв’язання подібних комбінованих задач викорис- товують метод послідовних наближень, який дас можливість набли- зитися до шуканого розв’язку комбінованої задачі якомога ближче. Вище наведена класифікація задач дослідження операцій звичай- но не є вичерпною і остаточною. З часом деякі класи задач об’єднуються і стає можливе їхнє спільне розв’язання, крім того з’являються нові класи задач. 1.3. ДЕЯКІ ПРИНЦИПИ І ПРОБЛЕМИ ПРИЙНЯТТЯ РІШЕНЬ В ЗАДАЧАХ ДОСЛІДЖЕННЯ ОПЕРАЦІЙ Як зазначалося (п. 1.2), прийняття рішень є фундаментом дослі- дження операцій. У процесі прийняття рішень виникають такі труднощі. 34
Дослідження операцій Наявність великого числа критеріїв, які не завжди узгоджені один з одним. Наприклад, при проектуванні нового приладу, який встано- влюється на літальному апараті висуваються вимоги мінімальної ма- си, максимальної надійності та мінімальної вартосіі. Ці критерії су- перечливі, і тому виникає задача пошуку компромісу між ними. Високий ступінь невизначеності, зумовлений недостатньою ін- формацією для обгрунтованої о прийня ття рішень. Елементи задач прийняття рішень та класифікація задач Будь-яка задача прийняття рішень, характеризується такими еле- ментами. Особа, що приймає рішення (ОПР), яка повинна нести відпові- дальність за наслідки цих рішень. Множина змінних, значення яких обираються особою, що приймає рішення. Називатимемо їх керуючими впливами або стратегіями. Множина змінних, значення яких залежать від вибору стратегій, їх називатимемо вихідними змінними (характеристиками прийняття рішень або наслідками рішень). Множина змінних, шачення яких не регулюються ОПР. Ці змінні можуть лишатися визначеними при розв’язанні певної задачі, і тоді їх називають параметрами задачі. В інших випадках вони можуть змінюватися незалежно від ОПР і тоді є збуреннями (зовнішнім сере- довищем). Заданий інтервал часу Т, на якому приймається рішення в даній задачі (ситуації). Математична модель задачі прийняття рішень, яка являє собою сукупність співвідношень, що зв’язують стратегії (керуючі впливи) та параметри задачі з вихідними змінними. Обмеження, що відображують вимоги, які накладаються ситуаці- єю прийняття рішень на вихідні змінні за стратегії задачі. Цільова функція (критерій оптимальності), яка дає змогу оціню- вати властивості обраного рішення. При цьому цільова функція мас залежати від стратегій підно з математичною моделлю задачі прий- няття рішень. Виконаємо формалізацію задачі прийняття рішень. 2*** 35
іайченко Ю.П. _______________________________________________ Позначимо дія поданої задачі через X множину векторів страте- гій; Р - множину векторів параметрів задачі; 42 - множину векіорів зовнішніх збурень (станів зовнішнього середовища); V множину векторів вихідних змінних. Тоді математична модель задачі прийнят- тя рішень описується відображенням у вигляді: і ХхРхО -» V (13-І) Залежно від виду відображення існують різні типи моделей. Так, залежно від ступеня змінювання параметрів та зовнішніх збурень, мо- делі можуть бути статичними або динамічними. Якщо параметри Р і зовнішні збурення Г2 незмінні в часі, то математична модель < статич- ною У протилежному разі, маємо динамічну модель ситуації прийнят- тя рішень Відображення, що описує динамічну модель, може бути задано різними класами диференційних та різницевих рівнянь. Математичні моделі відрізняються одна від одної також виглядом зовнішніх збурень, які можуїь бути як детермінованими, гак і випад- ковими. Якщо збурення невипадково то їх можна віднести до параметрів задачі Р, і тоді детермінована модель описуватиметься відображен- нях; вигляду: і РхХчУ (13 2) Якщо ж збурення ( випадковими, то маємо сгохастичну модель задачі прийняття рішень, яка описується загальним відображенням (і 3 1). У цьому випадку вихідні змінні будуть також випадковими, їх розподілення при заданих параметрах Р визначатиме і ьея розподі- ленням зовнішніх збурень. Залежно від умов зовнішнього середовища та ступеня інформо- ванності особи, що приймає рішення, існує така класифікація задач прийняття рішень: а) в умовах визначеності; б) в умовах ризику, в) в умовах невизначеності; г) в умовах конфліктних ситуацій або проти- дії (активного супротивника). 36
Дослідження операцій Прийняття рішень в умовах втпаченості Прийнятій рішень в умовах визначеності характеризується одно- значною або детермінованою залежністю між прийнятим рішенням та його результатом. Головна трудність - це наявність декількох кри- теріїв, за якими слід порівнювати результати. Отже, виникає пробле- ма прийняття рішень при так званому векторному критерії опгима- льності [33; 9]. Цю проблему буде розглянуто далі. Розглянемо проблему вибору найкращих рішень. Вона виникає годі, коли < деяка зчисленна або незліченна множина допустимих стратегій, які задовольняють обмеження, шо входять в математичну модель задачі. Називатимемо сукупність стратегій (керуючих впливів), що задо- вольняють обмеження задачі, множиною допустимих альтернатив А. з яких робиться вибір. Надалі позначатимемо альтернативи через д- і, якщо потрібно, вказуватимемо обмеження, що їх визначають. Для порівняння різних альтернатив та вибору найкращої з них споча- тку вибирають певну властивість (або сукупність властивостей) оці- нюваних альтернатив і будують її кількісну міру (оцінку), за значен- нями якої можна порівнювати альтернативи між собою, і вибирають найкращу. Така міра зветься функцією корисності. Створено відпові- дні правила прийняття рішень на основі теорії корисності, розробле- ної Дж. Фон Нейманом та О. Моргенш терном [36]. Ця теорія грунтується на системі аксіом, в яких стверджується, що існує деяка міра цінності, яка зветься функцією корисності (ре- зультатів) і дає змогу упорядкувати альтернативи Практичне використання теорії корисності базується на таких аксіо- мах, які визначають властивості функції корисності [36; 47]. Результат (альтернатива) т, виявляється переважаючим стосовно альтернативи т; (що записується як хІ >д;), тоді і тільки тоді, коли 6'(г,) =/(д,) > ІДд-р , де П(д-,), С/(\/) - корисності альтернатив т, та Ц відповідно. Транзитивність: якщо х, > х;, а ху > дА , то г, > хА і П(х,)>П(хА). (1.3.3) 37
іипченко Ю.П.________________________________________________________ Лінійність: якщо деякий резульгаї л можна записати у вигляді .V = А-ї| + (1 к )х2 , де 0 < А < 1 , то (7( з) = АС/(Х|) - (І А)і7(у2) . (1-3.4) 4. Адитивність: якщо і/(Т|,і2) - корисність від досягнення одно- часно результатів і-, і х2, го властивість адитивносгі функції С/(л-| ,л2) записується як 1/(Л|,.г2) = <7(.Х|) - С/(х2) 5. Аналогічно, якщо маємо п результатів \],ї2.....д„, які досяга- юзься одночасно, зо = (1 3.5) /=і Визначимо в термінах функції корисності /(а) такі відношення на множині альтернатив: відношення слабкої переваги - «не гірше», яке позначається знаком >; відношення строгої переваги, що позна- чається знаком > і відношення сквівалснтносзз (рівноцінності), яке позначаємо знаком -. Для двох альтернатив л2 казатимемо, що: 7 Л,> Х2 ТОДІ І тільки ТОДІ, КОЛИ /(Л])> /(Л2) , (1.3.6) І Г) >Л-2 ТОДІ І ТІЛЬКИ ТОДІ, КОЛИ /(.¥]) > /ЇХ2), (1.3.7) І VI - VI ТОДІ І ТІЛЬКИ ТОДІ, КОЛИ / (.V) ) - / ( V 2 ) • (1-3.8) Знаки >(<), >(<) при порівнянні значень цільових функцій для різних альтернатив беруться залежно від того, чи вважається альтер- натива кращою при більшому або меншому значенні цільової функції. Для визначення функції корисності можливих результатів ство- рено методику, яка запропонована в [1]. Розглянемо декілька варіан- тів методики визначення корисності для різних випадків. / Випадок, коли маємо зільки 2 результати. Відповідна методика визначення корисносзі включає такі кроки: Визначаємо, який резульгаї є більш переважаючим іля особи, яка ириймас рішення. Нехай г( >л2 . 38
Дослідження операцій Визначаємо таку ймовірність а, для якої досягнення результату V, еквівалентне результату х2, що отримується з імовірністю 1. Оцінюємо співвідношення МІЖ корисностями результатів Л| І її . Для цього беремо корисність С(т2) = 1, тоді а Д'(Х\) = 1/(л2), С/(х,) = -. а II Випадок, коли маємо п можливих результатів \|.л2,...,л„, між якими встановлено відношення переваги: Л| >л2 х„. Для цього випадку методика визначення корисності результатів така. Визначаємо величину а з умови а^СДлі) - С/(х2). Аналогічно визначаємо а2б/(л2) = (Да Д , _,) = С(л„). Беручи корисність найгіршого результату л„ такою, що дорівнює 1, знаходимо: (Для) = І; С(л„ і)=——; «»-і С(а,) =-----------. «1«2- «и-і III Випадок, коли окремі критерії є якісними. Тут використову- ється методика визначення корисності, запропонована Р.Акофом та Р. Черчменом [1 ;53]. Отже, припустимо, що маємо п результатів Л],^,...,.*,,. Методика складається з таких етапів: Упорядковують усі результати щодо спадання (убування) відно- шення переваги. Нехай А] - найкращий, л„ - найгірший результат. Складають таблицю можливих комбінацій результатів, а відтак встановлюють їхню перевагу щодо окремих результатів льх2...........г„ (табл. 1.3). Цю інформацію про переваги результатів отримують від експертів. 39
іийченко Ю.П. Приписують початкові оцінки корисностям окремих результатів С'0(.ї| ),С/0(л-2)... С'о( V,,). Підставляють початкові оцінки в останні співвідношення табл. 1.3. Якщо воно задовольняться, ю оцінки не змінюють. У протилежному разі виконують коректування кориснос- тей так. щоб це співвідношення задовольнялося. Після цьою переходять до наступного співвідношення. Процес коректування продовжується доти, доки не утвориться система оці- нок б (х})ЛЗ (т2)...(/ (л„). яка задовольнятиме всі наведені у табл. 1.3 співвідношення. Коректування слід виконувати гак, щоб змінюва- ти оцінки для якнайменшого числа результатів. Таблиця 1.3 1 хі або х2 4-13 - ...з т„ п л-2 або Л3-.Г4 - ... + л„ 2 або л’2 ~ л'з Чі і /і-І л2 або л'з -- лд - ... - \п 3 ї| або л'2 -'з * - * лп-2 п -2 л2 або лз - лд - . . - і/( 2 ... п 1 її або х2 * гз \ л„_2 або V,, І - V,, Приклад 1.1. Нехай експерт упорядковут п’ять результатів (.гі.,4, надаючи їм такі початкові оцінки: І ЦІ V;) = 7 І'о( «2 1 4, О0( 1 2.1'о( Г4) = 1.5.1 ()(\'5) = 1. Розглянувши можливі варіанти, він висловив такі твердження щодо цінності певних комбінацій результатів: 1) Лї 4 Л’2 г л'3 " А 4 + л5 ; 2) -< л'2 — \'з -*• 14 ; . 3) л; -< Л2 — »з -• '5 • 4) ч >- -'-з * лз; 5) л2 ^ -і’з* Ч* л5 ; 6) г2 л’3 ~ у4 ; 7) Л-3>л 4+Х5 40
Дослідження операцій Необхідно здійснити оцінку корисності результатів так. щоб за- довольнити всі нерівності. Підставимо початкові оцінки у нерівність 7): і й(Л3) = 2 < С о(-’4 > + Ц|ІЛ'5) - 2.5 Отже, нерівність 7) не задовольняється. Змінюємо корисність ре- зультату \3:ІЩл3) = 3 і перевіряємо нерівність 6): І ()( '•> ) = 4 < (Л(Х3 ) * Гд ) = 4,5 . Ця нерівність також не задовольняється. Покладемо іу іл3з = 5 . Тоді нерівність 5) справджується. Перевіримо нерівність 4): Сп(г;)=7<С’;(Л2)*ІЛ(ч) = 8. Вона не виконується. Тому візьмемо <.':(л) = 8.5. Тепер нерівності 1), 2), 3) задовольняються. Перевіримо ще раз нерівності 6) і 7) при змінених значеннях ко- рисностей: 5>3 + 1.5. З >1.5-І . Обидві нерівності ВИКОНУЮТЬСЯ. Запишемо остаточні оцінки корисності результатів: Г(.г: 1 = 8.5; і'(»2) = 5: С/:(л3) = 3; ІЛілт) = 1.5; 1/;(.г5) = 1 Таку методику визначення корисності можна застосовувати, коли кількість результатів п обмежена, п < 7. У випадках, коли п > 7, Р.Черчмен та Р.Акоф запропонували мо- дифікований спосіб корегування оцінок [1]. Множину результатів розбирають на підмножини, які містять 5-7 результатів і мають один спільний результат, наприклад, А]. Відтак записують початкові значення корисності для всіх результатів, причому корисність спільного результату Х| однакова в усіх підмножинах. Далі застосовують спосіб корегування оцінок корисності незалежно в кож- ній підмножині при обмеженні, що ІДх\) = соплі. У результаті дістають систему ОЦІНОК корисності ІЗ СПІЛЬНОЮ мірою для ВСІХ І1ІДМНОЖ11Н І)(.¥[ ) . Після того, як згідно з описаною методикою функція корисності всіх альтернатив визначена, правило (процедура) вибору найкращої з них в умовах визначеності записується так: Знайти такий х0, що /(л0) = тах /(л). гє/1 41
Іайченко Ю. П._____________________________________________ Прийняття рішень в умовах ризику Ця задача виникає в тому випадку, коли з кожною стратегією а, пов’язана ціла множина можливих результатів {у], і-2,.. ,і„| з відо- мими ймовірностями Р(у,(х,)). Формально модель іадачі можна по- дати у вигляді такої матриці (табл. 1.4) І/ =ІІ і'іі |І, і - 1. т, і = 1, /і, де н,і - корисність результату у, при використанні рішення т,. Таблиця 1.4 ’2 ... ’з ... *| «II «12 "17 ... “111 X, «12 «12 «у ... «І/І - Х,„ «»>І «ш2 ... «»у ... “1Ш> Нехай задано умовні ймовірності Р(і, х,), і -1,, у = 1,п. Уведемо очікувану корисність для кожної стратегії: і’Мт,)| = І Л'г) > ' = 0-3.9) /=1 Правило для ви іначення оптимальної стратегії записується так: Е{и(х,-)} = тах Е{и(хд )} (1 3 10) Прийняття рішень в умовах невизначеності Одним з вирішальних факторів у таких задачах є зовнішнє сере- довище (або природа), яке може перебувати в одному з к станів 5|,52,...,5\ • невідомих особі, що приймає рішення (ОПР). 42
Дослідження операцій Тоді математичну модель задачі прийняття рішень в умовах не- визначеності можна сформулювати так Є деяка магриця II, розмірність її тхл (табл.1.4). Елемент цієї матриці »(/ можна розглядати як корисність результату у при вико- ристанні стратегії х, н,у = и( у і ,Х, ), і = 1, н, і = 1, лі. Залежно від стану природи , результат у, досяіається з ймові- рністю Р(г /х,,5,) Крім того, ОПР невідомі апріорні ймовірності Р(8к). Особа, що приймає рішення, може висловлювати певні гіпо- тези, Щодо стану природи. Її припущення стосовно можливого стану природи називають суб'єктивними ймовірностями: к=й<- Якби величина Р(5д) була відомою особі, що приймає рішення, то ми б мали задачу прийняття рішень в умовах ризику. У цьому ви- падку правило прийняті я рішень визначається так: її к тах^^н( у/,х,)/’(у)/х,,5А.)/’(5А)- (13 11) *' ,-=і ;=і Насправді ж, поточний стан природи невідомий ОПР, невідомий також розподіл ймовірностей )| —.Як вибрати при цьому оптимальну стратегію? Існує декілька критеріїв для вибору оптимальної стратегії. Критерій Ваіьда (критерій обережного спостерігача). Цей крите- рій оптимізує корисність при припущенні, що природа (зовнішнє се- редовище) перебуває у найневигіднішому для спостерігача стані. Згі- дно з розглядуваним критерієм, правило прийняття рішень має такий вигляд: тахтіп(7(х,51) > г. 5, де С/(хп8Іі) = ^и(уі /хІ,8к)Р(уі /(1.3.12) 43
кііічепко Ю.П.___________________________________________________ За критерієм Вальда обирають сгратсию, яка дає гарантований виграш при найгіршому варіанті стану природи Критерій Гурвіца грунтується на таких двох припущеннях: при- рода може перебувати у найнсвигіднішому стані » ймовірністю І -а і в якнайвигіднішому - з ймовірністю а, де а - коефіцієнт довіри. Тоді правило прийняття рішень записується гак: піах[а тахІ/(г,,5*) (І-а) тіп17(є )], 0 < а < І . (13 13) Якщо <7 = 0, го одержимо критерій Вальда. Якщо а - 1 , го маємо правило вигляду тахтіп С(л,,5.), - яке має назву стратегії опгиміс- •'/ та, що вірить в свою удачу. Критерій Латаса. Якщо стани природи (середовища) невідомі, то всі вони вважаються рівноймовірними: Р(5,)=Р(5,) = „ =Р(\) В результаті, правило прийняття рішень визначається співвідно- шенням (1.3.11). Критерій Севіджа {критерій иініліізації втрачених вигод). Втра- чена вигода - це величина, яка дорівнює зменшенню корисності рі- шення (результату) при даному поточному стані стосовно найкращо- го можливого стану (д„ія даного рішення). Щоб оцінит и втрачену ви- году, виконують такі процедури. Обчислюють матрицю (7 =;! «1А |, де нй=и(х„5д), і = їйп ,к = КК У кожному стовпці цієї магрииі знаходять максимальний елемент: и,=тахмй, к = \.К (1.3.14) І Йоіо віднімають від усіх елементів стовпця Відтак будують мат- рицю втрачених вш од Щ =!>,,' [І, де = н)А -ик. Правило вибору оптимальної стратегії, згідно з критерієм Севіджа, записується гак: шах тіп м*А ’(лс,.,8к) (1.3 15) ч ч Розглянемо використання згаданих критеріїв в умовах нсвизна- ченосгі в такій практичній ситуації. 44
Дослідження операцій Приклад 1.2. Судова компанія планує організацію перевезень пасажирів на літній сезон. Число пароплавів (лайнерів), які мають бути зафрахтовані, а також число команд, які потрібно найняти і підготувати до наступної весняно-літньої навігації, є величиною змінною і визначається фактичними потребами в ііасажироперевс- зеннях в даний сезон. Припустимо, що воно може набувати значень 10, 20, ЗО, 40 і 50. Фактично потреба в пасажироперсвезеннях с ве- личиною випадковою, яка залежить від множини невідомих факто- рів. Нехай судова компанія склала кошторис експлуатаційних ви- трат і визначила величину очікуваного доходу від виконання плану перевезень залежно від числа зафрахтованих пароплавів і, і факти- чної потреби в них для повного задоволення потреб пасажирів в перевезеннях 8. Нехай розраховані значення очікуваного доходу для усіх можливих значень г, і наведено в табл. 1 5. Таблиця 1.5 хі 10 20 зо 40 50 10 60 60 60 60 60 20 10 110 110 110 110 ЗО -48 зо 160 160 160 40 -100 -50 200 240 240 50 -150 -100 50 200 340 Необхідно визначити оптимальне число зафрахтованих паропла- вів яке максимізує очікуваний дохід. Розрахуємо цю величину, послуговуючись вищенаведеними критеріями. Критерій Вальда. Зіідно з цим критерієм хтт = тах тіп иік = 60, х, „„„ = х. = 10. X, Критерій Лапласа. За цим критерієм і 5 тах— = тах {60; 90, 92,4; 106; 72} = 106 , х„„т = х4 - 40 5*=1 45
Зипченко Ю.П. Критерій Гурвіца. Згідно з цим критерієм оптимальне рішення визначається із умови: тах[« тах н.д. +(!-«) тіп «д | л, А А Побудуємо таблицю очікуваних прибутків за критерієм Гурвіца (табл. 1.6): Н =ІІ Ка II > ^іа = Iа тах "ік + (І _ <т) тіп /і,д. ] . Таблиця 1.6 0,1 0,2 0,5 0,8 0,9 10 60 60 60 60 60 20 20 ЗО 60 90 100 ЗО -27,2 -6,4 56 118,4 139,2 40 -661 -32 70 172 206 50 -101 -52 95 242 291 Тоді оптимальна кількість пароплавів, залежно від а, визначать- ся з табл. 1.7. Таблиця 1.7 а о,1 0,2 0,5 0,8 0,9 у опт 20 20 20 50 50 Критерій Севіджа. Будуємо матрицю втрачених вигод «<• =||и}<‘)||, а результати заносимо у табл. 1.8. Таблиця 1.8 10 20 зо 40 50 10 0 -50 -140 -180 -280 20 -50 0 -90 -130 -230 зо -108 -80 -40 -80 -80 40 -160 -160 0 0 -100 50 -210 -210 -150 -40 0 46
Дое пджеііия операцій Обчислимо: тах тіп = тах [-280, -230. 108, -160, 210; •Л -Я ЗВІДСИ '„ти =30. Таким чином, потрібно зробити вибір між такими рішеннями: за критерієм Вальда слід зафрахіуваїи 10 пароплавів. За критерієм Гур- віца - 20 пароплавів, якщо керівництво компанії с песимістами, або 50 пароплавів, якщо вони оптимісти; за критерієм Севіджа слід за- фрахтувати 30 пароплавів Якому ж з можливих рішень слід дати пе- ревагу? Це залежить від вибору відповідною критерію в умовах не- визначеності. Вибір критерію прийняття рішень є найбільш складним і відпові- дальним етапом у дослідженні операцій. При цьому не існує якихось заіальних рекомендацій. Вибір критерію повинен робити замовник операційного дослідження на найвищому рівні ієрархії і максималь- но узгоджувати його із специфікою конкретної задачі і своїми ціля- ми. Зокрема, якщо приймається дуже відповідальне рішення і навіть малий ризик недопустимий, то слід використовувати критерій Валь- да - гарантованого результату. Навпаки, коли ризик припустимий і керівництво фірми (замовник) готове вкласти в плановану операцію стільки коштів, скільки потрібно, щоб потім не шкодувати за втраче- ною вигодою, то обираюіь критерій Севіджа. За відсутності достатньої інформації для вибору певного крите- рію можливий альтернативний підхід, пов’язаний з обчисленням ймовірностей (шансів) успіху іа невдачі на основі минулої о досвіду
іниченко Ю П 1.4. ПРИЙНЯТТЯ РІШЕНЬ ПРИ ВЕКТОРНОМУ КРИТЕРІЇ ОПТИМАЛЬНОСТІ Постановка багагокритеріальної задачі прийняття рішень і її властивості. Розглянемо ситуацію прийняття рішень на заданій множині допустимих альтернатив за потреби врахування сукупності властивостей, що описуються множиною цільових функцій: / = І./До')}, де /і(а) - відповідає і-й властивості, за якою оціню- ються альтернативи а є А . Вважатимемо, що перші ш цільових функцій максимізуються, а інші М-ш - мінімізуються. Позначимо через /1 = {|,2,...,ш} і /2 = {«І -і-1, т т 2, ..М} множини індексів відповідно для функцій, що максимізуються та мінімізуються. Щоб сформулювати задачу прий- няття складних рішень у термінах багагокритеріальної оптимізації. спинимося на питанні порівняння альтернатив на множині цільових функцій. Введемо такі відношення на множині альтернатив за наявності множини цільових функцій (критеріїв): а) слабкої переваги (не гірше) > . казатимемо, що г, > г2, коли: (14|) (/,(4 і /,<».! «є/.: б) строгої переваги (краще): д-| > л2 , годі і тільки тоді, коли система нерівностей (1.4.1) виконується і хоча б одна з них - строго; в) сильної переваї и: л >-> х2, якщо всі нсрівнос ті (1.4.1) - строгі; г) еквівалентності: т,~.т2 тоді і тільки тоді, коли /(х1) = /,(.з2) У/е/. Слід наголосити, шо відношення > , яке описується співвідношення- ми (1.4.1), не є лінійним, або сильним упорядкуванням. Це означає, що не будь-яка пара альтернатив може буїи порівняна на множині цільових ф) нкцій тобто не для всяких пар альтернатив ч,л2 є А має місце або Л| > л2. або \2 - гі , або те й інше разом. У ньому полягає одна з принципових особливостей задач баїаго- крисеріальної (векторної) оптимізації (БКО). 4»
Дослідження операцій Розглянемо приклад. Нехай в деякій задачі прийняття рішень по- трібно вибрати один керуючий вплив (стратегію) із заданої множини А = {в:( у = 1,5 з урахуванням двох цільових функцій /фа^) і /ДаД, значення яких наведено в таблиці 1.9. Таблиця 1.9 /,(«,) «І 5 3 «2 4 1 а3 3 2 6 6 «5 5 4 Нехай перша цільова функція /і(а,у) визначає продуктивність приладу і вимірюється в операціях за секунду, а друга цільова фун- кція вартість приладу і вимірюється в карбованцях. Потрібно вибрати таке рішення - проект приладу, яке матиме найбільшу про- дуктивність і мінімальну вартість. Очевидно, що при порівнянні альтернатив за цими критеріями (ц ф.) а а, >~а4, в якому відношенні перебувають між собою усі інші рішення сказати немо- жливо. Які ж альтернативи вважаються кращими за сукупністю ц. ф.? Якщо Л| > х2, то альтернатива Х| краща за х2> оскільки при пе- реході від ,г2 до т,, нічого не втрачаємо за жодним з критеріїв, а за одним виграємо. У такому випадку кажуть, що х( домінує над х2 Якщо в множині допустимих альтернатив А існує хоча б одна альтернатива ї , така, що хЯх, то альтернатива зветься домінова- ною. Коли ж такої альтернативи г не існує, то альтернатива г зветь- ся недомінованою або ефективною. Дамо більш чітке означення ефе- ктивної альтернативи в термінах цільових функцій. 3і 49
Зайчеико Ю.П. Альтернатива л0 зветься ефективною, якщо на множині дот е шимих альтернатив А не існує такої альтернативи х. для якої б виконувалися нерівності: /іііУ^/Дхо), \/ієІ., (1.4.2) /(і) < У](л0), V/ є /2 (1.4.3) і хоча б одна з них була строгою. Цс означає, що жодна інша альтер- натива не може поліпши ги значення деякої цільової функції порівня но з ефективною альтернативою, не погіршуючи при цьому хоча б одну з інших цільових функцій. Тому іноді ефективну альтернативу називають не поліпшуваною на множині і/. ф. або оптимальною за Парето [39). Із означення ефективної альтернативи випливає така теорема [33]. ТЕОРЕМА 1.1. Дві ефективні альтернативи або еквівалентні, або не порівняні по між собою на .множині цільових функцій. Доведення. Якщо л0 ефективна альтернатива, то д.ія будь-якіь альтернативи яка не збігається з л() на множині ц. ф.. або справедливі М рівнос гей вигляду /(Л ) = ХИ є і . і годі г' еквівалентна з,,, або знайдеться принаймні один індекс зє/ такий, що /1.(л())> Д(з’) • коли Л Є / . або Д (Л() ) < (л') , КОЛИ V Є 12 Г0-'П НС може бути ефект ивною. Із теореми випливає, що якщо існує тільки одна ефективна альтерна- тива, то вона надає оптимального значення кожному з критеріїв /дл). » к і. Справді, оскільки їо , то очевидно у (, )2/(л): уїЛіе/ ' /(л-(і)</;(л-): Мх.Міе/2. Як і у випадку прийняття рішень за одним критерієм, в задачах прийняття рішень за одним критерієм, в задачах прийняття рішень із множиною ц ф можуть існувати декілька множин ц. ф„ яким відпо- відатимуть ті самі відношення строгої переваги та еквіватентності. На підтримку сказаного введемо таке означення. Множини ц. ф. /•"(л) = .ге/, і /,2,(л) = | . і є л визна- чені на тій самій множині допустимих альтернатив А, називатимемо екві- ваіенгнпми, якщо вони визначають на ній одне ге саме відношення слабкої /Пі переваї п, тобто для будь-яких двох альтернатив д, , л2 із і, » », вишіи- Л-’І „і: /(і) ват, що » д- , і навпаки із > д випливає, що лІ > л2. 50
Дос. ііджеїшя операцій Тут індекс /( над знаками слабкої переваги > вказус функцію, за допомогою якої задасться це відношення. Із цього означення випливає, шо еквівалентні цільові функції визначають на множи- нах А ті ж самі відношення строгої переваги га еквівалентності. Які властивості мають задовольняти еквівалентні цільові функції встановлює така проста теорема [33]. ТЕОРЕМА 1.2. Для того іцоб цільові функції /((.т) і /2(л) Р1-7" еквівалентни ми, достатньо, щоб існувало таке монотонне перетво- рення и’(;), яке переводить область значень функції /|(.\) в область значень функції /2(г) так, що /;(.у) = и’(/2(л)) дія всієї .множини до- пустимих альтернатив При цьому, якщо обидві цільові функції мак- сим ізу ют ься. то перетворення **•(_) має бути монотонно зростаю- чою функцією, а якщо ні. то монотонно спадною функцією. Доведення. Розглянемо вішалок, коли критерії максимі іуються і іг(г) монотонно іросіаючс перетворення (оскі іьки інші випадки до- 6 водяться аналогічно). Годі, якшо тобто ,/7(т;)>/2(л2), то ' /і м{/2(х )) > іЦ/2(.у2)). а огже, х1Лсл,. Твердження л, л2 випливає з /і <2 в силу монотонності зворотною перетворення Наведемо приклади еквівалентних цільових функцій: /і(г) = а/2(х) - Ь. де а > 0, /](.¥)= Іп./2(.г) при /‘2(л-)>0. Еквівалентні множини ц. ф. визначають на множині допустимих альтернатив однакові відношення еквівалентності та строгої переваги. З* Я
Зайченко Ю.П. ТЕОРЕМА 1.3. Якщо існує множина монотонних перетворень IV = )и,(2)} і є/ таких, що і-те перетворення переводить область значень функції //2)(л) в область значень функції /-Ц(х) / у\(1)(л) = н(//2,(г)) для всієї множини допустимих альтернатив А, то множини цільових функцій /(|) = {//''(л)} і /|2> = |/^і2)(г)| еквівалентні. Довести цю теорему можна, скориставшись теоремою 1.1. Ви- користовуючи теорему 1.2, а також означення ефективних альтерна- тив, неважко довести і таке твердження. Якщо л'о - ефективна альтернатива на множині ц. ф. / = {/}(>-)}/ є / , то л0 - ефективна альтернатива і на множині функ- цій = {н,(л){ = {и,(/-(л))}є / , де и,(/(.<)) - монотонна функція від /і(х). Оскільки цільові функції /,(л) мають різну фізичну розмірність, бо характеризують різні властивості вибраного рішення, го часто до- цільно розглядати не саму множину ц. ф , а еквівалентну їй множину функцій IV = {и,(/;(л))І . де и,(/Дл)) - монотонні перетворення, які приводять ц. ф. до безрозмірного вигляду і дають змогу порівнювати їх між собою. Позначимо через IV с /?Л/ множину значень функцій и = (н,(.г)}, на якій кожній альтернативі х відповідає певний вектор м є IV, де н = {и,(л)}, і навпаки Тоді відношення слабкої переваги, еквівален- тності і строгої переваги, введені для альтернатив, виявляються при- датними і для множини XV. Нехай п" є IV , тоді: її''- > IV,", V; є /і , IV- < 11", V/ є ІЛ) и' - ух" <-> іг,- = в,', V/ є /; (1.4.4) IV' > «', V/ Є /. ' іг' < IV*, V/ Є /, і хоча б одна з нерівностей (1.4.4) буде строгою. Вектор «о є IV , який відповідає ефективній альтернативі, назива- тимемо ефективним. 52
Дослідження оиерациї Властивості ефективних альтернатив і способи їх знаходження Вважатимемо, що всі значення н-,(л)>0 мінімізуються і зведені до безрозмірного вигляду. Властивості ефективних альтернатив встановлюються в наведених нижче трьох теоремах. ТЕОРЕМА 1.4. Якщо множина допустимих альтернатив Л опу- кла, а цільові функції и,(/](т)) - увігнуті, то для будь-якої ефектив- ної альтернативи і,, існує такий вектор С = {с,} і є І, де с,- >0 і = 1, що іиіійний критерій ієі Е(т) = ХсдіДт) (1.4.5) ієі досягаї мінімуму на множині А при ¥ = -т0. Доведення цієї теореми наведено в [22]. ТЕОРЕМА 1.5. Нехай ї0 - ефективна альтернатива множини цільових функцій И = (и,(.г)}. и,(х) > 0, V/ є І. Тоді існує вектор С = [с ] ,/ є / з компонентами с, >0 і = 1 такий, що критерій /є/ Р( г) = тах срг,(л) (1.4.6) /є/ досягаї иіиі.м\ му на опуклій .множині допустимих альтернатив А. л л, . _ . . І Як компоненти с, можна взяти числа — .де / = ) л,; /., =-. Л ,е/ ”,(Л) Цю теорему довів Ю Б Гсрмеср [9] і вона виявляється биьш си- льною. ніж теорема 1.4, оскільки жодних умов на вигляд функцій чу(л-) обмежень в ній не накладається. ТЕОРЕМА 1.6. Якщо л0 ефективна альтернатива множини Цільових функцій, то для будь-якого і є //(т(}) = тах //(з). З2 53
Зиіічснко Ю.П. /(л0)> /, (х), V/ є /, і*Г, (1.4.7) /,(\0)< /,(х), Уі є/2 у є А або для довільного / є /2 //(У0) = /ПІ/І (1.4.8) /,(\0)< /"Дх), Уіє/2, і*1 Доведення цієї теореми наведено в [39]. Ці теореми дають змогу будувати різні способи відшукання ефек- тивних альтернатив. Прийняття рішень в задачі багатокрнтер і ал ь н ої опт им із а ції Розглянемо, як знайти найбільш раціональне рішення в задачі ба- гатокритеріальної оптимізації. Таке рішення може виявитися не оп- тимальним для усіх цільових функцій, але, разом з тим, воно буде найкращим компромісним рішенням з урахуванням усіх ц. ф. (крите- ріїв) одночасно. Очевидно, найкращим рішенням слід вважати гаку альтернативу х, за якої відхилення від оптимальних значень для ко- жної цільової функції /Дх): 7''-/(.г),Уїє/,; Д/,(') = ІЛ(х)-/,°,Уїє/2 досягає свого мінімального значення. Туї' через /,° позначено опти- мальне значення і-ї ц. ф. /і на множині допустимих альтернатив. Однак, оскільки найменші значення величин Д^(.з),Уіє/ не дося- гаються одночасно на жодній альтернативі, то виникає необхідність порівнювати ці величини між собою, що пов’язано з потребою залу- чення додаткової нсформалізованої інформації від експертів. 54
Дослідження операцій Оскільки ц. ф мають різну розмірність, іо потрібно ввести деяке перетворення , що приведе /, (л) до безрозмірного вигляду. Це перетворення має задовольняти, принаймні, такі вимоги а) врахувати необхідність мінімізації відхилень від оптимальних значень для кожної цільової функції; б) маги спільний початок і один порядок змінювання значень на множині допустимих альтернатив; в) зберігати відношення переваги на множині альтернатив, іцо порівнюються, для сукупності ЦІЛЬОВИХ функцій 4 . 1 завдяки цьому не змінювати множини ефективних альтернатив. Остання вимога, як було показано раніше (в теоремі 1.3), означає, шо перетворення и,(/,(л')) має бути монотонним. За таке перетво- рення можна вибрати одну з монотонних функцій вигляду: а) и;(/,(г)) = /1 > 1 ІПІП Н тач /і (1.4.9) Л /''''.«є/,. б) Иї(/,(х)) = < Л 'і (1.4.10) в) и-(/;(х)) = ^(/,(ї)), (1.4.11) Де Лтіп > Л ігах ~ відповідно найменші значення функцій, які макси- мізуються, і найбільші значення функцій, що мінімізуються, на мно- жині допустимих альтернатив У виразі (1.4.11) ігД/,(д)) можуть ви- значатися співвідношеннями (1.4.9) або (1.4.10), а показник степеня И - ціле число, ц>2. Зазначимо, що в перетвореннях (1.4.9) вели- чини ігД/Дд)) завжди знаходяться в межах інтервалу [0,1], а в пере- твореннях (1.4.10) цього може не бути. Вибрані перетворення "’Дт)./є/ одночасно визначають розташування множини допусти- 3** 55
ішїчеико Ю.11 мпх альтернатив, яка описується одним із співвідношень (1 4.9) (1.4.11) у просторі ІГ с І<1/ іначень функцій м,(л). Тепер визначимо, яку альтернативу будемо вважати рішенням за- дачі баї атокршеріальноі оптимвації, якщо вибрано множину функ- цій И' = |и,(л)! , і є І, кожна і яких мінімізується, 0 < и,( г) < І і задано відношення переваги на множині цільових функцій. Справедливе таке твердження. ТЕОРЕМА 1.7. Для кожної допустимої альтернативи хєА та- кої, що 0 < ііДх)< І, У/є / і просторі И існує вектор р який задо- во зьняе співвідношення'. Р= \Р,} = {/>, • Р, > 0, Уі1 є 1, ^Р, = 1}, (1 -4-12) і ній зо к0 . таке, що альтернатива х задовольняє одночас по М рів- иостей вигляду. ру(х) = к.,.Уі є І (1.4.13) Доведення. Оскільки и-,( т) * 0, \/і є І. то поділивши обидві частини виразу (1.4.13) на и;(х), одержимо А=-~< (14.14) П,(л) Оскільки величини р, мають задовольняти умовам (1.4.12), то підставивши в співвідношення ^р, =1 вираз для р, матимемо іє/ . П *’,(*) 1 іе/___________ у * Е ПИ7<Л') ,е/и-,(х) ^1.УІ.з^ З урахуванням (1.4.15) вираз (1.4.14) набуває вигляду: П»7(А') = ..7£/-Д2---- Е ПИ’;(Л') ге/ /є/ у#г (1.4.15) (1.4.16) шо і доводить теорему 1 7 56
Дослідження операцій Вираз (1.4.15). який визначає параметр Ао, ( монотонно зростаю- чою функцією по кожній із змінних и,(г) на інтервалі [0.1], і при цьому А(> є (0. -Ц, де М = |/ . Л/ Справедлива така лема [33]. ЛЕМА. Якщо для двох нееквівалентних альтернатив г' і х" ве- ктори р' / р’ рівні (р - р’,Чі є /), то и, (х) = у іг, (л) і А0(х') = у А0(х’) .де у - коефіцієнт пропорційності. Доведення. Альтернатива х задовольняє систему (1.4.13): рі и,(д') = А0(х'), а альтернатива х’ - систему вигляду " _ , „ „ . ' кп(х’) " Ап(х*) „ р, и'Дх") = А0(х"). Звідси р, =—— і А =-^-77- 3 урахуванням и-,(л ) и,(х ) того, що (р' = р"), одержимо: И'АУ) _ М*) _ у (1.4.17) Ц’,(д-’) Ао(х’) Ця рівність і доводить лему. Зауважимо, що при у = 1 н’, (х') = и, (л"), тобто х' - х". Довільний вектор вагових коефіцієнтів р= {р,} >0, який задово- льняє співвідношення (1.4.12), розглядатимемо як переваги одних цільових функцій множини / над іншими, що виражені в кількісній шкалі оцінок. Визначимо напрям, який породжується вектором р у просторі Задамо його кутами Д (і є .1) між осями координат і радіусом- вектором р. Тоді: де И' = {ил } - точка, що знаходиться в просторі на промені р. Враховуючи це співвідношення та умову нормування, запишемо сис- тему лінійно незалежних рівнянь, з яких можна знайти невідомі на- прямні косинуси. З3 57
Зайченко Ю.Н. = у/,7е/ та£С05-’д=1. (1.4.19) соі> /?, и', 77 Водночас внаслідок теореми 1.7: ♦ ур. р, = (1.4.20) И'; Рі Враховуючи останнє співвідношення, систему рівнянь (14.19) можна записати так: = у,;/єЛ Усох?Д=1- (1-421) СОХ р, р, Розв’язавши цю систему, одержимо такий вираз для напрямних косинусів вектора. (1 4.22) Вважатимемо цільові функції рівноцінними, якщо р, = —, V/ є 1, т тоді напрямні косинуси для такого вектора р у просторі И7 визнача- тимуть так: п І СОХ Р = __ • ТІМ Отже, завдання відношення переваги між ц. ф. в кількісній шкалі за допомогою (1.4.13) дає напрям пошуку рішень у просторі значень И7 вибраних перетворень ц. ф. /,(х). Тому під розв’язком задачі векторної оптимізації будемо розумі- ти таку компромісну альтернативу, яка належить множині ефектив- них альтернатив і лежить на заданому напрямку, що визначається вектором р ={/?,) у просторі И7. Якщо для деякої альтернативи л та заданого вектора р > 0 виконується співвідношення р,(и’,(х)) = Ао, то будемо казати, що альтернатива х лежить на напрямку, що визнача- ється вектором р. Знайдемо, яке значення параметра Ао відповідає 58
Дослідження операцій ефективній альтернативі, що лежить на напрямку, визначеному век- тором р Відповідь на це питання дає гака теорема. ТЕОРЕМА 1.8. Якщо г0 — ефективна дія даного векторар>0, то їй відповідає найменше значення параметра , за якого система нестрогих рівностей (1.4.1 і) виконується одночасно для всіх і є 1. Доведення цієї теореми випливає безпосередньо з леми га ви- значення ефективності альтернативи л0. Нехай за перетворення ці- льової функції н'і(/,(.г)) вибрано перетворення вигляду (1.4.9) тоді з урахуванням теореми 1.7 розв’язок задачі векторної оптимізації ви- значимо таким чином [33]. Під розв’язком задачі векторної оптимізації для заданого вектора переваги р (р > 0) розуміють таку компромісну альтернативу л0, що забезпечує однакові мінімальні зважені відносні втрати иу(х0) = р,н’,(ло) за всіма критеріями одночасно. Метод обмежень для пошуку компромісних рішень в задачах векторної оптимізації Розглянемо підхід до пошуку компромісного рішення (альтерна- тиви) в задачі векторної оптимізації. Він грунтується на такій теоре- мі. ТЕОРЕМА 1.9. Для того, щоб альтернатива х* є А. така, що мДх ) > 0, Х/ї є/, була ефективною при заданому векторі переваг р>0, достатньо, щоб х був єдиним розв'язком системи нерівнос- тей рр\’і(х)<к0,Х/іе1 (1.4.23) для мінімального значення параметра Ао, за якого ця система сумісна. Доведення. Припустимо супротивне, що єдиний розв’язок системи (1.4.23) х при значенні параметра к0-к0 неефективний. Тоді існує альтернатива х' є А, така, що иДл') < нДх ), V/ є / , причо- му хоча б одна нерівність буде строгою. Помноживши ці нерівності на р, > 0, V/ є 1 дістанемо, що рре\х') < рІ^і(х') < к'о і хоча б одна З*** 59
Зайченко Ю П. нерівність строга. Отже, маємо суперечність, альтернатива х' задо- вольняє систему (1.4.23) із значенням параметра Ао, яке не переви- щує Ао. Таким чином, теорему 1.9 доведено Із цієї теореми випливає, що визначене вище компромісне рішення можна знайти як єдиний розв’язок системи нерівностей вигляду (1.4.23) для мінімального значення параметра Ао , за якого ця система ще сумісна. У просторі И' компромісній альтернативі відповідає точка перетину променя, напрямні косинуси якого визначаються заданим вектором переваг р > 0 за формулами (1.4 22), з областю ефективних альтернатив. Якщо існує точка перетину, то звідси випливає існування компромісного розв’язку, для якого мінімальні зважені втрати за всіма критеріями однакові: р,и|(.х) = АОтіп, V/є / . Якщо ж такої точки не існує (тобто промінь, що визначається вектором переваги р, не пере- гинає область ефективних альтернатив), то для компромісної альтер- нативи виконується система нсрівносісй (1 4.23) і цій альтернативі відповідає точка, найближча до заданою променя. Для знаходження компромісної альтернативи будується ітераційний процес з параметром Ао є (0; —), на кожному кроці якого перевіряється М сумісність системи нерівностей (1.4.23) для л: є А і заданого вектора р . Параметр Ао є (0; —) обмежує відносні втрати и’,(л ), V/ є /. При М к0 —> 0 відносні втрати наближаються до нуля, тобто цільові функції наближуються до своїх оптимальних значень /,(х) —> /}(х0) = , а при Ао нерівності (1.4.23) виконуються на всій множині допустимих М альтернатив А. Зменшуючи параметр Ао і тим самим зменшуючи зважені втрати для всіх ц. ф., наближаємося до альтернативи, що забезпечує мініма- льні втрати по всіх ц. ф„ тобто до компромісної альтернативи. Ітера- ційний процес припиняється, коли найменше значення А0(л) (де л номер ітерації), за якою система нерівностей на множині допустимих альтернатив ще сумісна, відрізняється від свого найбли- жчого значення А0(л +1), за якого вона стає вже не сумісною, не
Дос .иджеиня операцій більш як на г(£->0), де є - досить мала величина, яка задасться із міркувань припустимого часу розв’язання задачі. При цьому, якщо розв’язок системи нерівностей єдиний, то цс і буде шукана компро- місна альтернатива. Якщо ж цей розв’язок не єдиний, то для знайде- них альтернатив відносні втрати будуть еквівалентні із точністю до є. Єдину компромісну альтернативу тоді можна одержати, оптимі- зуючи на цій множині еквівалентних альтернатив деякий додатковий узагальнений критерій. За такий критерій можна взяти, наприклад, критерій вигляду: Г(л)- Ер 11 (')’ (14.24) ІЄ/ і мінімізувати його на множині альтернатив: А' = (х' : Діг,(.»') < Х//е/, гєЛ}. (1.4.25) Як показано вище, такий узагальнений критерій завжди дає ефек- тивні рішення. Розглянемо деякі відомі методи відшукання компромісних рі- шень в задачах векторної оптимізації. Одним з таких методів є метод, запропонований Ю.Б.Гермеєром [10]. Він грунтується на мінімізації узагальненого критерію вигляду: /•’(л) = тах р, іг,(т) -> піт , (1.4.26) /є/ хеЛ де IV,-(х) - задається перетвореннями (1.4.9) Цей метод мінімаксу дає змогу відшукати таку альтернативу гє.4, для якої або виконується система рівностей р)и/(л) = А0 для усіх і є 1к і мінімального значення параметра Ао, або для деяких і рівності не виконуються і /?,и (х) < ЛО|П111. Якщо при цьому гака аль- тернатива єдина, то це і є шукане компромісне рішення. Тому роз- глянутий далі метод обмежень, оснований на пошуку допустимих альтернатив системи нерівностей (1 4.23) при мінімальному значенні параметра Ло, можна розглядати як метод розв’язання мінімаксної задачі вигляду: мінімізувати Е( г) = шіп тах р,и,(х). (1.4.27) їє.4 ієі 61
Зийченко Ю.П. Якщо розв'язок (1.4.27) не єдиний, то для вибору компромісної альтернативи потрібно застосувати додатковий критерій він ляду (1.4.24). Таким чином, якщо за монотонні перетворення ц. ф. вибрати співвідношення (1.4.9), то задачу (1.4.24) (1.4.25) знаходження єди- ної компромісної альтернативи можна сформулювати так. Знайти розв’язок такої задачі параметричного програмування стосовно параметра Ло при заданому векторі переваї р: мінімізувати Г ( V) = ІІИп] £ р, за умов: іі(^> р, /і( V) < /,* = ’ —(7/ 1г.ах / ° ), V/ Є /2 . Рі (1.4.28) (1.4.29) (1.4.30) , І о Розв’язок задачі (1.4.28)-( 1.4.30) при мінімально можливому значенні параметра Ао є (0; —) визначить шукану компромісну альтернативу. М Розглянемо метод відшукання компромісної альтернативи .г0 при розв’язанні задачі (1.4.28) - (1.4.30), який має назву методу обмежень [33]. Спочатку відшукується мінімально можливе значення параметра Ло, за якого система обмежень (1,4.29)--( 1.4.30) буде сумісна. Якщо знайдений розв’язок не єдиний, тобто існує деяка підмно- жина (ефективних) альтернатив, еквівалентних з точністю до є по значенню параметра Ао, то вибір компромісної альтернативи здійс- нюється із допомогою критерію (1.4.28). Такий метод не залежить від вигляду функціональних залежнос- тей /і(х) і множини допустимих альтернатив А. Разом з тим, для кожного конкретного виду залежностей /](д) необхідно мати ефек- тивні способи перевірки сумісності системи нерівностей (1.4.29) — (1 4.30) на заданій області обмежень. У розд. 2 метод обмежень буде застосовано для розв’язання багато- критеріальних задач лінійного програмування. 62
Дослідження операцій Розділ 2 ЛІНІЙНЕ ПРОГРАМУВАННЯ 2.1. ПОСТАНОВКИ ЗАДАЧ ЛІНІЙНОГО ПРОГРАМУВАННЯ І ДОСЛІДЖЕННЯ ЇХ СТРУКТУРИ Більшість задач, що розв’язуються методами дослідження опера- цій, можна сформулювати так: Максимізувати Е (х-, х2, ..., х„), при обмеженнях: §1(х;, ...,Х„)<Ьь ВДхь ...,х„)<Ь2; ВДх,, ..., х„) < Ь,„ де/(х-, х2, ..., х„) - цільова функція, або критерій ефективності (наприклад, прибуток від виробництва якихось видів продукції, вартість перевезень тощо); Х={х1,..., х,,} — змінні параметри; &і(х),..£„,(х) — функції, що ви- значають обмеження на наявні ресурси. Серед різних розділів математичного програмування найбільш роз- виненим та розробленим є лінійне проірамування (ЛП). Незважаючи на вимоги лінійності функцій критеріїв та обмежень, в рамки лінійного програмування потрапляють численні задачі роз- поділу ресурсів, керування запасами, сітьового та календарного пла- нування, транспортні задачі та інші. Розглянемо деякі з них. Визначення оптимального асортименту. Наявні т видів ресурсів кількістю Ьі. Ь;, .. , Ь„ Ь,„ та п видів виробів. Задано матрицю А=|| а,, , Ї=1 от, у=1, ..., п, де а„ характеризує норми витрат ї-го ресурсу на одиницюу-го виду виробів. Ефективність виробництва /-го віщу виробів характеризується показником С„ що задовольняє умови лінійності. По- трібно визначити такий план виробництва (оптимальний асортимент), за якого сумарний показник ефективності буде найбільшим. 63
Зсіпченко Ю.П. Позначимо кількість одиниць А-го виду виробів, що їх випускає підприємство, через х*. к = \.К. Годі математична модель цієї задачі матиме такий вигляд: Максимізувати ^скхк , (2.1.1) к при обмеженнях: Ха,*х4<Л,’ (2-1-2) * і=. 2...т. Крім обмежень на ресурси (2.1.2) у цю модель можна ввести від- повідні обмеження на запланований рівень випуску продукції лу > х/0, х,: х,: х* = Ь,: 6,: />* для всіх і, ], к і т. п. Оптимальний розподіл взаємозамінюваних ресурсів. Наявні пі видів взаємозамінюваних ресурсів а., сн, .... що використовується при виконанні п різних робіт (іавдань). Обсяги робіт, що мають бути виконані, становлять Ьі, . , А>„ Ь„ одиниць. Задано числа що вказують, скільки одиницьу-ї роботи можна одержати з одиниці 1-го ресурсу, а також С,, - витрати на виробництво у-ї роботи з одиниці /-го ресурсу. Необхідно розподілити ресурси но роботах таким чи- ном, щоб сумарна ефективність виконаних робіт була максимальною (або сумарні витрати — мінімальними). Ця задача має назву загальної задачі розподілу ресурсів. Кількість одиниць 7-го ресурсу, виділених на виконання робіту-го виду, позна- чимо Через Хц. Математична модель розглядуваної задачі така: мінімізувати п пі ї. ІЛцХц (2.1.3) 7-1 7-> при обмеженнях: ПІ (2-1.4) і-1 Ех„ =а, 7-1,2, ...,771 (2.1.5) 64
Дослідження операцій Обмеження (2.1.4) означає, що план усіх робіт має бути виконаний повністю, а (2.1.5) означає, що ресурси потрібно використати повністю. Прикладом цієї задачі може бути задача про розподіл літаків по авіалініях. Задача про суміш. Є р компонентів, при змішувані яких в різних пропорціях одержують різні суміші. Кожний компонент, а отже і су- міш, містить ц речовин. Кількість к-ї речовини к = 1, 2, ..., «у, що вхо- дить до складу одиниці ї-го компонента і до складу одиниці суміші, позначимо через а,* і а* відповідно. Припустимо, що аі залежить від а,* лінійно, тобто, суміш склада- ється з х, одиниць першого компонента, .є? - одиниць другого компо- нента і т. д., тоді ак = Е алх, і Задано р величин С,, що характеризують вартість, масу або кало- рійність одиниці і-го компонента, і с/ величин /д, які вказують міні- мально необхідний процентний вміст к-ї речовини в суміші. Позна- чимо черезX/. х?,..., х,, значення компонента р-го виду, який входить до складу суміші. Математична модель цієї задачі має такий вигляд: р мінімізувати ^е-хІ (2.1.6) при обмеженнях р '£а,кхі^ЬІ:. А=1,2, ...,<? , (2.1.7) р !-<,=! /=1 Х/ >0, і = ^р. Обмеження (2.1.7) означає, що процентна концентрація к-ї речо- вини в одиниці суміші має бути не меншою Ьк. До цієї моделі належить також задача визначення оптимального раціону годування худоби. Задача про розкрій матеріалів. Нехай до розкрою надходить т різних матеріалів. Потрібно виготовити з них к різних комплектуючих 65
Зайченко Ю.П. виробів (комплектів) в кількостях, що нропорціональні величинам Ь/, Ьу ... , Ьк (умови комплектності). Припустимо, що кожну одиницюу- го матеріалуу=1 т можна розкроїти її різними способами, так що при використанні 7-го способу розкрою, 7=1, . ., її одержимо оди- ниць к-го виробу. Необхідно визначити такий план розкрою матеріа- лів, що забезпечить максимальну кількість комплексів, якщо наявний запасу-го матеріалу становить ^одиниць. Позначимо через хч кількість одиницьу-го матеріалу, що розкро- юються 7-м способом, а через х-загальну кількість виготовлених ком- плектів. Математична модель цієї задачі має такий вигляд: максимізувати х, (2.1.8) при обмеженнях: £>„<«,; (2.1.9) /=' п т ---- і=1 і-\ Умова (2.1.9) означає обмеження на запас у-го матеріалу, а (2.1.10) - умова комплектності. Оптимальні балансові моделі. Розглянемо //-галузеву балансову модель зі сталими технологічними коефіцієнтами, що задаються мат- рицею витрат (затрат) А=||а//||, де ач виграти продукції 7-ї галузі на виробництво одиниці продукції у-ї галузі. Виробничі потужності 7-ї галузі обмежують її валовий випуск величиною є/, (7 = 1, ...,л), і нехай ціна кінцевого продукту 7-ї галузі становить є, одиниць. Необхідно визначити оптимальний валовий випуск продукції кожної галузі, за якого буде досягнуто максимальний сумарний випуск кінцево- го продукту в грошовому обчисленні. Позначимо вектор валової продукції усіх галузей через х = [х:,...,х„], а вектор кінцевого продукту у = [Уі,...гг„]. Тоді у, - кількість продукції 7-ї галузі, що йде на нагромадження. Між векторами х та у існує такий взаємозв’язок: х = Ах+у, де Ах - продукт, що витрачається на споживання. Звідси: 66
Дослідження операцій у=х [Е-Л], х=[Е-А]':у. Математична модель цієї задачі має вигляд: максимізувати сту=£ є,у,, І при обмеженнях х=[Е-А]' у < сі, у>0. Крім того, в цій задачі можна додатково використати такі, напри- клад, обмеження на кінцеві продукти: а) у, :у2- ’-Ьу.-.-'-Ь,, — умова комплектності; б) сі, > уі> Ь, — умова обмеженості випуску кінцевого продукту. Форма запису задачі ЛП. Задачу лінійного програмування мож- на записати так: максимізувати , (2.1.11) >-! при обмеженнях: оц*і + аі2-<2+ ... + а-,„х„<Ь\; 021*1 + «22*2 + - + «2п*л ^2 ; «ніі* 1 + «лі2*2 Сітп^п — Ьт , (2.1.12) *і > 0,*2> 0,...,*„> 0. (2.1.13) Обмеження (2.1.13) називають умовами невід’ємності змінних. У розглядуваному випадку всі обмеження мають вигляд нерівно- стей. Іноді вони можуть бути змішаними, тобто нерівності та рівності: «ііЛ'і + 012*2 + - • + «ьЛ» ; 021*1 + «22*2 + ... + «2»*» 5 &2 ; а», 1*1 + «»>2*2 + • -. + «„>»*» < ьт; 67
Зайченко Ю.П. а,„+] ,-Г] + а,„+і.2-<2+ - + «».+ ; „л„ = 6„,< ; (2.1.14) «А!*1 ~ «А2*2 + «А/Ая ^А • Якщо всі обмеження задачі ЛП мають вигляд строгих рівностсй; а.іХ. + «12*2 + + а „х„= Ь\; «2і*:+ 0’2*2 + .. - + «?А = ; О/пі*І От2*2 З- ... “Ь @тцХ'і Ьт , (2.1.1 5) то форму запису називають канонічною У матричній формі задача ЛП записується так: максимізувати стх, (2.1 16) при обмеженнях Ах < Ь; х > О, (2.1.17) де А - матриця обмежень розміром (т х н); Ь0" " — вектор-стовпець довільних членів; х’"*/) — вектор змінних; ст=[с;, С2,...,е„] — вектор (рядок) коефіцієнтів ц.ф. У векторній формі обмеження (2.1.14) записують так: А|Х;А2х2 + .+А„х„<Ь. (2.118) Допустимою множиною розв'язків задачі (2.1.11)—(2.1.13) зветься множина Я(х) усіх векторів х, що задовольняють умови (2.1.12)і(2.1.13). Множина Я(х) являє собою опуклу многогранну множину або опуклий мної огранник. Розв’язок X/, є оптимальним, якщо він задовольняє умови СТХ()>СТ X, для всіх X є Я (х) Оскільки пошук тіп /(х) еквівалентний пошуку тах[ ;/(х)], го за- дачу ЛП завжди можна звести до еквівалентної іадачі максимізації
Дослідження операцій Геометрична інтерпретація задачі лінійного програмування Розглянемо такий приклад: максимізувати (4Х1 + ЗХ2) = 2, при обмеженнях X! < 4000; Х2 < 6000, X! + 2/ЗХ2 < 6000; Х;, Х2 > 0 Рис. 2.1. Кожна з цих нерівностей визначає підплошини, перетин яких дає многокутник, заштрихований на рис. 2.1 Цей многокутник (опуклий багатогранник) і являє собою допустиму множину розв’язків К(х;, х2) задачі ЛП. Тепер розглянемо цільову функцію /(*>, х2) = 4Х] + Зх2, покладемо її значення Г(хі,х2) =12000=7,. Графік рівняння 4хі + Зх2=12000 - пряма з відрізками на осях А'і=3000; х2=4000. 4-Г| | Зх, _ г 1 у, 12000 12000 ’зооо 4000 При/ЦіЛг) =24000 одержимо пряму г2. Пряма а2 паралельна прямій 2Ь але міститься вище від неї. Пере- суваючи пряму г, вгору паралельно самій собі, прийдемо до такого її положення, коли пряма і множина К матимуть тільки одну спіль- ну точку А. 69
Зайченко Ю.П. Очевидно, що гочка А (х1 =2000; х2=6000) - оптимальний розв’язок, тому шо вона лежить на прямій з максимально можливим значенням г..шх. Зазначимо, що ця точка с крайньою точкою множини Я. При векторній формі обмеження задачі ЛП записуються так: Арг, — А2.г2 — ... - А,д„ < Ь, (2.1.18) де 1"" ! а'2 1 1 1 ---- 1 а-,и 1 1 1 ь ' А, =( , і А, = ... 1; . А„=. Ь = 1 ’ 1 1 і 1 ~ ' 1 1 Х.Д ' 1 1 ї 111 1 >..,г : Розглянемо допустиму множину А., А2........ А„ у просторі даних векторів. Оскільки у формулі (2.1.18) %,>()./= 1,2..п, то всі дода- тні комбінації векторів А,. А2......................А„ утворюють конус (див. Дода- ток 1). Тому питання про існування допустимих розв’язків еквівален- тне питанню про належність вектора Ь цьому конусові. Оскільки А., А2....А,, ///-вимірні вектори (// > ///), го серед них завжди знайдеться іп лінійно-незалежних векторів, що утворюють базис ///-вимірного простору і включають конус, утворений векторами А|, А>,..., А„ . Тому справедливе таке твердження. Якщо задача ЛП містить // змінних та пі обмежень, які записані у формі нерівностей (// > ///), не враховуючи обмежень невід’ємності змінних л'і>0, то в оптимально- му розв'язку буде не більш як пі ненульових компонент вектора .V. Розширена форма задачі ЛП. Для розв’язання задачі ЛП погрібно переходити від обмежень - нерівностей до обмежень у формі рів- нянь. Для цього у кожну нерівність вводять по одній вільній змінній г„ і>0, л„.2>0,...л„ „ДО, щоб перетворити її в рівність. У такому ви- гляді задачу' ЛП називають розширеною і записують так: максимізуваги С(л'!, Л'2.Л'„)=С'1 л’|—с2л'2*.. .-<?,д„-0\„. |~... - 0л „,„„ (2.1.19) при обмеженнях: 70
Дослідження операцій «1ЬГ| - аі2х2 + ... - аьДя- 1-Гц . * Ол„<> * ... -гО.г„ „,= Ь}; З2М і ^22-^2 ...“*" 3?/ДНОЛ/|+і ІЛ'ЯН2 О.¥и+/и ^2, П/ц^К] ^пі2^2 ••• ! ОЛ/7-і2 "*"••• 1*^я>т &т* У матричній формі ця задача мас такий вигляд: максимізувати стх. при обмеженнях Апічі счп'пі _и А Хі - Е х2 -Ь, де '1 0 .. О') 0 1 ... 0 V , 17 іп пі ли + 2 Е - • х = .............і І - <0 о І,1 (2.1.20) Нарешті, векторна форма іапису рояііиреної задачі ЛП: максимізувати с’х. при обмеженнях А А + А2Л'2 + ... + А,д„ ^А„., |.г„. (+...+ А„ ,д„ ,„= Ь. (2.1.21) 71
Зігііченко К) П Нехай А та А, - допустимі множини розв’язків вихідної та розшире- ної задачі відповідно. Тоді будь-якій точці допустимої множини рішень А; відповідає єдина точка множини А, і навпаки. Встановимо відношення між елементами А та А): вихідна задача розширена задача л'і + х-> < 500 .Г| -+- .г? хз = 500. На рис. 2.2 і 2.3 зображено допустимі множини розв’язків обох за- дач Очевидно, що трикутник ОСА (рис. 2.2) — допустима множина А — є проекцією допустимої множини А| (рис. 2.3) на підпростір X/ х?. У загальному випадку допустима множина розв’язків вихідної задачі А є проекцією допустимої множини розв’язків розширеної за- дачі Аща підпростір вихідних змінних х; ихі. Приклад 2.1. Розглянемо задачу, для якої вихідні обмеження й об- меження в розширеній формі мають відповідно вигляд: ІХ| їх, < 5; їх, + ІХ2 + 1*3 = 5; 3/2х; + ІХ2 ^6; 3/2л'| + 1х2 + Ол'з + 1х4 =6; ХЬХ2, *3, *4 ^0. Позначимо: ’ ! 1» ГПі Гі-1; Гої; Г5І» А) — А-) — І А, — Ал — Ал —І 3/2] - [|_| ’ [0з 1] іА з векторів Аі.Аі.Аз.Ад можна утворити шість базисів: {А,, А2}; (А,, Аз}; {А^, А3} іт. д. Для кожної з цих матриць знайдемо обернену матрицю В '. Множачи В 1 на А>, одержуємо розв’язки, що мають назву базисних: (х!=2, х2=3); (х,=4, х3=1); (х =5, х4=-3/2); (х2=6, х,=-1); (х2=5, х4=1); (х3=5, х4=6). 72
Дослідження оператч Допустимі базисні розв ’язки Нехай обмеження задачі ЛП задано у формі рівностей (рівнянь) А(тх„(х(ЯхП=ь(тх1) (2.1.22) Припустимо, що т<п і рані матриці А дорівнює т. Виберемо з матриці А=[А|,...,АП] т лінійно незалежних стовпців, які позначимо через В1'"'"’. Матриця В утворює базис системи Сукупність стовпців матриці А, що лишилися, позначимо через В. Тоді А = [В, В] Сукупність змінних, пов’язаних з матрицею В, позначимо через хв, а пов’язаних з матрицею В - через хс. Тоді Ах = Вхв + Вх0. (2.1.23) Оскільки В - невироджена квадратна матриця, то існує обернена до неї В1. Множачи обидві частини (2.1.23) на В1, дістанемо В Вхв+ В ‘Вхс = В ‘Ь . Звідси Хв=ВЬ В1Вх0 (2.1.24) Змінні хв - базисні, а хп - небазисні Співвідношення (2.1.24) визначають повну множину розв'-язків системи лінійних рівнянь (2.1.22). У розгорнутому вигляді ці спів- відношення можна записати так: у 'иеііі (2.1.25) де І,-, - множина індексів базисних векторів; — множина індексів небазисних векторів; а,о - Ста компонента вектора В Ь; ац (/ є рядок матриці В’В, а7 - довільний скаляр. Якщо покласти для всіх небазисних змінних нульові значення, то одержимо базисний розв’язок системи рівнянь (2.1.22). Очевидно, у цьому випадку х1=а,д, і&І?, . Якщо базисний розв'язок задовольняє умові невід’ємності, то він зветься допустимим (ДБР). Якщо серед компонент х„ /є/й немає нульових, то базисний розв’язок зветься невиродженим. 4і 73
іайченко Ю.П_______________________________________________________ Основні теореми лінійного програмування Ознайомимося з окремими фундаментальними результатами тео- рії лінійного програмування, що лежать в основі методів розв'язання задач ЛП. Справедлива така основна теорема лінійного програмування, що встановлює місце розташування оптимальної о розв'язку. Теорема 2.1. Якщо цільова функція набуває максимального значення в деякій точці допустимої множини Я, то вона набуває цього значення в крайній точці Я. Якщо цільова функція набуває максимального значення більше, ніж в одній крайній точці, то вона набуває того ж самого значен- ня в будь-якій їх опуклій комбінації Доведення. Вважаємо, що /?і - опуклий многогранник. Дове- дення базується на такій лемі. Лема. Якщо Я. - замкнена обмежена опукла множина, що має скінченне число крайніх точок, то будь-яку точку хєЯ, можна пред- ставити V вигляді опуклої комбінації крайніх точок Н.\ (доведення див. у додатку І). Позначимо крайні точки через хь хг,...,хш, а точку, в якій/(х) до- сягає максимуму, через хол,„. Допустимо, що хо„„, - не крайня точка. Тоді, згідно з лемою І 1 (див. додаток 1): Ш ІН <=і «і Оскільки х„„от- оптимальній розв’язок, то с хОІП>стх. Функція/(\) лінійна, отже: т т 1=1 і=| Тому III III III стхопт= ^Стл,х/ <]Ґ&,стх,. =СТХ,.^А:/ =с хг, (2.1.26) 1 = 1 1=1 і=1 де через стх, позначено тах (стхД. Отже: !</</» стх0ПІ< Стх,.. (2.1.27) 74
Дослідження операцій Однак х„,,т - оптимальній розв’язок, тому стхоіп>стхг (2.1.28) Порівнюючи (2.1.28) з (2.1.27), маємо стх,. = стх<1пт. тобто існує хоча б одна крайня точка х,., де цільова функція досягає свого максимального значення. Отже, першу частину теореми доведено. Доведемо другу частину теореми. Припустимо, що оптимальні розв’язки знаходяться в крайніх точках х;,...,х5. Тоді їхня довільна опукла комбінація визначається так: х’=ІА,х„ (2-1-29) /л де ^к, = 1> ^0 • Знайдемо значення ц.ф.: Г(х*) = етх* = £ст*.х.. (2.1.30) і=і Оскільки точки х„ г=1,..., .у, відповідають оптимальним розв’язкам, то т 7 С X, = с хот , для всіх/=),...,5. (2.1.31) Підставляючи (2.1.31) в (2.1.30), дістанемо: Дх*) = стхот (2.1.32) /=і Отже, теорему доведено. З теореми 2.1 виїшиває, що для пошуку оптимального розв’язку до- сить переглянути лише крайні точки допустимої множини розв’язків. Доведемо, що завжди можна знайти крайні точки, виділяючи ли- ше допустимі базисні розв’язки. Теорема 2.2. Якщо існує така незалежна множина т-вимірних векторів Аь Аз, ...4 А* (К < т), що Ах + А2х2 +...+ А*х*=Аи і х, > 0, ї=1, 2, ..., т, то п-вимірний вектор хг=(х-,...^сІ!, 0,...,0) є крайньою тонкою допустимої множини Я,. Іншими словами, кожний допустимий базисний розв’язок відпо- відає деякій крайній точці /?. 4* 75
іайчсико Ю П_______________________________________________________ Доведення проводимо від супротивного, тобто припускаї мо, що х — не крайня точка /?|. Тоді х=кхІ +(\-к)хі,0 < к <1, де х; та х3 край- ні точки В . Оскільки останні (»-/С) компоненти х згідно з умовами теореми дорівнюють нулю, то ці ж самі компоненти й векторів х, та х, також дорівнюють 0. Тому АіХіі+А2Х2і+---+А*.-Г*і=Аи; (2.1.33) А л'ц+А2Х2і+...+А*хн=Аи. (2.1 34) Віднімаючи від рівняння (2.1 33) рівняння (2.1.34), дістаємо: А1(Х;1-Г12) + А2(х2|-^22) +--.+А*(х*1-ХИ)=0 . (2. 1.35) Оскільки вектори Аь А2,..., А* — лінійно незалежні, то х. -хІ2=Д Х2]-Х22=0, Х*|-Л'хт—0, ЩО МОЖЛИВО лише у випадку, КОЛИ Л'1=Х2. Це су- перечить припущенню, щох. та х3 різні крайні точки множини Л:. Справедлива така теорема, обернена до теореми 2.2. Теорема 2.3. Якщо ХоТ=(хі<о>,..., х*(0>, 0,...,0) - крайня точка допус- тимої множини розв ’язків /?, то відповідний розв ’язок хп є допустимим базиснимрозв ’язком системи обмежень (2.1 22). Доведення теореми просте й наводиться в [23]. Висновок. Використовуючи результати теорем 2.1-2.3, можна зробити висновок, що для знаходження оптимального розв язку за- дачі ЛП досить переглянути (перебрати) лише її допустимі базисні розв'язки Цей висновок лежить в основі багатьох методів лінійного проірамування Графічний метод розв’язання задач лінійного програмування Якщо загальне число змінних задач ЛП п = 2 або її можна звести до відповідної задачі з кількістю незалежних змінних к = 2, то гаку задачу леїко розв’язати графічним методом. Оі же, нехай задача ЛП мас вигляд: максимізувати ДхіЛ’^^іХі + с?х3), (2.1.36) при обмеженнях: §і(хі,х2)<6і; §2(х-1,Х2)<Л2; Х2)<А„,; (2.1.37) Х(>0,Х2>0. (2.1.38) 76
Дослідження операцій Графічний метод розв’язання складається з таких кроків. 1. Будуємо допустиму множину розв’язків К, яка визначається (2.137) та (2.1.38) 2. Далі будуємо вектор нормалі N до ц. ф.Дх;^). Його проекція на вісь Ол': дорівнює кс„ та на вісь 0x2 — кс2, де к - довільний додатний скаляр. 3. Переміщуємо пряму/(л-[Лі)=соп5/ в напрямку N так, щоб вона залишалась перпендикулярно до N доти, доки ця пряма не вийде на межу множини /?. При цьому, можливий один з таких випадків: а)/(л';,л'2) та /? мають лише одну спільну точку (яка обов’язково є крайньою); ця точка визначає єдиний оптимальний розв’язок; б) Дхіл) та К мають цілу множину спільних точок - це буде в тому випадку, коли вектор N нормальний до відповідної грані мно- жини К, а дана множина спільних точок являє собою множину опти- мальних розв’язків задачі; в) прямаУ(х1г¥2) = сопьі не виходить на межу множини /?, скільки б ми її не пересували - це буде в тому випадку, коли множина Я не- обмежена, тоді ц. ф. /(х.л) те® необмежена. Відповідні випадки ілюструє рис. 2.4 а, б, в. Зазначимо, що при розв’язанні задачі мінімізації пряму/(х^) пересувають у напрямку, протилежному N. Розглянемо тепер загальний випадок задачі ЛП: п максимізувати £с,х, , >-і при обмеженнях 42 77
іаиченко Ю.П. аІІх/ = Ь,, /=1,2,.. , т. х;>0 . /-'• Якщо к = п-г = 2, де г - ранг матриці А, то цю задачу також мож- на розв’язати графічним методом. Справді, на підставі загальних співвідношень (2.1.25) всі базисні змінні х7 можна виразити через дві небазисні змінні х;І та х,< х, = фі(х„,х72)>0; Х2 = Ф2(Х/І, Х/2) > 0; х, = Ф,(х, , х/2) > 0. (2.1 39) Підставляючи в ц. ф. вирази (2.1.39), приходимо до такої задачі: максимізувати /(.V'.,.. =/(Фі(.хл,хр)і^№, х,,,х/2), (2.1 40) при обмеженнях (2.1.39) і х;) > 0; л/2 > 0. (2.1.41) Як бачимо, задача (2.1.40) легко розв’язується графічно. 2.2. СИМПЛЕКС-МЕТОД Симплекс-метод, відомий також в нашій літературі під назвою методу послідовною поліпшення плану, вперше розробив Г.Данціг у 1947 р. Цей метод дає змогу переходити від одного допустимого ба- зисного розв’язку до іншого, причому так, що значення цільової функ- ції безперервно зростають. У результаті, оптимальний розв’язок «на- ходять, виконавши скінченне число кроків. Алгоритм симплекс-методу дає можливість також встановити, чи можна розв’язати задачу ЛП. Запишемо обмеження задачі ЛП у такому вигляді: А;Х; з- А2х2 з- ... З- А,х„ 4-А„+]Хн+і 3"...+ А„ч-лД*;г*л> Ао. Нехай А|,...,А,„- множина лінійно незалежних векторів. Тоді рівняння А[Х| З- А2х2 з-... + А,дл 3"АЛ+|ХМ+| +...3- Ал+/№.хл+,н Ао, (2 2.1) визначає базисний розв’язок х/, х2*,.... х,„* Припустимо, ЩО цей розв’язок допустимий, тобто V; >0, х2’>0, д„, >0. Базис {Аь .,А,„} утворює т-вимірний простір, тому 78
Досіідження операції/ кожний з векторів А„,+і,...,Ат+» єдиним чином виражається через цей базис. Якщо А, не належить до базису, то А|Х|Г з- А2х2г т... + Аг, (2.2.2) дех,г- відповідні коефіцієнти (і= 1, 2,..., пі). Припустимо, що хоча б одна з величин х„. більша за нуль. Розв’язок рівняння А|Х) + А2х2 + ... + А„д„,+ А,х, = Ао (2.2.3) позначимо як {х(, х, ,хт, х,} Тоді очевидно: А,^ + А2х, +... + Ап,хга + Агхг = Ао . (2-2.4) Помноживши рівняння (2.2.2) на х, та віднявши здобуте рівняння від рівняння (2.2.1), одержимо: А;(х;’-х,х:,.) + А2(х2*-х,х2г) +.. .+А,„(х„1‘-х,хи„) = Аог-х,А,.(2.2.5) Порівнявши рівняння (2.2.5) та (2.2.4), знайдемо зв’язок нового розв’язку X |,...,х „„ ІЗ попереднім базисним розв’язком X |,...Л т- X ] = X,’ - ХД.„ X 2 = Х2‘ - ХД2г, ..., X ,„ = Х„,’ - ХД„,Г, X,. (2.2.6) Розв’язок (2.2.6), по-перше, не буде базисним, оскільки він міс- тить т + 1 змінну, а по-друге, він буде допустимим не для всіх зна- чень хг. Щоб новий розв’язок залишився допустимим, потрібно вибрати значення хг таким, щоб жодна з величин х , = х, — хд„ (/=1, 2, ..., т) не стала менша за нуль. Отже, максимальне значення змінної х, ви- значається співвідношенням: Хггсах- ҐПІПІ (2.2.7) дех„> 0. Щоб зробити новий допустимий розв’язок базисним, слід одну змінну х, вивести з базисного розв’язку, а відповідний вектор з базису. У такому випадку новий базис також складатиметься з т векторів. Для цього вибираємо значення згідно з (2.2.7), Тоді новий базис- ний розв’язок має вигляд: Х| ~ХгпїахХ|г, 4** 79
іайченко Ю.П. Хі — ХГІГИ(Х2г, X, (опущене) Х-і хах, а новий базис - (Аь А,, .... А,.;, А,+:,А,„, А,). Такий перехід від одного базису до іншого дає змогу знаходити розв’язки майже усіх задач ЛП Визначивши усі крайні точки, можна обчислити значення ц. ф. і відшукати оптимальний розв'язок. Проте для великих значень т і п це практично неможливо. Тому для пере- ходу від поточного розв’язку до нового допустимого базисного розв’язку, якому відповідає більше значення ц. ф., використовують відповідний критерій (симплекс-різницю). Новому ДБР { X! ~Х,Х;,, Х2 ~ХД1Г, ...,Хт*-ХДтг,хД відповідає таке значення ц. ф.: 2: = С|(Х| -ХДіг) + С1(Х2 -ХД2г) + ...+СД7 = (є |Х| )Тх,( Є г—-Є । X; г ... СПІХ[ІІГ) =2О+Х,(С,-СІХ|Г-.. .-СтХпг), (2.2.8) де 2п - значення цільової функції - (ц. ф.) для початкового ДБР; Сг-С|Х|Г-С2Х2г— — - с„хтг— симплскс-різниця ДЛЯ ЗМІННОЇ X,.. Симплекс-різницю обчислюють ДЛЯ КОЖНОЇ ЗМІННОЇ, що не вхо- дить до базисного розв’язку, і вибирають таку небазисну змінну х„ для якої симплекс-різниця додатна і максимальна. Отже, алгоритм симплекс-методу складається із таких етапів: 1) знаходять початковий базис та пов’язаний з ним допустимий базисний розв’язок; 2) обчислюють симплекс-різницю для кожної змінної, що не на- лежить до базисного розв’язку; 3) вводять до базису найбільш «вигідну» змінну з максимальною додатною симплекс-різницею; її значення х„„„., визначають із співвід- ношення: г г іпах = тіп< —- для всіх х,г > 0; 80
Дослідження операцій 4) виводять з базисного розв’язку змінну хл що відповідає • Р" І тин — > = —— М х„ а з базису вектор А;; 5) переходять до етапу 2 нової ітерації. Етапи 2>-4) повторюють доти, доки симплекс-різнищ для всіх змінних, що не входять до базису, не стануть від’ємними. Це і є ознака оптимальності поточного базисного розв’язку. Приклад 2.2. Розв’язати симплскс-методом таку задачу: максимізувати (2хі+5х2)> при обмеженнях * Х;<400, Х2<300, Х|+х2<500, Розширена форма задачі має вигляд: їх, + Ох, + їх, + Ох, + Ох, - 400, Ох, + їх, + Ох, + їх, + 0х< = 300. їх, + їх, + Ох, + 0х4 + їх, = 500. Обмеження задачі запишемо у вигляді табл. 2.1. Перша ітерація. 1. Вибравши за початковий базис вектори {А3, А4.А5}, знаходимо перший допустимий базисний розв’язок: АрСз’+А^Гд +А5Х5 =А0, звідки х3*=400, х4*=300, х5*=500. 2. Записуємо кожний з небазисних векторів А-, А2 у вигляді лі- нійної комбінації базисних {А3, А4, Аз}- А3Х31+А4Х41 + АзХз ;=А ।; АзХз2+А4Х42+А5Х52=А2. Таблиця 2.1 А; Аз Аз а4 Аз Ао 1 0 1 0 0 400 0 1 0 1 0 300 1 1 0 0 1 500 43 81
Зайченко Ю.П. Розв’язавши ці рівняння, дістанемо: х31=1;х4!=0; х5і=1; х32=О; х42=1; х52=1. 3. Знаходимо симплекс-різниці для небазисних змінних х, гах< Сі-С^і-СдЛд;- С 5X51= С 1=2; С2~ СіХ32- СдХдп- с 5X52= С 2=5. Оскільки С'2> с І, вводимо в базис вектор х2. 4. Визначаємо, яка змінна виводиться з базису. Для цього знаходимо: х3=х3 -х2х32=х3 ; Хд= Х4 - Х2Х42=300- ІХг; х5= х5 - Х2Х52=500-1х2; тахх2=тіп 400 300 500] 1 = 500 . 0 І 1 / Отже змінна х2 вводиться в базис із значенням х? = 300, змінна х4 виводиться з базисного розв’язку, а вектор Ад- з базису. Друга ітерація. 1. Розкладаємо кожний з небазисних векторів через базисні {А2,А3,А5}. Базисне рішення: х2*=300, х3‘=400, х5 =500-300* 1=200. Представимо кожен вектор з А,. А4, не війшовших у базис, у ви- гляді лінійної комбінації А2,А3,А5, Таким чином, так як вектор Ад був виведений з базису, оглянемо тільки вектор Л|. Рівняння буде мати вигляд: А2Х2|+А3Х3|+А5Х5|=А|, звідки х2і=0; х3|=1; х5|=1. 2. Знаходимо симплекс-різницю для змінної х;: с і- С2Х21- £'5X51-05X51= с і-0-0-0= с |=2>0. Отже, змінну Х| можна ввести до базису 3. Визначаємо, яку змінну (вектор) потрібно вивести з базису. Для цього обчислюємо: х2=Х2 -Х|Х2і=300-0хі; х3=хз -Л|Хз)=400-1хь х5=Х5 - хіХ5і=200-!хі; * ҐЗОО 400 200 1 _ X] -тахх|=тіпі д ’ ] ] >-200' 82
Дослідження операцій Отже, з базису виводиться вектор х5, з базисного розв’язку - А>. 4. Обчислюємо новий ДБР. Переходимо до третьої ітерації. Наступні ітерації проводяться аналогічно- хГ=200; х2’=300. Метод повного виключення Розглянутий вище алгоритм симплекс-методу незручний для про- грамування й розв’язання задач на ЕОМ. Потрібна була його раціо- налізація, як за формою подання інформації, так і за способом орга- нізації обчислень, щоб зробити його зручним для реалізації на ЕОМ. З цією метою було розроблено табличний варіант симплекс-методу. В його основі лежить метод повного виключення Жордана-Гаусса. Нехай задано систему лінійних алгебраїчних рівнянь: р =«/0,у=1,2, У матричній формі ця система має такий вигляд: Ах=А0. Матриця АР=[А, Ао] зветься розширеною матрицею. Метод пов- ного виключення Жордана-Гаусса складається із скінченого числа однотипних ітерацій і полягає у зведенні матриці до одиничного ви- гляду. Метод грунтується на двох операціях: 1) один з рядків розширеної матриці множать на множник, що відрізняється від нуля; 2) від кожного рядка розширеної матриці віднімають вищезгада- ний рядок, який помножено на деяке число. Кожне з таких елементарних перетворень (що називається пере- творенням Гаусса) приводить до нової системи лінійних рівнянь, яка еквівалентна початковій системі. Перша ітерація методу повного виключення. 1. Серед елементів вибирають довільний елемент, який не дорів- нює нулю. Його називають напрямним елементом ітерації. Рядок і стовпець, що містять напрямний елемент, називають напрямними. 2. Всі елементи напрямного рядка розширеної матриці ділять на напрямний елемент. У результаті отримують напрямний рядок з на- 4*** 83
іііііченко Ю.П. нрямним елементом, що дорівнює одиниці. Далі від елементів кож- ного рядка матриці А віднімають елементи нового напрямного рядка, помножені на елементи які містяться на перетині даного рядка й на- прямного стовпця. Матрицю, в яку перетворилася розширена матриця Ар після пер- шої ітерації, позначимо Ар( А У ній усі елементи напрямного стовпця, крім напрямного елемента (який дорівнює 1), стануть нулями. Суку- пність елементів перших п стовпців матриці Ар, що не містять на- прямних рядка й стовпця попередньої (попередніх) ітерації назива- ють головною частиною матриці АР(П. Друга й подальші ітерації методу проводяться аналогічно першій, причому доти, доки ще є можливість вибору напрямного елемента. Якщо після к-ї ітерації головна частина магриці Ар(/і) не містить жодного елемента, або містить лише нулі, то процес закінчується. Нехай процес закінчився після ітерації І Припустимо спочатку, що серед рядків матриці А(/| є такі, які не були напрямними в жодній з попередніх ітерацій, наприклад, рядок з номером і Тоді очевидно: а„=0;у = 1, 2, ..., п. Оскільки для будь-якого рядка справедливо: А<,|х = а,0> (2.2.9) то рівняння для і-го рядка має вигляд: О.г,+О.г,+.. +0х„= а,/1 (2.2 10) Якщо а,о^А0, то рівняння (2.2.10) є суперечливим, і дана система рівнянь нерозв’язна Якщо а,0™=0, то рівняння (2.2.10) являє собою тотожність й ї-й рядок можна відкинути. Перебравши один за одним усі рядки матриці А(,), які не були на- прямними, або встановлюють нерозв’язність системи рівнянь, або відкидають всі нульові рядки. Таким чином, в системі лишається рівно І рівнянь. Припустимо, для певності, що ними будуть перші за порядком / рівнянь. Тоді утворену систему рівнянь можна записати у вигляді =4>, /=1,2,. (2.2.11) /=1 84
Дос лідження операцій Нехай /-му напрямному рядку відповідає /-й напрямний стовпець внаслідок відповідного вибору напрямного елемента. Тоді /=1,2, (2.2.12) (1./ = 7 Отже, (2.2.11) можна записати в такому вигляді х,-= - £«’%. '=К 2, (2.2.13) причому змінні хі (і=\, ...,/) є базисними, а змінні х, (/=/+1, ..., я) - неба- зисними. Якщо х, = 0 (/=/+1,..., я), то матимемо один з базисних розв’язків системи рівнянь: X, = аю(/\ і= 1,2,..., х,—0; у=/+1, .. ,п. Надаючи X/ довільні значення а,, одержимо повну множину розв’язків. Якщо Хі компонент цього розв’язку, то г _ іа,о-якщо(2.2.14) Л< ] І-Ю [ а,,якщо і = І + 1,/ + 2.п. Позначимо Хо= (а-о, а?0,..., а/о,О,...,О ); х,= (-а,,, -а2„.~а,і, 0 ,..., 0, 1,0 ,.. ,0 ), 1 <у < п. Ту Ти Тоді загальний (повний) розв’язок системи лінійних рівнянь ви- значається співвідношенням, аналогічним (2.2.14): Хобш = Хо+ (2.2.15) ;=/+! Де хп- базисний розв’язок початкової системи рівнянь; X,. - повний розв’язок відповідної однорідної системи рів- нянь (тобто, коли Ао= 0). 85
Зайченко Ю.П. Позначимо розширену матрицю системи рівнянь після к-ї ітерації через .../=1, 2,...,т Нехай а,,1*- напрямний елемент перетворення на (к + 1)-й ітера- ції. Тоді в результаті (к + 1)-ї ітерації методу повного виключення Гаусса отримаємо матрицю Ар(*+!), елементи якої визначаються таки- ми співвід-ношеннями: 1) для всіх елементів напрямного рядка: а{к} (2.2.16) 2) для елементів напрямного стовпця: а,/*’ ’ }=0; г= 1,... ,п, та за умовою г*і; а,^’1 -1; (2.2.17) 3) для всіх інших елементів матриці: а1*’ (2-2.18) Приклад 2.3. Застосуємо метод повного виключення Гаусса для дослідження системи рівнянь: Х| + 2хт + хз + х4 = 3; 2хі + х2 + х3 + Зх4 = 3; 4хі + 5х2 + Зх3 + 5х4 = 9. Розширена матриця має такий вигляд: А, А, А, А. А„ Г1 2 1 І ,3“| А = і ’ 2 113 3 4 5 3 5, 9 Перша ітерація. За перший напрямний елемент візьмемо Оц = 1, помножимо перший рядок на другий і віднімемо його від другого рядка, далі помножимо перший рядок на 4 і віднімемо його від тре- тього. В результаті дістанемо: 86
Дослідження операцій Друга ітерація. Оскільки головна частина матриці Ар"1 містить ненульові елементи, продовжимо процес виключення. Виберемо елемент а",22= -3. Після аналогічних перетворень матимемо: А, А2 Ая А4 Ао 0 0 0 0 0 Як бачимо, головна частина матриці Ар(2), зміст якої азз(2) та а34(2), мі- стить лише нулі. Отже, процес виключення закінчився. Дослідимо матрицю А(2). Оскільки третій рядок містить лише нульові елементи, то його можна відкинути. Тоді еквівалентна мат- риця системи рівнянь матиме вигляд: А, А, А, А, А„ Відповідно до формул (2.2.13), (2.2.14), маємо базисний розв’язок: Х| =1; х2 =1; хз=0; х4=0. Загальний розв’язок даної системи має такий вигляд: Хі=1-£а _(3.а Х2=1-1О,+—«4; Хз=а3; Х4=а4; З 3 3 4 З З 4 де а3, д4- довільні скаляри. Табличний симплекс-метод Провідна ідея симплекс-методу полягає у переході від одного до- пустимого базисного розв’язку до іншого таким чином, що значення цільової функції при цьому постійно зростають (для задач максимі- заціі). Припустимо, що обмеження задачі зведені до такого вигляду, що в матриці А є одинична підматриця, а вільні члени додатні. Іншими словами, нехай матриця обмежень має вигляд: А|Х|+...+А,д„+ Є|Т„+і+...+е,пх„+„,= Ао= [а,0], 87
Чайченко Ю.П. де — одиничний базис, а,0>0 для всіх і = 1,2,..., п. Застосуємо одну ітерацію методу повного виключення до розши- реної матриці обмежень Ар=[Аі, ..., А,„ Є!, .., е„„ А()]. Нехай а,, - напрямний елемент перетворення на даній ітерації. Тоді в результаті перетворень відповідно до (2.2.18) матимемо нові значення довільних членів: (* + І) _£-р_ " о (*-> ’ аи Розглянемо вираз (2.2.19) і з’ясуємо умови, за яких а/о(*+П>О для всіх /, тобто коли новий базисний розв’язок буде також допустимим. За припущенням а/о(А)>0; /=1,...,ш, (2.2.19) тоді ,,(*+!) _ °і0 “іО а^~ ’ ч Црхай а/у(А)<0, тоді а/о1*+І)> 0, оскільки аі(>к'> 0 , а,/к}> 0. Якщо а(/*'>0, то а(*’ а'*’ <*+і> иіо “її '_<*» (*)/’ ип “</ буде більшим за нуль при всіх /=1, 2...., т тоді і тільки тоді, коли ил . ,иіо (*) п> Зїї-тш{ (Л)а/у >0}- (2.2.20) аїі І ач Перетворення Гаусса називають симплексним перетворенням, коли напрямний елемент визначають за такими правилами: 88
Дослідження операцій а) напрямний стовпець і вибирають із умови, що в ньому с хоча б один додатний елемент; б) напрямний рядок і вибирають так, щоб відношення було мінімальним, за умови, що а,7>0. При такому перетворенні в базис вводиться вектор А; та виводи- мо вектор А,. Тепер потрібно визначити, як вибрати вектор, що вво- диться до базису, щоб при цьому значення цільової функції зростало. Для цього використовують так звані оцінки векторів Д,: А, = XсіХіі -сі Є Л (2.2.21) гє/с де /д— множина індексів базисних векторів; х,г визначається із умов: Еа,х,»А,. (2.2.22) іє/4 Величини {Д7 } дорівнюють сімплскс-різніцям для змінних {лД'з протилежним знаком. Зрозуміло, що для того, щоб значення цільової функції зросло, необхідно вибрати напрямний стовпець А„ з найбі- льшою за модулем від’ємною оцінкою, тобто: =«о/=тіМ«оЛо* <0! - Для рішення задачі сімплекс-мстодом на кожній ітерації запов- нюють симплекс-таблицю 2.2. Таблиця 2.2 с Сі С2 сз С/ Си Вл Ао Аі Аз Аз А, А,, Сі Х| аю Оц а/2 віз оц О/п С? Х2 й2о й2І СІ 22 023 аи О2п с, X, аІ0 а,і ОіЗ оц аіп с,„ Х,„ @пю аті а,П2 а,„з а „у @тп Д Ді д2 Дз Ь д„ 89
іііиченко Ю.П. Останній рядок габлиці — індексний — він потрібний для знахо- дження направляючого стовпця. Його елементи А, {находять за фор- мулою (2.2 21) Зро {уміло, для всіх базисних векторів {А,} ї=1, ,пг оцінки Д,=ао,=0 Значення ці іьовоі функції аои визнається з співвідношення т °оо=ЕсЛ(*’ 1=1 У стовпчику Вх записуємо базисні змінні {х,} і= 1, .... т. їх зна- чення визнаються стовпчиком вільних членів аіо, тобто х,=а,0, є=1, 2,...,т. Напрямні рядок А/ і стовпець А, позначаються стрілками Якщо за напрямний елемент вибрано а,„ то перехід від даної симплекс- таблиці до наступної визначається співвідношеннями (2.2.16)-(2.2.18). Отже, алгоритм розв’язання задачі ЛП табличним симплекс- методом складається з таких етапів. 1. Розраховують і заповнюють початкову симплекс-таблицю з допу- стимим одиничним базисом, включаючи індексний рядок. 2. За напрямний стовпець беруть Ау„ для якого =«о/ =тіпи«о*|«о* <°}- 3. Напрямний рядок А вибирають із умови: а'*’ а1*’ ї<о__ іГДО ,1*1^01 (*і - тш{ >0} а’"’ кп, ап 4. Виконують один крок (ітерацію) методу повного виключення Гаусса із напрямним елементом а,„ для чого використовують спів- відношення (2.2.16)-(2.2.18). Зокрема, елементи індексного рядка нової таблиці обчислюють згідно з формулою: = (*> % і**» (*і______и дз /=] 2 “00 “00 (А) ’ “<)/ “о/ (А) ’ ’ л. Правильність обчислень контролюють за формулами безпосеред- нього обчислення а1*'1’ “оо (2.2.23) 90
Дос пджсиня операцій <2 2 24> У стовпці Вх нової таблиці замінюють х, на г7, а в стовпці С с, - на с,. 5. Якщо всі ап/(А+І)>0, /=1, то новин базисний розв’язок х,= ак>к*'\ - оптимальний. У супротивному разі переходять до етапу 2 й виконують чергову ітерацію. 6. Другий, третій та четвертий етапи повторюють доти, доки одна з ітерацій не закінчиться одним з двох випадків: а) всі а,)/ >0. Це ознака (критерій) оптимальності базисного розв’язку останньої симплекс-таблиці; 6) знайдеться такий аН/=Ау<0, що всі елементи цього стовпця а,,<0, г = 1,. п. Це ознака необмеженості цільової функції г=£с/с, на і множині допустимих розв’язків задачі. Назвемо деякі особливості застосування табличного симплекс- метода. Якщо за початковий базис вибирають базис із вільних змінних, для яких с,=0, то оцінки для всіх небазисних змінних дорівнюють 4 = ав = -с/, а відповідне значення ц. ф. функції єд,=0, і&Ц. І Відсутність векторів з від’ємними оцінками при розв’язуванні задач максимізації є ознакою оптимальності відповідного базисного рішення. Якщо існує такий небазисний вектор, для якого оцінка від’ємна, а всі елементи цього стовпця недодатні, то цільова функція задачі в області допустимих розв’язків необмежена. При розв’язуванні задач мінімізації в базис вводиться вектор з найбільшою додатною оцінкою, а відсутність таких векторів є озна- кою оптимальності останнього базисного розв’язку. Приклад 2.4. максимізувати 4х;+3х2, при обмеженнях: X! < 4000; х2 < 6000; Х| + 1 х2< 6000; з хн х2 > 0. 91
Зиііченко Ю.П._______________________________________________________ Розширена форма задачі має такий вигляд: максимізувати 4х|+3х2, при обмеженнях: 1 х + Ох + 1 х3 + Ох.; + 0х5 = 4000; Ох- + 1х2 + Охз + 1х4 + Ох; ~ 6000; ІХ) + 2/Зх2 + Охз + 0х4 + 1х5 = 6000. Оскільки Ао>0 а векгори А3, Ад, А, утворюють одиничний базис, то задачу можна розв’язувати методом симплекс-таблиць. Перша ітерація. Складаємо й заповнюємо початкову симплекс - таблицю (табл.2.3). Таблиця 2.3 Сі 4 3 0 0 0 вч Аі„ А; А? Аз Ад Аз 0 Хз 4000 □ 0 1 0 0 0 Х4 6000 0 1 0 1 0 ' 0 Х5 6000 1 2/3 0 0 1 д 0 -4 -3 0 0 0 Оскільки -4<-3<0, то напрямний стовпець - перший. Склавши відношення вигляду )а,и1, визначаємо напрямний ря- І аЛ І док. Для цього знаходимо . '4000 тіп<------------------- ^1 = 4000. 0 1 ) Отже, напрямний рядок перший, напрямний елемент ац = 1. Виконавши першу ітерацію симплекс-методу, одержимо табл. 2.4. 92
Дослідження оперити Таблиця 2.4 С; 4 3 0 0 0 Вх аш Аі Аз Аз А-і а5 4 X, 4000 1 0 1 1 0 0 0 Х4 6000 0 1 0 1 0 0 Х5 2000 0 2/3 ”І Т” 0 1 д 16000 0 -3 4 0 0 Друга ітерація. Як бачимо з табл. 2.4, напрямний стовпець - другий, а напрямний рядок - третій, оскільки 2000 6000 4000 2 < 1 < 0 ' З Виконавши чергову ітерацію симплекс-методу, отримаємо сим- плекс-таблицю 2.5. Таблиця 2.5 Сі 4 3 0 0 0 вх О/О А; Аз Аз а4 а5 4 Хі 4000 1 0 1 0 0 0 х4 3000 0 0 3/2 1 » -3/2 3 Х2 3000 0 1 -3/2 0 3/2 д 25000 0 0 -1/2 0 9/2 Третя ітерація. Оскільки «оз= -1/2 <0, то напрямний стовпець Аз, а напрямний рядок - другий, оскільки ^°°° < 4000 Виконавши чергову 3/2 1 ітерацію з напрямним елементом а4з=3/2, дістанемо симплекс-таблицю 2.6. 93
іпііченко Ю.П. Табіиця 2.6 С, 4 3 0 0 0 вх а,ч Аі Аз Аз а4 А; 4 X; 2000 1 0 0 -2/3 1 0 Хз 2000 0 0 1 2/3 -1 3 х2 6000 0 • 0 1 0 А 26000 0 0 0 1/3 4 Оскільки в індексному рядку табл. 2.6. всі оцінки невід’ємні, то знайдено оптимальний розв’язок: х от„„=2000, Х2„„,„=6000, х3„„„,=2000. Відповідне значення ц. ф. дорівнює шах (4х. +Зл'2)=о0(і = = 26000=4.Х опт+Зл'зот- 2.3. ВИЗНАЧЕННЯ ДОПУСТИМИХ БАЗИСНИХ РОЗВ’ЯЗКІВ Визначення початкового допустимого базисного розв’язку (ДБР) в загальному випадку становить значні труднощі. Тому для пошуку ДБР розроблено спеціальні методи. Метод штучних змінних. Нехай обмеження задачі ЛП мають ви- гляд Ах<Ао. Якщо всі Ь, > 0, і = 1, 2,..., т, то вільні вектори, які утворюють одиничну підматрицю, складають базис, а відповідні їм змінні - по- чатковий базисний розв’язок. У загальному випадку, коли деякі обмеження мають знак >, на- приклад: а,,Х| + а,гх2 +.. + а„д„ >Ь„ і= 1, 2,., т. то для зведення цих обмежень до стандартного вигляду рівнянь вільні змінні потрібно віднімати. Тоді розширена форма за- дачі матиме такий вигляд: а.іХ| + ЯігХт +...+ П|,д„ -1х„+) + 0х„+2 +0х„+,„= Я2|Х| + 022X2 +...Ч- О2,д„ +0х„4|-1х,1+2 +.. .+0хи+т= 52; (2.3.1) + а,л2х2+...+ а„„лх„ + Ох„+і + 0х„+2 +...-1 х„+, „=Ь,„. 94
Дослідження операцій Вільні змінні {х„*;,... д„+т}у цьому разі вже неможливо викорис- тати як початковий базис, оскільки х„ц<0,.х„+„,<0. Тому в рівняння (2.3.1) додатково вводять штучні змінні х„+„|+|,...,¥„+,„+*. Ці змінні не мають нічого спільного з реальною задачею, і тому їх потрібно виве- сти з базису якнайшвидше. Для цього перед початком ітерацій штучним змінним в цільовій функції приписують для задач максимізації дуже великі іа модулем від’ємні коефіцієнти (- Л7), де М»с, (і = 1, 2, У разі розв’язання задач мінімізації штучні змінні вводять в ці- льову функцію з великими додатними коефіцієнтами ‘-М. Знаки штучних змінних х„+,..д„+„,+*. мають збігатися із знака- ми відповідних членів. Штучні змінні створюють початковий базис- ний розв’язок. Застосувавши симплекс-метод, потрібно вивести із базису усі штучні змінні. Якщо вдається довести (чи показати), що штучні змінні повністю вивести із базису неможливо, то це означає, що задача не має розв’язків, тобто її обмеження суперечні Якщо на поточній ітерації із базису виводиться штучна змінна, то в наступній симплекс-таблиці відповідний їй стовпець можна вида- лити і в подальших ітераціях він не братиме участі. Приклад 2.5. мінімізувати Г(х)=15хі+ЗЗх2, при обмеженнях З.г + 2х2 6; Зл'і + х2 > 6; х2 > 1; X; , Х2 > 0. Застосувавши вільні змінні х3, х4, х5 приходимо до розширеної форми задачі: Зхі + 2х2 ~*з = 6; бхі + х2 —х4 = 6; х2 —х5 = 1. Як бачимо, змінні х2, х4, х5 утворюють недопустимий базисний розв’язок: х3 = -6<0; х4 = -6<0; х5 = -1<0. 95
їиіічеико Ю.П. Тому вводимо в обмеження і в цільову функцію штучні ЗМІННІ л'6, Ху, х8 і приходимо до такої задачі мінімізувати [ 15.Г| + 33х2 + Мх6 + Мх7 + Мх8}, при обмеженнях- Зх; + 2хі -хч +- хй = 6; 6хі + хі —хл + х1 = 6; л-3 -х5 + х8 = 1. Очевидно, початковий базисний розв’язок х6*=6; х/=6; х/=1 Оскільки А6, Л7, А8 утворюють одиничний базис, а всі а,о>О, то за- стосуємо для розв'язання метод си.мплекс-таблиць (табл. 2.7). Таб іиця 2 7 с, 15 33 0 0 0 м м м В, Ао А; а2 Аз а4 а5 А6 а7 а8 м х6 6 3 2 -1 0 0 1 0 0 м х7 6 6 1 0 -1 0 0 1 0 м Х5 1 0 1 0 0 -1 0 0 1 13 М 9М- 15 4М- 33 -м -м -м 0 0 0 15 І Перша ітерація. Елементи індексного рядка обчислюємо так- «оє = «о?= «ов =0; а, = £ ‘Д, - сі = =ЗМ + 6М + ОМ -15 = 9М - 15; »«/, »-6 </„, = £с,лд - С-, ~2М з- \М + \М -33 = 4Л/ - 33; »«?Л «о = 2/,х,3 - с, = -м,ам = - М,аю = -М; к/.. а№ = -6М + 6М +\М = 1ЗМ іє!,. Оскільки маємо задачу мінімізації, то напрямний стовпець ви- значаємо за найбільшим додатним елементом індексного рядка: = тах {«о*К(>О.}- І$А£л 96
Дос лідження операцій Напрямний стовпець - Аь напрямний рядок - другий. Виконуємо одну ітерацію симплекс-методу. Поділимо напрям- ний рядок на напрямний елемент а2~6. Да іі помножимо перетво- рений напрямний рядок на (9М-15) й віднімемо його від індексного. В результаті дістанемо табл. 2.8. Таблиця 2.8 С; 15 33 0 0 0 м м Вх Ао А; а2 Аз Ад а5 Аб Ав м Хб 3 0 1- 2 -1 І 2 0 1 0 15 1 1 1 6 0 1 6 0 0 0 М *5 1 0 1 0 0 -1 0 1 4М+1 5 0 -М- 2 30- 2 -М 1м-- 2 6 -м 0 -0 Друга ітерація. Оскільки а02=5/2Л/-30- >а07 (/*2), то напрямний стовпець другої ітерації А2. Напрямний рядок - третій, напрямний елемент «52=1. Виконаємо одну ітерацію симплекс-методу. Для цього помножимо напрямний рядок на 3/2, й віднімемо від першого рядка. Відтак помножимо його на 1/6, й віднімемо від другого, нарешті помножимо напрямний рядок на (5/2Л/-ЗО-!-) і віднімемо від індекс- 2 ного рядка. В результаті дістанемо табл. 2.9. 5і 97
Зайченко Ю.П. Таблиця 2 9. І с; 15 33 0 0 0 м вх Ао А а2 Аз А4 а5 Ае м .<6 11 2 0 0 -1 і 2 ]1 2 1 15 •Л | & 1 0 0 1 6 1 6 0 33 х 2 1 0 1 0 0 -1 0 3 . . 91 - м+— 2 2 0 0 -м 1 , . 15 - М- — 2 6 1м- 2 30І 2 0 Третя ітерація. Оскільки «05 = 3/2Л7 — ЗО—> о0/,то напрямний стовпець А5_. Напрямний рядок - перший, а напрямний елемент а65=1 - Піс;ія виконання чергової ітерації симплекс-методу виведемо з базису останню штучну змінну й введемо х5. В результаті приходимо до табл. 2.10. Таблиця 2.10 І сз 15 33 0 0 0 вх Ао А; а2 А3 Ад А5 0 1 0 0 2 3 і 3 1 15 *1 4 6 1 0 1 9 2 9 0 33 х2 2 0 1 2 3 1 3 0 76 0 0 -201 3 46 6 0 98
Дослідження операцій Четверта ітерація. Як бачимо, в табл. 2.10 всі штучні імінні виве- дено з базису, отже, маємо початковий ДБР. Однак він не оптимальний, оскільки в індексному рядку є додатні оцінки. Тому виконаємо ще одну ітерацію симплекс-методу з напрямним елементом й54 = 1/3, і дістанемо табл. 2.11. Таблиця 2.11 сі 15 33 0 0 0 Вх Ао А- А2 А3 а4 а5 0 х4 3 0 0 -2 1 3 15 Х| 4 3 1 0 і 3 0 2 3 33 Х2 1 0 1 0 0 -1 53 0 0 -5 0 -23 Оскільки в індексному рядку табл. 2.11 всі оцінки для небазис- них векторів аО7<0, то знайдено оптимальний розв’язок Хіопт"”'^. ’ Х2опт 1 і 2С4опт 3. З Відповідне значення цільової функції Міп(15хі + 33х2) = 15 Х|ОІІТ + 33 х2ош=53. 2.4. ДВОЇСТА ЗАДА ЧА ЛІНІЙНОГО ПРОГРАМУВАННЯ Структура та властивості двоїстої задачі Задачу максимізації ЛП з економічної точки зору можна розгля- дати як задачу розподілу обмежених ресурсів /?,.Ь„, між різними споживачами, наприклад, між певними технологічними процесами, Що представляються стовпцями А ,.. .,А„ матриці обмежень задачі. Будь-який допустимий розв’язок задачі ЛП Х|,.. гхп дає конкрет- ний розподіл, що вказує частку кожного з ресурсів, яку потрібно ви- користати при здійсненні відповідного технологічного процесу. 5* 99
іаііченко Ю П Розглянемо приклад. Підприємство виробляє гри види продукції х , х2 та Лз, кожний з яких проходить обробку на токарному, фрезеру- вальному та свердлильному верстатах. Загальний фонд машинного часу для кожного з верстатів обмежений. Нехай с}, с2 га с2- прибуток від реалізації одиниці відповідного виду продукції. Необхідно визна- чити яку кількість продукції кожного виду слід випускати щотижня, щоб забезпечити максимальний прибуток. І (я задача має такий вигляд: максимізувати с Х| +С2*2+сз*з, (2.4.1) при обмеженнях: <?і ,Хі + а 3X3 + ... + а 3X3 < Ь-; сьі-їі + 022*2 + ... + 023*3 5 Ь2; Оз;Х1 + Оз2*2+ + О33Л3 < Ьз , (2.4.2) де оі], а2|, а3;- час, потрібний для обробки одиниці /-го виду продукції на токарному, фрезерувальному та свердлильному верстатах відповід- но (/' = 1,2,3); Ь„ Ь2, Ьз - тижневий ресурс машинного часу для групи токарних, фрезерувальних та свердлильних верстатів відповідно. Позначимо через уі, у2, уз ціну однієї години роботи токарного, свердлильного га фрезерувального обладнання. Тоді ацуі+ аз0’2+ оз:Уз можна трактувати як витрати на виготов- лення одиниці продукції першого виду; 0:2>’/+ О22У2+ аззуз - витрати (вартість) на виготовлення одиниці продукції другого виду і т. п Припустимо, що ціни ресурсів у і, у2, уз вибрано так, що викону- ються співвідношення: а.іУі + Оі2У2+ •- + О|зуз> С|; озіУі + а->?У2 + • - + О23У3 > с2; азіУі + «32У2 + ••• + аззуз>Сз. (2.4.3) Оскільки Ь2, Ьз — загальний використаний ресурс машинного часу для кожного з верстатів, то Ь\у\+Ьзу2+Ьзуз~ загальні витрати на виробництво (заіальна вартість використаних ресурсів). Тоді можна сформулювати таку задачу. 100
Дослідження операцій Необхідно визначити ціни уь у2, Уз, що задовольняють умови (2 4 3), за яких мінімізуються сумарні витрати на виробництво, а саме: мінімізувати &(уігу2гуз)= і>іУі+^гУ2+і>зУз, (2.4.4) при обмеженнях (2.4.3) іуі>0,у220,у3>0. Задачу (2.4.3), (2.4.4) називають двоїстою стосовно задачі (2.4.1), яка зветься прямою. Запишемо пряму і двоїсту задачі в загальному вигляді. Пряма задача: максимізувати , *=і (2.4.5) при обмеженнях: У ах, <ЬІ, ї=1,2,...,/п, У ! * /=І (2.4.6) х, >0,/=1, 2,...,и. (2.4.7) Двоїста задача. пі мінімізувати У , І=1 (2-4.8) при обмеженнях: ^с/,7 = 1,2,..,л, /=! (2.4.9) Уі > 0, /=1,2,..., т . (2.4.10) У матричному вигляді пара двоїстих задач записується так: Пряма задача: максимізувати стх, (2.4.11) при обмеженнях: Ах<Ь; (2.4.12) х >0; (2.4.13) Двоїста задача: мінімізувати Ьту, (2.4.14) 52 101
Зайченко Ю.П. при обмеженнях. А\>с; (2.4.15) У>0. (2.4.16) Порівнюючи форми запису прямої та двоїстої задач, можна встано- вити між ними такі взаємозв’язки. / Якщо пряма задача є задачею максимізації, то двоїста буде зада- чею мінімізації, і навпаки. 2. Коефіцієнти цільової функції прямої задачі о, ...,с„ стають віль- ними членами обмежень двоїстої задачі. 3. Вільні члени обмежень прямої задачі Ь\, стають коефіцієн- тами цільової функції двоїстої задачі. 4. Матриця обмежень двоїстої задачі утворюється шляхом транс- портування матриці обмежень прямої задачі 5. Знаки нерівностей в обмеженнях змінюються на протилежні. б. Число обмежень прямої задачі дорівнює числу змінних двоїстої задачі і навпаки. Змінні у],.. .у,„ двоїстої задачі іноді називають тіньовими цінами [23] Двоїсту задачу доцільніше розв’язувати, ніж пряму, якщо в прямій за- дачі при малій кількості змінних маємо велику кількість обмежень (т > п). Зв’язок між оптимальними розв’язками прямої та двоїстої задач встановлюють, аналізуючи такі теореми теорії двоїстої. Теорема 2.4. Якщо хота у0 допустимі розв'язки прямої пил двоїстої задач, тобто Ах0<Ь. та А1у0>с, то стхо<Ьтуо, (2 4 17) тобто значення цільової функції прямої задачі ніколи не перевищують значень цільової функції двоїстої задачі. Доведення. Помножимо вираз (2.4.12) на уот, дістанемо: УоТАх0<у0тЬ. (2.4.18) Аналогічно помножимо (2.4.15) на хоТ: хоТАТуо> хотс. (2.4.19) Але уотАхо=( уоГАхо)т=хотАтуо, крім того ХоГс=стхО- Тому порівнюючи (2.4.19) і (2.4.18), знаходимо: уот Ь> уот Ахо>хотс або стхо<Ь‘уо Теорему доведено. 102
Дослідження операцій Теорема 2.5. (основна теорема двоїстості). Якщо хм та уо допус- тимі розв’язки прямої і двоїстої задач і, крім того, якщо с х0=Ь уо, то х0тауо ~ оптимальні розв ’язки пари двоїстих задач Доведення. Згідно з теоремою 2.4, для всіх допустимих розв’язків х і у справедлива нерівність (2.4.17). Зокрема, для всіх допустимих розв’язків справедливо стх<Ь1у0- Однак, із умови теореми стх0=Ьту0 й тому звідси випливає стх<стх0. Отже, х0 оптимальний розв’язок. Друга частина теореми доводиться аналогічно. Згідно з теоремою 2.4, для всіх допустимих^ справедливе стх0<Ьту. Проте, з умови стхо=Ьтуо випливає, що Ьту>Ьту0 для всіх у>0. Таким чи- ном, уо~ оптимальний розв'язок. Теорема 2.6. Якщо в оптимальному розв'язку прямої задачі (2.4.5) — (2.4.7) і-те обмеження виконується як строга нерівність, то оптима- льне значення відповідної двоїстої змінної дорівнює нулю, тобто: якщо ^аі)хітя = А'х„„„, < 6,, то уІтт = 0, (2.4 20) у=і де А'— і-й рядок матриці А. Зміст теореми 2.6 полягає в такому. Якщо деякий ресурс є в над- лишку, й і-те обмеження в оптимальному розв’язку виконується як стро- га нерівність, то це обмеження стає несуттєвим і оптимальна ціна відпо- відного ресурсу дорівнює нулю. Теорему 2.6 доповнює теорема 2.7, що встановлює взаємозв’язок між оптимальним розв'язком прямої задачі й обмеженнями двоїстої. Теорема 2.7. Якщо в оптимальному розв’язку двоїстої задачі обме- ження ] виконується як строга нерівність, то оптимальне значення відповідної змінної прямої задачі має дорівнювати нулю, тобто: якщо Ат/уопт-с>>0, то х, „пт =0. (2.4.21) Дамо економічну інтерпретацією теореми 2.7. Оскільки величини .у, (і=І, 2....,т) являють собою ціни відповідних т " ресурсів, то А уУ=Хяі;.''і - це витрати на у-й технологічний процес, а «=і величина су - прибуток від реалізації одиниці відповідного продукту. Тому з економічної точки зору теорема 2.7 означає таке: якщоу-й техно- логічний процес є строго невигідним щодо оптимальних цін ресурсів Уопт, то в оптимальному розв’язку прямої задачі інтенсивність викорис- тання даного технологічного процесу має дорівнювати нулю, і відповід- ний вид продукції не випускається як нерентабельний. 5** 103
Заіїченко Ю.П. Таким чином, теорема 2.7 виражає принцип реніпабельїіості для оп- тимально організованого виробництва. З цієї теореми випливає також, що коли х, оп^О, то АТ,Уопт-с, =0 (2.4.22) Припустимо, що серед змінних х2, х„ прямої задачі є множина з т змінних, які в оптимальному розв’язку прямої задачі мають не ну- льові значення. Нехай, наприклад, такими змінними стали перші за по- рядком пі змінних. Тоді на основі рівняння (2.4.22) дістаємо т умов рентабельності: А іУот~0 0, АТ2Уопт-С2=0; А тУолт О,п 0, ' (2.4.23) де Ат, =(ан,а21,...,«т1); А щ (^!т, ^2іп,— ,Н/ппі)- Доведення теорем 2.6 і 2.7 проведемо послідовно. Нехай хопт та уопт - оптимальні розв’язки прямої і двоїстої задач. Оскільки ці розв’язки допустимі, то АхоПТ-Ь<0; (2.4.24) Атуопт-с>0. (2.4.25) Помножимо нерівність (2.4.24) на утопт, а нерівність (2.4.25) - на х опт, і матимемо: У оптАХопт ~ Уопт Ь<0; (2.4.26) X от А Уопт~ X от Є —0 (2.4.27) Оскільки, внаслідок теореми 2.5: У от Ь хоптс та у оптА Хот х от А Уопт» то вирази (2.4.26), (2.4.27) строго дорівнюють нулю. Розпишемо ліву частину рівняння (2.4.26) і дістанемо: 104
Дослідження операцій у\>лт (Ахолг ~~ Ь) У] опт(А Хопт Ь|) + Уз опт(А ~ Хопт Ьз) +... + ут опЛА*"” хот - Ь,„) = 0 . (2.4.28) Оскільки У/от >0 та А(,)хОпт- Ь,<о для всіх і = 1,2, ..., тл, то ліва час- тина рівняння (2.4.28) може дорівнювати 0 тільки в тому разі, якщо ко- жний додаток окремо дорівнює нулю. Таким чином, для кожного і, для якого А(,1Хот - Ь,<0. маємо у, Ош =0, що й потрібно було довести в теоремі 2.6. Розглянемо тепер ліву части- ну нерівності (2.4.27), попередньо записавши її: X оптА Уопт — х оптс X 0п7 (А Уопт — С) ~ ^Сот (А > Уопт~Є|) + +-Т2опт (А зУопт С2) +—+От (А пУопт Сп) 0, (2.4.29) де А=[А|, Аі,-,А„]. Оскільки всі х, от ^0 і А,туолт - С] >0 для всіх /=1,...,л, то рівняння (2 4 29) строго дорівнює нулю, коли для кожного у, за якого (А,'у опт - С;)>0 відповідна змінна х, ОЛІ дорівнює нулю. Наведемо ще дві важливі теореми теорії двоїстості. Теорема 2.8 (теорема існування). Пряма й двоїста задачі мають оптимальні розв ’язки тоді й тільки тоді, коли обидві вони мають допу- стимі розв ’язки. Теорема 2.9 (теорема двоїстості). Допустимий вектор хр оптима- льний тоді й тільки тоді, коли в двоїстій задачі існує такий допусти- мий розв ’язок у о, Цо стхо = Ьтуо. (2.4.30) Доведення теорем 2.8 і 2.9 просте, тому пропонуємо читачеві вико- нати їх самостійно. Між оптимальними розв’язками прямої і двоїстої задач та елементами індексних рядків симплекс-таблиць, що відповідають цим розв’язкам, існує такий взаємозв’язок: Д ПР= V “в+і /7 опт» -Дт+/‘в=^опт, (2.4.31) і= 1,2,..., /и;у= 1, 2,..., п, Де п~ число змінних прямої задачі; т - число її обмежень; Дпр А ДВ . п+і , Лт+І - відповідні елементи індексного рядка симплекс- таблиці прямої і двоїстої задач відповідно. 53 105
Зайченко Ю.П. При цьому, якщо п+і. де 1< і<т, більше, ніж число векторів-стовпців матриці обмежень розширеної форми задачі, то елементи А,,,,, Д,„4/ ви- значаються циклічною перестановкою, починаючи з елемента Д;. Приклад 2.6. Розглянемо задачу ЛП: максимізуваіи/(.Г|г>.-2)=Є;Х1+с2Х2=4л1+ 3л2, при обмеженнях. 1X1 + 0x2^ 4000. 0х, + 1 х2<6000; 2 X] + — х2<6000; З ' хі,х2>0. Двоїста задача записується так: мінімізувати &(уі,У2.Уз)=4000у |+6000 у2+6000уз, при обмеженнях: 1 У і +0уг+1 уз £ С) =4; 2 0уі+1 уг+— у3^с2=3. У прикладі 2.4 було знайдено розв’язок прямої задачі Х| „11т= 2000, х->01п =6000, х3п1і, =2000, тах /= 26 000. Для розв’язання двоїстої задачі симплекс-методом введемо вільні н4, «5, запишемо обмеження в такому вигляді: 1уі+0у2+1уз У4=4; 2 Оуі+Іуг+ууз у5=3. Початкова двоїста задача записується в табл. 2.12. Таблиця 2.12 С, 4000 6000 6000 0 0 в. До Аі Аі Аз а4 А, 4000 У| 4 1 0 1 -1 0 6000 Уі 3 0 1 £ 3 0 -1 д 34000 0 0 2000 -4000 -6000 106
Дослідження опеїміїїіі За напрямний стовпець вибираємо А3, бо Л3=2000>0. Виконавши першу ітерацію симплекс-методу з напрямним еле- ментом аі3=1, дістаємо табл. 2.13. Оскільки в індексному рядку цієї таблиці всі оцінки недодатні, то поточний базисний розв’язок - оп- тимальнии. Отже, ми знайшли розв’язок уі „„т=0, у2опт =1/3, Узоп, =4. Очевидно, тіп (4000уі +6000у3+6000у3)=26000, тіп &(у)= тахДх)= 26 000, тобто теорема 2.5 виконується. Перевіримо, чи виконуватимуться теореми 2.6, 2.7. А!Хопт=[1 0] [2000 6000]1=2000х1+6000х0=2000<6=4000. Тому у, ОПт=0, що збігається із здобутим вище результатом. А2 X опт=О2! * І олт + й22 X > от =0 X І ил + 1 * 2 от = 0x2000+1 х6000=/ь, ТОМУ УЗопт* 0. Нарешті: 2 А з X олт «ЗІ X | олт + ^32 X 2 от ІХГ | олт + “ X 2 от 6000 63, 2 З тому у3от * 0. Як бачимо, теорема 2.6 виконується повністю. Для перевірки теореми 2.7 запишемо обмеження двоїстої задачі при оптимальних значеннях змінних: ацУіот+а2іУ2олт+ азіУзопт-Сі=1 *0+0* 1/3+1 *4-4=0. Тому, згідно з теоремою 2.7, Х| опт має бути більше за нуль. От- же, знайдено розв’язок (див. приклад 2.4) х, опт =2000 >0. Аналогічно для другого обмеження маємо: аі2Уіот+а22У2от+аз2Гзолг-С2=0+1 * 1/3+2/3*4-3=0. Згідно з теоремою 2.7, хтОпт має бути більшим за нуль. Раніше ми одержали х2от =6000. Отже, теорема 2.7 повністю підтверджується. Перевіримо справедливість співвідношення (2.4.31) для розгля- нутої пари двоїстих задач (див. табл. 2.6, 2.13). Розглянемо індекс- ний рядок табл. 2.6. Враховуючи, що п=2, т=3. 5*** 107
Зайченко Ю.П. /!опт=Д,пр)и+І=Д(пр,2+1=Дз=0; 3’2опІ=Д(пр,„+2=Д(',р)4=Д4=І/3; >'Зопт=Д,ПР’л+3=Д(ПР,5=Д5=4. Ці значення збігаються із знайденим розв’язком двоїстої задачі в іабл. 2.13. Розглянемо тепер індексний рядок табл. 2.13. Згідно із співвідношенням (2.4.31), маємо: Таблиця 2.13 4000 6000 6000 0 0 Вх Ао А, а. Аз а4 а5 6000 Уз 4 1 0 1 -1 0 6000 У2 і 3 2 3 1 0 2 3 -1 А 26000 -2000 0 0 -2000 -6000 х, от= -Дт+1ав=-Д4лв =2000, Х2опт = -Дт+2ДВ=-Д5ЯВ=6000. *з от = -ДбЛ\ і оскільки матриця обмежень табл. 2.13 складається з 5 сто- впців, то за правилом циклічної перестановки х3опт = = -Д,ав =2000. Цей розв’язок повністю збігається з розв’язком прямої задачі. Таким чином, користуючись співвідношеннями (2.4.31) розв’язавши пряму задачу, одночасно знаходимо розв’язок двоїстої задачі і навпаки. Цей висновок дає обгрунтування можливості пере- ходу від прямої задачі до двоїстої при т > п і навпаки. Загальний випадок двоїсіцості Вище встановлено основні співвідношення для пари двоїстих за- дач ЛП при обмеженнях у формі нерівностей. Узагальнимо ці ре- зультати на випадок довільних обмежень. Нехай пряма задача ЛП задана у вигляді: п максимізувати , (2.4.32) М при обмеженнях: 108
Дос лідження операцій У' аііхі <Ь) ,/= 1,2,...,/л, <лї’ (2.4.33) >=і £ а^х, = Ь, ,і = М| -!-!,/«! + 2,...,п»; (2.4.34) і і х) £0,у = 1,2,...,/», < л- Тоді двоїста задача стосовно задачі (2.4.32)-{2.4.34) записується так: т мінімізувати , (2.4.35) 1=1 при обмеженнях: т У^аиУі > сгі = 1,2,...,л, < я; (2.4.36) /=| ХайУі =сі^ = пі +2,...,л, і=! у, > 0, / = 1,2,....л», < т (2.4.37) Таким чином, задача, двоїста до задачі з мішаними обмеженнями (нерівності-рівності), складається за такими правилами. 1. Якщо змінна х, прямої задачі має бути невід’ємною, тоу-те об- меження системи (2.4.36) є нерівністю. 2. Якщо на змінну х} не накладається обмеження на знак, то у-тс обмеження двоїстої задачі (2.4.36) є рівністю. Аналогічно пов’язані знаки змінних двоїстої задачі у< та відповід- ні їм обмеження прямої задачі. Зауважимо, що коли покласти т\=т та п-,=п, то матимемо окремий випадок пари двоїстих задач з обмеженнями в формі нерівностей. Доведемо справедливість співвідношень (2.4.32) - (2.4.34) і (2.4.35)-(2.4.37), що пов’язують пряму та двоїсту задачі. Зв’яжемо з кожною ЛП-задачею вигляду (2.4.32) - (2.4.34) таку задачу з обмеженнями у формі нерівностей: максимізувати х' + (.<' -х' )> (2.4.38) /=І /=">♦! 109
Зийчснко Ю.П. при обмеженнях: /—І / «І +1 (2 4.39) ХаЛх',-х',^)- -Ь,,і = т -1,л?, -*-2...,т; (2-4-40) / -1 / «і+І х' > 0; і = 1,2....,/? + л,, (2 4.41) де «2-п-Л’ ~ число змінних задачі (2.4.32)-(2.4 34), на які не накладе- но умову невід’ємності. Встановимо відповідність між змінними задач (2.4.32)-(2.4.34) і (2.4.38)42.4.41). Порівнюючи форми їх запису, переконуємося, що х={х;,...д„) та (п+пі) вимірний вектор х = {хь х >, ..., х' 1 п + Лз пов’язані співвідношеннями х',і - 1,2,...,и, +!,«, + 2,...,л. (2.4.42) Очевидно, кожному (и+л2)-мірному вектору х відповідає єдиний и-вимірний вектор х, разом з тим, довільному п-вимірному вектору X відповідає ціла сім’я (п+л2)-вимірних векторів х. Таким чином, відповідність, яка визначається формулою (2.4.42), є однозначною з одного боку. Разом з тим, серед сім’ї векторів х, що відповідають х, завжди іс- нують вектори з додатними компонентами. Нехай вектор х={Х|,х2, } - розв’язок задачі (2.4.38)-(2.4.4]). л+П2 Використовуючи співвідношення (2.4.42), можна легко одержати, що відповідний вектор х є розв’язком задачі. І навпаки, якщо х - план задачі (2.4 32)-(2.4.34), то існує ціла сім’я планів х задачі (2.4 38)- (2.4 41), серед яких обов’язково є невід’ємні. Одним з них є вектор X , де х, тах(0,х,), тах(0,-ху_„2), у=І,2,...,лі, у=Лі+1,Лі+2, .,/?, у=л+1,л+2,. ,л+л2 (2 4 43) 110
Дослідження операцій Невід’ємність всіх компонент X очевидна, а відповідність векто- рів х та X випливає з рівності {х - 0 = х.,якщо х >0; 0-(-хі) = хІ,якщо ХІ <0, деу—иі+1; »і+2, ,п. Розглянемо задачу (2.4.35)-(2.4.37), двоїсту стосовно до задачі (2.4.32)-(2-4.34) Можна показати, що вона зводиться до вигляду (2.4.32)--(2.4.34). Для цього досить прийняти с ,= -сд а и= -а,,, Ь ,= - Ьц При цьому задача (2.4.35) - (2.4.37) перетворюється в задачу: іп __ мінімізувати , (2.4.44) і=і при обмеженнях: Vд у > с. 7—П 2,...,Л|, (2.4.45) X—! І?' І І=1 т =с},]=П\+\-,пх+2,...,п-, (2.4.46) і=і у,>0; і=1, 2, ..., ді|. (2.4.47) Тому задачі (2.4.35)-(2.4.37) відповідає така задача з обмеженням у формі нерівностей: мінімізувати ^Гі^у' + ^ГЬ^у’- удт ), (2.4 48) 1=1 І=ГП}+1 при обмеженнях: т ДауУі+ £ сд 7=1,2......л; (2.4.49) /=! /=«^1 піі т X а,/(у;-у'і+тД>-с/;у^п,+];пІ+2,.,п (2.4.50) 1=1 /=/«! +1 111
Зайченко Ю.П У,>0; /=1,2, ..., т+пі2 (2.4.51) де т? = т - т\ - число змінних у„ на які не накладено умову не- від’ємності Вектор у= {.)’!>- №} та відповідний йому (ли+п?2) вимірний вектор у'={Уі,...,у>'п+т } пов’язані співвідношенням: у',і = 1,2,. ...т,. * (2.4.52) , ,і = т, + 1,/и. + Отже, кожному плану у' задачі (2.4.48)-(2.4.51) відповідає план у задачі (2 4 35)—(2.4.37), і навпаки: будь-який невід’ємний вектор, що відповідає плану (розв’язку) задачі (2.4.35)-(2.4.37), являє собою розв’язок задачі (2.4.49)—(2.4.51). При цьому, якщо у' та у - два від- повідних один одному розв’язки, то з оптимальності одного з них безпосередньо випливає оптимальність і другого. Запишемо задачу, двоїсту до (2.4.38)-(2.4.41). Безпосередньою перевіркою можна переконатися в тому, що одержимо задачу в фор- мі (2 4.48)-(2 4.51). Таким чином, задачі (2.4.38)-(2.4 41) і (2.4.48)- (2.4.51) з обмеженнями довільного вигляду (нерівності - рівності) також являють собою двоїсту пару. Зауважимо, що всі теореми двоїстості, що були доведені для об- межень у формі нерівностей, легко поширюються на загальний випа- док задач з довільними обмеженнями. Розглянемо, наприклад, теорему 2.5. Якщо х та у - допустимі розв'язки прямої (2.4.32)-(2.4.34) та п пі двоїстої (2.4.35)-(2.4.37) задачі і якщо при цьому =2^^іУі ’ /-і /=і то х та у - оптимальнірозв ’язки цих задач. Доведення. Припустимо, що задача (2.4.32) - (2.4.34) розв’язна і х - її допустимий розв’язок, а у - допустимий розв’язок (план) задачі (2.4.35) - (2.4.37). Розглянемо вектор х’={х'і,...,х^+ }, пов’язаний з вектором х співвідношеннями (2.4 42), з невід’ємними компонентами. Згідно з доведеним, х' є розв’язком задачі (2.4.38). Застосуємо тепер теорему 2.5 для задач із обмеженнями - нерів- ностями 112
Дослідження операцій Згідно з цією теоремою, якщо х'та у' - допустимі розв’язки пари двоїстих задач і виконується рівність: "І п Ш| т /'І Л £/ух' + І/, (< - <+П2) = ±ь,у’ + (л - ( ) /-І 7=^+! і=І і=»і|+! то х'та у - оптимальні розв’язки для цієї пари задач. Використавши співвідношення (2.4.42), (2.4.52), які пов’язують відповідні плани х'та х, у та у', дістанемо: Іс7х'+ £ с/(х')-х'^)=Хс/х,; (2.4.54) /=! у -П| + І /=1 пі іч Х^У- + Е Ь'(у' ~ ) = Х^у,. (2.4.55) 1=1 /=т,+! /=І Таким чином, співвідношення (2.4.53) і (2.4.54)-(2.4.55) - еквіва- лентні, тому плани х' та у' - оптимальні. За доведеним вище, кожному оптимальному х' відповідає єдиний оптимальний план х, а кожному оптимальному плану у' відповідає єдиний план у. Отже, теорему доведено. Аналогічно можна довести й інші теореми двоїстості для довіль- них обмежень. Приклад 2.7. Розглянемо задачу ЛП при довільних обмеженнях: максимізувати 5хі+3х2+6хз, (1) при обмеженнях: Хі + 2х2 + Хз < > 8; 2хі + 1х2 + Зх3 < 16; Х| + Хі + Хз= 10; (2) Х|,х2>0. (3) Складаємо задачу, двоїсту до (1)—(3), згідно із загальними пра- вилами: мінімізувати Івуї+Ібуг+ІОуз, при обмеженнях: Ті + 2 у2+уз>5; 2уі+ 1 у2+уз>3; 113
Заїїченко Ю.П. >>і + Зу2 +Уз = 6; (5) Уі,У2>0. (6) Знайдемо розв’язок задачі (1)-(3). Оскільки на х3 не накладено об- меження невід’ємності, то замінимо х3 на пару змінних х4, х5, так що х3=хА-х5. (7) Підставляючи (7) в (І)—(3), дістаємо еквівалентну задачу: максимізувати 5х|+3х2+6х4-6х5, (8) при обмеженнях: X] + 2х2 + х4 -х5 <18; 2Х| + 1х2 + Зх4 -Зх5 <16; (9) Хі + х2 +х4-х5 = 10; ХьХ2, х4,х5>0. (10) Розв’яжемо задачу (8)—(10) симплекс-методом. Для цього вве- демо вільні змінні х6, х2 в перше і друге обмеження та штучну змін- ну х8 в третє обмеження (10) і цільову функцію. Заповнимо початкову симплекс-таблицю 2.14. Таблиця 2.14 І сі 5 3 6 -6 -М Вх Ао Аі а2 А4 а5 Аб а7 а8 0 х6 18 1 2 1 -1 1 0 0 0 Х7 16 2 1 3 -3 0 1 0 -м Х$ 10 1 1 1 -1 0 0 1 А -М- 5 -М- 3 1 6+ м 0 0 0 Результати послідовних ітерацій наведено в табл. 2.15-2.17 від- повідно. 114
Дослідження операцій Таблиця 2.15 Сі 5 3 6 -6 -м вх Ао А| а2 а4 а5 Ае а7 А 8 0 х6 10 0 т | гч І ’2 1 2 1 2 2 0 5 Хі 8 1 1 2 2 2 ю | « 0 1 2 0 -М Х8 2 0 1 2 2 2 1 2 0 2 2 1 Д 0 М І 2 2 М 3 + — 2 2 М 3 2 2 0 М 2 0 | Таблиця 2.16 сі 5 3 6 -6 -М Вх Ао А] а2 А4 а5 Ао а7 Ае 0 Х(, 4 0 0 1 -1 1 1 -3 5 Х\ 6 1 0 2 -2 0 1 -1 3 Х2 4 0 1 -1 1 0 -1 2 Д 42 0 0 ' 1 -1 0 2 М+ 1 Таблиця 2.17 сі 5 3 6 -6 -М вх Ао А! а2 а4 а5 Ао а7 Ае 0 Х(, 8 0 1 0 0 1 0 -1 5 14 1 2 0 0 0 -1 3 -6 4 0 1 -1 1 0 -1 2 Д 46 0 1 0 0 0 1 М+3 Оскільки в індексному рядку таблиці 2.17 нема від’ємних чле- нів, то знайдено оптимальний розв’язок: х(*=14; х5’=4; х6*=8; х2*=0= х4*= х7'=0. Враховуючи, що х3= хА - х5, х/=14; х2*=0; х3*=-4; £тпах=46. 115
Заііченко Ю.П.___________________________________________________ Використовуючи співвідношення (2 4 31) знайдемо за індексним рядком табл. 2.17 оптимальний розв’язок двоїстої задачі Врахуємо, що т = п = 3, а стовпці А« та А5 потрібно розглядати як один стов- пець. Тоді: у1Опт = Д1+з=Дпрб=0; У? от Д? 1» УЗ от 3. При цьому розв’язку всі обмеження (5)-(6) виконуються, крім того, тіп (18у।+16у?+10у3)=46=Д гпах* 2.5. МЕТОД ОБЕРНЕНОЇ МАТРИЦІ Критерії оптимальності та розв ’язувальні множники 1 Використання ідей двоїстості дає змогу по-новому сформулю- вати критерій оптимальності розв’язання задачі ЛП. Цей критерій 'використовує розв’язувальні множники Канторовича [18,58]. Нехай задано задачу ЛП загального вигляду зі змішаними обме- женнями: при обмеженнях: максимізувати Ь (х) = У с, /=і л <Ь,, ї=1,2,.. ї—/И|+1, ?И|+2,...,/п; 1-і х/ > 0; у=1,2,...,ді <п. (2.5.1) (2.5.2) (2.5.3) (2.5.4) 116
Дослідження оперити Змінні X),..., Х,„ називають розв’язувальними множниками, якщо: а) >сг 7=1, (2.5.5) б) Ї/',Л =с,,У= «і+1, «і -і-2,...,и; (2.5.6) в) X, >0; і=І, (2.5.7) г) для деякого плану х=(х„...гх„) задачі виконуються умови' £луХ, = с;, якщох;>0, (1<у <н ), (2 5.8) і-і Х,=0, якщо Xа,Iх/ </,і’ (1< *</«!). (2.5.9) / Вектор А = (Х|, .., Х,„) називають розв’язувальни.м вектором задачі. Покажемо, що відшукання розв’язувального вектора еквівалентне розв’язанню задачі, двоїстої до задачі (2.5.1)—(2.5.3). Для цього роз- глянемо таку теорему. Теорема 2.10. Сукупність розв'язуваїьних векторів задачі (2 5.1)-{2.5.4) збігається з множиною опти.маїьних розв'язків задачі (2.4 35)~(2.4.37), двоїстої до неї. Доведення. Нехай А = (Х;,..., Х,„) - довільний розв’язуваль- ний вектор задачі (2.5.1)-(2.5.4), пов’язаний з розв’язком х умовами (2.5.8), (2.5.9). Згідно з умовами (2.5.5)-(2.5.7) вектор А = (Хі,..., Хп1) - розв’язок двоїстої задачі. Лишається довести, що він є оптимальним. Позначимо через Е сукупність індексів у (/=І,...,«і), для яких х7>0. Тоді: сІхІ + ^с)хі (2.5.10) 7=1 уєЕ У=»і + І Беручи до уваги рівність (2.5.8), а також умови (2.5.6) при 7=лі+1,...,п, маємо: 117
Зайченко Ю.П. п т п ї.с,х, = Е (Е«.Л>л/ * Е (Е «>/>-,• І~' і^і. 1-І /-»! 1-І І Однак, згідно з прийнятим позначенням, х, = 0, якщо уйЕ га 1 <д<п\, тому: /і я т т п Х(Іхі = Х(ХаІІХіУхІ='^Х''^ачхі (2.5.11) /=1 /—1 »-! і=і }-\ Враховуючи рівність (2.5.3) при і=т+],...лі та умови (2.5.9) при і= 1,... ,т!, дістаємо: ПІ п М =Ті-,Ь, . (2.5.12) /=1 /=1 Г=1 Порівнюючи (2.5 11) з (2.5.12), приходимо до співвідношення я т Есіхі =ї^,ь, (2.5.13) /=і ;=і Згідно з теоремою 2.5, двоїстості співвідношення (2.5.13) свід- чить про оптимальність розв’язків А. Теорему доведено. Використо- вуючи поняття розв’язувальних множників, можна сформулювати ознаку оптимальності розв’язку задачі ЛП. Теорема 2.11. Дня онтимальності розв'язку х=(.Г;,...л,) задачі (2.5.1 )-(2.5.4) необхідно і достатньо, щоб існував розв ’язувапьний вектор А = (Аь..., А,„) - пов язаний з цимрозв ’язколіумовами (2.5.8), (2.5.9). Доведення. Необхідність. Припустимо, що х=(л-,...д„) — розв’язок задачі (2.5.1)-(2.5.4). Тоді двоїста задача (2.4.35)-(2.4.37) розв’язна. Нехай А = (Аі,-.-, А,„) - один з її оптимальних планів. У такому разі згідно з теоремою 2.10 вектор А є розв’язу вальним век- тором для задачі (2.5.1)-(2.5.4), причому, як показано при доведенні другої частини теореми, він пов’язаний співвідношеннями (2.5.8), (2.5.9) з будь-яким розв’язком задачі (2.5.1)-(2.5.4), а отже, і з даним. Достатність. Припустимо, що існує розв’язувальний вектор А = (А;, .., А,„), пов’язаний з даним розв’язком х задачі (2.5.1)-(2.5.4) умовами (2.5.8), (2.5.9). У процесі доведення теореми 2.10 одержано рівність (2.5.13). З цієї рівності, якщо враховувати, що х та А є розв’язками задач 118
Дослідження операцій (2.5.1)—(2.5.4) та (2.4.35)-(2.4.37) відповідно, й випливає оптималь- ність розв’язку х ( див. теорему 2.5). Встановлений критерій дає змогу перевірити, чи буде даний план оптимальним розв’язком задачі ЛП. З цією метою складають систему з рівнянь ( 2.5.6 ), ( 2.5.8 ), ( 2.5.9 ), з якої знаходять відповідний вектор д = (Ль..., Х,„), після чого підстановкою перевіряють, чи задовольняє цей вектор умови (2.5.5), (2.5.7), чи ні. Якщо так, то вектор х - оптима- льний план, у супротивному разі - неоптимальний план. Зауважимо, що відшукання роїв’язувальних множників еквівале- нтне розв’язанню двоїстої задачі, що в загальному випадку аж ніяк не легше відшукання розв’язку прямої задачі. Головна роль розв’язувальних множників полягає в тому, що їх використання дає змогу сформулювати нову ознаку критерію оігги- мальності й сконструювати новий метод лінійного програмування. 2. Розглянемо задачу ЛП в канонічній формі (2.5.14)-(2.5.16), яка є окремим випадком задачі (2.5.1)- (2.5.4) при лі =0, п\=п-. п максимізувати ЕсА’ (2.5.14) /=і при обмеженнях: =лм /=1,2,...,щ; (2.5.15) /=і х, >0; /=1,2,...,л. (2 5.16) Для задачі (2.5.4)-(2.5.16) вектор А = (Аь..., А,„) зветься розв’язувальним вектором, якщо: а) сг 7=1.2,..„я; (2.5.17) б) для деякого плану х (розв’язку) задачі (2.5.14)-(2.5.16) викону- ється умова: = с,, якщоху>0. (2.5.18) 119
Зайченко Ю.П Критерій оніимальносгі в цьому випадку формулюється так. Дія оптимаїмюсті тану х необхідно і достатньо, іцоб існував розв ’язувазьтпі вектор Л=(Л..,..Х,„). нов язаніаі з х умовою (2.5 17). Отже, припустимо, що задачу ЛП задано в канонічній формі і ве- ктори {А1., ..,АЯ,,}={Ал,} утворюють базис для деякого опорного плану х . Позначимо через Д множину індексів базисних векторів Визначимо вектор Л* =(Х*,,..., Л’,„) із системи рівнянь: гп Ха,Іх''=сІ- ЗєЦ- (2.5.19) г-1 Тоді план х оптимальний, якщо; 111 У а„Я', > сг і = \,2,...,п- (2.5 20) і»' У процесі розгляду симплекс-методу ми отримали достатню ознаку оптимальності у вигляді' 4, = !^, >0 (2.5.21) /є/г Покажемо тепер еквівалентність форм (2.5.20), (2.5.21) для усіх у=1,2,...,«. Справедливий такий ланцюжок рівностей __ 1П пі ____ пі г. = • <2-5-22) і’е/, »е/ //-1 //=! /б/, У~1 Рівність (1) випливає із (2.5.19), рівність (2) одержано зміною по- рядку підсумовування, а рівність (3) випливає з розкладання небази- сного вектора А„ через базисні: Ау =ЕаЛ • ге/. Таким чином, із (2.5.22) випливає, що умова ~сі и=і для всіх7=1,2, ...,л еквівалентна умові Д7> 0,/= 1,2, ...,л. 120
Дослідження операцій Метод оберненої матриці (А-метод) Використання ознаки оптимальності у формі (2.5.20) дає змогу зконструювати інший алгоритм симплекс-методу - метод оберненої матриці (в іноземній літературі цей метод зветься модифікованим симплекс-методом). Цей метод розробив Л.В.Канторович для розв’язання однієї із спеціальних задач ЛП ще 1939 р., а пізніше (1951) й для загальної задачі ЛП (58, 79). Нехай задачу ЛП задано в канонічній формі, х - її допустимий базисний розв’язок для базису {А,} ієД , де Д множина індексів ба- зисних векторів. Складаємо із векторів базису квадратну матрицю. Очевидно, визначник матриці Ах не дорівнює нулю й існує обернена матриця Ах ’1- Покажемо, як, використовуючи Ах ', можна побудувати компактну схему для обчислення параметрів, необхідних для реалізації симп- лекс-методу. Справді, базисні компоненти поточного ДБРх визначаються із умови: х= Ах 1 Ь або т 1 хіо = 22 а . М=1 Оцінки векторів А визначаються за формулами д/ = 21 ~с/ = XXй,> -с7,у = 1,и; (2.5.23) де параметри X, задовольняють рівняння: т ^Іх, (2.5.24) 1=1 або у векторній формі ЛТАХ=СТХ, де Стх - вектор-рядок коефіцієнтів Ц- ф- функції, що відповідають базисним змінним. Отже, АТ=СТХ Ах 1 (2.5.25) Формули (2.5.23)-(2.5.25) дають змогу обчислити оцінки А, век- торів, якщо відомі елементи оберненої матриці Ах 1 та умови задачі Коефіцієнти хік розкладання небазисного вектора А* по векторах по- точного базису визначаються як елементи добутку (АхА*) матриці 6і 121
Заііченко Ю // Ах 1 на вектор А*. Коефіцієнти х,* разом із базисними складовими ДБР визначають вектор, що підлягає виводу із базису. Отже, для реалізації методу потрібно обчислювати на кожному кроці матрицю Ах . Елементи стовпців матриці Ах '' зручно розі ля - дати як коефіцієнти розкладання е,7 одиничних векторів еу (/=!,...,иі) за векторами базису, де 0, 0, 1,0, 0 При цьому ііереобчислсння елементів {еу,} матриці Ах 1 при вве- денні до базису нового вектора А* виконується за такими рекурент- ними формулами методу виключення Жордана-Гаусса: е.. Є -------- є —— хік, і * г;і = 1, т +1; у = 0,1,..., ти; х,к —,і -г,]- 0,1...........т, Хгк (2.5.26) де: а) хгк — напрямний елемент перетворення; б) е,0=х,0 базисні компоненти ДБР Хо=||х,о|| і=1,...,ти; в) еп,+і., = X, — розв’язувальні множники_/=],.,.,тп; є) е,„+і.о (Хо) — значення ц ф. при базисному розв’язку хп ; Аа - вектор, що вводиться до базису; А, — вектор, що виводиться з базису. Для реалізації методу оберненої матриці на кожній ітерації вико- ристовується основна і допоміжна таблиці Основна таблиця складається з (т + 3) стовпців та (т + 1 )-і о ряд- ка (табл. 2.18). 122
Дослідження операцій Основна таблиця 2.28 N Сх Вх ео Є/ «2 е,п Ак 0 1 с, Аі Єн/" Єц(" Є І?" „ а* Є Іт х1к 0; 2 с2 а2 Є20° Є'.'" Є.’/" е, х2к в;.... ... К. Сг • Аг є,,/" еГІГІ> є,?"' е сгт хгк ег т ст (1 е„0 ) ЄтҐ ) Є„2т ... е т '-піт Хтк 6т т+1 Ь Л'І х2 ... ^•т Ак Допо міжна таблиця 2.19 N Ь—Ао А, а2 Ак Ап-| Ап 1 2 ... ... ... т т+1 Сі Сі Ск Сп-1 Сп 0 д(0) Д/0’ д,(0) Ак<0) А,,./01 Лп<0) 1 Д"» А."’ д,(|) Ак(” Ао-/" Ап'” 2 Д,2> А,'21 Д2(2’ Ак(2) Ап.і(2) Ап,2) 1 Д'° Д,'0 Д2(Л Ак(/) Ап.,''> Ап'0 У стовпці Єр записуються базисні компоненти поточного розв’язку, стовпці еь е2 е„, - це стовпці оберненої матриці Ах’‘ поточного базису; у стовпці А* записуються коефіцієнти х,* розкла- дення небазисного вектора А* за векторами базису; стовпець 0 - до- поміжний, ВІН МІСТИТЬ величини 0= е,о ! Х,к , Х,*>0. Стовпці Єо, Є| ет- головна частина таблиці, в (ін + 1)-му рядку основної таблиці за- писують величини {X,} /є/,. Допоміжна таблиця (табл. 2.19) містить вектори {Аі,...,А„}, вихідної задачі, а також вектор с. У рядку 0 записують зна- чення оцінок Д,, що відповідають початковому ДБР. 6* 123
Зийченко Ю.П. "У результаті кожної чергової ітерації (/) у допоміжну таблицю дописують черговий рядок (/+]), що містить величини Д,. Опишемо (/+!) ітерацію алгоритму оберненої матриці. Нехай вже проведено І ітерацій алгоритму, внаслідок чого обчислено мат- рицю Ах'(/) й оцінки Д7, але ще не знайдено оптимальний розв’язок. І. Визначаємо вектор А*, що вводиться в базис згідно з умовою А'*0 = тіп(Д''’|д('’ < 0) (2.5.27) 2. Із допоміжної таблиці вибираємо компоненти небазисного век- тора А*. Обчислюємо його коефіцієнти розкладання хік через базисні вектори, використовуючи обернену матрицю Ах'1: (2.5.28) І Записуємо величини х,к в стовпець А*. У позицію стовпця (лі+1) записуємо оцінку Д, цього вектора. Переглянемо стовпець А*. Якщо всі х,і<0, то задача не розв’язна. Припустимо, що є хоча б один х,*>0, то переходимо на п. 3. 3. Обчислюємо відношення еіо/Хцй визначаємо напрямний рядок г із умови: Є, = тіп{—|хй > 0} - 4. Виконуємо одну ітерацію симплекс-методу з напрямним еле- ментом хГІІ. 5. Одержимо нову обернену матрицю Ах'‘, а також нові оцінки Ду. Заповнюємо елементами Ах'' головну частину таблиці (/+1) ітерації, при цьому замінимо індекс г вектора, що його виведено з базису, на к у стовпці Вх. Одночасно замінюємо с, на ск у стовпці сд. Зауважимо, що для контролю значення Х//+1) можна обчислити також і за фор- мулами: 4'*° = Ес/еГ’ • (2.5.29) іє/, 6. Для всіх небазисних векторів обчислюємо оцінки згідно з спів- відношеннями: 124
Дослідження операцій д('т1’ = їМ'+"-с,;Лі.л (2-5-30) І і/ і / ’ -/ /е/. Перевіряємо умову Д,,/+І) > 0 для всіху =1, 2,.. ,,п. Якщо вона виконується, то кінець роботи, у супротивному разі переходимо до (/+2) ітерації. Усі таблиці алгоритму заповнюються за тими самими правилами. Деякі особливості виникають лише при за- повненні початкової основної таблиці. Тут у стовпець Єо записують базисні компоненти вихідного ДБР. Перші т позицій стовпців Єо, е е»> знаходять шляхом обернення матриці базису початкового до- пустимого базисного розв’язку. Останній рядок головної частини таблиці 0 заповнюється добутками стовпця є, й стовпців цієї таб- лиці, тобто: *‘у0,= (2.5.31) /є/, Для контролю обчислень можна скористатися двома можливос- тями визначення цих величин. На будь-якій ітерації ці параметри можна обчислити як за реку- рентними формулами (2.5.26), так і безпосередньо за формулою (2.5.29). Мультиплікативна форма методу оберненої матриці У розглянутій вище обчислювальній схемі методу потрібно за- пам’ятовувати всю обернену маїрицю АХ'І== Це,у ||, у мультиплікатив- ній формі алгоритму запам’ятовування потребує значно менший об- сяг даних. Розглянемо її ідею. Нехай х та х' - два послідовних ДБР задачі ЛП. Позначимо відповідні матриці векторів базису через Ахта Ах-: а,=[аЛ|, А„, ... А, , ... А. ]; А, =К, А„, ...,А<( А, , А,,]. Можна перевірити, що обернені матриці А ‘х та А ’‘х. пов’язані співвідношенням: б2 125
Зайченко Ю.П ДЄ А,.’ =Е,А,‘, 1 0 ... >•„ ... О О 1 ... уп ... О О 0 ... у* ... О О О 1 (2.5.32) у,к = —/=1,2,...,т, і*г; Хгк Співвідношення (2.5.32) еквівалентне застосуванню рекурентних формул (2.5.26) при і = 1,2,..,т іу = 1,2,..., т. Звичайно розв’язання задачі ЛП починається з одиничного базису. Йому відповідає одинична матриця Е. Тому після першої ітерації, коли замість вектора {АЇГ} до базису вводиться А*., обернену матрицю базису ддя допустимого базисного розв’язку х'можна обчислити за формулою. А ’ = Е Е , X г, а після / —і ітерації: А;1 =Е,Ег Е,Е (2.5.33) Матриця Е, визначається (/и+1)-м числом (т.у'ц.у'з*, Отже, при 1<т запис матриці Ах 1 у формі (2.5.32) потребує меншого обсягу пам’яті, ніж звичайна форма запису, де на кожній ітерації потрібно запам’ятовувати т~ чисел є,у. Опишемо схему обчислень в окремій ітерації мультиплікативної форми алгоритму оберненої магриці. Нехай вже проведено І ітерацій, в результаті яких встановлено, що х(/) - неоптимальний план (ДБР). Зна- ходження вектора, що підлягає виведенню до базису й виведенню з ньо- го, виконується за загальними правилами симплекс-методу, а компоне- нти чергового базисного розв’язку обчислюються за рекурентними фо- рмулами (2.5.32). Вектор відносних оцінок умов задачі (розв’язувальний вектор) А нау-й ітерації обчислюється за співвідношенням: А^=<Е,ЕГ . Е, Е. <+ » п гі । *і 126
Дослідження опертий вектор оцінок Л звичайним способом: Ат =Л‘АЧ.-С*. Нарешті, коефіцієнти Хц, розкладання вектора А* (що підлягає включенню до базису за векторами базису визначаються із співвід- ношення: А"+,) = Е,ЕГіі...ЕчА4. (2.5.34) Отже мультиплікативна форма алгоритму дає змогу не тільки за- ощаджувати пам’ять ЕОМ, а й скорочує обсяг обчислень на початко- вих ітераціях алгоритму оберненої матриці. Приклад 2.8. Розв’язати методом оберненої матриці таку задачу ЛП: максимізувати 4х,+2 х2, (1) при обмеженнях: -Х| + 2х2 - 6; X) + х2 < 9; Зх! - х2 < 15; Х|, х? > 0. Зводимо її до розширеної форми. Маємо: максимізувати 4х!+2х2, (2) при обмеженнях: хі + х2 + 1х4 = 9; Зхі -х2+ 1х5= 15; виберемо за початковий одиничний базис: 1 0 а = [а„а4,а,]= 0 і о о о о Заповнимо допоміжну таблицю 2.20 (початкову частину) та ос- новну таблицю першої ітерації (табл. 2.21). Перша ітерація. Заповнивши головну частину табл. 2.21 обчис- люємо її індексний рядок згідно із співвідношенням А/ = Оскільки с,=0 при /=3,4,5, то ХіІО)=А.2(О-Л3(0)=0. Переглянувши рядок Д° табл. 2.20, вибираємо вектор Аь оскільки: А',°> = тіп^у|Ду < о}=—4 . 127
Заііченко Ю.П. Таблиця 2.20 X В А| а2 А3 а4 а5 1 6 -1 2 1 0 0 2 9 1 1 0 1 0 3 15 3 -1 0 0 1 Ітерація с/ 4 2 0 0 0 0 -4 -2 0 0 0 1 д/" 0 -10/3 0 V 4/3 2 д/2' 0 0 0 2 — 2 1/2 Таблиця 2.21 N Сх Вх Єо Є| е2 е'з Ак 1 0 Аз 6 1 0 0 -1 2 0 а4 9 0 1 0 1 3 0 А; 15 0 0 1 3 А 0 0 0 0 -4 Записуємо вектор А| у стовпець Ак праворуч від головної час- тини табл. 2.21 і його оцінку в індексний рядок. Стовпець Ак - напрямний. Знаходимо напрямний елемент згідно із загальними правилами симплекс-методу. Виконавши ітерацію, заповнюємо головну частину табл. 2.22. Таблиця 2.22 N Сх Вх е0 Є| е2 ез Ак 1 0 Аз 11 1 1 І 3 2 2- 3 2 0 4 0 1 1 3 11 3 3 4 Аі 5 0 0 І 3 1 3 А 20 0 0 4 3 10 3 128
Дослідження операцій Отже, знайдено вектор розв’язувальних множників А(1-[0, 0, 4/3]. Визначимо оцінки Д*1’, для всіх небазисних векторів, використо- вуючи співвідношення (2.5.30): гє/, а результати записуємо в рядок Д,(І) табл. 2.22. Наприклад: Д, = 2Х(,,І + ]ХС,,2- ІЛ(”з-С3 = -] і -2 = - 12. з з Друга ітерація. З індексного рядка А,' вибираємо вектор А2 з найбільшою від’ємною оцінкою Д2'<-10/3 <0. Помноживши матрицю {є,, е2, е3} табл. 2.20 на А2 дістанемо А2‘ і запишемо його у стовпець А* табл. 2.22. Таблиця 2.23 N Сх Вх е0 Є| е2 ез 1 0 Аз 3 1 -1 1 2 2 а2 3 0 2 4 'І 4 3 4 А, 6 0 І 4 1 4 А зо 0 І 2 — 2 1 2 Визначивши напрямний елемент у стовпці А* і виконавши чер- гову ітерацію симплекс-методу, приходимо до табл. 2.23. Обчислю- ємо вектор оцінки за формулою (2.5.30), заносимо їх до табл. 2.20. Останній базисний розв’язок в табл 2.23 оптимальний, оскільки всі Д,(2)>0. б3 129
Заііченко Ю.П. 2.6. ДВОЇСТИЙ СИМПЛЕКС-МЕТОД Використання теорії двоїстості в комбінації із загальною ідеєю симплекс-методу дало змогу розробити ще один метод розв’язування задач ЛП - двоїстий симплекс-метод. Вперше цей метод запропону- вав Лемке в 1954 р. Розв’язування задачі ЛП двоїстим симплекс- методом зводиться до відшукання оптимального плану прямої задачі послідовним переходом від одного базису до другого. Задача ЛП в канонічній формі має вигляд: максимізувати Ь(х) = (2.6.1) 7=1 при обмеженнях: =ЬИ (|і = 1,2,...т) (2.6.2) 7=1 або: ±АЛ=Ь, > ОД = 1,2,..., и. Припустимо, що п > т і ранг матриці А дорівнює т. Двоїста задача до задачі (2.6.1), (2.6.2) записується так: мінімізувати Е^Ду) = ^ЬрУ/л, (2.6.3) А=1 при обмеженнях: (2-6.4) А=1 Назвемо спряженим базисом або базисом двоїстої задачі таку систему з т лінійно-незалежних векторів матриці обмежень прямої задачі {А, }іе/е, для якої базисний розв’язок у відповідної системи лінійних рівнянь вигляду А/гу = сР ієІ6 (2.6.5) задовольняє всім обмеженням (2.6.4). 130
Дослідження операцій Розкладемо вектор Ь за спряженим базисом: £ А,х( = Ь = Ао • (2.6.6) '«Л Розв’язавши систему (2.6.6), знайдемо деякий її базисний розв’язок {х,0 } /є/8, який зветься псевдопланом прямої задачі, оскі- льки для нього може виконуватися умова невід’ємності змінних х,0. Таким чином, псевдоплан прямої задачі - це її базисний розв’язок, що відповідає деякому спряженому базису. Як відомо, оцінки для небазисних векторів Ду визначаються згід- но з: Ау = Хсіхі} ~с) ,І=К2,...,п. (2.6.7) Псевдоплан можна знайти й незалежно від двоїстої задачі. Нехай {А,} і є /8 - довільна система лінійно-незалежних векторів прямої за- дачі. Розкладемо усі небазисні вектори { Ау} через базисні: А,- = , (2.6.8) ІСІ6 А0=Ь=ІА,х;. (2.6.9) Позначимо розв’язок (2.6.9) через х0. Тоді можна дати таку озна- ку псевдоплану: п-вимірний вектор X, для якого х, = хлпри іє/5, та х^ = 0 при) £ Іб, являє собою псевдоплан тоді і тільки тоді, коли всі Д, >0, / Доведення. Вектори { А,} і є І6, лінійно незалежні. Тому можна обчислити такий у ={ у,,у2,..,у„,} для якого т аГу = Е = С,, / Є І6. (2.6.10) А=1 Тоді: б*** 131
Чсііічепко Ю.П. __ т -с7 = Е ~с, = іе/й іє/„- //=1 пі пі £< “СУ = Ха,дУр ~СІ /'-> 'Є/,; /2=1 З урахуванням (2.6.4) маємо: Д, = І«мьГм-с, >0,У/ = 1.и. (2.6.11) м-і Таким чином, згадану ознаку доведено. Розглянемо деякий спряжений базис і відповідний йому нсевдо- план. Справедливий такий критерій оптимальності: якщо серед базис- них компонентів псевдоплану X немає від’ємних, то пссвдотан Х={ г,о } ( оптимальним розв'язком прямої задачі Доведення. Мас місце такий ланцюжок рівностсй т (1) т (2) т (3) ^піЛу) ~ ~ 22 ( 22^ц/л/).^р — 22 )= • ц=Н м=І 'є/„ /є/, іє/п Рівність (1) випливає з (2.6.2), рівність (2) отримано зміною по- рядку підсумовування, рівність (3) випливає з (2.6.10). Оскільки. х, = 0 приу (2.6.12) то ХсЛ = їс/л/=£(х). (2.6.13) /є/д /=1 Таким чином, £Л((у) = Л(х), що і є ознакою оптимальності планів х іа у, якщо х > 0 (теорема 2 5) Ця ознака ( необхідною і достатньою умовою оптимальності у випадку нсвироджеиості базисною роз’язку у двоїстої задачі [18]. 132
Дослідження операцій Нехай відомий деякий спряжений базис {А,}, іє/й, якому відпо- відає пссвдоплан х. Очевидно, А, = А,х„ , А0=^АІх/. При цьому Г‘є/„ >Є/.; залежно від знаків {х,} і {х,у} може мати місце один з трьох випадків. 1) базисні компоненти х, = х,0>0 для всіх 2) серед х, є від’ємні, причому для деякого /: х1(><0, а всі х,,>0у = 1, ..., я; 3) псевдоплан мі- стить від’ємні компоненти Х,0<0, але для кожного з них серед елемен- тів {х,,},_/ = 1, ..., п , є від’ємні. У першому випадку, який випливає з достатньої умови оптимальності, псевдоплан х - оптимальний розв’язок У другому випадку задача не розв’язна. У третьому випад- ку можна перейти до деякого нового спряженої о базису, а отже, до нового псевдоплану з меншим значенням £. Таким чином, послідовні переходи від одного спряженого базису до іншого виконують доти, доки не отримають розв’язку задачі або не встановлять її нерозв’язність. Кожний перехід від одного псевдопла- ну до іншого становить одну ітерацію (один крок) двоїстого симп- лекс-методу Кожна ітерація містить два етапи. На першому єіапі визначають, чи не є псевдоплан оптимальним планом прямої задачі, і якщо ні, то чи розв’язна задача. Для цього потрібно обчислити { г, }, / є/й і ви- значити їхні знаки. Другий етап полягає у виконанні елементарного перетворення — (одної ітерації) методу повного виключення Жорда- на-Гауса, що приводить до нового псевдоплану з меншим значенням цільової функції. Опис алгоритму. Задача ЛП має бути задана в канонічній формі (2.6.1), (2.6.2) або зведена до неї. Відшукують спряжений базис дво- їстої задачі й позначають його {А,}, /є/б. Розкладемо Ао за вектора- ми базису А,і, .. ,А,„, згідно з (2.6.9) й знайдемо псевдоплан {х,0}, і є /й прямої задачі. Дослідимо знаки {х,(|}. Якщо має місце випадок хю >0, V і є 7<», то початковий псевдоплан є оптимальним планом прямої задачі. При наявності від’ємних компонент {х,о} обчислюємо коефіцієнти роз- кладання векторів А, за векторами спряженого базису {х,Д відповідно до (2.6.8) Якіцо для деякого г такого, що Хго<О, всі х,7>0, то задача не розв’язна (другий випадок), і на цьому процес обчислень за- кінчується. 133
іийченко Ю.11. Якщо має місце третій випадок (тобто для кожного г такого, що хг()<0, хоча б одна компонента г,<0) переходимо до другого етапу. З цією метою складають таблицю А-ї ітерації (аналогічну симплекс- таблиці), яка містить (т + 2) рядків і (п + ]) стовпців (табл. 2.24). Стовпець Вх таблиці, як і звичайно, містить вектори {А,} базису псевдоплану л*, а стовпець Ар - базисні компоненти псевдоплану {хІОІк> }• Рядок (т + І )-індексний, його заповнюють параметрами А1**, що є оцінками векторів А,: Ау=°оу=ЕсіЛ-С;, ,е4. величина Ао—значення цільової функції при псевдоплані іє/. Ітерація к закінчується заповненням головної частини таблиці (від першого до (т + 1 )-го рядків). Таблиця 2.24 С, с. с2 — .. Сі Сп вх Ао А; а2 А) Ап С; X; хІ0 хі; Хи Хіі х;„ с2 х2 Х20 Х2; х22 Х2І х2п С; X. Х.о Х;; хі2 Хі; ... х,п Ст ,Х;п ХгпО Хт1 хт2 хт; 1 X™ А Ао А! а2 А; А„ Є є. е2 Є; На першому етапі (А' + 1 )-і ітерації з’ясовують, чи має місце пер- ший, другий або третій випадок. У третьому випадку переходимо до другого етапу. Спочатку ви- значають вектор А,, який потрібно вивести з базису. Його індекс г визначають із умови: -Гнг= тіп{х,-0 | х,0 < 0}, (2.6.14) І 134
Дослідження операцій тобто за максимальною за модулем від’ємною компонентою базис- ного розв’язку. Далі заповнюють елементи } (Я1 + 2)-го рядка, які обчис- люють за формулою: <0}. (2.6.15) V У рядку 0 заповнюють лише ті позиції, для яких хг/<0. Вектор А, який потрібно ввести до базису, знаходять із умови: А,- О, = тіп{0 } = тіп{ 1 л„ < 0}. І І Хп Після визначення напрямного рядка г і стовця 1 обчислюють еле- менти головної частини таблиці (к + 1)-ї ітерації за рекурентними співвідношеннями: ХГІ -^прі11 = г. Лгі (2.6.16) де хГІ - напрямний елемент перетворення. Обчислювальна схема - алгоритму двоїстого симплекс-методу схожа на обчислювальну схему симплекс-методу. Аналогічні й фор- ми таблиць. Різниця між методами полягає в тому, що в симплекс-методі ви- конують послідовний перехід від одного допустимого базисного роз’язку (опорного плану) задачі до іншого, а в двоїстому симплекс- методі - перехід від одного псевдоплану до іншого. Формальна відмінність між обчислювальними схемами цих мето- дів виявляється лише в правилах переходу від одного базису до ін- шого, а також в ознаках оптимальності й нерозв’язності задач. У симплекс-методі спочатку визначають вектор, що вводиться до бази- су, а потім - вектор, що виводиться з базису, а в двоїстому симплекс- методі цей порядок - зворотній. Зазначимо деякі важливі особливості двоїстого симплекс-методу. На відміну від прямого симплекс-методу, двоїстий симплекс- метод не потребує знаходження початкового базисного розв'язку 135
Заіічепко Ю.П. (опорного плану), а пошук початкового псевдоплану часто може бути легшим, ніж пошук ДБР. Розглянемо, наприклад, типову задачу мінімізації: £е,х,., (2-6.17) /=1 при обмеженнях: ;.г; >/>; , і = 1,2,...,/п, (2.6.18) 7=1 .г,>0, (2.6.19) с, > 0. (2.6.20) Для задачі такого виду знайти одразу початковий опорний план не- можливо, і тому потрібно застосувати метод штучних змінних й ви- конати значний обсяг обчислень. Водночас псевдоплан можна знайти майже автоматично. Дійсно, перейдемо від (2.6.17)-(2.6.19) до екві- валентної задачі у розширеній формі, для чого введемо вільні змінні -*,Н 1, Х„+2, • • 9 Хп+т. максимізувати х.» (2.6.21) /-• при обмеженнях: ±а,Х, (2-6-22) // / 11+1 1' г=' Запишемо обмеження двоїстої задачі: пі --- ІЛіУі *~сг І = 1, я. (2.6.23) /=! -у >0. і = їд». (2.6.24) Із нерівностей (2.6.23)-(2.6.24) бачимо, що оскільки розв’язок Уі = 0, при і = },т задовольняє усі обмеження (2.6.23), то спряжений базис утворюють вектори Ап+І,Ан+2,..........,А„+;В при вільних змінних. При цьому початковий псевдоплан такий' 136
Дослідження операцій =\,т. Отже, для задачі вигляду (2.6.17)-(2.6.18), при обмеженнях (2.6.20), застосування двоїстого си.мплекс-методу стає доцільнішим порівняно з прямим. Двоїстий симплекс-метод дас змогу в процесі ітерацій добавляти нові додаткові обмеження вже знайденого деякого проміжного розв’язку. Ця його важлива особливість широко використовується при розв’язанні задач цілочисельного програмування. Приклад 2.9. Розв’язати задачу лінійного програмування двоїс- тим симплекс-методом: максимізувати (Т|’гх?), при обмеженнях: 2 Х| - 11 х,<38, Хі -гх2^7, 4 Х| - 5 х2 <5, ХЬЛ2^О, або в розширеній формі: 2 х, + 11 х, + 1 л-з = 0 а-4 -і- 0 х5 =38, 1 Х| -і- 1 х? + 0 л'з + 1 л'4 • 0 х5 = 7, 4 Х| - 5 х2 + 0 х3 * 0 х4 * 1 л'5 = 5, Х|, ... , Хі >0. Двоїста задача записується так: мінімізувати (38у, + 7у, + 5г, ), при обмеженнях; 2У| -Чу, +4у, >1.(4) Ну, + Іу, -5у, >1. (Л,) У і. г,, у, >0 (.4,),(И2).() Виберемо за спряжений базис вектори [А„ Аз, А5}. Тоді розв’язком системи лінійних рівнянь: 2у, + 1у, + 4 у, =1, і) =0, у, = 0. У, = 0, )’, = 1, V, = 0. 137
іаііченко Ю.П. Підставивши цей розв’язок в обмеження {А,} і {А4}, бачимо, що вони також виконується, а тому {А-, А3, А5} - спряжений базис дво- їстої задачі Знайдемо псевдоплан Х(, прямої задачі. Для цього розв’яжемо систему рівнянь: Ао= А|Х,о + Аре™ + А 5X50. Звідси Хю = 7; хзп = 24; х5о = -23. Обчислюємо коефіцієнт рокладання { х„ }: А2 ~ А|Х)2 + АзХ32 + А5X52 11 2 1 0 1 - 1 л,_, + 0 + 0 5 4 0 1 і знаходимо х;2 — 1; х32 = 9; х52 = -9. Аналогічно маємо: А4 = А;Хі4 + АзХ34 + А5Х34 Розв’язок цієї системи рівнянь' х]4 = 1; х34 = -2; х,4 = -4. Таблиця. 2.25 і с, 1 1 0 0 0 в, Ао А] а2 А3 А4 А? 1 X. 7 1 1 0 1 0 0 Х3 24 0 9 1 -2 0 0 Х5 -23 0 0 -4 1 д 7 0 0 0 1 0 е 0 ’/4 Перша ітерація. Визначимо напрямний рядок. Це рядок Х5> оскільки Х3о = -23 < 0. Знаходимо напрямний стовпець, для цього заповнимо рядок 6у. Напрямний рядок А,, тому що е =0<е = -• Отже, напрямний еле- 2 4 4 мент Х52 = -9. Виконавши одну ітерацію симплекс-методу, одержи- мо таблицю 2 26. 138
Дослідження операцій Таблиця 2.26 с, 1 1 0 0 0 Ах Ао А; А, Аз А4 А3 1 X, 40/9 1 0 0 5/9 1/9 0 х2 1 0 0 1 -6 1 1 Х3 23/9 0 1 0 4/9 -1/9 Д 7 0 0 0 1 0 Оскільки всі елменти стовпця Ао х,о > 0, V/ є 1,-„ то знайдено оп- тимальний план, причому _40. _23 д ’ д Цільова функція £тгх = 7. 2.7. ДОСЛІДЖЕННЯ МОДЕЛЕЙ ЗАД А Ч ЛІНІЙНОГО ПРОГРАМУВАННЯ НА ЧУТЛИВІСТЬ Теорія двоїстості дає змогу аналізувати моделі ЛП на чутливість. Розглянемо звичайну задачу ЛП вигляду: п максимізувати — тах£(х), (2.7.1) у-ї при обмеженнях: У, < 6, ,і = 1,2,.,.,т; (2.7.2) 7=1 х,>0. Нагадаємо її економічну інтерпретацію. Цільова функція £(х) - це дохід від реалізації плану виробництва х; - інтенсивність вико- ристання /-го ресурсу при у-му способі виробництва; £, - наявний рі- вень /-го ресурсу. 1. Варіювання обмежених ресурсів. Припустимо, що значення ре- сурсів Ь=|| £, Ц варіюються. Тоді виникають питання: при яких варіаціях правих частин обмежень знайдений оптимальний план х0 не змінюється; 139
Заііченко Ю.1І. як ці варіації впливають на функцію максимального доходу Відпо- відь на ці питання дас аналіз відповідної задачі ЛП на чутливість. Нехай обмеження Ь, одержують деякі варіації Д6„ що приводять до варіації плану х(, х0 х0(Ь+ДЬ) і функції (х0(Ь11+ДЬ)). Припус- тимо, ці варіації ДЬ такі, що план х0(Ь+ДЬ) лишається допустимим (тобто задовольняє умові невід’ємності). Знайдемо відношення при- росту ц. ф. АА™К(Ь)= £,лгх (хп(Ьо+ДЬ))- £тах (х0(Ь)) до ДЬ Маємо: Ііт ^п1ах(Ь) = д£тах(Ь), (2 7 3) дл,—>о Д6( дЬІ де Ь розглядається як варійований параметр. Пригадаємо, що відповідно до основної теореми двоїстості: ^»(Хо) = £сЛ° = Е^', (2 7.4) / * і підставляючи (2.7.4) в (2.7.3), дістанемо: аг-тах(Ь) = у?,і = 1,2,...,т. (2.7.5) дЬі ' Таким чином, оптимальні значення двоїстих змінних у® визна- чають внесок кожного ресурсу в дохід £тах при оптимальному розв’язку' Хо. Ця величина дорівнює додатковому доходу при збіль- шенні і-го ресурсу Ь, на одиницю за умови, що ресурси використо- вуються оптимальним чином. Отже, величини у® є показниками важливості відповідних ресур- сів для системи Чим більше значення у,0 при деякому і, тим суттє- віший внесок ї-го ресурсу в функцію максимального доходу і тим вигідніше його збільшення. Якщо для деякого у,-=0, то ї-й ре- сурс не є суттєвим обмеженням для системи. Зауважимо, що цей висновок добре узгоджується з результатами теореми 2.6 двоїстості, яка пов’язує величини у® з обмеженнями прямої задачі. Позначимо через А, матрицю оптимального базису задачі ЛП при векторі ресурсів Ь Очевидно відповідний оптимальний розв’язок: хоггг А , Ь. 140
Дослідження операцій Припустимо, що ми змінили вектор ресурсів Ь=|| Ь, Ц на Ьн= Ь+ ДЬ й хочемо дізнатися, як це вплине на оптимальний розв’язок. Для цього знайдемо новий відповідний базисний розв’язок: хн = А 'ДЬН = А 'ДЬ+ДЬ). Якщо всі компоненти х,н > 0, то цей розв’язок х„ = [л,н] оптимальний (тобто оптимальний базис не змінився). У супротивному разі потрібно реалізувати пошук нового розв’язку, для цього можна застосувати дво- їстий симплекс-метод, починаючи з поточного базисного розв’язку хн. 2. Варіювання цільової функції. Тепер розглянемо випадок, коли варіюються коефіцієнти {с,},У= 1,2,...,л. Спробуємо визначити умо- ви, за яких знайдений раніше оптимальний план лишається оптима- льним при таких варіаціях. Нехай варіація 5С стосується коефіцієнта сг : с" = сг + 5С . По- значимо через Л, Лсб множину індексів базисних та небазисних ве- кторів в оптимальному плані х0 відповідно. Знайдемо значення оцінок Д*”’ після варіації с, для двох випадків: 1) гє Унс5, тоді Д(”’ = Д; для усіх/>г; Д(гн) = £ с,а,г - (сг + 8Сг) для]=г ; (2.7.6) ієУ6 2) ге Ус, Очевидно, для збереження оптимальності попереднього плану при варіаціях коефіцієнта сг необхідно і достатньо, щоб не змінилися знаки оцінок Д^ для всіх небазисних змінних. Тому із умов Д^^О, згідно з формулами (2.7.6) і (2.7.7), можна визначити допустимі варі- ації коефіцієнта 5Сг, при яких зберігається попередній оптимальний розв’язок. Раніше ми розглядали варіації лише одного коефіцієнта цільової функції. Цей же підхід можна застосувати і тоді, коли варіюються декілька коефіцієнтів с, одночасно. 141
Зайченко Ю.П. У цьому випадку одержимо співвідношення, аналогічні (2.7.7), в яких оцінки Д) будуть функціями вже декількох параметрів (5;, 52>..., 5,). РОЗВ’ЯЗУЮЧИ раЗОМ СИСТеМу НерІВНОСТеЙ ВИГЛЯДУ Д (С|, с?,..., с,)>0,у є Лсб знаходимо умови для варіацій 8С , при яких попередній базис лишається оптимальним. Ця задача належить до класу задач параметричного програмуван- ня [12]. 3. Варіювання елементів матриці обмежень А. Розглянемо лише випадок варіації компонентів небазисних векторів А7=[ау], і=\,2,...,т, оскільки дослідження варіацій компонент базисних векторів А/ досить складне, легше заново розв’язати задачу з новими умовами. Отже, припустимо, що небазисний вектор А,=[а„,,] змінився. По- ірібно з’ясувати, чи залишиться оптимальним поточний базис. Для цього корисно застосувати теорію двоїстості. Нехай оптимальний базис прямої задачі А„ а відповідні оптимальні значення двоїстих змінних у°. Як відомо, умова оптимальності Ду>0, V ]є Леб- Вод- ночас, згідно з (2.6.11), Ду = Еа^уО-С;. Отже, якщо ієТ6 дМ = ^а^у® - Су > 0, то попередній базис лишається оптимальним. 4. Додавання ще одного способу виробництва. Припустимо, що початкова задача має вигляд: п максимізувати ^^х^ , (2.7.8) /=і при обмеженнях: £ау-х,<Ь, (2.7.9) 3=1 х,>0. Припустимо, що знайдено оптимальний базис {А,}, іє Ді відпо- відні оптимальні розв’язки прямої х® і двоїстої у® задач. 142
Дослідження операцій Припустимо, що додається ще один (л+1)-й спосіб виробництва, якому відповідає вектор технологічних витрат А„41=[а, ,,+1] і коефі- цієнт ц. ф. функції с„41 Отже, матимемо таку задачу: п максимізувати ^С]Х] +с„+1л„+], >1 при обмеженнях: п £ А + АИ+|Х„+| < Ь, ;=і (2.7.10) (2.7.11) (2.7.12) л>0, у=1,2,...,п+1. Необхідно визначити, чи зміниться при цьому попередній опти- мальний розв’язок і при якому значенні коефіцієнта с„+і випуск (и+1)-го продукту буде рентабельним (тобто л®+] >0). Для того, щоб оптимальний розв’язок після введення вектора А,,^ не змінився, необхідно, щоб вектор А„+і і змінна х„+і лишалися неба- зисними, тобто Д„+1>0. На основі теорії двоїстості одержимо: А V 0 Ап + 1 — 2^аіп+}Уі ~ сл+1 • /є/б Якщо £«ІН+іуО -сп+| > 0 , то попередній оптимальний план не ієУ зміниться після включення випуску (л+1)-го виду продукції. Якщо Ж £«ш+1уР -С„+і <0, то випуск (п+1)-го виду продукції ієУ стає рентабельним, і попередній оптимальний план змінюється. Приклад 2.10. Підприємство випускає вироби двох видів, для виготовлення яких використовуються ресурси двох типів. Нехай прибуток від про- дажу виробів становить відповідно с\=2 та с2=3, обсяг ресурсів дорі- внюють /?і=32, £>2=24 відповідно. Норми витрат ресурсів на одиницю випуску задаються такою матрицею: 143
Зайченко Ю.П. 1. Необхідно знайти оптимальний план випуску, що максимізує сумарний дохід та дослідити чутливість цільової функції до варіації обмежених ресурсів, тобто як зміниться сумарний дохід при збіль- шенні на одиницю кожного з видів ресурсів. 2. Нехай перший ресурс Ь-, збільшився до 35, а другий зменшився до 20. Як зміниться при цьому оптимальний розв’язок, чи залишить- ся оптимальним попередній базис? 3. Нехай вводиться додаткове обмеження на випуск першого продукту Х|> 6. Визначити новий оптимальний план. 4. Нехай підприємство може додатково випускати третій вид продукції, для якого сз=4, а норми витрат ресурсів дорівнюють а)3=3; а2з=2. Знайти оптимальний план за цієї умови і визначити, при якому значенні сз виробництво третього виду виробів буде рентабельним. Розв'язання. Математична модель задачі має такий вигляд: тах (2 Хі+3 х2), при обмеженнях: З Хі+2 х2< 32; 1 Х|+2 х2 < 24; Хі>0, х2>0. Розв’яжемо цю задачу симплскс-методом і через дві ітерації знайдемо оптимальний план (табл. 2.27). Одержимо х° =4; х° =10; тах (2 Х|+3 х2)=38. Матриця А”’ утворена нсбазисними векторами А4, Д5 в табл. 2.27 Табліщя2.27 Сі 2 3 0 0 вх До А, Аз а4 Аз 2 X! 4 1 0 £ 2 2 3 Х2 10 0 1 4 3 4 д 38 0 0 4 5 4 144
Дослідження операцій Оптимальні значення двоїстих змінних знаходимо в індексному ряд- ку габл. 2.27: і ® = д(4пр) = -; г” = д5,р) = - - Аналізуючи значення у|°, 4 4 V®, бачимо, що при збільшенні на одиницю першого ресурсу ми оде- ржимо приріст ц. ф.: Дз = - 1 =-. а при збільшенні на одиницю друго- 4 4 ГО ресурсу Д;2=у?=-. Отже, другий ресурс виявляється більш важ- 4 ливим для системи і його підвищення вигідніше. Нехай перший ресурс збільшено до 35 одиниць, а другий змен- шено до 20 одиниць, тоді новий вектор Ар=[ 35; 20 ]т. Знайдемо но- вий базисний розв’язок для цього вектора: А >А«- н |-Ах А0 - 2 2 1 _ ґ 2 3 X 35 20 - 15’ 2 25 _А2 1 — — 4 4 . 4 . Оскільки х.н = — > о уї = — > 0, то цей розв’язок буде оптимальним 4 2 ’4 (бо не змінилися оцінки Д4 та Д5 для нсбазисних векторів). Нехай введено додаткове обмеження Лі>6. Зведемо його до стан- дартного вигляду: хі-х6=б—>-Хі+х6=-6. Допишемо цей рядок до симплекс-таблиці 2.27, і одночасно праворуч до неї стовпець А6. Одержимо головну частину табл. 2.28. Таблиця 2.28 с, 2 3 Вх Ао А| а2 а4 а5 Аб 2 Хі 4 1 0 _1_ 2 _!_ 2 0 3 %2 10 0 1 _2 4 3 4 0 Лб -6 -1 0 0 0 ] х6 -2 0 0 1 2 2 ] 7і 145
іаііченко Ю.1І Аналізуючи її бачимо, що базисний стовпець А не с одиничним, і потрібно виключити змінну х. в рядку \6. Для цього додамо до ряд- ка Х(, рядок Л'і, в результаті одержимо новий рядок , який дописує- мо до табл. 2.28 знизу, а рядок х(, можна викреслити. Оскільки компонента х'60 = -2<0. то базисний розв’язок {.\| , л(, х'6} це псевдоплан: і далі для продовження ітерацій застосуємо дво- їстий симплекс-метод. Напрямний рядок х'б, напрямний стовпець Д5. Виконавши одну іте- рацію двоїстого симплскс-методу, отримаємо симплекс-таблицю 2.29. Таблиг/я 2.29 С, 2 3 вЛ Ао А. а2 а4 А5 А6 2 6 1 0 0 0 -1 3 *2 7 0 1 1 2 0 3 2 Л'5 4 0 0 -1 1 -2 А 33 0 0 3 2 0 5 6 Оскільки х, =6>0, д2=7>0, то цей новий розв’язок оптимальний. При цьому £.,ях=33. Перевіримо доцільність введення третього способу виробництва. Для цього розглянемо стовпець _ З 2 Згідно 3 теорією ДВОЇСТОСТІ Д3 =аІзУ10+а21^-<?3 =3 ^ + 2 |-4=-|<0- Оскільки Дз<0 , то стовпець А3 доцільно ввести до базису. Згідно з методом оберненої матриці обчислюємо ЙОГО ВИГЛЯД Лз , в якому йо- го можна дописати до таблиці 2.27: 146
Дослідження операцій Дописавши стовпець Аз до симплекс-таблиці оптимального розв’язку вихідної задачі (табл. 2.27), одержимо табл. 2.30. При цьо- му Дз=-| Таблиця 2.30 І с, 2 3 4 вл Ао А, А, Ад а5 Аз 2 X} 4 1 0 і 2 2 2 ) 2 3 10 0 1 2 4 3 4 3 4 А 38 0 0 2 4 5 4 1 Виконавши одну ітерацію симплекс-методу, одержимо симплскс- таблицю 2.31. Таблиця 2.31 Сі 2 3 4 в. Ао А; А, Ад Аз Аз 4 *з 8 2 0 1 -1 1 3 Х2 4 3 2 1 -1 3 2 0 А 44 7 2 0 1 2 2 0 Оскільки всі елементи її індексного рядка А; > 0, то цей розв’язок оптимальний: г® =8; л® =4. При цьому значення ц. ф. збільшилося до 44 одиниць 7* 147
Зийченко Ю .П. 2.8. БАГАТОКРИТЕРІАЛЬНІ ЗАДАЧІ ЛІНІЙНОГО ПРОГРАМУВАННЯ У багатьох практичних задачах дослідження операцій, що опи- суються моделями ЛП (наприклад, із сфери економіки) вибір рішен- ня за одним показником якості може бути неадекватним до змісту розв’язуваної задачі, бо потрібно враховувати одночасно декілька таких показників критеріїв [6; 9; 21]. Це призводить до потреби розв’язання багатокритеріальних задач ЛП. Нехай задано деяку множину цільових функцій /, (X), де /(Х) = с,гх = £сл,/ = М7, (2.8.1) /=і причому перші т цільові функції треба максимізувати, а інші (М-т) - мінімізувати. На вектор керуючих змінних X = {х;.},у = 1,/?накла- демо лінійні обмеження виду: АХ<В(ЬгІ), (2.8.2) ху>0,7 = й- (2.8.3) Для розв’язання цієї задачі застосовується метод обмежень, опи- саний у розд. І. Перетворення, що приводять критерії до безрозмір- ного вигляду, у розглядуваному випадку матимуть такий вигляд: а) для цільових функцій, що максимізуються: —СТ х *</(*)) = е 1 ={1.....................т}’ (2 8 4) Ч л, ~Ч літт б) для цільових функцій, що мінімізуються: ^(/(Л)) = ЛХ , V/ є І, = {Ш + І.„, + 2,...,Л/}, (2.8.5) де Х;° - розв’язок, що задовольняє умови (2.8.2), (2.8 3) і оптимізує і цільову функцію; 148
Дослідження операцій X ,„(Х,_) ~ розв’язок, що мінімізує (максимізує) відповідну ц. ф. на допустимій множині розв’язків. Компромісним розв’язком даної багагокритеріальної задачі буде такий ефективний розв’язок X, для якого зважені відносні “витрати" однакові і мінімальні, тобто: р№ = р2^(Х) = - = Р„ЛИ(Х) = *Отіп. Згідно з методом обмежень, шуканий компромісний розв’язок можна знайти розв’язавши систему лінійних нерівностей: СГХ > СГХ° -^-(СГХ° -С,' X т1п ), V» є /,; (2.8.6) Р, к СГХ < СГХ° +—(с;хт„ - С[Х“їЛі є Ц; Р, АХ<В, х, 0,у - |,л. для мінімального значення параметра А(), при якому ця система сумісна. Розв’язок системи (2.8.6) еквівалентний розв’язку такої задачі ЛП [33]: мінімізувати £0=хп+і, (2.8.7) при обмеженнях: Е^і>х>+^.„+іх„+1+^1 >0; /=і 0; (2 8 9) ЇХм/Ч + ^і-^і + *0; 7=1 -Ьі <о /=І гі г-і (2.8.10) 149
Зайченко Ю.П. де х/ > 0. у = 1. п > - Р,с,у,/^\.н;і є /,; ^Е^(х‘<”-хг,т„),/є/|; /=1 л=і (2.8.11) (2.8.12) (2.8.12) ~Р,І^'уієІ.; (2.8.13) « І /=і Розглянемо приклад. Приклад 2.11. максимізувати/і(х) = х( + 4х2 (1); мінімізувати /2(х) = 3*і - х2 (2), при обмеженнях: <5, : х, + 2х, > 4; <5, : Зх, + х, > 7; г>,: -Зх, + 5х2 < 17; 8, :5х,-х, <23; 4, : Зх, - 4х, < 7; х„х, > 0. Допустиму множину розв’язків задачі К.(х) зображено на рис. 2.5. у вигляді багатокутника АВСБЕ. Неважко отримати графічно оптимальний розв’язок цієї задачі за критерієм /і(х). Він знаходиться в точці С(хі = 6; х2 = 7). Йому відповідаєД = Дх] - 6; х2 = 7) = 34. 150
Дослідження операцій Мінімальне значення буде в гочш Е(х1 = 3; х? = 0,5),/тп = 5. За другим критерієм ^(х) оптимальний розв’язок буде в точці В( 1,4), йому відповідає д0 =/,(і,4) = -1, а найирше значення критерій /2(х) - у точці 0(5,2): /21ЛМ = із. Відрізок ВС являє собою ефективний план. Розглянемо випадок, коли критерії рівноцінні, тобто р, = р-> бу- демо шукати компромісний розв’язок, що забезпечує мінімальні однакові відносні витрати. Функції відносних витрат дорівнюють- II", 2 /і" - /і™. р,И',(х) = 1 34-X] -4х, , 2 29 (3) І = І Зх, - X, + 1 . 2 7 2 14 Запишемо еквівалентну задачу ЛП згідно з (2.8.7)-(2.8.10): мінімізувати х3=А0, при обмеженнях: /і"-/і (О 1 34-х, 4х, (4) " /1ШШ 2 29 Д (X)- /2 Чч-х.+і , ; (5) Д^ ~ Г? 2 14 + 2х, > 4 Зх, + х, > 7 -Зх,;+5х? <17 5х, -х, < 23 Зх,-4х, <7 х, >0.x, >0.x, >0. (6) Після елементарних перетворень зводимо цю задачу до вигляду: мінімізувати х3, при обмеженнях: х,+4і-,+58ї, >34. -Зх,+х2+28х3 ї 1 х, + 2х, > 4; Зх, + > 7 ; Зх,-5х2>-17; —5Х| + х, > —23; -Зх, + 4х; > -7; (8) И',1 = р,И'І(х)^ 7** 151
іаііченко Ю.П. V >о.л, го..г3>о- (9) Ця задача має її = 3 змінних та т = 7 обмежень. Оскільки /и > її, для спрощення пошуку оптимального розв’язку перейдемо до дво- їстої задачі, спряженної з (7)-(9). Вона має такий вигляд: максимізувати (З4.г: + .г, + 4х, + 7 _г4 -17 у, - 23) 6 - 7 у 7), (10) при обмеженнях: 1 г: - З V, + 1г, + 3 г4 + З}, - 5 г6 - Зі, < 0; 4г. +1 у, х2 г, +1Г4 -5 З, + І36 + 4 г, <0; 58гх + 28з 3 < 1; у, >0,з з >0,г, £ 0. Розв’язуватимемо її симплскс-методом. Для цього введемо віль- ні змінні і заповнимо початкову симплекс-таблицю (табл. 2.32.). Результати послідовних ітерацій наведено в таблицях 2.32 2.35. Таблиця 2.32 с. 34 1 4 7 -17 -23 -7 0 0 0 Вх Ас Аі а2 Аз Ад а5 А6 а7 А« Ау Ац) <— 0 V. 1 -1 3 3 3 -5 -3 1 0 ¥« 0 4 1 2 1 -5 1 4 1 0 ¥1С 1 58 28 0 0 0 0 0 1 А 0 -34 -1 -4 -7 17 23 7 0 0 0 152
Дослідження операцій Таблиця 2.33 Сі 34 1 4 7 -17 І -23 -7 0 0 0 Вх Ао А, а2 Аз А4 а5 Ао а7 а8 Ад Аю 34 V, і 0 1 -1 3 3 3 -5 1 0 ¥д 0 0 5 -10 -11 -17 21 16 -4 1 0 ¥І0 1 0 86 -174 -174 -174 290 174 1 д о 0 -33 98 95 119 -147 -95 34 0 0 Таблиця 2.34 Сі 34 1 4 7 -17 -23 -7 0 0 0 1 Вк Ао А, а2 Аз А> А, А6 а7 Ав Ад Аю 34 V, о 1 0 1 -1 1-ї- £ 5 Ґ 5 1 5 0 1 ¥, 0 0 1 -2 11 5 _]7 5 21 5 16 5 _4 5 2 5. 0 <- 0 ¥» 1 0 0 -2 15— 5 оо 1 -71 — 5 -юи 10,8 -17,2 1 Д 0 0 0 22 18 -13 7 28 5 9 0 Табіиця 2.35 с, 34 1 4 7 -17 -23 -7 0 0 0 Вх Ад А А3 Аз Ад Аз А6 А, Ае Ад А;о 34 ¥ 0,068 1 0 0,932 0,851 0 -1,04 -1,144 0,236 0,141 0,068 1 ¥, 0,058 0 1 -2,06 -2,63 0 2,15 0,284 -0,49 -0,295 0,058 17 Уз 0,0168 0 1 0 0,017 0,128 1 -0,6 -0,855 0,091 -0,145 0,016 1 д 0,175 0 Іо 26,27 15,02 0 0,8 16,9 3,03 5,22 0,175 V 153
іаіічеико Ю.ІІ. Оскільки в таблиці 2.35 всі оцінки д >о. то знайдено оптималь- ний розв’язок двоїстої задачі. Скориставшись співвідношенням С = д'Х"? , відшукаємо оптимальний розв’язок баї атокри геріальної прямої задачі. Маємо: х" =| А';'"’ н Д7‘ |= 3.03; х” =| Д';”! |= 5,22; х’=іС |=А0 =0,175. Цьому розв’язку відповідає точка Р на відрізку ВС (рис 2.5 ). Йому відповідають мінімальні відносні втрати і відхилення від оп- тимальної о значення для обох критеріїв: (/і<Г1°• *2°)) = |-°- = 0.175 = к0, 2 /і /1 тіп И' (/2(х°.х")) = = 0Л75 = к„ Ділах 'ї Розглянемо тепер графо-аналітичний метод знаходження комп- ромісного рішення Для цього використовуємо дві умови: - у шуканій точці відносні зважені відхилення повинні бути рів- ні: р|иі(л-) = р2и’,(х); - ця точка повинна знаходитися на відрізку ВС, що визначається обмеженням 83 . Отже, складемо систему рівнянь: 34-х, - 4-у, _ Зх, х, з-1 29 14 -Зх, з 5х, =17 Вирішуємо цю систему й одержуємо 117,2х, = 355, звідки знахо- димо шукане рішення: х" =3,03; х" =5,22. Воно збігається з рішен- ням, знайденим раніше симплекс-методом. 154
Дослідження операцій Глава З ТРАНСПОРТНА ЗАДАЧА ЛІНІЙНОГО ПРОГРАМУВАННЯ 3.1. ПОСТАНОВКА І ОСНОВНІ ВЛАСТИВОСТІ ТРАНСПОРТНОЇ ЗАДА ЧІ Транспортна задача (Т-задача) є однією з найпоширеніших спеці- альних задач ЛП Окремі постановки задачі вперше розглянуто спе- ціалістами в галузі транспорту, зокрема О.Н.Толстим [18; 59]. Перша строга постановка Т-задачі належить Ф.Хічкоку, тому в зарубіжній літературі її називають проблемою Хічкока. Перший точний метод розв’язування Т-задачі розробили Л.В.Кан- горович і М.К.І авурін. Постановка Т-задачі. Нехай в пунктах А-....А,„ випускають де- який однорідний продукт, причому обсяг виробництва в пункті А, ста- новить «, одиниць, і = 1.т. Припустимо, що цей продукт споживають в пунктах ВВ„, а обсяг споживання в пункті В, становить Ь, оди- ниць, у = 1,...,л. Припустимо, що з кожного пункту виробництва можли- ве перевезення продукту в будь-який пункт споживання. Транспортні витрати на перевезення одиниці продукту з пункту А, в пункт В, дорів- нюють с„ (і = 1, ,.,т: / = 1.п). Задача полягає у визначенні такого плану перевезень, при якому попит всіх споживачів В, повністю задово- льняється, увесь продукт з пунктів виробництва вивезений і сумарні транспортні витрати мінімальні Умови Т-задачі зручно подати у вигляді табл. 3.1 Нехай хіг кількість продукту, що перевозиться з пункту А, до пункту В,. Треба визначити множину змінних х,г > 0 ,і = 1, у = 1 ,...н , що задовольняють умови: п ____ Xх// /-і (3.1.1) (3.1.2) Х\ = М = 1’Л’ 1=1 і таких, що цільова функція -/*** 155
Зайченко Ю.П. 1=1 7-| досягає мінімального значення. Умова (3.1.1) гарантує повний вивіз продукту з усіх пунктів ви- робництва, а (3.1.2) означає повне задоволення попиту в усіх пунктах споживання. Таким чином. Т-задача являє собою задачу ЛП з ти числом змінних, та ( т + п ) обмеженнями рівностями. Змінні ху зручно задавати у вигляді матриці: X X ....X II 12 1« Л X ...X пі І їй 2 ЯІИ (3.1.4) Матрицю X, що задовольняє умови Т-задачі (3.1.1) і (3.1.2) нази- вають планом перевезень, а змінні ху - перевезеннями. План Хо, при якому цільова функція мінімальна, зветься оптимальним, а матриця С= с,| — матрицею транспортних витрат. Графічний спосіб задавання Т-задач показано на рис. 3.1. 156
Дослідження операцій Відрізок А,В, називають комунікацією. На всіх комунікаціях вка- зують величини перевезень X,/. Вектор Р,у, компоненти якого складаються з коефіцієнтів при змін- них л„ в обмеженнях (3.1.1) і (3.1.2), називають вектором комунікацій: Р„г = 0,...,0,1,0,...,0,1,0,...,0 Вводять також вектор виробництва-споживання Ро, де ро = [а1,а2,...,оя,^Д,...,Ья]. Тоді обмеження (3.1.1) і (3.1.2) можна записати у векторній формі: (3-1-5) Властивості транспортної задачі 1. Для розв’язання Т-задачі необхідно і достатньо, щоб задоволь- нялась умова балансу: т п Хаі = Ї.Ь,, (3.1.6) ,=і тобто, щоб сумарний обсяг виробництва дорівнював обсягу споживання. 157
Заііченко Ю.П.. Доведення Нехай змінні х„, і = / = 1,..,л задовольняють умо- ви (31.1), (3 1 2) Підсумовуючи (3 1.1)по і, а (3.1 2) по у , магмо- т т п її її т І=1 і=| /=1 ;=] /=1/=1 ш л Звідси , що і доводить необхідність умови балансу Т- /=і /=і задачі. Нехай справедлива умова (3.1.6). Позначимо х =------------- , де а т н а = = 1Л Неважко довести, що з;, складає план задачі. Дійсно- /=| и 1=1 ПІ їх ПІ __ 7=1 а /=| Таким чином, доведено достатність умови балансу для розв’язання Т-задачі. 2. Ранг системи обмежень (3.1.1), (3.1.2) дорівнює г = т - п 1 Доведення Оскільки кількість рівнянь (3.1 1), (3.1.2) дорів- нює //?=//, то ранг цієї системи г<т + п. Нехай, набір задо- вольняє всі рівняння, крім першого. Покажемо, що він задовольняє також і перше рівняння. Очевидно П Ні П Ні н >=1 /1/1 і-2уТ Оскільки =о../ = 2.т; / ! =Л,,У = '."- то 158
Дослідження оперений НІ >1 Н Ш ГІ Ш і=1 і=] /-1 і-2 /-І ЗВІДКИ п її т Враховуючи умову балансу (3.1.6), одержуємо п ( /и т = ї>, £«,=«, 7=1 , =і і-2 отже, перше рівняння системи (3.1.1) також задовольняється. Таким чином, ранг системи рівнянь (3.1.1), (3.1.2) і<пі~ п- 1. Доведемо, що ранг систем рівнянь (3.1.1), (3.1.2) дорівнює точно т + н -1. Для цього складемо матрицю з перших (ні + п 1) компо- нент векторів р.н, р,я...., Ршп, Р.,, Р]2.. Р,„ , ГР>„ р2„ .. р ПІП Рц р12 . •• р„-. 1 0 0 1 1 1 і 0 1 .. 0 0 0 . .. 0 0 0 1 0 0 . .. 0 - - - - — 0 0 .. 0 1 0 . .. 0 0 0 .. 0 0 1 .. 0 0 0 0 0 0 . •• > ' У Л Ч - > пі п ! Очевидно, що ця матриця невироджена. Тому вектори {Р„,Р2п,...,Р„,„,РІІ,Рі2,—,Р1П ]} утворюють базис. Оскільки базис сис- теми складається із (т+п-\ ) векторів, то і ранг системи (3.1.1), (3.1.2) г = т + п —1. Двоїста транспортна задача (Т -задача). Для Т-задачі, як і для довільної задачі ЛП, існує двоїста задача до неї Т -задача. Змінні Т -задачі позначимо V-, г2, ..,у„, -иь -і/2, ..., -и„,. Теорема 3.1. Т -задача пас розв’язки і якщо ХиП„ = |х,; , 159
Зийченко Ю.П ...................................." оптимальні розв ’язки Т і Т -задачі відповідно, пю Е Ес л ..т„ = Еь,г, — - Е а>“- —. • (317) /-І /-1 і=\ і=1 Якщо прийняти до уваїи, що и, - вартість одиниці продукції в пункті А,, а V; - вартість після перевезення в пункт В, , то зміст тео- реми буде такий: Сумарні транспортні витрати при оптимальному плані переве- зення дорівнюють збільшенню сумарної вартості продукції після її перевезення в пункти споживання. Змінні V,, и, називають потенціалами пунктів В„ А, для Т-задачі. Таким чином, теорема 3.1. стверджує, що при оптимальних розв’язках значення цільової функції прямої і двоїстої Т-задач рівні. Справедливість теореми 3.1. випливає з основної теореми двоїс- тої ЛП (теорема 2.5). Сформулюємо необхідні та достатні умови оптимальності плану Т-задачі. Теорема 3.2. Для оптимальності плану Хи Т-задачі необхідне і достатнє існування таких чисел г/( іь, .... г,„ -іь, ...,-ипІ, що і)-и, <с,,, і= 1, (3.1.8) При цьому, якщо х<)°' > 0- то ~ и< ~ сч- Справедливість цієї теореми випливає із загальних ідей теорії двоїстості лінійного програмування (зокрема, теореми 2.5, 2.7). Дамо економічну інтерпретацію умов теореми 3.2. Різницю між потенціалами пунктів В,, А,, тобто величину V, - и,, можна трактувати як приріст цінності одиниці продукції після її пе- ревезення із пункту А, в пункт В,. Тому, якщо V, - и, < сц , то переве- зення комунікацією А, В, нерентабельне, і х,; - 0. Якщо V, - и, = Сц, то таке перевезення рентабельне, і г*01 > 0, (див. Теорему 2.7). 160
Дослідження операцій Транспортна задача з обмеженими пропускним и здати остям и. Важливою з практичного боку є Т., -задача, в якій накладено об- меження на пропускні здатності комунікацій. Нехай - пропускна здатність комунікації А, В, Тоді хі?. < с?(/,/' = !,пг; / - 1, п. (3.1.9) Т^-задача полягає в мінімізації ц. ф. (3.1.3) при обмеженнях (3.1.1), (3.1.2), (3.1.9). Навіть у випадку розв’язності Т-задачі, Т,/ - задача може виявитись нерозв’язною, бо величини пропускних здат- ностей можуть бути недостатніми для повного вивезення продуктів з п. А„ та повного ввозу продуктів до п. В,. Тому для Т-задачі вводять ще дві умови: > а,,і = \,т, (3.1.10) /=| ПІ _____________ = (3.1.11) І=І Однак і при додаткових умовах (3.1.10), (3.1.11) Т<г задача не зав- жди мас розв’язки. Для встановлення сумісності всіх умов роблять спробу побудувати довільний план Т-задачі. Якщо вдається, то сис- тема рівнянь (3.1.1), (3.1.2), (3.1 9)-(3.1 11) сумісна. В іншому випад- ку Т^-задача немає розв’язку. Теорема 3.3. Для оптимальності плану Хи Т-задачі необхідне і достатнє існування таких чисел V/. у?, .... V,,, -щ, -и?, —,-ит , для яких: V, -иі <сір якщо х’,и> = 0, (3.1.12) у^и^с^, якщо 0 < х'“* < , (3.1.13) V, >с„, якщох‘°’ = сі,і (3.1.14) Зміст умов оптимальності (3.1.12)—<3.1.14) полягає ось у чому: якщо приріст вартості продукту у - и, менший від транспортних витрат Сц , то таке перевезення збиткове, а тому х|®’ = 0. Якщо ж при- ріст вартості продукту у - и, більший за транспортні витрати с,7 161
іайченко Ю.П____________________________________________________ (3.1.14), то це перевезення прибуткове, а тому його величина мас бу- ти максимальною, тобто є’,01 = </„. Таким чином, теорема 3.3 по суті виражає принцип рентабельно- сті для Т,/-задачі Відкриті транспортні моделі. Існують практичні задачі, в яких умова балансу £а, = не виконується. Такі моделі мають назву і=1 і-\ відкритих. Можливі два випадки: т п 1)ї>, < Хьг т п 2)Х«, > ЇА- >=і /»і У першому випадку повне задоволення попиту неможливе. Таку задачу можна звести до звичайної транспортної задачі таким чином. Позначимо через г величину штрафу за незадоволення попи- ту на одиницю продукту в пункті В,. Тоді потрібно мінімізувати т п п Ї.Хс,іхи + ї.г}Уі • (3.1.15) І=1 /=1 /=1 при обмеженнях: л ___ X*» ~а,^ = і» __ ЕХ ^^,; = і,л, Г=І т де у, = />( "Xх/, ~ незадоволений попит. і=1 Задачу (3.1.15) зводять до звичайної Т-задачі введенням фіктив- ного пункту виробництва А,„-і, з обсягом виробництва - ІД і транспортними витратами сго+1 , = г ,] - !,и. У тако- /=1 му випадку Т-задача матиме вигляд: т+І п мінімізувати , і-і і-і 162
Дос лідження операцій при обмеженнях: п Е-\ =°.; ЛІТІ »и У знайденому розв’язку хоп1 вважаємо всі перевезення із фіктив- ного пункту Л,„+і такими, шо дорівнюють нулю, тобто Сл=о.Х/=й. Розглянемо тепер другий випадок. Введемо фіктивний пункт В„+і з обсягом попиту /ї,,,! = Xе/" • Нехай це збитки (штраф) в - । і' пункті А, за одиницю невивезенного продукту. Позначимо через Сані = гі питомі транспортні витрати на перевезення одиниці проду- кту з А, в В„+І . Тоді відповідна Т-задача запишеться так: /и л+1 мінімізувати £ Есохч , (3.1.16) /=і /=і при обмеженнях: лч-і _____ Х-г, = а,;» = !,»>. (3.1.17)43.1.18) Е Л9 = Ь,'.І = '•« + 1 Г = І У знайденому розв’язку л„„„, всі перевезення х,п¥. до фіктивного пункту В„+і вважають такими, що дорівнюють нулю. Опорні плани Т-задачі Опорним (базисним) планом Т-задачі зветься будь-який її допус- тимий, базисний розв’язок. Поняття опорного плану має наочну гео- метричну інтерпретацію. Послідовність коммунікацій 4Л, А^{,А~^2,.............А^ (3.1.19) називається маршрутом, що з’єднує пункти Ап,В (рис. 3.2). 163
Заїїченко Ю.ГІ. Використовуючи маршрут, що складається із цих комунікацій, можна здійснити перевезення продукту із пункту Я,] в пункт В, проходячи через пункти В/1,42»--»4і У процесі цього руху комунікації, що стоять на парних позиціях в (3.1.19), буде пройдено в зворотньому напрямку. Маршрут (3.1.19), до якого додано комунікацію 41®м зветься замкненим маршрутом або циклом. Спосіб перевірки, чи буде довільним план Т-задачі опорним, і ру- нтується на таких двох теоремах (прямій і зворотній) Теорема 3.4. Система, складена з векторів Р Т-задачі, буде лі- нійно незалежною тоді і тільки тоді, коли із комунікацій, що відпо- відають цим векторам, неможливо скласти замкнений маршрут. Доведення Необхідність. Нехай вектори [Р ,Р .,Р ) } лінійно незалежні Якби існував замкнений маршрут із комунікацій 4 В/ ,4 .4 ,...,4 Ві і 4ій/5 > то> очевидно, починаючи рух із пункту 4, і послідовно проходячи всі пункти В) —> ВІ -> 4 ми останньою комунікацією А^В^ по- вернемося в початковий пункт 4,. Тоді справедлива рівність: Р„У|-Р,?/1+Р,щ--+Ри=0’ <3.120) яка свідчить про лінійну залежність векторів {Р ,Р ,...,Р }. Одержана суперечність доводить необхідність умов теореми 3.4 164
___________________________________________________Дослідження операцій Достатність Припустимо, що з комунікацій, що відповідають векторам Р системи £, неможливо скласти замкнений маршрут До- ведемо, що в такому разі В. - лінійно незалежна система. Якщо при- пустити суперечне, тобто лінійну залежність векторів системи К, то існують такі числа а,7(ї,У)є£ серед яких не всі нулі, для яких вико- нується умова Е°,Л=°- ('./)е£ Нехай, наприклад, а, * 0. Тоді переносячи відповідний вектор до правої частини, дістаємо Уа„Р„ =-«,,Р,, , (3 1.22) де Е\ утворюється шляхом викреслення в Е пари індексів (/,,/,). Компонента з номером і) у правій частині (3.1.22) не дорівнює нулю. Отже, це ж саме стосується і лівої частини цієї рівноси, тобто серед векторів Ріу(і,у)є£ знайдеться хоча б один вектор виду Рі|; з коефіцієнтом аІф *0. Перенесемо його в праву частину рів- няння (3.1.22), матимемо: Уа„Р„ =-аі(Р. -а Р, , (3.1.23) < V Ч ' /і <|./| <1/2 'іА ' ' </../)е£, де £, = £] \(і|, /2). Однак, оскільки у, # Д, то компонента із номером т + У, у правій частині (3.1.23) не дорівнює нулю. Тому серед векто- рів лівої частини (3.1.23) знайдеться хоча б один вектор виду Рг? , для якого аь/ *0 Переносячи його в праву частину (3.1 23), знахо- димо: У а Р = — а Р —сі Р —сі Р • (3.1.24) «іа'ль иь>гь/. у ' <<./!•=£, де £3 = £, /(і2,у2) • Такс перенесення векторів у праву частину можна виконувати аналогічним способом і далі. Припустимо, що вже проведено (2Л-1) кроків. Тоді маємо співвідношення 165
Зсиіченко Ю.П. У«л =-І>,р.,-їл, р., . (З І-25) Ч Ч І и !и */« / ч ґ=^ ’ч ! и * ’р • и І (> ЛєЕ,, , /і=І р=І де ^2к-І = ^2А-2 'Чк ’ Ік ) • Можливі два випадки: 1) ік = і, , при деякому 1 < л < к - 1; 2) ік * і3. V першому випадку процес перенесення закінчується, причому із векторів правої частини (3.1.25) можна утворити замкнений марш- рут. Таким маршрутом є: 4 В. ,А В. В^АВ.. > л.і’ ',.і /,.і ’ '»। л її У другому випадку процес перенесення триває й оскільки і *»,,(! <5 <к-1), серед векторів Р;/, де (і,/) є Е,*-! обов’язково знай- деться вектор Р; з коефіцієнтом я,4/1я) *0. Описаний процес перенесення не може бути нескінченним, оскі- льки всі вектори, що переносяться праворуч, різні. Тому через скін- ченне число кроків обов’язково прийдемо до першого випадку, який, як показано вище, веде до утворення замкненого маршруту. Отже, припустивши, що система векторів Р лінійно залежна, ми дістали суперечність з умовою теореми, згідно з якою із комунікацій Р системи В не можна скласти замкнений маршрут. Отже, лишається прийняти, що система В складається із лінійно незалежних векторів. Достатність умов теореми доведено. Назвемо комунікацію А,В/ Т-задачі основною комунікацією пла- ну X, якщо х > 0. Звідси, використовуючи теорему 3.4, можна сфо- рмулювати таку ознаку перевірки довільного плану на опорність. План X = ||х,, || Т-задачі є опорним (базисним), якщо з його осно- вних комунікацій не можна скласти замкнений маршрут. Теорема 3.5. Вектор Ри являє собою лінійну комбінацію векто- рів системи К тоді і тільки тоді, коли із векторів цієї системи мо- 16Ь
______________________________________________ Дослідження опертий жна скласти маршрут, що з 'єднує пункти і В,. Якщо цей марш- рут .має вигляд: А. В,, А В, В ,АВ., то Р,.,=РЬ -Р,, +Р,, - .-Р, , +Р, (3.1.26) Л/| '1/1 'і/.1 Доведення цієї теореми базується на теоремі 3.4. Нехай РД7 ви- ражається у вигляді лінійної комбінації векторів системи /?. Доба- вивши до неї вектор РА7, отримаємо систему лінійно залежних век- торів. Тоді згідно з теоремою 3.4 з’явиться замкнений маршрут у . Цей замкнений маршрут має включати комунікацію АкВ/, тому всі інші комунікації мають з’єднувати з В,. Тоді рь ~Р., + р,, ---р., +Р, -р»=0- Переносячи Ри в праву частину, дістаємо вираз (3.1.26), що й треба було довести. Розглянемо довільну матрицю X'"", Між позиціями матриці X і векторами Р/; можна встановити таку відповідність. Вектор Р від- повідає елементу матриці X. Тоді можна задати систему з векто- рів {Р(>}, виділивши одиницями відповідні елементи матриці X. Роз- глянемо матрицю на рис. 3.3. Тут одиницями позначено систему век- торів 167
іаиченко Ю.П При використанні матриці X критерій лінійної незалежності фо- рмулюється так: для того щоб система векторів {Р(/| була лінійно незаіежною необхідно і достатньо, щоб із ненульових елементів матриці X, які відповідають цим векторам, було неможливо побуду- вати замкнений маршрут (цикл). Оскільки із виділених одиницями позицій на рис. 3.3 неможливо скласти замкнений маршрут, то розглядувана система лінійно неза- лежна й утворює базис. Введемо тепер до системи (Р,} вектор Р|й, який відмітимо іна- ком «Т». Щоб розкласти Р.й за векторами системи /?, побудуємо лан- цюжок із виділених елементів, який замикається на елементі х16: Р]6 = Р] ( — Рц + Рі2 — ^32 * ^31 ~ Р4З + Р44 ~ Р54 т Р^Ь ' При невеликих розмірах матриці X візуальний пошук замкнених ланцюжків в ній досить складний. У такому разі використовують формальний .метод викреслення Метод викреслення дає змогу виділити в довільному плані X Т- задачі замкнений ланцюжок (якщо він є). Цей метод полягає ось у чому. Виділивши в плані X множину не- нульових елементів, яку позначимо через 5, з’ясуємо, чи існують у множині 5 цикли. Для цього переглядаємо один за одним рядки пла- ну X і викреслюємо ті з них, які не мають елементів 5, або мають не більше, ніж один елемент 5 (ненульовий елемент). Переглянувши всі рядки плану X, переходимо до стовпців і викреслюємо ті з них, які містять не більше ніж один 5 елемент. При цьому, раніше викреслені елементи до уваги не беруться. Відтак повторюємо весь цей процес, переглянувши спочатку рядки, а потім стовпці матриці, що лишилися. Після скінченого числа кроків цей процес закінчується одним з двох результатів: 1) всі рядки (стовпці) матриці викреслені; 2) зали- шилася деяка підматриця, в кожному рядку і стовпці якої містяться не менше, ніж два елементи 5. У першому випадку із елементів множини 5 побудувати цикл не- можливо Отже, відповідний план X є опорний. У другому випадку множина 5 містить цикл (цикли) і відповідний план X не є опорним (базисним) На рис. 3.4 показано два плани Т-задачі. небазисний (рис 3 4, а) і базисний (рис 3.4, б) Номери ліній 168
Дос лідження операцій вказують на порядок викреслення Зірочками позначено ті елементи, які викреслити неможливо. Вони утворюють цикл. Рис. 3.4. а) Рис 3.4. б) Знаходження початкових опорних планів Існує декілька методів побудови початкових опорних планів Т- задачі. З них найпоширеніші: метод північно-західного кута і метод мінімального елемента [18]. Метод північно-західного кута. Основну ідею методу розгляне- мо на конкретному прикладі. Нехай дано Т-задачу з чотирма пунктами виробництва Аь Л2, А3, А4 з обсягами виробництва а- = 1;о2 =2;о3 =3;о4 =4 і пунктами спо- живання в;,у = 1,4 з обсягами споживання відповідно Ь, = 5;62 = 1;6? = 2,6, = 2 Побудуємо матрицю X розміром 4x4, причому для зручності об- числень знизу від неї запишемо рядок 6,, а праворуч стовпець а,. Крім того, знизу від Ь, утворимо рядки Л’І),Л>22).. де записуватиме незадоволений попит, а праворуч від а, - стовпці а[",а{2).. де запи- суватимемо залишки невивезсного продукту (табл. 3.2). Заповнення таблиці починають з лівого верхнього елемента таб- лиці X -хп, що і зумовило назву методу. Порівнявши а, =1 з 6, =5 і 8і 169
Зийчепко Ю.ІІ. вибравши менше з них, одержимо хц=1. Записуємо це значення в матрицю Хо Оскільки перший вибір було зроблено за рядком, то всі інші позиції першого рядка заповнимо нулями. У допоміжному ряд- ку а}1’ запишемо залишки невивезеного продукту, а,'” =«, -хп, а в стовпці />’ 1 - незадоволений попит після першого кроку заповнення Переходимо до другого рядка й починаємо заповнення з елемента о2 (новий північно-західний кут незаповненої частини таблиці 3 2). Порівнюючи сД” =2,6.(" =4, вибираємо менше з них, і тому л,;=2. Незаповнену частину другого рядка заповнюємо нулями. Далі запов- нюємо таблицю аналогічно. Після закінчення процесу заповнення матимемо початковий план Хо. Цей план є базисним (опорним), оскі- льки з його нснульових елементів неможливо скласти цикл. Крім то- го, він задовольняє умови задачі, оскільки: 4 __ 4 __ = «,;/ = 1,4,Е =6/;; = 1,4- /=і Таблиця 3.2 X аі а'3’ «Г’ 1 0 0 0 1 0 0 0 0 0 0 2 0 0 0 2 2 0 0 0 0 0 2 1 0 0 3 3 3 1 0 0 0 0 0 2 2 4 4 4 4 4 2 0 Ь! 5 1 2 2 4 1 2 2 Ь'» 2 1 2 2 ьт 0 0 2 2 &(4> 0 0 0 2 6- 0 0 0 0 Формальний опис алгоритму. 1. Визначають верхній лівий еле- мент матриці X: 170
Дослідження операцій хн = тіп(о. ,/>,). Можливі три випадки: а) якщо а <Ь,,то хІ( = о, і весь перший рядок, починаючи з другого елемента, заповнюють нулями; б) якщо аІ >Ь,, то ї. ; = Ь}, і всі незаповнені елементи першого стовпця запо- внюють нулями; в) якщо а, = 6], то Л]! = Ь, - а-, то всі незаповнені елементи перших стовпця та рвдка заповнюють нулями. Знаходимо: «Г’ =«і ЇЇ" = *і~хп> на цьому один крок методу закінчується 2. Нехай вже виконано А кроків (к+1 )-й крок полягає ось у чому. Визначають верхній лівий елемент незаповненої частини матриці X. Нехай це буде елемент Д=к+2У При цьому (3.1.27) де «У ’ <зл-28> /=1 Якщо о**’<6***, то заповнюємо нулями рядок А, починаючи з (//+1)-го елемента. У протилежному випадку заповнюємо нулями стовпець р, починаючи з елемента (1+1). Якщо пі** , то запов- нюємо нулями залишок рядка А і стовпця // . Відтак обчислюємо о^+1) = -хЛд;^*+І' = — хА/І На цьому (Л+1)-й крок закінчу- ється. Описаний процес повторюється до тих пір, доки матриця X не буде заповнена повністю. 8* 171
Заиченко Ю11. Метод мінімального елемента Цей метод є варіантом методу північно-західного кута, який вра- ховує особливоеті матриці транспортних витрат С=||є,7||. Він дас змо- гу побудувати відразу досить економічний план, що скорочує загаль- не число ітерацій при його подальшій оптимізації (порівняно і мето- дом північно-західного кута). Формальний опис алгоритму. Елементи матриці С нумерують, починаючи з мінімального, в порядку збільшення і далі в цьому ж порядку заповнюють матрицю Хи. Нехай елементом з мінімальним порядковим номером виявився Х/ = тіп . Можливі гри випадки: а) якщо «, < б, , то незаповне- ння лишок і -го рядка заповнюємо нулями; б) якщо а, > ЬІ, то неза- повнену частину у-го стовпця заповнюємо нулями; в) якщо а^Ь , то лишок і -го рядка і у -го стовпця заповнюємо нулями. Далі цей процес повторюють з незаповненою частиною матриці X,. Приклад 3.1. Знайти початковий базисний план методом міні- мального елемента для Табл. 3.3. такої задачі. Таблиця. 3.3 А,\В, 1 2 3 4 В, / а, 7<ю) 8”” 5‘7’ 3'51 11 2 -)(3) 4(4. 5<81 9<12> 11 3 619) •}(4> 1(11 2<2’ 8 А, /Ь, 5 9 9 7 Ь, \ а. Цифри в дужках вказують порядок заповнення елементів мат- риці Хо (табл. 3.4) Відповідне значення цільової функції дорівнює £(Х0) = ^^с,(х‘0) =3*8+ 1*5+ 3*7+ 5*2+ 6*4+ 8*1 =92 172
Доспдження операцій Таблиця 34 Хо а, 42) 0 3 1 7 11 4 3 0 5 6 0 0 11 6 0 0 0 8 0 8 0 Ь, 5 9 9 7 ь? 0 3 1 0 0 0 3.2. МЕТОД ПОТЕНЦІАЛІВ Метод потенціалів дає змогу, починаючи з деякого опорного пла- ну, за скінчене число ітерацій знайти розв’язок Т-задачі. Метод потенціалів вперше запропонували Л.В.Канторович і М.К.Гавурін в 1949 р. [18; 59]. Пізніше аналогічний метод розробив Г.Данціг, виходячи із загальних ідей ЛП. Загальна схема методу така. У заданому початковому опорному плані перевезень кожному пункту ставлять у відповідність деяке чи- сло, що зветься його попереднім потенціалом. Попередні потенціали вибирають так, щоб їхня різниця для будь-якої пари пунктів А, і В,, зв’язаних основною комунікацією, дорівнювала с,,. Якщо виявиться, що різниця попередніх потенціалів для всіх інших комунікацій не перевищує Сц, то даний план перевезень - оптимальний розв’язок задачі. В іншому випадку вказується спосіб поліпшення поточного плану Т-задачі. Опис алгоритму методу потенціалів. Алгоритм складається з попереднього етапу та скінченного числа однотипних ітерацій. На попередньому етапі будують початковий опорний план і об- числюють матрицю С = І — (р<СІ) — ц<0))|| _ _ ІІ " 1 ' іе у“”,н]0’ - попередні потенціали пунктів 82 173
іііиченко Ю.П. А,(і' = \,/п),В,( і І.и) Попередній етап. Користуючись одним з відомих методів (на- приклад, північно-західного кута або мінімального елемента) відшу- кують початковий опорний план Хо і обчислюють попередні потен- ціали ,і = Попередні потенціали обчислюються так. За знайденим опорним планом Хо будують схему перевезень Т-задачі із основних комунікацій плану. Нагадаємо, що основні комунікації Р;/ плану Хо= ||х,(0’|| “ це ті» яким відповідають базисні компоненти плану, тобто комунікації для яких х);0) >0. Далі створюють такі множини: У, - множину індексів всіх пунктів В,, які зв’язані з пунктом А основними комунікаціями; 1\ - множину індексів тих пунктів А„ що пов’язані основними комуні- каціями 3 МНОЖИНОЮ множину пунктів В„ які зв’язані основни- ми комунікаціями з множиною /і і т.д. Утворення таких множин /к ви- конуємо доти, доки не приходимо до порожньої множини. Оскільки на виконання умови оптимальності впливають лише рі- зниці V, -иі (див. теорему 3.2), то за початок відліку (нуль) можна взяти потенціал будь-якого пункту. Беремо для визначеності = 0 і обчислюємо систему потенці- алів стосовно А,. Тоді у,т -с + и{°’ =с|(, де у є У;. Відтак за значення- ми г^/єУ,) обчислюємо потенціали пунктів А.(і є Л): і/0) = = н*0) - сч(у є & /]). Аналогічно визначаємо потенціали н1;0)(у є У2): Гу = с» + м, (для / є .) і т.д. Після того як потенціали всіх пунктів знайдено, будуємо матрицю Сі = ||с-/ ~ ^/0) " и' °’ 41 = т' І =п- Очевидно, позиції матриці Сь що відповідають базисним елемен- там плану Хо, зайняті нулями. Якщо матриця Сі не містить від’ємних елементів, то Хо - оптимальний план. В іншому випадку Хо - не оп- тимальний план, який можна поліпшити. Тоді переходимо до вико- нання однотипних ітерацій 174
ДосііОження операцій (А+1)-а ітерація. Кожна ітерація, крім першої, де відсутній пер- ший етап, складається з двох етапів. Припустимо, що вже проведено к ітерацій (А'=1,2,...), внаслідок яких отримано план ХА і допоміжну матрицю С*. Мета (А+1)-ї ітерації - побудова матриці Сні, а також або встановлення оптимальності плану ХА., або знаходження більш економічного плану Хні- Перший етап. Обчислюють матрицю Сні- Перетворення матриці С* в ма грицю Сні полягає ось у чому. Знаходять найбільший за мо- дулем від’ємний елемент С*. Нехай це елемент с^,1 = ЛА(ДА <0). Тоді викреслюють (чи виділяють) рядок А, де він знаходиться. Перегля- дають цей рядок і відшукують множину суттєвих його елементів. X* - суттєвими елементами називають ті елементи с**1, які відповідають базисним елементам плану ХА, тобто для яких дТ*’ >0. Викреслюють стовпці, які містять ці елементи. Далі переглядають викреслені стов- пці і шукають в них нові суттєві елементи, що лежать в рядках від- мінних від уже викреслених раніше. Якщо такі елементи є, то викре- слюють рядки, в яких вони містяться. Далі описаний процес продов- жують, поки чергова множина нових суттєвих елементів не буде по- рожньою. Оскільки кожний рядок і стовпець не можна викреслити двічі, то весь процес закінчується не більш як за І = т + п - 1 крок. Відтак обчислюють матрицю Сні- Для цього величину |д*!додають до усіх елементів виділених рядків і віднімають від елементів усіх виділених стовпців матриці С*. При цьому всі суттєві елементи мат- риці СА залишаються такими, що дорівнюють нулю, а крім того, на нуль перетворюється і елемент сл. Якщо всі елементи таблиці Сні невід’ємні, то X* - оптимальний план і на цьому процес закінчується. У протилежному випадку пере- ходять до другого етапу. Другий етап. Мета цього етапу - побудувати більш економічний план Хні- Відшукують найбільший за модулем від’ємний елемент матриці Сні- Нехай ним буде <0. Будують ланцюжок із додатніх елементів плану, який замикається на х . Після того, як ланцюжок побудовано, у ньому знаходять мінімальний непарний за порядком слідування елемент: 8** 175
іайченко Ю.П. Додають 0Д+1 до всіх парних елементів (за порядком слідування) ланцюжка і елемента ,і віднімають 0Дч., від усіх непарних еле- ментів. Всі інші елементи X* залишають без зміни. Новий план ХЛ+| побудовано. Він є базисним, оскільки число його ненульових елементів не ЗМІНИЛОСЯ. Нехай £* - транспортні витрати, іцо відповідають плану X*. Тоді нове значення цільової функції, яке відповідає плану X*, ь обчислю- ють за співвідношенням: Лі-н = (3 2.1) Оскільки 0Д+| > 0 і Дд+| < 0, то Дд+1 < Ьк. Тому Х*+1 - поліпшений опорний план. Далі переходять до (к+2)-ї ітерації. Приклад 3.2. Розв’язати методом потенціалів Т-задачу, умови якої наведено в таблиці 3.3. Перевіримо умову балансу £ а, =іі + П + 8 = 30;£ь,. = 30 = £«, . /-і /і <=1 отже задача розв’язна. В процесі розв’язання цієї задачі скористаємося такими позна- ченнями X* - суттєві елементи матриці С*+І відмічатимемо рискою зверху; при обчисленні матриці С*-и будемо ставити (-Дд) праворуч від виділених рядків матриці С*, а Дд.(Дд. <0) - під виділеними сто- впцями; мінімальний елемент матриці С\ обводимо рамкою; елеме- нти ланцюжка в плані X* відмічатимемо знаком *. Попередній етап. За допомогою методу північно-західного кута знаходимо початковий опорний план Х0(див. табл. 3.5). 5 Хо= 0 6 0 0 3 8 0 0 1 7 0 Значення цільової функції Ь =ХХсііх,і = 150 . »=і /=і 176
Дослідження операцій Таблиця 3.5 а, а'2» Хо 5 6 0 0 11 6 0 0 0 0 3 8 0 11 11 8 0 0 0 0 1 7 8 8 8 8 7 5 9 9 7 0 9 9 7 ь? 0 3 9 7 ь\- 0 1 7 * 0 7 0 Знаходимо попередні потенціали задачі. Для цього будуємо схему перевезень вздовж основних комунікацій плану Хо (рис. 3.5). Рис. 3.5 Наносимо на основні комунікації відповідні значення транспор- тних витрат. Попередні потенціали обчислюємо в такому порядку. Нехай £/,’**’= 0 Розглянувши комунікацію А,В!, знаходимо 8і 177
Зайчеико Ю.П. Г]10’= С| +1/5°’ = С*! = 7 . Далі за комунікацією А,В? визначаємо І','0'=« + 0 = 8. Аналогично, іД1’1 = И2<01 -С,, =8-4=4; И,'01 =с, чї/!01 = 5 + 4 = 9, с„ 9-1 8, И1|(”=СМ+І/Г = 2 + 8 = 10 Відтак обчислюємо елементи матриці ||єч-(Гу"п-С/,<0|)||, на- приклад: сУ,‘ = С2| - (Г)'01 -сД°') = 2 (7 4) = -1, і так далі. Зауважимо, що суттєві елементи С (тобто ті, які відповідають елементам х^} > 0) дорівнюють нулю, тому їх можна заповнити без обчислень. 10 0-4-7 -1 0 0 З І|. 7 3 0 0 Перша ітерація. Тут перший етап відсутній, бо матрицю С, вже визначено. На другому етапі в матриці С. знаходимо найбільший за модулем від’ємний елемент: Сц = -7 = А,. Переходимо до плану Хо і будуємо ланцюжок із його базисних елементів, що замикається на х|4. Елементи ланцюжка відмічатимемо знаком *. Непарні за порядком слідування (чергування) елементи ланцюжка х |2 = 6, х 2з = 8, х 34 = 7. Визначивши мінімальний серед них елемент Є) = тіп!б,8,7; б, додаємо 6і до всіх парних елементів (за порядком слідування) ланцюжка, а та- кож до х;4 і віднімаємо від усіх непарних елементів ланцюжка. Таким чином одержуємо план Х;, який також є базисним, оскільки число ненульових елементів у ньому не змінилося, і. крім того, з них неможливо побудувати цикл. Маємо: 178
Дослідження оперений Цільова функція Ь = Ьо 'г дн, =150- 7*6 = 108. Друга ітерація. Перший етап. Він полягає в побудові матриці С-> поС|. У матриці С рискою зверху відмічаємо Х; = суттєві еле- менти (нулі). Викреслюємо в С| перший рядок, що містить найбі- льший за модулем від’ємний елемент С,4 = д,=-7. Переглядаємо цей рядок й відшукуємо в ньому суттєвий нуль (тобто 0), що нале- жить першому стовпцю. Тому викреслюємо далі перший стовпець й переглядаємо його елементи, щоб визначити чи є серед них нові суттєві нулі. Оскільки таких немає, то процес викреслення закінчу- ється. 1 з викресленого рядка віднімаємо д; =- -7 (тобто додаємо 7), а до викресленого стовпця додаємо д. =-7 (тобто віднімаємо 7). Отже, маємо матрицю С2. Оскільки С2 містить від’ємні елементи, то план Х2 потрібно поліпшити: -й—0 =1 —7 -15 6 3 7 3 5 6 -7 +7 0 7 3 0 ПЛ 0 0 3 0 3 0-0 На другому етапі знаходимо в матриці С2 найбільший за моду- лем від’ємний елемент С2) = д,=-8, відшукуємо в плані Хі відпові- дний йому елемент х2| і будуємо ланцюжок з базисних елементів цього плану, що замикається на х2). Його непарні елементи за по- рядком слідування: гІ, =2;х^ = І;.»,’, =5. Знаходимо е2 = тіп12,1,5) = і, до- даємо е, до усіх парних елементів ланцюжка, а також до х2| і від- німаємо е, від усіх непарних елементів ланцюжка. Одержимо новий поліпшений план: Х,= 4 0 0 7 19 10 0 0 8 0 Цільова функція + е,д, = 108 - 8 = 100. 8*** 179
Зайченко Ю.П. Наступні ітерації виконуємо аналогічно. Третя ітерація. Перший етап: С2 -8 -8 +8- +8 Другий етап: * С3 = о -і РП о 0 0 0 11 8 3 0 8 14’ 0 |0+ 7 ІГ % Іг о 0 0 8’ 0 Є3 = 1 3 0 17 2 9 0 0 0 0 8 0 63 = тіп(4;1) = І;І3 Четверта ітерація. Перший етап: С3 -5 -5 +5 +5------- С4 = 0-100 О 0 5 11 з т о з Другий етап: Х3 8' 7 О О ----------- Х4 = е4 = з Л4 =95-3*2 = 0 0 4 7 5 6 0 0 0 3 5 0 180
Дослідження операцій П’ята ітерація. П ер ш и й етап: С5 = 2 10 0 0 0 3 9 5 0 0 3 Всі елементи матриці С5 С*5) > 0. Отже, х7 - оптимальний план перевезень. Йому відповідає значення Ь4 = 89. Зв ’язок методу потенціалів з симплекс-методом Нехай ХА. = ||А’,у || - деякий базисний план Т-задачі. Множину з базисних векторів Ру цього плану, які відповідають його основним комунікаціям, позначимо через Кх . Нагадаємо, що Кх складається з (т + п - 1) векторів. На першому етапі методу потенціалів обчислюють попередні по- тенціали і г*01,^0’,...^’0’ , що відповідають умовам у*0’ -н-0) = Су . Величина ||с^-и'°’)|| відповідає симплекс-різниці. Припустимо, щос^-(іА0)-и*0))>0 для всіх Р,7 є Кх . Це означає, що при введенні до базису будь-якого з векторів Ру зменшити значення І(Х7) неможливо, а тому план Хк - оптимальний. Якщо ж для деякого век- тора Р, л величина с, } - (и; - иіс) < 0, то при введенні цього вектора до базису можна зменшити значення цільової функції £(Х). Перехід до нового базису, що включає вектор Р, , пов’язаний з побудовою ланцюжка, який замикається на елементі х,о7 . Щоб ви- значити, який вектор виводиться з базису, розкладають Р^ по век- торах старого базису. Далі відшукують: 0, = тіп ІМІєХ» ХЦЛ А>іо (3.2.2) 181
Зайченко Ю.П. де - базисний елемент плану X*. що відповідає вектору Р,і/( , який виводиться з базису; х - коефіцієнт розк іадання вектора МРо/п Р( при векторі Р;і/4 . Для Т-задачі завжди Л- = +1 . При цьому < = + 1 , якщо елемент хч займає непарну позицію в ланцюжку, який замикається на елементі х,, , і г = -1, якщо він займає парну позицію. Нові базисні значення змінних у загальному випадку симплекс-методу визначається за формулою: х'"’ = х. -0дх„ , , =0- (3-2.3) Оскільки х — ±1, то формули (3.2.2) і (3.2.3) стосовно до Т- (і) задачі можна подати у вигляді такого правила: перевезення, що запла- новані по непарних (парних) позиціях ланцюжка, зменшуються (збіль- шуються) на величину 0Д. , перевезення між і = 0Д., а всі інші перевезення не змінюються (де 0Д - мінімальний непарний за по- рядком слідування елемент ланцюжка, що з’єднує пункти /1,ита в/о). Таким чином, метод потенціалів є окремим випадком симплекс- методу, що враховує специфіку Т-задачі. Розв’язання транспортної задачі при виродженому опорному плані Опорний план зветься виродженим, якщо число його ненульових перевезень к менше від рангу матриці обмежень. У процесі побудови 'початкового плану або при його поліпшенні наступний план може виявитися виродженим. Розглянемо два випадки. 1. Вироджений план є початковим X,, . Тоді вибирають деякі ну- льові елементи матриці Хо за базисні таким чином, щоб не порушу- валася умова базисного плану. Число цих елементів дорівнюс / = (т + п 1) к . Далі ці елементи замінюють на є > 0 (де £ - довіль- не нескінченно мале число) і розглядають їх, як звичайні базисні 182
____________________________________________Дослідження операгціі елементи плану. Задачу розв’язують далі як невироджену, а в остан- ньому оптимальному плані X*. елементи £ замінюють нулями. 2. Вироджений план утворюється при побудові плану ХЛц на базі X*. Цс буде тоді, коли ланцюжок в плані X* містить не менше двох мінімальних непарних елементів. У такому випадку в матриці Х*+І покладають таким, що дорівнює нулю, лише один з цих елементів, а всі інші замінюють на £, і далі розв’язують задачу як невироджену. Якщо на А'-му кроці 0, = є, то при переході від ХА до ХА+І значення цільової функції не змінються, а в базис вводиться елемент г,у, зна- чення якого дорівнюватиме £. Приклад 3.3. Розв’яжемо Т-задачу із такими умовами (див. табл. 3.6). З 4 Перевіримо умову балансу = £/>, =24 . >- ,=> Попередній етап. Методом мінімального елемента побуду- ємо початковий базисний план Хо (Табл. 3.7): Таблиця 3.6 с = 4 6 8 6 6 2(4 > ^(6) 4<і і) 8 6(12> 4(10) 3(9) рз) 10 І11’ 2(6) 217’ і'2’ *0 = ь Еф 6 0 ОІ 0 іф 8 0 4 0 0 6] 4 6 8 6 Таблиця 3.7 а, 6 0 8 0 10 60 0 0 0 0 Оскільки т + п - 1 = 6; к = 4, то план х0 - вироджений; / = /и+ п~ 1 - к=2. 183
Зиііченко Ю.П. Тому два нульових елемента Хо погрібно взяти за базисні, при- чому так, щоб не порушити умову опірності. Виберемо за башені елементи г'У. і покладемо їх такими, що дорівнюють е. Схему перевезень для плану Хи наведено на риє. 3.6 Рис 3 6 Для обчислення попередніх потенціалів виберемо початковий пункт А! і нехай и.”” = 0. Потенціали всіх інших пунктів обчис- люємо за формулами: Для перевірки оптимальності плану побудуємо матрицю Сь елементи якої обчислимо за співвідношеннями’ 0 2 Л о о д 1 2 0 о Сі = 2 0 Оскільки в матриці Сі елемент С33 = - 3 < 0, го план Хо - неоп- тимальний 184
Дослідження ОІ1Є1ЛНІІІІ Перша ітерація Д р у і и й с гаїг Хо .с* |б‘ 0, 0 0' є* 8 0* 4 о о Тб* £ 6 О О О 0 6 Е 4 0 0 6 0, = тіп!6.с,е| -4 В результаті побудови Х| в базис вводитьсялу =е. План ХІ ви- роджений в ланцюжку с два мінімальних елемента. Тому один з цих елементів, наприклад х|(, у плані X замінюємо на є. Друга ітерація Перший етап: Другий етап: 0 0 | -1 І 2 5 3 0 0 0 і ПП 0 X, є 6 0, 0 0 0 |8 |Є* 4 0 V ’6* Х2 - 9ч =тіп{8. Третя ітерація Перший етап: є 6 0 0 0 0 2 6 4 0 6 0 0 0 4 2 0 1 0 З 0 0 0 1 Оскільки в матриці С3 немає від’ємних елементів, го план Х2 - оптимальний. 185
Зайченко ЮП 3.3. УГОРСЬКИЙ МЕТОД Угорський методе одним з найцікавіших і найпоширеніших ме- тодів розв’язання іранспоріних задач. Роїглянемо спочатку головні ідеї у юрського методу на прикладі розв’язання задачі вибору (задачі про призначення), яка < окремим випадком Т-задачі, а потім узагальнимо цей меюд для довільної Т- задачі. Угорський метод д ія задачі про призначення Постановка задачі. Припустимо, що с п різних робіт (,,/6... ,Л„ і п механіїмів В ,В2.В„, кожний з яких може виконані будь-яку роботу, але з неоднаковою ефективністю. Продуктивність механізму В, при використанні роботи позначимо через С , і = 1,...,/?, у = 1,..., п Необхідно так розподілити механізми по роботах, щоб сумар- ний ефект від їх виконання був максимальним Ця задача зветься за- дачею вибору або задачею про призначення Формально вона записується гак. Необхідно вибрати гаку послі- довність елемент ів | із матриці Сн С12 ... С„ ^21 ^22 ^-2,1 , с с с Ь’-лі '-,,2 '-»» у щоб сума була максимальною і при цьому із кожного рядка і г-і * стовпця С було вибрано рівно один елемент. Введемо такі поняття. Нульові елементи 7, ,7?,. ,24 матриці С звуться незалежними ну- лями, якщо для будь-якого / 1 < і < к рядок і стовпець, на псреіині яких розташований елемені , не містять інших іаких елементів 2Х Дві прямокутні матриці С і І) звуться еквівалентними (С - В), якщо ец =сіп - а, (і, для всіх і,у. Задачі про призначення з еквіва- 186
Досуджения операцій ленгними маїрицями є еквівалентними (іобто оптимальні розв'язки однієї з них будуть оптимальними і для друюї, і навпаки) Опис алгоритму угорського методу Алгоритм складається з попереднього етапу і не більше, ніж (п-2) послідовно виконуваних ітерацій. Кожна ітерація пов’язана з еквіва- лентними перетворюваннями матриці, отриманої внаслідок прове- дення попередньої ітерації, а також з вибором в ній максимального чиє іа незалежних нулів. Кінцевим результатом ітерації с збільшення числа незалежних нулів на одиницю. Як тільки число незалежних ну іів досягне и, то проблему набору вирішено, а оптимальний варі- ант призначення визначається позиціями незалежних нулів в остан- ній матриці. Попередній етап. Відшукують максимальний елемент в у-му стовпці та всі елементи цього стовпця послідовно віднімають від ма- ксимального. Названу процедуру виконують над усіма стовпцями матриці С. В результаті отримують матрицю з невід’ємними слемен- іами, у кожному стовпці якої є хоча б один нуль. Далі розглядають /’-й рядок одержаної матриці, відшукують її мі- німальний елемент а, і від кожною елемента даного рядка відніма- ють мінімальний Цю процедуру повторюють з усіма рядками. В ре- зультаті отримаємо матрицю Со (Си — С), в кожному рядку і стовпці якої є хоча б один нуль. Описаний процес перетворення С в Со зветь- ся зведенням матриці. Знаходимо довільний нуль у першому стовці й відмічаємо його зірочкою. Далі переглядаємо другий стовпець, і якщо в ньому знай- деться нуль, що розташований в рядку, де немає ще нуля із зірочкою, то відмічаємо його зірочкою. Аналогічно переглядаємо один за од- ним всі стовпці матриці Со й відмічаємо, якщо можливо, наступні нулі знаком Очевидно, що нулі матриці С(), відмічені зірочкою, є незалежними. На цьому попередній етап закінчується. (А'+1)-а ітерація Припустимо, що А-ту ітерацію вже проведе- но внаслідок чого одержано матрицю С*. Якщо в ній вже є рівно п нулів із зірочкою, то процес розв’язання закінчується В іншому ви- падку переходимо до (А+1)-ї ітерації 187
іийченко ЮII Кожна ітерація починається першим, а закінчується друїим ета- пом. Між ними може декілька разів проводитися пара етапів: третій - перший. Перед початком ітерації знаком «+» виді іяють стовпці мат- риці С*, які містять нулі з зірочками Перший етап. Переглядають невиділені стовпці С*. .Якщо в них немає нульових елементів, то переходять до третього етапу. В іншому випадку, якщо нсвиділений нуль матриці Сх знайдено, то можливий один з двох випадків: 1) рядок, що містить невиділений нуль, містить також і нуль із зірочкою, 2) цей рядок не містить нуля із зірочкою. У другому випадку переходимо одразу до другої о етапу, відміти- вши цей нуль штрихом. У першому випадку цей невиділений нуль відмічають штрихом й виділяюз ь рядок, в якому він розташований (знаком «+» праворуч від рядка). Переглядають цей рядок, знаходять нуль із зірочкою й скасо- вують знак «+» виділення стовпця, в якому лежить даний нуль. Відтак проглядаю! ь цей стовпець (який вже став невиділеним) і відшукують у ньому нсвиділений нуль (або нулі), в якому він розташо- ваний. Цей нуль відмічають штрихом і виділяють рядок, де він розташо- ваний. Далі розглядають цей рядок і шукають у ньому нуль із зірочкою. Цей процес за скінченне число кроків закінчується одним з двох результатів: 1) всі нулі матриці С* виявилися виділеними, тобто розташовуються у виділених рядках або еювпцях. Тоді переходять до третього етапу, , 2) знайдеться такий невиділений нуль в рядку, в якому немає ну- ля із зірочкою. Тоді переходять до другого етапу, відмітивши цей нуль штрихом. Другий етап. На цьому етапі будують такий ланцюжок із нулів матриці Сд: вихідний нуль зі штрихом, нуль із зірочкою, шо розташований в одному стовпці з першим нулем, потім нуль із штри- хом, розташований в одному рядку з попереднім нулем із зірочкою і т.д. Таким чином, ланцюжок утворюють рухаючись від 0 до 0 вздовж стовпця, від 0 до 0 - вздовж рядка і т.д. Можна довести, що описаний процес побудови ланцюжка одно- значний і скінчений, при цьому ланцюжок завжди починається і за- кінчується нулем зі штрихом. Далі над елементами ланцюжка, що знаходиться на непарних мі- сцях ( 0 )-, ставимо зірочки, знищуючи їх над елементами на парних 188
Дослідження операцій позиціях (тобто 0 ). Відтак знищуємо всі позначки типу штрих над елементами С* і знаки виділення «^-». Кількість незалежних нулів збільшується на одиницю. На цьому (к-^ 1)-ша ітерація закінчується Третій етап. До цього етапу переходять після першого, якщо всі нулі матриці С* виділені. У цьому випадку серед нсвидіяених елементів С*. знаходять мінімальний іі позначають його через /і (Л>0) Віднімають її від усіх с іементів матриці С*, розташованих у нсвиді- лених рядках і додають до всіх елементів виділених стовпців. В ре- зультаті отримують нову матрицю С*, еквівалентну до Сд Зауважи- мо, що при такому перетворенні, всі нулі з зірочкою матриці Сд зали- шаються нулями І В Сд, крім того, в ній з’яв.іяються нові нсвитілені ну- лі. Том> переходять знову до першого етапу. Виконавши перший етап, залежно від його результату або переходять до другого етапу, або зно- ву повертаються на третій етап. Після скінченного числа повторів пара етапів третій-перший обов’язково закінчиться переходом на другий етап. Після його вико- нання кількість незалежних нулів збільшиться на одиницю і (&+1)-а ітерація закінчиться. Приклад 3.4. Розв’язати задачу про призначення з матрицею '3 4 2 2 ґ 4 5 3 1 3 с = 4 3 1 1 1 3 1 2 2 2 1 3 1 2 1 У процесі розв’язання використовуємо такі позначення Знак виділення «+», який потребує скасування, обводимо кіль- цем; ланцюжок, як і раніше, показуємо стрілками. Попередній етап Відшукуємо максимальний елемент першого стовпця -4. Віднімаємо від нього всі елементи цього сто- впця. Аналогічно для отриманого другого, третього, четвертого і п’ятого стовпців нової матриці віднімаємо всі елементи цих стовп- ців від п'яти, трьох, двух та трьох відповідно. Дістаємо матрицю С (ОС). Оскільки в кожному рядку С є хоча б один нуль, то С = Со і процес зведення матриці закінчується. Далі шукаємо й відміча- ємо знаком «*» незалежні нулі в Со, починаючи з першого рядка. І89
Зайченко Ю.П.___________________-_____________________________ Перша ітерація Перший етап. Виділяємо інаком «-^» пер- ший, другий, га четверіий стовпці .матриці Со, які містять 0 Переглядаємо невиділений третій стовпець, знаходимо в ньому невиділений нуль С?з = 0, помічаємо йото штрихом й виділяємо зна- ком «т» друї ий рядок Переглядаємо цей ря іок, знаходимо в ньому елемент С22 = 0 й скасовуємо тнак виділення другого стовпця, в якому лежить 0 Відтак переглядаємо другий стовпець у ньому не- маз невиділених елементів. Переходимо до останнього невиділеного стовпця (п’ятого), шукаємо в ньому невиділені нулі. Оскільки неви- ділених нулів немає, то переходимо до третього етапу. Третій етап. Знаходимо мінімальний елемент в невиділеній частині матриці Со (тобто елементи, що лежать у стовпцях га ряд- ках, не відмічених знаком «-1-»). Він дорівнює Л = 1 Віднімемо її = 1 від усіх елементів невиділених рядків (тобто усіх, крім другого) й додамо до всіх елементів виділених стовпців (першого та четвертою). Отримаємо матрицю Сі і перейдемо до першого етапу. Перший етап. Перед його початком знову виділяємо знаком «+» перший, другий га четвертий стовпці. Переглядаємо невиділений третій стовпець, знаходимо в ньому невиділений нуль С2з = 0, відмі- чаємо його знаком штрих Оскільки в другому рядку є 0 (елемент С22), то виділяємо знаком «+» другий рядок, далі скасовуємо знак виділення другого стовпця, де лежить 0 . Потім переглянемо другий стовпець, знаходимо в ньому невиділений нуль С12 = 0, відмічаємо його знаком штрих. Оскільки в першому рядку є нуль із зірочкою С:4 = 0 , то виділяємо його знаком «+», й скасовуємо знак виділення четвертого стовпця, де знаходився цей знак 0 . Відтак переглядаємо четвертий стовпець й знаходимо в ньому невиділений нуль С54 = 0. Оскільки в рядку, де він лежить, немає нуля із зірочкою, то відмітивши цей 0 знаком шгрих, переходимо до другого етапу. Другий етап. Починаючи з елемента с54 = 0, будуємо лан- цюжок, рухаючись від нього по стовпцю. Знаходимо нуль із зірочкою с|4 — 0 , далі від нього рухаємося вздовж першого рядка й знаходимо 0 (с12), від цього елемента рухаємося вздовж першого стовпця до С22 = 0 , нарешті, рухаючись від с22 = 0 вздовж другого рядка приходимо до вихідного с2з = 0 Таким чином, ланцюжок побудовано. 0’54 - 0*і4- 0’із — 0 22 ~ О’гз- Замінюємо знак шгрих на зірочку й скасовуємо знак зірочки над парними елементами ланцюжка, а також всі позначки ви- 190
Дослідження операцій ділення стовпців га рядків. На цьому перша ітерація закінчується. В результаті, число незалежних нулів збільшилося на одиницю. Оскіль- ки наступні ітерації виконуються аналогічно, то наведемо результати їх виконання бет додаткових пояснень. Після друюї ітерації кількість незалежних нулів (0 ) стала дорівнювати 5 (розмірності матриці С) і тому алгоритм закінчує роботу. Шукані елемента призначення відпо- відають позиціям незалежних нулів матриці Сі (тобто 0 ). Відповідне значення цільової функції Лтах — СІ2 + ^23 + С31 + С45 + С5-і —15. Перша ітерація. Перш и й етап: Третій етап , е » 1 1 1 ()’ 2 1 1 1 0’ 2 -1 10 0 10 + ' 1 0’ 0 1 0 + с0 = !о‘ 2 2 1 2 С,= 0’ 2 2 1 2 -1 , 1 4 1 0 1 | 1 4 1 0 1 -1 3 2 2 0 2 13 110 2 -1 + 1 +1 Л=1 Перша ітерація. Перший етап: Другий етап: • ® — 110' 0 0 1 І 0’ а0' 2 0’ 1 1 1 13 0 0 3 110' 1 С2 = о’ о о о* 1 1 з о 0 2 1 0 0* 1 0 1 о 1 0 2 І 1 191
іайченко Ю.ІІ Друга ітерація Перший ітаїг Другий стан. 4- 1 0* 0 6 1 1 0’ 0 0 1 1 0 о‘ 2 0 1 0 о’ 2 0 II о о' 1 І І 1 ► Сз = 0* 1 1 1 1 1 3 0 0 0' + 1 3 0 0 о’ 3 1 І о' 1 3 1 1 о’ 1 Угорський метод д.ія транспортної задачі Розглянута вище задача про призначення являє собою окремий випадок Т-задачі, коли а, = ],/ = І,п;6, = 1,у = \,п . Тому угорський метод, що був спочатку розроблений для розв’язання транспортної задачі спеціального він іяду, можна поширити на загальний випадок Т- задачі [18; 59]. Нехай погрібно розв’язати Т-іадачу такого вигляду; Пі п мінімізувати Х£є„г, , '=і/=і при обмеженнях: Хх9 =а,,і = },т, /=і т ___ '£ху=ЬіЛ = \.п-, 1=1 х,?> 0. Алгоритм розв’язання Т-задачі на основі угорського методу склада- ється із попереднього етапу га скінченного числа однотипних ітерацій. В результаті попереднього етапу обчислюють матрицю Хо = ||їч°)||’' = = 1.”. елементи якої задовольняють такі обмеження- = (3.3.1) 7=1 (з.з.2) 192
Дос пджеиня опертий Якщо в умовах (3.3 1). (3.3.2) строгі рівності, то матриця X с розв'яжем Т-задачі. Матрицю, побудовану в результаті к-ї ітерації, позначимо \А =|л’* ' Позначимо також т п пі п (3.3.3) Величина Д, зветься сумарною нев’язкою для матриці Х4. Вона характеризує близькість Х; до шуканого плану Т-задачі. Ітерації ви- конують доти, поки величина ДА не стане дорівнювати нулю. Опис алгоритму угорського методу Попередній етап У кожному із с гонітів матриці транепо- ртних витрат С = ||с(у відшукують мінімальний елемент, який відні- мають від усіх елементів даного стовпця. Отримують матрицю С' Далі в кожному рядку матриці С вибирають мінімальний елем'ент і віднімають йото від усіх елементів даного рядка. Одержують матри- цю С'о (С(| ~ С), всі елементи якої невід’ємні і, крім того, в кожному рядку і сіовпці Су є хоча б один нуль. Будують матрицю Хо так, щоб її ненульові елементи були розташовані в позиціях нулів матриці Су Нехай і^- номер рядка, в якому розташований А'-й нульу-го стов- пця матриці Су. Тоді елементи першого стовпця матриці Х() визнача- ють за рекурентною формулою: (0)_ 0—м,* = и,.,г;(С->0); (3 34) тіп(а,,Л, - £ = /* і= °)- І д=і Тобто всі елементи першого стовпця Хо, яким відповідають нс- нульові елементи в матриці Су, заповнюють нулями, а всі інші еле- менти цього стовпця заповнюють зіідно з методом північно- іахідної о кута. Припустимо, що вже заповнено СТОВПЦІ Ху від першого до (/- 1)-го включно. Тоді елементи )-го стовпця визначають згідно з формулою 9і 193
кіііченко Ю.П \ = 7-І 7-І тіп {л, - £ х'°'\,якщоі = ікі. /і=\ Якщо До = 0, то X - оптимальний план Т-задачі. Якщо До > 0, і о переходимо до першої ітерації. (А— 1 )-а ітерація. Кожна ітерація складається з двох або трьох етапів. Ітерація починається з першого етапу, а закінчується другим, а між першим та другим етапами в загальному випадку декілька разів можуть виконуватися третій та перший етапи. Припустимо, що вже виконано к ітерацій, причому Дх > 0 . У цьому разі необхідно, використовуючи матриці Сх та Х„ провести наступну (к- 1)-у ітерацію. Перед початком ітерації виділяють знаком «-г» ті стовці матриці Сх, для яких нев’язки по стовпцях дорівнюва- тимуть: 8^,-І^о- 1=1 Перший етап. Якщо всі ненульові елементи матриці С/ зна- ходяться у виділених стовпцях, то одразу ж переходять до третього етапу. У супротивному разі нехай деякий нсвиділений нуль знахо- диться в і -му рядку і в у -му стовпці. Тоді обчислюють значення нев’язки і -го рядка: Д=1 Можливий один з двох випадків: 1 )6[А) = 0,2)5;*’ > 0. У першому випадку і -й рядок Сх відмічають знаком «-1-» праворуч від нього, а сам невиділений нуль відмічають штрихом. Далі переглядають елементи і -го рядка, що лежать у виділених стовпцях і шукають серед них суттєві нулі (нагадаємо, що суттєвим нулем С< зветься такий елемент с)*’=0, для якого ,х}*’>0). Якщо таким суттєвим нулем виявився елемент <?,'*’ =0. а сам стовпець // — виділений, то знак виділення «+» над стовпцем // скасовують, а сам цей нуль відмічають зірочкою. 194
Дос йдження операцій Відтак переглядають /і-й стовпець і підшукують у ньому нуль (нулі), що лежать у рядках, відмінних від /-то. Якщо такий нуль с, го відмічають його штрихом і аналізують нев’язку його рядка. Потім процес пошуку нулів та відмічання їх (штрихами або зіро- чками) продовжується аналогічно, і через декілька кроків він закін- чується одним з двох результатів: 1) знайдемо черговий нсвиділений нуль матриці С<, для якого нев'язка в рядку 6, >0. Тоді відмітивши його штрихом, переходимо до другого етапу; 2) усі нулі матриці С< виявилися виділеними, причому для кож- ного з нулів, що відмічалися штрихом, нев’язка 3}А) = 0. Тоді пере- ходимо до третього етапу. У другому випадку, коїи З,1*1 >0, відмітивши цей нуль штрихом, одразу переходимо до другого етапу. Другий етап. Його зміст полягає в побудові ланцюжка в ма- триці Сх із нулів, відмічених штрихами і зірочками, та в переході до нової матриці Хц|. Нехай для деякого нуля із штрихом матриці С*, розташованоїо_, на- приклад, в позиції (2,,/у ). нев’язка рядка <5^ >0. Починаючи з цього елемента СЛ = 0 , побудуємо ланцюжок із відмічених нулів матриці Сд рухаючись по стовпцю //,, вибирають нуль із зірочкою 0*л,Л1, далі ру- хаючись від нього вздовж рядка 2,, знаходять нуль із штрихом 0 л,д • Потім рухаються від нього вздовж стовпця /д до наступного нуля із зіро- чкою і т. д. Такий послідовний перехід від 0’ до 0* по стовпцю га від 0' до 0’ по рядку продовжують доти, доки це можливо. Можна довести, що процес побудови ланцюжка однозначний і скінчений, ланцюжок не має циклів, починається і закінчується ну- лем із штрихом. Після того як ланцюжок вигляду: побудований, здійснюють перехід до матриці ХА+І від матриці, X* за формулами: 9* 195
іайченко Ю.11 Х'Ь'.якшос'*' не на лежить до ланцюжка'. х'*1 -04,якщо - непарний за порядком слідування (3.3.7) хч 'у —хеяемешп ланцюжка < тобто с'*' =0 >; г,1/’ вк,якщос1*} парний за порядком слідування елемент іанцюжка < тобто с’*1 = 0* >; НІ ^^>=5 -Ух 0.3.8) Д, /< /- ІД. ’ ь=! <^>=а -Ут‘‘,’. Л А 4-і лі / /=1 Таким чином, ©А. - мінімальний елемент серед сукупності парних елементів ланцюжка, нев’язок рядка, де починається ланцюжок, та стовпця, де він закінчується. Обчис поемо нев’язку для Х^, = Д( - 20, На цьому (А'+1)-а ітерація закінчується. Третій етап . Отже, припустимо, що всі нулі виділені. Третій етап поляїас в переході від матриці С* до еквівалентної матриці С\, в якій з’явиться новий невиділений нуль (або ну.лі). Нехай Л = тіп{с-*)}, де мінімум береться серед усіх невиділених елементів матриці Ск. Тоді від усіх елементів невиділених рядків матриці С; віднімають її, а до всіх елементів виділених стовпців додають її. В результаті отримують матрицю СА(С* ~ С*), в якій всі суттєві нулі матриці С* залишаються нулями і, крім того, з’являються нові неви- ділені нулі Далі переходять до першого етапу, і в залежності від йото результа- ту або переходять до другого етапу, або знову веріаються на третій етап. За скінченне число повторів пари етапів третій-перший обов’язково перейдемо до другого етапу Якщо після виконання другого етапу ДА+І =0, го Х*,| - оптималь- ний план. В іншому випадку, переходимо до (/г+2) ітерації. Зазначимо деякі важ іиві особливеє іі угорського методу 196
Дослідження операцій Оскільки цей метод, на відміну від методу потенціалів, не викорис- товує опорних планів, то явище виродженості плану для нього відсутнє. Це виключає можливість зациклювання, пов’язаного з виродженістю планів Т-задачі, що полегшує програмування метода і його реалізацію на ЕОМ. Метод дає змогу на кожній ітерації за значенням нев’язки Д; оці- нювати близкість X* до оптимального плану, і, крім того, верхню межу необхідного числа ітерацій, що лишилися Мос/ (3-3.9) Ця формула справедлива для випадку цілочисельності усіх змінних аігі-\,т і Л,,/=1,л Обгрунтування угорського методу Насамперед доведемо справедливість ознаки оптимальності, тоб- то, якщо Дх = 0, то план X/ - оптимальний. Справді, згідно з правилом побудови X*, якщо х\^ >0, то ’ =0 (ці нулі називають суттєвими). Тому план X* виявляється оптималь- ним для задачі з матрицею С*, оскільки: <=і /-і Однак матрицю С* отримано еквівалентними перетвореннями із по- чаткової матриці С. Доведемо, що X* - оптимальний і для задачі з мат- рицею С. Матриці С і С*, як еквівалентні, зв’язані співвідношеннями: = є,, - а, - ру, для всіх (17). (3.3.11) Тоді значення цільової функції для плану X* з матрицею С дорів- нюватиме: » І ' 1 « / і ) І ' (3.3.12) 92 197
іайченко Ю П Проте, оскільки Л( =0, то Е4*’ = «> ' ' І^;у = Іл^. (33.13) І І Підставляючи (3.3.13) в (3.3.12), одержуємо з урахуванням (3.3 10). = =І«А • (3.3.14) ' ) і І Однак XаIаі 4 ЕР/, =сопзі і не залежить від плану X*, тому ' / план X* буде оптимальним і для вихідної задачі з матурицею С. Перейдемо іспер до обгрунтування алгоритму. Попередній етап На попередньому етапі (будують матри- цю X*, елементи якої задовольняють умови. £х<°> <а,,ї = І^, (3.3.15) і=і Е>‘°’<8у,/ = цЕ (3.3.16) Якщо всі обмеження (3.3.15), (3.3.16) виконуютьсся як строгі рів- ності, то план Хо — оптимальний, згідно з щойно доведденим. Перший етап. Мета першого етапу полягає у • пошуку такої о невиділеного нуля =0, для якого 8^’ >0. Пришустимо, що та- кий нуль знайдено, і ми перейшли до другого етапу. Другий етап. Він полягає у побудові ланцюзжка із нулів зі штрихами та зірочками й переході до X*, । Нехай ланчцюжок мас та- кий вигляд: -°к2Мз--- -Ом . (3.3.17) Елементи матриці X* 1 обчислюють за рекуренгнихми формулами: х^' +&ц,якщо -непарний елемент ланцюжкьа < тобто 0' >; / 1 якщо є*** —парний елемент іаниюжка а тобіпоО’ >; х''\в усіх інших випадках 198
Дослідження операцій де Є), - тіп 1<г<$ 0 ;8‘л,;б‘* .Н, І *! Р. Оскільки у кожному рядку і стовпці присутні як 0', так і 0*, або обидва вони відсутні, за вийнягком рядка X] і стовпця щ, де знахо- диться лише 0', то Ех^’,якир/*Я,; (3 3 19) 7 1 51 Л/>А) + ’ якщо І - Л , . / [ т У х*,“,яки/о / * и ; у<*.о (3.3.20) І +©*,яки/оу = р,. к і Тому, якщо матриця X* задовольняла обмеження (3.3.15), (3.3.16), то й мат риця X* > । також задовольнятиме їх. Нарешті на підставі співвідношень (3.3.19), (3.3.20) отримаємо пі п А*+І = + Е*, - 2ЕЕ*Г” = Іа,- + у Ь, - 2(£^ + Єк) = - 20, і=і ;=і і і । } і і Третій етап. Відповідно до правил переходу від С* до С'* при виборі елемента Л > 0 елементи невиділених рядків С* зменшуються на величину Л, з’являються нові нулі, й можна знову переходити до першого етапу. При цьому за правилами виділення рядків і стовпців всі суттєві нулі С* залишаться нулями і в матриці С\. Приклад 3.5. Знайти розв’язок транспортної задачі з такими умовами: 7 8 2 4 6 З 5 З 5 9 І 2 с- о, = 1І; а, = 11, «3 = 8, Ь, = 5;Ьг =9;/>з = 9Д =7. Перевіряємо умову балансу £«, = =зо. >=і і-і Попередній етап Віднімемо від елементів першого стовця 2’ другого - 3, третього -1, від четвертого - 2. Приходимо до мат- риці Сі. Далі, віднімаючи мінімальний елемент від елементів кож- ної о рядка, одержуємо матрицю Со: 9»» 199
кінченім Ю.П |5 5 4 1< ' С,= 0 І 4 7 ’ ,4 0 0 0 Побудуємо початкову матрицю перевезень: х б, о 5 0 5 0 0 0 о о 8 0 9 9 І 9 а, 7 II 0 II 0 8 7 0 г>, 4 6 0 Пов’язки для стовпців б, = 0, 1,9, 0, для рядків б, = 4; 6; 0. Сума- рна нев’язка До=£ч +^/>>-2ХХЧ<” =20' І ’ / і І Перша ітерація. Перший етап. Відмічаємо знаком «+» зверху перший і четвертий стовпці, яким відповідають нульові нев’язкп, рискою зверху — суттєві нулі. + 4 б 4 4 З 1 4 б' о Переілядаємо невиділений другий стовпець матриці Со, знаходимо В ньому невиділений нуль С}2 = 0 і відмічаємо його штрихом. Оскільки б, = 0, то виділяємо третій рядок знаком «+». Переглядаємо третій ря- док щодо виділених стовпців. Там суттєвих нулів немає. Оскільки в Су більше не лишилося нсвиділених нулів (всі нулі містяться у виділених рядках або стовпцях), то переходимо до третього етапу. Третій етап Серед елементів нсвиділених рядків і стовпців матриці Со знаходимо мінімальний елемент Л = 1, додаємо його до всіх елементів виділених стовпців і віднімаємо нсвиділених рядків. Отримаємо матрицю С]. 4 ♦ + « 4 4 3 0 Л = 1 « 4 З С„ = - ______С, = .0147 «00 4 б' 0 0 ♦ 5 0 від усіх елементів 2 0 З 7 0 І Переходимо до першої о етапу. 200
Дослідження операцій Перший етап. Серед невиділених стовпців знаходимо ну- льовий елемент С22 у рядку з ненульовою нев'язкою, а тому пере- ходимо до другого етапу. Другий етап Ланцюжок складається з одного елемента С22= 0- Знаходимо 0, = тш{і,б| = і і додаємо 6, = 1 до елемента х22. Одержуємо матрицю Х(: <5, <5, о о 5 І 0 8 0 0 0 7 4 0 0 5 0 0 0 9 0 Друїа ітерація. Перший етап. В матриці С! відмічає- мо знаком «+» перший, другий і четвертий стовпці, яким відпові- дають нульові нев’язки. Знаходимо В третьому СТОВПЦІ нуль С33 = 0 і відмічаємо його штрихом. Оскільки нев’язка третього рядка дорівнює нулю, то виділяємо її знаком «+». Переглядаємо цей рядок, знаходимо в ньому суттєвий нуль Сї2 у виділеному стовпці. Позначаємо його зірочкою й скасо- вуємо знак виділення другого стовпця. Далі переглядаємо другий стовпець й відшукуємо в ньому неви- ділений нуль С22. Оскільки йому відповідає нев’язка в другому ряд- ку > 0, то відмітивши цей нуль штрихом, переходимо до другого етапу. Другий етап. Будуємо ланцюжок в матриці С] вигляду °22 . а потім аналогічно ланцюжок з матриці Хь В результаті дістаємо матрицю Х2: 02 = тіп {5, 8, 9} = 5. + Ф ♦ <5, 4 3 2 0 02 = 5 0 0 0 7 1° 0 0 7 4 б б’ 3 7 Х.= 5 1 + 5 0 0 5 6 0 0 0 5 0' 1 + о(,8-5 0 + 5 0 3 0 0 3 0 5 4 0 0 0 Третя ітерація Перший етап. У матриці С2 відмічає- мо знаком «+» перший, другий і четвертий стовпці, яким відпові- дають нульові нев’язки. Знаходимо нульовий елемент Сп у третьо- му стовпці. Оскільки цьому відповідає нульова нев’язка в третьому рядку, то відмічаємо цей нуль штрихом. Далі, переглядаємо третій рядок, відшукуємо в ньому суттєвий нуль С32 = 0, що знаходиться у 9‘ 201
іиііченко Ю.П. виділеному другому стовпці, відмічаємо ярочкою цей нудь га ска- совуємо знак виділення над другим стовпцем. Переглядаємо другий стовпець, знаходимо в ньому нульовий елемент = 0 і відмічаємо його штрихом, а другий рядок, де він лежить, знаком «-*-» (бо £> = 0) Далі переілянувши другий рядок, знаходимо в ньому суттєвий нуль Сзі = 0 у виділеному першому езовпці. Тому позначаємо цей ну іь зірочкою й скасовуємо знак «+» над першим стовпцем Па цьому процес виділення нулів закінчуємо. Оскільки більше виді іених нулів немає, то переходимо до третього стану. Третій етан. Знаходимо мінімальний невиді іений елемент в матриці СЧ /і = 2, віднімаємо від усіх елементів невиділених рядків (першого) й додаємо до всіх елементів виділених стовпців (тобто четвертого). В результаті отримаємо матрицю Сз, в якій з'явився новий невиділений нуль (Сіз). Переходимо до першого етапу. Перший етап. В матриці С3 знаходимо невиділений нуль Сіз- Оскільки > 0, то переходимо до другого етапу. Другий етап. Увесь ланцюжок складається лише з одного елемента Тому 63 = тіп {£, = 4, £> = 4} = 4 Додаємо 0, до а-,1’’, одержимо матрицю Хі. ) 0 0' 7 >600 ) 3 5 0 0 0 4 7 0 5 6 0 С 0 0 3 5 С 0 £,0 0 4 0 4 4 0 0 £,0 0 0 0 Оскільки Дз = 0, то Хз - оптимальний план. Відповідне значення цільової функції Еорі = ХЕС>/ЛР = 89 (порівняйте з результатами • і розв’язання цієї ж задачі методом потенціалів, див. приклад 3.3). 202
Дослідження операцій Розділ 4 ДИСКРЕТНЕ ПРОГРАМУВАННЯ 4.1. МА ТЕМА ТОЧНІ МОДЕЛІ ЗАД А Ч ДИСКРЕТНОГО ПРОГРА МУ В А ННЯ Багато задач дослідження операцій, такі як розподіл ресурсів, ме- режове планування і керування, календарне планування, описуються математичними моделями дискретного програмування. Розглянемо загальну задачу максимізації: максимізувати Дхх,х2,..,х„), (4.1.1) при обмеженнях: ^і(х|,х2,..,х„)<0; .............................. (4.1.2) 8і„(х1,х2,..,х„)<0; Х = (х|,х2,..,хи]є£), (4.1.3) тут О - деяка множина. Якщо множина О скінченна або зліченна, то умова (4.1.3) - це умова дискретності і задача (4.1.1)-(4.1.3) є задачею дискретного програмування. Найчастіше умова дискретності розподілена по окремих змінних так: х} є £>у,у = 1,л • Якщо вводиться обмеження х} — ціле число, і = 1,л, то приходи- мо то задачі цілочисельного програмування (ЦП), а якщо вводиться 'юмеження х] = {0,1}, то до задачі булевого програмування. У іадачах дискретного програмування область допустимих роз- в’язків є неопуклою і незв'язною. Тому пошук розв’язків таких задач пов’язаний із значними труднощами. Зокрема, неможливо застосува- ти стандартний підхід, що полягає в заміні дискретної задачі її непе- рервним аналогом і подальшому округленні знайденого розв’язку до найближчого цілого. Проілюструємо це на такому прикладі. 203
Зайченко Ю.П. Приклад 4.1. Максимізувати (>, Зг,+3х,і, при обмеженнях 2ї|+ .ї2 ї3 < 4; 4г, -Зї2 <2; -З.ї] + 2хг + х3 5 3, де х, г »3 >о, V,, - цілі числа (>=і,2.3). Ігноруючи умову цілочисельності, знаходимо оптимальний план сим п лекс-мстодом: Т1ОІІГ ~ 0 • лг2и.т =0»-Т3оі:т ~ 4 Перевірка показує, що жодне округлення компонент цього плану не дає допустимого розв’язку, який би задовольняв обмеження цієї задачі Водночас оптимальний цілочисельний розв’язок задачі такий х° = 2- х° = 2- х° =5 Як бачимо, його не можна одержати простим округленням ком- понент оптимального неперервного розв’язку. Отже, для розв’язання задач дискретного програмування потрібні спеціальні методи. Методи розв’язання задач дискретного програмування поділя- ються на такі групи: 1) точні методи, до яких належить метод відсікаючих площин (Гоморі). метод гілок та меж, метод послідовного аналізу і відсіву варіантів, адитивний метод та інші; 2) наближені методи: метод локальної оптимізації, модифікації точних методів, методи випадкового пошуку та еврістичні методи, які максимально враховують специфіку розв’язуваних задач. За структурою математичної моделі задачі дискретного програ- мування поділяють на такі основні класи: 1) задачі з неподільними змінними; 2) екстремальні комбінаторні задачі; 3) задачі на неопук- лих та незв’язних областях; 4) задачі з розривними цільовими функціями. Розглянемо деякі з них. 204
Дослідження операцій Задані з неподільними змінними Математичні моделі задач цього типу ірунтуюгься на вимозі цілочисельності змінних {х,}, що випливає з фізичних умов практич- них задач. До таких задач належить, зокрема, задача про визначення оптимальної структури виробничої програми X = {хДу = І.л. де х2,..., V,, обсяг випуску відповідної продукції Математична мо- дель цієї задачі має такий вигляд: п максимізувати , (4.1.1) 7=' при обмеженнях: ^о|;л'7 </>,-, і = І,ні; (4.1.2) 7=1 х, >0,х2 >0,...,х„ >0; ху — цілі, при ]&.]. (4.1.3) Якщо ./ = N = {1,2,...,л}, то задача зветься повністю цілочнсель- ною, у супротивному разі, якщо ./ * N - частково цілочисельною. Задача про рюкзак. Однією з найпоширеніших задач цілочи- ссльного ироірамування є задача про рюкзак (або ранець). Постановки задачі. Турист гоїуєтьея до тривалого переходу в горах. Він складає речі в рюкзак, який може включати п видів погрібних пред- метів, причому предмет виду у має' масу іг,, у = 1,п. Для кожного виду предмета турист визначає його цінність Д під час переходу. Максима.іьна вата вантажу в рюкзаку не може перевищувати ІТ кг. Скільки предметів кожного виду він повинен покласти в рюкзак, щоб сумарна цінність спо- рядження була максимальна при обмеженні на масу рюкзака? Позначимо через х, — кількість предметів у-го виду в рюкзаку. Тоді математична модель задачі така: н максимізувати £,Е;х) (4.1.4) 7=1 при обмеженнях: (4.1.5) 7=1 ху > 0, — ціле, у = 1,л. 205
іаііченко Ю.П. Екстремальні комбінаторні задачі У цих задачах необхідно знайти екстремум деякої цинової функції, що задана на скінченній множині, елементами якої е пере- становки з и символів. Однією з найпростіших задач цього класу є відома задача про призначення (див. розд. 3). Знайти таку перестановку (Р|.Р2> ’Рл) 3 чисел 1, 2, .... п, на якій н досягається мінімум 110 УСІХ перестановках (р\.р2,- ,рн) • і=) Кожна така перестановка може бути представлена точкою в га- мірному просторі або у вигляді матриці Х"4” =||-\;|| - Введемо змінні’ [ 1, якщо і - й механізм призначено для / - ї роботи; ха = і 1 [0, у противному разі. Звичайно: £л-,у =1, у = 1,л; ’=' (4.1.6) = Ь ' = >•« 7=1 Задача про призначення полягає у знаходженні таких чисел {х,у}, при яких досягається тіп^^с,^ . при обмеженнях (4.1.6). ! І Хоча умова цілочисельності в явному вигляді відсутня в (4.1.6), вона виконується, оскільки задача про призначення є окремим ви- падком Г-задачі. Задача про комівояжера. Розглянемо відому задачу про коміво- яжера. Нехай маємо п міст: А,, А2, ..., А„. Задано матрицю С = |сг|| і,/= І.я відстаней між усіма містами. Комівояжер, виїхавши з почат- кового міста АІг повинен в кожному місті побувати рівно один раз і повернутися у вихідне місто А।. Погрібно знайти такий маршрут його руху, іа якого сумарна подолана відстань буде мінімальною. 206
Дослідження операцій Математична модель цієї задачі має такий вигляд: п п мінімізувати » (4.1.7) /=1 /=і при обмеженнях: £.гу = 1,/ = 1,л; (4.1.8) 7=1 Е'у=І./ = І.л; (4.1.9) і=1 и, и + плу < п - 1, і, / = 1.її, і * /, (4.1.10) де и,. и,- довільні цілі і невід’ємні числа. Умова (4.1.8) означає, що комівояжер виїжджає з кожного міс і один раз, а умова (4.1.9) - що він в’їжджає в кожне місто рівно один раз. Якщо обмежитися в моделі задачі лише умовами (4.1.8) і (4.1.9). то вона буде еквівалентною задачі про призначення, план якої зовсім не обов’язково має бути циклічним. Іншими словами, маршрут комівояжера може розпастися на ряд незв’язних переходів або циклів, тоді як насправді він має складатися з одного циклу. Щоб забезпечити цю вимоіу й використовується умова (4.1.10). Покаже- мо, що дійсно для довільного циклу, що починається в пункті А., можна знайти н, . які задовольни і ймуть умову (4.1.10). Нехай ч, — р. якщо комівояжер відвідує місто А, на р-му етапі. Звідси випливає, що и, - и! <п 1 для усіх і гау, таким чином, умова (4.1.10) виконується, якщо Хц= 0. При Л'„ = 1 умова (4.1.10) виконується як строга рівність: и,- и,+ п Хі, = р - (р+1 ) + « = «-!. З дача про покриття. Ця задача належить до класу ексгремаль- них комбінаторних задач на графах. Розглянемо типову задачу про покриття. Дано граф С. Необхідно знайти його мінімальне покриття, тобто таку мінімальну сукупність ребер, щоб довільна вершина графу була інцидентною хоча б одному ребру, що входить до покриття. Позначимо вершини графу через і, і = 1,2, а ребра у У =1,2, я. Граф характеризується своєю матрицею інциденцій вершин та ребер А = Ну , де 207
Зчйченко Ю.П. . 1,якщо вершина і інцидентна ребру у; [О, у супротивному разі Введемо множину змінних {л;), таких, що [і, якщо ребро і належить до покриття; хі = 1 [0, у супротивному разі. Тоді знаходження мінімального покриття еквівалентне такій задачі: п мінімізувати , /=1 (4.1.11) при обмеженнях: > 1, і = І.иі (4.1.12) /=і Задачі на пече ’язних та неопуклих областях Ці задачі являють собою моделі лінійного проірамування, в яких крім звичайних умов с додаткові умови, що перетворюють область допустимих рішень в неопуклу або незв’язну. Зокрема, при додаткових умовах Х]Х2 = 0,х( + х2 > 1 одержимо незв’язну область, що показана на рис. 4.1. 208
Досидження операцій Задачі на незв’язних областях. Нехай змінна г, задачі ЛП мас обмеження зверху і, крім того, обмеження вигляду або з к <а , або х^ > Ь, (4.1.13) де 0 < а < Ь < к/о . Задачі такого типу з додатковими логічними умовами виїляду АБО-АБО будемо називати дихотомічними (рис. 4.2). Введемо цілочисельну змінну іу(), що набуває значень 0 іа 1 Ця додаткова змінна ууо в цільову функцію не включається. Тоді Лл -* + Лу,0 >0; х/о+о'/о -гАл<|- »'л)г0; (4.1.14) ‘'-Ці Система (4.1 14) еквівалентна обмеженням (4.1 13) дійсно, якщо V ,0 = І. то 0 < хуо < « , якщо г,„ = 0, то хуо > 6; хУ(( < к /(). Розглянемо більш загальний випадок. Нехай в задачах математи- чною нроірамування з допустимою областю рішень С(Х) є альїер- нативне обмеження. або Л(х1.х2....,х„)>0; або Л(хІ,л2,...,-хп) > 0, де Л(гІ,х2,...,х„), Л(Х|,х2,...,х„) - задані функції. Припустимо, що відомі нижні границі функцій /і(х), к(х) на області С, які позначені (1 Введемо допоміжну змінну V = < і розі лянемо ВІДПОВІДНО Лгап , Лтіп . (4.1 16) систему нерівностей: Л(хІ,х2,...,хп)-Лтіп.у>0; к{ V, ,х2>...,х„) - Атіп(1 - у) > 0. Ця система еквівалентна альтернативному обмеженню (4.1.15) Отже, розглядувана задача при введенні допоміжної змінної стає задачею дискретною програмування. Задачі на неопуклих областях. Введення допоміжних дискрет- них змінних дає змогу здійснити перехід від задачі оптимізації на 209
іаиченко Ю.П. неопуклій області до задачі, що являє собою суму (об’єднання) опук- лих множин Нехай маємо задачу ЛП з допоміжним обмеженням (рис. 4.2): хг<к\,х2<к2, (4.1.17) причому або Х| < о,, або х2 - й2 • (4.1.18) Введемо змінну у і опишемо цю область системою нерівностей: 0< х, <а, + (А| - а,).!'; 0<х2<Л2 (к2-а2)у; (4.1.19) У більш загальному випадку при розв’язанні задачі може бути за- дана система множин (7ї,Т|'),(Т2,Г2),...,(Гр,Г^), причому розв’язок належить або ПТк . або (~]Тк Нехай для кожної пари множин (Г,7]') А А області Т, і Г/ описуються відповідно системами нерівностей: £і,(х|.л-2, ,.,х„)>0; £2.(*і-г2.-.хп)2 0; £аЛ*ь*2 х„)>0. ЛІ/(хІ.х2,...,х„)>0; Л2,(л-|,х2,••• ,х„)> 0; >ЧЛХ]-Х2,,х„)>0. (4.1.20) (4.1.21) Нехай, крім того, відомі числа {/’Аїтіп І - нижні межі для функцій 8аі(хі,х2,...,хо), Лд/(хі,х2....х„) відповідно. Введемо додаткову цілочиссльну змінну у = {0, 1) Тоді альтер- нативні обмеження: 210
Дослідження операцій 4Г|, ( Н >Х2 ,...,ХИ ) £1»тіп.» — 0> 8кД*\^2.....<п ) - Якітіп» °- ЛІ,(л1,л-2....,.г„)-ЛІ,тіп(1- 1)>О; (4 1.22) /'*, (х( ,х2 ,...,х„) Икі тіп (1 у) > 0; '0. Л Розі лянемо випадок у мовних або логічних обмежень. Нехай маємо логічне обмеження: якщо /і(хІ,х2,...,хи)>0,то *(Л|,х2». ...х„)>0. (4.1.23) Запишемо його в такому еквівалентному вигляді: аб° Л(хІ,х2,...,хл)>0, к(хІ.х2,..., т„)>0, або Л(хІ,х2,...,х„)<0 (4.1.24) Ввівши допоміжну змінну у — {0, 1}, приходимо до такої системи: Л(Х|,д2,. .,х(1)>Лтіпу; кіХі.х^.^х.Д^к^у; /і(л,. т2,....хн) < Л’(1 г), (4.1.25) де Л*=8ирЛ(х); хє(і /'тіп = /'(а)- /-тіп ~ ІП1 ~ множина визна- хєС, геО чення Л(х|,х2,...,х„) і к(\ьх2..... Розглянемо тепер інший випадок логічних умов. Якщо й(хІ,х2,...,х„)>0, то А:(д-|,.г2,...,х„)>0; якщо Л(хІ,х2,...,х„)<0>то/(хьл-2,...,х„)>0. (4.1.26) 211
Зийченко Ю.П. Введемо змінні Уі, Уз, одержимо: /'т.п’'1 <Л(лі,Х2....,Хп)<Л‘!2; к(хх.хг....х,,)> ктіпур, ЛА1, ^2»- ’’Ап ) — ^іпіп.1’2> У| * Г2 = 1, (4.1.27) де Таким чином, при використанні логічних змінних задачі з лоїічними (умовними) обмеженнями зводяться до задач дискретного програмування. Задачі з розривними цільовими функціями Найбільш відомою з цього класу задач с Г-задача з фіксованими доплатами [18]: іп п мінімізувати £ £су (х^ ) ’ і=1у=1 (4.1.28) при обмеженнях: я т г0. якщо Ху = 0; У X,: = а;', У X:; = Ь Сі; ІХ/і ) = ( >1 Й [сі)хіз+сІір якЩо ху>0 (4.1.29) Введемо допоміжні змінні Уу таким чином: 0 >4 - 1 | Аі/ - МуУір (4.1.30) де Му = тіп| о,,/>у}. Тоді цільова функція матиме вигляд: ГЕМ/ +<уу,у). і=і7=і (4.1.31) Задача (4.1.31) еквівалентна початковій задачі (4.1.28). Справді, при = 0, змінні хі,= 0, а при г,у= 1 обмеження (4.1.30) стають не- 212
Дос.идокення операцій суттєвими, оскільки вони виконуються при довільному опорному плані. Таким чином, ця задача є частково-цілочисельною. Розглянемо гелер більш загальну математичну модель із розрив- ною цільовою функцією на прикладі задачі про суміші. Запровадимо такі позначення: а,у — вміст елемента і в одиниці компоненіау;6,- обмеження знизу на кількість кожного елемента в суміші; с,- вартість одиниці компонента /;</,- фіксована вартість замовленняу-го компонента; ху - кількістьу-го компонента суміші. Необхідно скласти найдешевшу суміш, яка задовольняла б вимо- ги щодо вмісту кожного елемента в суміші. Формальна модель задачі така: при обмеженнях: мінімізувати /=1 п ! >Ьі, і = 1,/л, /=І Ху > 0, ДС 0, при Ху = 0; }+<!}, при Ху>0 (4.1.32) (4.1.33) (4.1.34) Припустимо, що на додаток до умов (4.1.33) задана для ху верхня межа Ту<Ау, О' = і’л)- Тоді запишемо задачу мінімізації в такому вигляді: п мінімізуваїи ^(Суг,- + ^7Уу), 7=1 при обмеженні (4.1 33) і додаткових умовах: (0 Г/ = 11, °-Х/-А7Г7- (4.1.35) (4.1.36) (4.1.37) 213
Зайчеико Ю П____________________________________________________ Еквівалентність частково-цілочисельної задачі (4.1.36) і початко- вої задачі може бузи перевірена аналої ічно Г-задачі з фіксованими доплатами Задачі, які зводяться до цілочнсельних Деякі задачі, що формально не є шлочисельними. мають цілочисельні розв’язки при довільних цілочиссльних вихідних даних. До таких задач належить, зокрема, Г-задача, яка формально не є цілочисельною, бо в ній відсутня відповідна умова цілочисель- носіі: ціле. Аналізуючи розв’язки Т-задачі, Г. Данпіг встановив гаку іеорему. Теорема 4.1. При довільних цілих значеннях а, і = \,т і Ь/ Т-задача завжди матиме цілочисельний оптимальний план незалежно від значень су. Доведення цієї теореми грунтується на двох положеннях існує початковий опорний цілочисельний план, при переході від одного опорного плану до другого цілочиссльність зберігається. Дійсно, з цих тверджень відразу випливає цілочиссльність усіх опорних п іанів, зокрема, оптимального Зазначимо, що цілочиссльність планів Г-задачі пов'язана із сгрукіурою її матриці обмежень і виконується для всіх її окремих випадків, найюловнішим з яких є задача про призначення та задача відшукання потоку на транспортній мережі. 4.2. МЕТОД ВІДСІКАЮЧИХ ПЛОЩИН Метод відсікаючих площин вперше розробив Р. Гоморі в 1957 1958 рр. для задач лінійною цілочиссльного програмування (ЛЦП) [18; 27]. Для групи методів відсікаючих площин використовується ідея «регуляризації» задачі Вона полягає в зануренні вихідної незв’язаної області допустимих розв’язків (дискретних точок) у відповідну непе- рервну опуклу область, тобто в тимчасовому відкиданні умов дис- 214
_______________________________________________Дос не) ясеппя операцій кретності. Далі до одержаної регулярної задачі застосовують сіандарт- ні методи оптимізації. Якщо отриманий у результаті розв’язок задовольняє відкинуту умову дискретності, го задачу розв’язано У супротивному разі ію- ірібно продовжиш процес розв’язання. Для задачі ЛІДІЇ відповідну ідею «регуляризацїї» запропонував Г. Данин, її було покладено в основу методу відсікаючих площин. Отже, припустимо, то потрібно розв’язати задачу ЛЦП: п мінімізувати £сулу , (4.2.1) 7=1 при обмеженнях: = Ь^ і = 1,/п , (4.2.2) 7=1 -гу>0, / = 1,л, (4.2.3) гу - цілі числа, у = 1, п . (4.2.4) Відкинувши на певний час умови цілочисельності (4.2.4), знай- демо оптимальний розв’язок. Якщо виявиться, що він задовольняє також умові цілочисельності, то цей розв’язок і є шуканим. У супро- тивному разі потрібно сформувати додаткове обмеження, яке задово- льняє будь-який цілочисельний план, але не задовольняє знайдений оптимальний нецілочисельний план. Таке обмеження називають «правильним відсіченням». З точки зору геометрії правильне відсі- чення являє собою гіперплощину, яка відсікає від опуклого много- гранника відповідної задачі ЛП деякий многогранник, який містить всі цілочисельні розв’язки вихідної задачі. Далі до вихідної системи обмежень іадачі додають правильне відсічення й описаний процес розв’язання продовжують аналогічно. Якщо правильне відсічення сформоване задовільно, то можна споді- ватися, що за скінченне число ітерацій буде знайдено розв’язок зада- чі ЛЦП або зафіксовано несумісність її умов. Розглянемо задачу ЛП (4.2.1 )-(4.2.3) і припустимо, що всі {«„), }, }с,) цілі числа і т < п. Нехай {Л|, А-і, .. , А,„) — лінійно незалежні вектори обмежень, що утворюють базис системи (Аь А?, ..., А„'(. Очевидно, матриця Ах= { А), Л2, .. , А,,,} - невироджена й існує обернена до неї Ач 215
ісіііченко Ю.П. Помноживши обмеження задачі У Л — Ь на А’’, отримаємо: і і £ах А,а, = А, Ь = хи • (4.2.5) /=| Це співвідношення в розгорнутій формі запису мас вигляд: її *, - = Г,0’ ' = Г=т+1 Звідси V, = м 1= \.т, (4.2.6) І-т+1 де ї, - базисна змінна: х,0 - її значення. Співвідношення (4.2.6) справедливе для будь-якого розв’язку, у тому числі й оптимального. Підставляючи вираз (4.2.6) в (4.2.1), дістанемо: Мх) - Е(-ї,о - Е^х,)с, + ЕСЛ = і(4.2.7) »•! І иі+1 /=і у лі*І Розв’яжемо задачу ЛП (4 2 1)-(4.2.3) си.мплекс-методом або дво- їстим симплекс-методом. Припустимо, що оптимальним виявився базис (Аі, Аз, А„,}. Елементи останньої симплекс-таблиці позна- чимо через х„, причому Ау = хОу, а стовпець вільних членів - через [ Ло ]. ’ = • Виберемо один з них, наприклад гі0, і починаючи з 1-го рядка, ви- ведемо співвідношення для додаткового обмеження (правильного відсі- чення). Позначимо через [т,,] тлу частину, а через /„= х,,- [х„] дробову частину числа х,„ причому хц> [х;(]. Очевидно, 0 < Уі,< 1. Нехай х=[л,] і = 1,иі - деякий оптимальний план задачі (4.2.1) (4.2.3). Його компоненти зв’язані рівнянням (4 2.6). Підставимо х,, - [х„] + у„ в (4.2 6) і після нескладних перетворень одержимо: 216
Дослідження операцій -V, КоИ £[*ук/=Ло Хгчхг (4.2.8) у=т+1 (=»н 1 Співвідношення (4.2 8) справедливе для будь-якого плану розв’я- зуваної задачі. Припустимо, що х - цілочисельний план. Тоді, враховуючи цілочисс іьність лівої частини (4.2.8), дістанемо Уіі) ~ Vх і 5 ' /~Ш+І де Е ціле число.а 0 < < 1.0 < у,, < 1. Тепер можливі два випадки: а) £ > 1; б) Е < 0. У першому випадку, якщо припустити, що %^1. го /і0=Зг І/Іут/^І+ їг,7V, >1, звідки /,0> 1, що суперечить умо- /-іп+І /=т-1 ві 0 < у,0 < 1 Тому лишається прийняти Е, < 0, тобто справедлива нерів- ність: п (4.2.9) 7=ш+| Непілочиссльний план х не задовольняє нерівності (4.2.9), оскіль- ки у,0> 0, а ліва частина нерівності (4.2.9) дорівнює нулю, бо х, = 0, для всіх небазисних компонент у = іп +1, т +2, ..., п. Водночас будь- який цілочисельний план задовольняє (4.2.9) як строгій рівності, то- му що /|0 = 0 для всіх і. Отже, обмеження (4.2.9) є правильним відсіченням. Його запи- сують в еквівалентній формі: ЧІ + і = /10+ Е/у*у '„+І-0- (4.2.10) у-ш + 1 або /,о= Е /іЛу + Гц+і. (4 2 11) І-пні і додають до почаїкової системи лінійних обмежень задачі 10і 217
іайченко Ю.П. Змінні нової задачі такі {лі, х2, ,л,ні}. Її обмеження вже розв’я- зані стосовно базисних змінних плану х = {.г:, г>, .,х„,} і нової змін- ної г„+, отже, маємо псевдоплан з базисними компонентами: х,= хіП, і = \,т , х„+- = -ут. Симплекс-таблиця цьою псевдоплану утворюється шляхом допису- вання до іабтиці знайденою оптимального плану х рядка з елементами '~У,ю приу=0; І - / при / є Іік-У де іжЛ - множина індексів гв+1,=<! (4.2.12), небазисних векторів; 0, в інших випадках. Одночасно до таблиці дописують одиничний вектор Лг<і, такий, «4-І що А,^| =[0,0,. ,0,1] п Для цього плану застосовують двоїстий симплекс-метод. На пер- шій же ітерації із базису обов’язково буде виведено вектор, що від- повідає змінній хч+ь оскільки в стовпці ц,0 таблиці є один від’ємний елемент хІгИ = -уі0< 0. Називатимемо веиікою ітерацією методу відсікаючій пющин сукупність ітерацій алгоритму двоїстого симплекс-методу, що при- водять від псевдоплану з дробовими компонентами до наступного оптимальною тану (не обов’язково цілочисельного). Залежно від результату великої ітерації розрізня гимемо три випадки: 1) у стовпці аі0 всі хі0— шлі числа, причому х,0>0. Ця умова визначає оитимальніст ь знайденого плану; 2) отримано новий план, де всі х)0 > 0, але не всі є,0 — цілі числа. Тоді потрібно сформувати нове правильне відсічення і перейти до чергової великої ітерації; 3) отримано деякий проміжний псевдоплан, де є елемент х,п < 0 такий, щох,7> 0 для всіх/ = І, 2, . , п. Це ознака нерозв’язності задачі. Змінні \П¥І, що вводяться в задачу на початку кожної нової іте- рації, звуться додатковими, а змінні х„ / = 1,» - основними. Якщо додаткова змінна є небазисною для деякого проміжного псевдопла- ну, то рівняння є„+, = 0 входить до сукупності співвідношень, що 218
Дос лідження оперений визначають цей псевдоплан. Тільки-но ця змінна знову стає базис- ною (тобто вводиться до базису), її значення стає бай тужим до осно- вних змінних. Тому рядок і стовпець, що відповідають змінній \,ІЧ, у відповідній симплекс-таблиці (за в усіх наступних) викреслюють З геометричної точки зору це правило можна пояснити так Якщо псевдоплан опиниться всередині півпростору хп+І > 0. то додаткове обмеження, що визначається пнерилощиною гл+, = 0, стає несуттє- вим, тому його можна видалити. Зробимо деякі зауваження стосовно методу Гоморі 1. В основі методу відсікаючих площин Гоморі лежить двоїстий симплекс-метод, бо він дає змогу легко врахувати нові обмеження (правильні відсічення) в процесі розв’язання задачі й переходити від поточного псевдоплану до нового оптимального плану. 2 При деяких умовах можна гарантувати скінченність алгоритму І оморі. Достатні умови скінченності алгоритму встановлюються в такій теоремі [18]. н Теорема 4.2. Якщо цільова функція задачі Ь = обмежена 7=1 зверху і знизу на множині розв язків, причому множина оптимальних розв'язків являє собою опуклий мпогогранник, правильне відсічення формується за рядком таблиці з иецілочисеїьною компонентою л,0. що мас мінімальний номер, а індекс вектора, що вводиться до бази- су’. визначають за величиною (Д = тіп- і ху то алгоритм Гоморі буде скінченним, тобто за скінченне число ітерацій приведе до випадку 1) або 3) 3. Правильне відсічення можна формувати й за індексним ряд- ком. Нехай на А-й ітерації елементи індексного рядка такі: V А1/’, ..., А'*1, причому Ар*’= Л(хА)-не ціле число. Позначимо через у0, дробову частину елемента Л;: хоу=А,- [А, ]. У цьому випадку правильне відсічення записується так: _/оо-“ +ли+і- (42.13) 10* 219
Заичєнко ЮП 4 На відміну від звичайної задачі ЛП, ця задача ці ючиссльною проірамування погребує великого обсягу обчислень навіть при ма- лих т і а її Кількість ізерацій суттєво залежить від з ого, наскільки вдало сформовано правильні відсіченння. 5. В резульгаїі постійного поліпшення базового алгоритму мето- ду Г оморі було розроблено нові алгоритми відсікаючих площин (другий і третій алгоритми Гоморі [12; 27]), які викорисювуюгь ефе- ктивніші правильні відсічення. Приклад 4.2. Розв’язані методом 1 оморі задачу ЛЦП Е - х і- т, -» тах, при обмеженнях: біс, + 5.Г, < 20; 2 г, -< Зг? < 10, ї, > 0, г, > 0 Спочатку розв язуємо задачу ЛП симплекс-мстодом. Вводимо вільні змінні х3 та х, і заповнюємо симплекс-таблицю 4.1 Таблиця 4 1 с,\С) 1 1 0 0 В ї 4 А Д л, <- 0 *3 20 В 5 1 0 0 10 2 3 0 І А 0 -1 -1 0 0 Виконавши одну ітерацію симплекс-мстоду з направляючим елементом х3) = 6, приходимо до таблиці 4 2. 220
Дослідження операцій Таблиця 4 2 с,\с; 1 1 0 0 в. 4 А, А, А, Л 1 Л'і 10/3 1 5/6 1/6 0 <-() 10/3 0 43| -1/3 1 А 10/3 0 2/3 1/3 0 Виконавши одну ітерацію симіїлекс-методу з направляючим елемснюм = 4/3, приходимо до габлиці 4.3 Таблиця 4 З с,\е, 1 1 0 0 В. 4 Л А А, 4 1 X, 5/4 1 0 3/8 5/8 і Л2 5/2 0 1 -1/4 3/4 А 15/4 0 0 1/8 11/8 В габлиці 4.3 знайдено оптимальне, але не цілочисельне рішен- ня, тому переходимо до методу Гоморі. Будуємо по рядку х. правильне відсічення і записуємо до таб- 13 5, лиці 4.3 в рядок а\ : — = — х, — г, + їх, . 4 8 8 Одночасно дописуємо праворуч стовпець Аь = [0 0 1]г. Отримаємо таблицю 4.4. І О2 221
Іайчеико Ю П. Таб чиця 4 4 с,\с, І 1 0 0 в. 4 А А 4 4 А, 1 А 5/4 1 0 3/8 5/8 0 1 А 5/2 0 1 -1/4 3/4 0 <— X, -1/4 0 0 -5/8 1 А 15/4 0 0 1/8 11/8 0 Далі вирішуємо двоїстим симилекс-мстодом 1 3 1 11 5 Оскільки —————<— =—, то направ іяючий стовпець А Викона- 8 8 3 8 8 1 вши одну ітерацію двоїстого симплекс-методу з направляючим еле- ментом -3/8 отримаємо таблицю 4 5. Табіиця 4.5 с,\с 1 1 0 0 В, 4 А А 4 4 А- І Л1 і 1 0 0 0 1 1 А 8/3 0 1 0 1/3 -2/3 0 А 2/3 0 0 1 5/3 -8/3 А 11/3 0 0 0 1/3 1/3 Оскільки х, -8/3 не цілочисельна, будуємо правильне відсі- чення ио х2 Для цьою дописуємо рядок іа стовпець А =[0 0 01] до габлиці 4 5 В результаті отримуємо таблицю 4.6 222
Дос пОжения операції/ Таблиця 4.6 ^с, 1 1 0 0 Вл 4 А. А 4 4 4 4 1 ї. 1 1 0 0 0 і 0 1 <2 8 3 0 1 0 1/3 -2/3 0 0 X д 23 0 0 1 5/3 -8/3 0 <-0 -2/3 0 0 0 ЕШ -1/3 І А 11/3 0 0 0 І/З 1/3 0 Виконавши ітерацію двоїстого симплекс-методу о гримуємо таблицю 4.7. Таблиця 4.7 і С,\С,- І 1 0 0 В, 4 А 4 А 4 4 4 І X. і 1 0 0 0 і 0 1 X, 2 0 і 0 0 -і І <-0 -8/3 0 0 1 0 >із/з{ 5 0 4 2 0 0 0 І 1 -3 а 3 0 0 0 0 0 1 Виконавши одну ітерацію двоїстим симплекс-.методом з напра- вляючим елементом а - = —13/3, отримуємо таблицю 4.8. Зауважи- мо, на цій ітерації необхідно шову вводити до башсу л5, яка була використана при формуванні правильного відсічення, тому за прави- іами метода Гоморі рядок і стовпець /5 можна опустити. 10** 223
Заіїченко Ю.П. Таблиця 4.8 с,\с7 1 1 0 0 вх 4 А, 4 4 4 4 4 1 X. 1 5/13 1 0 3/13 0 15/13 0 1 Х2 34/13 0 і -3/13 0 -2/13 0 0 Х4 18/13 0 0 3/13 1 -24/13 0 х* -5/13 0 0 -з/і з: 0 -2/13 1 Д 3 0 0 0 0 1 0 Складаємо правильне відсічення по рядку х] і дописуємо рядок х8 та стовпець А* до таблиці 4.8 і отримуємо таблицю 4.9 Таблиця 4.9 с,\с; 1 1 0 0 4 А 4 4 4 4 4 1 ХІ 0 і 0 0 0 і і 1 Х2 3 0 і 0 0 0 -і 0 1 0 0 0 1 -2 і 5/3 0 0 1 0 2/3 -13/3 Д 3 0 0 0 0 1 0 Оскільки В СТОВПЦІ А() всі компоненти невід’ємні, а крім того х. та х, - цілі, то нами знайдено оптимальний розв’язок: х° = 0; х° = 3 та тах / = 3, 224
Дос лідження оперений 4.3. МЕТОД ГІЛОК ТА МЕЖ Метод гілок (віток) та меж належить до групи комбінаторних ме- тодів дискретного програмування і є одним з найпоширеніших мето- дів цієї групи. Вперше метод гілок іа меж запропоновано в праці Ленд та Дойг в 1960 р. стосовно задачі лінійного цілочисельного програмування. Проте ця праця помітно не вплинула на розвиток ідей дискретного програмування. Друге народження методу пов’язане з дослідження- ми, які виконали Літтл, Мурті, Суїні та Керол в 1963 р , присвячени- ми задачі про комівояжера. Розглянемо задачу дискретного програмування в загальній формі: мінімізувати 2=/(х), (4.3.1) при обмеженнях: х є С, де С - скінченна множина. В основу методу гілок та меж покладено такі процедури, які да- ють змоіу в багатьох випадках суттєво зменшити обсяі перебору ва- ріантів [18]. Обчислення нижньої межі (оцінки) тіп і. Часто-густо можна, не розв’язуючи задачу (4.3.1), знайти нижню межу (оцінку) цільової функції на множині розв’язків С (або на деякій ЇЇ підмножині) % (С) таку, що для всіх х є X: /(х)>^(С). Розбиття на підмножини. Реалізація методу пов'язана 1 постій- ним розбиттям множини планів 6 на дерево підмножин. Це розбиття проводи і ься за такою схемою. Нульовий крок. Задано вихідну множину С = 6*°’. Певним чи- ном вона розбивається на скінченне число підмножин ..., С‘І). А-а ітерація (к > 1). Нехай множини , С{*’ ще не підлягали розбиттю. Зіідно з правилом, наведеним нижче, серед них 10і 225
Зайченко Ю.П вибирають множину 6\(А) й розбивають її на скінченне число иід- множин (рис 4.3) С’1'1’. Перерахування оцінок. Якщо С с С2, го тіі/(х)>тіі/(х) ХєГл, Тому, розбиваючи в процесі розв’язання множину на підмножини С,, О,, ..., С, (Со - 0 С,) ’ завжди вважаюсь, що оцінка для будь-якої і=1 ' з них не менша за оцінку для вихідної множини С». тобто для всіх мно- жин С- (к+1)-й крок 226
Дослідження операцій Відшукання розв’язків. Д ія конкретних задач можуть бути різні способи відшукання розв’язків в послідовних розбиваних підмножи- нах. Кожен такий спосіб опираєт ься на специфіку задачі. Ознака оптимальності. Нехай с = £ і деякий и іан х0 є С,- । і Якщо при цьому / (Хц) = Е, (О,) < Е, (О,) для всіх /, то х(1 - оптимальний план. .V Оцінка точності наближеного розв’язку. Нехай С = СІ С - 1-1 д = тіп^(Сі). Якщо х - деякий план задачі, то £ < тіп /(х)</(х). і ' Якщо різниця Д = / (х) Е, не велика, то х можна взяти за наближений розв’язок, а Д буде оцінкою його точності. Опис алгоритму методу Нульовий к р о к. Не розв’язуючи задачі (4.3.1), обчислюють оцінку Е, (Сі) = Е, (С'0’). Якщо при цьому вдається знайти гакиц план хо, що/(хи) = Е, (СІ0>), го Хц- оптимальний план. Якщо оптимальний план х(| не знайдено, то деяким способом роз- бивають множину СПІ) на скінченне число підмножин С](І), С^11, , С(,), що не перетинаються, таких, що С<0)= С((І) ІД- ІХ?1' і переходять до першої ітерації. Перша ітерація. Обчислюють оцінки Е, (с-”) при і = 1,2, ... , Г|. Якщо знайдено такий план х<>, що х0 є С^11 (1 < р < г,) і /(х0) = с, (С*,”) < £ (С)1’) при і = 1, 2, ... , Г|, то хо - оптимальний план. У супротивному разі для подальшого розбиття вибирають най- більш перспективну множину б*.1’ згідно з таким правилом: £(С1<,,) = тіп£(С,*1’). (4.3.2.) 10** 227
Заііченко К) 11 Відтак розбивакм ь множину с{.” на декілька підмножин Г| О<п = С с’1/ Далі перепозначають множини, які ще не були розби- ті ті, С^'.Ср’..С^1, й переходять до другої ітерації. к-а і г е р а ц і я. Обчислюють оцінки £, (б**1) при /=1,2. , г*. Якщо вдасться знайти іакий план х0, для якою ./(*о) = ? (С^,*1) < діС-*1) для всіх / = 1, 2, ... , гА, то х0 — оптимальний план Якщо ж оптимальний план не знайдено, то знову вибирають най- більш перспективну множину 6\(*’ таку, що <(С,(*))=тш^(С‘*’). (4.3.3) / Далі розбивають множину С{,*' на декілька підмножин С?' = ОС**? і переходять до (А* 1 )-ї ітерації. і=і Зауваження При реалізації описаної вище загальної схеми ме- тоду гілок та меж для окремих задач дискретного проірамування потрібно розробити конкретні правила розбипя вихідної множини, способи обчислення оцінок і знаходження планів, виходячи із спе- цифіки конкретних задач. Метод гілок та меж для задачі цілочисельного програмування Розглянемо частково-иілочисельну задачу ЛП. II мінімізувати г=/(х)= /=і при обмеженнях’ п 3=1 (4.3.4) (4.3.5) 228
Дос лідження (Ліе/іаній О < г, < і/„ / = кл; (4.3.6) Л',-ціле, у = І,л (п/ < п). (4.3.7) Як і в методі відсікаючих площин, процес починають з розв’язання неперервної задачі ЛП. Якщо одержаний при цьому оп- тимальний план х(> не задовольняє умову цілочисельності (4.3 7), го значення цільової функції £() = /(х0) дас нижню оцінку (межу) для шуканого розв’язку, тобто г = Е#. Нехай деяка змінна х,()(1 < ф < п}) ще не набула в плані х() цілочи- сельного значення. У цілочисельному плані значення х потрібно або зменшити принаймні до [ т, ], або збільшити принаймні до 1*ф] + 1- Якщо межі зміни х, спочатку не задано, то їх можна обчислити, розв’язавши для цього дві допоміжні задачі ЛП Ці задачі поляїають в мінімізації та максимізації г при обмеженнях (4.3.5) іа (4.3.6). Далі розв’язують задачу ЛП (4.3.4)~(4.3 6) з додатковим обме- женням А < [А ] або х, > [х, ] -г 1, де, як і вище, [ х,0 ] означає цілу частину х,. Знайдений оптимальний розв’язок інову аналізують щодо виконання умови цілочисельності (4.3.7) Цей процес розв’язку можна представити у вигляді дерева, в яко- му вершина 0 відповідає плану х0, а кожна зв’язана з нею гілками вершина відповідає оптимальному плану такої задачі: мінімізувати г при обмеженнях (4.3.5), (4.3.6), і додаїковій умові що змінній х;0 надано значення г,п < А,- або х,п > ф0 +1, де - ціле число. Кож- ній з таких вершин надають оцінку {; = £,( Ф, к), яка дорівнює тіп г при зазначених вище обмеженнях. Очевидно, = £,( Ф, к) для всіх к. Якщо оптимальні плани отриманих задач задовольняють умови цілочисельності, го план з мінімальною оцінкою £() - тіп £ (фД) і А буде оптимальним планом початкової задачі. У супротивному разі потрібно продовжити процес розбиття. При цьому кожного разу для подальшого розбиття вибирають вершину з найменшою оцінкою. 229
Зайченко Ю.ІІ. Опис алгоритму Нульова ітерація 1. Виїначення множини Со. Множина визнача- ється умовами (4.3 5), (4.3.6). 2. Знаходимо оптимальний план задачі (4.3.4) при умовах (4.3.5). (4.3.6). З Обчислюємо оцінку £, (С(1) = / (хп). Якщо план Хо задовольняє умови цілочисельності, го він є шука- ним. У супротивному разі переходимо до першої ітерації. Перша ітерація. 1. Вибираємо деяку нецілочиссльну компоненту а, = х,0, 1 < і < іц . Множину Со розбиваємо на дві непересічні під- множини С, , Ср так: С.1" = {х: х є Со та х, <[х, ]} ; (4.3.8) Ср - {х: хєС0 та лг, >]-і-1(4.3.9) 2 Розв’язуємо задачу ЛП (4.3.4) на множині с}1’ і знаходимо оп- тимальний план х‘”. Відповідно розв’язуємо задачу ЛП (4.3 4) на множині Ср і знаходимо план х’,’. З Обчислюємо оцінки * (С ) = /(Х]п) та £ (б’Р) = /(х,11). Перевіряємо ознаку оптимальності. Якщо хр - цілочисельний і С, (СР)= тіп {£(6р),$ (6’р)}, го х,'" - шуканий план. У супротивному разі переходимо до наступної ітерації і виконуємо процедуру розбиття. (А-~Н)-« ітерація. Нехай вже проведено к ітерацій, в результаті яких побудовано шдмножини С,ІА), і = 1,гА , визначено оцінки д (Ср), і ще не знайдено оптимальний розв’язок Тоді вибираємо найбільш перспективну підмножину таку, що £ (ср)= шіпг (с;*’). і 230
Дослідження операцій 1 Розбиваємо .множину С[к} на підмножинн 6(А), б(А) так, що б}.** - б'*’ І) б',*’ і С'А,Г| С'А> =(&() Для цьої о вибираємо деяку нецілочисельну компоненіу плану , наприклад Тоді підмножинн б,,*’ іа визначаються із умов: С;А| = {х : хєС/’ та .г,[х,0]{: (43.10) 0£’={х : хєС,|А’ та л; >[л;0]*1|. 2. Розв’язуємо задачу ЛП (43.4) на підмножинах о[*’, с[к^ 1 зна- ходимо оптимальні плани х’А’, х[А, та відповідні їм оцінки: £( с'7) =/(х'/,’); С™) =/( х<А >) 3. Якщо х^А' задовольняє умову цілочисельності, то вершина С[,к' - кінцева, і подальшому розбиттю не підлягає Якщо при цьому іакож і. (С^) = тіп £, (б,А), де { б,(А) } - множина всіх висячих вершин, то І х*А1* — шуканий цілочисельний план (цс ознака оптимальності). У су- противному разі потрібно продовжиш цей процес розбиття Зазначимо деякі особливості застосування методу гілок і меж для задачі ЛЦП. 1. Якщо всі коефіцієнти с, ці іьової функції - цілі при 1 <7 < н- і дорівнюють нулю при у > н, то оцінку £, (С<і)) можна замінити на більш «сильну» оцінку £ (б\(А)) = 1/(х‘А')[, де знаком ]а[ позначено найближче ціле, не менше, ніж а (тобто ]о[ >а). 2. Із наведеного опису алгоритму випливає, що в застосуванні ме- тоду гілок і меж для повніст ю га частково-цілочисельних задач немає жодної відмінності. 3. Нові обмеження, що вводяїься на кожній ітерації, він ляду х, ] або х; >[х, ]+1 виконують роль правильних відсічень за ана- логією з методом відсікаючих площин. 231
Зайченко Ю.П.________________________________________________ 4. При введенні нового обмеження немає позреби знову розв’язувати всю задачу (4.3.4), а можна використати результати по- передньої ітерації і безпосередньо ввести в симплекс-таблицю опти- мального розв’язку х(гА ) попередньої задачі нове обмеження. 5. При розв’язанні задачі ЛП максимізацїї методом гілок і меж використовують верхню межу/оцінку: £ (С‘*’) = тах/(х). У цьому випадку ознака оптимальності формулюється протилеж- ним чином порівняно із задачею тіп /(к). Приклад 4.3. Розв'язати методом гілок та меж таку задачу (яку в прикладі 4.2 було розв’язано методом Гоморі): Р = х} + х, тах при обмеженнях бл’| + 5х, < 20 2х} + Зх, < 10 хрх, > 0 Оптимальний розв’язок задачі ЛП х° наведено в таблиці 4.10. Таблиця 4.10 с,\с( 1 1 • Л А А2 А л 1 5/4 і 0 3/8 5/8 ' 1 Х-, 5/2 0 1 -1/4 3/4 Д 15/4 0 0 1/8 11/8 Обчислюємо оцінку на МНОЖИНІ Со: £(ОГ|) = [/(•/')] = 15 _ 4 _ ~ 3 232
Дослідження операцій Оскільки X] =5/4 - не цілочисельна, то розбиваємо по цій компо- ненті Со. 6'0 = С, о С->, де С\ = Сп^(х, < = 1); С’ = С„п(х,>2) Запишемо обмеження х. <1 у вигляді: х. + х5 = 1 . Дописуємо рядок х5 і стовпець 4 =[0 0 1]г до таблиці 4.10. Відні- маємо від х5 рядок х(, й отримуємо рядок х5 в таблицю 4.11. Далі розв’язуємо задачу двоїстим си.міілекс-методом. Таблиця 4.11 с,\с; 1 1 ф В' А 4 4 4 Д 1 5/4 1 0 3/8 5/8 0 1 х. 5/2 0 1 -1/4 3/4 о - Х5 1 1 0 0 0 1 <— Х5 -1/4 0 0 Гз/8 -5/8 І д 15/4 0 0 1/8 11/8 0 Виконавши ітерацію двоїстим симплекс-.методом з напрямним еле- ментом -3/8, отримаємо новий розв’язок х. 4 з який наведено в таблиці 4.12. 233
іайчецко Ю.П Таблиця 4.12 єгХєч 1 1 0 0 0 в 4, А д 4 4 А, 1 А. 1 1 0 0 0 1 1 А, 8/3 0 1 0 1/3 -2/3 <3 2/3 0 0 1 5/3 -8/3 А 11/3 0 0 0 1/3 1/3 Цей розв’язок теж не цілочисельний. Його оцінка £(С ) = [/(г )] = 3. Тепер знаходимо розв’язок на множині сї =(?оп(г >2). Записуємо цс обмеження у вигляді г -Л'6 = 2, або -х + г6 = -2 Дописуємо рядок х6 до таблиці 4 10 і складемо йою з рядком А'6 отримуємо х6. Складаємо таблицю 4 13. Таблиця 4. ІЗ с, \с 1 1 0 0 0 . В 3 4 Я, 4 4 А 1 X 5/4 1 0 3/8 5/8 0 1 А'? 5/2 0 і -1/4 3/4 0 -2 -1 0 0 0 1 -ч -3/4 0 0 3/8 5/8 1 А 15/4 0 0 1/8 11/8 0 В габлищ 4.13 в рядку х6 х60 = - — < 0, а всі інші компоненти рядка х6 невід’ємні, го ця задача нерозв’язна. Отже СІ’=0, а <(о;)=-<х. 234
Дослідження оперииій Друга ітерація Переходимо до подальшого розбиття МНОЖИНИ С). Для ЦЬОІО використовуємо змінну X, =8/3 8 З = 2 га Використовуємо 2 обмеження V, < — Отже: С = С V Сг7 , де С." = С, (.х, < 2); — С, (х-, > 3) Шукаємо розв’язок задачі на множині С: . Дописуємо цей рядок л'6 і стовпець до таблиці 4 12 Віднімаємо від ньої о рядок а., й отримуємо х6. Дописуємо цей рядок в таблицю 4.14 і вирішуємо двоїстим симплекс-.методом Таблиця 4.14 с,\с; 1 1 0 0 0 в, А А А А А А 1 А. і 1 0 0 0 і 0 1 X, 8/3 0 і 0 1/3 -2/3 0 0 Ь 2/3 0 0 1 5/3 -8/3 0 Ч 2 0 1 0 0 0 1 <— Х6 -2/3 0 0 0 Ц7з 2/3 1 д 11/3 0 0 0 1/3 1/3 0 Виконавши ітерацію двоїстим симилекс-методом з направляючим елементом хм=—1/3 приходимо до таблиці 4 15, де наведено х.". 235
Зайченко Ю.П. Таблиця 4.15 с,\с( 1 1 0 0 0 В 4 А Я, 4 4 а5 4 1 X. 1 1 0 0 0 і 0 1 X, 2 0 1 0 0 0 1 0 -8/3 0 0 1 0 2/3 5 2 0 0 0 1 -2 -3 А 0 0 0 0 Ця задача не розв’язна, оскільки г30 < 0, а всі інші компоненти рядка х. невід’ємні Отже С2 = 0, а ^(С7 ) = -ос Шукаємо розв'язок на множині (7; . Записуємо обмеження х, > 3 у вигляді г, - х6 = З або -х., + х6 = -3 Записуємо рядок х6 до іабли- ці 4.12 і отримуємо таблицю 4.16. Таблиця 4 16 с,\с, 1 1 0 0 0 в, 4 А, 4 4 4 4 4' 1 X. 1 1 0 0 0 і 0 1 X*-, 8/3 0 1 0 1/3 -2/3 0 0 2/3 0 0 1 5/3 -8/3 0 хь -3 0 -1 0 0 0 1 <— хь -1/3 0 0 0 1/3 (37з 1 Виконавши одну ітерацію двоїстим симплекс-методом отримуємо план х; у таблиці 4.17. 236
Дос нОження операцій І Оскільки х = — - не шлочиссльна, го далі проводимо розбиття по для цьою використовуємо обмеження змінній х Третя ітерація Отже розбиваємо: О2 = С3 С3, де О3 = 62 (х < 0) та о;3 = о;2 п(х, > і). Спочатку використовуємо ЛП-задачу на множині б3. Обмеження Х( < 0 записуємо у вигляді х, т х, =0 Дописуємо рядок х7 з цим обмеженням до таблиці 4.17 і долаємо стовпець /17. Далі віднімаємо від рядка х7 рядок х, й отримуємо х7 Записуємо це в таблицю 4.18 і далі розв’язуємо двоїстим симплекс-методом. 237
Зсіїічєііко Ю.П. Таблиця -1.18 СЧ 1 1 0 1 0 4 Л 4 4 4 4 4 4 1 А 1/2 1 0 0 ' 1/2 0 3/2 0 1 X, 3 0 1 0 0 0 -1 0 0 л'з 2 0 0 1 1/3 0 -4 0 л'з 1/2 0 0 0 -1/2 1 -3/2 0 ь 0 1 0 0 0 0 0 1 <— X, / -1/2 0 0 0 0 -3/2 1 Таблиця 4.19 с \с. 1 1 1 0 0 0 4 Д л. 4 4 4 4 4 1 X 0 1 0 0 0 0 0 д 1 X, 3 0 1 0 0 0 -1 0 л’з 5/3 0 0 1 0 0 -5 2/3 1 0 0 0 0 1 0 -1 ' х 2 0 0 0 1 0 3 -2 Д 3 0 0 0 0 0 Оцінка на множині С?: ^(С3) = [,/(х3)] = 3 . Оскільки 5(6’) = ^(6°) = 3 . го розв’язок А'1 = [0;3] ( оптимальним. Знайдемо розв’яюк на множині С2 за обмеженням а > 1. Для цього це обмеження перепишемо у ВИГЛЯДІ А'! — т7 — 1 або -а -А', = -1 й дописуємо до таблиці 4.17. 238
Дослідження операцій Складаємо цей розв'язок з рядком і отримуємо таблицю 4.20. Таблиця 4.20 С/Ч 1 1 0 0 0 ВЛ 4 А Д 4 А 4 4 4 1 X. 1/2 1 0 0 1/2 0 3/2 0 1 3 0 1 0 ' 0 0 -1 0 X, 2 0 0 1 1/3 0 -4 0 Х5 1/2 0 0 0 -1/2 1 -3/2 0 X. -1 0 0 0 0 0 0 1 X- -1/2 0 0 0 1/2 0 3/2 1 31/1 0 0 0 1/2 0 1/2 0 Оскільки х7 < 0, а всі елементи рядка х1 невід'ємні, го дана задача не розв’язна. Таким чином, оптимальний розв'язок л° = 0 та х” = 3. Порівнюючи цей розв'язок з розв'язком за методом Гоморі (див. приклад 4.2) пересвідчуємось, що вони співпадають. Побудуємо дерево розв'язків для даної задачі. Рис. 4.4 239
Зайченко Ю.П._____________________________________________________ Метод гілок та меж для задачі комівоямсера Постановка задачі. Нехай є п міст А, Аз, . , А,„ зв’язаних іранс- порзною мережею Задано матрицю відсіаней С = [с(у , причому в іагальному випадку с(/ * Сц. Комівояжер починає рухатись, наприклад, із міста А|, повинен побуваїи в кожному місті ті іьки один раз і повсрнуїися у вихідне місто А . Необхідно відшукати такий замкнений .маршрут, або цикл (/„А, , /„), що проходить через кожне місто один раз, при якому мінімізується сумарна (загальна) довжина шляху. ,І2, , і.,) = є,.,-, + 4 е,п,- (4.3.12) Опис алгоритму. 1. Визначення множини С(<”, яка складається з усіх циклів (замкнених маршрутів) 2. Визначення підмножин с},*'(и = 1,2, А = 1,2, .), кожна з яких складається з усіх циклів, підпорядкованих одній із таких дода- ткових умов: а) із пункту і належить безпосередньо перейти в пункт у для усіх пар (і, /), які входять в деяку множину Р,}*’. б) із пункту і забороняється безпосередньо перейти в пункт / для усіх пар (/,/), які, входять в деяку множину «заборон» Д**’ З Обчислення оцінки для С’(”. Розглянемо деякий цикл А, А, .. , і„. Відповідна йому відстань дорівнює: /(і,. А, ... , І„) = с,-/2 +с,-2,3 + " + с>я/| (4.3.13) Нехай тіпс,, =Л, Тоді с'у = су /і, >0. і Далі, нехай тіп є'; = Н7. Тоді с" = с'у Н7 = су. - Л, - Н) > 0, і /(/.А, ...,ія)= ЕЛ, 4^/Уу + (с;і,2 (43.14) і=і і=і Вище описану процедуру перетворення матриці, що дає змогу з вихідної невід’ємної матриці С отримати матрицю С", називають зведенням, а величину 240
Дослідження операцій (43.15) ЬІ сумою констант зведення. Справедлива така теорема [18]. Теорема 4.3. Оптимальний план задані комівояжера з матрицею С" є оптимальним і для задачі з матрицею С. При цьому довжина маршруту (циклу) Ці,, і?, ... , і,,), що відповідає матриці С, і довжина маршруту Г'дзя матриці С" зв ‘язаиі співвідношенням: КімІ2, •• ,/„) = /"(' ,ь, .,/„) +^(С"у), (4.3.16) де ^0"") = ^. Доведення теореми випливає безпосередньо із співвідношення (4.3.14). 4. Розбиття Кожній вершині множини С{.А) дерева рішень від- повідатиме своя оцінка £,() і своя зведена матриця с[А). Множи- ну С}.А) розбивають на дві підмножини. Для цього певним чином (див нижче) вибирають пару пунктів (г, т), що не входить до мно- жин Р„(А) та Т3/*). Після цього виконують розбиття С}А) на підмно- жини 6**’, С[^ так, що с,(*) = с^,)ііс‘а2). Тут с'А) утворюється із введенням додаткової умови: із пункту г здійснити безпосередній перехід у пункт т, а - із умови: із пун- кту г заборонено безпосередній перехід у пункт т. Отже, /?*’ - ’ О (г,Щ), Х*і = X*’; = Р'^Рг.і = Р II(7^) . Вибір пари (є , т) базується на таких вимогах. Підмножину с[^ вибирають так, щоб вона з найбільшою ймовірністю містила оптима- льний цикл, а навпаки: не містила. 11і 241
іайченко Ю.П Щоб виконати першу вимогу, пару (>-, ш) погрібно вибрати так, щоб задовольнялась умова 4*’0.ш) = 0, (4,3.17) де с},*’(г,т) - (г , »і)-й елемент зведеної матриці с[А). Щоб виконати другу вимогу, пару (г , т) необхідно вибрати так, щоб циклам, які входять до множини ’ відповідали якнайдовші шляхи Згідно з ви іначенням множини , для будь-якого циклу шлях із пункту г в пункт т має містити такі переходи: із г в деякий проміжний пункт у (/ * /и) та із деякого пункту і (і * г) в пункт пі. Довжина цього шляху буде не менша, ніж 0 (г,т) = тіп с,(А ’Щу) - тіпс},А)(і,лі) = аг + /?,„ (4,3,18) Отже, лишається вибрати пару (г, т) так, щоб 6 (/-, т) було мак- симальним, тобто 9(г, т)= тах 0(р,<7) = птах [а 4/? !, (4.3.19) (р.чУ де ар = тіп с}А)(р,7); /? = тіп с}А,(іл/). При цьому, звичайно, необхідне виконання умови: 4А,(р,<7) = 0. (4.3.20) 5 Обчислення оцінок. Розглянемо розбиття = с'Д’ . Спочатку розглянемо підмножину і вкажемо правило переходу від матриці С’/’ до С^. Матриця Є1/] містить ті самі рядки і стовпці, що й матриця Побудуємо деяку проміжну матрицю С\к\ згідно з правилом- ^(М) = с[А)(і,У), якщо (/, /) * (г,лі); со , якщо (йу) = (є,лі) 242
Дослідження опертий Застосувавши до С’А' процедуру зведення, отримують При цьому сума констант зведення дорівнює 6 (є. т). Таким чином: ) = і;( СІ* *)+ 6 {г, т). (4.3.21) Тепер розглянемо множину і визначимо правило переходу С(А) __ , р до С,). Оскільки, за визначенням, підмножина С^1 містить безпосеред- Ній перехід 13 пункту Г ДО пункту /И, ГО при переході ВІД Є; ДО С1( ] потрібно викреслити рядок г і стовпець т В результаті дістають Єг / . Далі необхідно перевірити, чи не містить С’*,’ рівно один цикл. Якщо це так, то до матриці застосовують процедуру зведення. її п Одержавши суму констант зведення = ^Іі, г ,, перераховують <=і ;=і оцінку ^(С‘Л,’)= ^(С^^ + Л^. (4.3.22) При цьому значення £, (с\к^) дорівнюватиме довжині цього єдиного циклу Якщо підмножина с[к^ містить більше одного циклу, то потрібно заборонити можливість утворення підциклів (тобто часткових цик- лів), які проходять через меншу, ніж п, кількість пунктів. Для цього необхідно знайти всі маршрути, що містять перехід (г, т). Процес заборони утворення підциклів виконують так. Насамперед можливий підцикл (г, т, г). Його виключають шля- хом заборони переходу (т, г). Для цього приймають г^*’(т,г) = оо . Якщо з елементів Д(А) можна скласти маршрут (іь і2, ... , ір, г), то можливі підцикли виїляду (ід, /,+1, ... , г. т. іч), де 1 < ц <р. Забо- роняють ці підцикли, прийнявши Г1(*)(ш,(і/) = оо. Аналогічним чином, 11 243
Зайченко Ю.П. якщо з елементів множини /’(А) можна скласти маршруї (ш,ь, ... то можливі підцикли вигляду (г, т. і-, ... , ір, г). Щоб їх ви- ключити, забороняють переходи (ї(/, /). Для цього вважають = х * 1 - Я -Р- Вс’ *нш’ елементи матриці С^,1 лишають без змін. Далі до матриці С’Д1 застосовують процедуру зведення і знахо- дять матрицю С'*’. Позначимо через (С**/) відповідну суму кон- стант зведення. Тоді оцінки £, () обчислюють за формулою: ) = ^ (С™) + (С“>) - (4.3.23) Приклад 4.4. Розв’язати задачу комівояжера, що визначається мат- рицею С (табл. 4.12). Таблиця 4.12 ' 7 0 1 2 3 4 5 0 X 4 10 13 4 8 1 2 X 9 7 6 7 2 8 5 X 5 5 9 3 5 8 5 X 7 ‘10 4 6 4 4 9 X 4 5 5 1 4 8 3 X Нульовий крок. Застосувавши процедуру зведення, отри- маємо матрицю Со (табл. 4.13). Таблиця 4.13 і 7 0 1 2 3 4 5 л, СЦ 0 X 0 6 9 0 4 4 0 1 0 X 7 5 4 5 2 4 2 3 0 X 0 0 4 5 0 3 0 3 0 X 2 5 5 0 4 2 0 0 5 X 0 4 0 5 4 0 3 7 2 X 1 2 Н, 0 0 0 0 0 0 Р/ 0 0 0 5 0 4 244
Дослідження операцій Знаходимо оцінку: иС0,)= £л, + £н,=2і. 1=1 І-1 Відтак обчислюють величини а,о І /7,(1: ; /?/о = с , де < , - найменший елемент рядка іп , відмінний від <,, = 0; аналогічно >цГ. 1 *И »0 р — найменший елемент стовпцяу0, відмінний від елемента с1(і7о. Оскільки 02з = ог + Рз= 5; 01о=а1+ро = 4; 645 = 04 + 35= 4, тах {ер } = тах { о23; е|о; Є45} = 5 = 0 (2, 3), то вибираємо для першо- (м> го розбиття пару (2;3) (с„ (2;3)=0). Перший крок. Проводимо розбиггя с'01 = с1<||ис^11, де під- множина с[" -така, що с}'’ = {(2; 3)}, а ^” = {(2^)!. Обчислюєімо оцінку £, (ср) = Е, (Со) + о,3 = 21 + 5 = 26. Для обчислен- ня Е, (о!") потрібно побудувати ^матрицю с!п. Для цього в матриці с() викреслюємо другий рядок і третій стовпець, і беручи елемент с32 = оо, здійснюємо процедуру зведення. В результаті одержуємо матрицю с{" (табл. 4.14). Таблиця 4.14 І І 0 1 2 4 5 Л, а, 0 X 0 6 0 4 0 0 1 0 X 7 4 5 0 4 3 0 3 X 2 5 0 2 4 2 0 0 X 0 0 0 5 4 0 3 2 X 0 2 "і 0 0 0 0 0 _А_ 0 3 2 4 Знайшовши л^’= 2>,+ £н, =0, визначимо оцінку для множини с?”: ^(с}") =^(С")+ЛіК;,'”) =21. II2 245
Зайчеико Ю.П. Оскільки Е, (б!" і < Е, (бр), то на насіунному кроці розбитно підля- гає шдмножина с,\1. Другий к р о к. За матрицею ср вибираємо пару (4;5). по якій проводимо подальше розбиття, оскільки с,"’(4;5) = 0, а 0 (4, 5) = 4 = тахО(г.иі) . РоЗІб’ЄМО МНОЖИНу бр На ІіІДМНОЖИНИ б!21, бр , бр-бріїбр так, що ер = {(2;3),(4;5)!, О’Р = ((2:3),(4І5)). Обчислю- ємо оцінку Е, (бР) = Е, (Ор) + 0 (4;5) = 21 + 4 = 25. Далі будуємо ма- трицю ср. Для цього в матриці с]: викреслюємо четвертий рядок і п’ятий стовпець, і, поклавши с54 = оо, виконуємо процедуру зведення. Отримаємо матрицю ср* (табл. 4.15). Таблиця 4.15 І І 0 1 2 4 11, а. 0 X 0 3 0 0 0 1 X 4 4 0 4 3 0 3 X 2 0 ‘ 2 5 4 0 0 X 0 0 0 0 3 0 Р, 0 0 3 0 Знаходимо Лі.(С{2,) = Хлр + Хнр = з. Тоді Е, (б;21) = Е, (Ор) + мер) =21 + 3 = 24. Оскільки Е, (б1 ') < Е, (бр), то для подальшого розбиття виберемо множину бр. Третій крок. На цьому кроці виберемо для розбиття пару (1;0) в матриці ср, оскільки 0(І;0) = 4 = тах 0 (р, ц) (табл.4.15). Проводимо розбиття с;2) =6° ббр, де бр = {(2;3), (4;5), (І;0)|, бр = ^2,3);(4.5);(Г0)} І ОбчИСЛЮЄМО ОЦІНКУ £,( бр) = Е,(Ср ) + 0 (1,0) = 24 х + 4 = 28. 246
Дослідження операцій Побудуємо матрицю ср (табл. 4.16) і знайшовши /кчеР) = 2, обчислимо оцінку ^(С}3’) = 24 + 2 = 26 Таблиця 4.16 І І 1 2 4 ь, а, 0 X 3 0 0 3 3 1 X 0 2 1 5 0 0 X 0 0 0 0 0 Р: 1 3 0 Оскільки Е, (ср) > Е, (сР), ю далі розбиваємо підмножину ср. Четвертий крок. Передусім побудуємо матрицю сР. Для цього в матриці ср візьмемо с45 = оо. Виконаємо процедуру зведення (табл. 4.17). При цьому і, (ср») = Е, (Ср ) + /мер) =21+4 =25. Таблиця 4.17 і І 0 1 2 4 5 Ьі «і 0 X 0 6 0 0 0 0 1 0 X 7 4 1 0 1 3 0 3 X 2 1 0 1 4 2 0 0 X 00 0 0 5 4 0 3 2 X 0 2 Ні 0 0 0 0 4 01 0 0 3 2 1 11** 247
Заііченко Ю.П. В матриці с1,2’ виберемо пару (4,2) Проводимо розбипя 0’р* на шдмножини о,'4’ і де с,4> =с<2' П(4,2); о;4’ = Є}2' 0(47). Е, (6^) = £,( (А2') + Є (4, 2) = 25 + 3 = 28. Обчислимо оцінку £, (с}4,і. Для цього в матриці с*,2> викреслимо четвертий рядок і другий стовпець, покладемо с34 = оо і, виконавши процедуру зведення, одержимо матрицю С4' (іабл. 4.18). Оскільки £л, + Хн/=о.то£(б1'4') =^(с(2') =25. Таблиця 4.18 ‘ і 0 1 4 5 Ь, оц 0 X 0 0 0 0 0 1 0 X 4 1 0 1 3 0 3 X 1 0 1 5 4 [о 2 X 0 2 Ні 0 0 0 0 Рі 0 0 2 1 На наступному кроці розбиваємо підмножину с[4’ оскільки < ^(ОБІ- П’ЯТИЙ крок Вибираємо пару (5; 1) в ма гриці с,4‘. Проводи- мо розбиття о'4’ на підмножини о'5’, о(5’ так, що 6,(5, = 6Г’П(5;1); ОБ = О’4’А(5ЇЇ); = ^(С‘4)) + Є (5;1) = 25 + 2 = 27 Далі будуємо матрицю сБ- Оскільки £л,+ £//, =о, то £,(с{51) = £,(0{41) = 25 (табл. 4 19). 248
Дослідження операцій Таблиця 4.19 І 1 0 4 5 Ні а, 0 X 0 0 0 0 1 РІ 4 X 0 4 3 0 X 1 0 1 Н: 0 0 0 Рі 0 4 1 £,( &!”) < Е,(С*25,)> тому далі розбиваємо підмножину с}5'. Шостий крок. В матриці с{51 виберемо чергову пару (1 ;0), оскільки 0(1 ;0) = 4 = тах 0 ( р, ц). Розіб’ємо с}51 на підмножини с}61 ,с{6' так, що о‘61 = с,<5)11(і;0), сі6‘ = б|’5’ ІДЇ-О). Знайдемо оцінку ^(6^) =^(о;5>) + 0(1;О) = 25 + 4 = 29. С(б> = Таблиця 4.20 і І 4 5 Ьі а. 0 0 X 0 — 3 X 0 1 — Н- 0 0 Р; - — Відтак будуємо матрицю с1,6’ (табл. 4.20). Для цього в матриці с|” викреслюємо відповідні рядок і стовпець і після зведення утво- реної іидмагриш одержуємо с{61. Е, (0‘6‘) = і, (О'5’) + лЕ(с;6‘) = 25 + 1 = 26. Із матриці с'6' вибираємо дві останні пари (0;4) і (3;5). В резуль- таті отримаємо цикл, що відповідає підмножині с}1" = {(2;3); (4;2); (5,1); (1 ;0); (0;4); (3;5)}. Довжина цього циклу дорівнює оцінці для множини ор : / = Е, (с{81) = 26 У цьому можна перекона- 11’ 249
Заиченко Ю.П. тися безпосередньою перевіркою. Оцінка (с}*’) є найменшою серед оцінок для всіх висячих вершин дерева розв’язків (рис 4.5), отже, знайдено оптимальний цикл. Процес побудови дерева розв’язків на- ведено на рис. 4 5, а знайдений мінімальний цикл - на рис. 4.6
Дослідження операцій 4.4. ЗАДАЧА БУЛЕВОГО ПРОГРАМУВАННЯ ТА АДИТИВНИЙ АЛГОРИТМ її РОЗВ’ЯЗАННЯ Важливий клас задач дискретного програмування утворює задача булевого програмування зв’язку: п максимізувати > 7=1 при обмеженнях: п і < Ь,, і = \,т; Ху Є {б,1},у = І,л. (4.4.1) (4.4.2) (4.4.3) До цього класу задач належать численні задачі дослідження опе- рацій, такі як задача розміщення виробництв, задача про призначен- ня, задачі синтезу структури транспортних та інформаційних мереж та інші. Розроблено багато точних і наближених методів її розв’язання. Деякі з них розглянемо нижче. Перший точний алгоритм розв’язання булевої задачі запропонував Е.Балаш у 1966 р [3]. Цей алгоритм діс- тав назву адитивного. Розглянемо його основні ідеї. Якщо врахувати тільки умови (4.4.3), то існує 2" можливих на- борів значень змінниххь х2> .... х„. Багато з них є недопустимими че- рез обмеження (4.4.2) і лише мала частка з них є оптимальними. Розглянемо деяку підмножину Ху , у = 1,5, в якій кожній змінній Ху поставлено у відповідність деяке значення 0 або 1. Така підмножина зветься частковим розв’язком. II*** 251
Зайченко Ю.П. Змінні X/, які не входять в частковий розв’язок, звуться вільними змінними. Будь-який набір числових значень зветься доповненням відповідного часткового розв’язку. Якщо частковий розв'язок міс- тить з змінних, то існує 2""5 доповнень. Формально процес пошуку оптимального розв’язку можна представити у вигляді генерації де- якого дерева варіантів, де кожна вершина (не кінцева) відповідає де- якому частковому розв’язку, а можливі його доповнення генерують гілки дерева (рис. 4.7). Крім того, кожному частковому розв’язку відповідає деяка задача основного списку. Припустимо, що відома нижня досягнута оцінка оптимального зна- чення цільової функції (4.5.1) і зафіксовано допустимий розв’язок, який визначає цю оцінку. Тоді, якщо якимось чином вдасться довести, що для деякої о часткового розв’язку не існує допустимого доповнення, яке має значення цільової функції, більше за поточну нижню оцінку, то немає 252
Дослідження операції/ потреби у подальшому розв’язанні, тобто цей розв’язок відсівається. У цьому випадку кажугь, що частковий розв’язок прозондований. При зонду- ванні часткового розв’язку, який містить 5 змінних, неявно перебирається 2" ’ можливих значень. Існує зв’язок між основною ідеєю адитивного алгоритму і принципом оптимальності динамічного програмування (див п.7.1) Стосовно розглядуваного алгоритму цей принцип формулюється так. При заданому частковому розв’язку значення решти змінних по- трібно вибирати так, щоб доповнення цього розв’язку було оптималь- ним. При відсутності таких значень вільних змінних або у випадку, коли навіть оптимальні значення цих змінних приводять до гіршого значення цільової функції порівняно з поточною оцінкою, не існує оптимального розв’язку, що містить даний частковий розв’язок. Нехай на довільній ітерації п відома нижня оцінка -р') оптималь- ного значення ц. ф. (це значення можна вибрати так само, як і в ме- тоді гілок та меж). Крім того, на кожній ітерації формується основний список задач, в якому кожній задачі відповідає деякий частковий розв’язок. На іте- рації 1 основний список містить дві задачі, отримані в результаті ви- бору лА., причому приймається, що частковий розв’язок однієї задачі гА. = 0, а другої хк = 1. Існує декілька способів, які можна застосувати, щоб встановити, чи існує деяке доповнення розв’язку, що дає значення ц. ф., яке пере- вищує поточну нижню оцінку. Наприклад якщо задача містить обмеження: - їх; + 2х2 - 5х3 + 4х4 - Зх5 < 0, (4.4.4) то не існує доповнення часткового розв’язку х> = 1, х3= 0, х4 = 1, який би задовольняв умову (4.4.4). Припустимо, що цільова функція описується виразом: го = 1 Хі + 2хг + 4х3 + Зх4 - 1 х5 (4.4.5) і =8. Тоді, щоб поліпшити значення , доповнення має задовольня- ти обмеження’ ІХ| + 2х2 + 4х3 + Зх4 - 1х5 > 4”'+1=9- (4.4.6) 253
Зсійченко Ю.ІІ.____________________________________________________ Жодне доповнення часткового розв’язку Хч = 0, х5 =0 не буде допустимим за умовою (4.4.6). Формалізуємо наші міркування таким чином. При даному частковому розв’язку х, =дгіє;1 запишемо об- меження (4.4.2) у такому вигляді; <6,- - і = ї./і, (4.4.7) іеі ієі де І - множина індексів змінних часткового розв’язку. М\1 - множина індексів вільних змінних, Xі - множина всіх індексів змінних, і кож- ній змінній х, часткового розв’язку поставлено у відповідність деяке значення, що входить під знак £ у правій частині (4.4.7), а коефіцієн- ти в обмеженні при і = 0 (ц. ф.) дорівнюють аОу = - с,, а Ьо= -1. Тоді не існує допустимого доповнення, якому відповідає значення ц. ф., шо перевищує нижню оцінку, якщо £тіп{«„,0} >Ь, - ^а,Іх/ при будь-якому і. (4.4.8) /«І /є/ Як бачимо, ліва частина (4.4.8) являє собою суму всіх від’ємних коефіцієнтів при ВІЛЬНИХ ЗМІННИХ. Якщо ця сума більша, ніж права частина нерівності, тб навіть ко- ли х} = 1 для всіх тих вільних змінних, для яких а,. < 0, не можна ви- конати /-те обмеження (4.4.8). Іншим важливим моментом є те, що при заданому частковому розв’язку іноді вдається визначити, яке значення повинна мати віль- на змінна при будь-якому допустимому доповненні, у випадку, коли значення цільової функції перевищує поточну нижню оцінку. Зокрема, для будь-якої вільної змінної хк у випадку, коли Ітіп^.о}+ \аік > ЬІ - при вільному /, (4.4.9) /єЛ',7 /є/ хк = 0, якщо аік > 0, та хк = 1, якщо аік < 0. Справедливість цього твердження можна перевірити на прикладі задачі, яка містить таке обмеження: 2хі + (~2)х2 + Зх3 - 2х4 < 0. (4.4.10) 254
Дос лідження операцій Неважко переконатися, що при частковому розв’язку х> = 1, х3 = 1 в будь-якому доповненні мас виконувалися умова х3 = 0, бо тільки годі виконуватиметься обмеження (4 4.10\ Перевірки (4.4.8), (4.4.6) можна застосовувати також і до склад- них обмежень, створених у формі лінійної додатної комбінації вихі- дних обмежень (4.4.2), а саме: п т т ХЇ.Уі«ііх) (4.4.11) /=1І=І /=і де у,>0. Наведемо приклад використання таких складних обмежень. Розглянемо умови: - Х| - Хі - 2х3 < -1; 3x2 - Зх4 + Зх5 < 0; 2х3 + 3x4 - Зх5 < 0. При частковому розв’язку Х| = 0 застосування перевірки (4.4.8) до кожного обмеження окремо не вказус на недопустимість доповнення. Однак можна переконатися, що застосування (4.4.8) до суми цих об- межень: -Х| + 2х2<- 1 при Х| = 0 одразу показує, що допустимого доповнення не існує. Аналогічним шляхом застосування перевірки (4.4.9) до суми цих обмежень при хі = 1 дає, що в будь-якому допус- тимому доповненні Хо = 0 Опис адитивного алгоритму. Нехай вже проведено к ітерацій і знайдено поточну нижню оцінку оптимального розв’язку ^А)і спи- сок задач. Опишемо (к+1 )-у ітерацію. Перший крок. Закінчити обчислення, якщо основний список задач порожній. У супротивному разі вибрати чергову задачу з осно- вного списку й викреслити її з нього. Другий крок. Якщо можна знайти вільні змінні, які повинні мати певні значення при будь-якому доповненні, коли значення ц. ф. перевищує , то відповідним чином розширити вибраний частко- вий розв’язок. Якщо можна встановити, що не існує допустимого доповнення, у якого значення ц. ф. перевищує грА), то покласти з^+|) - і повернутися до першого кроку. У супротивному разі перейти до третього кроку. Треті й крок. Якщо розширений частковий розв’язок ви- явиться повним (тобто містить всі л змінних), то зафіксувати його і 255
Зайченко Ю.П. повернутися до першого кроку. У супротивному разі перейти до чет- вертого кроку Четвертий крок. Вибрати будь-яку вільну змінну хх , що не входить до розширеного часткового розв’язку. Ввести дві нові задачі до основного списку У першій з них взяти лЛ = 0 у розширеному розв’язку, а в другій - л5 = І Покласти г^11’ = і повернутися до першого кроку. Зауваження. При закінченні роботи алюритму у випадку, коли зафіксовано допустимий розв’язок із значенням п ф. 4*', Цей розв’язок буде оптимальним. У супротивному разі допустимих розв’язків не існує. Алгоритм забезпечує збіжність за скінченне чи- сло ітерацій. Приклад 4.5. Розглянемо задачу булевого програмування: максимізувати (3»; + бх, + Зх3 + + іЗх5і = г, і = 0, (1) при обмеженнях- -З.Г| — 6х2 + 6х, + 12.1’4 < 8, І=1; (2) б.Г| + 12л, - Зх, 6х4 + 7х, < 8, і=2; (3) Перша ітерація Перший крок. Візьмемо г0= 0. Це відпо- відає допустимому розв’язку, в якому всі х,= 0. Припустимо, що в основний список входять задача 1 з частковим розв’язком х5= 1 і задача 2 з частковим розв’язком х5 = 0. Другий крок. Знайдемо деякі вільні змінні (х, *х5), які по- винні мати певні значення, щоб задовольнити обмеження (2)-(4) при умові х5= 1. Застосуємо перевірку (4.4.9) при і = 1 та і = 2, тоді одержимо х- = х, = 0 Далі при умові, що х5= 1, а х2 = х4 = 0, повторне застосування умов (4.4.9) при і = 1, і = 2 дає х, = х3 =0. Таким чином, отримано повний розв’язок, який містить всі змінні. Відтак перевіряється допустимість цього розв’язку при і= 0, 1, 2, яка в розілядуваному випадку зводиться до перевірки його допу- стимості іа умовами (2}-(4). 256
Дос лідження операцій ОТЖС, фІКСуСМО ЦСЙ РОЗВ’ЯЗОК Л; = г, = ц = Л; = 0, ч= 1, 4П= 13. Покладемо 42* = 13 і перейдемо до другої ітерації Друга ітерація. Перший крок. Виберемо із списку задачу 2, де ї}= 0 Обмеження за значенням ц. ф. запишеться так: ЗЛ) + 6хі + Зх, + 6х4 + ІЗх^^Хц2' 1 — 14, або -Зх, -6х, -Зх, -бзі 13х5< —14, і— 0. (5) Другий крок Застосування умов (4 4.9) при і = 0, 1,2 не приводить до розширення часткового розв’язку т,= 0, і аналогічно застосування (4.4.8) не виключає можливості появи допустимого розв’язку із значенням ц. ф. £'> 13. Тому переходимо послідовно до третього кроку, а потім до четвертого кроку, бо частковий розв’язок не є повним. Четвертий крок. Виберемо вільну змінну х, , та внесемо в основний список задачу 3, в якій х,= 0, х, = 1, і задачу 4, в якій х5 = 0, Х| = 0. Переходимо до першого кроку наступної ітерації, поклав- ши 4у = +-Р = із. Третя ітерація. Перший крок. Виберемо із списку задачу 3. Перевірка за умовами (4.4.9) при і = 0, 1 не дає змоги визначити обов’язкові значення вихідних змінних. Тому переходимо до обме- ження (3) і = 2. Перевірка умови (4.4.9) для обмеження (3) дає х2 = 0 для будь-якого допустимого доповнення. Розширивши відповідним чином поточний частковий розв’язок (х]= 1; х,= 0, х5=0) і повторно застосувавши (4 4.9) для умови (5) (і = 0), переконаємося, що допустимого доповнення немає (бо ҐПІП 1-3х,-6х4)> -14 + 3х| +6х, +3х, = -14 + 3 = -11). Тому другий крок закінчується, і повертаємося до першого кро- ку чергової ітерації, беручи 44’ = 43' =13. Четверта ітерація. Перший крок. Виберемо задачу 4, в якій Х| = х,= 0. Перевірка за умовою (4.4.9) при і = 0 показує, що для будь-якого допустимою доповнення х,= 1 Застосувавши далі (4 4 9) для часткового розв’язку Х| = х,= 0, х, = 1 при і = 1,2, знахо- 257
Зайченко Ю.П. -оптимальний розв'язок 4," Допустимих розв'язків немає Рис 4 8 димо, що і4=0, »-2=0. Безпосередньою перевіркою переконуємося, що цей розв’язок не задовольняє умову (5), тобто не існує жодного допустимою доповнення із значенням ц. ф., що перевищує 4“' Ве- ртаємося до першого кроку, і, оскільки основний список задач по- рожній, робота алгоритму закінчується. Отже, ми одержали опти- мальний розв’язок .0 _ -0 _ г« _ ,о _ л -1 ,<41 = 13=7 Ч - *2 - -Г} - ч - V, Ч - 1 < -0 1 гтах • Структурну схему алгоритму для цього прикладу наведено на рис. 4.8. Як випливає із аналізу розв’язання задачі 3, кожного разу, коли перевірка (4.4.9) приводить до розширення часткового розв’язку, 258
Дослідження операцій може слати вигідним повторення цієї процедури по всіх обмежен- нях і = 0,1,2,... на основі розширеного часткового розв’язку. Зауваження. 1. Одна з основних відмінностей між адитивним методом Бала- ша та методом гілок і меж полягає в тому, що в адитивному алгори- тмі погрібне виконання тільки операцій додавання та віднімання (не потрібні операції множення і ділення). Вибір на першому і чет- вертому кроках може спиратися на інформацію, здобуту з оптима- льного розв’язку задачі ЛП (4.4 1), (4.4.2) при умовах 0 < г,< 1 2. Друга відмінність така: кожний частковий розв’язок задово- льняє умову цілочисельності, але на відміну від методу гілок та меж, може не задовольняти лінійні нерівності (4.4.2). 3. Застосовуючи ефективні правила вибору на першому іа чет- вертому кроках за допомогою адитивною алюри і му, можна знайти допустимий по всіх обмеженнях розв’язок, який близький до опти- мального вже на початкових іт ераціях. 4. Обчислювальна складність алгоритму тісно пов’язана з кіль- кістю цілочисельних змін. У даному алгоритмі обсяг обчислень ви- значається насамперед числом задач, які входять до основного спи- ску. Зауважимо, що додаткові обмеження насправді можуть стати досить корисними для зменшення обсягу обчислень, і хоча потріб- но виконати більшу кількість перевірок на другому кроці, часто вдаєіься вертатися до першого кроку, не добавляючи в основний список нових задач
Заїїченко Ю.П._________________________________________________ 4.5. ПОСЛІДОВНІ АЛГОРИТМИ ДИСКРЕТНОЇ ОПТИМІЗАЦІЇ Загальна характеристика На основі узагальнення ідей теорії послідовних рішень та дина- мічного програмування В.С.Михалевич розробив загальну схему по- слідовного аналізу варіантів (ПАВ). З гонки зору формальної логіки схема ПАВ зводиться до такої послідовності повторення процедур: - розбиття множини варіантів розв’язків задачі на декілька під- множин, кожна з яких мас специфічні властивості; - використання цих властивостей для пошуку логічних протиріч в опису окремих підмножин; - виключення із подальшого розгляду тих підмножин варіантів розв’язків, в опису яких є логічні протиріччя. Методика послідовного розвитку, аналізу га відсіву варіантів по- лягає в такому способі розвитку варіантів і побудові операторів їх аналізу, які дають змогу відкидати безперспективні початкові части- ни варіантів до їх повної побудови. Оскільки при відсіві безперспек- тивних початкових частин варіантів відсівається і вся множина їх продовжень, то досягається значна економія обчислювальних витрат. На основі цієї загальної схеми В.С.Михалевич і його співробітни- ки розробили цілу низку алгоритмів послідовного аналізу варіантів, які широко використовуються в практиці. Деталізація схеми ПАВ відбувалася в декількох напрямах. У зв’я- зку з розв’язанням задач лінійної або деревоподібної структури було сформовано узагальнений принцип оптимальності для монотонно рекурсивних функціоналів, на основі якого можна будувати схему розв’язків, вільну віл деяких обмежень, властивих канонічним процедурам динамічного програмування. Для структур, які мають форму дерева, було досліджено питання, пов’язані із порядком перегляду гілок, і знайдено способи мінімізації числа масивів інформації, необхідної для реалізації процедур ПАВ. Метод ПАВ використовувався для розв’язання великої кількості важливих задач оптимального планування га проектування, таких як задачі розрахунку транспортних мереж, задачі розміщення на мережі гину дерева, проектування розподільних електричних мереж, вибору оптимальних параметрів магістральних газопроводів тощо. 260
Дослідження оперспіііі Далі на основі алгоритмічної схеми ПАВ було розроблено ефек- тивні методи конструювання, аналізу та відсіву варіантів для розв’язання численних задач календарного планування. Стосовно теорії календарного планування (КП) було обірунтовано точні мето- ди розв’язування різних класів задач малої вимірності, доведено не- обхідні і достатні умови пріоритетної розв’язності для задач КП з однотипним устаткуванням, розроблено ефективні способи, що ви- користовують правила домінування. Для розв’язання задач великої вимірності дискретного сепарабе- льного та лінійного цілочисельного програмування було розроблено декомпозиційні алгоритми, які базуються на схемах послідовного аналізу та відсіву варіантів. При цьому звуження вихідної множини варіантів здійснювалось шляхом відсіву окремих компонентів, що дало змоіу звести розв’язання вихідної задачі великої вимірності до розв’язання сукупності підзадач малої вимірності. Загальна схема методу Метод послідовноі'о аналізу варіантів (ПАВ) базується на відсіві безперспективних елементів як за обмеженнями, так і за цільовою функцією. Його ідеї розглянемо на прикладі такої задачі дискретного програмування [9]. Нехай А(П(Х)) - задача мінімізації функції на скінченій множині О(Х), тобто задача відшукання тіп /(х), (4.5.1) хєО(Х) де множина допустимих розв’язків О(Х) задається так: £р(х) < £р’(х), = (4.5.2) §р(х) > §р’(х), р = 9 + 1,0; (4.5.3) хєХ = П\.. (4.5.4) 261
Заііченко Ю.П. Тут ...Ж<я; 1*1 = 11'^’ (4-5-5) /»| Г(х), §Р(х) - довільні функції дискретного аргументу. Називатимемо розв’язок (варіант) х є X допустимим, якщо він задовольняє (4.5.2), (4.5.3). Основою метода ПАВ для задачі (4.5.1)-(4.5.5) є процедура XV послідовного відсіву значень змінних л^єХу. Ця процедура скла- дається з двох процедур XV, та XV?. Процедура XV,, в свою черіу. складається з елементарних процедур , р = 1,0 , кожна з яких полягає у відсіві за р-м обмеженням елементів л, = хік, (хік,~ К-те значення змінної лу ), які задовольняють нерівності: £/>(*Р Іху=ЛЛ ) = £/,(<......}>8*р' (4’5'6) де *р Х=г, = аг£тіп £р(х), (4.5.7) ' " ' ' хєКХ,ил;А| якщо р = 1,9 , та ?р(хр |Хі=Л/4, ) = £р(х,р ,^,...,х'? ,х^+,..хр)<^р, (4.5.8) де їх =4 =х/?хХ ІД, = агатах § (х), якщо р = 9 + 1,0. (4.5.9) ' хєХ\Я,ІДйі Іншими словами, варіант хр \* 4 , що описується співвідно- шеннями (4.5.7), (4 5.9), забезпечує оптимум функції £р(х) по всіх змінних, крім , при фіксованому елементі для множини Х; . 262
_____________________________________________Дослідження операцій Позначимо множину елементів Х; = Х(0), які лишилися після за- стосування процедури IV р , через Хр . Тоді, застосувавши процедуру XVI, отримаємо скорочену множину варіантів Х,п . х1” = п Пх, =ПХУ) Р=17=1 7=1 Очевидно, Х(1) с Х<0> . Далі до множини Х(1) знову застосуємо процедуру XV) й отримаємо Х(2) і т.д. Ясно, що при послідовному засто- суванні процедури XV, одержимо ланцюжок із вкладених множин: Х = Х(0,з>Х,,,о... □ ХІГЬх,г+,). Нехай при деякому / Х(/) = Х(/+І). Тоді Х(/+1)— множина елеме- нтів, що лишилися в множині X після застосування процедури XV,. Отже, ми довели таке твердження. Лема. Умова Х(/) = Х(/+1)є умовою закінчення застосування про- цедури XV,. Оскільки для перевірки виконання цієї умови потрібно порівняти потужності множин Х(/), при організації обчислювальної процедури зручніше користуватися іншою умовою закінчення процедури XV,, яка потребує менших обчислювальних витрат. Нехай Х,г,={Хра де [агвтіп£ (х) х єХ"7\Х'И 11л }, р = й; агатах£р(х)| хеХ'^ХХ^'ІІх^ }, р = 9+1,£>, є множина точок оптимуму функцій &р(р = 1,0 для кожного г, г - номер ітерації. Неважко бачити, що умова Х(/) = Х(/ 0 еквівалентна умові ^(/) _ ^(/+і) Таким чином, якщо при двох послідовних застосуван- нях процедури XV, множина оптимальних точок функцій = 263
Заііченко Ю.П. для кожного А д. є А не змінюється, то застосування процедури закінчується. Справедливе таке твердження, число застосувань процедури XV до задачі (4.5.1)-(4.5.4) скінченне. Його справедливість випливає із скінченності множини допустимих рішень. Сформулюємо критерій відсіву у вигляді теореми. Теорема 4.4. Елемент ї/Д, єХу0; ХХ^,/=1,л (тобто відсіяний за процедурою XV) не може входити в допустимий варіант задачі Л(О(Х<0>)). Доведення цієї теореми нескладне і наводиться в [33] Із теореми 4 4 випливає, що множина допустимих розв’язків в результаті використан- ня процедури XV] не змінюється, тобто □( Х<0)) = О(-Хг1'1). Отже, внаслі- док застосування XV] до задачі Л(В(Х)) можливі гри випадки: 1) Х(/)= 0, це означає, що задача недопустима; 2) Х(/,?ь0 і множина Х(/) досить мала, тобто застосування про- цедури XV, призвело до значного скорочення множини допустимих варіантів Х(0). У цьому випадку далі розв’язуємо задачу на множині Х*7) прямим перебором; 3) Х(/) *0, а множина Х(/) досить велика, що не дає змоги розв’язати далі задачу простим перебором. У цьому випадку до задачі Л(В(Х(/))) застосовуємо процедуру ХУ2, яка полягає в заміні вихідної задачі послідо- вністю задач Л(к -ЛІкІ(В( Х(* 11)), к=1,2,..., які мають вигляд: мінімізувати Дх), (4.5.10) при обмеженні хєО(Х(/*,)), де множина допустимих значень Л(Х(/*-1>) визначається із співвід- ношень: Дх)*/*’. х є Х,/‘-1) (4.5.11) (4 5 12) 264
Дослідження операцій Розглянемо першу задачу А*1' = Л(1'(£>(Х(/')). Покладемо /.*='[ тіп /(х) + тах /Xх) І (4.5.13) 2 ІхєХ(/) хєХ(0 ) До отриманої таким чином задачі Л(” застосуємо процедуру \У(, що полягає у відсіві елементів Х(/^ за обмеженням Г(х) < Г; . Це обмеження аналогічне (4.5.2), але для функцій з правою частиною, яка дорівнює Г]'. Множину елементів, що були відсіяні, позначимо через Х(/) \Х(/1), а множину елементів, що лишилися після відсіву,- через Х(,|). Далі, до множини елементів Х(/|) застосуємо процедуру відсіву Ші за обмеженнями (4.5.2), (4.5.3). Отриману множину позначимо Х(/,)/. Тут можливі два випадки. Випадок 1. Отримана множина Х(/|)/ порожня. У цьому випадку серед елементів множини Х(/1) немає допустимих варіантів, тобто Х(/1) виключається із розгляду. Крім того, можна зробити висновок, що якщо існують допустимі варіанти X задачі (4.5.1)-(4.5.4), то для них /(X) > /і*. Справді, якщо для варіанта X : 8РЮ^8р> Р = ЗрЮ^Зр, Р = ? + /(*)> ./і*, то застосування процедури XV» не може привести до його відсіву. Сформулюємо це твердження у вигляді теореми [33] Теорема 4.5. Якщо Х(/|)/ - 0 та X є £>(Х*0)), то /(X) > Випадок 2. Множина Х*7,)/ - не порожня. У цьому випадку вона досліджується на існування в ній оптимального варіанта. Відповідні ознаки оптимальності можна формулювати у вигляді таких теорем. Теорема 4.6. Критерій оптимальності І. Якщо х(1) =аг£тіп/(х) (4.5.14) хєХ(/| та х(,) єО(Х(/|)/), то х(|) = х(0),де х(0) =аг§тіп/(х). хє£>/Х) 12і 265
Заііченко Ю.П. Зміст цієї теореми полягає в тому, що якщо існує розв’язок х1, оптимальний на скороченій множині (що залишилася після всіх про- цедур відсіву) Й(Х(/|)/), то він буде оптимальним і для задачі на ви- хідній множині Е>(Х). Доведення. Нехай деякий розв’язок х є Х(/| *. Тоді за доведе- ним вище £5(Х(/|)) = £)(Х(/,)/), і оскільки х1 = аг^тіп Дх), хєО(Х('>,/) то Дх')<Дх) для будь-якого їєО(Х(/,)), тобто в цьому випадку х' =Х°. Якщо хоча б один елемент х , наприклад єХ(/)\Х,І1), тобто йХ(/|), то /(**)>./і*, згідно з правилом відсіву за обмеженням (4.5.11), в той час як Дх1 )</\, оскільки за умовами теореми 4.6 х1 єО(Х(/|)/). Отже, і в цьому випадку х1 = х°. Теорема 4.7. Критерій оптимальності II. Якщо х' = аг8тіп Дх) е О(Х^1), (4.5.15) хеХ1'1 х’= аг^тіп Дх) є £)(Х(/)), (4.5.16) хєХ(П Де — множина елементів, що лишилися після відсіву за обме- женням Г(х) < Г(Xх), то х' = х' = аг£тіпДх). (4.5.17) хєО(Х) Доведення цієї теореми аналогічне доведенню теореми 4.6. Пояс- нимо зміст теореми 4.7. Умова (4.5.15) означає, що для допустимого за обмеженнями варіанта х1 £(х‘) > Г, ’ (оскільки х’ є /)(Х(/,)/)), і то- му критерій оптимальності 1 для нього не застосовний. Введена мно- жина Х(/) утворена з Х^1’ додаванням елементів х, які неможливо 266
Дослідження операцій відсіяти за обмеженням Дх) < Дх1), але які відсіюються за обмежен- им Дх) < (і* (Г,* < Дх1)), бо до обмежень (4.5.2), (4 5.3) додається об- меження Дх) < Дх1). Доведення. Оскільки О(= О(X), тобто множина допус- тимих варіантів не змінюється при застосуванні процедури то х' = аг§тіп /(х) = аг§тіп/(х) = хорІ. (4.5.18) хєХ1'1 хєО(Х) Доведемо другу частину теореми 4.7. Умова (4.5.16) означає, що х' - оптимальний розв’язок на множині елементів Х(/), які не відсі- ялися за обмеженням Дх) < Дх7), де х7 - деякий допустимий розв’язок. Нехай Хом - оптимальний розв’язок задачі тіп Дх). Припустимо, хєО(Х) що Хор1 й Х(7) • Тоді Дхор1) > Дх7). Це суперечить умові, що хорІ - оп- тимальний розв’язок. Отже, х’ = аг&тіп/(х) = аг&тіп/(х) = аг&тіп /(х). (4.5.19) хєХ(/І хеХ1'’ хєО(Х,7>) Порівнюючи умови (4.5.18) та (4.5.19) з (4.5.17), переконуємося, що вони збігаються. Отже, теорему 4.7 доведено. Критерій оптимальності II означає, що якщо множина розв’язків задачі £>(Х(/,)): Дх)< Гі* виявиться порожньою і відомий деякий до- пустимий розв’язок х'єОІ-Х-'7'), то доцільно наступний відсів вико- нати за умовами: Дх)<Дх’); Дх)>Г,‘. Отже, за допомогою критеріїв оптимальності І, II пошук оптима- льного розв’язку вихідної задачі зводиться до пошуку його на деяких підмножинах Х(/). При цьому в процесі пошуку із розгляду виклю- чаються безперспективні множини. Ефективність пошуку оптималь- них розв’язків, як легко бачити, залежить від того, чи можна звузити множину рішень Х(/) так, щоб на цьому звуженні можна було легко знайти оптимальний розв’язок. Процес звуження пошуку здійснюється таким чином. Якщо мно- жина Х</|)7, яка одержана в результаті розв’язання задачі Л, досить велика, то розглядається нова задача із значенням 267 12*
Заїіченко Ю.П. /' =^(тіл/(х) + /і’)- 2 хє^‘ Процес звуження множини Х(/,)/ виконується доти, доки не буде отримано Х(/,)/=0. Якщо з самого початку одержано Х(/|)/=0, то здійснюється процес розширення множини введенням обмеження * 1 » „ /(х)< /2 = (тах/(х)+/] ) . При цьому розглядається така задача 2 А*2*: знайти х2 = аг^тіп Дх), (4 5 20) хєО(Х(/2’) де О(Х(/з)) визначається обмеженнями: Цх)^ГГ; (4.5.21) Г(х) < Г2‘; (4.5.22) хєХ(/|), а також обмеженнями (4.5.2), (4.5.3). Обмеження (4.5.2) можна вико- ристати в двох напрямах: по-перше, для перевірки допустимості від- сіву типу (4.5.6), (4.5.8) з метою відкидання елементів , які напе- вно не задовольняють обмеження (4.5.2), а по-друге, у випадку одер- жання наближеного розв’язку задачі. Коли після звуження потрібно провести розширення множини варіантів, або навпаки після розширення - знову проводити звужен- ня, то л‘= \ + 5 >2- Тут мається на увазі те, що одна із задач А1'1 або А 2 недопус- тима, тоді як друї а - навпаки допустима. Викладений мсгод розв’язування задачі дискретного програму- вання (4.5.1), (4.5.2) може бути практично застосованим, якщо вда- 268
Дослідження операцій сться реалізувати ефективну процедуру перевірки умов відсіву (4.5.6), (4.5.8). У цьому випадку для кожного значення ху7 змінної х^ потрібно шукати для кожної функції £р(х), що описус р-е обмеження, її безу- мовний екстремум (у тому розумінні, що всі інші обмеження не вра- ховуються на дискретній множині). У загальному випадку ця задача не менш складна, ніж вихідна. Однак для конкретних класів задач можна скористатися умовою, що потрібно відшукати безумовний екстремум. Для цього бажано, щоб по-перше, функції £(х), §р(х) були такими, щоб для кожної змін- ної х ; є X .-, і = 1,л величини тіп §_(х), тіп Дх) не залежали б 7 хєХ\Х; г хєХ\Х; від значення цієї змінної і, крім того, щоб оптимум функцій Цх), £р(х), р = 1,2 визначався незалежно для кожної змінної. Це буде у випадку сепарабельних функцій. Додаткові спрощення можна зробити у випадку, коли Цх) є моно- тонна, незростаюча функція, а всі §р(х) - монотонно не спадні для ко- жної змінної x^ . Тоді знаходження безумовного оптимального варіан- л та для кожної з функцій Г(х) потребує не більш як ~^к- обчислень цієї 7=1 функції, не більш як ~22Ау-(А х- + 0 порівнянь, а перевірки умов відсіву 2 і п (4.5.6), (4.5.8) теж зводяться не більше ніж до операцій. 7=1 У випадку, коли при зроблених вище припущеннях функції £р(х), р = 1,2 є опуклими догори (тобто вгнутими), а Г(х) - опуклою униз, при великих значеннях к^ можна побудувати ефективну процедуру перевірки обмежень (4.5.6), (4.5.8), скористувавшись відомою нерів- ністю для угнутих функцій: Г(х') - Г(х") < Г'(х")(х'-х"); х',х"єХ. Для опуклих функцій знак нерівності буде протилежним. Оскільки в (4.5.6) і (4.5.8) всі змінні, крім однієї, зафіксовано, то розглядатиме- мо §р(х) як функцію однієї змінної. Із останньої нерівності одержимо 122 269
Зайченко Ю.П. 8р ~8р(*р)<8'р(*р)(** - ХР). Р = І,9 • де хр =аг£тіп£/)(х), х* - нсвідсіюване за (4.5.8) значення х, &'р(хр) ~ X похідна функції в точці хр; а також -хр). Р = 9 + 1,Є, де хр =аг£тах£/,(х). X Зрозуміло, що всі значення х, для яких &р(х) < #р(х*), р = \,д та £/>(**), Р = 9 *!>(?> відсіюватися не будуть і перевіряти умо- ви відсіву (4.5.6), (4.5.8) для цих значень не потрібно. Якщо для наступного за х* значення х &р(х) < £р(х’), р = І^д або £р(х) > 8р(х*Х Р = 9 + 1>£? > то значення х* уточнюємо так: Х| знаходимо із нерівності: 8*Р-£р(х*Кйр(х*)(х*-х*), р = \,д або £р - £/>(**) «р(«*)(Х| - х‘),р = д + 1,£) і т.д., звідки дістаємо таке значення х*, що для наступного за ним значеннях £р(х)>£*, р = 1,7у або £р(х)<£*, р = ^Т^. Алгоритм розв 'язання задачі дискретного сепарабельного програмування Розглянемо задачу дискретного програмування з так званими се- парабельними (адитивними) функціями критеріїв та обмежень. максимізувати /(х)= Е/у(ху), (4.5.23) >=і при таких обмеженнях: 270
Дослідж ення операцій 8р(*) = Х8р(х ;)<8р, Р = \Д, (4.5.24) 7=1 £р (*)= І.£р(х^8*р> Р = 9 + 1,0, (4.5.25) 7=1 де /(*, ),£,,(*,) - довільні функції дискретного аргументу, що задані таблично; - задані числа. Позначимо: агатів $р(х) = аг8тіп(х)), р = 1,д; хєХ 7=1 п агатах £р(х) = агатахТ.^р(х}), р = <7 + 1,(?; [ хєХ і-\ ХХ7 ={Ї1Р^2’” ’ХЛ1’Х/+1’ I (4.5.26) (4.5.27) На підставі результатів попереднього розділу сформулюємо умо- ви відсіву за обмеженнями (4.5.24), (4.5.25) для задачі (4.5.23)- (4.5.25) таким чином [9]. Нехай х^ є X, у = 1,л, тоді якщо 8р(хі)>8*р ~£р(*р \^). Р = ^Ч (4.5.28) або 8р(*})<8р-8р(*р\ХІ) (4.5.29) хоча б для одного р = д+і,.то елемент ху не може входити в допустимий розв’язок задачі (4.5.23)-(4.5.25). Зауважимо, що в роз- глядуваному випадку, оскільки функції &Дх) - сепарабельні, то зна- ходження оптимального розв’язку хр проводиться незалежно для 1 " і п кожної окремої змінної і потребує £А](ку + 1)= £Ау операцій 2 7=1 2 7=1 порівняння. Перейдемо до опису алгоритму відсіву елементів можливих варі- антів задачі (4.5.23)-(4.5.25). 12** 271
Зайченко Ю.П. Побудуємо таблицю X, у -м рядком якої є елементи множини X/ 41 42 4*і ї2і х22 ... х2А2 *уі ху2 ... Хік. 4,1 хл2 хпк„ Зазначимо, що число елементів ву-му рядку дорівнює к,, причому в загальному випадку к\ кі *...*к„. Викладаємо процедуру відсіву IV за обмеженнями вигляду &(*)<//> Перший крок. Побудуємо таблицю Х(0), яка утворена з таб- лиці X упорядкуванням її елементів у-го рядка (у = 1,л ) за зростан- ням значень функції §\(х^, тоді елемент ху7 ,буде розташований ліво- руч від хік, якщо &і (*,/)< £|(хЛ). Другий крок. Перевіримо виконання умови: £!(Х’(0))<£‘, (4.5.30) де Х‘(0) - перший стовпець таблиці Х(0) (очевидно, він містить усі мінімальні елементи по рядках). Якщо умова (4.5.30) не виконується, то задача не має розв’язку, бо в цьому випадку по обмеженню ^,(х)<^* відсіваються всі елементи Х(0). В супротивному разі пе- реходимо до наступного кроку. Третій крок. Обчислюємо значення функції (х) на всіх елементах першого стовпця, крім елемента х1ь тобто згідно з (4.5.27) обчислюємо (Х'(0)\хн) і перевіряємо виконання нерівності. 8і(4/1)>^{ =2і*-^і(Х,(0)\хп), (4.5.31) 272
Дослідження операцій послідовно для кожного елемента хі; , /| = 2, 3,..., к\. Якщо (х)і, ) - £і (*у»-,) ’ то порядок чергування елементів , Хр' байду- жий і з усіх цих елементів в таблицю Х(0) можна включити лише один. Коли к, має велике значення, доцільно застосовувати інші прави- ла перевірки умови (4.5.31). Наприклад, робиться перевірка §1(лІ*1)>А £і, а потім вибір наступних точок виконується методом дихотомії або Фібоначчі (див. розд. 5). Перший елемент у рядку, для якого нерівність (4.5.31) виконуєть- ся, і всі наступні елементи відкидаються згідно з правилом відсіву Процес третього кроку повторюємо для всіх рядків таблиці Х(0). Дляу-го рядка умова відсіву (4.5.31) набирає вигляду: «і(*ул,) > А 5/ = £і* - 5і(Xі (0) \ ху|). В результаті одержуємо скорочену таблицю Хі(0). Далі переходимо до першого кроку наступної ітерації і застосо- вуємо процедуру IV} до таблиці Хі(0) стосовно обмеження £2(х) < £г, в результаті дістанемо таблицю Х2(0). Відтак, використовуючи третє обмеження £3(х) < £з , отримаємо скорочену таблицю Хз(0) і так далі, поки не одержимо скорочену таблицю Х^(0). На цьому перший етап застосування процедури Ж] за- кінчується. Наступний етап полягає в застосуванні процедури \У\ до обме- жень вигляду: 5р(х)^5р> Р = д + і,С- Перший крок. Елементи рядків скороченої таблиці Х^(0), які позначимо через Х?+1(0), упорядкуємо за зменшенням функції £р+](хі ), у = 1,И ДЛЯ ВСІХ ЗМІННИХ Ху . Другий крок. Перевіримо виконання умови: £9+і (Х;+1(0)) > £9+1, (4.5.32) 12’ 273
Зайченко Ю.ІІ. де Х^+)(0) - перший стовпець таблиці Х^и(0) Якщо вона не вико- нується. то задача розв’язку не має (з тих самих причин, що і в про- цедурі IV; на другому кроці першого етапу). Третій крок. Перевіримо виконання умов: ?9+і(Х^+)(0)\хн)>й9+і • (4.5.33) Якщо умова (4.5.33) виконується, то перейдемо до першого кроку і розглянемо таке обмеження. £9+2(х) > §*+2 . Якщо умова (4 5.33) не виконується, то переходимо до наступного кроку. Четвертий крок. Перевіряємо виконання умови: Єч+і (тц) < Л §у+і = £*+і - £ї+1 (Х^+І (0) \ х,,), (4.5.34) послідовно для всіх елементів першого рядка таблиці Ху+1(0). Перший елемент в рядку 1, для якого нерівність (4.5.34) викону- ється, і всі подальші елементи відкидаються. Пара кроків третій-четвертий виконується для всіх рядків таблиці Х9+1(0) - Одержуємо скорочену таблицю Х?+2(0). Далі процедура (У| послідовно застосовується до всіх обмежень Р = Ч + \&, при цьому відсів проводиться на основі спів- відношення (4.5.34) В результаті отримаємо скорочену таблицю Х^(0) = Х( 1), до якої знову застосуємо процедуру ]У\ згідно з вищевикладеним. Цей про- цес повторюємо доти, доки нарешті не почне виконуватися умова ~ X = X' , де верхній індекс вказує на число застосувань процедури ітерацій IV। до початкової таблиці Х(0). Згідно з вищедоведеним, число застосувань процедури И/1 скін- ченне і в результаті її застосування жодний з допустимих розв’язків початкової (вихідної) задачі не буде відсіяно. Якщо О(Х(/)) =0, го вихідна задача нерозв’язна. 274
Дослідження операцій У випадку, коли множина Х(/) досить мала, знаходимо оптима- льний розв’язок прямим перебором. У супротивному разі до таблиці можливих розв’язків Х(/) застосуємо процедуру ИЛ. Розглянемо процедуру И/. Перший крок. Упорядкуємо елементи в рядках таблиці Х(/) за зменшенням функції /(х7),у = 1,и. Другий крок. Якщо перший стовпець упорядкованої таблиці Х(/) є допустимим, го він є й оптимальним (оскільки виконується критерій оптимальності І). Якщо ж він недопустимий, то проводимо відсів елементів таблиці Х(/) за обмеженням: застосовуючи процедуру №\, але вже до функції /, і запам’ятовуючи відсіяні елементи. Тут /П1И - значення функції/ на елементах першого стовпця таблиці Х(/), упорядкованої на першому кроці,/™ - значення / на елементах, що займають крайні праві позиції в своїх рядках. Третій крок. Скорочену таблицю Х(/), здобуту на другому кроці, позначимо Х(/>) і до неї застосуємо процедуру Якщо на деякому кроці її застосування не виконуються умови (4.5.30) другого кроку процедури ЇУ| для рє {1,2, то знову переходимо на дру- гий крок, де виконуємо відсів за поширеним обмеженням: лх)>/; = ^Ц^. Цей процес повторюємо доти, доки на к-му кроці не одержимо таблицю х(/і)/ =0 (ця таблиця утворюється з таблиці Х(/*’ внаслі- док застосування процедури Жі). У цьому випадку до обмежень (4.5.24), (4.5.25) додаємо обмеження Лх)</; (4.5.35) 12*** 275
Зайченко Ю.П. і переходимо до четвертого кроку. Якщо ж на третьому кроці одразу утворюється таблиця Х(/,) х0, то переходимо на другий крок і ви- конуємо відсів за звуженим обмеженням: і т.д. Нарешті на Лх)>./; = Апах+Л*- 5-му поверненні на другий крок маємо . Цей процес повторюємо доти, доки не одер- жимо таблицю Х(/а)/ = 0. Тоді до обмежень (4.5.28) додамо обмеження і пере- йдемо на наступний крок. Четвертий крок. Отже, нехай на третьому кроці отримали таблицю X" ” *0, а також таблицю X1'-'1 сХ’'1, для якої х(/,|)/ =0. Якщо число можливих розв’язків Х(/л)/ досить мале, то прямим перебором переконуємося в наявності або відсутності допустимих розв’язків у таблиці Х(/і>/, причому можливі розв’язки, які склада- ються повністю з елементів таблиці Х(/”1), враховувати немає по- греби, бо серед них явно немає допустимих. У випадку відсутності допустимих розв’язків у таблиці Х(/і)/ , відмічаємо її елементи, а замість неї досліджуємо таблицю Х(/і-1)/ попереднього кроку на існування в ній допустимих розв’язків. Якщо допустимі розв’язки існують, то вибираємо найкращі з них і переходимо на п’ятий крок. Якщо ж число варіантів настіль- ки велике, що прямий перебір неможливий, то діємо таким чином. Нехай будь-які два нерівних значення цільової функції Цх) і ) відрізняються одне від одного не менше, ніж на величину є. Оскільки {,/ - скінченна сукупність чисел, то такс £ існує для всіх х„ є X,. ІЗЬ
Дослідження операцій Тоді поділивши відрізок [/* |,Д* | пополам і виконавши відсів за обмеженням: лх)> /л, =Л +2Лч (* > і. /о = /Лі. /г=./;) можна отримати такі таблиці Х(/<) та Х(/‘ , що а Х(/*)7 = 0, і при цьому таблиця Х(/<) містить елементи, що лишилися після відсіву за обмеженням Дх)> //. Задавши довільну величину е'(е'>е), досить близьку до є, отримаємо, що таблиця Х(/<) \Х(/* буде містити досить мале число елементів, якщо в рядках не існує елементів, що мають рівні значення цільової функції. Вибравши прос- тим перебором найкращі з них, переходимо до п’ятого кроку. П’ятий крок. На цьому кроці аналізуємо одержаний на попере- дніх кроках допустимий розв’язок задачі х' єО(Х(/1)/). Якщо /(х‘) > ( *, то х' - оптимальний розв’язок вихідної задачі, згідно з критерієм опти- мальності II. Якщо ж /(х')<./4*, то до обмежень (4.5.24), (4.5.25), (4.5.35) додається ще обмеження/(х) >/(х'). Відтак переходимо на чет- вертий крок. Якщо ж величина є = /* -/(*’) досить мала, то розв’язок х' можна взяти за наближений до оптимального. Зазначимо деякі важливі властивості викладеного алгоритму. 1. Алгоритм ПАВ по суті є адитивним, бо в ньому використову- ються лише операції додавання та віднімання. 2. Початкові таблиці в процесі роботи алгоритму не обчислюють- ся, а лише деякі їхні елементи викреслюються (ті, що відсіяно). 3. На кожному кроці роботи алгоритму використовується лише одна таблиця, що відповідає обмеженню, яке аналізується. 4. Зростання числа обмежень підвищує ефективність алгоритму внаслідок підсилення відсіву безперспективних елементів. 5. На кожному кроці роботи алгоритму відсіваються явно неефек- тивні за відповідною системою обмежень варіанти. Варіант х' не мо- же бути поліпшений за системою обмежень: Р=І.Ї. £р(х)>в’,, р = 277
Зайченко Ю.ІІ. якщо не існує такого варіанту х", що і хоча б для одного р' відповідна нерівність строга. Алгоритм розв ’язання задачі лінійного цілоч ясельного програмування Як приклад окремого випадку задачі дискретного прої рамування (4 5.23)-(4.5.25) розглянемо задачу ЛЦП: п максимізувати Дх) = £суХу, (4.5.36) 7 = 1 при обмеженнях: £«,уХу </>, , і = 1,0; (4.5.37) 7=1 0<</(м <х, <^2< у = 1, П, (4.5.38) де - цілі числа, / = 1,л. (4.5.39) Замінимо умови (4.5.38), (4.5.39) такими: х/ єХу = !б7',),^.’> + 1,...,</;.2)}, 7 = і^. Неважко помітити, що к-ла компонента вектора х' = аг^тіп Хяуху 7=1 дорівнюватиме , якщо > 0, або — в супротивному разі. Тоді правило відсіву для обмежень формулюємо таким чином: якщо ху (ху є Ху) задовольняє нерівність 278
Дослідження операцій а,іх)>Ьі- Е«Д^2’ А*у а,к>0 а,к<0 (4.5.40) хоча б для одного і то у-та компонента розв’язку задачі (4.5.36)-(4.5.39) не може набувати значення, що дорівнює х; є Ху. Таким чином, в процесі роботи алгоритму будуть відсіяні такі значення х] : х^ <ху- <сі^} , якщо ау >0 або б/}1' <ху <ху , якщо ау< 0. В результаті множина Х(/) для даної задачі матиме вигляд: Х(/) = ПХ'/’; Х1^ = + 1, ...р1,0}, >=1 де 5^121. Правило відсіву за цільовою функцією для задачі л'(£)(Х(/))) має такий вигляд: якщо С)х} <с^ - Е^РІ0 ' Ес*а4° > (4.5.41) с^>0 сА<0 ДЄ 1 1 ( сІ’=-(тіп/(х) + тах/(х)) = - £ сіа'.',+ £ £с*0*/> + *^Цх>>0 Ах, <0 Ах, >0 А:с, <0 у ^\А = І / тоу-та компонента допустимого розв’язку задачі А1 не може набува- ти значень ху = ху . Тобто, якщо с, > 0, то значення х. такі, що ау<ху<х7 відсіюються за обмеженням на цільову функцію, а в протилежному випадку відсіюються значення ху з інтервалу ^^х^ру». 279
іаііченко Ю.П. У процесі роботи алгоритму для задачі ЛиІ, х = 2, 3, ... величини с* обчислюються за такими формулами: а) <=|( тіп /(хЬ<;) = Д X с,4'-1'+ Хс*РІ'"'+<-і (4.5.42) якщо потрібно розширити множину ; б) <=|( тах /(х)-с; ,) = Д £ с4р'/' •’ + ІсАа'/ '' + < Д (4.5.43) для звуження множини Х('іч) ; в) с‘ = Де* І + с*_2) Для звуження множини х1^'1 після попере- днього розширення, і навпаки, де с‘_2,с*_| - значення, отримані на попередніх ітераціях. Для застосування алгоритму необхідно задати обмеження вигля- ду (4.5.38). На практиці ці межі можна в багатьох випад- ках визначити із фізичного змісту задачі. Якщо ж межі змінювання кожної змінної заздалегідь не визначено, то їх завжди можна знайти, розв’язавши 2т задач ЛП вигляду: ху —» тах Еа,уху <Ь,,І= 1,0; 7=1 хіг 2 0, у = 1, и; Ху —> тіп Еа,уХу </>,,/ = 1.0; /=1 Ху >0,7 = 1,я. У деяких випадках визначення сі^ особливо просте: 1) якщо для всіх і = 1,0 та / = 1,л ач > 0, то де знак [х] означає цілу частину х; 280
Дослідження операцій 2) якщо серед обмежень (4.5.37) знайдеться хоча б одне, напри- клад к-те, для якого ац > 0 для усіх у = 1, л , то Приклад 4.6. Для ілюстрації роботи методу ПАВ розглянемо таку задачу: максимізувати (2х, + х2), при обмеженнях: 7х,+4х2< 28, -х, + 2х2< 14, 5х, + 2х,> 10, 4х, -Зх2 < 12, х,.х, > 0; х,.х2 - цілі числа. Попередній етап. Знайдемо початкові множини х,(0),х2(0). = Г28і = 4. =Г28і=7 ^Ітах І у І *2тпах 4 ' Таким чином, х,(0)= {0, 1, 2, 3, 4};х2(0)= {0, 1, 2, 3, 4, 5, 6, 7}. Перша ітерація. Процедура і¥\. Відсів за першим обмеженням: 7х, >28-4х,тіп = 28, х, > 4-нема відсіву; 4х2 > 28 7х, т,„ = 28, х2 > 7 - нема відсіву. Друге обмеження: -х,>і4-2х2тіп= 14, х,<-14-нема відсіву; 2х2 > 14 + х1так =18, х2 > 9 - нема відсіву. 281
Зайченко Ю.П. Трете обмеження: 5л, <10 2х,та,, х, < 0 нема відсіву; 2х, < ю - 5х,та, , л, < 0 нема відсіву. Четверте обмеження: 4г, > І2 + Зх2„а, = 33, х. > нема відсіву; -Зх3>!2 4гІП1]Гі = 12, х, <-4 нема відсіву. Тому переходимо до процедури И7,. Процедура <ї = |(/тт(»> + /т„(х))= (0+ 15) = у . Правило відсіву таке:/(х) = 2х, + х2< с* = . Отже, 2х,< с, -х2тгк = '?-7= |; Х,< - відсівається х,= 0; х2 < с* - 2х, ~ -8 = - А ; х2 < 0 —нема відсіву. Процедура И7,. Відсів за першим обмеженням: 7х, >28-4х2яііп= 28, х, >4 нема відсіву; 4х,>28-7х.т,„= 28 - 7 = 21, х2> 21 ВІДСІЮЄТЬСЯ х2=6,7. 4 За другим обмеженням відсіву нема. Третє обмеження: 5л, < ю-2л2тах; х, < 0 нема відсіву; 2х,< іо-5хІтю ; х2 < 0 нема відсіву. Четверте обмеження: 4«, > 12 + Зх2тм = 12 + 15 = 27, х, > 27 нема відсіву; -Зх, > 12-4х,тіп = 8, х2<0 нема відсіву. Друга ітерація. Оскільки відсів за процедурою И7, відбувся, то перейдемо знову ДО процедури ^2'. 282
Дослідження оперсщій л * __ 15 е__ 5 - 5 • . 2ї| < є, - х2.„ах ~ -3 - , X, < - ВІДСІЮЄТЬСЯ х = 11 2 2 4 х2< ‘і - 2х,тах = - 8 = - ’ ; х, < 0 - нема відсіву. Процедура 7х, > 28 - 4х2ті, = 28, х; > 4 нема відсіву; . . |4 4 г, >28 14, X, > — ВІДСІЮЄТЬСЯ х, = 4,5. 4 Знову повторюємо процедуру IV2 при тому самому значенні с*. Процедура \У2. сі ~г2п,ах_ у-3- 2 ; Х|С —відсіюється х, = 2; їі< ‘і ~2літах= у -8 = — ; х2< 0 - нема відсіву. Процедура И'1: 7хі>28-4х2пі1п= 28, Х|>4 нема відсіву; 4х2 > 28-7х]т1п = 7, х2> - ВІДСІЮЄТЬСЯ х, = 2,3. 4 Отже, маємо такі скорочені підмножини: х,(2)= {3,4}, х,(2) = {0, 1}. Тепер можна знайти хор| безпосереднім перебором: X. =[3;0]; /( х, ) = 6; х, = [3; 1]; /( х2 ) = 7; х, = [4; 0] та х«= [4; 1] не задовольняють перше або четверте обмеження. Оскільки/(х2) >/(х,), го оптимальний розв’язок: х?” = [3; 1 =/(Х"?1) = 7. Алгоритм послідовного аналізу варіантів для задачі з булевими змінними Розглянемо задачу булевого програмування, яка є окремим випа- дком задачі (4.5.36)-(4.5.39): 283
Загіченко Ю.ІІ. (4.5.44) (4.5.45) .5.. максимізувати /(х) = , /=і при обмеженнях: Уа^х} <Ь,, і = 1,0, >=| та умовах. (0. , х, = < і = 1,л. 7 І», Раніше було розглянуто адитивний алгоритм Балаша для цієї за- дачі. Розглянемо тепер застосування методу послідовного аналізу варіантів. Метод ПАВ базується на такому критерії відсіву варіантів за об- меженнями (процедура И7,) [9]: якщо >Ь,- тіп ^аікхк =Ь,- Хаік , (4.5.47) " *=1 Од<о хоча б для одного і = 1, .., (З, тоу-та компонента допустимого розв’язку задачі (4.5.44)44.5.46) не може мати значення , яке дорівнює . Умова відсіву для задачі Л(4)(Е>(Х(,*_|))) має такий вигляд: > ь, ~ тіп = />,-£ тіп (аікхк ), і = 1,0. (4.5.48) к*} к*і Припустимо, що при застосуванні до деякої задачі Л(4'7 процеду- ри И7! отримаємо відсів в к множинах Ху одного з елементів (якщо відсіюються обидва значення, то задача Л(4) недопустима). Тоді, розмірність задачі А1" зменшується на к одиниць. Як бачимо, критерій відсіву збігається з одним із тестів перевірки допустимого розв’язку для деякого часткового розв’язку, що містить одну змінну, в адитивному алгоритмі Балаша. В цілому ж в ідейному плані метод ПАВ для задачі (4.5.44)- (4.5.46) близький до адитивного алгоритму, бо обидва вони базують- 284
Досіїдження операцій ся на аналізі системи обмежень задачі Однак сам аналіз виконується різними шляхами. Правило відсіву за цільовою функцією для задачі Л(1) має вигляд, якщо с /х, <Сі* - тах У сіх- , то /-та компонента до- 7 ] х(') і * к*} пустимого розв’язку задачі Л(|) не може набувати значення: х} = ху єХ(/), де с* = + п^х / ' (4.5.49) Для задачі Л(ї) величина с* обчислюється за аналогічними до (4.5.41) формулами. Казатимемо, що: , якщо х'°~} = 0; 7'є^і , якщо х ? • = 1; /єЛ'2 , якщо ху~‘ є {0,1}. Тоді: а) с*= 2 сі* і- тіп У с /X і (4.5.50) для розширення множини ♦ 1 ж п б) с\ = — Сі + тах У с :Х 2( 7 для звуження В) множини Х^-); . 1 /єЛ^ с і <0 с,->0 І/; (4.5.51) (4.5.52) для звуження множини Х(/*ч) після її розширення, і навпаки. Приклад 4.7. Розв’язати методом ПАВ таку задачу булевого програмування- і 2 2 /з 1 X ^ї-1; 1 2 285
Зайченко Ю.П. мінімізувати 4х, + Зх, + х3 + 2х„ + 5х5 , при обмеженнях 2х, - х2 + Зх, + 5х4 + Зх, > 7, Х| + х2 + Зх3 + 2х4 + 4х, > 5, х,= {0.1}. Перша ітерація. Процедура И7]. Перше обмеження: а) ацх,< 7 - тах£а:,х( =7-3-5-3= —4, х, < — 2 - нема відсіву; б) —х, < 7 - тгхХачх2 = *"6> х?> 6 - нема відсіву; в) Зх3 < 7 - 2 - 5 - 3 = -3 => х3 < -1 - нема відсіву; г) 5х„ < 7 - 2 - 3 — 3 = -1 => х4< — 1 - нема відсіву; д) Зх5 < 7 2 — 3 — 5 = —3 => х, < -1 - нема відсіву. Аналогічно перевіряємо, що і за другим обмеженням відсів не відбувається. Наприклад: х>< 5 - тах Хо,Л = 5 - 1 - 3- 2- 4 = —5, => X] < -5 - нема відсіву. 7’1 Процедура И'і: 2 (А™ + А,м)= 5(0+15)= ’’ =7.5. а) цх! > /,* - тіл Хс,х,= 7.5 — 0; 4х, > 7.5 — нема відсіву; /’і б) с2х2 = Зх2 >/* — 0 = 7.5 - нема відсіву; в) -и > /і* - 0 = 7.5 - нема відсіву; г) 2х4> /,*- 0 - 7.5 - нема відсіву; д) 5х5> /'- 0 = 7.5 — нема відсіву. Тому переходимо знову до процедури 1?2, та звужуємо множину варіантів: б‘ = 5 7 =3-75' а) 4х|> /,‘ = 3.75; х, > 3^5 - відсів х, = 1; б) Зх2 > 3.75 - 0 = 3.75 - відсіву немає; в) х3 > 3.75 - відсіву немає; 286
Дослідження операцій г) 2.г4> 3.75 - 0 = 3.75; х4> 3 75 > 1 - відсіву нема; д) 5хз>3.75; х5> 3^5 - відсів х,= 1. Процедура ¥У\. Перше обмеження- а) 2х, < 7 - тах Хаіух> = 7- 3- 5= -1 - нема відсіву; б) -х2< 7 — 3 —5 = —1, х2> 1 — нема відсіву; в) Зх,< 7 - 5 = 2; х, < 2 - відсів х3 = 0; г) 5х4 < 7 - 3 = 4 => х4 < * - відсів = 0; д) Зх5 < 7 — 3 — 5 = —1 — нема відсіву. Друге обмеження: а) 5х| < 5 - 1 - 3 - 2 = -1 - нема відсіву; б) х2 <5 — 3-2 = 0- нема відсіву; в) Зхя< 5 - 1 - 2 = 2; х3 < | - нема відсіву; г) 2х4< 5 - 1 - 3 = 1; х4< - нема відсіву; д) 4л5 < 5 - 1 - 3 - 2 = —1 - нема відсіву; Отже, лишилося лише два варіанти х,= {0,0,1,1,0} та х2= {0,1,1,1,0}. Перевіримо кожний з них. Обидва розв’язки задовольняють усі обмеження, але оскільки/( х,) = 3 </( х2) = 6, то оптимальний роз- в’язок Х|= {0,0,1,1,0}. 287
Зайченко Ю.П. 4.6. НАБЛИЖЕНІ МЕТОДИ ДИСКРЕТНОЇ ОПТИМІЗАЦІЇ Загальна характеристика Винятково важливу роль у розв’язанні задач дискретного про- грамування відіграють наближені методи. Можна зазначити такі об- ставини, що зумовили різке збільшення інтересу до розробки набли- жених методів дискретного програмування останніми роками. По-перше, через комбінаторний характер більшості задач дискрет- ного проірамування, точні методи не дають змоги одержати строго оп- тимального розв’язку для практичних задач досить великої вимірності. По-друге, часто-густо на практиці для задач дослідження опера- цій застосовуються наближені моделі, де вихідні дані визначені не- точно і наближено. Це знецінює пошук оптимальних розв’язків і то- му часто обмежуються наближеними розв’язками, задовільними з точки зору практики. На їхній пошук витрачається значно менше машинного часу та інших ресурсів ЕОМ, що особливо важливо коли відповідні задачі мають вирішуватися в реальному часі (наприклад, в умовах функціонування АСУ). Розробці та дослідженню наближених алгоритмів дискретної оп- тимізації присвячена значна кількість праць [43; 46]. Наближені методи можна розділити на такі групи: методи лока- льної оптимізації, модифікації точних методів, евристичні методи, що максимально враховують специфіку задач, що розв’язуються, ме- тоди випадкового пошуку, а також методи, які поєднують локальну оптимізацію із випадковим пошуком Зауважимо, що багато наближених алгоритмів дають можливість розв’язувати задачі дискретної оптимізації в діалоговому режимі. Це дає змогу залежно від наявних ресурсів (часу, пам’яті ЕОМ тощо) послідовно поліпшувати отриманий розв’язок, змінюючи всі або де- які початкові дані. Як основний показник ефективності наближених алгоритмів, на практиці часто використовують абсолютну Д| і відносну Д2 похибки отриманого наближеного розв’язку, які визначаються із таких спів- відношень: 288
Дос лідження операцій Л П \ Ч Л /(Х )~ /ЇХ‘) Д. = / (х ) А(х ); Д-> =——-———- , ‘ [/(х )] де [- цільова функція, визначена на дискретній множині М; х' - на- ближений допустимий розв’язок задачі; х - оптимальний розв’язок задачі (для визначеності тут мається на увазі пошук максимуму/(х)). Якщо Д; = 0 (у цьому випадку вважатимемо Дт = 0, навіть тоді, ко- ли/(х ) = 0), то наближений розв’язок збігається з точним розв’язком. На практиці, особливо при розв’язанні задачі великої вимірності в режимі діалогу, важливе значення мають такі наближені методи, які дають змогу відшукати послідовність наближених розв’язків х >, Хл, .... х„, кожний наступний член якої дедалі ближче до точного розв’язку. Значна частина наближених алгоритмів дискретної оптимізації ба- зується на використанні обчислювальних схем відомих точних мето- дів, таких як метод гілок і меж, послідовного аналізу варіантів та інші. Одним з найбільш розвинених наближених методів є методи ло- кальної оптимізації, що мають на меті відшукання локально- оптимальних розв’язків. Нерідко в цих методах на окремих етапах розв’язання задачі послуговуються методами випадкового пошуку, а також різними способами (евристиками), що дають змогу скоротити перебіг варіантів і максимально враховують специфіку задачі. Слід зауважити, що алгоритми, в яких комбінуються різні ідеї, на практиці часто виявляються найбільш ефективними. Цими методами було розв’язано численні складні задачі класифікації об’єктів, роз- міщення, планування та проектування. Основна перевага цих методів — простота реалізації, а головна вада — це тс, що вони не можуть ада- птуватися до умов розв’язуваної задачі. Значно гнучкішими є мето- ди, у яких імовірнісний закон залежить від результатів попередніх випробувань і змінюється від ітерації до ітерації. Це методи випадко- вого пошуку з навчанням. Методи випадкового пошуку використовуються для наближеного розв’язання багатовимірних задач про рюкзак, а також задач лінійно- го булевого програмування великої вимірності. 13і 289
Зайченко Ю.П. Метод вектора спаду Метод вектора спаду належить до групи наближених методів ло- кальної оптимізації. Його запропонував І.В.Сергіенко ще в середині 60-х років, а потім він разом із групою співробітників розвинув цей метод стосовно розв’язання різних класів задач дискретної оптиміза- ції, у тому числі задач повністю та частково цілочисельної о прої ра мування задач з булевими змінними, оптимізаційних комбінаторних задач [43]. Різні модифікації методу було вдало застосовано для вирішення таких класів задач дослідження операцій, як розміщення приладів, організація обчислювального процесу, синтез структури мереж типу дерева, класифікація об’єктів, задач теорії розписів та інших Перш ніж викласти загальну схему методу, введемо деякі необ- хідні поняття Нехай М- метричний простір із деякою метрикою р (х, у), що ви- значається для двох довільних точок х та у із М Якщо г — деяке до- датне число, а х - фіксована точка метричного простору, то множина всіх точок у є М, для яких р (х, у) < г, зветься відкритим околом з центром у точці х і радіусом г (або відкритою кулею). Множина всіх точок у є М, для яких р (х, у) < г, зветься замкненою кулею радіуса г (г > 0) з центром у точці х є М (замкненим околом). Позначимо його О,і/(х, г). Нехай М - дискретна множина, а/(х) - довільна функція, визна- чена на М Означення 4.1. Точку х є М називатимемо точкою локального мінімуму функції / (х) стосовно околу радіуса г, якщо для всіх у є Од/(х, /•) виконується нерівність /(х) < /(у) та Ом(х, г) \ х * 0 . Задача дискретного програмування полягає у визначенні локально- го мінімуму функцїї/(х), яку задано на М стосовно околу радіуса г. Означення 4.2. Векторна функція Д'и(х), задана на М, зветься вектором спаду функції] стосовно околу радіуса г. якщо виконують- ся такі умови: 1) значення функції Ад/(х) у кожній точці хеМ є 1-вимірним ве- ктором з компонентами Д,, Дг, . .,Д/, - дійсними числами; 290
____Дослідження операцій 2) точка М є точкою локального мінімуму функції / (х) тоді і тільки тоді, коли Д, > 0 для усіх і=\,І; 3) якщо хєЛ/не є точкою локального мінімуму функції/ (х) в око- лі Ол/(х, г), то за допомогою вектора спаду можна визначити точку’ х'єОлДх, г) таку, що/(х’) </(х). Згідно з цим означенням вектор Д^(х) дає змогу для кожної точ- ки хєЛ/ в окоді О.м(х, г) знайти напрям зменшення (спаду) значень функції / в окопі ОдДх, г). Ідея використання вектора спаду Д\Дх) для пошуку такого напрямку і лежить в основі даного методу. Опис алгоритму вектора спаду Перший крок Випадково або із урахуванням специфіки роз- в’язуваної задачі вибираємо деяке початкове наближення х° є М і задаємо значення радіуса г > 0. Другий крок. Задаємо деяку послідовність радіусів (/>, г2, >„,}, яка задовольняє співвідношення: 0 < Г) < < - • < = г; т > І. Третій крок Беремоп = 0. Четвертий крок. На кожній (п + 1 )-й ітерації алгоритму виконуємо такі дії (процедури). 4.1. Беремо к = 1. 4.2. Розглядаємо окіл Ом(х‘, гк). 4.3. За значеннями компонентів вектора спаду Д^(х„) визначаємо, чи є /( хл ) локальним мінімумом функції /(х) стосовно О'ЛЇ(х„,гА)- Якщо гак, то при к <т, замінивши к на к+1, переходимо до п. 4.2, а при ~ т - до п’ятого кроку. У супротивному разі переходимо до п. 4.4. 4.4. За значеннями компонентів вектора спаду Л'^(хп) знаходи- мо в околі Ом( х„, гк) точку х„+|, для якої/(хп+|) </( х„). Замінюємо п на и+1 і переходимо до п. 4.1. ІЗ* 291
Зайчеико Ю11 П’ятий крок Закінчуємо роботу алгоритму в зв’язку з тим. що х„ є шуканою точкою локального мінімуму/(х) стосовно околу ра- діуса і: Пункт 4.4 цього алгоритму можна змінити таким чином. В околі Ои(хя, п<) серед точок х з меншим значенням цільової функції, ніж /(х„), вибрати одну, яка відповідає мінімуму функції /(х). Позначивши цю точку хя+( і замінивши п на л+1, перейдемо до четвертого кроку алгоритму (п. 4.1). Встановимо достатні умови збіжності алгоритму вектора спаду (43). Теорема 4.8. Якщо функція /(х), визначена на дискретній мно- жині М, задовольняє такі умови: 1) / (х) обмежена знизу на М, тобто/ (х) > с, де є — сопкі для всіх точок х&М, 2) І/*(х’) -/(х")| >8. де 8 - сопві для будь-яких точок х', х" та- ких. що / (х') * Дх"), то при будь-якому виборі початкового наближення х0 є М. зна- чення радіуса г > 0 / послідовності {гь г2, ..., /„,} обчислювальний процес алгоритму вектора спаду збігається за скінченне число кро- ків, яке не перевищує: (4.6.1) Доведення Воно майже очевидне. Для отриманої в результа- ті застосування алгоритму послідовності точок {х(), хь ..,хи+1 } спра- ведливі нерівності /(х0) >Дх}} > ... >/( х„) >/( хпі|). 13 яких випливає, що_/(х0) - є > Н8. де Н - число кроків алгоритму. Таким чином, Н < /(Хп) с „ ----— У випадку, коли функція Дх) задана на деякій скінченній множині, виконуються обидві умови теореми. Отже, обчислюваль- ний процес за методом вектора спаду буде скінченним. Якщо ж ви- рішується заіальна іадача дискретної оптимізації, цільова функція якої не задовольняє умови теореми 4.8. го можна іастосувати вище- описаний алгоритм, якщо ввести (в нього) деяку додаткову ознаку закінчення обчислювального процесу, наприклад, досягнення деяко- го наперед заданої о числа кроків алгоритму. 292
Дослідження операцій Крім того, одержуючи на кожному кроці алгоритму відповідне значення цільової функції, можна оцінювати його з точки зору де- яких практичних вимог. Опис загальної схеми методу потрібно доповнити розглядом та- кого можливого випадку: нехай локальний розв’язок не задовольняє деякий заданий додатковий критерій (наприклад, критерій, що вста- новлює максимально допустиме відхилення локального мінімуму від глобального). Для такого випадку можна запропонувати декілька ва- ріантів пошуку інших наближених розв’язків По-перше, вибравши точку х за нове початкове наближення і збільшивши задану спочатку величину радіуса г, слід продовжити обчислювальний процес до отримання інших наближених розв’язків задачі, які, очевидно, будуть ближчими до глобального за значенням цільової функції, ніж х. Однак, при цьому процес обчислень може суттєво ускладнитися. По-друге, виходячи з точки х і збільшивши значення радіуса г, можна здійснити лише перший крок алгоритму до отримання точки х', що задовольняє нерівністьДх') <Д х ), потім повернутися до поча- ткового значення радіуса і продовжити обчислювальний процес. По-третє, не змінюючи значення г, можна продовжити процес обчислень із деякого іншого початкового наближення х^ є М і отримати в результаті інший локальний розв’язок х', який в загаль- ному випадку відрізнятиметься від х . Застосування методу вектора спаду для задач лінійного цілочисельного програмування Розглянемо особливості реалізації загальної схеми методу векто- ра спаду при розв’язанні задач ЛЦП. Нехай маємо задачу ЛЦП, зада- ну у вигляді: п максимізувати Дх) = £є .х,, (4.6.2) У=і при обмеженнях: ІЗ2 293
Зайченко Ю.П п ХаЦх) і = 1,т; (4.6.3) >=і ху >0, у=1,л; (4.6.4) х, - ціле число, у = 1,л (4.6.5) Дискретною множиною розв’язків М у цьому випадку буде мно- жина всіх упорядкованих наборів із п цілих чисел, відстань між дові- льними елементами х = [хь х2, . . . , х„] та у = [уь у2,. . . , у„] якої ви- значимо за формулою: Р(х<У)= £ (4 6.6) /=і У метричному просторі 2" відстань між будь-якими двома його точ- ками дорівнює цілому числу, а довільний окіл О7 (х, г) складається з точки х і усіх точок множини 2" , розташованих від х на відстані, яка дорівнює (1, 2, ..., |г|). Нехай С — множина допустимих розв’язків даної задачі, О а 2” , що визначається обмеженнями (4.6.3)-(4.6 6). Згідно з означенням вектора спаду функції (4.6.2) стосовно околу радіуса г розглянемо визначену на 2П векторну функцію вигляду: А',,(х) = {А (х, х1), А (х, х2), ..., Д(х,х’)}, Д(х, х‘)=/(х* )-/(*) = І с,(х/*’-х7), Л= 1,2,(4 6.7) 7=1 Де (х‘} = {х*,х*,...,х‘},*= 1,/, Xі є о2„(х,г). Зауважимо, що якщо окіл Ог„(х,г) містить деяку точку у = {уь >’?. разом з симетричною ВІДНОСНО Г. X точкою у' = {у*., у’2, ..., г’„}, то значення компоненти А (х, у) вектора спаду Д2 (х) буде міс- тити інформацію про поведінку цільової функції в обох точках у та у’, оскільки А (х, у' ) = - А (х, у). 294
Дослідження операцій Це означає, що компоненти А (х, у') можна не розглядати. Крім того, із компонент вектора ДЛ(х) слід вибрати лише ті, які відповіда- ють точкам х* є О7„ (х, г). Якщо деякій точці г є О/ГІ (х,г) відповідає від’ємна компонента Дг(х, г) вектора спаду Д', (х), то має місце нерівність Цг) <Дх). Для розв’язання задачі ЛЦП (4.6.2)-(4.6.5) методом вектора спаду в п. 4.2 алгоритму, описаного вище, розглядається окіл Ог„(хЛ,гА). Координату х, довільної точки х цього околу можна визначити через відповідну координату її центра х* за допомогою формули: X ; + Р : при І Є /; х,.= 7 (4.6.8) Ху при у = {1,2,. ,п} \ І, де ІС {5, ..., и}7, Р, Є {+ 5, - 5, .., + Гк, - Г*} ДЛЯ уСІХ > = 1,Л, І — ГА При виконанні п. 4.3 та 4.4 алгоритму компоненти вектора спаду обчислюємо за формулою: Д(х‘,х)= Есуру, .ІЄІ причому для шуканої точки х*+| є О2„(х*,г)ПС має виконуватися нерівність А (х*, х'н|) < 0. Достатні умови збіжності методу вектора спаду при розв’язанні задачі ЛЦП встановлюються в нижче наведеній теоремі [43]. Теорема 4.9. Якщо всі компоненти сг і - 1,и, функції (4.6.2) не- від’ємні, то послідовність {х*}, побудована за алгоритмом вектора спаду при будь-якому виборі початкового наближення х° є С та ра- діусі г > 0, скінченна і закінчується точкою локального мінімуму фу- нкції /(х) стосовно околу радіуса г. При цьому число кроків алгорит- му не перевищує величини Р/(х°), де Р - найменше спільне кратне чисел Р„ які взяті із такого виразу для с,: 13** 295
Зайченко Ю.П. аі Р/ у = 1, ..., п, (4.6.9) де а., - цілі числа, Ру * 0. Ця теорема є наслідком теореми 4.8. Дійсно, якщо виконуються умови теореми 4 9, то для всіх точок х є 6 справедливо / (х) > 0 і, крім того, для двох довільних точок х' і х" є С , таких, що Дх') * Дх"), справедлива нерівність: Дх')-Дх")|> ‘ . Отже, виконуються обидві умови теореми 4.8. Для дослідження алгоритму вектора спаду при розв’язанні задач вигляду (4.6.2)-(4.6.5) середньої і великої вимірності було проведено такий обчислювальний експеримент [43]. Коефіцієнти в умовах задач формулювалися за допомогою дат- чика псевдовипадкових чисел. Незалежно одна від одної вибиралась кожна із (тп + п + т) величин а,у,су,6,, де я,у та су - цілі числа, рівномірно розподілені на відрізку [-10; +10]; Ь, - цілі числа, рівно- мірно розподілені на відрізку [0,9 х п; 2,6 х «]. При проведенні експериментів використовувалися певні правила перебору точок в околі; в усіх прикладах за початкове наближення вибирався нульовий л-вимірний вектор, радіус околів вважався та- ким, що дорівнює 1. Результати машинних експериментів наведено в табл. 4.21, де позначено: тхп- розміри матриці коефіцієнтів обме- жень; V - кількість розв’язаних задач; /(х*) - /(х° )| та Яхл)-/(х°) - мінімальна та максимальна абсолютні величини г І тах різниці між отриманим локальним мінімумом функції /'(х) і значен- ням цієї функції в точці х” серед V задач даної вимірності; /т|п та /тах ~ мінімальний та максимальний час розв’язання однієї задачі, А'т1Г1 > ^та\ ~ мінімальне та максимальне число ітерацій. 296
Дослідження операцій Таблиця 4.21 гпхп V !Г(х") -Г(х°)|шіг, ІГ (х*1) - Дх°) тах ^;піп •тах 10x10 10 34 481 13 83 0.64 3.27 20x10 10 1 38 2 8 0,18 0,48 50x10 10 1 10 2 3 0,18 0.43 50x50 10 89 221 26 44 11.4 37,7 50x100 3 514 631 92 125 208 266 100x50 3 51 230 21 48 13,2 74 100x100 4 178 690 37 136 101 344 100x200 2 526 899 137 150 802 855 Застосування методу вектора спаду до задачі булевого програмування Розглянемо задачу ЛЦП з булевими змінними вигляду: п мінімізувати ^,с-х^ , >=і при обмеженнях: 2ХуХу </>,-, і = ї,т, 7=1 х} є {0, 1}, у = 1,п . (4.6.10) (4.6.11) (4.6.12) Дискретною множиною М у даному випадку є підмножина Вп всіх точок метричного простору 7" , які задовольняють умові (4.6.12). Це простір тієї ж метрики (4.6.6), яку було задано в усьому просторі 7" . При реалізації загальної схеми методу вектора спаду для розв’язання задачі вигляду (4.6.10)-(4.6.12) в її. 4.2 алгоритму, запропонованого в попередньому розділі, розглянемо окіл о „(х*,гА )• Координати довільної точки х = (хі, х3, ..., х„) цього околу можна за- писати через координати точки \ таким чином: 1 - Ху при і є /; X. = Ху при і є {1,2,...,л}\ І. (4.6.13) 13’ 297
Заиченко Ю.П. При виконанні н. 4.3, 4.4 алгоритму компоненту вектора спаду Л'в(хЛ) обчислюємо в цьому випадку за формулою. А(х",х)=^Су - ^с., ує/„ де /о - множина тих значень індекса у є І, для яких Гу =0, їосі. Справедлива така теорема про збіжність алгоритму вектора спаду щодо задачі булевого програмування [43]. Теорема 4.10. При будь-якому виборі початкового наближення х° є С(С множина точок, що задовольняють обмеження (4.6.11) та (4.6.12)), радіуса г > 0 послідовність наближень { х* }, яка визна- чається за алгоритмом, збігається до локального розв'язку задач/ (4.6.10)—(4.6.12) за скінченне число кроків, яке не перевищує величини Р(Лх°)-с), (4.6.14) де р визначається так само, як і в теоремі 4.9, а 0, якщо с > 0 для усіх і = 1,и; с = (4.6.15) 2_,с, ’ в протилежному випадку, ./є/ де 1 множина тих значень індексу у є {1, 2,.... и|, для яких су < 0. Доведення теореми аналогічне доведенню теореми 4.8. Цс пов’язано з тим, що множина В" скінченна, і, отже, функція/(х), яка визначена на множині С є В" , задовольняє умови теореми 4.8 Спра- вді, очевидно, що для всіх точок х є О,/(х) > с, де с - величина, що визначається формулою (4.6.15), та для всіх х', х" є С таких, що /"(х') */(х"), має місце нерівність: І /(х')-/(х”)|> ’ . Приклад 4.8. Для ілюстрації застосування методу вектора спаду розглянемо таку задачу ЛЦП: максимізувати (х, + х2), (1) при обмеженнях: 298
Дослідження операцій 2л, + 11х2 < 38, л,+ х2 < 7; ,2 4х, - 5х2 <5; х,.х2 >0, х,, х2, - цілі числа. (3) Виберемо за початковий розв’язок х(0) = (0, 0). Задамо деяку послідовність радіусів г = 2, 3, 4. Візьмемо п = 0. Перша ітерація 1. Покладемо Гі = 2. 2. Розглянемо окіл О7„(х0,г=2). До нього потрапляють вектори х, = [0; 1]; х2=[1;0]; х3=[1; 1]; х4 = [2;0]; х,= [0;2]. Вектор х4 є недопустимим через обмеження (2) 3. Обчислимо компоненти вектора спаду лх(х(0» = {л(х(0).х,)}, де 2 2 Л7(х(0),х,) = £с,(х<-х,(0)) = 2^1,. /=| /=| Одержимо д7 = {1, 1,2,2}. 4. Оберемо за вектор х(1) = х3 = [1; 1], для якого/(х(1)) = 2. Друга ітерація. 1. Розглянемо окіл точки х( 1). о7 (х( 1), г — 2). До нього потрапляють вектори: х,= [0; 1]; х2= [1; 0]; х4 = [2; 1]; х5= [1; 2]; х6= [1; 3]; х7 = [3; 1]; х8 = [2; 2]. Вектор х7 недопустимий за об- меженнями (2), а точки х,, х2 вже розглядалися раніше (на попере- дній ітерації), для них значення цільової функції менше, ніж для поточної точки х(1), а тому їх можна випустити. 2. Обчислимо компоненти вектора спаду: л7(х(1))= {Д(х(1), х4 );Д(х(1), Х5);Д(Х(1), х6);Д(х(1), х8)} = {1,1,2,2}. 3. Виберемо за нову поточну точку х8 = [2, 2] з найбільшою компонентою Д = 2. Отже, покладемо х(2) = х8= [2, 2]. Третя ітерація. 1. Розглянемо окіл х(2): о7 (х(2), г = 2). До ньо- го потрапляють вектори х,= [2; 3]; х2= [3; 2]; х3 = [4; 2]; х4 = [2; 4]; *5= [1; 3]; х6= [3; 1]; х7 = [0; 2]. Серед них допустимими виявляються х, ,х2, х5, х7. Обчислимо компоненти вектора спаду: (х(2))={Д(х(2),х,);Д(х(2), х2);Д(х(2), х5)Д(х(2), х7)} = {1,1,0,-2} За нове наближення можна вибрати як х,, так і х2 з однаковими компонентами Д (х(2), х,) = 1, Ї=1,2. 13*** 299
Зайченко Ю.П Виберемо для визначеності х і покладемо х(3) = х, = [3; 2]. Четверта ітерація. 1. Розглянемо окіл х(3): о, (х(3), г = 2) = {х,= [4; 2];х,= [3; 3]; х3= [2; 3]; х,= [3;4]; „ = [5. 2]. ч= [2; 2]; х7= [1; 2]; х,= [3; 1], х9= [2, 1]}. Вектори х , х2, х4, х, є недопустимими за обмеженнями (2). 2. Для точок, що лишилися, обчислимо компоненти вектора спаду аДх(3))= {0,-1,-2,-1,-2}. Оскільки всі компоненти вектора не додатні, збільшимо радіус околу (г = 3) і перейдемо до першого кроку. Знову розглянемо окіл точки х(3) і визначимо усі точки, які на- лежать йому при г = 3 і не належать при г = 2. До нього потрапляють такі точки: хИ)= [6, 2]; х„= [2; 4]; х,,= [1, 4]; х:з= [3. 5]. Серед них точки х10, хв , хІЗ недопустимі, а для х|?: Д (х(3). х;,) = - 1 < 0. Тому збільшимо радіус околу до г = 4. Легко перевірити, що і при г = 4 усі компоненти вектора спаду лишаються недодазними Отже, точка х(3) = [3; 2] є точкою локального максимуму. Збільшивши г, можна переконатися в тому, що вона є і точкою гло- бального максимуму. Одночасно знаходиться і друга точка макси- муму х3= [2; 3], оскільки Д (х(3), х3) = 0 Приклад 4.9. Розглянемо задачу булевого програмування: максимізувати (3.x, + б.г, + Зх3 + б.г4 + із.і5) = г: при обмеженнях: -З.ї| - 6х2 + 6х3 + І2.г4 + 7х5 <8, /= 1; б.Г| + і2хг -Зг3 + 7х5 < 8, і = 2; (2) Є {0, 1 }, І= 1.5. Перша ітерація. 1. За початкове наближення вибираємо х0= [0, 0, 0, 0, 0] і нехай радіус збіжності г = 2. Розглянемо окіл оя ( х0, г = 2). 2. Знаходимо послідовно всі вектори Х|,х,, ...,х, , які належагь до околу ов ( х„, г - 2), тобто такі, що І [<-<]< 2 /-І Ними є вектори 300
Дос лідження операцій х, = {1,0,0,0,0};х2 = {О,1,0,0,0}; х3 = {О,О, 1,0,0};х. = {О,0,0,1,0}; х.= {0,0.0.0,1};х6= {І, 1,0,0,0},х,= {1,0, 1 0,0};х„= {1,0,0, 1,0}; х9= {1,0,0,0,1}; хіи = {0.1,1.0,0};х ,,= {0,1,0,1,0},хі2 = {0,1,0,0,1}; х„ = {0, 0, 1, 1,0};хи= {0, 0, 1,0, 1},х15= {0, 0, 0, 1, 1} Серед цієї множини векторів допустимими за обмеженням (2) ВИЯВИЛИСЯ вектори х, , хч, Хч,х7,Х|(),х1|. З Обчислюємо компоненти вектора спаду: Ай<хо> = !МХл.хІ):Д(х0.хЛ);\(х1І.хч).Л(х(,.х7).А(х3,х;и);Д(х(І,Х|,)}= {3,3, 13,6,9, 12}. Оскільки всі компоненти Д( х„, х,) > 0, то за нову точку можна взяти будь-яку з них. Виберемо х;, для якої Д( ха, х5) = тах {Д( х0,х,)} = 13. При цьому значення цільової функції дорівнює /(х5) = 13. По- кладемо Х( 1) = х5 . Друга ітерація. 1. Знаходимо окіл оя(х(1), г = 2). До нього на- лежать всі вектори, які визначаються співвідношенням (4.6.13). З урахуванням умови (2) допустимими виявилися такі: хи, Х|,х3, які були представлені вище. 2. Обчислюємо компоненти вектора спаду: Лі(х(1)) = {Д(х(І),х0);Д(х(І).хІ);Д(х(1),Хз)}={-ІЗ, ІО.ІО}. Оскільки ВСІ Д(х( 1 ), х, ) < 0, то переходимо знову до кроку 1, збільшивши радіус до г= 3. Неважко переконатися, що і при г = З усі компоненти вектора спаду від’ємні отже, точка х(1) = {0. 0, 0, 0, 1} - це точка локального максимуму. Послідовно збільшуючи раді- ус околу до г - 4, 5, ..., можна перевірити, що це - глобальний мак- симум (порівняйте з розв’язком даної задачі методом Балаша, див. приклад 4.5).
іайченко Ю.П. Розділ 5 НЕЛІНІЙНЕ ПРОГРАМУВАННЯ 5.1. КЛАСИЧНИЙ МЕТОД ВИЗНАЧЕННЯ УМОВНОГО ЕКСТРЕМУМУ Задача нелінійного програмування (задача НП) в загальному ви- іляді формулюється так [2; 18] максимізувати /(х,, х,,..., х„), при обмеженнях £,(х„х2,...,х,,)>0; 8Лх„хг, ..,х„)>0: де функції /(х„ х,,.... х„), (х|,х2,...,х„)>0, і=1,т нелінійні. На відміну від задачі ЛП, для задач НП немає універсального ме- тоду розв’язування В задачі ЛП допустима множина Я завжди є опуклою зі скінчен- ним числом крайніх точок. Тому скориставшись симплекс-методом і перебравши тільки крайні точки, можна за скінченне число кроків знайти оптимальний розв’язок. У задачах НП, навпаки, опуклість допустимої множини і скінченність числа її крайніх точок зовсім не- обов’язкові. Це і спричиняє основні труднощі розв’язання задач НП. Розглянемо деякі приклади. 302
Дослідження операцій Приклад 5.1. Нехай допустима множина я(х) визначається та- кими обмеженнями (див. рис. 5.1): 81(х|,х,)--6-х] >0 8, (х„х.)=6-л2 >0; 8ч(х1,х,) = 6-х, х, >0; х, >0,х,>0 Допустима множина тут не є опуклою. П р и кл ад 5.2. Нехай (х,, г2)=4 - х.2 - х; > 0, х, > 0, х, > 0 Хоча допустима множина розв’язків (рис. 5.2) і опукла, але чис- ло крайніх точок тут нескінченне. Приклад 5.3. Максимізувати (Юх, + 20х2 + х.х, -2х2 -2х2)=тах/(х.,х,), при обмеженнях: 8, (х,,х2)=7 -х,>0; #2 (х,,х2)=8-х2 >0, 8,(х1,х,)=10-х,-х2 >0 ; Побудуємо допустиму множину розв’язків (рис. 5.3). Задавшись /(Х],х2, .,л„), побудуємо сім’ю еліпсів, які мають спільні осі. На малюнку видно, що точка максимуму х"(х"=4;х2 =6) потрапляє на межу множини розв’язків. Для визначення умовного екстремуму (тобто екстремуму при об- меженнях) можна скористатися методами диференціального числен- ня, коли функція / (х1,х2,...,х„) має не нижче другої похідної. Роз- глянемо деякі важливі поняття і теореми класичного аналізу, які ле- жать в основі класичних методів пошуку умовного екстремуму [18]. Теорема 5.1 (теорема існування екстремуму). Якщо / (х,, х2, ... х„) - неперервна функція, яка визначена на замкненій і обмеженій множині К, то вона досягає на цій множині, хоча б одного разу, своїх максимаїьного і мінімального значень. Наступна теорема визначає можливі місця знаходження макси- муму (або мінімуму). Теорема 5.2. Якщо /(х,, х2,..., х„) є неперервною функцією декі- лькох змінних, що визначена на допустимій множині Я , то максима- льне значення ((х,, х2,..., х„). якщо воно існує, досягається в одній 303
Зайченко Ю.П Рис. 5.4 Рис. 5 5. або декількох точках, що належать одній із таких множин 1) 5, - множина стаціонарних точок; 2) Бг - множина точок межі; 3) 53 - множ ина точок, де функція / (х,, х,,..., х) недиференційовна Означення 5.1. Множина точок 5, (х,,х2,...,х„). функції /(л,,л2 ...,х„) зветься множиною стаціонарних точок, якщо вони за- довольняють умові: ^>=о, ,=й (5 1.1) дх, Означення 5.2 Функція /(х) досягає локального максимуму в точці х° =(л[’,х£,...,х’). якщо для всіх точок х, що знаходяться в мало- му околі точки [х,п,х”,...,х“]. має місце нерівність: /(х",х“,...,хл°)>/(х„х2,...,х.) (5.1.2) Означення 5.3 Функція /(Х) досягає глобального (абсолютного) мак- симуму в гочці х°, якщо для всіх точок х є Р справедлива нерівність /(х°)>/(х) Для знаходження стаціонарних точок функції /(х) можна вико- ристати таку теорему. Теорема 53. Нехай /(х,,х2,...,х„) дифереіщійовна в деякій допус- тимій множині (області) Р. Якщо в деякій внутрішній точці (г° ,х2,...,х“) області Р функція /(х) досягає відносного максимуму то 304
Дослідження операцій ^2=о, /=й. (5-ЬЗ) йх Приклад 5.4. Нехай /(.г,,х2) = Юл,+20.г, + .г.л2-2г,2-2х? визначена на множині я х я (тобто на всій площині х, о г, ). Для знаходження відносного екстремуму цієї функції маємо два рівняння: -^- = І0 + х,-4х, =0; д/ -і- = 20 + х.-4лч =0. &2 Розв’язавши їх, знаходимо х,° = 4,х2 = б Для того щоб визначити, чи є знайдені стаціонарні точки точками максимуму або мінімуму, потрібно дослідити функцію /(хі,х2,...,х„) в околі стаціонарних точок і визначити, чи є вона опуклою або вгнутою. Означення 5.4. Нехай Я - опукла множина точок «-вимірного простору. Функція /, визначена на Я, зветься опуклою догори (угну- тою), якщо для будь-якої пари точок х.,х2 є Я і довільного 0<А<1 виконується нерівність (рис. 5.4) /[Ах, + (1-А)х,]> А /(х,) + (1-А)/(х,). (5.1.4) Якщо /[Ах, +(1-А)х,]< А/(х,) + (1-А)/(х,), (5.1.5) то функція зветься опуклою (рис. 5.5). Якщо (5.1.4) або (5.1.5) виконуються як строгі нерівності, то фун- кція зветься строго вгнутою або строго опуклою відповідно. Ознаки опуклості та вгнутості функції п змінних можна сформу- лювати у вигляді такої теореми. Теорема 5.4. Диференційовна функція /щу строго вгнута в де- якому околі точки х° = (х,°,х2,...,х°). якщо виконуються такі умови: Л(*о)<0; Аі(хо) /і2^Хо) Л <хо) /22(Хс) •Аі(хо) /І2(хо) /2і(хо) /г2^хо) /зі(Х()) ./з2(Хо) /із (хо) ЛзЮ Лз(Хо) <0. (5.1.6) 305
Зайченко Ю.П. 1 так далі, тобто якщо знаки визначників чергуються починаючи з < 0, де дхідх/ х = х0. Функція /(х) строго опукла в околі точки х„. якщо всі визначни- ки (записані вище) додатні. Має місце така теорема. Теорема 5.5. Для того щоб в точці досягався внутрішній від- носний мінімум, достатньо, щоб ця точка була стаціонарною, а са- ма функція в околі точки х„ була строго опуклою. Справедливе таке твердження: якщо /(х) строго опукла (вгнута) функція на всій множині розв’язків Я , то / має тільки один віднос- ний мінімум (максимум), який є абсолютним. Теорема 5.6 (про опуклість допустимої множини розв’язків). Нехай Яі(х),Я?(х), • 'Ят(х)-0 та х^0- обмеження задачі нелінійного про- грамування Якщо функції #,(х),£?(х),.. угнуті, то допустима множина Я(х) = {х : ^,(х)> 0,&2(х)> 0... .,£,„(*)> 0,х > 0} є опуклою. Доведення. Для доведення теореми досить показати, що мно- жина Я (х)= {х: (х)> 0,х > 0} при кожному і-\,т є опуклою. Тоді множина Я = Я. ГІЯ2 ГІ...ГІЯ,,, також опукла, як перетин скінченого числа опуклих множин Я,. Розглянемо деяку вгнуту функцію % (х)>0 Виберемо дві довільні точки Х)>0 та х3>0 (рис. 5.6). Тоді х2 = Лх, (1 - Л )х3 > 0,0 < 2< 1 • Оскіль- ки х, є Я,, х3 є Я,, то і точка х2 належить Я, . Із умови вгнутості у, випливає, що ^,[Лх, + (1-л)х,^^1(х,)Л + (1 Я)$,(х3)>0 Отже, множина Я, містить відрізок ^£,(х:)+0 “Л)я,(хз) ’ ТОМУ вона опукла (рис 5.6). Рис. 5.6 306
Дослідження операцій Справедливе таке твердження- якщо функції /І(х),/,(х)....,/',(х) - опуклі (угнуті) на множині/?,, то функція »(х) = ^А/(х) ~ опукла >-і (угнута) за умови, що всі А, > 0, і = 1,2,. ., р . Доведення цього твердження нескладне, отже, пропонуємо чита- чеві довести його самостійно. Розглянемо класичний метод пошуку умовного екстремуму. Він складається з таких процедур. 1. Відшукують множину всіх стаціонарних точок ЛДх) функції /(х) на опуклій допустимій множині /?. Знайдені точки далі дослі- джуються на максимум (мінімум) і визначають точку найбільшого максимуму х„(хи є 5,(х)) - 2. Переходять до дослідження точок межі 52(х) і відшукання тих з них, де /(х) досягає максимуму. Цей процес полягає у такому. Ви- бирають довільну межу, що визначається, наприклад, умовою 2 (х) = 0 Якщо функція §,(х) = &(*,,х,,.. ,х„) = 0 .(5.1.7) є сепарабельною, то можна, визначивши із (5.1.7) змінну: х, і = \,п, )*і, підставити її у вираз для /(х). Тим самим задача зведеться до по- шуку безумовного екстремуму; для цього можна використати проце- дуру, описану ви. 1. Позначимо через х* точку межі £.(х) = 0, х‘є/?, в якій /(х) дося- гає максимуму. Повторюючи описану вище процедуру для всіх ін- ших меж, знайдемо відповідно точки максимуму (мінімум) для всіх меж X;. к = 1,/и . 3. Безпосереднім порівнянням значень функції /(х) для всіх то- чок х*, х^,.... х*„ знаходять точку абсолютного максимуму (мініму- му) хорІ на множині розв’язків У?. Такий підхід потребує значних обчислювальних виграз і може за- стосуватися лише в найпростіших випадках, при малому числі обме- жень т та для випадку сепарабельних функцій й/(х), тому область 307
Зайченко Ю П його застосування дуже обмежена, і нижче розглядаються більш ефективні методи умовної оптимізації. Узагальнення поняття опуклої функції. Розглянемо деякі класи функцій, які не с повністю опуклими, але мають лише окремі їхні власти- вості. Означення 5 5. Нехай функція /(х) визначена на непорожній / опуклій множині К . Функція /(х) квазіопукла, якщо для будь-яких х, х, є Я та А є[0;1] виконується нерівність: /(2х, + (1-Л)х,)< тах{/(х,), /(х2)} (5.1 8) Функція [(х) зветься квазівгнутою, коли -/(х) квазіопукла фу- нкція. Із цього означення випливає, що функція /(х) - квазіопукла, як- що із нерівності /(х,)> /(х ) випливає, що /(х,) не менше від зна- чення функції /(х) в будь-якій точці, яка є опуклою комбінацією точок х, та х2. 1 навпаки, функція /(х) квазівгнута, якщо із нерівно- сті /(х2)>/(х.) випливає, що /(х>) не більше ніж значення /(х) у будь-якій точці, що є опуклою комбінацією точок х та х,. На рис. 5.7 наведено приклади квазіопуклих та квазівгнутих фун- кцій, де а - квазіопукла, б - квазівгнута функції. Введемо поняття строгої квазіопуклості та квазівгнутості. Означення 5.6. Нехай функція /(х) визначена на непорожній і опуклій множині Я Функція /(х) строго квазіопукча, якщо для будь-яких хі,х2єК таких, що Нхг) та 2є(0;1) виконується нерівність /(Ах, +(1 -А)х,)< тах{/(х,), /(х2)} (5.1.9) 308
Дослідження операцій Функція /(х) зветься строго квазівгнутою, коли -/(х) - строго квазіопукла функція. На рис. 5.К зображено: а, б - строго квазіопуклі функції, в - квазівгнута функція 11 наведеної о означення випливає, що будь-яка опукла функція є водночас і строго квазіопуктою. Строго квазіопуклі та квазівгнуті функції відіграють важливу роль у нелінійному програмуванні, оскільки для них локальний міні- мум і локальний максимум є глобальним мінімумом та максимумом відповідно. Твердження. Нехай /(х) — сгрого квазіопукла функція. Розгля- немо задачу мінімізації /(х) за умови, що х є Я, де Я - непорожня опукла множина в Е1”1. Нехай х- точка локального мінімуму роз- глянутої задачі. Тоді вона є і точкою глобального мінімуму. Доведення. Припустимо супротивне, тобто нехай існує точка х‘ є Я , для якої /(х‘)< / (х). Оскільки Я опукла, то точка Лх‘+(1-Л)хєЯ при будь-якому А є (0,1) Оскільки х - точка локального мінімуму, то /(х)</[Ях’-ь(1-Л)х], (5.1.11) при всіх А Є (0,£) для деякого г> є (0,1). Оскільки /(х) квазіопукла функція і виконується нерівність ,/(х )< /(х), то ми отримаємо, що /[Ях‘+(1-Я)х]</(х), при усіх А є (0; 1). Однак цс співвідношення суперечить (5.1.11). Зауважимо, що строго квазіопуклі та квазівгнуті функції назива- ються унімодальними. 309
Занченко Ю.П 5.2. МЕТОД МНОЖНИКІВ ЛАГРАНЖА Метод множників Лагранжа дає змогу відшукувати максимум (або мінімум) функції при обмеженнях-нерівностях. Основна ідея методу полягає у переході від задачі на умовний екстремум до задачі відшукання безумовного екстремуму деякої побудованої функції Ла- гранжа. Нехай задано задачу НП при обмеженнях-рівностях вигляду мінімізувати /(г|,х2,...,х1і), (5.2.1) при обмеженнях: Млі,-ь...*„)=0, ..х.)=0. р22) йт(х,х2,...,х„)=0. Припустимо, що усі функції /,А,,/і2,...,- диференційовні. Введемо набір змінних Л15 2,,..., (число яких дорівнює числу об- межень), які мають назву множників Лагранжа, і складемо функцію Лагранжа такого вигляду: Ц\,х,...л„,ДЛ, ,2га) = (5 2.3) = Дл1,л,,...,х„)+ її,(Хі,х2,. 1=1 Справедливо таке твердження [18]' для того щоб вектор хп = був розв’язком задачі (5.2.1), при обмеженнях (5.2.2), необхідно, щоб існував такий вектор д“ = Ц“,й20,...,Я“}, шо па]5а векторів задовольняла б системі рівнянь: , А ) - —— (5 2 41 --------= 0, / = І,и; Р 4.4) дх> ^<Л°) = 0, , = (5.2 5) дА Покажемо необхідність умов (5.2.4), (5.2.5) на простому прикладі: мінімізувати /(х1,х2,хі), (5 2.6) 310
Дослідження операцій при обмеженнях: А, (х(,х,, х3) = 0, А, (х,,х,, х3) = 0. (5.2.7) Обмеження (5.2 7) визначають допустиму область 5, яка зобра- жує криву в просторі Я,3) і є результатом перетину Л. (х) та Л2(х). Припустимо, що розглядувана задача має точку мінімуму в 5, х’ = [г,',х2,...,х'}, функції /, Л,,Л2 мають неперервні похідні першо- го порядку на деякій відкритій множині і градієнти. УА,(х) = ІАі ал,, а/», дх2 ’ &3 УА,(х) = ["дії, дії, дії, [_ сЬг, ’ дх, ’ дх3 лінійно незалежні. Якщо дві змінні в рівняннях (5.2.7) можна виразити через третю у вигляді х2 = (7(х|), х3 = К(х;), то підставивши їх в цільову функцію (5.2.6), перетворимо вихідну задачу в таку задачу без обмежень, яка містить лише одну змінну х, мінімізувати /(хі,и(хі),Г(л,)). (5.2.8) Оскільки градієнти УА (х,,х2,х3), і = 1,2, неперервні та лінійно незалежні, то можна застосувати відому теорему математичного ана- лізу про неявну функцію і знайти стаціонарну точку х’, а потім г2=їу(хі‘), х3’=г(х,*) Наведений підхід можна було б в принципі поширити і на випа- док функції п змінних /(х),х = [х1,х2,...,х„] за наявності т обме- жень-рівностей: Л,(х)=0,А,(х)=0,. „А„,(х)=0. (5.2.9) Якщо функції А:(х),...,Лт(х) задовольняють умовам теореми про неявну функцію, то т змінних із п змінних рівнянь (5.2.9) можна виразити через інші (л т) змінних, підставити їх в /(х) і таким чи- ном перетворити задачу мінімізації з обмеженнями в задачу безумо- вної мінімізації з (п-т) змінними. Однак, такий підхід важко реалі- зувати на практиці, оскільки дуже важко розв’язати рівняння (5.2.9) Щодо деяких змінних. У загальному випадку це зовсім неможливо. 311
Зайченко Ю.П. Тому розглянемо інший підхід, який грунтується на методі мно- жників Лагранжа. Нехай х' точка мінімуму /(х), що визначається виразом (5.2.8). Згідно з відомою теоремою математичного аналізу про неявну функ- цію можна записати: А = = (5.2.10) сіх, с\| дх2 сіх\ й%з е/х) Аналогічні співвідношення отримаємо для обмежень: А=^,і.л/+^.л_ = 0 , = |2 (52||) сіх, дх2 <1ху дху сіх. Запишемо рівняння (5.2.10), (5.2.11) разом у вигляді: 1 сПі Ах СІХ, = 0, (5.2.12) сІУ сіх. де 'УГ(х')' А = ^7г,(х") 7А,(х') Оскільки вектор ] сіх, сіх, не дорівнює нулю, то із (5.2.12) випливає, що <1еі А = 0 . З цього доходимо висновку, що вектори- рядки матриці А мають бути лінійно залежними. Отже, існує три та- ких скаляри а, Ь, с, не всі з яких дорівнюють 0, що а\7/’(х’)-і-і>\7/г](х’)-*-с^7/і2(х’) = 0. (5.2.13) 312
Дослідження операцій Скаляр а не може дорівнювати 0, бо згідно з припущенням Уй, та 7/г2 - лінійно незалежні. Тому поділивши (5.2.13) на а, дістанемо: У/(х*) + Я, У/г, (х*) + 2,УЛ,(х') = 0. (5.2.14) Таким чином, для задачі мінімізації з обмеженнями (5.2.6) існу- ють такі , Л2, для яких справедливе рівняння (5.2.14) і які одночас- но не дорівнюють нулю. Отже, справедливість умов (5.2.4) для випа- дку п = 3 показано. Таким чином, для відшукання мінімуму (5.2.6) за умов (5.2.7) по- трібно знайти стаціонарну точку функції Лагранжа: А(х, А) = /(х) + ЛІЛ,(х) + АДІх) - Для того щоб знайти шукані значення Л} ,Л2,х' , потрібно розв’язати сумісно систему рівнянь (5.2.4), (5.2.5). З геометричної точки зору умова (5.2.14) означає, що У/'(х’) лежить у площині, яка натягнута на вектори УЛ.(х’). Тепер розглянемо загальний випадок для довільного п. Нехай за- дано задачу НП у вигляді (5.2.1), (5.2.2), всі функції /(х), Л,(х), ї = 1,тп («?<«), мають неперервні частинні похідні на множині Я1"1. Нехай 5(х) - підмножина множини Я,п|, на якій всі функції й,(х) = 0, / = Кт, тобто 5 = |х:й,.(х) = 0, і=Цй}- Тоді справед- лива така теорема про множники Лагранжа [2]. Теорема 5.7. Припустимо, що існує така точка х’, на якій дося- гається відносний екстремум задачі НП (5.2.1) за умов (5.2.2). Якщо ранг матриці । _ бйу(х) існує т чисел Л} , Л2,..., Лт, не всі з яких дорівнюють нулю одночас- но, при яких / = 1,/л, у = 1 /і, в точЧ> х* дорівнює т, то ін У/(х‘) + £2 УЙ,(х’) = 0. (5.2.15) Ця теорема обгрунтовує метод множників Лагранжа, який скла- дається з таких кроків. Утворюють функцію Лагранжа: Цх, А); 14і 313
іайченко Ю.І1. дЬ(х, Л) -— оЦх, Л) -— Знаходять частинні похідні: ---------, у = І. я ; —--, і = І. т ; дхІ сЛ, Розв’язують систему рівнянь: 5Л(х,Л) п . — ——-—- = 0, і = 1,п ; йг, (5 2.16) А) = л = 0 /=[7 і відшукують точки хя які задовольняють систему (5.2.16). 4. Знайдені розв’язки х° далі досліджують на максимум (або мі- німум). Приклад 5.5. Існують два способи виробництва деякого продук- ту. Позначимо через »•,.»2 кількість продукту, що вироблено першим і другим способом відповідно. Витрати виробництва Н при кожному способі залежить від обсягів виробництва так: ) = «и + я2у,г. а„.а, ,а, >0, Нг(Уі) = Ь„ + Ь,у, У- Ь2у22, ЬВ.Ь,,Ь2 > 0 Нехай за деякий проміжок часу треба виробити рівно с одиниць продукції (тобто ,г| + у2=с), розподіливши її між двома способами таким чином, щоб мінімізувати загальні витрати. Побудуємо функцію Лагранжа для цієї задачі: Ц.Ії ,У1.Л) - "о + °1>'і + + + *1’’2 + - V) - 1’2 > звідки: 5/. -> , „ ---= + 2а 2 р| - Я = 0 , я, —=Ьі+1Ь-,Уг Л = 0. 5.1'2 5/. А — = с - і’, - = 0 5Й 212 Розв’язавши цю систему, знайдемо оптимальні обсяги виробни- цтва , у?: о Ь| - °і — ———“ с' + ’ і О-) + + ^2 ) о а2 _ у‘і —-----с----------------. аг+Ь2 2(аг+Ь2) 314
Дос пдження операцій 5.3. ЗАДАЧА НЕЛІНІЙНОГО ПРОГРАМУВАННЯ ПРИ ОБМЕЖЕННЯХ НЕРІВНОСТЯХ Теорема Куна-Таккера. Розглянемо випадок задачі із обмежен- нями-нерівностями вигляду. мінімізувати _/(х), (5.3.1) при обмеженнях: (х) < 0, і = Ці» (5 3 2) У точці мінімуму х*нерівності £,(х) можуть виконуватись як рів- ності або строгі нерівності. Обмеження &,(х)зветься активним у точці х', якщо воно викону- ється в ній як строга рівність, тобто якщо # (х*) - 0. Використовуючи геометричні властивості допустимої області, знайдемо необхідні умови екстремуму задач мінімізації з обмежен- нями. Для цього розглянемо випадок, коли усі #,(х) лінійні. Отже, нехай потрібно знайти тіп /(х) за умови £і(х) = -і],гх + Ь1 < 0 , і-\,т. (53.3) Тут кожне обмеження (5.3.3) визначає півпростір в Я". Допусти- му область 5 задано перетином т півпросторів, які визначаються т нерівностями (5.3.3), і, отже, вона є опуклим багатогранником. Ве- ктор і), є нормаллю до гіперплощини,’що визначається рівнянням (х) = 0, і має напрям у середину області 5. Нехай точка х‘є точкою мінімуму задачі (5.3.1) з обмеженнями (5.3.3). Позначимо множину індексів активних обмежень через 1 = {/:#,(х’) = о} (5.3.4) Наприклад, на рис. 5.9 наведено приклад мінімізації з лінійними обмеженнями при п - 2, т = 3,1 = {1,3 }. Виберемо будь-яку допусти- му точку х із 5 . Вектор х-х'спрямований із х’у середину області 5. Такий вектор називатимемо вхідним. Для цього вектора з ураху- ванням того, що т), =-^Дх’), можна записати таку умову: і) (х х‘)>0, 14* 315
Зайченко Ю.П. або 5?#(г(х-х*)<0, (5.3.5) для всіх і є І та х є 5. Таким чином, вхідний вектор х визначає допустимий напрям пе- реміщення із точки х*. Проте оскільки /(х) мінімальна в точці х’, то при будь-якому х - х*, що задовольняє (5 3.5), матимемо: 7/т(х*)(х-х*)>0Лхє5. (5 3.6) Застосуємо тепер теорему, яка є наслідком леми Фаркаша (див. додаток 1). Із умов (5.3.5), (5.3.6) на підставі леми Фаркаша випли- ває, що існує множина невід’ємних скалярів {?. }> 0, для яких 57Г(х’) = ^Ап,(х) = -^А^,(х’). (5.3.9) 316
Дослідження операцій Зауважимо, що рівняння (5.3.9) аналогічне (5.2.15). Якщо прий- няти, що 2, =0 при у й/ (тобто для неактивних обмежень), (5.3.7) можна записати у вигляді: НІ III У/(*’) = £АпДМ = -£А^.(* )• (5.3.10) »=| /=1 Крім того, одержимо, що т £л,£,(х*) = 0 (5.3.11) /=| оскільки при / є/ £,(х’) = 0, а при уе7 2, = 0. Тому рівняння об- межень можна включити до цільової функції таким чином: III <р(\ )= Дх')+£Аг/(х’)- (5.3.12) 1=1 Отже, х* задовольняє таким умовам: т У^(х*) = У/(х’) + (х*) = 0, (5.3.13) »=| X АвЛх*) = о»А — о, 'і = 1,пі. (5.3.14) <=| При розгляді задачі мінімізації /(х) за умов §,(х)<0 може тра- питися так, що не існуватиме таких А, > 0, і = 1,т, для яких без дода- ткових припущень щодо характеру функцій були б справедливі рів- няння (5.3.13), (5.3.14), де х’ - оптимальний розв’язок. Ці додаткові припущення називають умовами регулярності обмежень. Зокрема, в розглянутому випадку як такі умови використано лінійну незалеж- ність векторів-градієнтів обмежень (х‘), і = 1,/и . Теорема Куна-Таккера. Вище знайдено умови оптимальності (5.3.11), (5.3.12) для задачі НП з лінійними обмеженнями. Поширимо ці умови на випадок задачі (5.3.1), (5.3.2), коли всі обмеження нелінійні. Умови оптимальності розв’язків задач НП формулюються в на- ступній теоремі, яка відіграє винятково важливу роль у теорії нелі- нійного програмування [2; 18]. Теорема 5,8 (Куна-Таккера). Нехай функції #,(х),і = \,т , ма- ють неперервні частинні похідні на деякій відкритій множині К", 142 317
Зайченко Ю.П. яка містить точку х’ Якщо х‘ с точкою мінімуму функції /(х) при обмеженнях £,(х) < 0, і = \,т. що задовольняють умові регулярності у вигляді лінійної не залежності векторів ^Дх*), то існують такі невід'ємні множники Лагранжа Л.,Л,,...,Я„, що ЛІ ?/(х‘) + £Я,?£,(х') = 0; (5.3.15) 1=1 І2Я/^І(х') = 0,Я, >0,/ = 1,пі І=1 (5.3.16) Визначимо функцію Лагранжа таким чином' т £(х,А) = /(х)+£я,о,(х) і-1 (5.3.17) Тоді теорему Куна-Таккера можна записати у вигляді: V». Т(х,Л) = 0, (5.3.18) ?я/.(х,Л) = £(х)<0, (5.3.19) /Дх,А)=£Я,£,(х) = 0. і=і (5.3.20) Зауважимо, що множники Лагранжа Я, в задачі НП з обмеження- ми-рівностями є знакозмінними, тоді як в теоремі Куна-Таккера вони мають бути додатними Доведення. При досить малих і>0, розклавши /(х'+ге) в ряд Тейлора, одержимо' Дх’ +») = /(х*) + Л7/т(х*)г + о(/2), (5.3.21) де о(г2)- залишковий член другого порядку малості (г) Нехай / - множина активних обмежень. Тоді 5,(х‘ + іг) = (х*)+ /V#2 (х* )г + о(і ) = іУ°г, (х’ )г + о(г), 318
Дослідження операцій бо £,(х*) = 0 для /є/(/- множина активних обмежень). Зауважимо, що система нерівностей ^7/'г(х’)г<0. (х’)г<0. (5.3.22) (5.3.23) несумісна, бо в супротивному разі при досить малому і > 0 для де- якого г отримали б: /(х* +/г)</(х*), %і(х + іг) <0 ,і є З. що суперечить припущенню про оптимальність точки х’. Для даль- шого доведення скористаємось лемою, яка є наслідком леми Фарка- ша (див. додаток 1). Лема. При довільній матриці А виконується одна з двох умов: або виконується така система нерівностей: Ах<0, (5.3.24) або виконується така система рівностей (рівнянь): ’ АгА = 0; А > 0, А * 0. (5.3.25) Одночасно умови (5.3.24), (5.3.25) виконуватися не можуть. Застосуємо цю лему до (5.3.22), (5.3.23), вибравши за матрицю А ?/(х’) ^,(х’)_ і є І . Оскільки система (5.3.22), (5.3.23) не має розв’язків, то мають іс- нувати такі Ли > 0,2, > 0 Я,„ >0,що ЯпУ/-(х*) + ЕЛ,7^(х’) = 0, (5.3.26) Де о л 14** 319
Зайченко Ю.П._______________________________________________________ Якщо надамо Я, значення 0 для і і і , то одержимо Я, £,(**) = 0 »=» Умову (х’) = 0 називають умовою доповню вальної нежореткоспи. 1-і Покажемо, що Ли в (5.3.26) не може дорівнювати 0. Справді, якщо допустити, що Ло = 0, то дістанемо: £ЛУ«,(х') = 0 (5.3.27) >єТ Однак (5.3.27) суперечить умові теореми про лінійну незалеж- ність векторів У£ (х’). Лишається прийняти Ли *0. Тоді, поділивши обидві частини (5.3.26) на Ли, отримаємо МІ 7/(х’) + 2Ж(*’) = 0- >-і Отже, теорему доведено. Поняття регулярності ввели Г.Кун і А.Таккер. Воно може мати різні форми. В окремому випадку, коли /(х) і всі (х),і = 1,/и є опуклими функціями, умова регулярності записується у вигляді: іс- нує такий вектор х, що §,(х)<0 для всіх і = \,т. Це означає, що має існувати хоча б одна внутрішня точка допустимої множини роз- в’язків. Цю умову називають умовою регулярності Слеіітера [2; 3]. Сідлова точка і задача нелінійного програмування Розглянемо функцію Лагранжа Цх,А) = /(х) + ^Л&.(х) >=і Означення 5.7. Пара векторів х’,А* зветься сідловою точкою функції Лагранжа Цх,\), якщо при всіх А^СТхє/?1"' виконується умова'. Цх*,А)< Цх*,А’)< £(х,Л*) (5.3.28) Нерівність (5.3.28) називають нерівністю для сідлової точки. Очевидно, що в сідловій точці виконується умова: 320
Дослідження операцій Л(х*,Л*) = тах тіп Л(х,Л) = тіп тах Л(х,Л). (5.3.29) л>0 „я" іеЯ" Л>0 Між поняттями сідпової точки функції Лагранжа 2.(х,А) = Дх)+£Л£>(Х> * розв’язком задачі НП існує взаємозв’язок, і=і який встановлюється в такій теоремі. Теорема 5.9. Нехай /(х) та всі &,(х) опуклі і функції £,(х) задово- льняють умову регулярності Слейтера. Вектор х’ с розв'язком за- дачі НП (5.3.1), (5.3.2) тоді і тільки тоді, коли існує такий вектор А* > 0. що Л(х*,Л)< Л(х*,Л*) <£(х,Л*) (5.3.30) і Л‘Т£(х*) = 2Х#,(х') = 0. (5.3.31) і-і Доведення. Спочатку доведемо достатність умов теореми. Нехай (х’,Л’)-сідлова точка функції £(х,Л). Тоді із правої нерівно- сті (5.3.30) отримаємо: І(х*,Л*) = /(х*)+^Л'оі(х*)<Л(х,Л*) = /(х)^£Я’о.(х). (5.3.32) / . І ] ПІ Оскільки Л*>0, а £,(х)<0, то У^.Д^Хх) < 0. Водночас /=і ЕЛ*&,(х*) = 0 згідно з (5.3.31). Тому з (5.3.30) випливає нерівність: і=і /(х*) < /(х) + £ л'^(х) < /(х) і для всіх х, які задовольняють обмеження задачі НП. Таким чином, х* - оптимальний розв’язок задачі НП. Перейдемо до доведення необхідності. Припустимо, що х‘опти- мальний розв’язок задачі НП. Зазначимо, що система /(х)-./(х )<0,1 (5.3.33) й(х)^0 143 321
іиііченко Ю.П. не мас розв’язку, бо х*-точка мінімуму задачі НП. Звідси випливає також, то не мас розв’язку і така система: /(х)-.Дх )<0, (5.3.34) £(х)<0 Тоді, згідно з теоремою Фана, існують такі Я' , Л' ,..., Я’, > 0, що ^[/(х)-/(х’)]-ІЛ;?,.(х)>0 (5.3.35) І 1 Оскільки Я‘>0, ^,(х*)<О,Х//, то £я*£,(х) <0 для всіх х. (5.3.36) 1=1 Якщо ж в (5.3.35) покласти х = х‘, то ІЛ>((х’)>0. (5.3.37) >=і Порівнявши (5.3.36) з (5.3.37), дістанемо: 2»,(х*) = 0. (5.3.38) 1=1 Тоді з рівнянь (5.3.35) та (5.3.38) одержимо: % / (х’) + £ Я>, (х*) < Л'о Дх) + £ Я>( (х). (5.3.39) і=1 1=1 Таким чином доведено праву нерівність для сідлової точки. Оскі- льки £(х*)<0,то X’ £(х‘)<0 при довільному Я>0. Отже: V(х‘) + Аг#(х*) < /(х‘) + Л’г£(х’) • (5.3.40) Поділивши обидві частини (5.3.40) на Я’ >0, одержимо ліву не- рівність для сідлової точки. А 7 ..г Дх')+ — £(х ) = £(х*,А)</(х*) + —-£(х*)= £(х‘,А*) А) Ао 322
Дослідження операцій Таким чином, теорему доведено. Щоб забезпечити умову Я* > 0, потрібно припустити існування умови регулярності Слейтера. Справді, нехай Я' = 0. Тоді і вираз (5.3.39) матиме вигляд: ПІ ІН ЇХ£,(х*) = 0<ХЯ’#,(х). (5.3.41) і=і г=; Водночас умова регулярності Слейтера стверджує, що існує та- кий вектор х , що &(х) < 0, і, отже, X (х) < 0. Оскільки це супере- Г=І чить рівнянню (5.3.41), то припущення теореми разом з умовою ре- гулярності Слейтера забезпечить її справедливість. Таким чином, при виконанні умов теореми 5.9 задача НП стає еквівалентною задачі відшукання сідлової точки функції Лагранжа. Застосування теореми Куна-Таккера для задачі опуклого програмування Вище розглянуто задачу НП у вигляді (5.3.1), (5.3.2), коли на змінні хі не накладено умову невід’ємності. Проте часто в задачах досліджен- ня операцій доводиться розв’язувати задачі, в яких змінні х(. за фізич- ними умовами мають задовольняти умову хІ > 0 для всіх у = 1,и . Покажемо, як основні положення викладеної теорії можна поши- рити і на цей випадок. Дійсно, нехай задача НП має вигляд: мінімізувати /(х), (5.3.42) при обмеженнях: ^,(х)<0, / = 1,т; (5.3.43) ху>0, і= ї?й. (5.3.44) Введемо позначення: х; =-Л/(х). Тоді обмеження (5.3.44) можна записати в загальному вигляді: Л,(х)<0, у=Гй (5.3.45) 14»** 323
Зайченко Ю.П. Тепер задачу задано у канонічному вигляді (5.3.1), (5.3.2). засто- суємо до неї теорему Куна-Таккера, для чого складемо функції Лаг- ранжа: 7.(х,Л.и) = /(х) + £Л1^|(х) + £иуЛ/(х), >=і /=і (5.3.46) де и, >0- множники, зв’язані з обмеженнями Л,(х)<0. Умови тео- реми Куна-Таккера для (5.3.46) мають такий вигляд: УТ(х,Л,и) = У/(х) + ХЛ,У£,(х) + £н,УЛ;(х) = 0, >=і /=і або й£(х,Л,и) й/(х) . ™ Й£,(х) — ---------= ——---------------«,=0; _/ = !,«. дх мі дх (5.3.47) йх, иіхІ = 0,и7 >0 , (5.3.48) Ая,(х) = 0,Д >0. (5.3.49) Умови (5.3.47), (5.3.48), (5.3.49) можна записати в такій еквівале- нтній формі: ЙЦх,Л)=^(х) + ^л ^00 =м о, (5.3.50) йх, ~і дх і 7 ЙТ(х,Л) „ . ;— —-—-х =0,у = 1,и. (5.3.51) йх, Неважко побачити, що (5.3.51) являють собою умови доповнюва- льної нежорсткості для обмежень невід’ємності. Таким чином, знайдемо необхідні умови для оптимального розв’язку задачі НП вигляду (5.3.42)-(5.3.44), які можна сформулю- вати у вигляді такої теореми [18]. Теорема 5.10. Нехай задачу НП задано у вигляді (5 3 42)-(5.3.44), а функції /(х) та ^,(х), ^;(х),...,^„,(х) диференційоваї та опуклі (по х). Вектор х° >0 є оптимальним розв'язком задачі НП тоді і тільки 324
Дослідження операцій тоді, коли існує такий вектор Л" > 0, іцо пара (х0, Л ”) є сідловою точкою функції Лагранжа, тобто виконуються такі умови: ацх",л") . — йх( аЦх°,Лп) 0 . — ----------х = О,у = 1,л; (5.3.33) йяг ^х\Л_В2 = (х >) < о, / = ; (5.3.54) сЛ ацх° л°) ло = Єі(х0)ЛО = 0.- = (5.з.55) сЯ, Задача (5.3.42)-(5.3.44) за умов, що всі /(х), #,(х) - опуклі функ- ції, є задачею опуклого програмування. Обмеження (х) < 0, і - 1,/л , визначають опуклу множину і потрібно знайти мінімум опуклої функції /(х) на опуклій множині розв’язків /?(х) = {х :#,(х) < 0. і'• = 1,/м, х > 0 }. Розглянемо задачу вгнутого програмування: максимізувати ; а»), (5.3.56) при обмеженнях: ?](х)>0, ?2(х)>0. (5.3.57) £,„(х)^0, х>0, (5.3.58) де /(х) і всі функції &,(х) вгнуті по х . Покажемо її еквівалентність задачі опуклого програмування (5.3.42Н5.3.44). Для цього позначимо / (х) = -/(х), ^,(х) = -^,(х), і оскільки тах/~ тіп-Дх), то приходимо до задачі: мінімізувати / (х), (5.3.59) 325
Зайченко Ю.П. при обмеженнях- о,(х)<0,/ = Г^; (5.3.60) х>0 (5.3.61) Легко побачити, що всі функції / (х), °,(х) опуклі по х, а тому задача (5.3 59)-(5 3.61) - це задача опуклого програмування. Отже, еквівалентність задач (5.3.56)—(5.3.58) і (5.3.42>-(5.3.44) встановлено. Неважко отримати відповідні ознаки оптимальності для задачі (5.3.56)-(5.3.58), аналогічні умовам (5.3.52)-(5 3 55). Теорема 5.11. Нехай задачу НП задано у вигляді (5.3.56)-(5.3.58), а функції /(х), £,(х), /= 1,т - диференційовні. Длзигюго щоб вектор х“ був оптимальним, розв'язком цієї задачі, необхідно, щоб існував такий вектор А" > 0, для якого виконувалися б такі умови: б) ацх“,л°) . — - Хі = 0, у = 1,п; дх, (5.3.63) В) дЦх°,Лп) „ —Цт—- = ^Дх°)>0,і = 1,т; ол, (5.3.64) г) дЦ\ ,Л ) 0 о -о . - Ч = £,(х )Л -0,1-1,ти. сл, (5.3.65) Якщо функції <(х), &,(х) вгнуті, то умови (5.3.62)-(5.3.65) є вод- ночас й достатніми. 326
Досіідження операцій 5.4. ДВОЇСТІСТЬ В ЗАДАЧАХ ОПТИМІЗАЦІЇ Задача лінійного програмування як задача Лагранжа Використання поняття сідлової точки дас змогу встановити взаємо- зв’язки між прямою та двоїстою задачами в математичному програму- ванні. Перш ніж розглянути загальний випадок нелінійного програму- вання, дослідимо ці взаємозв’язки для лінійного програмування. Нехай маємо пару двоїстих задач ЛП у вигляді: Задача 1 тіп Ьтх; Ах>с; х>0 (54.1) (5.4.2) Задача 2 тахсту; Д'у < Ь, у>0 (5.4.3) (5 4.4) Для зручності запишемо обмеження задачі у виглядг д(х)=с-Ах<0 З метою дослідження зв’язку прямої та двоїстої задач введемо функції Лагранжа. Створимо функцію Лагранжа для задачі 1: #>(х,А) = Ьтх + Ат(с—Ах), А>0 (5.4.5) Оскільки обмеження лінійні, то виконуються умови регулярності теореми Куна-Таккера. Отже, умови доповнювальної нежорсткості запишуться так: д£(с-Ахо) = О, хо>0. А0>0. (5.4.6) Утворимо функцію Лагранжа для задачі 2, перетворивши її спо- чатку в еквівалентну задачу мінімізації (тіп-сту). Для цього введе- мо множники Лагранжа р = [д, ], і = 1, т . </(у>Р) = сту+р'(А7у- Ь), р>0 Умови регулярності знову, як і в задачі І, виконуються, і тому маємо: МІ (А у0 -Ь) = 0. р„ >0, у, >0. (5-4.7) 327
Зсіііченко Ю.П Зауважимо, що якщо взяти А - у, р = х , то <р(х,у) = х) Та- ким чином, якщо змінні у трактувати як множники Лагранжа в задачі 1, а х - як множники Лагранжа в’задачі 2, то цільові функції обох задач будуть рівні за величиною і протилежні за знаком. Використовуючи функцію Лагранжа <р(х,у), можна показати, що задачу 1 можна записати у вигляді: пііп[^>(х,у)-у «?(х,у)], 5.4.8) при обмеженнях: V, <о(х,у) = с Ах < 0. > у > 0. Аналогічно задачу 2 можна записати так: тіп[<(/(у,х)-хг^\у/(у,х)] (.4.9) при обмеженнях: ^ИУ.х) = (Агу-Ь)<0, у>0. Скориставшись співвідношенням <о(х,у) =-у/(у,х), одержимо для задачі 2: тіп - <г>(х,у) + х V ®(х,у) - тах #>(х,у) - хг\7 о(х,у) ’ (5-4.11) х>0 * у>0 1 -1 при обмеженнях . V ,#>(х,у) > 0. х > 0. (5.4.12) Використовуючи співвідношення (5.4.8}-(5.4.12), ми одержимо таке представлення пари двоїстих задач за допомогою функції Лаг- ранжа <р(х,у)\ Задача 1 тіп р(х,у)-у'^і^(х,у)] при обмеженнях V , <о(х,у) < 0, у>0 (5.4 13) (5 4 14) Задача 2 тах «?(х,у)-х7^ р(х,у)| у>0 1 при обмеженнях V ,^(х,у) > 0, х>0 (5.4.15) (54 16) 328
Дослідження операцій При цьому для оптимальних розв’язків (х0,у0) виконуються умови, аналогічні (5 4.6), (5.4.7): У»^1<г>(х„,у,) = О ;х„\7 <о(х„,у„) = 0. (5.4.17) Справедлива така теорема, що встановлює зв’язок між оптималь- ними розв’язками двоїстих задач ЛП і сідловою точкою [18]. Теорема 5.12. Вектор хає оптимальним розв 'язком ЛП-задачі І тоді і тільки тоді, коли існує такий вектор у0, що пара (х„,уи) є сідловою точкою функції Лагранжа <о(х,у) , тобто для всіх х > 0, у > 0: р(хо,у)<(о(хо,у())<р(х,у|1). (5.4.18) Доведення Доведемо спочатку достатність умов теореми. Нехай (х0,у„)- сідлова точка, тоді ліва нерівність (5.4.18) викону- ється при всіх у > 0 і, зокрема, при у = 0 . Однак, оскільки с Ах0 < 0, то ліва нерівність: 0>(х„,у = 0) = Ьтх„ <(о(х„,у1)) = Ьтх„ -у^(с-Ах„) (5.4.19) можлива тільки в тому випадку, коли Уо(с-Ах„) = 0. Враховуючи це, із правої нерівності (5.4.18) одержимо: ЬТх„ +Уо(с Ах0) = Ьтх0 < Ьт х+у „(с —Ах) < Ьтх . Таким чином, для всіх допустимих х > 0 справедливе Ьтх„ < Ь1 х , що доводить оптимальність вектора х„. Доведемо тепер необхідність умов теореми, тобто те, що з опти- мальності вектора х0випливає існування такого вектора у0, що пара (х0,у0) є сідловою точкою функції 0>(Х,у). Згідно з теоремою 2.5 розд. 2 із оптимальності х0випливає існу- вання такого у о, що Ьтх„ =сту„, де у0- оптимальний розв’язок дво- їстої задачі. Тоді згідно з теоремою 2.6 розд. 2 має виконуватися рів- ність уТ(с Ахп) = 0. Проте, оскільки хп- допустимий розв’язок, то (с - Ах0) < 0, звідки для будь-якого у > 0 ут(с Ахо)<0 329
Зайченко Ю.П Таким чином, справедлива нерівність: Ьтх0+ут(с Ахп) = <р(х„,у)<Ь,хІ1+у^(с Ахи) = ^(х„,у„) (5.4.20) Отже, ліву нерівність (5.4.18) для сідлової точки встановлено Аналогічно можна довести і праву нерівність. Теорему доведено. Таким чином, на підставі теореми 5.12 доходимо висновку, що відшукання розв’язків для пари двоїстих задач ЛП еквівалентне від- шуканню сідлової точки відповідної функції Лагранжа. Покажемо, що цей висновок справедливий і для деяких класів за- дач НП. Задача нелінійного програмування як задача про сідлову точку Вище одержані співвідношення (5.4.13)—<5.4.16), що зв’язують пару двоїстих задач ЛП. Розглянемо тепер задачу НП у вигляді: мінімізувати /(х), (5 4.21) при обмеженнях: &,(х)<0, і = 1.т (5.4.22) Ввівши функцію Лагранжа ^(х,у) = /'(х) + £ г,£, (х), можна зали- і сати цю задачу в еквівалентному вигляді: мінімізувати [#>(х,у)-у Ч\^(х,у)], х>0, (5.4.23) при обмеженнях: ^,<р(х,у)<0, у>0. (5.4.24) За аналогією з лінійним програмуванням назвемо таку задачу: максимізувати [^(х,у)-хт57і(о(х,у] , (5.4.25) при обмеженнях: ^7,(9(х,у)>0, (5.4.26) У>0, двоїстою до задачі (5.4.23), (5.4.24). 330
(5.4.27) (5.4.28) Дослідження операцій Мас місце теорема, аналогічна теоремі двоїстості ЛП. вперше до- ведена П.Вульфом [2]. Теорема 5.13. Нехай функції /(х), #,(х) < 0, і = \,т . опуклі та диференційовні в К" і виконуються умови регулярності Якщо пряма задача (5 4.21), (5.4.22) мас розв'язок х, . то в двоїстій задачі (5.4 26) існує такий вектор у„. який є її оптимальним розв’язком і при цьому екстремуми пари двоїстих задач рівні між собою. Для ілюстрації цієї теореми розглянемо задачу квадратичного програмування: максимізувати (Ьтх + хтСх), при обмеженнях. Ах < Ао, х>0, де С - симетрична, від’ємно визначена матриця. Перетворимо (5.4.27). (5.4.28) в еквівалентну задачу мінімізації і побудуємо функ- цію Лагранжа: ^(х,у) = -(Ьтх + х гСх)+ ут (Ах - Ап). (5.4.29) Вихідну задачу можна записати у такому вигляді: мінімізувати [^?(х,у)-ут\^і^(х,у)] , (5.4.30) х>0, при обмеженнях: 7,р(х,у)<0, у>0. (5.4.31) Неважко показати, що задача (5.4.30), (5.4.31) еквівалентна задачі (5.4.27), (5.4.28). За аналогією з лінійним програмуванням запишемо двоїсту зада- чу для задачі квадратичного програмування: максимізувати [^(х,у)-хт^’і^(х,у)] , (5.4.32) У >0, при обмеженнях ^\^(х,у)>0, х>0 (5.4.33) 331
Зайченко Ю.П. Підставляючи вираз для р(х,у) із (5.4.29) в (5.4.32) і (5.4.33), діс- танемо таку форму запису двоїстої задачі: тах( <у і- х’Сх) -> тіпїАЇу х'Сх), (5.4.34) за умови -2Сх + Ату Ь>0, х>0 (5 4 35) Оптимальні розв’язки х0 та у„ зв’язані між собою співвідношеннями: х^г<р(х,,уо) = О, (5.4.36) У?57.^(х,,У1,) = О (5.4.37) Використовуючи вираз (5.4.29) і підставляючи його в (5.4.36) та (5.4.37), знаходимо відповідно: х£(Ь + 2Схо-Атуо) = О, (54.38) у£(Ахо~А„) = О. (5.4 39) Покажемо, що задачі (5.4.27), (5 4.28) і (5.4 34), (5.4.35) справді є двоїстими і виконується твердження теореми про те, що тах(Ьтх + хгСх) = тіп(АІу - хтСх) (5.4.40) х>0 у>0 Оскільки х„,у0 зв’язані між собою співвідношеннями (5.4.38), (5.4.39), то маємо А р у і, у0АХу — х1)Ь + 2х0Сх1) або А о у о ~ хо Охц — х„ Ь + х0Сх0 Таким чином, встановлено справедливість співвідношення (5.4 40) і теореми 5.13 332
Дослідження операцій 5.5. КВАДРАТИЧНЕ ПРОГРАМУВАННЯ До задач квадратичного програмування належить спеціальний клас задач НП, в яких цільова функція /(х) квадратична та вгнута (або опукла), а всі обмеження лінійні. Застосувавши до цієї задачі теорему Куна-Таккера, одержимо умови для оптимального розв’язку у вигляді системи лінійних рів- нянь, розв’язати які можна симплекс-методом. У матричному вигляді ця задача записується так: максимізувати /(х) = Ьтх + -^хтСх = '^Ь)х] + -^££с,/х.х( . 2 /=і 2 і і при обмеженнях: Ах< А„ , х>0, (5.5.1) (5.5.2) У = 1,л - симетрична від’ємно визначена Де С = ||сА/||’ ' = 1,01, у = 1, п; Ао = «10 «20 _ат0 Зазначимо, що коли С- від’ємно визначена матриця, то квадра- тична форма хтСх вгнута (опукла догори) Отже, задача (5.5.1), (5.5.2) є задачею вгнутого програмування. Наведемо приклади квадратичних функцій: /(х,, .г,) - 5х, + 2х, - 4х2 - х2 ; /\х,,х2,х2) = х,х, + 2х,х3 - Зх,2 -2х2 -4х3 . Припустимо, що /(х) строго вгнута. Застосувавши до задачі (5.5.1 )-(5.5.2) теорему Куна Гаккера, одержимо необхідні та достатні умови оптимальності у вигляді теореми [18; 23]. 333
іайченко Ю.П. Теорема 5.14. Вектор х„>0 є оптимальним розв’язком задачі квадратичного програмування тоді і тільки тоді, ко ні існують такі т-вимірні вектори X > 0, XV > 0 і п -вимірний векпюр V > 0, що вико- нуються такі умови: 1) Ь-Сх АтЛ+¥=0; 2) А„-Ах-Х¥ = 0: 3) Утх = 0; 4) Х¥ТЛ=О Зазначимо, що умови І), 2) утворюють стосовно змінних х, А, V, XV систему (я + т) рівнянь з 2(я + т) невідомими Доведення. Утворимо функцію Лагранжа для задачі (5.5.1) £(х,Л) = Ьтх + ухтСх+ЛТ(АО -Ах) (5 5.3) Зауважимо, що УДЬтх) = [-^р^| =Ь, (5 54) дх У,(хтСх)=2Сх. (5.5.5) Застосувавши теорему Куна-Таккера до функції (5 5 3) і скорис- тавшись виразами (5.5.4), (5.5.5), одержимо- а) V ,/.(х, А)-Ь + Сх-А1А < 0, причому, якщо йЦхЛ) < о го л" = 0 і = їй йг, б)УлЦх,Л) = Ао - Ах > 0, причому, якщо дЦх,Л) > то = 0 ЙД Введемо два допоміжні вектори: Уг =[у1,і>2,...,ун]> > о. XV Г = [и’|, И'2,. .. и„,]> 0 . При цьому виберемо V' > 0, ЯКЩО й£(х, А) йЦх,Л) л А <0 і в =0, якщо = 0 Аналогічно виберемо и> > 0 , йл-----------------------дх 334
Дослідження операцій с’£.(х,Л) „ . дЦх,/\) л п якшо -------> 0 і м’, = 0 , якщо --= 0. Додавши вектор V до дЛ, умови а) та віднявши XX від б), отримаємо рівності 1) Ь т Сх-А1 А + V = 0; 2) Аи-Ах-¥У = 0 (5 5.6) Порівнявши компоненти векторів X і V, а також А і XV, одер- жимо дві умови доповняльної нежорсткості 3) ХтУ = 0; 4) Лг\¥ = 0 Отже, теорему доведено. Із умов 3). 4) випливає, що принаймні п змінних із X, V та т змінних серед А, XV дорівнюють нулю. Як вже зазначалося, система (5.5.6) складається із (т + п) рівнянь з 2(т + п) невідомими. Отже, якщо існує оптимальний розв’язок за- дачі (5.5.1), то він має бути одним з базисних розв’язків (5.5.6). Оскі- льки для знаходження допустимого базисного розв’язку можна за- стосувати симплекс-метод Данціга, то цей метод (як і інші методи ЛП) придатний для розв’язання задач квадратичного програмування. Запишемо (5.5.6) у вигляді: Сх-АТА + У = Ь, Ах 4 XV = Ао. (5 5.7) Для відшукання початкового базису системи (5.5.7) застосуємо метод штучних змінних. Введемо штучні змінні 2 = { г,,22,...,г„} і V = { V), г2, .., ут}. Матимемо таку систему: Сх АтА + У + 2 = -Ь, Ах + ХУ + ¥ = Ао. (5.5.8) При цьому знаки перед компонентами векторів 2, V вибираємо однаковими із знаками відповідних компонентів вільних членів - Ь та Ао. 335
Зайченко Ю.П. Побудувавши псевдоцільову функцію 2, = £Л/г виводи- 1-І мо з базису штучні змінні {»-,}, {г ) і вводимо X, Л, V, \¥ При цьому слід враховувати умови доповняльної нежорсткості ХТУ = О; Лт\¥ = 0. Якщо вдається вивести з базису всі штучні змінні і при цьому за- довольняються умови 3), 4) теореми 5 14, то знайдений базисний розв’язок є оптимальним. Приклад 5.6. Розв’язати таку задачу: максимізувати /(х,.х,) = тах(32Х| +І20л, 4 л,2 15x3), (1) при обмеженнях: 2г, + 5х2<20. 2х,-х2=8, .Г| > 0, лг2 > 0. 20-2^ -5л2>0, -> 8-2г1+х2=0. хі > 0, х2 > (2) Оскільки /,, = ' Ц— = -8 < 0, ?г,- /н /13 — -8 0 >0 /з. /12 0 -ЗО то /їх,.»,) угнута, і ця задача є задачею квадратичного програмування. Побудуємо функцію Лагранжа ш,,х2,л,.л2)=(32х, + ігох,-4х,2-і5л2і + и.(20-2х,-5х2)+л2(8-2х,+х,) Застосувавши теорему Куна-Таккера, одержимо такі умови для оптимального розв’язку: я/ -32-81, 2^-2/1, <0, Й.Г) ді — 120 - ЗОх, - 52, + Л, £ 0, 5л, 20-2л.-5л?>0, — = 8-2х, ►х, = 0. (3) та умови доповняльної не жорсткості: ^х,=0; ТГЛ'=0 (4) ?х Лг» і/ 336
Дос чідження операцій Увівши в систему (3) вільні змінні гі,г2.И| дістанемо таку систему: 32-8х,-22,-22,4-у,=0. 120-ЗОх,-52, + 2,+ г, =0. (5) 20 - 2х, - 5х, - щ = О, 8 - 2х, + хг = 0. та умови доповняльної нежорсткості: X] V, =0; х2 у2 = 0, 2, и'| - 0. (6) Друге обмеження в умовах (2) виконується як строга рівність, тому немає обмеження на знак змінної л2. Проте, оскільки симп- лекс-метод дає змогу знаходити лише невід’ємні базисні розв’язки, то зробимо заміну змінних: 2, =23-24; л3>& 24>о. Запишемо сис- тему (5) в еквівалентному вигляді: 8.Т] + 2Л| + 2Я^ — 2/1^ - — 32, 30 із + 5Л| — + — \?2 = 120, 2.Г, + 5х2 + И] = 20, 2Х| -х2 = 8. (7) Необхідно знайти ДБР системи (7), що задовольняє всі умови (6). Для цього застосуємо метод штучних змінних. Введемо штучні змінні і'і.>2,»'з в перше, друге та четверте обмеження. В результаті отримаємо таку задачу ЛП; мінімізувати М(у, + у2 + у,), при обмеженнях: 8х, + 22, 4- 22, - 1Л4 - у, + уг = 32, ЗОх, 4-52, - 2, + Л4 - у, +уу = 120, 2х, 4-5х, +4У| =20, 2х, - х2 4- у, = 8. (8) (9) Розв’язуємо задачу (8), (9) симплекс-методом при додатковому обмеженні (6) на вибір базису. Результати послідовних ітерацій наведено в табл. 5.1-5.5. Після четвертої ітерації одержимо оптимальний розв’зок, що задовольняє умовам доповняльної нежорсткості: х“=5; 4? = 2; 2?=-^; А«=Л?-2“=-^; шах/ = 240 15' 337
Зайченко Ю.П. Таблиця 5 1 0 0 0 0 0 0 0 0 0 м м м Вх 40 -Ч А? А Аз А, ч ь *1 Зі 3’2 ’з 0 и; 20 2 5 0 0 0 0 0 1 0 0 0 м ч 8 2 -1 0 0 0 0 0 0 1 0 0 м У2 32 8 0 2 2 -2 -1 0 0 0 1 0 м Уз 120 0 5 -1 1 0 -1 0 0 0 1 Д 160М 10М 29М 7М М -М -м -м 0 0 0 0 Таблиця 5.2 \ С> С! \ 0 0 0 0 0 0 0 0 0 м м Вх л0 •Ч Х2 *з А, Ч И1 ч 3’2 0 «і 0 В 0 -5/6 1/6 -1/6 0 1/6 1 0 0 м Зі 12 2 0 1/6 -1/30 1/30 0 -1/30 0 1 0 м у2 32 8 0 2 2 -2 -1 0 0 0 1 0 -т2 4 0 1 1/6 -1/30 1/30 0 -1/30 0 0 0 Д 44М 10М 0 2-М 6 29 1—М ЗО 29 -1—М ЗО -м м 'зо 0 0 0 338
Дослідження операцій Таблиця 5.3 с' X 0 0 0 0 0 0 0 0 0 М м Вх -*! х2 л Я3 Л, 'і *2 М’і Г; У? 0 ті 0 1 0 -5/12 1/2 -1/2 0 1/12 1/2 0 0 м 'ї 12 0 0 1 -1/5 1/5 0 -1/5 -1 1 0 м 1'2 32 0 0 [Їб7з] 4/3 -4/3 -1 -2/3 -4 0 1 0 Г2 4 о 1 і/б -1/30 1/30 0 -1/30 0 0 0 д 44М 0 0 19М/3 17М/5 -17М/5 -м -13М/15 -5М 0 0 Таблиця 5.4 с. 'Х. 0 0 0 0 0 0 0 0 0 М Вх Ао -VI -г2 л ь ч »2 ‘«і >'і 0 <1 5/2 1 0 0 3/16 -3/16 -5/64 1/32 3/16 0 м ч 6 0 0 0 -9/20 |9/20| 3/16 -3/40 -1/4 1 0 6 0 0 1 1/4 -1/4 -3/16 -1/8 -3/4 0 0 *2 3 0 1 0 -3/40 3/40 1/32 -1/80 1/9 0 Д 6М 0 0 0 -9М/20 9М/20 ЗМ/16 -ЗМ/40 М/4 0 15* 339
Заііченко Ю.П. Таблиця 5.5 \ С7 С, \ 0 0 0 0 0 0 0 0 0 Вх *| г2 >11 А Г| »’2 иї 0 Х| 5 1 0 0 0 0 0 0 1/12 0 40/3 0 0 0 -1 1 5/12 1/6 -5/9 0 Л, 28/3 0 0 1 0 0 1/12 -1/6 -8/9 0 2 0 1 0 0 0 0 0 0 А 0 0 0 0 0 0 0 0 0 Розглянемо тепер метод перебору для знаходження рішення сис- теми нерівностей (3) і умов доповнювальної нежорсткості (4). При цьому отримане рішення має задовольняти таким умовам не- від’ємності. х >0,х, >0,Я, >0 Метод перебору полягає в розгляді різних варіантів умов: х, *0,х, = 0;х, *0,х, =0Д *0,2, =0 і вирішенні при них систем (3) і (4). 1 варіант: Г| 0;х2 * 0;^ * 0. Тоді - ^ = 32-8х, -2Я,-2Л,=0, — = 120-30х2-5Я,+Д =0; дх7 — = 20-2х. -5х, =0; ал, ' 2 - ^- = 8-2х. +х, =0. ая, 1 2 340
Дослідження операцій Вирішуємо спочатку нижню систему: [20 -2х, -5х2 =0; |8 - 2л, + х. = 0. і знаходимо х, = 5;х,= 2. Підставляємо їх у верхню систему, і одержимо систему: Ґ 8-2Л, -22, =0; [60 - 5Л, + Л. = 0 Вирішуємо її і знаходимо 122 =112 2 = —, звідки 2= -— ' 1 З З Так як умова незвід’ємності для змінних х,,х,,2, виконується, то знайдене рішення є шуканим. 5.6. ГЕОМЕТРИЧНЕ ПРОГРАМУВАННЯ Постановка задачі геометричного програмування та її основні властивості Досить широкий і цікавий з практичної точки зору клас задач НП складають задачі геометричного програмування (ГП). Наведемо при- клад такої задачі. Нехай потрібно переправити через річку 400 м3 гравію. Припусти- мо, що гравій вантажиться у відкритий ящик завдовжки /,, завширшки /2 та заввишки /3. Бічні сторони і дно ящика виготовлено з матеріалу, 1 м2 якого коштує 10 умовних грошових одиниць (умовн.грощ.од.), а передня та задня стінки із матеріалу, який коштує 20 таких одиниць за 1 м2. Кожне перевезення ящика будь-яких розмірів з одного берега на інший і назад коштує 0,1 умов грош.од., причому після його викорис- тання ящик не буде мати залишкової вартості. Необхідно знайти такі розміри ящика /|, іг, /3, за яких сумарна вартість перевезення 400 м3 гравію, включаючи вартість самого ящика, мінімальна. 152 341
Уііиченм) Ю П При лінійних розмірах ящика /,, іг, ц число перевезень, які по- С- ~ ЛГ1Г1 з 400 трібно виконати, щоо перевезти 400 м гравію, становить ----------, а Ч'2'з . , 400 40 „ вартість всіх перевезень 0,1------=----- Загальна вартість матеріа Мг'з лу становить 40/,/3 + 20/,/, + 10//,. Огже, сумарна вартість перевезень з урахуванням вартості матеріалу дорівнює 40 £(ї) — --~ З 40^2^3 + 20/|/з + ІО/]/2 'і'з'з Зауважимо, що функція »(1) складається в розглядуваному при- кладі з доданків «/,(*) вигляду и,(і) = с,/"7" /“", Де с, > 0. /, > 0, у = І,т . Означення Функції вигляду ц(і) = і'';", де с, > 0, /, > 0, у = І,/я , звуться позиномами. Для дослідження задачі мінімізації позиномів скористаємося не- рівністю про середнє арифметичне та геометричне, яка зветься гео- метричною (звідси і назва відповідного класу методів). Для л змінних к, > 0 вона має такий вигляд: 1 » - 1 >м,"м" • м» - (5.6.1) /і > і причому рівність в (5.6.1) буде в тому випадку, коли и =иг = ... = ип Більш загальним випадком є геометрична нерівність для середньо- зважених арифметичного та геометричного: £ <5, и, , (5.6 2) /-1 /=1 де всі ваги <5- > 0 і виконується умова нормалізації = к Г=1 13 12 Зокрема, при „ = 2 £ =1 § =— одержимо —н,+—и, > и}* и*. ’ ' 4’ 2 4 4 4 " Доведення нерівності (5.6.2) наведено в додатку 3. Цю геометричну нерівність можна використати для знаходження мінімуму позинома £(Ц . 342
Дослідження операиій Приклад 5.8. Нехай ^(/1.м=4г| + -21 Щоб знайти нижню оцін- ку ДЛЯ ^(7) використасмо геометричну нерівність при г>, = -; =— <1 1 4 4 1 1 І - • 7 —и +— ч—и-і >иг иі и*г . 4 4 2 2 ' 2 3 Тоді К(/)>(І6/,)« рІ? Ї^-Р =8 ( Ч ) \ 'і ) Є НИЖНЬОЮ ОЦІНКОЮ ДЛЯ £(/) при /,>0. Ь>0. Бі- Таким чином, 8 льше того, 8 є точною нижньою оцінкою, оскільки Кйі =|-'2 = 7) = 8 Двоїста функція. Розглянемо загальний випадок геометричної нерівності (5.6.2) зр, + зр2 + зр, +... + з,р„ > и? и62 ... іґв- , де всі и, > 0, а ваги 8, > 0 задовольняють умову нормалізації ^8, = 1. »=| Для зручності зробимо заміну змінних в (5.6.2), поклавши и, =8р,, и2 =821)2....ип = 8„1)„ . Тоді геометрична нерівність (5.6.2) матиме вигляд: / І и. і н, и„ и, + її-. + ... + «„ > — “ ••• — , Ліва частина (5 6.3) являє собою функцію-позином й(і) Назива- тимемо її прямою функцією задачі геометричного програмування. Права частина (5 6 3) зветься переддвоїстою функцією Позначимо її через V . Тоді нерівність (5.6.3) можна записати так > Г. (5.6.4) Якщо вихідна функція = к, + и2 +... + и„— позином, причому всі Ц,(/) = , то піставляючи вираз для и, у праву частину (5.6 4), отримаємо вираз для V : 15** 343
Зайченко Ю.П. ПМ) = И -И і?'1? 1?„"\ (5.6.5) де О/=£<?,«„. 7 = ^- (5.6.6) і=і Припустимо, що можливо вибрати ваги <5, так, щоб усі показники О, дорівнювали нулю. Тоді переддвоїста функція И(6, і) не буде за- лежати від змінних , і назвемо її двоїстою функцією: (5.6.7) Із нерівності (5.6.3) випливає, що »(() має додатню точну нижню грань М Тому й(0>М>г(б). (5.6.8) Із (5.6.8) випливає, що М є оцінкою зверху для двоїстої функції для довільного вибору важелів <5,, при яких всі показники О, стають нулями. Приклад 5.9. Використаємо одержані результати, щоб розв’язати задачу, розглянуту вище’ 40 £(0 =---+ * 2ОГ|/3 +101^2 -> т|г '1'26 Для функції В(і) запишемо двоїсту функцію: де ваги б,, / = і,4 задовольняють умовам: £>| = -<5| + <5} + =0; О2 = -<5,+<?2 + ^=0; (5.6.10) =• -<5| + <?2 + <^з = 0 Умови (5.6 10) називають умовами ортогональності. Крім того, ваги 5, мають задовольняти умови нормалізації: 344
Дослідження операцій Л| + д, + + 2>д І. (5.611) Розв’язуючи систему рівнянь (5.6.10), знайдемо один єдиний розв’язок: . 2 с. 1 ... І .. І гі. = — 5-> - —, а» — д$~ — 1 5 2 5 ’ 5 5 Підставляючи ці значення в (5.6.9), дістанемо. Отже, тіпк(/’) = г(д‘)= то. Таким чином, мінімальна сумарна вар- тість перевезень дорівнює 100 умов.грош.од Максимум двоїстої функції та знаходження оптимального розв ’язку прямої задачі геом етричиого програмоваиня Доведемо, що існують додатні ваги <5,, що задовольняють.умови ортогональності, і максимум двоїстої функції г(6) дорівнює мініму- му прямої функції £(І) . Припустимо, що позином &(і) досягає мінімального значення в деякій точці (/*,/*,...,/*), всі координати якої додатні. У точці мінімуму і' похідні &(і) по кожній змінній перетворю- ються в нуль, отже, одержимо т рівнянь вигляду 0 = ^й.,-=У<^2 = £и,(Т)-аІҐ (5.6.12) 8і, ' ' ді, £ ‘ Поділивши ці рівняння (5.6.12) на £(і) * 0 і поклавши (5.6.13) ) дістанемо’ £<5,л„=0, у = 1,лг (5.6.14) 153 345
Зайченко Ю.І1. Таким чином, вектор 6" , який задасться (5 6 13), задовольняв умови ортогональнеєп крім того, він задовольняє і умови нормалі- зації Тому 8(*’ > = (8* )*' (8* )*’ •' (8* )* = П (8,* / Однак, згідно з (5.6.13) £* = и' , і тому ґ • \е' П(8*)'У' =п = Ц6‘). (5.6.15) 1=1 1=1 с>, ) Тоді із (5.6.15) випливає, що 8(1’) = *(»*) (5.6.16) Це співвідношення разом з (5.6.8) доводить, що мінімум прямої функції % дорівнює максимуму двоїстої функції в. Як випливає із (5.6.13) і (5.6.16), метод ГП дає змогу обчислити мінімальне значення позинома без попереднього визначення шуканої точки 1* У цьому методі спочатку знаходять точку (<5*,5*,...,5‘), яка мінімізує двоїсту функцію V за умов ортогональності і нормалізації Лишається визна- чити точку мінімуму (•={/'}, } = \^т Щоб знайти оптимальні зна- чення , скористаємося співвідношеннями (5.6.13). Оскільки 8(4 ) = Ц6*), то м,(4*) = в(6*) <5/, і=й. (5.6.17) Розв’язуючи систему (5.6.17), знаходимо шукані значення для невідомих’ <*={</,.../,}• Приклад 5.10. Продовжимо розгляд попереднього прикладу і покажемо, як знайти змінні .......г’ . Раніше було знайдено: <5| =у; <^з =у, <?4 =~; И<?’)=-іоо Із (5.6.17) випливає, що вектор і’ задовольняє систему: 346
Дослідження операцій />Г»(г>*)=у юо =«, 40 ''ї1'?1; 6) - — 100 =и, = 40 , 1 (5’6І8) £$г(<)'’) = — 100 =и3 = 20-/./л; <>4’(<5*) = у 100=и4 = 10 /,/2. Розв'язуючи рівняння системи (5.6.18), знаходимо шукані зна- чення змінних • , • . • । », =2; і =1. «з =-. Безпосередньою перевіркою переконуємося в тому, що при оп- тимальному значенні вектора /’ виконується рівність £(/*) = і(<>') = юо . Пряма і двоїста задачі геометричного програмування та їхні взаємозв’язки Вище розглянуто окремі постановки задачі ГП і досліджено деякі їх особливості і взаємозв’язки. В ньому розділі розглянемо загальну постановку задачі та елементи теорії геометричного програмування, а також співвідношення між прямою та двоїстою задачами ГП. За- уважимо, що в основі теорії ГП лежить узагальнена геометрична не- рівність, а також теорема Куна-Таккера для задач НП. В найбільш загальній постановці пряма задача ГП формулюється таким чином [14; 18]. Пряма задача А. Знайти мінімальне значення функції #0(і): Де при обмеженнях: /, > 0, /2 > 0, ..., >0. (5.6.19) £,(і)<1; £,(і)<1 £,(»)<!. (5.6.20) «»(*)= ...С" , А=0,1,...,р; (5.6.21) М*1 «* Ь А = 0.1,...,р; (5.6.22) 15*** 347
Зайченко Ю.П. ти - 1. іп = л() +1; = /і,_, +1,. ;лр=л (5.6.23) Всі с, > 0, і = 1 п, а показники степеня н,; - дійсні числа. Отже всі функції _ позиноми. Функція, що мінімізується, «„(і) зветься прямою функцією, обмеження (5.6.19) - умовами неви'ємносіі. а обмеження (5.6.20) - вимушеними умовами. Матриця А - мат- риця експонент Двоїста задача В Двоїста задача В, відповідно до прямої задачі А формулюється так Знайти максимальне значення функції-добутку: ’’(6> = П:-г ПАДбр16’, *=і (5.6.24) де Л*(б)= А=1,Д, їеД*] (5.6.25) при обмеженнях: <5, > 0, <5 2>0,..., <5„>0, (5.6.26) У <5 =1, е7[о] (5.6.27) =о І=1 , / = !,« (5.6.28) Функція г(6) зветься двоїстою функцією, а змінні ^,<5,,...,^,, - двоїстими змінними. Умова (5.6.27) - умова нормалізації, співвідно- шення (5.6.28)-умови ортогональності. Зіставляючи форми запису прямої (5.6.19)-(5.6.23) і двоїстої (5.6.24)-(5.6.28) задач, можна встановити такі співвідношення між ними [14; 18]. Кожному члену позиномів прямої задачі вигляду и =сіі“,Ч“12 ..ДД відповідає одна двоїста змінна 8,, і навпаки. Кожний множник ЛА(б)Л*^6^ функції с(6) визначається обмежен- нями (і) < 1 348
Дос иОження операцій Зауважимо, що цільова функція не приводить до появи такого множника, бо згідно з умовою нормалізації Ло(5) = 1 Умова нормалізації (5.6.27) - це єдина умова, за якою відрізня- ються цільова функція #п(і) і позиноми-обмеження Зв’язок між оптимальними розв’язками прямої та двоїстої задач геометричного програмування встановлюється в основній теоремі ГП [14] Теорема 5.15. Нехай пряма задача А сумісна і існує розв'язок Ґ такий, що £,((')<!, А =1,р, а також оптимальний розв'язок. Тоді справедливі такі твердження. 1. Відповідна двоїста задача сумісна і існує точка, що задоволь- няє її обмеження, в якій досягається умовний максимум двоїстої функції г(6) 2. Максимальне значення ц. ф. двоїстої задачі дорівнює мінімаль- ному значенню ц. ф. прямої задачі: тіп &0(і) = тах г(6). 3. Якщо г мінімізуюча точка прямої задачі А, то існують не- від’ємні множники Лагранжа рі, к = \,р, такі, що пара векторів (ї",р ) є сїдловою точкою функції Лагранжа прямої задачі, тобто 6(ґ,р)< £(»*,р*)< (5.6.29) для всіх довільних і) > 0, рк > 0 , де ^Р) = 5о(0+£аЬ (»)-!]• (5.6.30) »=і Крім того існує максизмізуючий вектор двоїстої задачі з ком- понентами, що визначаються зумов: 8. С’1' ^ /є./[0], &о(‘) , єу[А],а= (5.6.31) т 349
іайченко Ю.Н. де ї = і'=[^]. /=І.ш та р=р". Далї. А* (6*) = -^-. (5.6.32) £о(‘ ) 4. Якщо б‘ - максимізуюча точка двоїстої задачі В. то мінімі- зуюча точка г прямої задачі задовольняє систему рівнянь'. ' $ ЛД6*)’ ), і є ДО], /єДА], (5.6.33) де А перебігає усі додатні цілочисечьні значення, для яких ЛД6*)>0. Доведення теореми 5.15 наведено в додатку 3. Користуючись результатами цієї теореми, якщо відомий розв’язок прямої задачі і* , можна на базі співвідношень (5.6.31) ви- значити максимізуючий вектор двоїстої задачі 6’. І навпаки, якщо відомий розв’язок двоїстої задачі б", то послуговуючись співвідно- шенням (5.6.33), можна визначити оптимальний розв’язок прямої задачі Г*. Зауважимо, що система (5.6.33) після логарифмування обох час- тин кожного рівняння стає лінійною щодо 1п/, ,1п/2,...,Іпіт . Нарешті, з (5.6.32) випливає, що величини А* (6’) з точністю до сталого множ- ника збігаються з множниками Лагранжа до прямої задачі. Однією з умов теореми 5.15 є припущення про існування точки, яка задовольняє обмеженням прямої задачі і в якій досягається міні- мум функції £0(І) . Достатні умови, за яких це припущення справедливе, визначає така теорема двоїстості. Теорема 5.16. Якщо пряма А сумісна і існує точка б' з додатни- ми компонентами, що задовольняє обмеження двоїстої задачі В, то існує точка і*, що задовольняє обмеження прямої задачі, в якій фун- кція #Г1(г) досягає свого мінімуму Слід зауважити, що всі функції-позиноми иДГ) опуклі, і тому пряма задача ГП є задачею опуклого програмування. 350
Дос іідження операцій Для неї справедлива теорема Куна-Таккера, а також теорема про сідлову точку функції Лагранжа. Тому цю задачу можна розв’язувати методами, розробленими для задач опуклого проі-рамування. Однак через спеціальний вигляд функції-позиномів і\(і) для них розробле- но спеціальний значно ефективніший метод. Цей метод буде розглянуто нижче. Дослідимо деякі особливості задачі геометричної о програмуван- ня. З цією метою розглянемо позином: 8(І) = 2Ж= ...С" . (5.6.34) і і виконаємо заміну змінних, взявши: /,*=/', у = 1,/п. (5.6.35) Перетворена функція, яка має вигляд: І". ^(г) = ^С;Є' (5.6.36) І зветься додатною експоненціальною функцією. Зазначимо, що змінні г- перетвореної прямої задачі представляють множину всіх дійсних чисел, тоді як змінні початкової прямої задачі /у мають задовольняти умову невід’ємності. Отже, пряму задачу перетворили до такого вигляду. Пряма задача А. Знайти мінімум додатньої експоненціальної функції &0(г), при обмеженнях: £і(г) < 1; £2(2) 1 ;•••; йР(2) 5 1, (5.6.37) де XV, £и(г) = ’ А=О,1,...,р, (5.6.38) ./[А ] = { /и, ,/иА+1, . .,и* }, т0 = І, т, = л0 +1; пр = п. Очевидно, всі функції &*(г) - додатні експоненціальні функції. Аналіз перетвореної задачі А дає змогу виявити багато важливих властивостей прямої задачі А. Наприклад, із розгляду задачі А відра- 351
Зайченко Ю.П. зу випливає, що будь-яку пряму задачу можна сформулювати гак, що її матриця експонент А - ||а7|[ матиме рані т. Справді, задачу А можна представити в безкоординатній формі мінімізувати £с,е*' • іє.ЛО| при обмеженнях: £с,е'’ < І. к - \,р , >М*і де вектор х = [.г ,.г2....,х„] належить простору, що натягнутий на стовпці матриці А = ||«у||, х, = Хаиг, . Якщо ранг А менше ш, то всктори-стовпці магриці А лінійно залежні і серед них можна ви ц- лити базисні вектори та небазисні вектори, які лінійно залежать від базисних. Таке виділення буде, звичайно, не єдиним, але при кожному ви- діленому базисі, змінним, які не входять до базису, можна надані довільних значень, і тому їх, по суті, можна не вважати змінними, оскільки вони не впливають на мінімальне значення задачі А Таким чином, не втрачаючи загальності, можна вважати, що рані матриці А завжди дорівнює т . Якщо така матриця квадратна (тобто т = п), го її вектори-стовпці утворюють ба зис для простору Е". У такому випадку завжди існує послідовність векторів }' ,, для якої / = 1.л, <7=1,2,... (5.6.39) 7=1 Тоді із співвідношення (5.6.39) випливає, що ІітЙА(29) = 0, к =0,1,2,..., р. (5.6.40) Це означає, що задача А. сумісна і £0(г) мас мінімум, що дорівнкх 0. Крім того, зрозуміло, що задачі цього типу взагалі не мають умов- ного мінімуму. 352
Досіідження операцій Відповідна двоїста задача завжди не сумісна, оскільки єдиним розв’язком умов ортогональності є нульовий вектор, але він не задо- вольняє умову нормалізації. Отже, доходимо висновку, що будь-яку нетривіальну пряму задачу можна сформулювати так, що її матриця експонент А = ||<7і; || матиме ранг т, який дорівнює числу змінних і прямої задачі, причому т < п, де я - загальна кількість позиномів (та змінних двоїстої задачі). Ціле число (І = я - т - І зветься ступенем складності такої задачі ГП. Ступінь складності сі збігається з числом незалежних змінних, по яких максимізується двоїста цільова функція. Так, якщо <7=0, то це означає, що обмеження двоїстої задачі мають лише один розв’язок 8', і = 1,я. Якщо він задовольняє умови невід’ємності, то це і буде шуканий оптимальний розв’язок двоїстої задачі. Якщо ж сі > 0, то для знаходження оптимального розв’язку 5’ =[£*] потрібні додаткові зусилля. Однак, як ми зараз покажемо, навіть не визначаючи б', із двоїстої задачі одержати багато корисної інформації. Двоіста задача має лінійні обмеження двох типів: у формі рівнянь: £8, =1; /еУ(О| і=| та у формі нерівностей: 8 > 0, 8, > 0...... 8„ > 0. Усі розв’язки умов ортогональності утворюють підпростір прос- тору Е”, який має назву двоїстого простору. Він є ортогональним доповненням прямого простору, що явля< собою простір векторів- стовпців матриці А. Умова нормалізації визначає гіперплощину в Е", яка зветься гі- перплощиною нормалізації, а умови невід’ємності визначають пер- ший ортант простору Е", перетин двоїстого простору з гіперплощи- 353
іиііченко Ю.П. ною нормалізації та першим ортантом визначає допустиму множину розв’язків двоїстої задачі. Для задачі ГП з нульовим ступенем складнеє і і допустима двоїста область містить не більш як одну точку. Для задачі з ненульовим ступенем складності (І можна побуду- вати такі базисні вектори Ь(/), у = 0,І,.що загальний розв’язок обмежень двоїстої задачі матиме вигляд: 6 = Ь(0’-г^г/Ь('1, (5.6.41) /1 де /V ~ довільні числа, що задовольняють умови невід’ємності вигляду: ^=^О, + Х'-А(',^0. V/. (5.6.42) І=\ Вектор Ь(с|, який задовольняє умови нормалізації: £>'°’ = І (5.6.43) І=1 та ортогональності: Е а^0} = 0. у = . (5.6.44) І=1 зветься вектором нормалізації. Вектори Ь(/І, у = 1,Л утворюють базис простору розв’язків лі- нійної однорідної системи рівнянь: Ь’,=о. ___ (5.6.45) =°. 7 = *>«'• 1-І їх називають векторами базису, а змінні г, зв’язані з векторами Ь(/І - базисними (змінними). Виразимо двоїсту функцію г(^) через базисні змінні і одержимо: ’'=Пс хП<й'хПл«(г,')л‘(‘”- (5-6-46) іМ І 1=1 А=І Позначимо А, =Пс',;'', ї = 0.1,...д/ (5.6.47) 354
Дослідження операцій Тоді '’=АоПА'<Г хП<',; ХПЛ*^Л‘“’' (5-6.48) /1 і І А Зауважимо, що стала к0 має розмірність двоїстої функції у(£), а А'., і = 1,є? - безрозмірні величини. Ці сталі називають базисними, оскільки вони залежать від бази- су{//'’} 7=0,1, Таким чином, двоїсту задачу В зведемо до вигляду: максимізувати ' = *оГК ^г,хГІЛ*(НЛ“и (5.6.49) /=1 І=І *=І де <(') = б,'0’+ (5.6.50) /=| Л/(г) = Л<(0)+^г.Л/1 (5.6.51) /-І Аі=[Дс,'’(" (5.6.52) 1=1 На вектор г — [/' ] накладено умови невід'ємності вигляду <5/0 = 6/'+ £>,6; 2 0. /=ЬІ (5.6.53) Зауважимо, що єдиними обмеженнями перетвореної двоїстої за- дачі В є обмеження невід'ємності (5.6.53). Усі вектори, які задовольняють обмеження перетвореної двоїстої задачі В2, утворюють опуклу множину, оскільки вони лінійні. Якби функція г(г) була увігнутою, то для відшукання максиму- му у(г) можна було б застосувати методи вгнутого (або опуклого) програмування. Однак ця умова (вгнутість) для функції і(г) у зага- льному випадку не виконується. Разом з тим функція Іпг(г) завжди вгнута, навіть коли і(г) цієї властивості не має (доведення цього факту наведено в [14]). 5-.
Зайченко Ю.П. Оскільки логарифмічна функція є монотонно зростаючою, то г(г) і Іп г(г) мають ту саму множину максимізуючих точок. Таким чином, розв’язання перетвореної двоїстої задачі В, зво- диться до оптимізації вгнутої функції, що отримана заміною гїг) на Іп і(г) на опуклій множині допустимих розв’язків. Скористаємося цими властивостями, щоб знайти умови оптима- льності для шуканого розв’язку. Припустимо, що г - точка, в якій <5,.(г)>0, і=1,п. Логарифму- ючи г(г) і беручи похідну -1в точці г, дістанемо: а1">(Г) = дУ'(д? = 1п к -ХЬ}'1 Іп <5,.(г)+ £ //’ Іп (г) = 0. дгі г(г) ,=і *=і Отже, точка г є стаціонарною точкою функції Іп г(г) годі і тільки тоді, коли ІпА, = (г)~А(г)> 7 = (5.6.54) !>1 4-І що еквівалентно умовам: = (5.6.55) 1=1 *=| Якщо г задовольняє ці рівняння, то після нескладних перетво- рень вираз для і'(г) можна звести до вигляду * П І \ 1.(01 І \ 2 (<>> ‘Чг) = А0ГН(гГ ПА(гґ‘ • (5.6.56) г-І *=І Співвідношення (5.6.55), (5.6.56), а також той факт, що для вгну- тої функції всяка стаціонарна точка є точкою максимуму і доводять таку теорему [14]. Теорема 5.17. Якщо 6 задовольняє обмеження двоїстої задачі В і усі компоненти 6 додатні, то 6 буде максимізуючою точкою дво- їстої задачі, тоді і тільки тоді, коли С = Пг,(гГ''ІПЛ(гґ*'", / = (5.6.57) А-1 де *,=ҐК'"'- з=й- (5-6-58) 356
Дослідження операцій При цьому, якщо 6 задовольняє співвідношення (5.6.57), то Иг) = Л0П^.(гГ,,"ПА(г)>?". (5.6.59) Рівняння (5.6.57) звуться максимізуючими. Вони утворюють систему, яка складається з д нелінійних рівнянь стосовно (і базисних змінних г (у = М?) • Розв’язавши цю систему, можна визначиш максимізуючу то- чку двоїстої задачі В. Формула (5.6.59) задає максимальне значення дво- їстої цільової функції для такої максимізуючої точки. Зауважимо, що оскільки базисні константи Ау та двоїсті змінні <$;(г) входять в різні час- тини максимізуючих рівнянь, то таке розділення змінних і сталих (конс- тант) полегшує дослідження залежності оптимальних точок двоїстої за- дачі В та прямої задачі А від коефіцієнтів сі. Опис алгоритму На основі викладених вище результатів наведемо опис алгоритму геометричного програмування. Нехай задано пряму задачу ГП у вигляді (5.6.19)-(5.6.23). 1. Складемо задачу, двоїсту до початкової, (5.6.24)-(5.6.28). 2. Знаходимо розв’язки обмежень ортогональності та нормаліза- ції (5.6.27), (5.6.28) - 6’. Якщо ступінь складності задачі (1 = п-т-1 = 0, то цей розв’язок єдиний, і переходимо до кроку 3, в протилежному випадку (коли <1 > 0), до кроку 4. 3. Використовуючи значення б* = {<$/}, складаємо систему рів- нянь (5.6.33), яку розв’язуємо стосовно невідомих с* - {/*}. При цьо- му для оптимальних розв’язків у(б*) = £0(Г). 4. Якщо ступінь складності <ї>0, то знаходимо загальний рзв’язок системи рівнянь (5.6.27), (5.6.28) у вигляді: а;(г)=Л'0)+ £//''’>0, / = й, Де г - вектор довільних параметрів. 357
Зайченко Ю.П. 5. Використовуючи умови оптимальності теореми 5.17, складає мо та розв’язуємо систему нелінійних рівнянь (5.6.57) стосовно неві- домих г;, у = 1,</. Знайшовши її розв’язок і підставивши його в (5.6.53), визначимо оптимальні значення двоїстих змінних з' = 3(г‘) і, підставивши 5‘ в (5.6.59), знайдемо Оптимальне значення двоїстої цільової функції г(5*) = тах і’. 6. Переходимо до прямої задачі і, використовуючи співвідношен- ня (5.6.33), розв’язуємо систему рівнянь стосовно оптимальних зна- чень прямої задачі Гт на основі відомого оптимального розв’язку двоїстої задачі / = ї^й. Приклад 5.11. Нехай потрібно мінімізувати позином: 5о(')= 401,12 + 20126, (1) при обмеженнях: І 2 £і(') = у'Г'і22 + (2) Зазначимо, що в цій задачі число членів п = 4 , а число змінних т=з. Отже, ступінь складності і/ = л-іл-1 = 0. Таким чином, розв’язок двоїстої задачі єдиний. Двоїста задача до задачі (1), (2) записується у вигляді: максимізувати (3) І З ) \°г) ( 8. ) ( <5, ) при обмеженнях: 3} + 62 -1, <5,-8У =0, <ї, + 5-, - — - 8, - 0, - 2 8-, -8^=0. ‘ З <5, > 0. <5, > 0. г>, > 0. <54 > 0. (4) (5) Умови (4), (5) утворюють систему з чотирьох рівнянь з чотирма невідомими, яка має єдиний розв’язок: 358
Дослідження операцій (7) Знаходимо значення двоїстої функції: г(<П = 40. Використовуємо теорему 5 15 для знаходження оптимального розв’язку прямої задачі Г. Очевидно, що &ДҐ) = г(<Ґ) = 40 - Використовуючи четверте твердження теореми 5.15 і співвід- ношення (5.6.33) складаємо таку систему рівнянь: 40л/2 = 3'^(3') = -^ 40 = 20, - 201/, = 3'2г(3') = ± 40 = 20; 1 -і І 2 -і. її 5 2 <5, + Л, 5 3,| З' З 5 - 3 З, + 3, 5 Щоб розв’язати систему (7), прологарифмуємо обидві частини співвідношень (7) і одержимо систему лінійних рівнянь стосовно Іпг,. Іп/2, 1п/3. Вона має лише один розв’язок |п/( = |п/| ,, |пг, = 1п/, =0- звідки шуканий розв’язок має вигляд: ь = 1; 6=1- Можна без- посередньо переконатися в тому, що ^с(/') = 1; 1^ = 40 Приклад 5.12. Мінімізувати І 80(г)=40гГІг,3ц’+20г,ц+201,1,1,- (1) при обмеженнях: (2) Відповідна двоїста задача має такий вигляд: максимізувати Я (Я ІЯ (Я (Я т 359
Зайченко Ю.П. при обмеженнях: + О'з = 1 > -<У| + 6г + <>з -204 = 0. (4) І і 7 — О, +<?з — 2<?4 + — ї = 0 ( 2 1 3 2 ’ — <5| 4 5 2 + О3 ~ ^5 = 0 , г?,>о. г>'2>о. г,>о. б4>о. £5>о (6) Ступінь складності цієї задачі дорівнює: г/ = л-ш-1 = 5- 3-1. Розв’язуємо систему (4)-(6) методом Гауса: результати послідо- вних операцій наведено в табл. 5.6-5.11. Звідси одержуємо такий базисний розв’язок: О'і - —. Л = —. лі - —, 7ц 0. <$5=0- 2 4 4 Повний розв’язок системи рівнянь при г>4 =г має вигляд: 4 2 (7) Таблиця 5.6 0'2 О'з б. 4 1 1 1 1 -1 1 1 -2 0 -1/2 1 -2 1/2 0 -І 1 І І_д_ 0 Таблиця 5 7 <5. 0'2 О'з 6. 4 4 1 1 1 1 0 2 -2 1 0 1/2 3/2 -2 1/2 1/2 0 2 2 -1 1 Таблиця 5 8 б- г>2 & <5- Ао 1 0 0 І 1/2 0 1 1 -1 1/2 0 0 1 -3/2 1/4 0 0 0 2 -1 0 Таблиця 5.9 0'1 0, О’з 0'4 о5 4 1 0 1 1/2 | 1 1 -1 1/2 2 -3 1 1/2 । £ -1 0 1/2 і 360
Дослідження операцій Таблиця 5.10 2>| а 6 <*5 1 0 і 1/2 І 0 -1/2 1/4 0 -2 1 0 В -1/2 1/4 Таблиця 5.11 о, А А А <0 і 1 0 1 1/2 1 0 -1/2 1/4 1 -1/2 1/4 -2 і 0 З цих розв’язків, використовуючи умови невід’ємності <5;(г)>0. доходимо висновку, що замінна г має задовольняти нерівності: о<г<|. (8) Записуючи повний розв’язок системи (4)-(6) у ВИГЛЯДІ 6=Ь° + гЬ' , визначаємо, що *(0>=Г_!_ ±. ±;О;оТ. &(') = Г-1;±;±;|;2]Г - (9) [244] [22] Використовуючи умови оптимальності (5.6.57) теореми 5.17, зна- ходимо шукане значення г , при якому г(<5(г )) = птах г(г) • г Обчислюємо: Згідно з (5.6.57), враховуючи, що <і = і. р = і одержуємо: *1 = П^"(')л1(г)-Лї'. (10) де <?,(/) визначається з (7), _ 3 (9), а підставляючи ці значення в (10), дістанемо; (11) 16і 361
Зайченко Ю.П. Звідси: або (12) Із (12) визначаємо оптимальне значення / = о.з. Як бачимо, це значення задовольняє нерівності (8). Підставляючи / = о.з в (7), зна- ходимо оптимальні значення двоїстих змінних: А,' =-----/ = 0.2; <£ = — + —/=0,4: <>'* = <?’=0.4; <?.’=0,3; &* = 0.6 і 2 4 2 " Тоді максимум двоїстої функції дорівнюватиме: = 200°2(50)°4(50)°4і —І (уі (0,9)°’=4°250-4°3 = 100. Отже: г(г/) = ІОО = £0(Г). (13) Використовуючи співвідношення (5.6.33) із теореми двоїстості 5.15, складаємо рівняння стосовно невідомих прямої задачі: 40-Г,1= 8'^(8' ) = 0,2-100 = 20; (14) (15) (16) (17) 20 г, /, = 8'2у(8') = 0,4 • 100 = 40; 20 = 8‘у(8’) = 0,4 100 = 40; 1-Г2Г2 - - 1 <1 <2 — * * — З 8^ + 85 З Розділивши рівняння (16) на (15), одержимо ь = і. Підставивши ь=і в (17), дістанемо Лг2 =|, звідки о* = і. Нарешті підставивши г, = і в (15), знайдемо г, = 2. Безпосередньою перевіркою переконуємося, що #(/) = 100 = г(г>'). 362
Дослідження операцій Розділ 6 ЧИСЕЛЬНІ МЕТОДИ НЕЛІНІЙНОЇ ОПТИМІЗАЦІЇ Класифікація методів пошуку екстремуму нелінійних функцій Всі відомі чисельні методи пошуку екстремуму нелінійних функ- цій, залежно від використовуваної інформації для визначення черго- вої точки, можна поділити на три основні групи. Прямі методи, в яких використовуються лише поточні значення функції, що оптимізується. Методи першого порядку, в яких додатково використовуються і значення першої похідної функції. Методи другого порядку, потребують ще і значень другої похід- ної функції, що оптимізується. Розглянемо спочатку пошукові методи оптимізації без обмежень, а потім перейдемо до розгляду методів оптимізації з обмеженнями (тобто задач НП). 6.1. ГРАДІЄНТНІ МЕТОДИ Градієнтні методи являють собою одну з найпоширеніших груп методів пошуку безумовного екстремуму. В усіх них використову- ються значення градієнта функції /(х). Отже, вони належать до ме- тодів першого порядку. Нехай потрібно знайти гпіп /(х). ге Я" Позначимо вектор-градієнт функції /(х) в точці х; через у/Хх,): дх} дх2 дхп Нехай пошук екстремуму починається з деякої довільної точки х0. Тоді рух точки, яка задає поточний розв’язок за градієнтним ме- тодом описується таким рекурентним співвідношенням: 16* 363
Зайченко Ю.П. ХА+І = ХА-ЯАУ/(хА) , Л > 0, к =0,1,... (6 11) де ЯА - величина кроку на к -й ітерації. У різних варіантах градієнтного методу користуються різними способами вибору скаляра ЯА. Цей вибір може, зокрема, залежати від ступеню близькості хА. до точки мінімуму х . В тому випадку, коли величина кроку Я визначається з умови: Я* = шіп/(хА-Я«А), (6.1.2) Де 5а=У/(ха), відповідний метод зветься методом якнайшвидшого спуску (запро понований О.Коші). Згідно з цим методом, за нове наближення хА+І вибирається така точка, розташована в напрямку «А, в якій функція /(х) досягає сво- го мінімального значення. Потім визначається нове значення градіє- нта у<(х4, ) в точці хАМ, і процедура повторюється знову. Метод як- найшвидшого спуску часто називають повнокроковим методом. Зауважимо, шо метод якнайшвидшого спуску в загальному випа- дку не має якихось оптимальних властивостей, наприклад, здатності відшукувати оптимальний розв’язок х за мінімальне число кроків чи при мінімальному обсязі обчислень. Це можна проілюструвати таким прикладом мінімізації квадратичної функції: — хтН х, 2 мінімізувати /(х) = (6.1.3) де матриця Н - додатньо визначена. У цьому випадку /(х) > 0 для всіх х * 0 та /(о)= 0, отже, /(х) досягає мінімуму при х* = 0. Оскільки У/"(х)= Нх = 5 , (6 1.4) то згідно з методом якнайшвидшого спуску потрібно знайти: тіп/(х-1$)= ттх (Н-2ХН7+Х2Н')х- (6 1.5) л>0 л>0 364
Дослідження операцій Візьмемо похідну у виразі (6.1.5) по Я і одержимо оптимальний розмір кроку: . _ хтН2х Л — —=--— . хтН х Якщо звернутися до геометричної інтерпретації (рис. 6 1), го ста- не зрозумілим, що промінь х - Як = х- Яу/’(х), А > 0, який виходить з точки х в напрямку У/"(х), не проходить через точку мінімуму х" = 0. Отже, точки х’ не можна досягти за один крок, якщо тільки точка х0 не лежить на одній з півосей еліпсу, який задається функці- єю хтН х . Якщо ж вести пошук за напрямком Н $ ,то шуканої точ- ки х‘ = 0 можна досягнути за один крок при Л* = 1, оскільки. /(х - НТ§)= /(х- Н 'Н х)= /(0)= 0 . Рис. 6 1 Таким чином, в даному випадку метод якнайшвидшого спуску виявляється гіршим, ніж метод, згідно з яким пошук проводиться в напрямку Н |у/'(х). При використанні методу якнайшвидшого спус- ку траєкторія наближення до точки х’ буде зигзагоподібною. Введемо вектор р4 = х4+1-х4 . Тоді вектор-градієнт У/’(х4я) орто- гональний до вектора р(, оскільки хА„ було вибрано шляхом мінімі- зації /(х4-Я54). Таким чином, послідовність точок хр х2, ...,х4, ЩО генерується методом якнайшвидшого спуску, зиїзагоподібно набли- жається до точки х* (рис. 6 2) 162 365
Зайченко Ю.П. Метод Ньютона (метод другого порядку) Градієнтні методи, включаючи метод якнайшвидшого спуску, вико- ристовують лінійну апроксимацію цільової функції (611) Методи дру- гих похідних, зокрема метод Ньютона, виникли з квадратичної апрокси- мації /(х). Розглянемо схему Ньютона. Напрям пошуку в в методі Ньютона вибирається таким чином. Знайдемо квадратичну апроксимацію фу- нкції /(х) в околі точки х4, розклавши її в ряд Тейлора- /(х) = /(х4) + ?7(*і )(х - хл) + |(х - х( )г )(х - х4), (6.1.6) де ^7(х*)~ матриця Гессе функції /(х), яка являє собою матрицю частинних похідних /(х) у точці х, : ?7(х>//(хЗ=кф} (6.1.7) і -1, я, у — І, я. Замінимо в розкладі (6.1.6) хна х4+1,а х-хА на Дх( і одержимо квадратичну апроксимацію /(х4) через Дх4 : /(*»Л=/к)+^7(х*)Дх* + |ах'?7(х4)Дх4 Знайдемо напрямок Дх4 = х4+1 - хА, в якому /(хАИ) буде мінімаль- ною. Для цього продиференціюємо /(х) по кожній з компонент Дх4, і прирівняємо до 0 одержані вирази. В результаті матимемо співвідно- шення: Дха=-^2/(х4)] ^/(х,), (6.18) де [\72/(\ )]_ матриця, обернена до матриці Гессе в точці х4. Тоді перехід від х4 до х4+1 за методом Ньютона описуватиметься спів- відношенням: х*+1=х4-Р7(ха)ГУ/(х4). (6 1.9) 366
Дослідження операцій Зауважимо, що в (6.1.9) як напрямок, так і величина кроку визна- чені. Якщо Дх) - квадратична функція вигляду Дх)=-1хтНх, то У?Дх) = Н і для досягнення точки мінімуму досить лише одного кроку Проте в загальному випадку мінімуму /(х) не можна досягти за один крок, і тому рівняння пошуку (6.1.9) зазвичай зводять до ста- ндартного вигляду: (6.1.10) де 8 - одиничний вектор, вводячи довжину кроку Л як параметр: х _х л [У7(\)] ‘УЛх,) (6Л11) |у/(мг‘у/М Рівняння (6.1.11) застосовується ітеративно доти, доки не буде виконуватися критерій закінчення процесу. Критерій, який гарантує збіжність методу Ньютона, за умови, що Дх) - двічі диференційовна функція, полягає в тому, що матриця, обернена до матриці Гессе, Н ‘(х) мае бути додатньо визначеною. Як відомо, матриця н(х) - додатньо визначена для строго опуклих функ- цій. У випадку функції більш загального вигляду, метод Ньютона мо- же привести до напрямків пошуку, що розходяться від точки мініму- му. Це пояснюється тим, що симетрична матриця додатньо визначена годі і тільки тоді, коли всі її власні значення Ьг,..., Ьп - додатні. Якщо всі власні значення матриці Н(х<) додатні, то локальна квадратична апроксимація Дх) в точці хх являє собою еліпсоїд. Водночас, якщо пара власних значень н(х() має протилежні знаки, то, як видно з мал. 6.3. квадратична апроксимація являє собою сідло. У цьому випадку вектор, що визначається рівнянням (6.1.11), на- прямлений до сідловоїточки, замість точки мінімуму функції Дх). 16** 367
Заііченко Ю.П. Рис. 6.3. 368
Дослідження операцій Геометрична інтерпретація квадратичної апроксимації Розглянемо геометричну інтерпретацію локальної квадратичної апроксимації /(х) га проілюструємо важливість вимоги додатньої визначеності н '(х)- Квадратичну функцію /(х) довільного вигляду можна привести до нової системи координат, перенесенням початку системи координат у точку екстремуму функції і подальшим поворо- том осей для досягнення симетрії. Позначимо вихідні координати через хрл^,..., х„, а нові координа- ти - через хр Ха,. х„ (їх називають головними осями). Рис. 64. 16’ 369
Зайченко Ю.П Згадані перетворення системи координат до головних осей дають змогу отримати вираз для цільової функції /(х) у канонічному ви- гляді стосовно координат х^х,,..., хл, причому цей вираз значно про стіший, ніж початковий, бо в ньому відсутні члени першого порядку х;, а також перехресні члени вигляду а,ух,ху. Розглянемо випадок, коли п = 2 . Квадратична апроксимація функції /(х) матиме вигляд: /(хі, х2) = Ьи + Ьіхі + Ь2х, + ,х,2 + Ьх2х,х2 + Ь12хг2 . (6.1 12) Рівняння (6.1.12) перетворюється в канонічне рівняння вигляду: /(х, ,72) = Ьу 1х12 + Ь22х2 + /(х’,х2), (6.1.13) де /(х*,х2) - значення /(х) у шуканій точці мінімуму х*. На рис. 6.4 наведемо перетворення системи координат до головних осей, де ілю- сгрується результат зміни масштабу таким чином, що лінії рівня фу- нкції /(х(,х2) стають колом. Елементи матриці Гессе н(х) цільової функції /(х) зв’язані з ко- ефіцієнтами рівняння (6.1.12) простим співвідношенням: Водночас коефіцієнти Ь^,Ь22 в рівнянні (6.1.13) є власними зна- ченнями матриці Н(х|1). Матриця, обернена до Н(х4), дає ступінь кривини функції /(х) в околі точки х4. Дослідимо характер функції /(х) залежно від знаків Ьи,Ьі2 та співвідношення між ними. Відпо- відні результати наведено в табл. 6.1 (а-е). Зокрема, якщо б,, > 0, Ь22 > 0 , то лінії рівня - еліпси, причому якщо 61( » 622, то лінії рівня витягуються вздовж осі X), і навпаки. Якщо центр лежить на осі х, на нескінченності і коефіцієнт Ьп від’ємний, то лінії рівня яв- ляють собою параболи (рис. 6.3,е). Кожна вироджена поверхня, що зветься яром або хребтом, вини- кає, коли один з коефіцієнтів за абсолютною величиною набагато більший за другий. 370
Дослідження операцій Таблиця 6.1 № Співвідно- шення між коефіцієнт- тами Знаки Типи лінії рівня Геометрична інтерпрета- ція поверхні Характерис- тика центра льної точки Ілюстрація поверхні 1 41 = 4>2 - - Коло Круговий горб Максимум Рис. 6.3, а 2 + +- Коло Круговий яр Мінімум Рис. 6.3, а 3 /?І । > Лз? - - Еліпс Еліптичний горб Максимум Рис. 6 3, б 4 *|| >Л22 + Еліпс Еліптичний ЯР Мінімум Рис. 6.3, б 5 1 = ^22 + - Гіпербола Симетричне сідло Сідлова точ- ка Рис. 6.3, в 6 41 -ьіг - + Гіпербола Симетричне сідло Сідлова точ ка Рис. 6 3, в 7 Ьу 1 > ^22 + - Гіпербола Витягнуте сідло Сідлова точ- ка Рис. 6.3, г 8 =° - Пряма Стаціонар- ний хребет1 Нема Рис. 6.3, д 9 *22=« + Пряма Стаціонар- ний яр1 Нема Рис. 6.3, д 10 422 =0 - Парабола Хребет, що підіймаєть- ся1’2 На ос Рис. 6.3, е 11 4,2 =0 Парабола Яр, що спа- 1.2 дає На оо Рис. 6.3, е 1 - вироджена поверхня. 2 - до канонічного виразу функції /(ї|,ї2) потрібно додати два лінійних члени. Метод спряжених напрямків Припустимо, що потрібно мінімізувати /(х) і процес мінімізації починається в точці х0 з початковим напрямком 80. Тоді вектор х, визначається співвідношенням: хі=*о-А)5о. (6.1.14) де довжину кроку знаходять із умови мінімуму /(х) відносно 2: 16*** 371
Зайченко Ю.П. 5/(^0 А)=о (6.1.15) дЛ Після тою як обчислено Яо і х., для продовження процесу мініміза- ції /(х), потрібно вибрати новий напрямок. Цей напрямок х, зветься спряженим із старим напрямком к0, якщо виконується умова: У загальному випадку система лінійно незалежних напрямків зветься спряженою стосовно деякої додатньо визначеної матриці 9, якщо ї*у; і,/ = 1,л—1. (6.1.16) Зауважимо, що спряженість - це поняття, аналогічне до ортого- нальності, бо якщо Н = Л, де Л - одинична матриця, то згідно з (6.1.16) 5,л8( = 0,1* 7 . Для деякої матриці Н завжди існує щонайменше одна така сис- тема з л взаємноспряжених напрямків, оскільки самі власні вектори матриці Н утворюють гаку систему. Надалі при використанні спряжених напрямків нам знадобиться таке корисне співвідношення для квадратичної функції Щоб переконатися в його справедливості, розглянемо матрицю Л-І Помноживши її праворуч на Не, і взявши аЛ=(«[Н54) !, >=• одержимо таке співвідношення: ІІ8( =о,5($'н$( =5( . (6.1.18) [„-і [/-о Таким чином, співвідношення (6.1.17) доведено. Справедливе такс твердження [2; 50]: якщо використовуються спряжені напрямки, то довільна квадратична функція п змінних може бути мінімізована рівно за п кроків, по одному кроку’ в кож- ному з спряжених напрямків При цьому порядок використання на- прямків несуттєвий. 372
Дослідження операцій Доведемо це твердження Нехай цільову функцію задано у вигляді Дх) = « + х1Ь+^х1Нх- При цьому у/"(х) = Ь + Нх, і в точці мінімуму х = - Н 'Ь На и-му кроці пошуку в результаті використання формул (6 1.14) отримаємо: хя=х0-£ЛЛ. (6.1.19) 4=0 На кожному кроці, мінімізуючи /(х4 ~^5*) по Я, в напрямку 5д, знаходимо значення довжини кроку: го <У/(»») В результаті для х„ одержимо вираз: (6.1.20) * Н5( ) Оскільки всі добутки 5, Ні, дорівнюють нулю (при к * у ), то <УГ(х4)=<(Нхі +ь)=вН Ні хм-^Я,5,) + ЬІ = 5[(Нх3 *Ь). Таким чином: = *0 о—І -Е <(Нх0-И>>; <Н8* (6 1.21) Виразимо вектори х0, Н ' через систему спряжених векторів : У^?(НхиХ 0 7.1 *-0 'Ь)5. У’ (6.1.22) (6.1.23) х п 373
Зайченко Ю.П. Підставивши (6.1.22) і (6.1.23) в (6.1.21), дістанемо: х„ = -Н 'Ь = х*. Таким чином, точка хп - результат п-ого кроку пошуку, збіга- ється з точкою мінімуму х*. Отже, твердження доведено. Введемо таке означення. Метод має властивість квадратичного закінчення, якщо його застосування гарантує досягнення иінімулп квадратичної функції за точно визначену кількість кроків Так, в ме- тоді спряжених напрямків потрібні п кроків, а в методі Ньютона - лише один крок. Розглянувши основні властивості методу спряжених напрямків, опишемо відповідний алгоритм, в якому використано ці ідеї. Метод спряженого градієнта. У методі спряженого градієнта (Флетчера-Рівса) будується послідовність напрямків пошуку, які є лінійними комбінаціями У/(х,), поточного напрямку в, та попере- дніх напрямків 5,„81,..., , і є спряженими. При цьому для обчис- лення нового напрямку пошуку в точці х4 використовується лише поточний і передостанній градієнти. Розглянемо ідею методу. Нехай вихідним напрямком пошуку є 5о = ~УГ(х0) • Покладемо х] = х0 + і побудуємо: 5. =-У/’(хІ) + <уІ80, (6.1.24) де єц — ваговий коефіцієнт, який вибирається так, щоб зробити век- тори «0, $! спряженими стосовно матриці Н : <Н5,=0. (6.1.25) Щоб виключити 50 з (6.1.25), скористаємось очевидним співвід- ношенням: У/(х*и) ~ У/(х*) = V 2/(х, )(х<+1 - х,) = НЯХ5*, де = Дх, , а також співвідношенням: г _ (х.-х0)г _ [У/(х,)-У/(х0)Г Н1 0 4* Л’ 374
Дослідження операцій Отже: [?Дх,)- у/(хс)]' н'н[ у/(х,)+ о. В силу розглянутих властивостей всі перехресні члени зникають (дорівнюють нулю), отже: г) _ УУ(хМ(х,) '^7(х0М0)' (6.1.26) Напрям пошуку 5, задасться у вигляді лінійної комбінації У/"(х2 ), 81, причому так, щоб він був спряженим до $,. Повторюючи наведені вище співвідношення для випадків к - 2,3,... одержимо: ш , уг/(х4)у/(х4) _ ||у/М3 ‘ Мх,,лі? (6.1.27) Підсумовуючи, наведемо обчислювальну схему алгоритму. У точці х0 обчислюємо 50 =-У/(х0). На к -му кроці за допомогою одновимірного пошуку в напрямку знаходимо мінімум /(х). Це визначає точку х,и. Обчислюємо /(х4+|) і У/(х4и). Напрямок 5О1 визначається із співвідношення: = -У/(х*+І)+5* 8 Уг/(х^)У/(хЛ„) Уг/(х)У/(хк) (6.1.28) 375
Зайченко Ю.П. Після п -ї ітерації (при к = л) процедура повторює гься циклічно із заміною х0 на хл. Алгоритм закінчується, коли ||5„| < Е, , де довільна досить мала константа. Перевагою алгоритму спряжених градієнтів є те, що для нього не потрібно знаходити обернену матрицю Н '. Крім того, відповідна програма для ЕОМ потребує відносно невеликого об’єму пам’яті. Траєкторію руху точки, яка задає поточний розв’язок, при вико- ристанні методу спряжених градієнтів для мінімізації функції Розен- брока /(х,,х,) = 100(х2-х,2)2+ (1-х,2) наведено на рис. 6.5, числа біля точок траєкторії є номерами відповідних ітерацій. 6.2. МЕТОДИ ЗМІННОЇ МЕТРИКИ Для застосування методу Ньютона потрібно знати матрицю Гессе і обчислити обернену до неї матрицю н *(хЛ) - Однак в багатьох ви- падках може статися так, що або матриця Н(х4 ) невідома, або її об- числення пов’язане з великими труднощами. Крім того, як відомо, в загальному випадку число операцій множення при оберненні матриці розміру (ихи) пропорційне п, що потребує великих обчислювальних витрат навіть при малих п. У зв’язку з цим розроблено низку методів, в яких матриця Н '(х,) будується поступово в процесі спуску. Ці методи звуться методами змінної метрики, або квазіньютонівськими методами [50]. При використанні методів змінної метрики новий вектор х4я об- числюється згідно з рівнянням: =х* +Л5* =х* -ло(х*)^ж), (б.2.і) де матриця В(х1), яку називають матрицею напрямків, являє собою апроксимацію матриці Н '(хк). Для оцінки Н-,(хх) скористаємося 376
______________________________________________Дослідження операцій таким корисним співвідношенням, яке зв’язує х* та х(+1 для випадку квадратичної цільової функції: УГ(хиі)-У/(х*)= Н(хДхх+1 -х4) (6.2.2) Множачи обидві частини (6.2.2) на Н '(х*), дістанемо: **+і -х* = Н '(х,)(У/(х*+1)-У/(х*)). (6.2.3) Якщо при цьому /(х) - квадратична функція, то н(х*)=Н = соплі. Рівняння (6.2.3) можна розглядати як систему з п лінійних рівнянь, які містять п невідомих параметрів, які потрібно оцінювати для того, щоб апроксимуваги Н (х,) при заданих значен- нях /(х), У/(х), Дх. Для розв’язання цієї системи можна застосувати різні методи, кожний з яких приводить до відповідного методу змін- ної метрики. У багатьох методах Н"'(х4) апроксимується за допомогою інфо- рмації, отриманої на к -у кроці, таким чином: н '(х(м)ж®О*м =«(О* + ДО» ) (6.2.4) де - матриця, що апроксимує Н“'(х,); ДО, - обчислюється на к - му кроці для уточнення апроксимації; а> - масштабний коефіцієнт (множник). Вибір ДВ* по суті визначає метод змінної метрики. Для забезпечення збіжності бЛ)*+1 мас бути додатньо визначеною і задо- вольняти рівняння (6.2.4), якщо її підставити замість Н"'(х( ). Оскіль- ки на (к + і)-му кроці відомі У/(х*), У/(хЛ+1), х*, В*, обчислимо В*,, так, щоб виконувалось співвідношення: О*+і(^(х*+1)-У/(хЛ))= В*т1Д8* = — Дх*. • (6.2.5) СО Нехай . Тоді рівняння ДО* Де* =—Дх* - и* Де* (6.2.6) а> потрібно розв’яіати стосовно ДВ(. 377
Зайченко Ю.П. Безпосередньою підстановкою в (6.2.6) можна перевірити, що рі- вняння (6.2.6) мас розв’язок: (6.2.7) со у Де* Де,2 де у та г довільні вектори вимірності лхі. Якщо вибрати у = г = Дх( - ВАД£* , со = 1, то одержимо алгоритм Бройдена, якщо ж в (6.2.7) покласти у = Дх4, а г = ВДе*, то матимемо алгоритм Девідо- на-Флетчера-Паулла [50]. Алгоритм Бройдена Розглядаючи методи розв’язування систем рівнянь вигляду (6.2.3), Бройден показав, що коли ДВ<+, симетрична матриця рангу 1 і мас виконуватися співвідношення В^Д^ = ДхАЯ, то сдино можли- вим вибором ДВ4 є ДВ* = [Дх*- В*ДЄ<]х[дх -В*ДЄ<Г . (6 2 8) [Дх* - ВАДе*] Де* де Дх* = х*,,-х*, Де, =у/(х*,і)-у/(х*)- У найпростішому варіанті алгоритму Бройдена мінімізація почи- нається з вибору початкової точки х0 і деякого Во > 0. Потім послі- довно застосовують рівняння (6.2.1), (6.2.4)-(6.2.8) доти, доки при деякому к не одержать ||У/(х, )|| < Е, . Зокрема, коли цільова функція п змінних квадратична, так що Н(х)=Н = соп$/, В0>0, матриця ВА+1 обчислюється з (6.2.5), (6.2.8), хА+І обчислюється з рівняння (6.2.1), а змінні ДхАИ є незалежними напрямками, то можна показати, що через п кроків В„ = Н“' [50]. У випадку, коли /(х) не є квадратичною, застосування рівнянь (6.2.8) може призвести до таких небажаних наслідків. 378
Дослідження операцій Матриця В4+І може вже не бути додатно визначеною. У цьому випадку необхідно забезпечити додатну визначеність за допомогою одного з спеціальних методів. Обчислювана величина ДВ^, може стати необмеженою внаслі- док помилок округлення. Якщо ДхЛ = -2, В(хА )У/(х,) випадково збігається з напрямком попе- реднього кроку, то матриця В(хЛ+І) стає виродженою або невизначеною. В алгоритмі Бройдена останнє станеться у випадку, коли в проце- сі визначення напрямку пошуку за рівнянням (6.2.1) рівняння В,Ду4 = Дх, або рівняння (О*Д&* -Дх< )гДе, =0 призведе до резуль- тату В<+, = ВЛ. Як було показано в [50], одна з умов збіжності х4 до стаціонарної точки полягає в тому, що норма матриці О, мас бути обмеженою зверху та знизу. Для цього вводяться дві обмежувальні умови: ІМаМ> рі . |у7(х*)о*УГ(х*)| (6.2.9) ^Р2 • де р, , р2 - деякі константи. Метод Дееідона-Флетчера-Пауелла У варіанті методу змінної метрики, який запропонували Девідон, Флетчер та Пауелл, для знаходження матриці Н '(х) використову- ється матриця ДВ. яка має ранг, що дорівнює 2. Матриця напрямків В переобчислюється так, щоб для квадратичної цільової функції пі- сля п кроків виконувалося б В„ = Н’1. Вихідна матриця В зазвичай обирається у вигляді одиничної ма- триці Во = Л , так що початковий напрямок мінімізації - це напрямок якнайшвидшого спуску. Оцінка елементів Н 1 в точці екстремуму х’ тим точніше, чим краще вибрано порівняно з матрицею Л початкову матрицю В,,. У процесі оптимізації має місце поступовий перехід від градієнтного 379
Зайченко Ю.П. напрямку руху до ньютонівського, при цьому використовуються пе- реваги кожного з цих методів на відповідному етапі. Алгоритм Девідона-Флегчера Пауелла одержимо, якщо в рів- нянні (6.2.5) візьмемо у, = Ах(, г, = - Тоді: О **і в, » - ".МВ.Л&Г . р „ А _в Ах[А8* Леїв, Де( (6 2.10) Зазначимо, що оскільки матриці А, та В, симеїричні, то якщо В* симетрична, то і ВЛ+1 буде симетричною. Призначення матриці А* полягає в забезпеченні виконання умо- ви В -> Н при к —> со, тоді як В, має забезпечити додатну визначе- ність В, при всіх к та виключення впливу вибору початкової мат- риці Во. Використовуючи (6.2.10) багато разів, за умови, що Во = Л , через к ітерацій одержимо: к к в*ч = з+Ха.-Хв,. І=І І=1 У випадку квадратичної функції ЕА, при к=п-\ має дорівню- 1=1 к вати Н , а Ев, має дорівнювати 3 . Зауважимо, що у випадку квад- І=1 ратичної цільової функції у розглядуваному алгоритмі використову- ються сполучені напрямки. У більшості варіантів алгоритму функція /(х) мінімізується в кожному вибраному напрямку пошуку. Для визначення мінімуму /(х) по х у певному напрямку можна застосувати будь-яку ефекти- вну процедуру одновимірного пошуку. При цьому важливо, щоб ця процедура була ефективною, оскільки значна частина всього часу обчислень витрачається на одновимірний пошук. 380
Дослідження операцій Практика показала, шо в деяких іадачах неможливо досліди мінімуму /(х) за до- помогою методів змінної ме- трики, якщо ступінь точності одновимірного пошуку недо- статній. Тому рекомендується вибирати точність одновимі- рного пошуку принаймі та- кою ж, як точність пошуку основного алгоритму. Щодо критерію закін- чення робо і и алгоритму, то автори методу запропонува- ли для використання одне з таких правил [50]. Кожна зі складових векторів В,У/(хд) та Я,В^/(хд) менша за де- яку наперед задану величину. Обчислена норма кожного з цих векторів у точці зупинки менше наперед заданої величини. На мал. 6.6 наведено траєкторію руху за алгоритмом Девідона- Флетчера Пауелла при початковій довжині кроку Я = 1. (Цифри на траєкторії означають номери відповідних ітерацій). На практиці виявилось, що в розглянутому методі та в інших .ме- тодах змінної метрики можуть інколи з’являтися кроки в протилеж- ному (стосовно напрямку до точки мінімуму) напрямку, або ці мето- ди можуть зупинитися в нестаціонарній точці. Як виявилося, це є наслідком виродженості матриці В, . Якщо матриця ВАсгає майже сингулярною, го напрямки пошуку можуть стати такими, як при неправильному виборі масштабу по осях ко- ординат, виродження матриці В можна уникнути шляхом збіль- шення числа значущих цифр або відповідним вибором масштабу компонент вектора х з тим, щоб зробити порядок діагональних елементів матриці Ац близьким до 1. 381
Зайченко Ю.П. Якщо ж ці операції виконати неможливо, то матрицю В можна перезадати у вигляді діагональної матриці, у якої , де Ах*, > УА(хД - і-та компонента векторів хк , У/(хА) відповідно. 6.3. ПРЯМІ МЕТОДИ ПОШУКУ Прямі методи одновимірного пошуку До прямих методів пошуку належать методи, в яких для відшу- кання екстремуму не використовуються похідні першого та вищих порядків. У цих методах напрямки пошуку визначаються на підставі послідовних обчислень лише значень функції /(х). Як правило, при розв’язанні задач НП, коли немає обмежень, граді- єнтні методи та методи, які використовують другі похідні, збігаються швидше, ніж прямі методи. Проте, застосовуючи на практиці методи, в яких використовуються похідні, натрапляємо на певні труднощі. По- перше, в задачах з великим числом змінних важко або зовсім немож- ливо одержати похідні у вигляді аналітичних функцій, що необхідно для методів першого та другого порядків. Звичайно, аналітичні вира- зи для похідних можна замінити обчисленням їх за різницевими схе- мами, але похибки (особливо в околі екстремуму), що виникають при цьому, обмежують можливості такої апроксимації. Щодо прямих ме- тодів, то вони не потребують виконання умов регулярності і непере- рвності /(х) та існування похідних. По-друге, градієнтні методи оптимізації потребують досить значно- го часу на підготовку задачі до розв’язування порівняно з прямими ме- тодами. Розглянемо спочатку задачу мінімізації функції однієї змінної /(*) при умові а < х < Ь . Оскільки точне місце знаходження локаль- ного мінімуму /(х) на проміжку [а; б] невідоме, то доцільно назвати цей проміжок проміжком невизначеності. Взагалі [а; л] зветься проміжком невизначеності, якщо точка мі- німуму х* є [и; />], хоча її точне значення невідоме. 382
Дослідження операцій Покажемо, що якщо функція /(х) опукла або строго квазіопукла (див рис. 6.7), го інтервал невизначеності можна скоротити за допо- могою обчислення значення /(х) в двох точках, що належать інтер- валу. Теорема 6.1. Нехай /(.х) опукла або строго квазіопукла на про- міжку [«;£>]. Нехай Л,рє[а,/>] такі, що Я< р. Якщо Да)> /(р), то /(з)> /\р) дія всіх г є [а, л] Якщо ж /(Я) 5/(а). то /(г)>/(2) для всіх гє[р,Ь]. Доведення. Нехай /(л)> /(р) та гє[а,Л). Припустимо, що твердження теореми неправильне, тобто нехай /(г)< /(р). Оскільки точку Л можна зобразити у вигляді опуклої комбінації точок р, г, а /(х) - сірого квазіопукла функція, то /(/)< тах{ /(г), /(а)} = /(а), але це суперечить твердженню, що /(я)> /(р). Отже, ї(г)> /(а)- Аналогічно доводиться і друга частина теореми. З цієї теореми випливає, що при умові строгої квазіопуклості /(х), якщо /(Л)> /(р), то новим інтервалом невизначеності є [л,/?]. Якщо ж /(а)< /(а), то новим проміжком невизначеності буде [а, а]- Обидва Ш випадки проілюстровано на рис. 6.8. 383
Заііченко Ю.П. Розглянемо декілька процедур мінімізації строго квазіопуклої функції на замкненому обмеженому інтервалі, послідовно скорочую- чи початковий проміжок невизначеності. Дихотомічний пошук Отже, нехай задано строго квазіопуклу функцію /(.т), яку потрібно мінімізувати на проміжку [д , Ь,]. Очевидно, найменша кількість обчис- лень значень функції, потрібних для скорочення проміжку невизначено- сті, дорівнює двом. На рис. 6.8, а маємо /(Я,)< /(/<) і- отже, згідно з теоремою 6.1, новим проміжком невизначеності є [«,,//.], а для випадку /(Я,)> /(д:) (Рис 6.8,6) новим проміжком невизначеності є [<^,А] Таким чином, залежно від вигляду функції /(%) довжина нового промі жку невизначеності дорівнює д -а. або Ь.-\. Апріорі невідомо, чи буде /(я)< /(д ) або /(Я,)> /(д,) Тому оптимальна стратегія вибору точок Я,, д. полягає в мінімізації максимуму величини д, - а, та Ь, -Я,. Цього можна досягти вибором за точки Я, та д, середини проміжку [а , ь]. Однак у цьому випадку матимемо лише одну точку і не зможемо далі скоротити проміжок невизначеності. Тому вибираємо Я, та д, симетрично розташованими щодо середини інтервалу на відстані £ від неї. Тут число £ > 0 потрібно вибрати настільки малим, щоб, з одного боку, довжина нового інтервалу невизначеності £ + 1 бу- ла досить близькою до теоретично оптимального значення Л, , а з другого боку, значення функцій /(я) та /(д ) відрізнялися б одне від одного. Таким чином, у методі дихотомічного пошуку місце знаходження кожного з перших двох вимірювань (обчислень) функції Я, та д, вибирається симетричним на відстані £ від середини інтервалу Ь. + а . , ... . залежно від значень функції в точках Я. . д, визначається новий проміжок невизначеності. 384
Дос лідження операцій Навий нтервал невизначеності а Рис 6 8. Дамо опис алгоритму дихотомічного пошуку. Попередній етап. Вибрати константу розрізнення і допустиму кінцеву довжину проміжку невизначеності />0. Нехай [в^Л,] - по- чатковий проміжок невизначеності. Покласти к = 1 і перейти до ос- новного етапу. Основний етап. Він складається з скінченого числа однотипних ітерацій. к-та ітерація Перший крок. Якщо Ьк -ак <1, то кінець алго- ритму, точка мінімуму належить проміжку [а4,6д]. У протилежному випадку обчислити: , ак + Ьк а к + 6к ., ।, (б-3-1) і перейти до другого кроку. Другий крок. Якщо /(ЯЛ)< /(а*), то покласти а*+І=о»> У протилежному випадку взяти а|+| = Лк, /у = Ьк. Замінити к на к <-1 і перейти до першого кроку. Зазначимо, шо довжина проміжку невизначеності на початку (А т 1) -ї ітерації дорівнює: (6-3.2) Доведене співвідношення можна використати для визначення числа ітерацій, необхідних для досягнення бажаної точності. 17і 385
Зайченко Ю.П. Порівняння різних процедур одновимірного пошуку доцільно провадити у відповідності із таким коефіцієнтом стиснення: /4. де /с - довжина початкового проміжку невизначеності [«, і] ; / - дов- жина проміжку невизначеності після и спостережень. Очевидно, чим менше значення А/„,, тим ефективніша відповідна процедура алгоритму пошуку. Для дихотомічного пошуку значення цього коефіцієнта приблиз- но дорівнює 0,5. Метод золотого перетину Розглянемо ефективніший метод для мінімізації опуклих та стро- го квазіопуклих функцій - метод золотого перетину. Нехай на А -й ітерації методу золотого перетину проміжок неви- значеності дорівнює [йц , Ьд]. Згідно з теоремою 6.1, новий проміжок невизначеності [ад.,,дорівнюватиме [яд.6(], якщо <(йд)> С(рк) та [а*, ] - у протилежному випадку. Точки Лд та рк вибираються із таких умов. Довжина нового проміжку невизначеності ЛДи-аДїІ не залежить від результату на А -й ітерації, тобто від того, чи виконується нерів- ність /(Л)>/(д4) або /(Лд )</(//,). Отже, має виконуватися рівність Ьк -Лк = рк -ак. Таким чином, якщо А +0-«Х^-ад), (6.3.3) де 0 < а < І, то для д, має виконуватись умова: А =«<-«*) (6.3.4) Отже: = а(Ьк— ак\ (6.3.5) Для нової ітерації йд +| та дДч обираються так, що або Лди збіїа- ється з д(, або дОІ збігається з Лк. Тоді на (А * і)-й ітерації буде по- трібно тільки одне нове обчислення функції. Щоб довести це, роз- глянемо такі два можливих випадки (рис. 6.9). 386
Дослідження операцій Випадок І. /(Я4)> /(//,)• У цьому випадку ак¥І=Лк, Ьк^,=Ьк. а& '/м Скористаємось співвідношенням ам км Ьм (6.3.3), замінивши к на к + 1. При р () 9 ЛкіЛ=Ві маємо: А =Л,і =^1+(1-а)(^,і-«і±1) = Л +(!-«)(/>* -Л)- <6-3 6) Підставляючи вираз для , рк із (6.3.3), (6.3.4) в (6.3.6), одер- жимо: а2 +а-1 = 0. Випадок 2. /(Л( )< /(//,). У цьому випадку: ак^-ак, Ьк^=/лк. Скористаємося (6.3.4), замінивши к на к + 1. При д,,, = Л, маємо: А = = «*♦> + а(Ьм ~) = «* ^- «*) Підставивши (6.3.3), (6.3.4) в це рівняння, знову одержимо: а2 ‘-а-1 = 0. Коренями цього рівняння є а-—1 ~ 0,618 та а «-1,618. Од- нак, оскільки а потрібно взяти з інтервалу (0, 1), то а = 0,618 . Таким чином, якщо на к -й ітерації Лк та р, вибрано відповідно до (6.3.3), (6.3.4), де а = 0,618, то довжина інтервалу невизначеності скорочу- ється з коефіцієнтом а = 0,618. При цьому на першій ітерації необ- хідні два обчислення функції в точках Л,, //,, а на всіх наступних тільки одне обчислення, оскільки або Лки - цк, або ркіЛ = Лк. Алгоритм золотого перетину. Попередній етап. Вибрати до- пустиму кінцеву довжину проміжку невизначеності / > 0. Нехай [<?,,/>] - початковий проміжок невизначеності. Покласти /{,=«,+(! «)(А>,-<у,), /і, = а, +а(Ь,-а.), де <7 = 0,618. Обчислити /(Д), /(Аі)’ покласти к = 1 і перейти до основного етапу. Основний етап Перший крок. Якщо Ьк-ак </, то зупинити- ся, оптимальна точка належить проміжку [а;,6А]. У супротивному разі, якщо /(ЛА )> /(р(), то перейти до другого кроку, а якщо / ()< /(/<,). то до третього кроку 17* 387
Зайченко Ю.П. Другий крок. Покласти л1и = А. Лм=Л- /‘ки =акч +а(Кн -о**,)-Обчислити /(/А ) і перейти до четвертого кроку. Третій крок. Покласти а*„=ад., р^=Л^ = аки +(і~а)(Ьк*І ~ак+\)- Обчислити /(Я4И) і перейти до четвер- того кроку. Четвертий крок. Замінити А на (А -+1) і перейти до першого кроку. Приклад 6.1. Нехай потрібно знайти тіп/(х) = тіп(л2 + 2л) при обмеженні -3 < х < 5 . Очевидно, функція /(х) строго квазіопукла і початкова довжи- на інтервалу невизначеності дорівнює 8. Скоротимо цей інтервал невизначеності до інтервалу, довжина якого не більше ніж 0,2. Визначимо перші дві точки: Л =-3 + 0.382 8 = 0.056: //,=-3 + 0.0619 8 = 1.944 . ОбчИСЛИВШИ /Ц)та /(р). одержимо /(А)< /(^ ). Отже, новий інтервал невизначеності дорівнює (-3; 1.944). Знаходимо /А = Л = 0.056: Л2 = о, + (1 - л\ь2 - а2) = -3 + 0.382 4.944 = -1.112 . На цьому перша ітерація закінчується. Далі процес пошуку продовжуєть- ся аналогічно. Результати обчислень наведено в табл. 6.2. Після восьми ітерацій, що містять дев’ять обчислень функції, інтервал невизначеності скорочується до (-1.112; -0.936). Отже, за точку мінімуму можна взяти, наприклад, середину цього інтервалу -1.024. Зауважимо, що точкою точного мінімуму є точка -1.0. Таблиця 6.2 * “к Ьк Л Як /М /М 1 -3.000 5.000 0.056 1.944 0.115 7.667 2 -3.000 1.944 -1.112 0.056 -0.987 0.115 3 -3.000 0.056 -1.832 -1.112 -0.308 -0.987 4 -1.832 0.056 -1.112 -0.664 -0.987 -0.887 5 -1.832 -0.664 -1.384 -1.112 -0.853 -0.987 6 -1.384 -0.664 -1.112 -0.936 -0.987 -0.996 7 -1.384 -0.936 -1.208 -1.112 -0.457 -0.987 8 -1 208 -0.936 -1.112 -1 032 -0.987 -0.999 & -1.112 -0.936 388
Дослідження операцій Метод Фібоначчі Метод Фібоначчі є одним з найефективніших методів одновимір- ної оптимізації опуклих або квазіопуклих функцій. Подібно до мето- ду золотого перетину він погребує двох обчислень функції на першій ітерації і лише одного обчислення на кожній наступній. Однак цей метод відрізняється від методу золотого перетину тим, що коефіцієнт скорочення інтервалу невизначеності змінюється від ітерації до іте- рації. Метод грунтується на послідовності чисел Фібоначчі {/;.}, яка визначається гак [2, 18]: • и= 1,2,3,..., Г0 = Е=1. (63 7) Таким чином, послідовність Фібоначі має вигляд 1, 1, 2, 3, 5, 8, 13,21,34, 55,89,... Припустимо, що на к -й ітерації проміжок невизначеності дорів- нює [я, ,/>(]. Розглянемо дві точки Л( га які визначаються так: Л, =а, т- *' (6, -о,). А = 1.2.л-1 (6.3.8) А, дч //, = ак + — * (А>, -я,). к = 1,2 п- 1 (6.3.9) Л, « де п - задане загальне число обчислень функції. Згідно з теоремою 6.1, новий проміжок невизначеності [я^.6,,,] буде дорівнювати [л4,6(], якщо /(Яд)>/(//,) та [я,.//,], якщо /(/.„)</(а*)- У першому випадку, враховуючи (6.3.8) і беручи у = п-к в (6.3.7), одержимо: ^.,=61-А =6, - я,-^-(бд-я,)=-^-(64-яд) (6 3.10) ‘п к*’. Лі А У другому випадку, враховуючи (6.3.9), одержуємо. А*. "‘Ач = /4 ~аі = а>) 17= 389
Зайченксі Ю.П. Таким чином, в обох випадках довжина проміжку невизначеност і Е скорочується з коефіцієнтом —— . Покажемо, що на к -й ітерації * або \.;=Рі, , або і тому необхідно лише одне нове обчислення функції. Припустимо, ЩО /'(/;,) Тоді ЗГІДНО 1 теоремою 6.1, я, = Л4 , Лд. = Ь, . Таким чином, використовуючи (6.3.7) і замінюючи А на А + і. одержимо: а -«*,)=л > „ * * п іі Підставивши вираз для Л, із (6.3.8) і замінивши А на А+1, одержимо 4 + 1 = «А + |^(*А - Л* Ь ) <6-3’ ’ 1 > Лл А+І ’п А \ г,, к>-\) Е Е І _ ‘ п А 1 _ * п к З 4: Лі А+1 Підставляючи це значення в (6.3.11), дістанемо: Г' ‘1 (/’ -«<) = «. ‘ «,)=//, ' (6.3.12) <»! Г, М Якщо /(Ял)</(/аа) , то виконавши аналогічні перетворення, дістанемо р<и = Яц. Отже, в обох випадках на (Аті)-й ітерації по- грібне лише одне обчислення функції. На відміну від методів дихотомічного пошуку та золотого перетину, в методі Фібоначчі потрібно, щоб загальне число обчислень п (або коефіцієнт скорочення початкового проміжку) було задано попередньо. Це пояснюється тим, що точки, в яких виконуються обчислення, визначаються за формулами (6.3.8), (6.3.9), і, отже, залежать від я. Із формули (6.3.10) випливає, шо довжина проміжку невизначеності на А —й ітерації скорочується з Е коефіцієнтом —2-і- . Отже, після (л-1) ітерації, де п - задане ЬІ 390
Дослідження операцій загальне число обчислень функції /(х) , довжина проміжку невизначеності скоротиться від (Ь. - а.) до (Л - а.) І Рп. Алгоритм методу Фібоначчі. Попередній етап. Вибрати допустиму кінцеву довжину проміжку нсвизначеності І > 0 та константу розрізнювання £ > 0 Нехай задано початковий проміжок невизначеності (А-а). Вибрати загальне число обчислень функції п так. щоб А„>^. Покласти Л=а ^(/, _я ) д _а, - Обчислити /(/.), /'(//,), покласти к = 1 і перейти до основного етапу. Основний етап. Перший крок. Якщо /(лА.)> /(//*)• то перейти до другого кроку, у протилежному випадку - до третього кроку. Другий крок. Покласти л,., = , = А, . Далі взяти Я, .=//,, = я, , т * 1 (А,.,—«*,) Якщо к - п - 2, ю перейти до п’ятого кроку, у * протилежному разі обчислити Дд4ч1) і перейти до четвертого кроку. Третій крок. Покласти о,4|=о4 , к>)іі-=рк . р і -а _ х Якщо А=л-2, го перейти до п ятого А ТІ К 4 І г-1 ' ЛТ 1 л-і І ' кроку, у протилежному разі обчислити ) і перейти до четвертого кроку. Четвертий крок. Замінити к на к + І і перейти до першого кроку. П’ятий крок. Покласти = ЛН ,, рп=Лп-£. Якщо ,/(Л„)>/(д„). то взяти ап =Лп, Ьп =Ьп { . У протилежному разі (коли /(Л„ )< /(д,) ), покласти а„=ап] , й„ =//„ Кінець: оптимальний розв’язок знаходиться на проміжку [дп, А]. Приклад 6.2. Розглянемо той же приклад, що і раніше: тіп / ( т) - тіп(№ + 2х), при обмеженні -З < х < 5 . 17**
іайченко Ю.П Вимагатимемо, щоб довжина кінцевого проміжку £ невизначеності не перевищувала 0,2. Отже, /=;> —=40, гак що л=9 За константу розрізнення виберемо іначення <5 — 0.01 Перших два обчислення функції проводяться в точках Л, =-3^ 8-0.0545, д, =-3 + -^- 8 = 1 945 . б; Оскільки /(Л)</(д) , то новий проміжок невизначеності дорівнюватиме [-3.000; 1.945]. Далі процедура повторюється аналогічно. Результати ітерацій наведено в табл. 6.3. Оскільки /(//,.) > ЛЛ) ’ то кінцевий проміжок невизначеності [«о./*,] дорівнює [-1.109; -0.964], а його довжина І =0.145 . За наближення положення точки мінімуму виберемо середину проміжка 1 0364. Таблиця 6.3 А ‘Ч б А Ж) /1/л) 1 -3.000 5.000 0.0545 1.9454 0.112 7.676 2 -3.000 1.9454 -1.109 0.0545 -0.988 0.112 3 -3.000 0.0545 -1.836 -1.109 -0.300 -0.988 4 1836 0.0545 -1 109 -0.673 -0.988 -0.893 5 -1.836 -0.673 -1.399 -1.109 -0.840 -0.988 6 -1 399 -0.673 -1.109 -0.964 -0.988 -0.999 7 -1.109 -0.673 -0.964 -0818 -0.999 -0.967 8 -1.109 -0.818 -0.998 -0.964 -1.000 -0.999 9 -1 109 -0.964 -1.054 -0.998 -0.999 -1.000 Порівняння .методів лінійного пошуку Порівняємо викладені вище методи одновимірного пошуку за швидкістю скорочення проміжку невизначеності. Нехай довжина початкового проміжку дорівнює (Ь -а ), а І - довжина кінцевої о проміжку невизначеності. 392
Дослідження операцій При заданому значенні кінцевою проміжку /, яке задовольняє необхідний ступінь точності, потрібну кількість обчислень функції П можна визначити як найменше додатне ціле, що задовольняє таким співвідношенням: и метод дихотомічного пошуку: [1 2 . метод золотого перетину: (0.618)” ”' < —-—, Ь'~ а 6-а метод Фібоначчі: Ь >—------. » І _ , . Ь, а . . Для фіксованого значення —-— найменша кількість потрібних обчислень функції / (х) відповіцас більш ефективному алгоритму. З цієї точки зору наіісфекіивнішим є метод Фібоначчі, далі йде метод золотого перегину, а потім метод дихотомічною пошуку. о 1 Зауважимо, що при досить великих п значення — наолижається до 0.618, так що методи Фібоначчі та золотою перетину стають асимптоіично еквівалентними Характеристика методів пошуку екстремуму нелінійних функцій при обмеженнях Розв’язання задач нелінійної оптимізації при обмеженнях (тобто задач НП) становить значно більше труднощів порівняно із задачами безумовної оптимізації, саме внаслідок наявності обмежень Відомі різні обчислювальні процедури для задач НП з обмеженнями, які спираються на один із таких підходів. Поширення апарату лінійного програмування на нелінійні умови шляхом баї аторазового використання процедури лінійної апроксимації (методи апроксимуючою програмування) Перетворення задачі НП з обмеженнями в еквівалентну послідовність задач безумовної оптимізації введенням в розгляд штрафних функцій (методи штрафних функцій). 173 393
Зайченко Ю.Н. Використання «плавних» допусків, які дають змогу працювати в процесі розв’язання задачі як з допустимими, іак і з недопустимими векторами в просторі розв’язків Основні характеристики іа погенціа іьні можливості різних методів розв’язування задач НІ] наведено в табл. 6.4. Таблиця 6.4 № Структурні пор характерне тики Методи лінійної ап роксимізації Методи штрафних функцій Метод апроксимуючого програмування Метод Розена Узагальнений градієнтний метод Проективний варіант методу Д-Ф-П Метод можливих напрямків Л та НП Метод звеленого градієнта Метод Розенброка Метод бар'єрних поверхонь Метод Фіако-Мак-корміка (МПБМ) 1. Цільова функція Л та НП Я та НП Я га НП Я та НП Я та НП Я та НП Я та НП Я та НП Я та НП 2. Дозволяє працювати з обмежен- ням типу = Ні Я2 Я та НЛ Я Ні Я га НЛ Ні Ні Я 3 Дозволяє працювати з обмежен- ням типу > нл' Я та нл' Я та НЛ Яга НЛ Я та НЛ Я га НЛ Я та НЛ Я та НЛ Я та НЛ 4. Почат- кова точка Д Д Дта НД д Д Дта нд Внутр ішня Внутр ішня Внутр ішня 5. Дозволяє вирішувати неопуклі задачі Так Так Так Так Так Так Так Так Так 6 Швидк збіжності Низьк а Висок а Низьк а Серед ня Висок а Серед ня Серед ня Серед ня Висок а 7 Проміжні точки д д Дта нд д д д д д д 394
Дослідження операцій Умовні позначення: 1 метол неефективний при розв’язуванні задач з неліній- ними обмеженнями: * застосовується тільки для задач з лінійними обмеженнями. Л лінійні методи; НЛ нелінійні метоли, Д допустимі; НД недопустимі | -)***
іиїїченксі Ю.П. 6.4. МЕТОД 4ПРОКСИМУЮЧОГО ПРОГРАМУВАННЯ Метод апроксимуючого проірамування (МАП) грунтується на лінеаризації початкової задачі НП та її заміні на послідовність проміжних задач ЛП. Його називають також градієнтним методом з малою довжиною кроку на відміну від звичайних градієнтних методів [50]. Отже, нехай задачу НП задано у вигляді: мінімізувати /(х), (6.4.1) при обмеженнях: й,(х) = 0, / = І5й; (6.4.2) £,(х)>0, і = т + \.р. (6.4.3) Після лінеаризації в околі точки х(А) задача формулюється таким чином: р $ і (х(к )) .мінімізувати /(х)- /(х(А))= - -Дх,(А), (6.4.4) І с'х, за умови, що мають місце обмеження у вигляді рівностей: '^бй(х(А)) — - Дх,(А) = -Л,(х(А)), /=Іди, (6.4.5) /л охІ та нерівностей: Р (х(А')) ______ ------------ Дх,(А)>-5,(х(А)), / = т + 1,р, (6.4.6) і сх, Де Дх,(А) = х,-х,(Л). (6.4.7) Нехай х(А) - допустима точка в Л". Проведемо заміну в (6.4.2), (6.4.3) нелінійних функцій їх апроксимаціями в околі точки х(А). В результаті отримаємо співвідношення (6.4.5), (6.4.6). Далі розв’язуємо задачу ЛП, яка задасться цими співвідношеннями при такій додатковій умові: 396
Дослідження операцій д';(А)-|х,(А -*-1)-х/(А)|>0, у = 1,н- (6.4.8) де |л (А +1) г,(А)| - абсолютний приріст г(, а £,(А) - мала величина, яка обмежує довжину кроку при переміщенні в довільному напрямку і не дає змоги вектору х виходити за межі допустимої області іадачі (6.4.4). Розв'язання задачі (6.4.4) і урахуванням (6.4.5), (6.4.6) для різниці х-х(А) дає х(А - 1) = х(А)-(х-х(А)). Обчисливши х(А*1). повторює- мо згадану вище процедуру при поступовому зменшенні 0(А), щоб довести відхилення елементів х до величини, яка визначається прийнятим допуском, і намагаємося досягти такого стану, коли мінімізуюча поправка до знайденого на попередній ітерації значення /’(х) стає меншою від деякого наперед заданого числа. У задачі (6.4.4) додаткові обмеження для х можна ввести й іншим способом. Позначимо х-х(А) при х>х(А) через Л х(А) , а при х<х(А) через А х(А) . Тоді перш ніж реалізувати чергову апроксимуючу процедуру, потрібно врахувати обмеження, для допустимих переміщень у просторі розв’язків, які задаються такими співвідношеннями: Р,(к)&' х -(к) - % х ,(А)< т ,(А), / = 1,л , де Ру(А) = шах<1; ш(А) -х^к) (А) = тах; 1; лі, (А) лу(А)-/.у] ’ (6.4.9) (6.4.10) £ т^(кх) - максимальне допустиме переміщення вздовж /-Ї осі координат на к-му кроці; ЬІ ,и - нижня та верхня межі для змінної х;. Якщо д Л|(А) = 0, го Р;(л)Д‘х,(А) < лі((А) . Коли значення х,(А) близьке до своєї верхньої межі, тобто ЧІ -Хі = 0, то 397
Заиченко Ю.П. т т тахЛ;-------і---> =-----'--- (6.4 11) < «',"*,(*)) І, О1ЖЄ , Ат/(А) = х) -х;(А) < и - -х,(А), (6.4.12) або х <и,, що гарантує не перевищення змінною х, своєї верхньої межі. Аналогічні міркування для випадку, коли А х/(А)«0, показу- ють, що в цьому випадку х, > А, . Співвідношення (6.4.5), (6.4.6), (6.4.12) утворюють систему лінійних нерівностей та рівнянь, які підлягають розв’язанню методами лінійного програмування. Для цього розв’язання можна використати симплекс-метод, але спочатку погрібно звести всі обмеження до канонічного вигляду, ввівши ВПЬН! змінні, а потім і фіктивні. Поки на кожному кроці (ітерації) нові утворені розв’язки будуть допустимі, МАП працює досить швидко. Однак у випадку, коли на якомусь кроці вектор х виходить за межі допустимої області, процес пошуку суттєво сповільнюється У процесі розв’язування задач ЛП намагаються насамперед задовольнити обмеження, які не дають змоги вектору х(А) виходити за межі допустимої області, а потім намагаються поліпшити значення ц. ф., і саме цим МАП відрізняється від інших методів. Зазначимо деякі труднощі, які виникають при розв’язуванні задач НП методом МАП [50]. 398
Дослідження операцій 1. Оптимізація проходить дуже повільно* якщо намагатися зробити вектори х(А-1), х(к) та л-(А-І) допустимими або дуже близькими до допустимих. На рис. 6 10 наведено випадок, коли малий допуск при урахуванні обмежень приводить до того, що пошук оптимального розв’язку проходить при дуже малій довжині кроків і процес пошуку уповільнюється. Навпаки, при збільшенні допуску розв’язання задачі НП можуть лишитися недопустимими, якщо виникає потреба зупинки ЕОМ через обмеження ресурсу машинного часу. 2. Важко порівнювати між собою чергові вектори л(А) та х(А-1), які приводять до різних значень і по різному порушують множину обмежень. Наприклад, потрібно порівняти векюрп -+1) та л-(А). Нехай /(л-(А))< /(х(А-1)), але обмеження для х(А) порушується силь- ніше, ніж для л-(А-І). Відповісти на питання, якому з векторів х(А). л-(А -г 1) потрібно надати перевагу, дуже не просто 3. Якщо цільова функція характеризується великим ступенем нелінійносп, то напрямок пошуку оптимальної точки, який одержуємо, розв’язуючи лінеаризовану задачу, може бути обчислений досит ь неточно. 4. При використанні методу МАП важко придумати таку процедуру врахування вихідних даних, яка б прискорювала процес оптимізації
іаиченко Ю.ІІ. 6.5. МЕТОДИ МОЖЛИВИХ НАПРЯМКІВ Цей клас методів розв’язування задач НП грунт усі вся на переміщенні з однієї допустимої ючки до другої з кращим значенням цільової функції. Типова стратегія пошуку в алгоритмах цього класу полягає ось у чому Візьмемо поточну допустиму точку х(А) й знайдемо напрямок 5(А) такий, що при достатньо малих 2, виконуються такі дві умови І)ючка х(А)+2(54 є допустимою; 2) /(х(А)т2,54 )</(х(А )). Після визначення допустимою напрямку 5, розв’язується задача одновимірної мінімізації за параметром 2, іля знаходження оптимальної довжини кроку в напрямку 5(А). Далі переміщуємося в точку х(А-г 1) і процес пошуку повторюється. Метод Зойтендейка Типовим представником класу методів можливих напрямків є метод Зойтендейка На кожній ітерації методу знаходять можливий напрямок спуску, а потім проводять оптимгзацію вздовж цьою напрямку. Для викладення ідеї методу введемо ряд необхідних понять [2; 8]. Означення 6.1. Розглянемо задачу мінімізації /(х) за умови, що х є /?' , де К" - непорожня множина. Ненульовий вектор 5 зветься можливим напрямком у точці х є В" , якщо існує таке 6 > 0 , що х + 25 є Я'1 дзя усіх Л є (0,<5) . Вектор 5 зветься можливим напрямком спуску в точці х є /?" , якщо існує таке 8>0, що /(х^25)< /(х) та х + ДієП" для всіх Лє(ОЛ). Спочатку розглянемо випадок, коли обмеження лінійні і задача НП має вигляд; мінімізувати /(х), (6.5.1) при обмеженнях: Ах<Ь (6.5.2) Ях = Л, (6 5 3) 400
Дослідження операцій де Л = ||лн| - матриця порядку (л/хп); Н - матриця порядку (/хп); Ь — т -вимірний вектор; Л — /-вимірний вектор. Справедливе таке твердження. Лема 6.1. Розглянемо задачу мінімізації(6.5.1)—(6 5 3) Нехай х - допустима точка і припустимо, що Л,л- = Ь , Агх < Ь,,де 4' = (Л,7, А,Г), а Ь1 =(Ь7 ,Ь', ) Ненульовий вектор 5 е можливим напрямком в точці х тоді і тільки тоді, коли Л,5<0 і //5 = 0. Якщо, крім того, Л/(л-)г5<0, то 5 є можливим напрямком спуску Доведення цьої о твердження дуже просте Пропонуємо читачеві виконати цс самостійно. Проілюструємо геометричний образ множини можливих напрямків на такому прикладі. Приклад 6.3. Мінімізувати <»,-б)7 + (х,-2);, при обмеженнях: - х, + 2х, < 4; Зх, + 2х, < 12; -х, <0; - х, < 0 Виберемо х = [2,з)' і звернемо увагу на те, що перші два в цій точці. Зокрема, матриця л, ІЗ обмеження є активними наведеної вище леми 6.1 дорівнює Отже, вектор 5 є можли- вим напрямком тоді і тільки тоді, коли л,8<о тобто, якщо: - 5, + 25, < 0: 35, + 25, < 0 На рис. 6.11. зображено сукупність цих напрямків, які утворюють конус можливих напрямків. Тут 1 - конус можливих напрямків, 2 - конус можливих напрямків спуску; 3 - лінії рівня цільової функції; 4 - півпростір напрямків спуску. 40!
Зийченко Ю.П. Якщо вектор 5 задовольнж нерівність \7/(х)г5 =85, х25, < 0 , то він є напрямком спуску. Таким чином, сукупність можливих напрямків спуску визначається відкритим іпвпростором {(5і;5'2); -85, *252 <0} . Перетин конуса можливих напрямків з цим півпростором задає множину всіх можливих напрямків спуску. Побудова можливих напрямків спуску Нехай задано поточну допустиму точку л-. Як показано в лемі 6.1, ненульовий вектор 5 є можливим напрямком спуску, якщо \У(х)т 8 <0 А 5 < 0, //5-0 Цілком природно шукати такий найкра- щий напрямок спуску, який мінімізує 5/(.г)75 при умовах: а) Л,5 < 0 Ь) = 0 .Проте, якщо існує такий вектор 5* ,що У/(х)7 5* < 0, і виконуються умови а) та б), то оптимальне значення цільової функції сформульованої задачі дорівнюватиме х, оскільки обме- женням її задовольнятиме будь-який вектор 25*, де 2 - будь-яке велике число. Тому в задачу потрібно включити умову, яка б обмежувала вектор 5 . Таке обмеження називають нормуючим. Можливі різні форми нормуючого обмеження Нижче наведено три задачі відшукання (найкращого) напрямку спуску, в яких використовуються різні умови нормування [4]. Задача/^: мінімізувати 5 , при обмеженнях: А5 < 0; //5=0; -1<5, <1, у = Іді. Задача Р мінімізувати У/(х)' 5 , при обмеженнях: Л,5 < 0; //5 = 0; 5'5 < 1 402
Дослідження операцій Задача Р.. мінімізувати \7/(л-)7 5 , при обмеженнях: АД < 0: //5=0: У/(х)'5> І Як бачимо, задачі Р} і Р3 є задачами ЛП, отже, їх можна розв’язані симплскс-методом. Оскільки 5 = 0 с допустимою точкою в кожній з наведених вище задач, а значення цільової функції в цій точці дорівнює 0, то її оптимальне значення в задачах Р , Р,, Р, не може бути додатним. Якщо мінімальне значення ц ф в задачах Р., Р,, Р, від’ємне, го згідно з лемою 6.1 визначено можливий напрямок спуску. Водночас, якщо мінімальне значення цільової функції дорівнює нулю, го, як буде показано нижче, точка х є точкою Куна-Таккера Лема 6.2. Розглянемо задачу мінімізації /(х) при обмеженнях Ах <ЬНх-Іі Нехай х - допустима точка, в якій А,х = Ь , А,х < Ьг, де Аг =[А', А1, ]; ЬТ = [іф,Ь2 ] . Вектор х с точкою Куна-Таккера тоді і тільки тоді, коли оптимальне значення цільової функції в задачах Р,, Р,, Р3 дорівнює ну но. Доведення. Як випливає з теореми Куна-Таккера (розд. 5), х буде точкою Куна-Таккера тоді і тільки тоді, коли існують вектори и>0, V такі, що УДх) + Л> + //Ч = 0. (6.5.4) Згідно з наслідком із леми Фаркаша, система (6.5.4) розв’язна тоді і тільки тоді, коли система нерівностей V/(д-)7 5 < 0, А,5 < 0, //5 = 0 не мас розв’язків, тобто коли оптимальне значення цільової функції в задачах Р, Р2, Р3 дорівнює нулю. Отже, ми показали, як знайти можливий напрямок спуску. Нехай тепер х, - поточна точка; 5, - можливий напрямок спуску. За наступну точку хЛ1) вибирається х( + Л,5( , де довжина 403
Зайченко Ю.П кроку Л4 визначається розв’язанням такої задачі одновимірної оптимізації: .мінімізувати /(хл-Л4.54) по А4, (6.5.5) при обмеженнях: Л(х,- Лх 5,) < Ь, (6.5.6) Я(х,+ЛХ5,) = Л. (6.5.7) Припустимо, що А]х = Ь[.А,х<Ь2. Тоді задачу (6.5.5Н6.5.7) можна скоротити таким чином. Зауважимо, що Ях, = й, Я5, = 0. Отже, обмежен- ня (6.5.7) зайве. Оскільки Л,х =й|, <0,то Л,(х4 + Л,5,)<й1 для всіх Л>0 . Отже, лишається тільки одне обмеження Л,(х, + Л454)<й, , і задача оптимізації (6.5.5)-(6.5.7) зводиться до такої задачі одновимірної оптимізації: мінімізувати /(х, +Л454) по , (6.5.8) при обмеженні: 0 < Я4 < , де , |тіпф|5, > 0}, якіцо 5, > 0; (6.5.9) [ оо, якщо 5, < 0 для всіх і, Ь=Ь2-А2хк, 5 = Л25х. (6.5.10) Алгоритм методу Зойтендеіїка у випадку лінійних обмежень Нехай потрібно знайти тіп /'(х), при обмеженнях: Ах <Ь,Нх = 0. Алгоритм методу складається з попереднього га основного етапів. Останній, в свою чергу, складається з однотипних ітерацій. Попередній етап. Знайти початкову допустиму точку, для якої Ах. < Ь. Нхі = й . Покласти к = 1 і перейти до основного етапу. 404
Дослідження операцій Основний етап, к -та ітерація. Перший крок. Нехай задано вектор х, . Припустимо, що А^ = Ь{ і Л,х, <Ь, . За можливий напрямок спуску взяти оптимальний розв’язок такої задачі: мінімізувати ку(х4)г5, (6.5.11) при обмеженнях: Л,5<0; (6.5.12) Н5 = 0; -1<5,<1, / = І7. (6.5.13) Якщо у/(л-4)г5‘ =0, то зупинитися, і хк - оптимальний розв’я- зок (точка Куна-Таккера). У супротивному разі перейти до другого кроку. Другий крок. Покласти Я,. таким, що дорівнює оптимальному розв’язку наведеної нижче задачі одновимірної оптимізації: мінімізувати /(х( + Я$4) , при обмеженні 0 < Я < Ятм , де Я так задається формулою (6.5.9). Для розв’язання цієї задачі можна застосувати будь-який метод одновимірного пошуку, наприклад, метод Фібоначчі. Обчислити х, , = х( + Я,. , визначити нову множину активних обмежень для розв’язку х4і| і перевизначити Л) і А,. Замінити к на Л+1 і перейти до першого кроку наступної ітерації. Задачі з нелінійними обмеженнями-неріеностями Розглянемо задачу, у якій допустима область задається системою обмежень-нерівностей нелінійного типу: мінімізувати /(х), (6.5.14) при обмеженнях: (х)<0, і=Л.т. (6.5.15) Достатні умови, за яких вектор хк є можливим напрямком спуску, сформульовано в такій теоремі [2; 18]. 405
Зайченко Ю.П. Теорема 6.2. Розглянемо задачу НП (6.5.14), (6.5.15). Нехай хк допустима точка, а ./ множина індексів активних обмежень в цій точці, тобто У = (л-х) = 0). Припустимо, крім того іцо функції /(х),£,(х) дзя іеЗ диференційовні в точці X* , а функції дія і е V неперервні в цій точці. Якщо \7р(хк)' 5 <0 , \/^І(х1)' 8 <0 при і є .1, то вектор 8 є .можливим напрямком спуску. Доведення Нехай вектор 5 задовольняє нерівності УУ(хл)'5<0, У^,(л-А )7 5 < 0 при і є./. Спочатку зазначимо, що для іі^ виконуються нерівності &,(ХА)<0 і оскільки & (х) неперервні в точці х, , то £, (х* +2£) <0 для досить малих А > 0. Внаслідок диферен- ційовності функції &,(х), ієУ маємо у,(хА тЛ$) = = £,(х*) + А\7§І(хк)Т8+ Л||8||а(хА ,Л5>) , де а(хк ,Л5) -> 0 при Л->0. Оскільки \7у, (л\)' 5 < 0, то у (х, * л5\) < (хА) = 0 при досить малих 2>0. Отже, точка хк + допустима для малих значень А Аналогічно із У/\хк)7 8 <0 випливає, що для досить малих Л>0, Дхк + А8к)</(хк). Таким чином, вектор 8к є можливим напрямком спуску. На мал. 6.12 показано сукупність можливих напрямків у точці х. Тут використані такі позначення: 1 - перше обмеження, 2 - третє обмеження, 3 — четверте обмеження, 4 - друге обмеження, 5 можливі напрямки спуску, 6 - лінії рівня цільової функції. Вектор 5, що задовольняє рівність 7#,(х, )г$-0, дотичний до кривої лінії (або Рис. 6 12 поверхні) #,(х) = 0 Оскільки функції &,(х) нелінійні, то рух в напрямку такого вектора може привести в недопустиму точку, що спонукає вимагати виконання строгої нерівності ^#,(х,)’ 5 <0, /є У Щоб знайти вектор 5, який задовольняє нерівності У/(х)' 5 <0 , 406
Дослідження операцій для іє./ , цілком природно мінімізувати максимум з величин у/(.г4)г5 та ^'^і(лд)г5 для /є У Позначимо цей максимум через г . Викорставши нормуючі умови -1 <5( < 1, для усіх І = 1,л , приходимо до такої допоміжної задачі пошуку можливого напрямку спуску: мінімізувати г, (6.5.16) при обмеженнях: ?І\х,)Т 5-г<0, (6.5.17) \?^,(х4 )г5-г < 0, /єУ, (6.5.18) - 1 < < 1 і = 1, п . (6.5.19) Нехай (г',5’) - оптимальний розв’язок цієї задачі ЛП. Якщо г* <0, очевидно 5* - можливий напрямок спуску. Якщо ж г*=0, то, як буде показано нижче, точка хІі є точкою Куна-Таккера. Доведемо це твердження. Оптимальне значення цільової функції г в задачі (6.5.16)—(6.5.19) дорівнює нулю тоді і тільки тоді, коли система нерівностей V/(х4)' 5 < 0, V#, (х,. / 5 < 0 при і є 3 несумісна. Однак тоді, згідно з лемою Фаркаша, для того щоб ця система не мала розв’язків, необхідно і достатньо, щоб існували такі числа п0 > 0, и, > 0, і є У , що іє./ (6.5.20) та або ип > 0 , або и, > 0 для деякого і є У , а це одна з умов оптимальності теореми Куна-Таккера. Алгоритм Зойтендейка у випадку нелінійних обмежень-нерівностей Попередній етап. Вибрати точку х, для якої §,(х)<0, /=І,ш. Покласти к = 1 і перейти до основного етапу. 407
Заіїченко Ю П. Основний етап. Перший крок. Покласти 7 = {/:§,(хЛ)=0| і розв’язати задачу: мінімізувати г, (6.5.20) при обмеженнях: 7/(хі)г5'-г<0, (6.5.21) У5і(л-Дг5-г<0, -1<5/<1,/=Гй. (6.5.22) Нехай (гА, ) - оптимальний розв’язок задачі (6.5.20) - (6.5.22). Якщо гА = 0 , то кінець алгоритму і точка хк - оптимальний розв’язок такої задачі одновимірної оптимізації. Якщо г< <0 , то перейти до другого кроку. Другий крок: мінімізувати /(л-4+Л5а), (6.5.23) при обмеженні 0 < X < , (6.5.24) де =8іір(/і :^ (л\ ь/А’,) < 0, 1 = 1,т}. (6.5.25) Покласти л- = , замінити к на к +1 і перейти до першого кроку наступної ітерації. Приклад 6.4. Розглянемо задачу: мінімізувати (2л,: + 2 л; - 2л,л, - 4л, - 6л.), при обмеженнях: Л) + 5л, < 5; 2 л '-х, <0: -л, <0; - Г, < 0. Будемо розв’язувати цю задачу методом Зойтендейка, починаючи пошук із точки Л1 = [0.000;0 75]' Зазначимо, що Г/(.л) = [4л, - 2л. - 4; 4л. -2 л - 6]' . Перша ітерація. Перший крок. У точці л, =[0.000,0.75]' маємо 7/(1 ) = [-5.5;-3.0]' . а множина індексів активних обмежень С 7 = [Зі . При цьому 7^(л,) = [-і:0|' . Задача пошуку можливого напрямку мас вигляд: мінімізувати г. 408
Дослідження опеїхічій при обмеженнях: 5.55, 3.05,-г50; 5, :<0: -1<5,<1. / = Ї2. Можна перевірити, розв’язуючи цю задачу симплекс-методом, що оптимальним розв’язком її є вектор 5, = [! 00 1.00]’ І г, =-1.00 . Другий крок. Лінійний пошук. Довільну точку у напрямку 5, =[і.оо:-і.оо]' із точки V, = [0.000:0.~5' можна зобразити у вигляді ї, +Х5, = |Х:0.75, а відповідне їй значення цільової функції дорівнює /(і+Х5д = « +2.5А-3.375 Максимальне значення х, для якого точка ,Ї| + Х5’ ще с допустимою, дорівнює Х,.,1х=04і4. Отже, розв’язуємо задачу одновимірної мінімізації: мінімізувати 62’-2.5Л-3.375, при обмеженні 0<Х<0.4і4. Оптимальне значення х; = о.2О83. Отже: г, =.г, + Х'5, =|0.2083;0.54і7|‘ Друга ітерація. Перший крок. У точці .г, маємо УДг2) =[-4.25:-4.25Ї АКТИВНИХ обмСЖСНЬ В ЦІЙ ТОЧЦІ НЄМИЄ, ТОМу задача пошуку напрямку спуску має вигляд: мінімізувати 2, при обмеженнях: -4.255, -4255 <0; - 1 < 5, <1, у = 1,2. Оти.Ма.ТЬНИМ РОЗВ’ЯЗКОМ Є ВСКТОр 5, = [1.0:1 0|', а _, = -8.5 . Другий крок. Неважко перевірити, що ю ____ для якого точка і + Х5. допустима, дорівнює Л: 0.3472. При цьому активним стає обмеження х‘ і х +5л-. <5. Оптимальне значення X, знаходимо оз . \2 / в результаті розв’язання задачі: / мінімізувати /(л, + Х5-) = 1Д - 8.52 - 3.6354 . У при обмеженні: 0 < X < Хт„ = 0.3472 . —--------------• Воно дорівнює 0.3472, так що і, =.і.+Х-Х, =[0.555:0.889]' Всі наступні ітерації Рис 613 . виконуються аналогічно. Результати 18і 409
іаііченко Ю.П. виконуються аналогічно. Результати обчислень на перших чотирьох ітераціях методу наведено в табл. 6.5. На рис. 6.) З показано процес пошуку оптимуму. Зазначимо, що наступною точкою буде г, = \4 + х4х4 =|0.б30;0.874]г, а значення цільової функції в цій точці дорівнює — 6.544, тоді як в оптимальній точці = Р.6589;О 8682]' тначення ц. ф. дорівнює -6.559. Таблиця 6 5 А ** /(ч) Пошук напрямку Лінійний пошук ) х А».і 1 0.00; 0.75 -3.375 -5.50. 3.00 1.000; 1.000 -1.000 04140 0 2088 0.2083; 0.5417 2 0.208; 0 541 -3 635 -4 25, 4 25 1.000; 1.000 -8.5 0.3472 0.3472 0.555; 0.889 3 0.555; 0.889 -6.346 -3.556, 3.555 1.000; 0.533 -1.663 0.0924 0.0924 0.648; 0.840 4 0.648, 0.840 -6 468 -3.088; 3.937 0.517; 1.000 -2.340 0.0343 0 0343 0.630; 0.874 Метод можливих напрямків для нелінійних обмежень-нерівностей та рівноетей Метод можливих напрямків можна модифікувати на випадок, коли крім обмежень нерівностей є нелінійні обмеження-рівності. Для ілюстрації вдамося до рис. 6.14, якому відповідає єдине обмеження- рівність. Для заданої допусі имої точки хк в цьому випадку не існує нснульового напрямку 5 такого, що й(хк + Л£) = 0 при А.є(0.б), для якої о й>0 Цього ускладнення можна уникнути, якщо рухатися вздовж * ^л(гх) дотичного напрямку , д,ія якого 2 ^Л(х4)75а. =0 , а потім скориіувати не ' переміщення і повернутися в допустиму л(О = о область (рис. 6.14.). Рис б 14 410
Дослідження операцій Пояснимо цей підхід на прикладі: мінімізувати /(х), (6.5.26) при обмеженнях. £, (х) <0, і = 1, т , Л,(х) = 0, і-т+\,1. (6.5.27) Нехай х, - допустима точка і У = {і: в, (х,) = 0} вати таку задачу ЛП: Будемо розв’язу- мінімізувати УДХц/З, (6.5.28) при обмеженнях: У^Дх, )г5<0, /єУ, (6.5.29) V/?, (х4 ) 7 5 = 0, і = т + \,1. (6.5.30) Шуканий напрямок є дотичним до обмежень-рівностей і до деяких активних нелінійних обмежень-нерівностей. Лінійний пошук вздовж 5, і наступне повернення в допустиму область приводять в точку х4Н , після чого процес пошуку повторюється. Одним із суттєвих недоліків розглянутого варіанта методу є те, що, якщо точка х4, яка задає поточний розв’язок, буде близькою до межі, заданої деяким обмеженням, а воно не використовується в процесі знаходження напрямку руху, то може статися, що зробивши лише невеликий крок, ми опинимося на межі, що задається цим обмеженням. Тому стає доцільним розширити множину активних обмежень , визначивши її так: У = {і: (х) т £ > 0}, де е > 0 - досить мале число. 18*
Іаиченко Ю.П Модифікація методу можливих напрямків Аналіз алгоритму Зойтендейка показав, що він не обов’язково ібіїається до точки Куна-Таккера. Причина цього полягає в тому, що довжина кроків вздовж генерованих напрямків може наближатиея до нуля, спричиняючи «застрявання» процесу в неоптимальній точці. Щоб уникнути цього Топкінс іа Кейнотт [4] розробили модифікацію методу можливих напрямків. Ця модифікація гарантує збіжність алі оритму до точки Куна-Таккера. Отже, розглянемо задачу мінімізувати /(х), при обмеженнях: £,(х)<0, і = 1,т. При заданій допустимій точці х можливий напрямок знаходять, розв’язуючи таку задачу ЛП: мінімізувати г. (6.5.31) при обмеженнях: ?/(х)75-г<0, (6.5.32) 57#((х)75-з <-«,(х), і = 1,т, (6.5.33) -1<5, <1, /=й (6.5.34) Як бачимо, в цій модифікації при визначенні напрямку руху враховуються всі обмеження як активні, так і неактивні. На відміну від методу можливих напрямків, що описаний раніше, туз немає раптової неочікуваної зміни напрямку при наближенні до межі множини допустимих рішень, яка визначається неактивним обмеженням у даній точці. Дано опис модифікованого алгоритму можливих напрямків. Початковий етап Вибрати початкову точку х , дія якої #,(х )<() при і = 1, т Покласти А = 1 і перейти до основного етапу. Основний етап Перший крок. Взяти (г»,5() таким, що дорівнює оптимальному розв’язку задачі ЛП: мінімізувати ?, (6.5.35) при обмеженнях: \7/(л-()'5 г<0, (6.5.36) 412
Дослідження операиш У^,(хл)'5-г< К,(л-А), / = !,»>, (61.5.37) -1<5, <1, У = Г^. (6.5.38) Якщо г4 =0,то зупинитися, хк є точкою Куна-Таккера. У проти- лежному випадку (при г( < 0) перейти до другого кроку. Друї ий крок. Покласти таким, що дорівнює оптимальному розв’язку задачі: мінімізувати /(л-а+Л5а), (6.5.39) при обмеженні 0 < X < Хт„ , де Лтах = $ир{Я : &,(хд + ЛДк) < 0, / = 1. пі} (6.5.40) Покласти хд,, =хд+^5д , замінити к на А + І і перейти до першого кроку. Приклад 6.5. Розглянемо задачу: мінімізувати (2х,3 + 2х2 - 2х,х2 - 4х, - б.г,), при обмеженнях: х, + 5л, < 5, 2х/ — л2 <0, - х, < 0, -х2<0. Застосуємо для розв’язання модифікований алгоритм можливих напрямків. Виберемо за початкову точку г, =[0.000;0.75)'. Зауважимо, ЩО В ЦІЙ ТОЧЦІ 7/(х,) = (4х,-2х,-4;4х,-2х,-6] = ]-5.50;-3 00) , а ГраДІЄНТИ функцій-обмежень відповідно дорівнюють [1.5]’; [4г,, 1]’ [ 1:0]' ;[0; І]’ • Перша ітерація. Перший крок. У точці х, = [о.ооо; о,75]’ маємо У/Чх,) =(-5.50:-3.00]. Задача пошуку напрямку спуску має вигляд: мінімізувати г , при обмеженнях: 182 413
Заіічеііко Ю.П -5.55, 35 .-г<0, а + 55.-г <1.25, -5. -г<0.75, -5, _<0. -5, --<0.75. -1<5, 51. / = І2 У правій частин обмежень цієї задачі, крім першого, стоять значення £,(л). Зауважимо, ЩО одне 3 обмежень (-5,-150.75) повто- рюється двічі, отже, одне з обмежень можна опустити. Оптимальним розв’язком ЦІЄЇ задачі Є вектор 5, =[0.7143: 0 03571, для ЯКОГО г = -0.7143. Другий крок (лінійний пошук). Розв’язуємо задачу: мінімізувати /(.V, + Л5,) = 0.9721' 4.0367.-3.75 . .Максимальне значення 1„ич, для якого точка т-15, допустима, визначається співвідношенням (6.5.40) і дорівнює 1га;„ =0.84. Тоді оптимальним розв’язком задачі (6.5.41) буде 7. о«4. Таким ЧИНОМ, г, = V, + 1"5, = [0.60: 0.72]' . Друга ітерація. Перший крок. У точці г, маємо ^(л;)=[-з.04:-4.32іг • За напрямком 5, вибирається оптимальний розв’язок такої задачі: мінімізувати г, при’обмеженнях: -3 045 -4.325 -г<0. 5,+55.-7<0.8. 2 45. -5, --<(). -5. -г<0.6. -5 --<0.72, -І <5, <1,/ = ї?2. Оптимальним розв’язком цієї задачі є вектор 5- = [-0.07123; 0 1107]' г, = -0.2877 . Другий крок. Максимальне значення і., для якого точка г, + 7.5 допустима, дорівнює = 1.562. Можна перевірити, що /(л, - 7.5,) - 0 0547. - 0.28761- 5.8272 досягає міні- рис 6 15 414
Дослідження операцій муму на відрізку О < л < 1 562 у ТОЧЦІ /,, = І 562 . Отже х = х, + Ґ-Х, = (0489: 0.902|'. Далі цей процес повторюється. У табл. 6.6 наведено результати обчислень на перших п'яти ітераціях. Траєкторію руху точки, яка задає поточний розв’язок, наведено на мал. 6.15. Наприкінці п'ятої ітерації одержано точку [0.655 0.858]' із значенням цільової функції - 6.559. Зауважимо, що в оптимальній точці [0659: о.8б8|' значення цільової функції дорівнює -6.613. Таблиця 6 6 к -V* /(х,) Перший крок Другий крок л*+і 1 0.00; 0.75 -3.375 -5.50; -3.00 0.714; -0.0357 -0.714 0.84 0.84 0.600; 0.720 2 0.600; 0.720 -5.827 -3.04; -4.32 -0.0712; 0.117 -0.288 1.562 1.562 0.489; 0.902 3 0.489; 0.902 -6.145 -3.849, -3.369 0.0957; -0.0555 -0.1816 1.564 1.564 0.6385; 0.8154 4 0.6385; 0.8154 -6.343 -5.63; -4.02 -0.016; 0.0433 -0.0840 1419 1.419 0.616; 0.877 5 0.616; 0.877 -6.508 -3.29; -3.725 0.0268; -0.0132 -0.0303, 1.455 1.455 0.655; 0.858 18**
іаіічснко Ю.П. 6.6. МЕТОД ПРОЕКЦІЇ ГРАДІЄНТА РОЗЕНА Як зазначалося раніше, напрямком якнайшвидшого спуску є антіпрадієнт цільової функції. Однак при наявності обмежень рух вздовж напрямку якнайшвидшого спуску може привести в недопустимі точки. У методі проекції градієнта, запропонованому Розеном, антиградієнт проектуєгься таким чином, що значення цільової функції поліпшується і водночас забезпечується допустимість точок траєкторії руху. Перш ніж викласти метод, розглянемо деякі необхідні понятгя із проективної геометрії [2]. Означення 6.2. Матриця Р порядку зветься матрицею проектування, якщо Р=РТ і РР=Р. Справедливі такі твердження, що визначають властивості матриці проектування 1. Якщо - матриця проектування, го вона додатньо напіввизначена. 2. Для того щоб Р була матрицею проектування, необхідно і достатньо, щоб З - Р була матрицею проектування 3. Нехай Р - матриця проектування, а 2 = 7 Р Тоді підпрос- тори Ь = {Рх х є та £, = {()х :х є £„} ( ортогональними. Крім тою, будь-яку точку хє£„ можна представити однозначно у вигляді р + д , де рє Ь,д є Ь,. Доведення. 1. Нехай Р - матриця проектування, а х - довільна точка із £„ Тоді х' Рх = хтРт Рх = ||Рх|| > 0, отже, Р - додатньо напіввизначена. 2. Справедливість другого твердження випливає із визначення матриці проектування. 3. Ясно, що £ та £ - лінійні підпростори. Зауважимо, що Рг0=Р(3 Р)=Р РР = 0 , і, отже, £ та Ц - оріогональні Нехай тепер х — довільна точка із Еп. Тоді х = ,/х = (Р + ())х = Рх і Ох = р + д , де р є Ь.д є £.. (6.6.1) Покажемо, іцо це представлення єдине. Припустимо, що 416
Дослідження операцій х~р'±ч' , де />'єі, ї'єі . (6.6.2) Порівнюючи вирази (6.6.1) та (6.6.2), одержимо р р'=ч ч Отже, р р' є і, ч ч'є /-і і оскільки єдиною точкою перетину І та Ь є початок координат, то р - р' = ч~ч' = 0 • Таким чином, представлення х єдине. Задачі з лінійними обмеженнями Розглянемо задачу НП: мінімізувати /(х), (6.6.3) при обмеженнях: Ах<В, Нх = й, (6.6.4) де А - матриця порядку тхп ; В - /и-вимірпий вектор; Л - /-ви- мірний вектор; функція / (х) диференційовна. У заданій допустимій точці х напрямком якнайшвидшого спуску є вектор у/їх). Однак рух вздовж напрямку -уу(х) може порушити допустимість. Щоб її зберегти, спроектуємо -уу(х) так, щоб рухатися вздовж напрямку5 = -РУ/(х),де Р - відповідна матриця проектування. У наведеній нижче лемі дано вигляд відповідної матриці проектування Р і доведення того, що -Р^/(х} є можливим напрямком спуску. Лема 6.3. Розглянемо задачу (6.6.3), (6.6.4). Нехай х - допустима точка, для якої А х = Ь}, А,х < Ь2 , де А1 =[А} ;А2 ] , а ЬТ = [ь';Ьтг\. Крім того, припустимо, іцо функція / диференційовна по х. Якіцо Р - матриця проектування така, що РУ/(х} * 0, то вектор 8= РУ((х} с напрямком спуску для функції /(х) у точці х. Крім того, якіцо МТ = [А' ,НТ ] мас повний ранг і якщо Р = 3 МТ(ММГ)'М, (6.6.5) то 5 - можливий напрямок спуску. 183 417
кінченім Ю.П. Доведення. Зауважимо, що УГ(л)'5 -У/(х)'РУ/(л) -Ч/Іх}' Р' РУДх} = -||РУ/(х)| <0 (6.6.6) Таким чином, згідно з лемою 6 1, вектор 5= /Л7(х) є напрямком спуску Крім гою, якщо Р=3-МГ(ММ') 'м, го М8 = МРУ/(х) = 0 так що -15 = 0 і /75 = 0. Згідно з лемою 6.1, напрямок 5 буде в цьому випадку можливим Зауважимо, що матриця Р, яка визначається виразом (6.6.5), дійсно < матрицею проектування, яка задовольняє рівність Р - Рт і РР - р Крім тою, Л//’ = 0, тобто А,Р - 0, НР = 0. Таким чином, матриця Р проектує кожний вектор-рядок матриць А , Н в нульовий вектор. Оскільки рядками матриць А, Н є ірадієнти функцій активних обмежень, то Р - цс матриця, що проектує ірадієнти функцій активних обмежень в нульовий вектор. На рис 6.16 показано процес проектування градієнта для задачі з обмеженнями-нерівностями. На ньому позначено 1 - лінії рівня цільової функції; 2 - оптимальний розв’язок. У точці х активним є тільки одне обмеження, градієнт якого до- рівнює .4,. Зазначимо, що 5= - РУ/\х) - можливий напрямок спуску. Коли РУ/(х)^0, то, як щойно показано, вектор Х = Р^/(х) є можливим напрямком спуску. Розілянсмо тепер випадок, коли РУ/(х) = 0. Годі: 418
Дослідження операцій руДх) = \./-М7(ММ7) ММ(х)^^(х) + Мтн’ = ^(х)~АІ и-Нтг = О, (6.6.7) де и>г = (Л/Л/') ІЛЛ7/(х) = [н,,рт]. Якщои>0, то гонка х задовольняє умови Куна-Таккера. Якщо ж и, <0, то, як покажемо нижче, можна вишачити нову матрицю проектування Р, таку, що вектор 5 = -РУ/(х) буде можливим напрям- ком спуску. Теорема 6.4. Розглянемо задачу НП (6.6.3), (6.6 4) Нехай х - допустима точка, для якої' А х-Ь.,А1х<Ь1 , де А7 = [АГ , Я[ ] , а Ьт =[Ь!:Ь'1\. Припустимо, що М7=\А7,Н7} - матриця повного рангу і Р-д-М7(ММ7} М Далі припустимо, що Р^[(х)-Ц , м,? = (Л/Л/?) МХП (х) = [и1 'V7 \. Якщо ч>0,то х с точкою Куна- Таккера У супротивному разі нехай деяка компонента и вектора и від'ємна, а М7 =[А7 .Н1 ] . Тут АІ одержали із матриці А , викреслюючи рядок, що відповідає и,. Позначимо Р -,1- М‘(ММ' >^М , і нехай Я - -Р^Т(х). Тоді вектор 5 є можливим напрямком спуску. Доведення. Розглянемо співвідношення (6.6.7), яке справедливе у випадку, коли РУ/(х) = 0. Якщо и>0, зо точка х - це точка Куна-Таккера (тобто оптимальний розв’язок). Припустимо, що Зі, и, <0 , і нехай и <0 Покажемо, що РУ/(х)*0 . Припустимо супротивне, тобто, що А7(х)-0 . Покладемо = ДММТ)~‘ МУ^х) За означенням Р магмо: РУ/(х)=[./-М7Л7Л/г) *Л/)У/(х) = УЛл,) + Л/гйг = 0 (6.6.8) Зауважимо, що вектор (А7и - Н7у) можна записати у вигляді Мтйй + и , де г/ є у-м рядком матриці Я,. Таким чином, із (6.6.7) маємо: У/(х)+Л/7’щ+и// =0- (6.6.9) 18*** 419
ііінченко Ю.П. Віднімаючи (6.6.9) від (6 6.8), одержимо Л/'(й>-йі) и г' =0 Оскільки ц * 0, то це суперечить припущенню, що матриця М ма< повний ранг. Отже, РУ/(х)/0 і згідно з лемою 6.3 вектор 5 < напрямком спуску. Покажемо тепер, що 5 можливий напрямок (спуску). Зауважимо, що МР = 0, гак що 4 1 ' 5 = М8 = - МР\((х) = 0 . (6.6.10) Н 1 Згідно з лемою 6.3, вектор 5 с можливим напрямком, якщо 15<0 і //5-0 Щоб переконатися в тому, що 5 - можливий напрямок, достатньо, враховуючи (6.6.10), показати, що Помножимо (6.6.9) на г/р Враховуючи, що РМг = 0, одержимо: г^І \х) +Г'Рііїґїї + и ГГ) = -Г)8 іі'ГРі-Т =0. (6.6.11) Згідно з властивістю 2, матриця Р додатньо напіввизначена, так що г, Рг] > 0 . Оскільки и; < 0, то із (6.6.11) випливаї /-,5 < 0. Алгоритм методу проекції градієнта (випадок лінійних обмежень) Отже, нехай задано задачу НП у вигляді: мінімізувати Дх), при обмеженнях: Ах < Ь , Нх = !і. Попередній етап. Вибрати точку х, , для якої їх, <Ь і Нх, =Іі Запишемо АТ і Ь' у вигляді АТ =[Л,Г; А[ ] і ЬТ = \ЬТ,Ьт2 ] відповідно А х = Ьц А2хі < Л, Покласти А = 1 і перейти до основного етапу. Основний етап. Перший крок. Покласти М' =[4Г, Нг] Якщо И = 0, тобю ис містить жодного стовпця, го покласти Р .І 420
Дослідження операцій У супротивному разі покласти Р-.! Л/'(А/Л/') 'М . Покласти = />\;'/(хЛ). Якщо 5, *0, го перейти до іругого кроку. Якщо 5, =0 та V/= 0, то зупинитися. Коли ж А/* 0, то покласти »г = -(Л/Л/') 'Л/У/(хА). Нехай IVі =[нг,г'| Якщо и>0, то зупини- тися; хІ - гочка Куна-Таккера. Інакше, вибрати від’ємну компонен- ту і/; цього вектора і знову визначити матрицю /1,, викресливши рядок, що відповідає та повторити перший крок. Другий крок. Вибрати за \ оптимальний розв’язок такої задачі лінійного пошуку; мінімізувати /(х0+Л5,), при обмеженні: 0 < А < , де А^.,, визначається м ідно з співвідношенням: ^"тах якщо існує таке і, що 8, > 0, (6.6.12) якщо 5 <0, для всіх / Ь = Ь, -А2хк; 5 = /1,.5А. Покласти х(11 = х, + Ац5, , замінити к на Аті і перейти до першого кроку. Приклад 6.6. Розв’язати методом проекції градієнта задачу: Мінімізувати: /(х) = 2х; + 2х; -2х,х, -4», -бх, . при обмеженнях: х, + х, < 2. А-, + 5х2 £ 5, - х, < 0. -л, £0 Виберемо за початкову точку [0. о|'. Перша ітерація. Перший крок. У точці х, = 10,0]' маємо У/(х,) |-4. б]'. Крім того, у точці х, активними є тільки обмеження невід’ємності, гак що 421
Зайченко Ю.П. 4 = О О 1 5 Год г /• = 2 - л,' <л, л,' х1 л, = 5,=-РУ/(х) = [О 0]' . Враховуючи, задачі відсутні, обчислимо о о що обмеження-рівності іі=і/ = -(А,А )',А,У/(Х,) = [-4;-6]'- Виберемо н, = -<! і усунемо рядок, який відповідає четвертому обмеженню із л,. Матриця л, перетвориться до вигляду Л. =[ 10]. Перетворена Р = У-Л (Л,Л,')Л, = 5,=-РУ/(х) = матриця о проектування мас вигляд напрямок руху з визначається вектором 0 0 в X 0 6 о о 0 |0 Другий крок Лінійний пошук. Довільну точку, рухом із точки х, в напрямку 5 , можна зобразити ді х2 = х,+25, =[0; 62]7 . Відповідне їй значення ц. ф. утворену у вигля- дорівнюс Цх > = 722-362- Максимальне значення X, для якого точка х+25 допустима, визначається згідно з (6.6 12) і дорівнює: , Г 2 5 1 1 д„„ = тіп<—. — > = —, т" 16 ЗО) 6 отже, х." є оптимальним розв’язком такої задачі: МІНІМІЗуваТИ 72)? 36/. , при обмеженні: о<х<1/ і дорівнює X" -, так шо *, = х, + 2,°5 = [0; 1]' • Друга ітерація. Перший ^/(х)=[-о. 2|' • Крім гою, в цій обмеження, тому одержимо: 5 0 крок. У ТОЧЦІ г,=|0:1|' маємо точці активними є друге і трете о о Далі обчислюємо р = з - а' (а,а! >' л, = і тому Р7Г(.г. ) = |0:0Г . 422
Дослідження операцій Обчислюємо: »= (Л,4,') ‘4^Дл,) -Г1 15 Оскільки и,<о,то відповідний рядок [ 10| викреслюється ІЗ 4, і одержимо матрицю а, (1.5]. Матриця проектування і відповідний напрямок визначаються гак: 25 Р = л а (й 4,') 4 = 26 .26 -5 26 25 26 [їгл]' Оскільки для вибору напрямку 5 довжина вектора не має значення, ТО вектор уу еквівалентний вектору 5, = [$;-]]' . Другий крок. Лінійний пошук. Отже, розглянемо точку і-X]т , в якій значення ц. ф дорівнює- /(а'?+АЛ2)~62/.2- 28А.-4. Максимальне значення х , для якого точка х2-)Ді допустима, відповідно до (6.6 12) дорівнює: х„,„=тіп 1.1 =1. Таким чином, визначається із розв’язку іакої задачі: мінімізувати 62Х -28Х 4 . при обмеженні: о $ X . Оптимальним розв’язком її є 1°, = —, так що .. _Г35 24 31 ’’[зї’1ї. Третя ітерація. Перший крок. В точці г = 22 — 3 ІЗі'ЗН обчислюємо. 7Г(Л- )-і 22-122 . 3 31’ зь Крім того, в цій точці активним є друге обмеження, тобто 4 =[1:5]. Знаходимо матрицю проектування _ , . , і Г 25 - 51 і 26 [- 5 І ] напрямком пошуку 5, =-Ру/’(.г, ) = [(); ()]' Далі обчислюємо »= ІАІ А[) 1 А у/-(х,) = 2у > О' 423
Зііпчеико Ю.П. Отже, точка х, оптимальна. Зауважимо, що градієнт функції активного обмеження в цій точці протилежний за знаком у/(х,) і у/(х,) + іА7#(х,)=о для „ . Тому _г, - точка Куна-Таккера. Оскільки /”(х) опукла, го точка х, є точкою глобального оптимуму. Процес розв’язку задачі наведено на рис. 6.17. 6.7. МЕТОД ЗВЕДЕНОГО ГРАДІЄНТА Метод зведеного градієнта (МЗГ) грунтується на скороченні вимірності задачі за допомогою представлення всіх змінних через множину незалежних змінних. Вперше його запропонував Вулф в (1963) для задач лінійного проірамування з лінійними обмеженнями. Пізніше цей метод було узагальнено на випадок нелінійних обмежень. Отже, розглянемо таку задачу: мінімізувати /(х), (6.7.1) при обмеженнях: Ах-А0, (6.7.2) х>0, (6.7.3) де матриця А - матриця порядку т*п рангу т\ Аь - лі-вимірний вектор, а функція /(х) неперервно диференційовна. Зробимо таке припущення щодо нсвиродженості матриці А . Будь-які т стовпців А лінійно незалежні, і кожна крайня точка допустимої області має рівно т додатних змінних і не більш як п - т нульових ком- понент. Нехай х - допустима точка. За припущенням про невиродженість мат- рицю А можна записати 424
Дослідження операцій у вигляді [В, ТУ], де В - невироджена матриця т *т , а вектор х‘ = [х',х( ], де хв>0 - базисний вектор, а xV небазисний вектор. Нехай У/(х)' = р\/(х)7Л\/(х)'|, де Ув/(х) градієнт функції /(х) по базисних змінних. Нагадаємо, що напрямок 5 є можливим напрямком спуску для функції /(х) у точці х, якщо їТ'Сх/ 5 <0, А8 = 0 га 5( >0 , якщо х> = 0 Визначимо можливий напрямок спуску 5 у розглядуваній задачі. Запишемо вектор 5 у вигляді [5^,5,(]. Зауважимо, що рівність А8 = В8в + Л5Л = 0 автоматично виконується, якщо для будь-якого 5Л покласти $в = -В~^Дк. Позначимо через гг =[г^] = У/(х)г-Ув/(хУ В 'Л = [0,УЛ,/(х)г-Ув/(х)7« 1 ТУ] (6.7.4) зведений ірадієнт. Дослідимо У/(х)75: У/(х)75 = Ув/(х)г5в+Ух/(х)г5Л = [Уу/(х)7-Ув/(х)7В Л']5Л = <5Л- (6.7.5) Необхідно вибрати так, щоб г75л <0 та Х( >0 коли г, = 0. Введемо таке правило. Для кожної небазисної компоненти / покладемо 5, = ~г, , якщо гІ <0 і візьмемо 5, = -х/гІ, якщо г/ >0. Це забезпечить виконання нерівності 5, >0, якщо хІ = 0. Крім того, У/(х)' 5 < 0 і строга нерівність має місце при 5Л * 0 . Якщо 5 * 0, то 5 - можливий напрямок спуску. Крім того, 5 = 0 тоді і тільки тоді, коли х - точка Куна-Таккера. Доведення цього твердження можна знайти в [2].
Занченко Ю.П. Алгоритм методу зведеного градієнта Розглянемо алгоритм зведеного градієнта (ЗГ) для розв’язання задачі (6.7.1 >-(6.7.3). Припускається, що довільні т стовпців А лінійно незалежні Початковий етап. Вибрати точку х, , що задовольнж умови Лх, = А0,хк > 0. Покласти к і перейти до основного етапу. Основний егап. Перший крок. Покласти 8ТК Де отримані іа формулами (6.7.4) та (6.7.5) відповідно. Якщо = 0, то зупинитися, х, - точка Куна-Таккера. У супротивному разі перейти до другого кроку Тут - множина індексів т базисних компонент вектора х,, В = !А,.:УєЛ}; К = {А,-(6.7.6) гГ=?/(х*)Г-^/(х4)гВ ’А: (6.7.7) -г , якщо зі .7* та г <0 -*/)•, якщо з є .7к таг>0; (6.7.8)-(6.7.9) 5В =-В-'№\ . (6.7.10) Другий крок. Розв’язати таку задачу одновимірної оптимізації: мінімізувати /(х, + Л$4), (6 7.11) при обмеженні . тіп]——15 . Я = с 1 '* тая [ <0|, якщо існує такий 3, що 8)к <0 (6.7.12) х>, якщо 8, >0 Тут х>(,5',4 -у-ті компонент векторів х,,відповідно. Покла- сти таким, шо дорівнює оптимальному розв’язку та х4<| = х, + Замінити к на к +1 і перейти до першого кроку. 426
Дослідження операцій Метод узагальненого зведеного градієнта Метод узагальненої о зведеного градієнта (УЗГ) с розвитком методу ЗГ і його можна застосувати для розв’язання задач НП при нелінійних функціях-обмеженнях. Отже, нехай задачу НП задано у вигляді: мінімізувати /(х), (6.7 13) при обмеженнях: й,(х) = 0,і = І,от . (6.7.15) А, < хі < и;, у = І, п. У методі УЗГ також розрізняють дві групи змінних: а) шдмножину базисних змінних хв = {х,} і є І; б) підмножину небазисних, або неза- лежних, змінних хЛ = {х;},/«/• Приймемо для спрощення позначень / = {1,2,...,лі}; ...п\ . При цьому залежні (тобто базисні) змінні неявно задаються через незалежні (небазисні) змінні, отже, /(х) - функція п-т незалежних змінних. Введемо такі позначення: Є1/»! ( У) ЗЛ (х) Н = <,(*) дН дх дН дх сй„,(х) _ У(х) 3\, а/(х)]_[а/(х) Зх, ^/(х/ Га/(х) 5/(х) ^/(х) Зх„ ] 427
Заїїченко Ю.П. С1хв #(х)1 /є/. ^Дх) #(х) уе7. Дг, | ’ сіх ч сіх/ < сД-,-1 <6-7-16) СІХ у А"'+І (1х„ (1х і є і Дх„,+1 Дх„ ] Головна ідея методу УЗГ полягає в тому, щоб скоротити вимірність задачі шляхом виключення залежних (базисних) змінних і застосувати метод ЗГ для визначення напрямку спуску, а також як критерій при встановленні оптимальності. Наведемо спосіб обчислення узагальненого ЗГ. Для цього розгля- немо задачу (6.7.13)-(6.7.15) і виразимо узагальнений ЗГ через ком- поненти градієнта /(х) та якобіан для обмежень-рівностсй (6.7.14): (1/(х) _ т -^ = УЛ./(х)г агу т а ?ВЛ*)Г ах„ (6.7.17) Виключимо із (6.7.17) матрицю —— . Для цього скористуємося ЙХд, співвідношенням: звідки: йИ _ сН(х) 8Н(х) Лхв <£хЛ бхЛ дхв Лх^ Лхв _ сН(х) дН (їх* дхи дхк (6.7.18) (6.7.19) Підставивши (6.7.19) в (6.7.17), одержимо вираз для УЗГ: г' = у^ = ?ї/(х)' -?„/(*)' дН . (6.7.20) де гн _ г ^(-у) к = 1, пі, ЄН >Лл(х)' к = Ї?7І ахв <?х ( ІЄІ дхІ ує У 428
Дослідження операцій Легко побачити аналогію між виразом (6.7.20) і співвідношенням (6.7.4) для ЗГ в лінійному випадку. Дійсно, якщо врахувати, що „ дН „ ?Н Н(х) = Ах = Вх в-г ІУх „ , го --В, -----= К . Підставивши їх в 8хв (6.7.20). одержимо повний збіг виразів (6.7.20) та (6.7.4). Алгоритм методу УЗГ починає працювати з допустимої точки х,. Якщо ж а- не є допустимим стосовно умов задачі, то потрібно ввести фіктивні змінні, значення яких поступово зводять до нуля введенням у цільову функцію штрафного члена. Якщо УЗГ на кожному з етапів обчислювальної процедури не стає таким, що дорівнює нулю, то заміняємо поточний вектор х1 на хд^ згідно із загальною формулою: л'д+| = хд. + 2Д^Д, (6.7.21) 2Д визначають, розв’язуючи задачу: мінімізувати /(хд. +2Д5Д), при обмеженнях: 0 < 2 < 2П,1Ч. де 5Д напрям опгимізаційного пошуку на к -й ітерації. Розілянсмо спосіб визначення величин 5Д для незалежних змінних і є / . Напрями пошуку Л’, визначають для них таким способом: = -г), якщо < х**' < и;; (6.7.22) = 0. якщо а/’ = л,- , г,'“ > 0; (6.7.23) або х'/’ = £, , ^"<0, де гд = _ век ГОр УЗГ. Якщо обмеження Л,(х) = 0 лінійні, то метод збігається з методом Вулфа 429
'іайченко 1О.П. Приклад 6.7. Мінімізувати +л;, при обмежен ні: Л( г) = 2х, ♦ л, і - о. Нехай л, — незалежна (небазисна) змінна, а л. Знайдемо величини: залежна. # # , М (Ік = 2хі;---~2х„;—-2;------- СІХІ ' СІХ, (ІХ-, Згідно з формулою (6.7.20) одержимо такий вираз для УЗГ: сІХі сУ? сУі сх1 гх-, дх2 ?Л| Отже, рухаючись із будь-якої допустимої гочки вздовж обмеження Л(л) = о оти, доки у- не стане таким, що дорівню< нулю, виконуємо мінімізацію Дл> (рис. 6.18).
_________________________________________Дослідження операцій 6.8. МЕТОДИ ШТРАФНИХ ФУНКЦІЙ Всі методи цієї групи, незважаючи па різні схеми та варіанти, мають одну спільну особливість: в них виконується заміна вихідної задачі умовної оптимізації еквівалентною задачею або послідовністю задач безумовної оптимізації. Методи штрафних функцій можна поділити на два класи: параметричні га ненараметричпі. Параметричні методи характеризуються наявністю одного або декількох вибраних належним чином параметрів, які входять в структуру штрафної функції і відіграють роль вагових коефіцієнтів. До параметричних методів належать: метод послідовної безумовної оптимізації (М1ІБО), запропонований Фіакко та Маккор- міком. метод Зангвілла та інші. У ненараметричних методах цільова функція розглядається як функція, що задає додаткове штучне обмеження, яке поступово ущільнюється в міру одержання пової інформації про хід розв'язання задачі. Параметричні методи підрозділяються па: 1) методи внутрішньої точки; 2) методи зовнішньої точки; 3) комбіновані методи. При використанні методів внутрішньої точки поточна точка постійно знаходиться всередині допустимої області за допомогою штрафної функції, яка в цьому випадку зветься бар'єрною. Методи зовнішньої точки, навпаки, генерують послідовність точок, які виходять за межі допустимої області, але наприкінці дають допустимий розв'язок. Нарешті а комбінованих методах, які слід використовувати при обмеженнях-рівностях. у процесі оптимізації деякі обмеження задовольняються. а інші ні. Однак при досягненні шуканого розв'язку всі умови в межах заданого допуску виконуються. Отже, нехай задача ПІ І має такий вигляд: мінімізувати Дх). хє/?", (6.8.1) при обмеженнях: й,(х) - 0, і І./л . (6.8.2) #,(х)>0. і іпіі.М- (6.8.3) В основу штрафних функцій покладено перетворення задачі (6.8.1) (6.8.3) в задачу мінімізації беї обмежень вигляду: 431
Зайченко Ю.П. р^.р^Ер.^дхд)- (684) <-І і ніч де РіХ/^Рі) - штрафна функція; ри - вагові коефіцієнти; Н(Іі: (х,)), О(^Дх,)) - деякі функціонали. Вибираючи вигляд функціоналу 6(£,(хд )). користуються такими варіантами [50]: при #Дх4)->(Г. Для цього необхідно, щоб точка х завжди була внутрішньою гочкою, тобто щоб виконувалась умова #Дх() > 0, і = т± 1, М сДйДл\))^0 при #Дх()->0. При такому виборі функціоналу (7, оперують лише зовнішніми точками, для яких виконується умова #ДхА) < 0. О,(йДл-і))>0 при £,(*,)<0 і 6’Д^Дх, )) = 0 при 8Дх4)>0. При такому виборі функціоналу відсутня вимога виконання обмеження на проміжних етапах обчислювального процесу, хоча вони, безумовно, мають виконуватися в кінцевій точці. При виборі функціоналу для обмежень-рівностсй вводиться вимога Н(ЛДх)) ->0 при ЛДх)->0. При цьому звичайно покладають ^/(Л,(х)) = Л’(х) . Нарешті, при будь-якому виборі функціоналів //(ЛДх)), б’(^Дх)) необхідно, щоб І'™ X = (6.8.5) * І- N1+1 ІітХри7/(ЛДл/)) = 0, * г-_] Ііт|/Дх( ,/?( )-/(х4 )| = 0. (6.8.6) 432
Дослідження'Операііііі Метод бар’єрних поверхонь Метод бар’єрних поверхонь (МБП) належить до групи методів внутрішньої точки і грунтується на використанні бар'єрної поверхні вигляду: т р(х,г) = /(х) + /£/?.(£,(х))іг, , (6.8.7) де г > 0 - параметр, значення якого спадають з кожною ітерацією /? (/)-><» при і —> 0; и; - додатні вагові коефіцієнти При цьому бар’єрна функція (поверхня) Р(х.г} необмежено зростає при і -> 0*. Прик іадами бар'єрних функцій можуть бути: а) обернена функція Я, (&,(х))-—!—, (6.8.8) б) логарифмічна функція Я,(£,(х)) = -1п(#,(*)). При набіиженні до межі з середини області, як тільки (х) ->0, штраф Я,(я,(.х)) стає дуже великим. Таким чином, вздовж усіх меж допустимої області утворюються сильні бар'єри Побудувавши бар'єрну функцію і знайшовши початкову внутрішню точку, починаємо процедуру мінімізації Р{х,г) при заданому початковому значенні /„. Тоді кічцева точка х першої ітерації процедури стає вихідною для мінімізації Р(х,г) при зменшеному значенні г і т.д. Заключний етап (ітерація) мінімізації реалізується при дуже малому значенні г, іак що результуюча точка х із точністю до встановленого допуску може опинитися на одній або декількох поверхнях, заданих обмеженнями задачі. Якщо через х(г) позначити точку мінімуму допоміжної функції Р(х,г) , то при досить слабких припущеннях щодо вихідної задачі послідовність |л(г)| збігається до розв'язку початкової задачі при г -> 0. Мінімізацію бар’єрної функції можна виконати будь-яким методом безумовної оптимізації, які бу їй розглянуті вище, наприклад градієнтним, або методами змінної метрики, або одним < прямих методів. 191 43
Зийченко Ю.П. Один із суттєвих недоліків методу бар’єрних функцій пов’язаний і тим, що ці функції визначені в допустимій області, яка повинна мати непорожню внутрішню область, тобто множина {Х:& (х)>0, Уі = їлй| має бути непорожньою. Алгоритм методу бар’єрних поверхонь Нехай задача НП має такий вигляд: мінімізувати /(х), при обмеженнях: (х) а 0, і = 1,т . Початковий етап. Вибрати е>0 за константу зупинки, початкову допустиму точку хп є Я", для якої £, (х°) >0, У/ = ї?ш , скаляр г0 та 0 </? <1. Покласти к = 1 і перейти до основного етапу. Основний етап. А-та ітерація. Перший крок. При вихідній точці х( розв’язати таку задачу безумовної оптимізації: мінімізувати Р(х,г) = /(х) + г^Я,(§І(х))^1 , (6.8.9) І=1 Де Я(#,(х)) описується одним із виразів (6.8.8). Покласти х,м таким, що дорівнює оптимальному розв’язку задачі (6.8.9) і перейти до другого кроку. Другий крок. Якщо ^^Я(^,(х^1))^і <£-то зупинитися. Розв’я- і зок є шуканим. У протилежному випадку покласти . Замінити к = к +1 і перейти до першого кроку (к +1) -ї ітерації. Приклад 6.8. Розглянемо таку задачу: Мінімізувати (х, 2)4 + (х, - 2х,)', при обмеженні: -х- + х, г о . Розв’яжемо її методом бар’єрних поверхонь з бар’єрною функцією К(я(х)) = —Цг. У табл. 6.7 наведено результати обчислень. Обчислення почато при г,=іо, а безумовна оптимізація функції 434
Дослідження операцій Р(х,г) починалася з точки г,=[0.1]. За початкове значення параметра р вибрано /?-о і. Після шести ітерацій одержано точку = [0.944; 0.896], для якої = 0.0184, і виконання алгоритму зупинено. Можна безпосередньо перевірити, що ця точка близька до оптимальної. Враховуючи, що г, зменшуються, із табл. 6.7 легко помітити, що Дг4), Лд) - функції, ЯКІ не зменшуються ВІД г„ , а - не збільшується ВІД г4 . Крім ТОГО, г,Я(5(г4)) збігається до нуля. Таблиця 6.7 к д Я(-ч.і) РМ дЯСч) 1 10.0 0.708 ; 1.532 8.334 0.970 18.039 9.705 2 1 0.828 ; 1.110 3.821 2.359 6.180 2.359 3 0.1 0.899 ; 0.964 2.528 6.419 6.170 0.642 4 0.01 0.924,0.916 2.129 19.078 2.320 0.191 5 0.001 0.940; 0.901 2.004 59.046 2.063 0.059 6 0.0001 0.944 ; 0.896 1.964 184.445 1.983 0.0184 Використання бар’єрних функцій для розв’язання задач НП пов’язане з певними обчислювальними труднощами. Насамперед пошук має починатися із допустимої точки х, для якої #(.(х) > 0, і = І,ли . Для деяких задач знаходити таку точку досить складно. Крім того, внаслідок того що в алгоритмі оптимізації використовуються дискретні кроки поблизу межі {х -8, (х)>0} , можливий крок, що виводить за межі допустимої області. Він призводить до зменшення значень функції Р(х,г4), тобто до фіктивного успіху. Таким чином, потрібна явна перевірка допустимості кожної чергової точки, для чого на кожній ітерації потрібно обчислювати значення функції ) >0, к = 1,2,.... На ефективність методу БП суттєво впливають вибір початкового значення гп і метод скорочення значень г у процесі мінімізації, а також вибір вагових коефіцієнтів в,. Якщо в функції Р(х,г) значсн- 19* 435
Зіійченко Ю.П ня гп вибирають занадто малим, то вже на початковій стадії процесу приходять до мінімуму функції /(х), який навряд чи буде в околі дійсного умовного мінімуму в точці х'. Водночас, якщо значення с вибирати занадто великим, то на перших ітераціях обчислювального процесу поточна точка неминуче опиниться дуже далеко за межами допустимої області, і пошук може сильно затягнутися через необхідність повернення в межі допустимої області. На рис. 6.19 наведено функцію Р вигляду: Р(х. г) = (4х, - л-; -12) з- г --------— т — + — ^10х -х + 10х,-х -14 х; V, ? Рис. б 19 436
Дослідження операцій для трьох різних значень: а) г = 102 ; б) г = 1 ; в) г = 10 2, де легко побачити вплив бар’єрних поверхонь Р(х,г) при великих значеннях г. Штриховою лінією зображено траєкторію пошуку. Метод штрафних функцій Метод бар’єрних поверхонь належить до групи методів внутрішньої точки, тобто він починає працювати з допустимої точки х0 і генерує послідовність допустимих точок х,,х,,..„х„ . Метод штрафних функцій, навпаки, належить до групи методів зовнішньої точки, він починає пошук з недопустимої точки і генерує послідовність недопустимих розв’язків, яка наближається до оптимального розв’язку іззовні допустимої області. Нехай, як і вище, є задача НП: мінімізувати /(х), (6.8.10) при обмеженнях: #,(х)>0, і = \,т, (6.8.11) Л,(х) = 0, і = т + \,І. (6.8.12) Метод штрафних функцій грунтується на перетворенні вихідної задачі з обмеженнями в одну задачу безумовної оптимізації або в їх послідовність. За допомогою функцій-обмежень конструюють штрафну функцію, що додається до цільової функції вихідної задачі, так, щоб порушення якогось з обмежень вихідної задачі було невигідним з точки зору отриманої задачі безумовної оптимізації. Зокрема, для обмежень типу (6.8.11), (6.8.12) доцільно використати штрафну функцію такого вигляду: а(х) = ХЛ|(§,(х))+ £Я,(Л,(х)), (6.8.13) 1-і І=*И+1 де Я „ Я, - неперервні функції, які задовольняють умовам: Я, (у) = 0, якщо у > 0 та Я, (у) > 0, якщо у < 0, Я, (у) = 0 , якщо і = 0 га Я, (у) > 0 , якщо у * 0 . 192 437
іайченко Ю.П. Типовими є такі вирази для функцій Я., Я,: Я. (у) = (тах{0;-_)})'’ ; Я,(у) = |у|/’, де р - ціле додатне число. Таким чином, штрафна функція а(х) зазвичай мас вигляд: «(х) = Е(тах{0;-^,(л)})/’ є £|Л,(х)|'’ . (6.8.14) /=! і-т+\ Далі від задачі НП (6.8.10)-(6.8.12) переходимо до задачі безумовної оптимізації допоміжної функції: мінімізувати /(х)+га(х), (6.8.15) де г > 0 - штрафний коефіцієнт. Нехай а - неперервна функція вигляду (6.8.13). Позначимо 0(г) = іп£{/(х)*го'(х)}. (6.8.16) Підхід, пов’язаний із штрафною функцією, полягає в розв’язанні задачі вигляду: максимізувати 0(г), (6.8.17) при обмеженні: г > 0 . Справедлива така теорема, яка обгрунтовує цей метод [1 ]. Теорема 6.5. Нехай задачу НП задано у вигляді (6.8.10)-(6.8.12), де ~ неперервні на К" функції. Припустимо, що задача має допустимі розв'язки і нехай а(х) - неперервна штрафна функція вигляду (6.8.13). Припустимо також, що для кожного г існує розв ’язок х, задачі мінімізації допоміжної функції га(х) і всі х, належать до деякої компактної підмножини X. Тоді справедливе таке рівняння: іпГ{/(-г):Ж-»:)^0,Л(х) = 0} = 8ир6'(г)= Іітб'(г), (6.8.18) X р Г—>30 де 0(г) визначається згідно з (6.8.16). Більше того, межа х‘ будь-якої послідовності {хг}, що збігає- ться, є оптимальним розв’язком вихідної задачі і га(хг )->0 при і со. Доведення теореми наводиться в [2]. 438
Дослідження операцій Ця теорема служить обгрунтуванням методу штрафних функцій і із неї випливає, що оптимальне значення хг може бути зроблено якнайближчим до допустимої області при досить великому г. Крім того, вибравши г досить великим, значення /(хг) + га(х,) можна зробити як завгодно близьким до оптимального значення ц.ф. вихідної задачі /(х). Алгоритм методу штрафних функцій У зв’язку з труднощами, пов’язаними з використанням великого параметра штрафу г, у більшості алгоритмів методу штрафних функцій застосовують послідовність зростаючих параметрів штрафу г. Отже, нехай маємо задачу НП: мінімізувати /(х) при обмеженнях: £, (х) > 0, Л,(х) = 0 де функції неперервні. Початковий етап. Вибрати є > 0 . Вибрати початкову гочку х,, параметр ш графу г та число Д > І. Покласти А = 1 і перейти до основного етапу Основний етап. Перший крок. При початковій точці хА і параметрі штрафу г, розв’язати таку задачу: мінімізувати /(х) + г(а(х) = Г(х)тг»! £(тах{0;-£.(хШ'' + І=І І І» + 1 £|Л(х/ . (6.8.19) де р > 0, р - ціле. Покласти хдч таким, що дорівнює оптимальному розв’язку цієї задачі і перейти до другого кроку. Другий крок. Якщо є|а(хі,|)<є, то зупинитися. У протилеж- ному випадку покласти = Дг\ . Замінити к на Аті і перейти до першого кроку. 19** 439
Зайченко Ю.П. Приклад 6.9. Розглянемо таку задачу: Мінімізувати (х, - 2)4 «• (х, - 2х,)2 , при обмеженнях: х2 -х, = о. За штрафну функцію «(х) виберемо (х.! х, > . Тоді на * -й ітерації при заданому значенні параметра ц необхідно розв’язувати таку задачу: Мінімізувати (х,-2)4 + (х, -2х2)2 + г4(х2 -х,)2, де х,,х, є(-ж;оо) . У табл. 6.8 наведено результати обчислень за методом штрафних функцій. За початкову вибрано точку х=[20;Ю]' , в якій значення ц. ф. дорівнює 0. За початкове значення штрафу взято г,=о.і, а число д = ю.о. Зазначимо, що /(х,) і 00*) - неспадні функції, а а(х^ > - незростаюча функція параметра <-4. Процес зупинено ПІСЛЯ чотирьох Ітерацій, де о(.хц) = 0 000267 . Однак, щоб переконатися, що згідно з теоремою 6 послідовність гЛа(х4) збігається до нуля, виконано ще одну ітерацію і знайдено х„. Можна переконатися, ЩО В ТОЧЦІ х0 =[0.946; 0.8934]' виконуються умови Куна-Таккера із заданою точністю. Таблиця 6.8 к г4 ч.. = 4 /(х*.,1 а(х^) г,а(х4) 0(г,) 1 0.1 1,4539; 0,7608 0.0935 7.8307 0.7831 0.8766 2 1 1.1687; 0.7407 0.5753 0.3908 0.3908 0.9661 3 10 0.9906; 0.8425 1.5203 0.01926 0.1926 1.7129 4 100 0.9507, 0 8875 1.8917 0.000267 0.0267 1 9184 5 1000 0.9461; 0.8934 1.9405 0.0028 ю ’ 0.0028 1.9433 440
Дослідження операцій 6.9. МІНІМІЗАЦІЯ НЕГЛАДКИХ ФУНКЦІЙ Узагальненні! градієнтний метод Як відомо, градієнтний метод грунтується на припущенні неперервної диференційовності ЦІЛЬОВОЇ функції /(.¥,,л2,...,л„). Для мінімізації негладких функцій його застосувати неможливо. Разом з тим, цільові функції, що не мають неперервних частинних похідних, досить часто трапляються в задачах дослідження операцій. Тому проблема оптимізації негладких функцій є досить актуальною. Розглянемо, наприклад, динамічну задачу керування запасами. Нехай якесь підприємство планує свою роботу на N місяців. Позначимо через Ь, план виробництва продукту в і -му місяці: и; - фактичний обсяг виробництва продукту в і -му місяці: V, - залишок запасу продукту на кінець і -го місяця. Оскільки плани виробництва кожного місяця неоднакові, то підприємство може виготовити частину продукції передчасно для виконання плану наступного місяця і зберегти її у вигляді запасів. Нехай Р, - питомі витрати на зберігання одиниці продукту в 7-му місяці: £,(и’, ,,ил) - функція виробничих витрат, пов’язаних із скоро- ченням або розширенням виробництва: , , кїил-и;,), якщо^>^_,; Ї69В £(»Ч,МЛ,) = < [г,(И’.|-М'Д ЯКЩО ИА < IV,.,. Необхідно визначити такі обсяги виробництва и>, і запасів в кожному місяці і = 1, N , для яких /(х) = /(и>,у)= Х./’у, + У’.й,(НІ.-ии'.) тіп» (6.9.2) <=і <=і при умовах: (69 3) IV, >0, V, >0. Ця задача є окремим випадком загальної мінімаксної задачі тіп тах { /,(х), /;(х),..., Д(х)). оскільки /(х) можна записати у вигляді: 193 441
кійченко Ю.1І. /(-*) = Е р,л’, 'І тах{с, (и; - и; ); г, (іг , - її;)}. (6.9.4) І-=’. Вводячи допоміжні змінні 0 < у, <1, цю задачу можна звести до такого вигляду V V +фах^у1с,(зг, -и, :)-(! .Г,)Г((Ч', І -її’,) (6.9.5) 1=1 І1.! ,=1 Для мінімізації негладких опуклих (або квазюпуклих) функцій введено поняття субградієнта (або узагальненого градієнта) [56]. Означення 6.5. Вектор у ) зветься узагальненим градієнтом, або субградієнтом функції /(х) в точці х5, якщо для будь-якого х є Е" виконується нерівність. ./(х)-/(х\)> ], (х5)(х-х5) (6.9.6) Якшо /(х) диференційовна в точці , то субградіснт збігається з градієнтом /,(х5). Дамо геометричну інтерпретацію субградієнта. Для цього спочатку розглянемо гладку функцію (рис. 6.20, а). Рис. 6.20. Градієнт /,(х) неперервної диференційовної опуклої функції напрямлений вздовж вектора нормалі по лініях рівня Г- {х:/(х) = с} 442
Дослідження операцій Субградієнт / (х) опуклої функції, що не мас в точці х5 неперервних похідних, напрямлений вздовж вектора нормалі до опірної гіперплощини рівня, і також мас напрямок зовнішньої нормалі (мал. 6.20, б). Позначимо через Л/(х5) множину субградіснтів в точці хх. Ця множина с опуклою і замкненою. На понятті субградієнта і грунтується метод узагальнених градієнтів (МУГ), який вперше був запропонований Н 3. Шором [56]. Нехай потрібно знайти тіп/(л ,г,,...,л„). Нехай х„ — початкова точка. Відповідно до методу УГ пошук відбувається за таким рекурентним співвідношенням: - А Уз /Лхз) • (6-9-7) де р4 - довжина кроку; - нормуючий множник: 1 Роблячи крок у визначеному напрямку за методом УГ, одержуємо точку х5,;. Вона міститься ближче до точки мінімуму х’, ніж х„, хоча може виходити за межі допустимої області. Виникає питання про збіжність методу УГ. Якщо вибрати із умов: а) -» 0 при 5->оо;б) =ос , (6.9.8) і=и збіжність методу буде забезпечена, тобто ІІГП X. = X * . Розглянемо тепер більш загальну задачу: мінімізувати /(х), при обмеженні: х є /?(х). У цьому випадку використовується метод проекції градієнтів [56]: = -РЛЛіМ’ (6.9.9) де ях(г) - проекція градієнта г на допустиму область /?(х), оператор проектування л-(х) задовольняє такі умови: 19*** 443
іііііченко Ю.П. а) л^ч(г)є /?(х), б) Х/уе Я(х),||у-л-,(г)||? <|у г|| (6.9.10) Розглянемо окремий випадок, коли у5=1, і нехай х* - множина точок мінімуму функції /(х), які належать допустимій області розв’язків: х’ є /?(х). Нехай для мінімізації /(х) використовується метод (6.9.12) узагальнених градієнтів вигляду: хЛ,. =х,(х$-р4/,(х,))- (69.11) Справедлива така теорема [56]. Теорема 6.6. Якщо рх —> 0 при 5—>оо, р$ >0, а £р, = ое, то 5 0 тайдеться така підпос.чідовність /(х4 ) послідовності /(х4), що 1іш/(х5і )- /(х*) при к *оо. Доведення. Нехай с — довільна константа така, що у (х ) \ с для всіх х є К. Згідно з означенням операції проектування і на основі умов теореми маємо: І** 5||**-*<+л/.(лЦ л\Г + 2а/. (*Л**-*Л+ + (*») 2||*-*-А5і|'+2Р5/, (^)(л-*--»,) + СРї. Розглянемо деяке досить мале 8 > 0 . При кожному р„ є [о,1] можливі два випадки: 1)2/, (х5)(х*-х5) + срх <-8, (6.9.13) 2)2/, (хх)(х*-хх)ч-срх >-8 (6.9.14) Покажемо, що не існує такого N, що при 5 > N виконується (6.9.13). Дійсно, якби це мало місце, то при 8> N ;;**--*5*іҐ <і;х*-ху||2 -^£р4 ’ (6.9.15) 444
Досіідження операцій і при права частина (6.9.15) необмежено зменшується, що суперечить невід’ємності модуля ||х* хх^||. Тому існують ДОВІЛЬНІ великі номери 5,, к = 1, 2.. ., при яких 2/, (х4)(х*-х4)+ср5 Оскільки -> 0, то звідси випливає, що для довільного є > 0 знайдеться така послідовність > і таке кі:, що для всіх к > кс г /,(•4 )(* “*% )>-* 1 тим більше Г(Х')-/(х4 ) > /, (х,)(х’ -хА ) > -є, (6.9.16) або /(х5д )-/(х’)<є. Звідси Ііт /'(ху )=/(х’). А-->» * Отже, теорему доведено. Приклад 6.10. Нехай /(х) — опукла функція скалярного аргументу л. Тоді: /,(л,) = Л/’(х5) + (1-Я)/ (х5), (6.9.17) де 0£Л£1, /‘(х4), /(їа) - похідні справа та зліва від точки х4 , тобто //(х) = Ііт /,(х + £1 Г (х) = Ііт /, (х- £) с-МГ -»О Співвідношення (6.9.17) є безпосереднім наслідком опуклості множини м(х), а також того, що / (х5) і /*(хі)єМ(х). Отже, якщо можна обчислити <.*(«,), /,’(х5) , то для мінімізації /(х) в області Я(х) можна використати процедуру (6.9.17) при д(х,) = /;(хА.) або /.(чі/ (х,)- Приклад 6.11. Нехай /(х„х,,...хП) = ^е (х,>, де функції л,(х,і м опуклі по х, . Тоді /,(х)= |/,(Х),/,(Х). Де /’,(х)-Л,к,(х)+(і-Я )к (хі. о<я<і. у = ї77ї. к,(х).«;(х) ~ права і ліва похідні функції ?,(х(). 445
Зийченко Ю.П Приклад 6.12. При розв’язуванні іадач ісорії ігор часто доводиться розв’язувати задачі про відшукання мінімаксу [36]: т>п тах / ( г, і) = тіп Л О , (6.9.1 К) СІ 1Є> за умови, що лє я‘ Припустимо, що функція /(«.і) при кожному і опукла по г га існує г(г) такий, що <(л) = тах /(л.і)= /(л-.і(л-)), >є) і при кожному і відомий узагальнений градієнт / (л.г) функції /(г, і) по змінних х . Тоді: /.(*)= 7>,у)|. (6-9.19) Доведення. Оскільки функція І(х, і) при кожному । опукла (униз), ТО /(г)-/(х) = /(а.1(г))-/(х..і(лН> /ІЛ .<»))-/ (л. К О) > (л, і (г))(а-V) . Приклад 6.13. Розілянемо задачу про найкраще чебишевськс наближення. Необхідно знайти такий х = {.г,}, / = Гл для якого /(«) = тах І/-Ї (6.9.20) -> піт . Нехай максимум в (6.9.20) досягається при । = /(.«), тобто Функції /(х,п опуклі; у цьому випадку субградієнт дорівнює /;(т) = {/,(л),А(*)- -./„(»)}• Використовуючи (6.9.20), дістанемо: Г/, \ а^,-ЯКШ0І‘^„хІ~Ьач>() (6.9.21) У протилежному випадку Приклад 6.14. Для задачі динамічного планування та керування запасами, сформульованої вище, цільова функція має вигляд: 446
Дослідження операцій = +тах £{’л(м;і)-» (і-»,)'Дн;-і >-І 0<»<! /-! Де X = (У,И’)Г = (V],!’,, •,У»>И’|>М2'-'И'Л'І ' Дня неї узагальнений градієнт дорівнює /,(х) = !р„р,,.,„рч,,.ДЧ}, де /„, =с, г, (и)-', (і-; (1, якщо и и . > 0; •',(**’) — { (0, якщо и; ік <0. Приклад 6.15 Мінімізувати /(х) = тіп £а,.х, -Ь Очевидно, /(х) можна записати у вигляді / (х) = тах Л Тоді, використовуючи (6.9.19), одержуємо. <1 . л ЯКЩО - 6 >0, /=» л якщо У'а,хі Ь<0 п,)}’ (6.9 22) (6.9.23) (6.9.24) (6.9.25) (6.9.26) (6.9.27)
Заііченко Ю.П. Розділ 7 ДИНАМІЧНЕ ПРОГРАМУВАННЯ 7. /. ОСНОВНА ІДЕЯ ТА ОСОБЛИВОСТІ ОБ ЧИСЛЮВАЛЬНОГО МЕ ТОД У ДИНА МІЧ НОГО ПРОГРАМУВАННЯ Динамічне програмування - це обчислювальний метод для розв’язування задач оптимізації спеціальної структури з адитивними або мультиплікативними цільовими функціями. Динамічне програмування виникло і сформувалося в 1950-1953 рр. завдяки роботам Р. Беллмана та його співробітників. Перші задачі, що привели до появи обчислювального методу, були динамічними іадачами керування запасами. Ідею обчислювального методу динамічного програмування (ДП) розглянемо на такому прикладі п максимізувати г = £ [ДхД, (7.1.1) 7=1 п при обмеженнях: ^а^х^Ь, а у >0; лу>0; Ь>0. (7.1.2) 7 = 1 Як бачимо, цільова функція задачі та обмеження є сумою функцій від однієї змінної кожна. Така функція, як відомо, називається адитивною. Якщо всі /Дх^, і = ^п опуклі, то для розв’язання задачі можна застосувати метод множників Лагранжа. Коли існує багато локальних мінімумів, то цей метод дає лише один з них. Якщо потрібно знайти глобальний максимум, метод множників Лагранжа застосувати неможливо. Тому розглянемо інший метод, який забезпечує відшукання глобально-оптимального розв’язку. Припустимо, що всі а ; , Ь - цілі числа. Припустимо також, що в розглядуваній задачі всі змінні можуть набувати лише цілочисельних значень. 448
Дослідження операцій Через 2 позначимо абсолютний (глобальний) максимум 2 за п умови ^а! х! <Ь. Виберемо деяке значення хп і, зафіксувавши 7=1 його, максимізуємо г по всіх інших змінних х1, х2,., х „ Припустимо, що така максимізація проведена для всіх можливих значень х„. Тоді г буде найбільшим з усіх можливих значень 2. Формально цей процес (ця процедура) записується так: шах л Е /у (X };) = (7.1.3) тах причому л —І £ а іх і^ь~ап ХП- (7.1.4) 7=1 л -1 Оскільки тах £ для невід’ємних цілих чисел, що 7=1 задовольняють умові (7.1.4), залежить від Ь-а „ хп, то позначимо п-1 тах £ /у (*7 ) = АП_| (6 «„ Х„ ). (7.1.5) г Г ,х„_] у = 1 Припустимо, що ми обчислили А,, ! (Ь-а„ хп ) для всіх 6 ° п Ь а „ допустимих цілих значень х„ 0, 1, де означає цілу частину —. ап Очевидно, що ** = тах {/„ (х„ ) + А (Ь-ап х„ )}. (7.1.6) х„>0 449
Зайченко Ю.П. Для знаходження (7.1 6) визначимо /(х„) та Л„ , (Л о„.г„) для всіх допустимих шачснь х„ і виберемо максимальне г . Одночасно знайдемо оптимальний розв’язок г„. Таким чином, якби була відома функція Л (Ь-ап х„ ). то вся задача звелася б до задачі з однією змінною. Покажемо, як обчислити Л я _ । (Ь а„ х „) Позначимо: п -1 А„-і(^) = тах £ /,(х?), Ч............4-і у=і за умови. Л І І «7*/^- /=і Повторивши вищенаведсні викладки, одержимо: А ,,-і(£) = тах (х„_| )-Л„_2 (£ 1^„ і )), (7-1 7) 4 і де п 2 Л„ 2(^-«л і ^л-1 )=рах| X (7.1.8) причому максимум в (7.1 7) відшукується за умови. п “2 І |Т„-| • > = 1 Аналогічним чином обчислюємо Л „_2 (^). А „_3 (^) і т.д. Нарешті на А- -му кроці ми використовуємо «основне рекурентне співвідношення (ОРС) динамічного програмування»- ЛА (і;) = тах {(хА )*ЛА |(^-алхА)|, (7 1.9) 'А за умови, що А сі х і<Е,, А =и, л-1,..., 2 7-І 450
Дослідження операцій Використовуючи ОРС (7.1.9), організуємо процес обчислень, як багатокроковий процес, таким чином. На першому кроці, зафіксувавши початок інтервалу 0 і змінюючи його правий кінець Е,, обчислюємо: Л,(£)= тах /і(-гі), (7.1.10) °*ЧХ,] для всіх можливих значень ^=0, 1, .. , Ь. Оптимальний розв’язок першого кроку позначимо через х,° (Е,). Складаємо таблицю динамічного програмування першого кроку (табл. 7.1) і заповнюємо її результатами обчислень. На другому кроці (к=2) знаходимо Л2(^) згідно з співвід- ношенням: Л2(^)= тах {/2 (х2 ) + Л , (^-я2 х2 )}> (7-1.11) причому значення Л । (Е, - а 2 х 2 ) вибираємо із табл. 7.1. Обчислюємо послідовно Л 2 (^) для всіх значень ^=0. 1,'..., Ь, використовуючи результати табл. 7.1. Одночасно знаходимо х® (£) 1 Х]0(х2(^)). Результати обчислень заносимо в таблицю другого кроку (табл. 7.2). Таблиця 7.1 Таблиця 7.2 $ Лі(^) х®(^) 0 1 ь £ А 2 ($) *2<^ ^(^) 0 1 ь Далі, користуючись співвідношенням (7.1.8), послідовно обчислюємо Л3(^),Л4(^), .,ЛА(^),...,Л„_](^) для всіх значень £=0, 1,2, ..., Ь. Нарешті, на останньому кроці при к=п знаходимо: 451
Зайченко Ю.П. г'=Лп^=Ь) = тах {/„(х,і)+Л„1(Л-а„х„)}, (7.1.12) а також відповідне оптимальне значення для останньої змінної х„=хя(Ь) Для відшукання значень всіх інших змінних хп і ’ хп-2 ’ ’ хі потрібно скористатися таблицею (л-1), (п-2 ) і т.д. кроків Прийнявши -а„х„, із таблиці попереднього кроку знаходимо (без обчислень): х° і =х„-. &-<!„ *«)• х« і =х„ 2 «,)• х>° =*і (6) Отже, динамічне програмування - це напрямлений послідовний перебір варіантів, який обов’язково приводить до глобального максимуму. Для застосування методу потрібно табулювати функції д. (£), Л2 (£) , ... , Л„_,(£) для всіх можливих значень Е, . Порівняємо метод динамічного програмування за числом необхідних операцій з простим перебором варіантів. Для спрощення розрахунків візьмемо а, = а2 =...=ап =1. При простому переборі число можливих варіантів (при умові ЦІЛОЧИССЛЬНОСТІ ВСІХ ЗМІННИХ Ху) дорівнює числу способів, якими можна розмістити Ь однакових куль в п урн Воно дорівнює ь (п+Ь-\)\ Ь\(п~\)\ Наприклад, при п = 5, Ь =20, С24 = 10626. Оцінимо число операцій, потрібне для розв’язання цієї задачі методом динамічного програмування. Для обчислення л,(£) при фіксованому £ потрібно виконати (^+1) обчислень функції Д(х,)+Л4 ,(^-х,), при х0<хк <^. Отже, щоб заповнити одну таблицю (при Е, =0, 1, ... , Ь) потрібно £ (£ + 1)=^ + 1^ + 2) операцій. 5--о 2! 452
Дослідження операцій Таким чином, щоб обчислиіи всі функції А, (£), А, (£), ... , А„_, (£) потрібні р, операцій З урахуванням обчислень функції д (/,) загальна кількість операцій становить: _ (/і-1)(£+1)0~2) . (^ 1 )[(«-!)(/>+2) МІ 2! 2 Це значно менше, ніж і > тобто маємо суттєве скорочення обсягу обчислень порівняно з простим перебором Підведемо деякі підсумки. Розглянуту вище задачу (7.1.1), (7.1.2) з економічної точки зору можна ірактувати як задачу розподілу одного обмеженого ресурсу /> між п різними способами виробництва, де х, - обсяі виробні цтва за у -м способом; у (д.) - прибуток від досягнення обсягу г і ; я у л 7 - витрати ресурсу на виробництво за у -м способом (при обмеженні на загальний обсяг п використаного ресурсу £ і=\ Тому д4(£) можна тракіувази як максимальний прибуток від перших к способів виробництва, коли загальний обсяг ресурсу (сировини) дорівнює Е, одиниць. Розглядувану задачу можна інтерпретувати як «-кроковий процес прийняття рішень, в якому на у -му кроці приймається рішення про те, яку кількість ресурсу із загального обсягу Е, потріб- но виділити на переробку за і -м способом виробництва. Як бачимо, структура цієї задачі не змінюється від числа кроків, тобто задача інваріантна щодо п. Розв'язок для А--крокової задачі одержується із розв’язку (А-1)- крокової задачі шляхом додавання А -го кроку та використання результатів попереднього (А 1 )-го кроку. Отже, суть динамічного програмування полягає в заміні розв’язання даної «-крокової задачі послідовністю однокрокових задач. 453
Зайченко Ю.П. Підсумовуючи, назвемо головні ознаки (властивості) задач, до яких можна застосувати метод динамічного програмування. Задача має допускати інтерпретацію як п -кроковий процес прийняття рішень. Задача має бути визначена для довільного числа кроків і маги структуру, яка не залежить від їх числа. Для /(-крокової задачі має бути заданою деяка множина параметрів, яка описує стан системи і від якої залежать оптимальні значення змінних. Ця множина не повинна змінюватися при збільшенні числа кроків. (У розглядуваному вище прикладі таким параметром була загальна кількість ресурсу.) Вибір розв’язку (стратегії керування) на А-му кроці не повинен впливати на попередні рішення, крім необхідного перерахунку змінних. Нехай Е, - вектор параметрів, що описують стан процесу (вектор стану). Тоді оптимальне значення цільової функції для А-крокового процесу Л к (£) називатимемо функцією стану. Нехай Х;. - вектор змінних керування (стратегія), який потрібно визначити на к-му кроці. Тоді для задач, до яких можна застосувати метод динамічного програмування, має використовуватися таке основне рекурентне співвідношення'. Ю=тах{Л(Х4, <) +Л, , (Т(£, X,))}, де Д’(«> х,) - вектор стану попереднього (А -1 )-го кроку за умов Е, та хк. У розглядуваній задачі хк)=^-ак хк Сформулюємо принцип оптимальності Беллмана, який обгрунтовує це співвідношення [4; 18]. Оптимальна стратегія має таку властивість: Для довільних початкового стану та початкової стратегії х ।, стратегія на к -му кроці має бути оптимальною тільки стосовно поточного стану системи і не залежати від попередніх станів. Таким чином, принцип оптимальності Беллмана стверджує, що оптимальне керування системою на кожному кроці не залежить від передісторії процесу, тобто від того, яким чином система досягла поточного стану, і визначається лише самим станом. Системи (процеси), що мають таку властивість, називаються марковськими. 454
Дослідження операцій Задача про вибір траєкторії Основний принцип динамічного програмування можна продемонструвати на такому прикладі [7] Приклад 7.1. Нехай літак (або інший літальний апарат), що перебуває в точці 50 на висоті н0 і має швидкість г0, необхідно підняти на задану висоту нк„,, а його швидкість довести до значення иет„. Відомі витрати пального для підйому з будь-якої висоти Н] до висоти н2 при сталій швидкості V, та витрати паль- ного для збільшення швидкості від и, до г2 при сталій висоті Н. Знайти оптимальну траєкторію набирання висоти та швидкості, при якій загальні витрати пального мінімальні. Припустимо, що весь процес набирання висоти та швидкості можна розділити на ряд елементарних послідовних кроків (етапів), на кожному з яких літак збільшує тільки висоту або тільки швидкість. Зобразимо стан літака точкою на площині уон , де абсциса . відповідає швидкості г, а ордината — н.______ висоті н. Тоді процес переміщення точки із початкового стану 50 в кінцевий 8к відобразиться на площині - 8о у он деякою ступінчастою ламаною + (рис. 7.1). Ця траєкторія і характеризу- і ватиме керування набиранням висоти о V» та швидкості. рис 7д З усіх можливих траєкторій потрібно вибрати таку, на якій значення вибраного критерію (витрати пального р) буде найменшим. Для розв’язання задачі методом динамічного програмування розділимо відрізок висоти [Нп,Нк] на и, рівних частин, а швидкості [Ио, Г4] - на »2 рівних частин. 455
Зсійченко Ю.П. Таким чином, за перший крок процесу відбувається або зміна Н КІН " ) /- висоти на величину лн ---------, або зміна швидкості на величину . , 1 К'" ( ° АІ ----------- Таким чином, сумарне число кроків процесу для переводу літака із стану хс в зк дорівнюватиме ™ = и +».. З кожним кроком пов’язані певні витрати пального. Запишемо на кожному із відрізків відповідне значення витраз пального (в умовних одиницях - у о п.). Тоді умови задачі зобразяться на рис 7.2, а довільній траєкторії, як показано стрілками, відповідатиму гь виграти пального: 0= 12+ 11 + 10 + 8+ 11 + 10+ 10 - 13+ 15 + 20+9+ 12+ 14 = 165 у.о.п. Загальна кількість усіх можливих траєкторій досиїь велика, а і ому простий їх перебір неможливий, і тому застосуємо принцип он і имальності Беллмана. Оскільки кінцевий стан системи х* відомий, го процес побудови оптимаг ьної траєкторії починаємо з кінця щ 3 принципу опти- мальності Беллмана випли- ває, що коли система перебуває в деякій проміжній точці (хг), і відома кінцева точка, то оптимальною стратегією буде та, що переводиіь із точки (х,) в кінцеву їх,) по оптимальній І) *—*—' V, V " траєкторії, якій відповідають Рис 72 найменші виїрати пального. Оскільки це справедливо для будь-якої проміжної точки, то приходимо до висн >вку опіимальна траєкторія мат гаку властивість - її кожна ділянка (фрагмент) сіановить оптимальну траєкторію. Застосуємо цій висновок для побудови оптимальної траєкторії, рухаючись з кінцевої і очки х( У ючку х* 456
Дос лкіження операцій можна дістатися лише з двох сусідніх точок в та в і (див рис. 7.3), причому тільки одним можливим способом, а тому вибору оптимального керування на останньому кроці немає воно єдине. Якщо перед останнім кроком ми перебуваємо в точці в,, то переміщення в 5* відбувається по горизонталі і витрачається 17 у.о.п., а якщо ми перебуваємо в точці я,, то рухаємося по вертикалі, витративши 14 у.о.п. Ці значення мінімальних витрат ставимо біля точок в{ та в2 і обводимо кружком. Таким чином, число в кружку біля точки завжди означає мінімальні витрати пального для переміщення літака із заданої точки в кінцеву, а оптимальну траєкторно показано стрілками (рис. 7.3). Тепер переходимо до вибору оптимальної стратегії на передостанньому кроці. Для цього розглянемо пункти, із яких можна дістатися в в-, та в, за один крок. Такими точками є с:, с2, с3 (рис. 7.4). Для кожної з них необхідно знайти оптимальну траєкторію руху в точку 5* і відповідні витрати пального. Зокрема, для с, вибору немає, потрібно рухатися тільки по горизонталі і витрати 15 + 17 = 32 у.о.п. Для точки с2 вибір існує: із неї в 5* можна дістатися через в^ або в2 У першому випадку буде витрачено 13 + 17 = ЗО у.о.п., а в другому - 17 + 14 = 31 у.о.п. Отже, оптимальна траєкторія із с2 в в* проходить через Ву. Покажемо цю траєкторію стрілками, а відповідні мінімальні витрати, що дорівнюють ЗО обведемо кружком у точці с2. Рис 7 3 20' 457
іаіі'іенко Ю.П. Нарешті для точки с3 шлях в л* - єдиний (вздовж вертикалі), йому відповідають витрати в 12 + 14 = 26 у.о.н. Це число обведемо кружком у точці с3 і покажемо опт имальну траєкторію (рис 7 4) Таким чином, рухаючись послідовно від точки до точки справа наліво і зверху вниз, знаходимо для кожної вузлової точки оптимальну траєкторію, яка веде до , і відповідне їй мінімальне значення витрат пального (яке обводимо кружком). Цей процес закінчується, приводячи до початкової точки ,50. Рухаючись тепер від неї в протилежному напрямку, який показано стрілками, послідовно проходимо шукану траєкторію від л'о до 5*. Ця оптимальна траєкто- рія показана на рис. 7.5 додатковими стрілками. Число 139 означає мінімальні виграти пального, які відповідають цій траєкторії. Оскільки в цій задачі зафіксовано як початкову, так і кінцеву точки, то процес побудови оптимальної траєкторії можна було б здійснювати і в протилежному напрямку, від початку в кінець Тоді число в кружку означало б мінімальні витрати пального при переміщенні літака із 50 в точку, якій відповідає місце розташу- вання цього кружка. Очевидно, що при цьому кінцевий результат - оптимальна траєкторія - не зміниться. о V. V Рис 7.5 458
Дослідження операцій Задачі послідовного прийняття рішень Структура розглянутої задачі розподілу ресурсів була такою, що змінні х;, / = 1,2, ., її в ході побудови процесу можна було визначати в довільному порядку (тобто їх можна було міняти місцями). Однак існує багато задач, в яких рішення мають прийматися в строгій часовій послідовності, і тому змінні г,, л ; не можна міняти місцями. Такі задачі називають задачами послідовного прийняття рішень. Для цих задач існує вибір між двома різними схемами розв’язання [18; 49]: -розв ’язання в прямому напрямку’, коли перший крок схеми дина- мічного програмування відповідає першому за часом рішенню, що приймається; - розв ’язання задачі в протилежному напрямку, коли останній крок схеми динамічного проі'рамування відповідає першому фактич- но прийнятому рішенню. Для пояснення цих двох схем звернемося до такої задачі. Задача про використання трудових ресурсів Підприємцю потрібно визначити оптимальну кількість робітників на кожний з п місяців. Виробничі завдання для кожного місяця відомі, що дає змогу визначити оптимальну кількість робітників на цей місяць. Припустимо, що & у -й місяць ідеальне число робітників дорівнює т ]. Якби підприємець міг звільняти та набирати нових робітників без додаткових витрат, то він в у-й місяць найняв би рівно т) робітників (у=1, 2,..., л). Нехай х — фактичне число робітників в у -й місяць. Витрати на зміну кількості робітників при переході з (у-І)-го до у-го місяця задаються функцією у х ,) Залежно від знака різниці х} -Лу_,, функція (хі х/ ]) визначає витрати з найму (якщо х >х ) або з Звільнення. ОчеВИДНО, у (0) = 0- Відхилення чисельності від ідеальної величини т) призводять до Додаткових виробничих витрат, які задаються функцією. £,(х(-»/,), 20* 459
іаиченко Ю.П причому к (0)=0,/-Гл Припустимо, що в початковий момент чисельність робітників становила /н(). Цільова функція задачі г - сумарні витрати на виробництво га набір робітників визначаються співвідношенням: 1-І де х0 = ш0. Необхідно знайти таку чисельність робітників у кожний місяць х1, при якій сумарні витрати мінімальні. Розв’яжемо цю іадачу методом динамічного програмування. Оскільки задано початковий стан системи х0, то використаємо схему розв’язання в зворотному напрямку. Позначимо: Л„ «)=тіп {/„ (х„ -<*)+£„ (л„ -/и,,)}, ч де £ = Л-„ | Тоді основне рекурентне співвідношення матиме вигляд: ЛА (£) = тіп{[/4 (**-£) + £* (^-^)]+Л1+І(х4)}, (7.1.13) ч де Ла(£) - мінімальні сумарні витрати за місяці з А-го по п-й ВКЛЮЧНО, ЯКЩО ЧИСЛО робітників В (Л 1)-й місяць дорівнювало Е,. Використовуючи (7.1.13), послідовно обчислюємо Лл(£), ЛЛД£), Л2(£) для всіх можливих значень . Нарешті, на останньому кроці при А=1 знаходимо оптимальну чисельність робітників X ) В перший МІСЯЦЬ при початковій умові X о = т (). Для цього знаходимо: Л і (ь = "Л,) = піт { /, (х, - /я„) + Єі(х, - м,)+А, (х,)} (7.1.14) •і Визначивши із *(7 1 14) х, і поклавши = х*, із таблиці попереднього кроку знаходимо х'(х’), далі х‘=х,(хі) і г. д. 460
Дослідження операцій У розглядуваному випадку розв’язання в зворотному напрямку доцільне, бо невідоме число робітників наприкінці робіт, гобго на ( П-г 1 )-й місяць. Розглянемо випадок, коли крім т 0 задано також потрібну кількість робітників після закінчення робіт лі„ + ). Шукатимемо цілі числа, для яких досягає мінімуму вираз. г=ІДЛ(х/"х,- (71 15) /=| Тут можна записати: г=тіп{/„л(7и„+І-х„) + + тіп £[/,(х>-ху1)+£/(х, Х" .Л. , /=1 Оскільки тепер задано кінцевий стан системи, то розв’язуватимемо задачу в прямому напрямку. Визначимо послідовність функцій стану: А, (£ )= тіп (<*-хА )+£,., )+ т1-- +Ел(-'У-*/1 )[> *=>•п Тоді: " ’ А, (£)=тіп {/2 (^-х,)+й,(иі2-^)+/І (х, -*„)+£, (лі, -х,)} Основне рекурентне співвідношення ДП для цього випадку матиме вигляд: ЛА(£) = тіп{/А>1(£-хА) ) + ЛА ,(ха)}, £=ха+1 (7.1.16) Функція лд(£) — це мінімальні витрати за перші (Л + 1 ) місяців при умові, що чисельність робітників в (к + ] )-й місяць дорівнює . 2(Р 461
іайченко Ю.11. Використовуючи ОРС (7.1.16), послідовно обчислюємо А (£), Л, (<£),..., Ап , (£) для всіх можливих значень 6. Нарешті, на останньому кроці при к=п, поклавши ^=лі„ч. одержимо співвідношення: Л.(^='«я-і)=тіп{/„1(тлИ-хя)-гЛя ,(х,)} • (7.1 17) Визначивши із (7.1.17) оптимальне значення т* за таблицею попереднього (л 1)-го кроку і, поклавши £=х*, знайдемо ♦ • ♦ оптимальні значення всіх інших змінних: л- .. х х. пі’ п- 2’ ’ І Підведемо деякі підсумки вищерозглянутої задачі. Нехай маємо задачу послідовного прийняття рішень на п періодів Якщо задано початковий стан системи, то задача розв’язується методом динамічного програмування в зворотному напрямку; якщо ж задано кінцевий стан системи, то - в прямому напрямку. Нарешті, коли задані як початковий, так і кінцевий стани системи, то задачу можна розв’язувати як в прямому, так і в зворотному напрямках. Результати за обома схемами збігаються. Приклад 7.2. Нехай задано задачу про використання трудових ресурсів з такими даними: »=4 місяці, т} = 2, т2= 5, тч=3, >»„ = 1, ____о /п0- 2. Нехай функції у () та мають такий вигляд- {10(л(-х,.,), якщо х,>х , 7(г( |-ху), якиртх, ,>х,; £,( П-'»; )= 8(хх—т(). якщо гг>т 11(01'-г ), яки/олі >х ; /,(0)^0; 8,(0)=0. Оскільки зафіксовано початок (л'о = /По = 2), то розв’язуватимемо задачу в зворотному напрямку. Для цього використаємо основне рекурентне співвідношення: Л4 (^)=тіп{/,(х, 4) + Я* -"«*) +Аа„(х4)}, А=3, 2,1 ч Л„ (<;)=тіп |/„ (х. -гі+8„ (х. «і„)|, я=4- 462
Дослідження операцій Перший крок. Л, (£)=тіп {/4 (х4 -£) + £. ()х4 - т.} = тіп «4 (л 4, £) Для відшукання Л4(£) складаємо таблицю значень «4 (х4, £) (табл. 7.3). Значення гпіпГ24(х4,£) ДЛ» всіх с вибираємо з табл. 7.3 і записуємо в основну таблицю - габл. 7.4 Оскільки всі функції /і(хі-хі _,) та й(т _х .) опуклі по г,, то і функція п4(х4,с) опукла по л4 для всіх значень с,. Тому для знаходження Л4(£) достатньо знайти перший мінімум функції «4(х4,£), який і буде глобальним. Відповідно до цього висновку значення функції £і. (х4, <) обчислюємо лише для області значень г4, яка містить цей мінімум (табл. 7.3). Обчислення виконуємо таю £ = 0 , х4 = 0; «4 = 0 + 11(1-0)= 11; £ = 0,х4=1; «4 = 10(1 - 0) + 0= 10; £ = 0 , Х4 = 2; «4 = 10(2-0) + 8(2-1) = 28 £ = 2 , х4 = 0; «4 = 7(2-0) + 11(1 -0) = 25; £ = 2 , х4 = 1; «4 = 7(2- 1) +0 = 7; £ = 2 , х4 = 2; О4 = 7 0 + 8(2 - 1) = 8. £ = 4 , х4 = 0; «4 = 7(4-0) + 11(1 — 0) = 39; £ = 4 , х4 = 1; «4 = 7(4- 1) + 0 = 21; £ = 4 , х4 = 2; «4 = 7(4-2)+ 8(2- 1) = 22. = 1 , х4 = 0; «4 = 7(1 -0)+ 11(1 - 0) = 18; $=1,х4=1; «4 = 0 + 0 = 0; ^=1 ,х4 = 2; «4 = 10(1 - 0) + 8(2 - 1)= 18. $ = 3,х4 = 0; «4 = 7(3-0)+ 11(1 -0) = 32; ^ = 3,Х4=1; «4 = 7(3- 1) + 0 = 14; $ = 3,Х4 = 2; «4 = 7(3-2)+ 8(2- 1)= 15. £ = 5 , ха = 0; «4 = 7(5-0)+ 11(1 -0) = 46; 4=5,х4=1; «4 = 7(5- 1) +0 = 28; £ = 5 , х4 = 2; «4 = 7(5-2)+ 8(2-1) = 29. 20** 463
іайченко Ю.ІІ. Необхідно визначити діапазон зміни параметра Очевидно, ‘отп=0,а ї,Піах У розглядуваному прикладі ^гоах = 5. І Таблиця 7.3 4 Л’4 п(с. ч ) 0 0 11 1 10 2 28 1 0 18 1 0 2 18 2 0 25 1 7 2 8 3 0 32 1 14 2 15 4 0 39 1 21 2 22 5 0 46 1 28 2 29 Табчиця 7.4 Е л4(%) > 4 (Ч ) 0 10 1 1 0 1 2 7 1 3 14 1 4 21 1 5 28 1 Другий крок. Використаємо ОРС при к = 3: Л,(с) тіп|./з(хз § )+8з (хз-т3 )+Л 4 (х3 )}=ітипО3 ( «з , і виконаємо другий крок аналогічно першому. Допоміжні результати обчислення я3(хз,^) наведемо в табл. 7.5, а підсумкові в табл. 7.6 464
Дослідження операцій Таблиця 7 5 Таблиця 7 6 Л3 -тз '4 0 32 1 1 1 22 1 1 2 18 2 1 3 14 3 1 4 21 3 1 5 28 3 1 Третій крок. Використовуємо співвідношення (1) і обчислюємо для всіх Е: Л 2(Е)=тіп{/2 (л і -е)ч 8 2 (»2 ~т2 )+лз(’г2 ))=тіпі12 Iі 2 > де Е=Х|. Результати обчислення і22(.ї2,е) заносимо в табл. 7.7, а значення л2(е) та (^) в основну таблицю 7.8. 203 465
іініченко Ю.П Таб тиі/я 7. 7 Г2 Я2 0 1 76 2 71 3 66 4 72 1 2 61 3 56 4 62 2 2 51 3 46 4 52 3 2 58 3 36 4 42 4 2 65 3 43 4 32 5 38 5 4 39 5 28 6 46 Таблиця 7 Я с=ті л > «7 »з <4 0 66 3 3 1 1 56 3 3 1 2 46 3 3 1 3 36 3 3 1 4 32 4 3 1 5 28 5 3 1 Табпіця 7 9 »і «1 2 1 74 2 46 3 54 Четверній крок. Використовуючи початкову умову с = г0 і підставляючи її в співвідношення Л,(х0)=тіп{/1(лІ-г0)+§,(лІ-т1) + Л,(х,)П знаходимо л,(л„ = 2) ’ оптимальне значення змінної л* = 2. їх наведено в табл. 7.9. Далі із габл 7.8 за значенням = 2 обчислюємо оптимальні значення всіх інших змінних, х, = з г, = з, ї * і. При цьому сумарні ви грати сгановля гь л । = 46 умови од., що є абсолютним мінімумом. Л (х„)=46. г; = 2 466
Дослідження операції/ Застосування динамічного програмування при неперервних змінних На відміну від інших обчислювальних методів, динамічне програмування найбільше підходить для задач, де змінні - дискретні. Водночас його можна застосувати і для задач з неперервними змінними. Для цього неперервні змінні квантують, вибираючи крок дискретизації із конкретного змісту задачі. Розглянемо, як розв’язується задача про розподіл ресурсів (7.1.1), (7.1.2) при неперервних змінних. Визначимо послідовність функцій стану: Л, (£)= тах £ /,(.г,) ' '• ,.і за умови: к X А=1, 2---її. 7=1 Основне рекурентне співвідношення має вигляд: АЛ(£)= тах {Д (і(М( ,(£-аА хк)} , А =2, 3,..., и-1- (7.1.19) "і Головна відмінність порівняно з випадком дискретних змінних X], х2,...л„ виникає в процесі обчислення максимуму по хк та у способі побудови таблиці значень л,(£)- Розглянемо задачу визначення дл (£) при фіксованому . Позначимо .(£-«***)• (7.1.20) Тоді: Л*(£)= тах О, (**;£)• 0<хі <-^- Якщо д1 др) відома, го значення функції (.<*,£) визначені для всіх X/,. Припустимо, що ірафік (лд , £) такий, як зображено на рис. 7.6. Для визначення А, (£) потрібно відшукати всі відносні максимуми та вибрати серед них абсолютний. 20*** 467
іаііченко Ю11 Рис. 7 6 Дія цього функцію Пд(х4,^)[0,і] табулюють. При табулюванні доцільно застосувати спочатку сітку з більшим кроком, а в околі «підо- зрілих» на існування максимуму точок перейти на сітку з малим кроком. Функції дл (=) потрібно габулюваги при всіх допустимих значеннях £,, оскільки заздалегідь невідомо, яке з них може знадобитися при обчисленні ЛАИ (£) . Зауважимо, що задача обчислення значно спрощується при умові, коли всі /г (х) опуклі або вгнуті. Можна показати, що з опуклості (чи вінутості) усіх функцій /(л) випливає опуклість (вінутість) функції ЛА. (£) Розглянемо такі випадки. Випадок 1. Усі функції Дх,) опуклі. Оскільки Л*.^) опукла функція, то і Л* |(£- щх*) опукла щодо змінної х*. Нас цікавить ІІДх,, £) при фіксованому 4- Як відомо, максимум опуклої функції на замкненій обмеженій множині досягається в одній з крайніх точок. У розі лядуваному випадку такими точками є: 1) х* = 0; 2) х* = . а» Отже, при опуклості всіх /,(х4), *=1,я дня знаходження птах О ( (х,, <?) доси гь перевірити лише крайні точки хА=0та хЛ= — 468
Дос лідження операцій Випадок 2. Усі функції /, (х,) вгнуті Тоді (х(, £) є вгнутою функцією від л* при кожному фіксованому значенні £,, і тому її усякий відносний максимум буде одночасно і глобальним. Відшукати відносний максимум £і.к(хк,£) можна одним з відомих пошукових методів оптимізації, наприклад, і радієнтним. 7.2. ДИНАМІЧНЕ ПРОГРАМУВАННЯ ДЛЯ ЗАДА Ч З КІЛЬКОМА ОБМЕЖЕННЯМИ ТА ЗМІННИМИ Розглянемо задачу оптимального розподілу ресурсів, але вже при двох обмеженнях [6; 18]. тах£ Л (*,)’ /=• при обмеженнях У. Л7 56) ; У «2/ -Ь2 ; ху , А і -ціле. 7-1 7 = 1 Оскільки в задачі маємо два види ресурсів 6, і Л2, то погрібно ввести два параметри стану: с, ।, 5, 2 Позначимо через Л*(^,,^2)=тах (7’21) при обмеженнях: А А ___ У «1у х, ; У а2) X; <(,2 : х ) >0 , у = 1, к , л • - ціле. (7.2.2) 7 = 1 7 = 1 Запишемо основне рекурентне співвідношення для цієї задачі: Ї7 2 ЗІ Л, (<',,;,)= тах !/,(«, 1+л, , (£, - а „ х , , с , - а ,, х , ) ] ’ ' ' де б =тіп 51 Й1А 52 °2А 469
Зайченко Ю.П. Одночасно з Ал. (<?, ,£,) знаходимо і відповідний оптимальний розв'язок х4(^,,^,) Послідовно знаходимо ЛД^,^) , АД£,,£2), Л„ ,(£,,£,) На и-му кроці, поклавши £, = 6,, £2 = Ь2, знаходимо д„(6,, 6,) < і водночас л " (/>,, ь,) • „ • • -ооо Оптимальні значення всіх інших змінних г(| , , «п_2,- >*] можна одержати із таблиць попередніх кроків за допомогою співвідношень: о /і, о / оЛ . х„ ,=х„ Ь2-аіпхл), 2=х„ 2(^ ~а,„х^-а,п ,х„° 1 і Ь2-а,„х“-а2п., х“ ,) і т.д. Як бачимо, функції А, (£,,£,) , хк (£,, £2) є функціями двох змінних (параметрів) Якщо кожна із змінних Е, 2 може мати 102 значень, то функцію А, (£,, ) потрібно табулювати в 10 4 точках. Коли маємо три обмеження вигляду: 2 х7<Л, , і = 1, 2, 3, (7.2.4) /=і то для розв’язання задачі (7.2.1), (7.2.4) методом динамічного програмування потрібно ввести три параметри стану Е, । , с 2 , Е,3 і функцію Л((^Д,Д}) . Коли кожен з параметрів Е,] , £2 , £3 набуватиме 102 значень, то функцію Л((^Д2Д,) доведеться табулювати вже в 10 6 точок. Як бачимо, обсяг обчислень за схемою ДП зростає експоненціально залежно від розміру задачі (тобто від числа параметрів стану т ). Без спеціальних способів задачу, іцо містить більш як три параметри стану, неможливо розв’язати на сучасних ЕОМ через надто великий обсяг обчислень, який іростає експоненціально, іалежно від розміру задачі. Це плата за пошук глобального оптимального розв’язку. Цей феномен Р. Беллман свого часу охарактеризував як «прокляття багатовимірності» динамічного програмування [4; 18]. 470
Дослідження опертіїй Задача з двома змінними управління (керування) Розглянемо попередню задачу в дещо зміненій постановці, коли є дві змінні управління х>, уі два типи ресурсів (Ь|, Ь2), а дохід і (.V , У ) “ ЦЄ функція кількості обох типів ресурсів, розподілених на даному кроці. Отже, нехай потрібно: максимізу вати 2 = (л,, у,), /=і при обмеженнях: Е а\іх ; Е я27у 7-Л2 ; 7 = 1 7 = 1 х >0 ; у і >0 ; а(у>0; «2^-0 ; Ь},Ь2>0. Щоб описати стан системи на к -.му кроці, знову потрібно ввести два параметри ^ ।, £ 2. Визначимо функцію стану: Л4(^,,^2)= ™ах Е ЛЦг -1’/)' при обмеженнях: к к Е ; Е а2іУі^і- 7 = 1 /=1 ОРС для цієї задачі мас вигляд: Л*(^ <г)=™ (Л -«.* хк -а2Іі у,)} , причому максимум в (7.2.3) по хк , ук знаходять перебором усіх можливих комбінацій. Наприклад, якщо хк , у к можуть набувати по 102 значень, то для знаходження Лд (£,, ) при фіксованих £,-2 потрібно перебрати 10 4 значень функції: Ц (Л> Л &={/к (Л ’ Л )+л*-і (£ -«к Хк '> & -«2* Ук)} • Отже, обсяг обчислень ще більше зростає порівняно з поперед- ньою задачею, і ми знову стикаємося з «прокляттям багатовимір- ності» Беллмана. 471
іаиченм) Ю.П Застосування методу множників Лагранжа д ія зниження вимірності задач динамічного програмування Розілянемо один з найпоширеніших методів зниження вимірності задач ДП - метод множників Лагранжа. Нехай потрібно розв'язати таку задачу: максимізувати 2 = ^ [ (х,)> (7.2.5) і 1 при обмеженнях Еяі7х/ = /’і’ (7.2.6) /=і Ї«27-^ = Ь2, (7.2.7) 7-1 х > 0 , і = 1, п . 7 максимізувати 2і=гпах Помічаємо, що обмеження тут задано у формі рівностей. Від задачі (7.2.5) з двома обмеженнями перейдемо до задачі з одним обмеженням: ЕЛ(х,)-л£Оі/х,|. <7'2'8) при обмеженні: (7.2.9) 7-1 лу>0. Для розв’язання задачі (7.2.8) методом динамічного програмування потрібний лише один параметр стану, і тому вона набагато легша, ніж вихідна. Параметр X в (7.2.8) - це множник Лагранжа, і він відіграє роль ціни на другий ресурс ( Ь2 ) Апріорі величина X невідома і тому задачу (7.2.8) доводиться розв’язувати при деяких довільних значеннях X. 472
Дослідження оперений Розв’ябуватимемо задачу (7.2 8), (7.2.9) методом динамічного програмування. Її оптимальний розв’язок залежатиме від X як параметра <"’т=х,°(Л), /=Ї7^. Якщо знайдений оптимальний розв’язок л"(Я) задовольнятиме відкинуте обмеження (7.2.7), то він і буде шуканим. У супротивному разі значення X позрібно скоригувати. Як показано в [49], функція А, =У а,, (2) монотонно спадає із /-і збільшенням X. Тому, якщо (Я)>А, > значення X потрібно і і збільшити (оскільки по другому ресурсу є перевитрати, то ціну на нього потрібно підвищити). У супротивному разі значення X потрібно зменшити. Для швидкого визначення шуканого значення X можна застосувати метод послідовних наближень, що оснований на такій інтерполяційній формулі. Якщо вже апробовано два значення X, , X 2 і знайдено для них відповідні оптимальні розв’язки х*(Л,), з'(Л,) , то на наступному кроці Х3 оцінюють за такою формулою: (7.2.10) й2 -А, Де Л2=Е О2^*(2з) - 0,^(2.). /=І >=1 Покажемо, що коли оптимальний розв’язок задачі (7.2.8) х* задовольняє (7.2.7), то х* — оптимальний і для задачі (7.2.5). Припустимо, що це твердження не правильне, і позначимо через л ° розв’язок задачі (7.2.5). Тоді: 473
Зайченко Ю.Н. 2(х,,)=Е/,(/;)> ^/,(л-;)=2(х’). (7.2.И) і- । і=\ Оскільки х - оптимальний розв’язок для (7.2.8), то: 21(л') = 2(л*)-Л^ я,7х’>2(х(,)-Я^ а2/.х“- /=І 7=1 Водночас, оскільки п п п Е о2/х*7= £ а2)х- , 7=1 7=1 то: 2,(х’) > г(хСІ). (7.2.12) Порівнюючи (7.2.12) і (7.2.11), приходимо до висновку, що 7=1 у- Отже, це твердження справедливе. Основне рекурентне співвідношення для задачі (7.2.8) мас вигляд Л4(^)=гпах(Л(хі)-ламх4+ЛА.1(^-ап^)). (7.2.13) 0<лд Можна показати, що при збільшенні X від 0 до оо, величина Л, (2)=^ аг .г®(Я) монотонно спадає [4; 49]. Ця важлива /=і * особливість значно полегшує пошук X при розв’язуванні практичних задач. Розглянемо загальний випадок обмежень: максимізувати £/, (*,). (7.2.14) 7=і при обмеженнях: УаІіхі<Ьі;і=ї7м-,хі>0-,і=ї7п. (7.2.15) 474
Дослідження операцій Введемо к(к< М ) множників Лагранжа і перейдемо від (7.2.14), (7.2.15) до еквівалентної задачі максимізації функції: гпах^/^Ь^Я.^Х.г/, (7-2-16) ІГ'' V 7=1 .-І 7=1 ) при останніх т к обмеженнях: П ------ а^х^<Ьі ; і = к + 1. М . 7=1 Задачу (7.2.16) розв’яжемо мезодом динамічного програмування з використанням невизначених множників Лагранжа. Таким чином, задача зводиться до визначення функції стану А* від М-к змінних і,і разом з пошуком по Аг-вимірному простору змінних, які задовольняють перші к обмежень. Вихідна багатовимірна задача замінюється послідовністю задач значно меншої вимірності, що дає змогу суттєво знизити вимоги до обсягу пам’яті ЕОМ та її швидкодії. Розв’язання транспортної задачі методом динамічного програмування Як приклад використання методу множників Лагранжа розглянемо транспортну задачу з двома пунктами виробництва Л|, А 2 та п пунктами споживання В і, В2, , В„. Позначимо через х^ - кількість продукту, що перевозиться із А} до В у, а х2у - кількість продукту, шо перевозиться із А2 до Ву, Позначимо через с(. (х ) вартість перевезення маршрутом А і В . Тоді транспортна задача формулюється так: 2 п мінімізувати <7'2,7> 1-І у-І при обмеженнях: 475
ісшченм» Ю.11. X хи=а, . ( = 1,2; (7.2.18) 7=1 2 ____ . 7=1, и. (7.2.19) і=і Коли с-і(хі/)=сііхі/ , го задача легко розв’язується методами ЛП. Однак ми розглянемо випадок, коли с,. (г ) - нелінійні функції, і тому застосуємо метод динамічного програмування. Покажемо, що, незважаючи на велику кількість обмежень, функцію стану процесу можна описати лише одним параметром. Розглянемо випадок, коли кількість продукту в пунктах А} та А 2 /1 становить і £,2 одиниць Оскільки ^( + ^2 = ] , го £2 = 7=1 п £ Ь!. - £, ], і тому £, ] - це єдиний параметр стану. 3=1 Введемо послідовність функцій: Л*(^1)=тіп^^1/(х).) + ^2;(х2.) • (7.2.20) /=і де мінімум шукають по всіх |х, які задовольняють обмеженням: А А А ІЛі7=^і: Е*27=Е*7 , л-,7+х2у =6, ; 7 = 1, 2,...л. 7=1 7=1 7=1 Основне рекурентне співвідношення тоді записується так: Л( (£,) = тіп[£Дх,*)+£24(Ь4-х,4) + 24 ,(^-х,*)] . (7.2.21) 'іі де хк задовольняє умові 0<хи <іпіп {£, ,Ьк]. При проведенні обчислень функція ЛД£,) має табулюватися для п всіх 5, । = 0, 1, ... , £ Ь і. На останньому кроці (при к = п ) знайдемо 7=і 476
Дослідження операцій ♦ * ♦ _ . . ♦ Г,„ га х2п=^п Х\п УС1 1НШ1 1М1НН1 «ц знаходимо ПОСЛІДОВНО 13 співвідношень: °І “Е Аі*.п-и < и-0 > 7 = 1, 2,... л-1 - Розглянемо тепер цю саму задачу, але з трьома пункзами виробництва Л ], Л 2, Л 3 . Функція стану цього разу визначається так А*(£,,£2) = тіп£ £ я.Д.г,,) А = 1,2,. ,п (7.2.22) ,=і при обмеженнях: к к к к Ї^Ч2; і = і ; (7.2.23) / = 1 7 = 1 7 = 1 7 = 1 ХІ7 + х'27 +л’3/=67 ; 7=1,2,...,*. (7.2.24) Рекурентне співвідношення динамічного проірамування запишеться так: л* (£,£>)= тіп (лі*)+§2* (*»)+ ”*ї2‘ (7.2.25) +^з*(^-^і*-^2*)+а4 їіа,£,-х2А)}, причому мінімум в (7.2.25) шукають по .г]А , х2А , які задовольняють умовам: 0<>ІА<тіп{^(, 6А}, 0<х2і <тіп{£,, Ьк} , хїк+хгк<Ьк\ А х3к =Ьк -х]к -х2к < X Ь7-^] -^2 , А 1 Х1А +Л'2А -£1 +^2 ~ £ й7 7=1 в якій шукають мінімум, рис. 7.7. Функції АД^,^,) Область, показана на мають табулюватися для всіх цілих । Д 2, таких, ЩО^1+^2<£б.. Для скорочення вимірності задачі застосуємо метод множників Лагранжа. Припустимо тимчасово, що немає 477
Заичепко Ю.П обмежень на КІЛЬКІСТЬ продукту, ЩО ВИВОЗИТЬСЯ 3 пункту А 2 натомість кожній одиниці продукту, що вивозиться приписана ціна X. Розв’язуємо задачу вигляду: Мінімізувати г = ітпп )*82/(-Г2/ )+8з/('Ч )^І Т2, 7=1 /=І звідти. (7.2.26) при обмеженнях: І, М,=«і> 7 = 1 хі / +х2/ + ’ 7=1, ” (7.2 27) Шукатимемо мінімум в (7.2.26) для різних значень X, поки не буде знайдено такий оптимальний розв’язок, який задовольнятиме п Е х2;(X )=о2. Тоді автоматично виконуватиметься і третє обмежен- ні ня X х3)=а3. 7=1 Для розв’язування задачі введемо функцію стану з одним параметром £,: Ла(^)=£ПІП}Х [йі,(-<і7 )+^-¥27^йз7(аз7 )], (7.2.28) де к ___ Е х\)=^ -• х2у+хзу =6, ; 7 = 1, п. 7 = 1 Основне рекурентне співвідношення тоді можна записати так: ТПІП {&1Л (-V)* )'%2к (л2* )+Т.Х2А -£за (йА-х1А -л2Л )+ *1*,*2* А А-і зд )}, (7.2.29) де Т|/., х2А задовольняють нерівності: х!* ; *ц^тіп{£, Ьк} 478
Дослідження операцій Як бачимо, Т-задачу з трьома пунктами виробництва та п пунк- тами споживання можна звести до послідовності л-крокових задач з одним параметром стану Е, . 7.3. ЗАДАЧІ КЕРУВАННЯ ЗАПАСАМИ Загальна характеристика Задачі керування запасами становлять один з найпоширеніших класів задач дослідження операцій, розв’язання яких має велике господарське значення. Правильне та своєчасне визначення оптимальної стратегії керування запасами, а також нормативного рівня запасів дає змогу заощадити значні оборотні кошти, які знаходяться у вигляді запасів, що (в остаточному підсумку) підвищує ефективність використання ресурсів. Існує велика кількість різних моделей задач керування запасами. Наведемо основні характеристики моделей цих задач [18]. Елементами задачі (системи) керування запасами є: - система постачання; - попит на предмети постачання; - можливість поповнення запасів; - функція витрат; - обмеження; - обрана стратегія керування запасами. Розглянемо докладніше кожний з цих елементів. Системи постачання бувають- децентралізовані (однокаскадні) і централізовані (багатокаскадні). Попит на предмети постачання поділяється на стаціонарний або нестаціонарний, детермінований або випадковий Розрізняють такі способи поповнення запасів; миттєва поставка; поставка із затримкою на фіксований часовий інтервал; поставка із затримкою на випадковий інтервал. Функція витрат складає в сукупності критерій ефективності обраної стратегії керування і включає в себе (у заіальному випадку) витрати на зберігання, вартість поставки, втрати на замовлення кожної нової поставки, штрафи за дефіцит. 479
Заіічеико Ю П Наведемо можливі варіанти цих складових. Витрати на зберігання бувають такі: пропорційні середньому рівню додатною запасу на період часу його існування, пропорційні залишку запасу наприкінці періоду, нелінійна функція середнього рівня запасів та інтервалу існування додатного запасу. Вартість поставки буває: пропорційною обсягу поставки, постійною, пропорційною кількості типів постачуваних запасів. Штрафи внаслідок дефіциту бувають такі: пропорційні середній додатній нестачі (дефіциту) за період; пропорційні додатній нестачі на кінець періоду; сталі, нелінійні функції від середнього рівня дефіциту та інтервалу часу його існування. Обмеження в задачі керування запасами вводяться на: мак- симальний обсяг запасів; максимальну масу; максимальну вартість запасів; число поставок у заданий інтервал часу; на вартість поставки; на обсяг поставки; на ймовірність дефіциту. Стратегія керування запасами має бути такою, що мінімізує обрану функцію витрат - критерій ефективності. Розглянемо деякі типові моделі задач керування запасами. Задача керування запасами при детермінованому стаціонарному попиті та періодичних поставках Розглянемо найпростішу модель керування запасами зі сталою інтенсивністю попиту ц та постачання X. Поставки здійснюються періодично з періодом Т. Графік ко іивання запасів показано на рис 7.8. Позначимо через ¥ максимальний запас на складі, а ¥д - максимальний дефіцит. Приймемо, шо витрати на збері- гання (штрафи) пропорційні середньо- му рівню запасу (дефіциту) та інтер- валу часу його існування, а виграти на одну поставку фіксовані величиною % . Позначимо через У питомі витра- ти на зберігання одиниці продукту в одиницю часу. Р - питомий штраф за дефіцит одиниці продукту в одиницю часу. При цих припущеннях загальна функція витрат за період матиме такий вигляд: 480
Дослідження операцій = | | у(ґ)Л- (7.3.1) Як випливає з рис. 7.8, поточний рівень запасів описується так: (Л-р)і при 0</</,, У-р(і-і,) при -У, +(Л-р)(і-^-1,-1,) при і1-сі2+іі<і<Т. у(0= Максимальний дефіцит У, виражається через У (рис. 7.8): Г-(г,-г.) У =--——-У- * , и./ •5 У Знаходимо /, =----- У та (2 =—, тоді: А Г,-г/2=------ а^-а) (7.3.2) Позначивши У р(Х-ц) (7.3.3) одержимо: (7-3.4) Підставляючи (7.3.4) в (7 3.2), дістаємо: 7-лУ Знайдемо вираз для функції витрат з урахуванням (7.3.4), (7.3.5): У(/,+М ^(7-(г-Г)) аУ2 -----— + р —---; — = £ + Л'-+ 2 2 2 (Т-аУ)(Т-аУ) заУ2 : раУ2 рТ2 _ 2а К 2 2 Р 2а =^2ХкіРІ^рТ}+рЛ. 2 2а (7.3.5) (7-3.6) /,+/,=« У . 2У 481
Зайченко Ю.П. Середні витрати в одиницю часу дорівнюють: І І \ 2 2.СІ (7.3.7) Необхідно знайти такі значення У0, 7°, для яких функція £ мінімальна. Для цього складаємо та розв’язуємо систему рівнянь: аМг»7')=.Ф+р)Г р; (7.3.8) Т дЬ<АУ’Г)_ І Г о(5 + р)г21 р (7.3.9) дТ Тг 8 2 2а Із (7.3.8) одержимо таке співвідношення: РТ а(8 + р) Нарешті, із (7.3.9) матимемо: (7.3.10) (7.3.11) Підставляючи в рівняння (7.3.11) вираз для Т із (7.3.10), після нескладних перетворень дістанемо: а^ + р)¥2 або І 2^р (7.3.12) 2р у аз(р+$) Підставляючи в (7.3.12) вираз для а із (7.3.3) і поділивши чисельник та знаменник на ЛР, одержимо остаточний вираз для оптимального максимального рівня запасу: (7.3.13) Підставивши цей вираз у (7.3.10), знаходимо оптимальний період поставки: 482
Дослідження операцій (7.3.14) При таких значеннях У0 Т° досягається мінімум середніх витрат в одиницю часу: £° = (7.3.15) Розглянемо тепер окремі випадки цієї загальної задачі: 1) нестача запасів неприпустима (див. рис. 7.9). Тоді поклавши р=<х> і підставивши ^/=0 в (7.3.13)-(7.3.15), одержимо: (7.3.16) (7.3.17) <7318> 2) миттєві поставки (рис. 7.10). Поклавши в (7.3.13)-(7.3.15) Х=оо, =0, одержимо: 21* 483
Заіічепко Ю.П дефіцит не допускається, поставки миттєві (рис. 7.11). Підставивши Х=оо, р=со, ^=0 , ^/ = 0 в (7.3.13)—(7.3.15), дістанемо: • г°=^ ’ . (7.3.20) Співвідношення (7.3.20) називаються формулами Уілсона, а л о величина ¥ в (7.3.20) - економічним розміром партії [49]. Задача керування багатономенклатурними запасами при обмеженні на місткість складу Розглянемо задачу створення багатономенклатурних запасів при обмеженні на загальну місткість складу. Нехай для /-го виду продукту (запасу) витрати на замовлення фіксовані і становлять л , питомі витрати на зберігання одиниці продукту 5,, /=1, п, попит детермінований з інтенсивністю ц,, (/ = 1, 2, ..., п). Припустимо також, що поставки виконуються миттєво (Х,=оо), і дефіцит не допускається (р = ж), причому замовлення по різних продуктах виконуються незалежно. Тоді середні загальні витрати 484
Дослідження операцій по всіх номенклатурах в одиницю часу при заміні ( Г, =— ) М/ визначаються співвідношенням: де У і ~ розмір замовлення по і -й номенклатурі. Якщо на запаси накладено обмеження, що середній сумарний рівень не повинен перевищувати місткість складів, то потрібно мінімізувати Лс/1 при обмеженні вигляду: Уер^ІУі^с. (7.3.22) 2 і=і Спочатку визначимо оптимальний розмір замовлення по кожній номенклатурі згідно з формулою Уілсона (7.3.20): г°= I 2Р— -,/= і, 2, ...,п. (7.3.23) Якщо ,о< , то обмеження (7.3.22) виконується і (7.3.23) 2^У' ~С визначає оптимальні розміри замовлень {у°}. У супротивному разі потрібно шукати мінімум (7.3.21) при обмеженні: І " 2 .=1 (7.3.24) Для цього застосуємо метод множників Лагранжа. Складемо функцію: Оптимальні значення змінних у( , у, > -• У п визначаються розв’язком системи рівнянь: 212 485
Зайченко Ю.П. дФ 1 8,А, 3 _ ---=—я,-----—ьл=О, і &У, 2 у. дФ „ ---=2с—> у =0. 52-' Звідси оптимальний розмір замовлення у співвідношенням: 2И, £/ 5, +2 А.* (7.3 26) визначається (7.3.27) Модель керування запасами при імовірнісному попиті та миттєвих поставках Розглянемо деякі задачі керування запасами при імовірнісному попиті. Найпростішим випадком керування запасами с однократне прийняття рішень на поповнення запасів [18]. Розглянемо цей варіант. Л варіант. Розглянемо модель керування запасами при імо- вірнісному попиті та миттєвих поставках. Нехай 2 - запас продукту до початку операцій; у - запас після поповнення (у>з), а (х>0) імовірнісний попит за період операції Т ; /(л ) - щільність розподілу попиту; с(у-г ) - витрати на поповнення запасів. Припустимо, що замовлення на поповнення виконується митгєво. Якщо наприкінці операції на складі лишається частина невитраченого запасу (у-х )>0, то система постачання несе витрати на зберігання лишкового запасу 5 г (у - х ) (при х > у , 5 т ( у - х )= 0 ). Навпаки, при неповному вдоволенні попиту (л > у ) система сплачує штраф за дефіцит Рт (х-у). Тоді математичне сподівання сумарних втрат системи за період дорівнює: Аг(у,2)=Ї5г(у-х)/(х)с/л+]рг(^-у)/(х)4/х+с(у-2). (7.3.28) о у 486
Дослідження операцій Знайдемо, при яких значеннях у>з величина Аг(у,з) буде мінімальною. Для цього визначимо: ^^—--^=і8'т(у-х}/(х)с1х-\р'г(х-у)/(х)с1х^с'(у-г), (7.3.29) дУ о де 5'г( г’-х), Р'т (х-у), с’(у-з) - позначені частинні похідні по відповідних функціях, в (7.3.29) враховано, що Ут (о )=Ру (о )=0, і дЬт покладемо-----= 0. У загальному випадку функція £г(у,2) при фіксованому г може мати декілька мінімумів. Позначимо через У| абсцису абсолютного мінімуму ьт(у,:), а через Уз, У 5, у 7 ... точки наступних відносних мінімумів, причому нехай Л(у|)<£(у,) <7,(г,)< ...<Цу2»-і ) (рис. 7.12). Нехай далі у2, >4’ і’б _ точки, що задовольняють такі умови: Уі<у,25.*'з< < У4 <••; ( У 2 ) = (уз ) • (. т4 ) = 7-т (у5 ) і т. д. Тоді оптимальна стратегія керування запасами буде такою [18; 49]: 0 Уі Уз Уз У Рис. 7 12 при ?<Г[ замовити (у(—я); при у । <г< V2 нічого не замовляти; при у 2 < з < у з замовити (у3 -з) і т. д. 21** 487
Зайченко Ю.П. Наведемо достатні умови, при яких оптимальна стратегія мас більш просту форму, що відповідає одному мінімуму функції £г(у,г) [49]: а) А г (0, т) - не є відносним мінімумом та £'г (0,г )=- | Р'т (л)/(х)«?х + с'(0)<0; о 5Аг(у,2) в) рівняння----------=0 має не більш як один дійсний корінь; с)Ьт (у,2 )—> со при у —> со. Пояснимо фізичний зміст умов: а) економічна доцільність створення додаткового запасу; с) неефективність занадто великих запасів. * дЬт (У,2 ) Позначимо через у розв’язок рівняння -------------= 0 (рис а у 7.13) . Тоді оптимальна стратегія єдина і така: при 2<у замовляти (робити замовлення на поставку) у -г; при г > у" нічого не замовляти. II варіант. Припустимо, що вартість поповнення запасів дорівнює #+с(у-г) при у>2 та нулю при у = 2 . Як бачимо, в цьому разі, порівняно з варіантом І, з’явився додатковий член # 488
Дослідження операцій (фіксована плата за замовлення). У розглядуваному випадку замовлення на поставки доцільно робити лише за умови: Лг(г,_’)-Лг(у,;)>£. (7.3.30) Якщо рівняння (7.3 ЗО) мас єдиний розв’язок £, то оптимальна стратегія, як видно з рис. 7.14, має такий вигляд [49]; при 2<у замовляти у при 2> у нічого не замовляти. о у у' у Рис. 7 /4 У літературі ця стратегія дістала назву «стратегії двох рівнів» або (§,5)-стратегії [49]. Визначення оптимальних рівнів запасів у при імовірнісному попиті та лінійних функціях витрат. Розглянемо окремий випадок моделі при імовірнісному попиті, коли функції витрат РТ(и), 5Г(») та с(и) лінійні. У цьому разі величини у можна визначити аналітично. Справді, (/-•» )=»>*(.» т). Р, ( г-у)=рЛ*(.г-у), с(> -з)=е*(у-і), тоді. £г( | (у-.г)/(л)</л + рЛ ] (л-у)/(л)г/л+с(у-’)’ <7-3-31) 0 1 21і 489
Зсіііченко Ю.П. ?Ьг(у ? І’ | / (х)сіх- рт | /\х)<1Х+С=0= о =*г Р( у)~ рт (1 - Г(у ))+с = О Звідси для рівняння знаходження оптимального рівня запасів одержимо е(у)=_рі_7с ; (7.3.32) Рт де Г( г ) - функція розподілу випадкового попиту Зокрема, для попиту, що розподілений за законом Релея: _х2_ Р(х)=—— е 20 , с“ маємо: V ~ п 2 Р т ~ С Р{у) = \-е -а р т $ т звідки: • їм Рт 8т у =<т 21п V 5Г +с Для експоненціального розподілу попиту одержимо: Р(у')=\-е >=±7^, Рт+^т Звідки: * ті Рт+8т у =/лТт • С + 8Т Розглянемо випадок дискретного розподілу попиту р (X ): £г( І )=5Г £ (у-х)р(х)+рг £ ( <“>’ )р(*)+с(у-х) <7-3-33) .1=0 г=» Відповідно: 490
Дослідження операцій ьі (з; + 1 )=*г£ (-У-Я + 1 )/>( *)+ ’=« (7.3.34) + Рт 21( ї-г-1)р(л')+с( ^-2+1). Ї = Г+І Знайдемо різницю: Д£г(у)=£г( у + 1)-£г(у )=5Г £ р(х)-Рт X р(х)+с= л=0 <=>• + ! = (Рт +5т)ІрМ~ Рт +с- (7.3.35) л-=0 Доведемо існування та єдиність оптимального розв’язку у , для чого проаналізуємо знак різниці Д Ь т (у). При у = 0: Д£, (у)=-рг +с<0’ а при у ->оо: Д£г (у)=с+$г >0- (7.3.36) Отже, монотонність функції Д £ т (у ) забезпечує одноразову зміну знака різниці Д£г(у). Очевидно, вибір у* має виконуватися із умов Д£г(у*-1)<0, Д£г(у*)>0, (7.3.37) які можна звести до системи нерівностей: рОУ <7-3-38» л=0 Р Т $ Т *=0 Знайдемо витрати за період так, як і в детермінованому випадку (рис. 7.15): а) при л< V середній додатний запас дорівнює 1 . , • X У+=—[у +(у -л)]=у —, а час його існування Т+~Т; 21*** 491
кгіїченко Ю.П. б) при х>р одержуємо середній додатний запас V + =— у . Т+ =-—Т, середній дефіцит у _ (л - у *), час існування запасу Т\ та час існування дефіциту Т_=-—-—Т. х Загальні витрати в одиницю часу становлять: Е 7—/>(*)+ Т х=ок 2) - , 2 х + Рт І х=ґ+1 7.4. ДИНАМІЧНІ ЗАДА ЧІ КЕРУВАННЯ ЗАПАСАМИ У статичних задачах керування запасами розглянуто функціонування системи (моделі) за один період. У деяких з них одержано аналітичні вирази для оптимального запасу у 0 (зокрема, в детермінованій моделі зі стаціонарним попитом та періодичними поставками) Зазначимо, що ці задачі перші, для яких було створено і застосовано метод динамічного програмування. 492
Дослідження операцій Якщо розглядається функціонування системи за п періодів, причому попит нестаціонарний, то маємо динамічні моделі задач керування запасами. Такі задачі, як правило, не допускають аналітичного розв’язання, проте оптимальну стратегію керування можна знайти, застосувавши метод динамічного програмування. 1. Нехай розглядається задача керування запасами на п періодів, коли попит в і -й період детермінований і визначається величиною сі і , і = 1, п. Введемо такі позначення: ук - залишок запасу від ( к-1 )-го періоду; сі к - попит в к -му періоді ( А = 1, п ); хк - запас, що створюється в к -му періоді (або замовлення на поставку). Припустимо, що замовлення на поставку виконується миттєво, причому витрати на виконання замовлення (виробничі витрати) позначимо через С к (х ,ук ) Нехай ) — витрати на зберігання залишкового запасу в к -му періоді, причому дефіцит у системі недопустимий. Тоді сумарні витрати системи на виробництво та зберігання надлишкових запасів за п періодів становлять: = X с , Ук)+£ Д** + ук -ак), (7 4.1) *=! при обмеженнях: хк + Ук~ак ~Ук+\- *=>• п- Необхідно знайти такі {х4},{У4} , для яких (7.4.1) буде мінімальним. Щоб мінімізувати ЬпТ , скористаємося методом динамічного програмування. Послідовно мінімізуватимемо витрати за 1,2, к періодів за умови, що на початку (к +1 )-го періоду є залишковий запас Е,. Визначимо послідовність функцій стану: А, «)=шіп £ С (х ,у,)+5 (х +у -сі,)= І’-‘7^ (7 4 2) /, (хпУ,У 493
Зайченко Ю.П. при обмеженні: Ч + V* -<1к = ^. (7.4.3) Тоді основне рекурентне співвідношення ДП запишеться так: (с)=тіп{/1 ,(>*)! = (7.4.4) =гпіп{/, (х, ,^-х4+«/, ) + Л, ,(£-х4 + <)}, де Хк * Ч -</* = £. На першому кроці (при к = 1) одержимо: Л, (£)=тіп{/, (х, ,у,)}=тіп {С, (х,,т^ + 5, (х, +У| -с?,)}, при обмеженні: Ч +Ті ~<1\ =£- Обчисливши послідовно Л|(^), Л 2 (^), А *((;), на останньо- му кроці, прийнявши ^=у,І4.| , знайдемо Л„(гп+1 ) та х’(т„+1 ). Оптимальні значення х к знаходимо далі послідовно за формулою: я.-=Х.,* ік-;)} <74-5> ч >=*+! ) 2. Розглянемо окремий випадок, який значно спрощує обчислювальну схему ДП. Припустимо, що: - усі функції Су (ху ) вгнуті по змінних ху; - функції витрат на зберігання запасів лінійні, тобто: $ І )=^У ( Ту + 1 )=5у З'у + 1 Тоді загальний вираз для функції витрат матиме вигляд: ь"г тж іДс> )+5'у'" , іД Л (х' •>і" '<7 А6) 494
____________________________________________Дослідження операцій при обмеженні: х; +У, - »’ ,и =^,. У = 1- п. (7.4.7) Припустимо, що Г| , л’и+і задано, замовлення на поставки запасів виконуються на початку періодів, часом на виконання замовлення нехтуємо (поставки миттєві), а попит кожного періоду повинен бути задоволений повністю (дефіцит не допускається) Необ- хідно відшукати такі послідовності {хД, {, які мінімізують функцію загальних витрат ЬпТ в (7.4.6). Розглянемо процедуру розв’язання. Оскільки потрібно знайти мінімум суми вгнутих функцій /у (ху ,/7+і ) на опуклій множині, то оптимальним розв’язком буде одна з крайніх точок допустимої множини розв’язків, яка визначається обмеженням (7.4.7). Оскільки кількість обмежень дорівнює л, а загальне число змінних {х^} та {у.} дорівнює 2л, то оптимальний розв’язок містить не більш як п ненульових значень змінних. З урахуванням того, що ху,у; не можуть дорівнювати нулю одночасно (у супротивному разі не виконуватиметься (7.4.7)), оптимальний розв’язок {х“ , має властивість: о о п ;— ху гу = 0 , у = 1, п. Умова (7.4.8) еквівалентна такій парі умов: якщо уу=О, то Ху>0, якщо у у >0, то х® =0 . Пояснимо зміст умов (7.4.8), (7.4.9). Замовлення на виготовлення (поставку) нової партії х у не робиться, якщо на початку періоду у був ненульовий запас (у у > 0), і навпаки, якщо на початку періоду у запас у у =0, то робиться замовлення на поставку ху > 0. Звідси випливає, що Ху = 0, або Ху = сі у, або Ху=с/у+г/у+1і т.д., тобто оптимальний розмір замовлення дорівнює попиту на ціле число періодів. (7.4.8) (7.4.9) 495
Зайченко Ю.П. Припустимо, що г„+1=0 . Тоді розв’язуємо задачу (7.4.6) в прямому напрямку Нехай ЛА(^) - мінімальні витрати за А періодів, якщо запас на початок ( А- +1 )-го періоду дорівнює і, Основне рекурентне співвідношення ДП для цієї задачі мас вигляд: А Д£)=тіп {/,.(**,£) +А* ,(^-х*^^)}, (7.4.10) лі при обмеженні: £ = У*+1 =хк + >А “А- * = 1> « У розглядуваному випадку, оскільки у°=0, мінімум у (7.4.10), внаслідок вгнутості функції {/* (**,£) +Л4 (£-х*+с/А)}, досягає- ться в одній з крайніх точок хк =0 або х к =£, + <1 к. Тому: Л,(4)=тіп ЛКЧ^+Л. ДО) Л(0Д)+л4 ,(4+Л) Аналогічно: А* і тіш /к і(^ + ^к+^к !^ + ^к)+^к 2 (0). ,Л )+л* 2(^+сік+с/к_І) (7 4 11) (7.4.12) (ї^к )= Виписавши вирази, аналогічні (7.4.12), для Л*_2(о), А к_3 А ] і підставивши їх у (7.4.12), (7.4.11), одержимо в результаті: лД^)=пііп5к(ї). (7.4.13) Тут: ґ Л к ' «*(')=Ла-і(о)+/і І + , и=і и=і + \ , ' (7.4.14) к І к + І Л 0:£ + Е с/и , у=і + 1 и=у+І ? Дє §к (і) - витрати за к періодів за умови, що останнє замовлення робилось на початку періоду і 496
Доспдження операцій 3. Розглянемо окремий випадок функції виробничих витрат на виконання замовлення С (ху). Нехай де А) - фіксовані витрати на замовлення; 8 (х 1=1°’ ЯКи'° Х‘"°' (7.4.16) ' ' | 1, якщо хі >0. Тоді: X с,(*, )=Х А,5І(Х, )+сХ х,= /-1 /=| /=1 =Х А16І(х, )+сХ (у/о-уі+іі, )= /-І /=1 =£л,<у,(х,)+с XК /=| І 7-і } » X. 4, <5, (х, )+ сопзі /--і У цьому випадку задача спрощується і зводиться до задачі ЛП мінімізувати і (л,6, и Хі, Лч1 ), (7.4.17) 7=1 при обмеженнях: +3'7-уі7+і=б/7 , хуту=о. (7.4.18) Використовуючи вирази (7.4.13)-(7.4.17) і підставляючи їх в (7.4.14), одержуємо, з урахуванням, що ^=0, співвідношення: *-1 к «*(')=Л,-](0)+Л, + X -5; X 7=і м=7 + ) (7.4.19) (7 4 20) 497
Зайченко Ю.П. Подальше спрощення в обчислювальній схемі можна отримати, якщо врахувати таку обставину. Якщо при обчисленні Л^_](о) виявилося, що замовлення, за допомогою якого задовольнявся попит (к -1 )-го періоду, робилося на початку періоду V, то і замовлення, яке задовольняє попит к -го періоду в оптимальному рішенні, мас виконуватися також не раніше періоду V . Отже, при обчисленні Л к (0) достатньо розглядати: Л*(0)=тіп^А(/). (7.4.21) Приклад 7.3. Підприємство планує поставки своєї продукції на 7 місяців у таких розмірах: <7 = 90 шт., д,= 125 шт., д3= 140, аА= 100. <75= 45, г/6 = 60, <77= 130. Витрати на зберігання одиниці продукції протягом місяця становлять 5, =5= 2 грн. міс.; у=і 7 . Витрати на налагодження устаткування (верстатів) для виробництва партії становлять а] = 300 грн.; у=і. 7 . Причому налагодження робиться лише в ті місяці, коли випускається партія. Часом на виконання замовлення нехтуємо. Необхідно визначити місяці, коли виконуються замовлення, а також оптимальні розміри партій , у=і, 7 . Припустимо, що на початку першого місяця не було жодного запасу, тобто і|=0. Отже, необхідно: мінімізувати 2 = тіп - зооХ^ >=1 У-І де бу(3у ) = 1, ЯКЩО г,>0 І 6;(.г; )=0, ЯКЩОЛ =0, при обмеженнях' Л| -у 2 =<71 — 90, ху + у,-у, + |=«/у, 7=2,7. Використовуючи співвідношення (7.4.19), (7 4 21), маємо к= 1 Л|(О)=Л|=зоо; к= 2 А 2 (0) = иііп Л , +2(1 2 =300 + 2 125=550 А , +Л 2 =300 + 300=600 =550; г=1. 498
Дослідження операцій Таким чином, тільки при двох періодах вигідніше виконувати лише одне замовлення в першому періоді: к = 3 Лз(О)- тіп §^(/)=тіп І5і£3 « = !. Л ।+2(<72)+243=1100 і = 2, Л ; (0) + 42+243 =880 і = 3. Л2(0)+43=850 = 850 ; / = 3. Результати всіх наступних обчислень наведено в табл. 7.10. Таблиця 7.10 Період к 1 2 3 4 5 6 7 Попит гі к 90 125 140 100 45 60 130 Єк(>) і= 1 2 3 4 5 6 7 300 550* 600 1100 880 850* 1050* 1150 1230* 1240 1350 1590 1480 1470* 1530 1990 4790 1770* Лк(0) 300 550 850 1050 1230 1470 1770 V 1 1 1 3 1 3 1 3 1 3 5 1 3 5 7 В останньому рядку таблиці 7.10 наведено номери тих місяців, у які виконувалися замовлення. Зірочки над «*(') вказують на те, що дане значення с мінімальним по і у відповідному стовпчику (тобто ДОрІВНЮС Л*(0)). Покажемо, як послідовно з табл. 7.10 визначити періоди виконання замовлень при к=1. Мінімум у стовпці к = 7 досягається при/=7(й7(7) = 1770). Тому переходимо до задачі при к = 6. Мінімум у шостому стовпці досягається при і = 5. Отже, останнє замовлення 499
Зайченко Ю.П. виконувалось у п’ятому місяці. Тоді переходимо до А = 4 і знаходимо, що мінімум при к = 4 досягається при і = 3. Тоді переходимо до к = 2 і одразу знаходимо, що мінімум у стовпці к = 2 досягається при /=1. Таким чином, номери місяців, коли замовлення виконуються, такі: і = 1,3, 5, 7. Оптимальний розв’язок, згідно з табл. 7 10, буде таким: тіпг = Л 7 (0) 1770, х , =х= х 6 0 ; V *=</1 +«/2 =90 + 125 = 215 , х^=а3 =240; х 5-сі 5 + сі 6 =105 , л7 б/7=130. 7.5. ЗАДАЧІ ДИНАМІЧНОГО ПРОГРАМУВАННЯ З НЕСКІНЧЕННИМ ЧИСЛОМ КРОКІВ Способи оцінки нескінченних послідовностей ефектів (витрат) Розглянуті вище моделі задач планування та керування (наприклад, трудовими ресурсами або запасами) охоплювали деякий інтервал часу, який складався із скінченного числа періодів (відріз- ків). Якщо функціонування системи на цьому не закінчується, го раніше прийняті рішення безумовно впливають на її поведінку в майбутньому. З такої точки зору ці моделі можна розглянути як елементи нескінченного планового періоду. При цьому сам нескінченний плановий період можна трактувати як межу скінчен- ного планового періоду при л -> . Для того, щоб у моделях з нескінченним плановим періодом отримати певні рішення, вводиться обмежуюче припущення про стаціонарність, яке означає, що всі функції витрат або ефектів (економічних) та зовнішні умови для кожного з періодів стаціонарні або змінюються циклічно. Якщо ж розглядається імовірнісна система, то її імовірнісні характеристики іакож вважаються стаціонарними. 500
Дослідження операцій Перш ніж розглянути методи прийняття рішень при нескін- ченному плановому періоді, викладемо основні способи оцінки та порівняння нескінченних послідовностей ефектів (або витрат). Існує три основних способи оцінки таких послідовностей [6, 18]: 1) середній ефект за інтервал часу - СЕ, 2) інтегральний дисконтований ефект - ІДЕ; 3) еквівалентний середній ефект - ЕСЕ. Розглянемо ці оцінки. Припустимо, що деякій стратегії керування системою відповідає така послідовність ефектів (витрат): 1 " Л], Л2 , ., , тоді СЕ= Ііт — £ Кк . П к = ] Головний недолік критерію СЕ полягає в тому, що він однаково оцінює як прибуток, одержаний в даний момент, так і майбутній дохід. Водночас цінність того самого прибутку зараз і в майбутньому через її часових інтервалів (наприклад кроків), зовсім неоднакова, через дію інфляції. Щоб урахувати цю нерівноцінність, вводиться коефіцієнт дисконтування а ( 0<а<1 ), за допомогою якого всі послідовності майбутніх ефектів (прибутків або витрат) зводяться до теперішнього часу. В результаті приходимо до інтегрального дисконтованого ефекту ІДЕ= Я,+аЯ2+а2 Я3+...+ а" 1 Я„+...= £ а* ' Кк . (7 5.1) *=і Величину а можна обчислити,-наприклад, як 100 де і - річна процентна ставка (тобто річні проценти, що одержує вкладник за гроші, вкладені в банк). Зв’язок між критеріями СЕ та ІДЕ здійснюється через еквівалентний середній ефект (ЕСЕ). Під ЕСЕ розуміють таку величину ефекту, сталу для всіх інтервалів часу, к=\, оо, що ЩЕ для послідовності із значень ЕСЕ і для вихідної послідовності збігаються. Припустимо, ЩО ДНЯ ПОСЛІДОВНОСТІ Я| , Я2 ,..., Нк 501
Зайченкц Ю.П. 1ДЕ= У ак-'Кк=Р(а). (7.5.2) * = і Позначимо ЕСЕ через у(а ). Маємо послідовність: х(а') + а'.к(а') + а2 х(а) а* г(а') =(1 + а + а2 + ...)х(а) = • 1 -а Оскільки за значенням обох послідовностей величини ІДЕ збігаються, то р(а) звідки: 1-а ЕСЕ =х(а) =(1-а)Р(а')=(1 -а) ІДЕ. (7.5.3) Приклад 7.4. Модель експлуатації лісового господарства. Для ілюстрації використання введених оцінок розглянемо гаку задачу. Ліспромгосп планує засадити лісом нову земельну ділянку. Припустимо, що дерево, зрубане в 1-й відрізок часу (наприклад, в к -й рік), з моменту його посадки принесе прибуток (грн.). Припустимо також, що витратами на посадку та догляд за лісом можна знехтувати і що всі дерева на ділянці мають бути зрубані одночасно. Необхідно визначити оптимальний момент (рік) * рубання лісу, при якому досягається максимальний прибуток при коефіцієнті дисконтування а.0<а<1. І. Розглянемо спочатку випадок, коли після вирубання лісу не робитимуться нові насадження (одноразове прийняття рішень). Необхідно знайти таке значення к , що ІДЕ (*) = и Кк ->тпах . к Шукане значення к визначається таким співвідношенням -----<а<------ Кк Кк+} 2. Тепер розглянемо нескінченний плановий період. Припустимо, що кожного разу після вирубання лісу на к -му інтервалі часу, на ( *+і )-му здійснюються нові насадження лісу, причому цей процес повторюється нескінченну кількість разів. Якщо кожного разу рубання лісу здійснюється через к відрізків 502
Дослідження операцій після посадки, то ІДЕ послідовності прибутків для нескінченного планового періоду дорівнюватиме: Е(к) = ІДЕ[к] (1+а*+а2* +...). Звідси: Р(І)=Я. (7.5.4) 1-а Оптимальною для нескінченного планового періоду є така стратегія к , для якої максимізується величина Е(к ): Е =тахЛ( А)= тах . (7.5.5) к * = 1-а* Шукане значення л° , при якому г(а) досягає максимуму, визначається за умови: ЩЕ^ЩЕЩ^ <ЩЕ[к°]>ЩЕ[к0 + \\ 1-а " 1-а2 1-а*" " 1-а*”*’ (7.5.6) Звідси приходимо до співвідношення: (7.5.7) При цьому оптимальне значення к° задовольняє нерівності к° <к , де к - оптимальне значення при одноразовому прийнятті рішень. Модель відновлення при нескінченному плановому періоді Досить поширений клас задач, що приводять до необхідності дослідження нескінченного числа етапів, становлять задачі (процеси) відновлення. У цих процесах черговий момент відновлення відбувається в гой час (момент), коли система повертається у вихідний стан (наприклад, рубання лісу або заміна устаткування). У цих задачах керуючими змінними (стратегіями) є інтервали часу між моментами відновлення. Розглянемо загальну модель задачі відновлення. 503
Зайченко ЮII Скінчений плановий період. Припустимо, що в задачі від- новлення можливими стратегіями є к (к-\, N ) - число інтервалів часу між сусідніми моментами відновлення Зв'яжемо з кожним варіантом к витрати (або ефект) 7? А при їх оцінці на початку періоду відновлення (наприклад, вартість заміни устаткування) Позначимо через /„ інгеїральні дисконтовані витрати для оптимальної стратегії відновлення, за якої один з альтернативних варіантів має бути вибраний за п інтервалів часу до кінця планового періоду. Припустимо, що вибрано альтернативний варіант к . Тоді відразу з’являються витрати Кк, і якщо припустити, що в наступний момент відновлення (тобто на відрізку п к ) також приймається оптимальне рішення, то в подальшому виникають витрати ак _к , де аА використовується для зведення майбутніх витрат через к інтервалів часу до нинішнього моменту Отже, за п інтервалів часу до кінця планового періоду оптимальною буде така стратегія, за якої міні- мізується сума (Пк + /п~к). Отже, приходимо до рекуреніного співвідношення. /= тіп [а*/,, ,+/?<] (л>Ю- (7-5.8) А =1.2... . .V Нескінченний плановий період Розглянемо випадок нескінченного планового періоду. Поклавши л->оо в (7.5.8) і опустивши індекс п, у функції /,,, дістанемо співвідношення * /=* тіп, 0<а<1 (7.5.9) Воно являє собою екстремальне або функціональне рівняння з невідомим / . Використовуючи функціональні рівняння, потрібно визначити: - чи існує у даного рівняння скінчений розв’язок; - якщо існує, то чи він єдиний, - якщо він єдиний, то чи буде / мінімальним значенням для всіх можливих (не обов’язково) стаціонарних стратегій. Із співвідношення (7.5.8) випливають нерівності: 504
Дослідження операцій /<а* /+Пк та ./<--, А=1. /V, 1 ак (7.5.10) причому (7.5.10) має бути строгою нерівністю хоча б дія одного А. Звідси випливає, що функціональне рівняння (7.5.9) має однозначний скінчений розв’язок вигляду: / =тлі к Хк 1-а* (7.5.11) Оптимальна стаціонарна стратегія відповідає вибору альтер- нативного к 0, яке дає змогу одержати мінімальне значення / . Тут ми скористалися як критерієм оцінки ІДЕ при 0<а<1 Очевидно, при а = І співвідношення (7.5.11) не виконується. Для того, щоб використати критерій СЕ, перейдемо спочатку до критерію ЕСЕ, для чого покладемо £=(1 - а )/. Тоді після простих перетворень вираз (7.5.11) набере вигляду # = тіп А Хк 1+а + а 2 +...+а*-1 (7'5.12) Поклавши в (7.5.12) а = І, одержимо такий розв’язок: І ► р = тіп ° *=|. V к (7.5.13) Таким чином, стратеї ія к буде оптимальною, якщо для неї мінімізуються середні витрати за інтервал часу. Методи послідовних наближень Розглянемо методи розв’язання функціонального рівняння вигляду: /=тіп[аг‘/+/?,], 0<а<1- (7.5.14) Існує три підходи до розв’язання рівняння (7.5.14). 22 і 505
Зайченко Ю П Перш и іі підхід грунтується на динамічному характері моделі Він полягає у з’ясуванні того чи не є стратеїія, оптимальна для дуже великого, але скінченого планового періоду, одночасно оптимальним розв'язком і для нескінченної о періоду. Розглядається розв’язок для моделі зі скінченим плановим періодом. ./„=тіп[а‘/я Л + Я|], 0<а<1, (7.5.15) де я набуває дуже великих значень. Щоб такий підхід був справедливим, необхідне виконання таких умов - при будь-якому досить великому її розв’язок А„, одержаний із (7.5.15), мас також задовольняти рівняння (7.5.14); - якщо тривалість планового періоду дуже велика, то стратегія А 0 , оптимальна для нескінченною планового періоду, буде оптимальною також і для скінченої о планового періоду. Для моделі відновлення справедлива така теорема про тривалість планового періоду, яка обгрунтовує цей підхід [6]. Теорема Існує таке скінченне значення п *, що для довільного скінченого періоду тривалістю п відрізків (піп*) виконуються такі співвідношення: якщо І /»=« " !пк„ + то / = / + Пкл; (7.5.16) ЯКЩО то іп=о-к .1„ к+пк. (7.5.17) Із (7.5 16) випливає, що будь-яка стратегія А„, оптимальна при достатньо великій тривалості планового періоду п (л>л‘), одночас- 506
Дос.йО.ження операцій но є оптимальною стаціонарною стратегією і для нескінченного планового періоду, а (7.5.15) є оберненим твердженням. Другий підхід полягає в тому, щоб спробувати вгадати деяке значення / . Далі на основі нього значення обчислюється величина в правій частині (7.5.14) і перевіряється виконання цього рівняння. Якщо воно не виконується, то результат обчислень використовується як скориговане значення /, і процес знову повторюється. Відповід- ний метод називається методом ітерацій за критерієм (або в прос- торі функцій) [6; 18]. Він полягає в наступному. Нехай / - початкове вибране значення / . Метод передбачає побудову послідовності наближень /,|) , /(2> , .. на основі рекурентного співвідношення: /'"4П = тпі[а‘/{п}+Я.], 0<а<1. (7 5 18) 4-І, Я Припустимо, що ЛА. >0 Якщо / = 0, го можна довести, що у(1) < ^(2) < < у(«) < у(л + 1) , тобто сукупність ] *" - монотонно зростаюча послідовність наближень Тоді при досить великому п значення / виявиться як завгодно близьким до / . Проте в загальному випадку не існує такого скінченного п , що / * дорівнюватиме Таким чином, метод ітерацій за критерієм забезпечує збіжність до істинного значення / , але число ітерацій не є скінченим. Приклад 7.5. Для ілюстрації методу ітерацій за критерієм розглянемо задачу відновлення з такими вихідними даними- л = 5. л, = 8.7, л2= 12.9, я,= 14.7, я4 = 19.7, /?5 = 28.7, а = 0.8. Можна обчислити, що І - піт А Я* 1 0.8* = тіп {43.50, 35 28, ЗО 00. 33.39. 42.84 }=30 00 , отже, *° = 3 - оптимальна стратегія. Обчислюючи И") на підставі співвідношення (7.5.18), при /*°)=0 одержуємо: 22* 507
Зайченко Ю.П. /,|,=гпт[а'* 0+/?А]=8.7 , к = \; /,'21 =тіп| сг* •[{, + /?(]=15.66 , А=1; іі /•'”=тіп[а‘ -21.23 , А=1. Обчислюючи аналогічно, далі одержуємо: Д4>= 25.53, / <5) = 27.57, />'’>= 28.76, />”= 29.37, /(*>= 2968, /9>= 29.84, /('°> = 29.91, причому на всіх ітераціях к=з Третій підхід полягаг в спробі вгадати оптимальну стратегію для нескінченного планового періоду. Для пробної стратегії, яка перевіряється на оптимальність, обчислюють відповідні інтегральні дисконтовані витрати (1ДВ), які використовуються як значення / , далі перевіряється справедливість рівняння (7.5 14). Якщо воно виконується, то поточна пробна стратегія є оптимальною, у супротивному разі за нову пробну стратегію вибирається та, для якої досягається мінімум правої частини (7.5.14). Оскільки існує скінченне число N різних стаціонарних стратегій, і ми ніколи не повертаємося до раніше вже відкинутої стратегії, го оптимальну стратегію буде знайдено за скінчене число ітерацій. А саме, тільки- но стратегія лишається оптимальною на двох ітераціях поспіль, то обчислення можна скінчити, причому дорівнюватиме оптимальному значенню / . Цей метод називають методом ітерацій за стратегіями [6; 18]. Відповідний алгоритм методу складається з таких кроків. Перший крок. Приймемо «= 0 і оберемо початкову стратегію Ао- Другий крок. Для заданої пробної стратегії Ао обчислимо інтегральні дисконтовані витрати (1ДВ) протягом нескінченного планового періоду: /•(„)=----о (7.5.19) 1 сх*° Третій крок. Перевіримо можливість подальших покращень егратегії, для чого обчислимо- 508
Дослідження операцій тіп[а*/М + К.] = ак /<П,+Я. , (7 5 20) 4-І N і оберемо в результаті стратегію к'. Четвертий крок. Якщо а* +ЛА-=/1"1, то зупинитися. Стратегія А' оптимальна. У протилежному випадку замінити попе- редню стратегію на к'. Перейти до (п +1) ітерації на другий крок, використовуючи як нову стратегію А'. Приклад 7.6. Для ілюстрації цього методу розглянемо попередній приклад з тими самими вихідними даними м = 5, я, = 8.7, /?2= 12-9, /?3= 14.7, = 19.7, к5 = 28.7, а = 0.8. Нехай за початкову пробну стратегію обрано *о=|> тоді: / =ЛД = 43.5О. 1-а Перша ітерація. Використовуючи (7.5.20), обчислюємо: тіп[а‘/")’ + ЛД=а3/'°’ + Л3=ЗО.ОО , А,=3- Друга ітерація. Знаходимо 1ДВ для стратегії *,=3: (і, К з /(1) —Ц-=зо.оо . 1-а3 Повторне використання формули (7.5.20) дає- тіп[о* / ‘" + ЛД-тіп { 8 0 30.00 + 8 7, 0 64 30 00+12.7, 0 51 30.00+ 14 7, 0.41-30.00+19.7, 0.33 30.00+28.7 }=30.00 , А2=3. Оскільки Л|=Л2 , то подальші розрахунки можна закінчизи; стратегія *=з оптимальна і для неї /=зо.оо. 22’
Зсійченко Ю.11 7.6. ЗАДАЧІ ДИНАМІЧНОГО ПРОГРАМУВАННЯ НА МЕРЕЖАХ Багато динамічних задач оптимального планування та керування (наприклад, керування запасами, розподілення ресурсів та ін.) можна подати у вигляді мережі (або графи), в якій кожному стану системи відповідає деяка вершина мережі і задача оптимального керування зводиться до задачі відшукання найкоротшого маршруту в мережі (на графі). Розглянемо, наприклад, деяку мережу, що містить Р вершин, і мно- жину орієнтованих дуг, які з’єднують деякі вершини (рис. 7.16). Поста- вимо у відповідність кожній допустимій стратегії в стані і дугу (/, / ). Переміщенню по кожній дузі (/, у) відповідають певні виграти (ефект) С, і . Припустимо, що час переміщення із вершини і у вершину у дорів- нює одному часовому відрізку, а коефіцієнт дисконтування (дисконі- фактор) позначимо через а. Нехай маршрут починається з деякої довільної вершини і Припустимо, що із вершини і переходимо до вершини к , при цьому виникають дисконтовані витрати СуА.. Якщо процес триває протягом необмеженого часу, то маршрут є нескінченним. Позначимо через у, інтегральні дисконтовані виграти (ІДВ) для оптимального нескінченного маршруту, який починається з вершини і. Якщо вибрана стратегія є стаціонарною, кожного разу, повернувшись до вершини і, знову виберемо ту саму стратегію (і, к ) (тобто дугу), що і в попередньому разі знаходження в цій вершині. 510
Дослідження операцій Нехай існує стаціонарна стратегія, яка є оптимальною, тоді відповідні величини 1ДВ задовольнятимуть гаку систему функціональних рівнянь: у-тіп(о'у+С ) ДЛЯ всіх вершин і; 0<а<1 . (7.6.1) Виникають питання: Чи завжди можна для всіх значень у, відшукати однозначний і скін- ченний розв’язок? Якщо відповідь на перше питання — «так», то чи буде відповідна стаціонарна стратегія справді оптимальною? Відповіді на обидва запитання ствердні Вони випливають із теореми про стаціонарну стратегію [6; 18]. Завжди існують однозначно визначені скінченні у,. і=1, Р, і від- повідна стаціонарна стратегія є оптимальною. Розглянемо методи розв’язання системи функціональних рівнянь (7.6 1) і відшукання оптимальних стратегій. Метод ітерацій за критерієм Розглянемо систему функціональних рівнянь вигляду у =тіп(«і, +С, ) Для всіх і = 1. Р . <. о ’ ' ' Її розв’язання методом ітерацій за критерієм складається з таких кроків. 1. Задаємося початковими значеннями у(° (наприклад, у>0)=0) та л=0. 2. Обчислюємо у|"’,, = тіп(ау!"’ + С, ) для всіх і 3. Якщо + -Уі"} ДЛЯ всіх і , то скінчити обчислення, у супротивному разі - переходимо до другого кроку чергової ітерації, взявши п = п +1. 22** 511
іоііченко Ю.П Якіцо всі г,{0)=0 і всі Сгу>0 , то значення уу-"' зростають монотонно і кожне з у;'1’ ібігається до своєї межі, однак збіжність не гарантується та скінченне число ітерацій. Метод ітерацій за стратегіями (в просторі стратегій) Розглянемо метод ітерацій но стратегіях для розв’язання системи функціональних рівнянь (7.6.1). Перший крок Виберемо довільну початкову стратегію і покладемо г,(0і=0, і = \,Р . Зауважимо, що вибір стратегії означає вибір деякої дуі и С,у для кожної вершини. Другий крок. Для заданої пробної стратегії обчислимо значення у*"* згідно з системою рівнянь (розрахунку «вартості» вершин): >’ =ау У” або у,'л) -«у У” =С,у, (7.6.3) де дуга (і, у ) відображає вибрану пробну стратегію для стану (вершини) і Третій крок. Перевіримо можливість дальшого поліпшення стратегій, для чого обчислимо тіп(ау<л)+СІІ) = У,(л) для всіх і. (7.6.4) Четвертий крок. Якщо У/Л> = у-”' для всіх і, то скінчити обчислення. Поточна стратегія буде оптимальною. У протилежному випадку змінити поточну стратегію для кожної вершини к такої, що Для цього за нову стратегію виберемо дугу, яка дає змогу досягти значення Уул) (в (7.6.4)). Перейдемо на другий крок (п +1 )-ої ітерації з новою пробною стратегією. Метод ітерацій за стратегіями має такі властивості: для будь-якої вершини і уУ'+І)< г(я) і, якщо У.1")<у5я,,то Ил + і)<г!я); алгоритм є скінченним; стратегія, що дає змогу но закінченні обчислень досягти т,, / = 1 .Р, є оптимальною. 512
Дос пдження операцій Мінімізація середніх витрат Розглянемо випадок, коли критерій оптимізації мережі являє собою середні втрати (ефект) за інтервал часу. Припустимо, що середні витрати для даної моделі існують і позначимо їх мінімальне значення через С. Крім того, припустимо, що в розглядуваній мережі існує орієнтований маршрут від будь-якої вершини і хоча б до Однієї з вершин, що входять у відповідний мінімальний цикл. Побудуємо функціональні рівняння для вишачення С . Нехай у, - 1ДВ для системи (мережі), якщо її поточний стан у даний момент є і . Тоді еквівалентні середні витрати (ЕСВ) для системи в початковому стані і дорівнюватимуть (1-а )у,. ЕСВ для кожної вершини і зручно зв’язати з С таким співвідношенням [18]: (1-а)у,= (І-а)іг + С, 0<а<1, (7.6.5) де и’, - «вага» і -ої вершини. Тоді: С у =и>. +----, 0<а<1. (7.6.6) 1-а Підставивши у, з (7.6.6) в (7.6.1), після нескладних перетворень одержимо функціональне рівняння у вигляді: ту =птіп(ан- -*-С -С) , (7.6.7) VI- л ' ' або в такому еквівалентному виї ляді: ту +С = тіп(аи- +С ) для всіх вершин і. »(М) ' " Якщо а -1, одержимо шукані функціональні рівняння и +С=тіп(и з-С ) Для всіх вершин і (7.6 8) Для розв’язання функціональних рівнянь (7.6.8) доцільно скористатися методом ітерацій за стратегіями. Зауважимо, що коли обчислено значення и,, які задовольняють функціональні рівняння 22’ 513
Запченко Ю.11. (7 6.8), то і значення и- = и’. + а для всіх /, де а - деяка довільна константа, також є розв’язками цієї системи. Таким чином, розв’язки м , не є єдиними і для зручності доцільно взяти одне з них таким, що дорівнює нулю (наприклад, иу =0). Припустимо, що на кожній ітерації пробна стратегія, що перевіряється, утворює рівно один цикл. Алгоритм методу ітерацій за стратегіями складається з таких процедур. Перший крок Виберемо довільну пробну стратегію, тобто для кожної вершини і деяку дуіу (і, у ), і покладемо и , -0. Другий крок Для вибраної пробної стратегії обчислимо іначення н , / = 1,Р та С1'" розв’язавши таку систему рівнянь и,-"' и +с=С,у для всіх і, (7.6 9) де дуіа (/, у ) відображає поточну пробну стратегію в стані і. Третій крок. Перевіримо можливість подальшого поліпшен- ня, обчисливши и ’"’ +с,7 )=ИЄ,и) для всіх і. (7.6.10) Четвертий крок Якщо И-,* = ДЛЯ всіх / = 1,Р , го зупинитися. Поточна стратегія оптимальна. У супротивному разі замінити поточну стратсіію /для кожної вершини А такої, що ’ вибравши відповідну дуіу, яка дає змогу досягти значення IV в (7.6.10). Перейти до другого кроку (л + 1 )-ої ітерації при новій пробній стратегії. Отже, на кожній ітерації потрібно розв’язувати систему функціональних рівнянь (7.6.9). Якщо пробна стратегія, іцо перевіряється, утворює лише один цикл, то рівняння (7.6.9) завжди матимуть єдиний розв’язок [6]. тіп Уб.у) 514
Дос пдження операцій Зауважимо, що якщо скласти рівняння (7.6.9) для всіх вершин, які входять у цикл, то всі ваги н зникнуть, отже, одержимо- С м=- X С, . , т (і.Дєі ’ де Ь - сукупність дуг, які утворюють цикл, а т - кількість дуг у цьому циклі. Даний алгоритм мас такі властивості [6, 18]: - на кожній ітерації С ,П)>С <л*|); - обчислення закінчується після скінченого числа ітерацій; — оптимальною є та стратеї ія, яка дає можливість досягіи значень Щ,, при цьому С (п) = С =шіп . Приклад 7.7. Розглянемо мережу, що зображена на рис. 7.17. На її дугах проставлено відповідні значення С,,. Для того, щоб застосувати метод ітерацій за стратегіями, потрібно вибрати початкову пробну стратегію, в якій для кожної вершини і с одна дуга, що виходить з неї. Нехай такою пробною стратегією є така: для вершини 1 - дуга (1,4); для вершини 2 - дуга (2,1); для вершини 3 - дуга (3.2); для вершини 4 - дуга (4,1). Рис 117 Таким чином, ця стратегія включає єдиний цикл (1,4)-(4,1). Складемо систему функціональних рівнянь для вибраної пробної стратегії: 22*** 515
Зайченко Ю.П. гГ^ауГ+С», у'°»=а у,10' +С31, г^ау^+С,,, Т*-4| Її можна іаписати в такому еквівалентному вигляді: у;*”-«гГ=з. з4“'-«уГ’=4, ' у}0,-ауіи,=1. уі0,-о^0,=1- Розв’язок цієї системи такий: (0)_3 + 1а (ОТ 4+За-За2 (о> 1+4ат2«2 За3 <о> 1 + За ’ । ", 2’ ’2------- ї >2’3 -----;---5-----І-’Д =---у 1-а 1а 1-а 2 1 а2 Як видно з рис. 7 17, зміна розв'язків можлива лише для вершин 1 і 2, де мається більше однієї дуги, що виходить з них. При 0<а<І , згідно з формулами (1), для вершини 1 одержимо. З + СХ іи) 1-а2 1 4+4а-а2 -За3 3 + а тіп (а »’**” +С|2 ; ау‘<”+С14)=тіп 1-а2 ’ 1-а2 ДЛЯ дуги (1,4) ІірИО<а<І . Аналогічно для вершини 2: тіп (ау!*” +С2| ;ауУ” + СИ 4+За-За2 4+а +2а’-За3 1-а2 (2) 4+За-За2 ГІІ„ для дуги (2,3) при у <а <і. Таким чином, ЯКЩО <а-Д , то для кожної вершини і виконується умова г/(0, = г)0) і початкова стратегія с оптимальною Якщо а<у, то мінімум досягається на дузі (2,3), і цей розв’язок повинен на наступній ітерації замінити стратегію (2,1). 516
Дослідження операцій Приклад 7.8. Розглянемо знов ту саму мережу (рис. 7.17) при а = і і покладемо с23=з Нехай потрібно знайти оптимальну стратегію, яка мінімізує середні витрати за інтервал часу. За початкову пробну стратегію виберемо ту саму, що і в прикладі 7.7, і, застосувавши формули (7.6.9), запишемо таку систему функціональних рівнянь: и;°’-н’Г=СІ4-С'01; и>,-и’І"’'=Саі-С,“’.; .<”-ш1,0'=С4І-С“'’ Ця система мас розв’язок’ С“” = 2; в'0’ -0; и‘и, = 2; и]01 1, и{и’ = -1 . Розрахунок показників можливого поліпшення за формулами (7.6.10) дає такі нові значення для вагових коефіцієнтів : ДЛЯ вершини 1: тт(іЦ0І+С,2 С'0’ и^'+С,, С10’) -тт( 2 + 4-2,-1+3-2 )=0=И’| (ДЛЯ дуги ( 1,4)); для вершини 2: тш^ и}0* +с2|-С ,0). «і*” + С23-С <0) ^=2=1Г2 (для дуги (2,1)) Оскільки іг^и*0', И'2=и 20> , то знайдено оптимальну стратегію, для якої с=с(0’ 2. Динамічна задача керування запасами з нескінченним плановим періодом Розглянемо важливу з практичного погляду динамічну задачу керування запасами з нескінченним плановим періодом, яка являє собою узагальнення динамічної задачі зі скінченним плановим періодом. Нехай маємо систему постачання, яка виробляє продукцію, накопичує її в запас і постачає замовнику відповідно до попиту. Вихідні дані системи (задачі) такі: обсяг випуску продукції х<5 од., попит на інтервалі часу сталий і дорівнює сі-З од., при цьому рівень запасів на кінець інтервалу часу має задовольняти умову у <4 517
Зайченко Ю.П. Витрати на виробництво С (х ) обсягу випуску продукції \ задаються співвідношенням 0,яки/ох=0, С(х)=< 13 + 2,якм<ох>0,1<х<5 Витрати на зберігання запасу рівня у дорівнюють Л,, де Л = | Припустимо, що система функціонує безмежно довго. Необхідно визначити таку оптимальну стратегію керування запасами (тобто знайти обсяг випуску г у кожному інтервалі (відрізку часу)), при якій мінімізуються середні виграти за відрізок Виберемо рівень запасів на початку відрізка і (де / = 0, 1, 2, 3, 4) за змінну стану системи. Стаціонарна стратеї ія являтиме собою правило визначення оптимального обсягу випуску продукції для кожного значення і Для розв’язання цієї задачі потрібно передусім подати її у вигляді мережі (сітьової моделі). Кожному можливому стану поставимо у відповідність одну вершину мережі; при заданому і кожному допустимому обсягу випуску відповідає деяка дуга (і, у ) Так, якщо рівень запасів на початку відрізка дорівнює і , обсяг випуску становить л одиниць, а попит т/=3 одиниці, то запас / на початку наступного відрізка дорівнюватиме / = г-гх 3 . Отже, дуга (і, у) відповідає обсягу виробництва х=у-ї+3 Таким чином, витрати при виборі стратегії (дуги) (і, /) задаються виразом. Со=С(;-і + 3) + Лу. (7.6.11) У зв’язку з існуванням обмежень на обсяг випуску х та рівнянь запасів, деякі сполучення і та у недопустимі. Наприклад, при і - 0 має бути /<2 , оскільки х<5. Мережу, яка відповідає умовам задачі, наведено на рис. 7.18. При цьому величини С, , обчислені згідно з (7.6.11) Припустимо, що за критерій оптимальності взято мінімум середніх витрат (СВ) за інтервал часу. Тому функціональне рівняння, що його погрібно розв’язати, має вигляд: ну = тіп(+ С,-у -С) для всіх і. 518
Дослідження операцій Рік 7.18 Рік 7 19 За пробну стратегію виберемо таку, випускати недостатню для повного задоволення попиту кількість продукції при і < 3, так щоб рівень запасів на кінець інтервалу часу дорівнював у = 0 ; і взагалі нічого не випускати, якщо на даному інтервалі » = 4 На мережі цю стратегію представляють так (див. рис. 7.19) вершина 0 - дуга (0,0), х = 3; вершина 1 - дуга (1,0), х=2; вершина 2 - дуга (2,0), х= 1, вершина 3 - дуга (3,0), х= 0; вершина 4 - дуга (4,1), л = 0. Розв’язання. Перша ітерація Використовуючи алгоритм методу ітерацій за стратегіями, складемо систему функціональних рівнянь, які відповідають пробній стратегії 519
іайчснко Ю.П. = 19 н,<о,_ніп) + с,о1 = сі(і = 17 <’-<І + С'0>=С20 =15 <"-<^с<ся=с,0 =0; И'‘°’ = О = 1, Її розв’язок такий С<01 =19; и‘°»=0; п [0) = -2; к ‘0) = - 4; И <0’ =- 19; к<°’=-20. Для всіх і обчислюємо 1Г'я’ = тіп(гг<п’ + С ,.-С(я’). </./> 1 4 Отже, магмо й/0<0) = 0 для дуги (0,0); И-')(0) = -12 для дуі и (1,3); И/2°) = “14 дяя ДУІИ (2,3); И/3(0) = -]9 для дуги (3.0), 1Г4,0) = 20 д ія дуги (4,1) Рис 7.20 На цьому перша ітерація закінчується. Оскільки ’ <и і * <н20)’ то потрібно перейти до другої ітерації, а іа нову пробну стратегію вибрати таку: (0,0), (1,3), (2,3), (3,0), (4,1). Результати обчислень, одержані в ході виконання ряду послідовних ітерацій наведено в табл. 7.11. Аналізуючи цю таблицю, можна зробити такі висновки - на першій ітерації значення С,н) не поліпшується (С<0) =С(1)), — на всіх наступних ітераціях п=2, 3, 4, 5, 6 виконується умова (^(п)<^(» і). — після шостої ітерації знайдено оптимальну стратегію керування запасами. Вона має вигляд: 520
Дослідження операцій Таблиця 7 11 Вер- шина 0 1 2 3 (',./) и,'0' IV,10' (',./) и-/" И'/” (',./) IV,1-' (М) .V,131 и-,'3> 0 0,0 0 0 0.0 0 9 0, 1 0 -3- 3 0,2 0 0 1 1,0 -2 -12 1,3 12 -12 1.3 -5- 3 1,2 2 -8 2 2.0 -4 14 2,3 14 22 2,4 ЦІ 3 -ЦІ 3 2,4 8 10 3 3.0 19 -19 3,0 19 24 3,4 -13І 3 — 17— 3 3,0 -17 17 4 4, 1 20 -20 4, 1 20 20 4, 1 21 21 4, 1 18 18 -(«) с 19 19 17— 3 17 Вер- шина 4 5 6 (',./) IV,'4’ іуГ (»,7) „.(5) IV,15' (',/) IV,'4’ IV'*' 0 0,2 0 -1 0, 1 0 1 0,2 0 0 1 1,3 6- 3 6- 3 1,3 6 6 1,3 Г'И 1 1 2 2,3 "І"' ос І -пі 3 2,4 10 10 2,4 -9 — 5 -9— 5 3 3,0 -16- 3 -Ібі 3 3,0 -16 16 3,0 -15— 5 -15— 5 4 4, 1 22 22 *4, 1 21 21 4, 1 -20— 5 -у 20— 5 -(я) с 16- 3 16 15— 5 х = 5 при 7 = 0, 1,2; х = 0 при у= 3,4. їй відповідач виробничий цикл (5, 5, 0, 5, 0). При цьому середні . — 4 витрати мінімальні: Стщ = 15у • Відповідний мінімальний цикл наведено на рис. 7.20. 521
Зайченко Ю.П. 7.7. ДИНАМІЧНЕ ПРОГРАМУВАННЯ ДЛЯ МАРКОВСЬКИХ ПРОЦЕСІВ У попередніх параграфах розглянуто багатокрокові задачі оптимального керування в детермінованих моделях, в яких існуг взаємно однозначна відповідність між рішенням, яке приймається, та його наслідком - наступним станом системи. Разом з тим на практиці часто трапляються системи, в яких не існує такої взаємно однозначної відповідності, а можна лише говорити про імовірність переходу в певний стан. Такі системи виявляються імовірнісними. Важливий клас імовірнісних систем складають марковські системи, властивості яких у будь-який момент часу і залежать тільки від поточного стану і і не залежать від передісторії процесу. Динамічне програмування є ефективним методом оптимізації систем, які описуються марковськими процесами Властивості марковської системи. Функціональні рівняння Беллмана Нехай є деяка система, яка може перебувати в одному із N станів, і задано деяку множину рішень В-{сІк} , які можуть прийматися в кожному стані и, 1 = 1, У , та матрицю умовних імовірностей Р=|| р( )\і, сі )|| , і,) = \,Ц де - умовна імовірність того, що система перейде в стан у , якщо поточний її стан був і та прийнято рішення <7 При цьому відповідно до властивості марковської системи припускається, що величини />(/, сі) залежать лише від значення поточного стану і і не залежать від передісторії процесу, тобто траєкторії руху, яка привела систему в стан і. Припустимо, що імовірності перебування системи в кожному стані в початковий момент часу дорівнюють 9,(0), і = \,И. Тоді іакон руху марковської системи повністю визначається величинами 9, (0), і = \,И та матрицею Р=||р(у|і, <7)|| . Якщо 522
____________________________________________ Дос лідження операцій позначити через ц, (п) імовірність перебування системи в стані і на п -му відрізку часу, то д Дл+1)=^д (л)р(/|і,і/), «=0,1,2 (7-7.1) Тут припускається, що перехід із одного стану в інший відбува- ється точно за один інтервал часу. Припустимо також, що при н->оо величини д,(я) наближаються до деяких граничних значень д,, які називають стаціонарними (або межовими) імовірностями станів. Кожна величина д, являє собою деяку сталу відносну частоту перебування системи в стані і. Величини д, можна одержати із (7.7.1) шляхом граничного переходу при л->оо. Прийдемо до системи рівнянь вигляду: д р(/І', (7.7.2) /=| при умові N І. 4]=^- /=• Систему називають ергодичною, якщо величини д, не залежать від розподілу початкових імовірностей д( (0). Розглянемо приклади визначення стаціонарних імовірностей. Випадок 1. Нехай матриця умовних імовірностей має вигляд: Використовуючи (7.7.2), маємо: 1 1 <7і ~?і ~ + <72 ~ 1 2 1 Я 2-Я\—+Я 2~ з . 3 4 і урахуванням д1 +д 2=1 дістаємо д(=—; д2=—. 523
Зайченко Ю.П. Випадок 2. При заданій матриці умовних імовірностей 2 можна показати, що д 1 З В усіх випадках, коли всі рядки матриці Р ідентичні, стаціонарні імовірності дорівнюють елементам цих рядків. Випадок 3. При заданій матриці умовних імовірностей переходів можна показати, що всі стаціонарні імовірності рівні між собою- І 9і=9г=- 1 взагалі, у випадках, коли сума елементів кожного стовпця дорівнює 1, ВСІ величини 9, рівні між собою, тобто: 1 91 -92 - -~Ч N -~ Т ака матриця має назву двічі стохастичної. Випадок 4. Припустимо, що матриця імовірностей мас вигляд- 0 1 0 (7 7.3) тобто система весь час здійснює коливання між обома станами. . . 1 Можна показати, що 91=92 =~ • Багаторазово використовуючи вираз (7.7.1), одержуємо- 9(" + 1)=|+^9,(0)-^ (-1)" = 9,(О)при п=2к, І~9і(0) прип=2к + \ 524
Дослідження операцій Отже, у розглядуваному випадку величини дДп) не наближаються до жодної межі при зростанні л , тобто стаціонарні імовірності <7, тут не існують. Аналогічні системи, що описуються матрицею Р вигляду (7.7 3), називають циклічними Випадок 5. Розглянемо систему, що описується матрицею вигляду: Г і о- Р = 0 1 Якщо така система в початковий момент часу перебуває в деякому стані Ьі , го вона залишається в ньому назавжди. Дана система розпадається на множину ізольованих підсистем (станів). Розглянемо знову марковську систему, описану на початку розділу Позначимо через с( /|і, ) умовний ефект (або витрати), що визначаються переходом системи із стану і в стан у при умові прийняття рішення (і. Таку систему зручно записати у вигляді сітьової моделі, де кожній дузі (», у) відповідає пара величин ). є(у|/, <1)}. Нехай кожний перехід здійснюється за один інтервал часу, система функціонує протягом необмеженого часу, а за критерій вибрано інтегральні дисконтовані витрати (1ДВ). Позначимо через У, значення 1ДВ, якщо поточним станом (в даний момент) є стан і . Якщо в цей момент приймається рішення , то Р( /|/,с/)[ауі+с()\і,сІ)] = £ р(Д\ілІ)ау}+сіі{, (7-7.4) ' /-і де а — коефіцієнт дисконтування (0<а<1); сіа — очікуваний ефект (витрати) на даному інтервалі часу для початковою стану і при рішенні сі, У(г/ — інтегральні дисконтовані витрати для стану і при рішенні сі. Припустимо, що система функціонує оптимально, тобто на кожному кроці приймається оптимальне рішення, а період функ- ціонування системи нескінченний. Тоді справедлива така система функціональних рівнянь Беллмана для марковської системи, що є 525
Зайчеико Ю.І1. звичайним узагальненням функціональних рівнянь (7.6.1) для марковських систем для усіх І = 1. N , у = тіп Е р( /|/,б/)а'уі+с1^ (7.7.5) де £)(;) - множина можливих рішень у стані / Визначимо стратегію на нескінченному плановому періоді як вичерпне правило прийняття рішень, що приймаються на кожному інтервалі часу в кожному стані. Під оптимальною стратегією як і раніше, розумітимемо стратегію, яка забезпечує мінімальні ІДВ при будь-яких початкових станах. Така стратегія не обов’язково мас бути стаціонарною (тобто такою, що кожного разу, коли система приходить у стан /. приймається те саме рішення). Разом з тим справедлива така теорема про стаціонарні стратегії [6; 18] Теорема. Завжди існують єдині скінченні значення г,, іцо задо- вольняють функціональні (екстремальні) рівняння (7.7.5), і детермі новина стаціонарна стратегія, яка відповідає цим значенням. с оптимаїьною Методи послідовних наближень Для розв’язання функціональних рівнянь (7.7.5) можна ско- ристатися тими самими методами, що й для функціональних рівнянь (7.6.1) для детермінованих систем - метод ітерацій за критерієм і стратегіями. Метод ітерацій за критерієм. Розглянемо алгоритм методу ітерацій за критерієм для розв’язання функціональних рівнянь (7.7.5). Він складається з таких етапів. 1. Виберемо .з*0' довільно і покладемо я=0. 2 Визначимо + із умов г*пн) = тіп «/«=£/<<> /V р(/|г,б/)а• /»| ДЛЯ кожного і = 1, N . (7.7.6) 526
Дос лідження операцій 3. Якщо ; + ,(,І), то перейдемо до другого кроку чергової ітерації, поклавши п = п + \. Якщо ж у*"+1) = у*"’ для всіх < = 1,77, то кінець. Одержимо 1’/=.Г-” 1 Зазначимо, що в процесі виконання ітерацій кожна з величин г,-”* збігається до своєї межі у, , проте у загальному випадку ця збіжність не є скінченною Якщо всі величини с,^>0, а всі у/01 >0, то значення і,*"’ зростають монотонно. При будь-якому с,^ можна досягти збіжності таким чином. Вибираємо пробну стаціонарну стратегію, для якої для спрощення запису будь-який розв’язок позначимо через сі'. Далі розв’язугмо систему лінійних рівнянь стосовно невідомих у,: V ___ у,=СІІІ для кожною <=1,7У (7.7.7) <=• Одержані розв’язки у,101 далі підставляються у співвідношення (7.7.6). Якщо на довільно вибраній ітерації п зупинитися і використати безпосередньо знайдену із співвідношень (7.7.6) оптимальну на л-му кроці стратегію як стаціонарну для нескінченного планового періоду, то відповідні значення 1ДВ не перевищуватиму гь значення у/"1 Метод ітерацій за стратегіями. Наведемо опис алгоритму методу ітерацій за стратегіями - для розв'язання функціональних рівнянь (7 7.5). Він складається з таких кроків. Перший крок. Вибрати довільну початкову стратегію і покласти п = 0. Друїий крок. Для заданої пробної стратегії сі' обчислити значення у,’"' із рівнянь: у^’-У р()\і,сІ')адяя кожного і, (7.7.8) де сі'- рішення, що приймається в стані і. Третій крок. Перевірити можливості поліпшення стратегії: обчислюємо 527
Зайченко Ю.П N І 7 = 1 тіп с/є/Х') Р(і\і.<1 )а у (") +сіі} = У("> ДЛЯ КОЖНОГО І . (7 7.9) Четвертий крок Зупинитися, якщо У'"^ = у/"' ДЛЯ ВСІХ і=1,И . Поточна стратегія оптимальна. Якщо ж У,1л) у,1”’ для деяких і, замінити стратегію в кожній вершині (у кожному стані) Д де У/'” < у/"’ і використати той розв’язок, що дає У*1"1 у (7.7.9). Покласти п = п +1 і перейти до другого кроку наступної ітерації Алгоритм ітерацій за стратегіями має такі важливі особливості: у,(я+ 1 <у,1"’ у будь-якій вершині і тау/"+1) <у,1п), якщо У*"’ <у/"'. Алгоритм збігається за скінченне число ітерацій При зупинці алгоритму стратеїія, що відповідає значенням У*, є оптимальною. Приклад 7.9. Модель керування запасами. Для ілюстрації застосування функціональних рівнянь розглянемо стохастичну задачу керування запасами з нескінченним плановим періодом, детермінований еквівалент якої описано в параграфі 7.6. Числові дані цієї задачі такі: попит імовірнісний />(</=2)=^-; р(л 4)=у> обсяі виробництва х обмежений о<*<5; кінцевий рівень запасів >54; л=і; витрати на виробництво та зберігання продукції описуються співвідношенням х, /) -с(х)+/і, , ДЄ {0, якіцо ,г=0; 13+ 2х,якщох>0 Поточний стан системи » визначається поточним запасом (і = 0, 1, 2, 3, 4) Очевидно, якщо обсяг виробництва дорівнюі х , го майбутні стани системи з урахуванням імовірності попиту </=2 та сі 4 такі: у=і+х-2, /=г + л-4, при цьому р(і + х 2\і,х}=р(их 4| |і,ї) Нехай і, - мінімальні 1ДВ при умові, якщо початковий запас юрівнюс і. Тоді функціональні рівняння типу (7.7.5) для цієї задачі матимуть вигляд: у, =тіп< с( х )+1[/ + х-3] +«—1.У,+л 2 + У,+л Ж * х І 2 ] 528
Дослідження операцій при • = 0, 1, 2, 3, 4, о<а<і, де мінімум відшукується по всіх цілих V, що задовольняють умову: 4 і<,г<тіп(5; 6-і). Вихідні дані задачі наведено в табл. 7.12. Таблиця 7 12 І є = де ДО Р (Т б- <!)) 0 1 2 3 4 С,<1 0 4 1/2 0 1/2 0 0 22 5 0 1/2 0 1/2 0 25 1 3 1/2 0 1/2 0 0 20 4 0 1/2 0 1/2 0 23 5 0 0 1/2 0 1/2 26 2 2 1/2 0 1/2 0 0 18 3 0 1/2 0 1/2 0 21 4 0 0 1/2 0 1/2 24 3 1 1/2 0 1/2 0 0 46 2 0 1/2 0 1/2 0 19 3 0 0 1/2 0 1/2 22 4 0 1/2 0 1/2 0 0 1 1 0 1/2 0 1/2 0 17 2 0 0 1/2 0 1/2 20 Розв’яжемо задачу методом ітерацій за критерієм а = 0,9, починаючи з у,*°*=0 для всіх і. Результати послідовних ітерацій наведено у табл. 7 13. Розглянемо тепер розв’язання даної імовірнісної задачі керування запасами методом ітерацій за стратегіями. За пробну стратегію виберемо таку .»= 4 - і, »= 0, 1. 2, 3, 4; п = 0. Складемо відповідну цій стратегії систему рівнянь для визначення величини і,, для чого використаємо даі і табл 7.12 23 і 529
Зайченко Ю.П. Таблиця 7.13 Почат- ковий рівень запа- сів, і N Нескінч період 1 2 3 10 20 зо х,с' г,‘> х,12} у,'2' х,131 у'3' у,!0> „(30) .* і Л, V, 0 4 22 4 40 5 54,3 122, 9 163, 8 178. 0 5 185, 7 1 3 20 5 34,5 5 49,2 117, 8 158, 7 173, 0 5 180. 6 2 2 18 4 32,5 4 47,2 115, 8 156, 7 171, 0 4 178. 6 3 1 16 3 30,5 3 45,2 из, 8 154, 7 169, 0 3 176, 6 4 0 1 0 19 0 33,6 102, 1 143, 0 157, 3 0 164, 9 (і-0.5а )у0-0.5а у, = 22; - 0 5ау0 + 1 у,-0.5а у7 = 20; - 0.5 у о + (1-0.5 а )у2 =18; - 0.5 а у0 -0.5а у, + у, =16; 0.5 а у0 - 0.5 а у, + у4 = 1 , де а = 0.9. Її розв’язком € іо=202, У! = 2ОО, у2= 189, і,= 196, у4=І8І. Переходимо до процедури поліпшення стратегії. Скористаємося рівнянням (7.7.8). Результати послідовних ітерацій наведено у табл 7.14. Як бачимо, процес обчислень закінчується після ч=2, оскільки г’2>=>/2) ЛІ1Я вс*х '> а відповідна стратегія »((2) є оптимальною, що збігається з розв'язком, одержаним методом ітерацій за критерієм. 530
Дослідження операцій Таблиця 7 14 Рівень запасів, і N уЦ, 0 1 2 хГ у.,0) х<’> У/'1’ у/2) 0 4 202 4 202 5 185,7 185,7 1 3 200 5 196,5 5~ 180,6 180,6 2 2 189 4 194,6 4 178,6 178,6 3 1 196 3 192,6 3 176,6 176,6 4 0 181 0 181 0 164,9 164,9 Оптимізація мережі за критерієм еквівалентних середніх витрат Функціональні рівняння. Розглянемо практично важливий випадок, коли за критерій оптимальності взято середні витрати (СВ), і виведемо відповідні функціональні рівняння (аналогічно тому, як це зроблено для детермінованої моделі в п. 7.6). Нехай існує деяка стратегія л (не обов’язково детермінована). Позначимо через у, (а) мінімальні 1ДВ для системи, що починає функціонувати із стану і, де а розглядається як параметр. Стратегія л визначається як оптимальна при а= 1, якщо уІ (а ) = у, (а) при кожному і та при всіх а, досить близьких до 1. Іншими словами, стратегія л оптимальна, якщо існує а < 1 таке, що для всіх а на відрізку а <а<1 очікувані 1ДВ уі (а) при виборі стратегії л дорівнюють мінімально можливим. Тут, як і у випадку а < 1, справедлива теорема про стаціонарну стратегію, яка стверджує, що і при а=1 'завжди існує детермінована стаціонарна стратегія, яка є оптимальною [6; 18]. Отже, допустимо, що детермінована стаціонарна стратсі ія л є оптимальною. Тоді при значенні а , досить близькому до 1, матимемо: 23* 531
кінчений Ю.11. ^=7™, Црі-Р^^у, = Х Р(Лг-^’)«У,+с„,-’ (7.7.10) де с! означає рішення у стані і. що визначається оптимальною стратегією п . Нехай .V ^'Си! (7.7.11) де дІ - стаціонарні імовірності стану, обчислені із рівнянь (7.7.2), для стратегії я . Величину С можна вважати очікуваними серед- німи витратами за інтервал часу при використанні стратегії я і не- скінченному інтервалі функціонування. Щоб вивести функціональні рівняння для імовірнісної моделі при а = 1 скористаємося тим самим підходом, що і для детермінованої моделі (п. 7.6). Розглянемо очікувані ЕСВ (еквівалентні середні витрати) і визначимо вагові коефіцієнти н», за допомогою співвідношення; (1 а )у, = (І-а )и, + С * для всіх і. (7.7.12) Тоді функціональні рівняння (7.7.10) можна записані у вигляді: С* и’ +-----= тіп 1-а с/є£)(/) £ р(і\іл аС* ОН' ; +--- 7 1-а (7 7.13) З урахуванням того, що £р(7Іі,^)=1 7-і перетворень вираз (7.7 13) зводимо до вигляду. після нескладних и,+С = тіп £ р(7|/.т/)анг.+с((/ </в£>(і) у=) і підставляючи а= 1, одержуємо: и,*С*= тіп £ тсІ£/ Лє£>(()^у=1 для всіх /=1,7У. (7.7.14) 532
Дос лідження операцій Рівняння (7.7.14) - це екстремальні (або функціональні) рівняння для марковської системи при критерії мінімуму середніх витрат за інтервал часу. Як і для детермінованої моделі, величину и', називають «вагою» і -го стану, а різницю можна розглядати як приріст очікуваного ефекту (середніх витрат), якщо система починає функціонування із стану і, а не із стану ). Якщо множина величин задовольняє систему рівнянь (7.7.14), то і множина +а (де а - довільна константа) також задовольнятиме цю систему. Тому для визначення шуканих значень и’, вводиться умова нормування IV । = 0. Розглянемо деяку стаціонарну стратегію п , що містить рішення сГ. Нехай и’ - , Є* - розв’язки рівнянь: н’і = 0, V / х (7.7.15) >=• для всіх і. Тоді справедливе таке твердження (достатні умови оптимальності) [6]. 1. При заданій детермінованій стаціонарній стратегії п , коли значення IV- та С , що знайдені із рівнянь (7.7.15), задовольняють функціональні рівняння (7.7.14), величина С буде найменшою для всіх стратегій, а відповідна їй стратегія п оптимальна. 2. Якщо величина С* не є найменшою, то розв’язки IV- та С * із (7.7.15) не задовольняють рівняння (7.7.14). Таким чином, для визначення оптимальної стратегії, що мінімізує С, потрібно розв’язувати систему рівнянь (7.7.14). Метод ітерацій за стратегіями. Розглянемо метод ітерацій за стратегіями для розв’язання функціональних рівнянь (7.7.14). Цей метод є узагальненням відповідного методу для детермінованої моделі. 232 533
іаиченко Ю.П. Для спрощення припустимо, що для кожної пробної стратегії л*, яка оцінюється на другому кроці алгоритму, існують єдині стаціонарні імовірності. Алгоритм складається з таких кроків. Перший крок. Вибрати довільну стаціонарну стратегію і покласти » = (). Другий крок. При заданій пробній стратегії п на ітерації п розв’язати систему рівнянь для визначення «ваг» и-, : <>=0, 7 = 1 (7.7.16) де <Г - розв’язок у стані і, який визначається стратегією л'. Третій крок. Обчислити: , . N и',п =,тД?.ч І р(УІ'^)м''п,+єгс/ -С(п} , \/і (7.7.17) Четвертий крок. Скінчити обчислення, ЯКЩО И'1(п) = Н’^”) для всіх і , при цьому значення С("' мінімальне. Якщо ж * и *"’ замінити стратегію в кожній вершині (у кожному стані) к , де * використати ту стратегію, яка дає значення И^1"' у рівнянні (7.7.17). Перейти від и до(п+1)і повернутися до кроку 2 при новій пробній стратегії. Викладений алгоритм збігається за скінченне число ітерацій. Приклад 7.10. Розглянемо знову стохастичну задачу керування запасами, вихідні дані для якої наведено у табл. 7.12. За критерій оптимальності виберемо мінімум середніх витрат за відрізок с*. Для знаходження оптимальної стратегії застосуємо метод ітерацій за стратегіями. Запишемо систему функціональних рівнянь для цієї задачі: +С' = тіп< с(х) + 1[і + х-3]-ь—, + ил+і .] І. (7.7.18) 534
Дослідження опертий 1. За пробну стратегію виберемо стратегію випуску мінімального допустимого розміру партії: х=4 — і, і = 0, 1,2, 3, 4. 2. Складемо таку систему рівнянь для визначення и, ( = 0: и'О + С*=с(4) + 1[1]+уИ'о+уМ-2=22 + уИ'О+уН-2 ; 1 = 1: м’і+С =20+—и’о+ —, і 2 2 і = 2: м> 2 + С = 18 + — «• о + у іг 2 і і=3:и'з+С =16+уно +уИ’2 ; „ . 1 1 і=4:м’4+С = 1+—И’о + — іг 2 ; IV 0=0. Знайдемо розв’язок цієї системи: м^0,= 0, м{0)= -2, и^0>= -4, к<°>=-6, н ‘0)=-21, с(О)=20. 3. Перейдемо до процедури поліпшення ваг і обчислимо и/0' згідно із співвідношенням (7.7.17). Знаходимо: и'^0,= 0, г^^-бу, И',1°’ = -8у, И71‘°> = -10у, И^0)= 21. Оскільки И'І.(0)<и((0) для /= 1, 2, З, то перейдемо до другої ітерації. Результати послідовних ітерацій наведено у табл. 7.15. Як бачимо, алгоритм збігається на ітерації я=2 , оскільки тут виконується умова И'.2} = и’2) для всіх і = 0, 1, 2, 3, 4. Шукана оптимальна стратегія дорівнює г(о)= 5, л(і)=5, х(г)=4, л(з)=3, х(д)= 0, а оптимальний розв’язок системи рівнянь (7.7.18) такий: С* = і7у, и'І = -5у, и*2 ——7—, и3 = -9у, и4=-20-у, и0= 0. Отже, І В ЦЬОМу прикладі мінімальні середні витрати за інтервал часу дорівнюють с‘ = 17-. 7 23** 535
іайченко Ю.11 Таблиця 7.15 Почат- ковий запас. / N 0 1 2 х‘0) в,'0' х/1’ (П г'2' в-/1’ 0 4 0 0 4 0 -1.25 5 0 0 1 3 -2 -6.5 5 -6.5 -6.5 5 -5.43 -5.43 2 2 -4 -8.5 4 -8.5 -8.5 4 -7.43 -7.43 3 1 -6 -10.5 3 -10.5 -10.5 3 -9.43 -9.43 4 0 -21 -21 0 -21 -21 0 -20.3 -20.3 £<») 20 17 — 4 17 — 7 Розглянемо рекурентне співвідношення (7.7.14) для скінченого планового періоду. Можна показати, що при достазньо великих п значення функції сумарних втрат за я інтервалів часу при початковому стані > ./„(') зв’язані з мінімальними середніми витра- тами с* співвідношенням: /п(ї)=иС , г=і, л/. (7.7.19) Використавши умову нормування ио=о, одержимо із (7.7.19) /«(') 7п(о)=«(-“о=иі • (7.7.20) Вираз (7.7.20) дас змогу дати таку економічну інтерпретацію величині м, . Ваговий коефіцієнт и, дорівнює приросту функції витрат /„ при початковому стані і (стосовно стану 0) при нескінченному інтервалі функціонування системи ( п=<я ). 536
Дослідження операцій розділ 8 СТОХАСТИЧНЕ ПРОГРАМУВАННЯ Загальна характеристика задач стохастичного програмування В стохастичному програмуванні розглядаються проблеми прийняття рішень в умовах дії випадкових факторів, які потрібно враховувати у відповідних математичних моделях. Розглянемо типову задачу нелінійного програмування: знайти такий вектор X, для якого /(Х)->тіп, (8.1) при обмеженнях: £,(Х)<0, і=\7т, (8.2) Хє*. (8.3) Задачі стохастичного програмування виникають у випадках, коли функції Дх), &,(х) залежать також і від випадкових параметрів со. При цьому припускається, що со є елементом простору станів природи (або простору випадкових параметрів) О . Тоді задачу стохастичного проірамування можна сформулювати так [17; 18]: мінімізувати /(Х,су), (8.4) при обмеженнях: (X, а>) <0 , /=І, т, (8.5) Хе*. Постановки задач стохастичного програмування суттєво залежать від того, чи є можливість при виборі рішень уточнити деякими спостереженнями станів природи со, чи її немає. Залежно від цього розрізняють задачі оперативного і перспективного стохастичного проірамування [17]. У задачах оперативного стохастичного програмування рішення приймають після деякого експерименту над станом природи со, воно 23і 537
Зайченко Ю.І1. залежить від резульїатів експерименту і є випадковим вектором Х(ю) Подібні задачі виникають, наприклад, в оперативному плануванні, медичній діагностиці У задачах перспективного стохастичного проірамування рішення х приймається до проведення деяких спостережень за станом природи і тому є детермінованим. Такі задачі виникають у перспективному техніко-економічному плануванні, у задачах проектування, якщо параметри системи мають бути обрані конкретними детермінованими величинами, розрахованими на визначений діапазон можливих збурень. Задачі стохастичного програмування зазвичай задаються в одній із таких форм: мінімізувати М ш {/ (X, а> )}=Г(Х), (8.6) при обмеженнях: Л/д, й>)}=Сі (X )<0 , 1 = І7^ , Хє^б, (87) де М <0 - операція математичного сподівання; мінімізувати Р {/ (X, а> (8.8) при обмеженнях: Р{£,(х, й?)<0}>Р, , і=ЇГт, (8 9) де а, Р, - деякі числа; Р — імовірність Можливі і певні комбінації задач (8.6), (8.7) та (8.8), (8.9). Наприклад, знайти мінімум (8.6) при обмеженнях (8.9) або мінімум (8.8) при обмеженнях (8.7). Незважаючи на, здавалося б, відмінність у постановках задач (8.6), (8.7) та (8.8), (8.9), їх можна звести до деякої загальної форми, наприклад, вигляду (8.6), (8.7). Для цього потрібно ввести характеристичні функції: , , і 1, якщо /'( X, а> )> а; л0(х,й,)= * м > ; > (8]0) [ 0, у противному випадку; | 0, у противному випадку, для яких 538
Дослідження операцій Мш {Ло (X, щ)} = Р{/(Х, со) >а}; М „{Ь, (X, <у)} = Р^,(Х, со) <0} Задача (8.8), (8.9) тоді набирає вигляду: мінімізувати М ш {/і0 (X, 6У)}, (812) при обмеженні {/і, (X, й>)}>/^ , /=1, т. Існують два основних підходи до розв’язування задач стохастичного програмування: 1) непрямі методи, які полягають у визначенні функцій Р (X ), С, (X) і розв’язанні еквівалентної задачі НП вигляду (8.6), (8 7); 2) прямі методи стохастичного програмування, основані на інформації про значення функцій / (X, со), §, (X, со), яку одер- жують у результаті проведення експериментів. 8.1. ОДНОЕТАПНІ ЗАД А ЧІ СТОХА СТИЧНОГО ПРОГРАМУВАННЯ До одноетапних задач стохастичного програмування належать задачі, в яких рішення приймаються на підставі відомих стохастичних характеристик розподілу випадкових параметрів умов задачі, до спостережень за їхніми реалізаціями. При цьому має прийматися найкраще в середньостатистичному розумінні рішення. Постановки задач стохастичного програмування розрізняються за такими ознаками: 1) характером рішень, 2) вибором показника якості рішення (критерію); 3) способом декомпозиції обмежень задачі. Обмеження на вид функції. У задачі стохастичного програ- мування зазвичай обирають такі функціонали, як математичне сподівання або дисперсія цільової функції, або ймовірність пе- ревищення цільовою функцією деякого порога. Задачі з цільовою функцією вигляду М {ст х} називають М- моделями, задачі в яких потрібно мінімізувати дисперсію 2з*** 539
іайченко ІО П. М {(с7 х-с7 х)3} називаю)ь У'-моделями, а стохасзичні задачі, в яких максимізується імовірність Р[с' х > с т х = к0} , називають Р-моде- лями [18; 57] До останньої групи моделей належать і задачі, де потрібно мінімізувати поріг к , який не може бути перевищений із заданою імовірністю о , наприклад: мінімізувати к, при обмеженні: Р{сг х < к}-а . Обмеження можуть мати одну з таких форм: а) Р{^ ач х)<ЬІ }>«, , / = 1,2,...,лі ; 0<«<1; б) Р{Ах<В|>а, 0<<т<1; В) Р X аік)хі~^ік -ак ’ о<а* <1;/: = 1. К. /=1 Розглянемо деякі варіанти моделей одноетапних задач стохастичного програмування. 1. Нехай задано задачу лінійного стохастичного програмування з імовірнісними обмеженнями типу а): максимізувати М {с т х}, (8.1.1) при обмеженнях: п Р< X аі]хі^^і Раі , ї=і,лі; ,;=і (8.1.2) х у > 0 , у = 1, п . (8.1.3) При детермінованій матриці А=|| о г / | і випадковому векторі Ь — [Д] задача (8.1.1)-(8.1.3) зводиться до еквівалентної детермінованої задачі ЛП таким чином. 540
Дослідження операцій Нехай Р(Ь ,1ц,...,Ьт) - сумісна щільність розподілу складових Ь, випадкового вектора Ь. Знайдемо щільність розподілу Ь,: Обчислимо Ьі із рівняння | Р(ЬІ)^ЬІ =О' , і = 1, т • (8.1.4) і: Якщо розв’язок рівняння (8 1 4) не єдиний, то за Ь, виберемо найбільший корінь. Очевидно, що умови (8.1.2) при цьому еквівалентні нерівностям: І аих}<Ь,, де Ь, задовольняє співвідношення (8.1.4). Звідси випливає, що задачі стохастичного програмування (8.1.1)-(8.1 3) буде еквівалентна така детермінована задача ЛІТ с х-ипах, (8.1.5) при обмеженнях: X а^х^<Ьі , і = 1, т, (8.1.6) у=і ху->0, (8.1.7) Де с=М {с} ; Ьі - корінь рівняння р(Ьі)=\-аі , або Д = Р '(1-а), Г (/> ) - функція розподілу випадкової величини Ь,. Для сіохастичної задачі (8 1 1)—(8.1.3) з детермінованою матрицею Л можна записати двоїсту задачу з імовірнісними обмеженнями. 541
Зайченко Ю.П. Розглянемо задачу: при обмеженнях: Ь 7 у —>тіп , Р(Агу>с)>р, У>0 (8.1.8) (8.1.9) (8 1 10) її розв’язок визначається у вигляді детермінованого вектора. Нехай с,(£) ~ функшя розподілу випадкового коефіцієнта С, функції (8.1.1), тобто с.(£) = Р{С,<£} - Якщо СР (£)=/?, , то запис £=О/(/7() еквівалентний запису £=тіп{у|6у (у)>/7;) Задачу (8.1.8)-(8.1.10) можна записати у вигляді: Ьгу—>тіп, (8.1.11) при обмеженні Агу>С ‘(Р), у>0 (8.1.12) Порівнявши цю задачу з вихідною (8.1.1)-(8.1.3), можна переконатися, що при /? = 6(С) такі дві одноетапні задачі стохастичного програмування з імовірнісними обмеженнями являють собою двоїсту пару: С 1 (Р)х->тах , Р{Ах<Ь}>а, х>0; (8 1.13) Г '(1-а)у->тіп , Р{Агу>с}>р, ¥>0 (8.1.14) 2. Розглянемо тепер більш загальний випадок, коли А - випадкова матриця. Нехай елементи матриці А та складові вектора Ь - незалежні між собою нормально розподілені випадкові величини: аіу є7У(аи ,<т,2у), 6. єЛ/(Л ,02) , тобто - випадкова нормально розподілена величина з математичним сподіванням а та дисперсією о 2;. Нехай, крім того, припустимо, що в умовах (8.1.2), а, > 0,5, і = 1,/и. Покажемо, що при таких припущеннях стохастична задача (8.1.1)—(8.1.3) зводиться до детермінованої задачі опуклого 542
Дослідження операцій програмування з лінійною цільовою функцією та квадратичними обмеженнями. Справді, при наведених припущеннях нев’язка 1-ї умови — випадкова величина (х)=£ а х -Ь ~ с нормально розподіленою /=і величиною з математичним сподіванням: та дисперсією: °'.2(х)=Есг2ух2+6';> тобто: (х),сг,2(х))- Тоді умови Р< £ 1>=> >а, еквівалентні нерівностям: або (що ге саме): 2сг2 (х) •д> а< , ї=1, т- (8.1.15) (8.1.16) (х)<0}>о,і , Позначивши ф(і )= --- (є 2 д£,, останню нерівність (8.1.16) у/2л -оо зведемо до вигляду: звідки: £,(х) + Ф 1 (а,)а, (х)<0. 543
іийченко Ю.П. Враховуючи вирази для З (х), о (х), одержимо остаточно: ф '(«,) X а'і х2і+0< х. , і=1, т- (8.1.17) Згідно з припущенням а,>0.5 . Тому Ф'(а)>0 , і можна переконатися, що область, яка визначається умовами (8.1.17), опукла. Аналогічний результат здобудемо, коли випадкові елементи рядка і -го обмеження {а,,} корельовані між собою. Введемо такі позначення: уі<=М{(Ьі-Л,)(а,7-а.;)}; УІік=М {(а,, -а,*)} • Тоді розмірковуючи, як вище, дістанемо: । \ і ‘ > У /і Якщо матриця V, =|| у//Ч II , ],к = \,п додатно визначена, за а, >0.5 , / = 1,ш , то допустима множина розв’язків, що задасться (8.1.18), буде опуклою. Отже, за прийнятих вище припущень лінійна сзохастична задача (8.1.1)—(8.1.3) з імовірнісними обмеженнями зводиться до детермінованої задачі опуклого програмування вигляду: п Е Су.гу->шах, >=1 при обмеженні: V,/^xIx^-2'^Vчx/+0' 3. Розглянемо задачу стохастичного проі-рамування, задану Р-моделлю: мінімізувати к, (8.1.19) 544
Дослідження опертіііі при обмеженні: п = «0 (8.1.20) Вважатимемо, що випадкові коефіцієнти , у = 1, п, розподілені нормально із математичним сподіванням с, та кореляційною матрицею С=||с,/|| , де с,у =Л/{(с,-сДс,-с,)} . За таких - п припущень лінійна форма с7 х = с х розподілена з /=і 7 7 _ Т н п математичним сподіванням с'х та дисперсією X X с^х,х^ . 1=1 у = 1 Тому співвідношення (8.1.20) можна записати у вигляді: *-Е сіхі /=і (8.1.21) Звідси випливає, що мінімізація к за умови (8.1.20) еквівалентна мінімізації . . " , і \ Г"" *(*)=£ с ,х і+Ф (а0 ) X Е с/ухі^ /=і р=і;=і При а>0 к (х) являє собою опуклу вниз функцію по змінних . Таким чином, за зроблених припущень, задачі стохастичного проі-рамування вигляду: мінімізувати к, (8.1.22) при обмеженнях: Р{стх < к}=а0, (8.1.23) 545
Зайченко Ю.П. п (8.1.24) , і = 1, т , відповідає такий детермінований еквівалент: (8.1.25) при обмеженні: (8.1.26) 1 = 1, т . Задача (8.1.25), (8.1 26) являє собою задачу опуклого програмування. Для її розв’язання можна застосувати теорему Куна- Таккера, або використати один з варіантів методу можливих напрямків та інші методи НП. Приклад 8.1. Нехай велика свиноферма має можливість купу- вати від одного до чотирьох різних видів зерна та готувати з них різні види сумішів. Різні зернові культури містять різну кількість необхідних компонентів. Припустимо, що в розрахунок беруться 4 компоненти (л.В.С.о). Вихідні дані цієї задачі наведено в табл. 8.1. Нехай фермер встановив, що комбікорм для свиней повинен задовольняти деякі мінімальні потреби з точки зору його споживності. їх наведено в табл. 8.1. Нехай питомі витрати на закупівлю одиниці маси зерна видів 1, 2 та 3 дорівнюються відповідно 41,35 та 96 умов. грош. од. на 1 кг зерна. Необхідно визначити, яка з можливих сумішей, що задовольняють потреби на споживність, найдешевша. Позначимо через *।, *2, *3 шукану кількість зерна кожного виду. 546
Дослідження операцій Таблиця 8.1 Інгредієнти у складі суміші Вміст інгредієнта в одиниці зерна виду Мінімальні потреби на період 1 2 3 А 2 3 7 >1250 В 1 1 0 >250 С 5 3 0 >900 О 0,6 0,25 1 >232,5 Тоді погрібно знайти такі *і, -т2, <з для яких 41 хі +35л2 +96*3 —>тіп , (1) при обмеженнях’ 2л!+3х2 т 7х3 >1250 (інгредієнт А); 1x1+1^2^250 (інгредієнт В); 5*! +3х2 >900 (інгредієнт С); (2) 0.61 ] т0.25 г2 + Н3 >235.5 (інгредієнт О). Припустимо, що мінімальні сумарні потреби в компонентах А, В, С, О є випадковими величинами а, Ь с, сі що розподілені рівно- мірно в інтервалах [1000, 1500], [200, 300], [500, 1000], [150, 250] відповідно. Побудувати відповідну мінімізаційну модель, яка забезпечила б мінімальні потреби в усіх компонентах з імовірністю, не меншою, ніж 0.80. Відповідні детерміновані еквіваленти імовірнісних обмежень матимуть вигляд: 2 а'। +Зх2 + 7л'з>0|=1 400, 1л,+1х2 >/>!=280, 5 х । + 3 х 2 > с । = 900; 06 х । + 025х2 +1 х з > її ] =230, (3) Де - відповідне значення випадкової величини а , яке задовольняє умову Р{а<а}}=а =0.80, звідки а, =1400. Аналогічно 547
Зайченко Ю.П. знаходять значення Ь, с. сі. Далі розв’язують детерміновану еквівалентну задачу ЛП (1), (3). Її оптимальний розв’язок такий: ,г® = 162.5, Д' = 177.5, л°= 103.5, а відповідні мінімальні витрати дорівнюють 20.693. Приклад 8.2 Для виготовлення визначеного сплаву із свинцю, цинку і олова використовується сировина у вигляді таких п’яти сплавів із тих же металів, які відрізняються складом і вартістю 1 кг. Припустимо, що процентний склад металу у у кожній сировині і є випадковою величиною, рівномірно розподіленою в інтервалі [ач,Лу]. Початкові дані наведені в таблицях 8.2(а) та 8.2(6). Необхідно визначити: а) скільки сировини кожного типу потрібно взяти, щоб виготовити з мінімальною собівартістю сплав, який міститиме не менше 20% свинцю, 30% цинку і 40% олова. б) Вирішити цю задачу при умові, що з імовірністю 0.9 сплав буде вміщати олова не менш 40%, а цинку не менш 20% Таблиця 8.2(а) Матеріал 7 Місткість металу в сировині і, % і=1 і=2 і=3 і=4 і=5 Яі, Ьч «V ь. ьч ач Ьч ач Ьч Свинець 10 20 10 20 зо 50 зо 60 20 40 Цинк 5 15 20 50 40 60 20 40 10 зо Олово 60 80 40 60 5 15 10 20 20 50 Таблиця 8.2(6) І 1 2 3 4 5 с, 4 5 6 8 7 548
Дослідження операцій Розв’язок Складемо математичну модель даної задачі. Позначимо через х, - масу сировини і-го типу, через - вміст металу у в сировині і (в %), а через Ьі - бажаний вміст металу / в сплаві (в %), с- - вартість 1 кг сировини і. Запишемо математичну модель даної задачі: 5 тіпЛ/ (>) при обмеженнях: >/>,.}> 0,75, 7 = 1..3; (2) 1=1 (3) І=І х, >0. ї = 1..5. (4) 5 Обмеження (3) необхідно ввести, тому що - це маса і-і металу і в сплаві (кг), а Ь- виміряється в %. Складемо детермінований еквівалент задачі (1)-(4). Оскільки 5 число доданків аі/хі в (2) дорівнює п = 5, то сума а ііхі і=і 5 5 розподілена нормально з середнім і дисперсією У^сг2;,^,-2 . >=: /=і Використовуючи формули (6.2.22—6.2.26 ) запишемо детермінований еквівалент задачі: 5 тіп , /-і 549
Зайченко Ю.П. при обмеженнях: 5 5 1 £д,х.-Ф ’(0,75)(£ а2„х2,) >Ь, у = 1.3, (6) £х, = 1, х, > 0, / = 1 5; (7) 1=1 ~ 12 ’ Р"~ 2 Підставляючи дані з таблиці 1 і 2 задачі: отримаємо модель даної тіп(4х] + 5х2 + 6х3 + 8х4 + 7х5), за умов 15і,+15х, +40л'3 + 45х4+ 30х4-Ф '(0.75Х—х2 +—х.2 є — л2 + 75х2 + —х2)1 2 > 20; З З 3 ’ З !0х, +35х, +50л, + 30х4 +20х, -Ф ’(0,75)(ух,2 + 75х2 +^ух,2 + Дрх42 + -у^х2)' 2 >30; 70л, + 50л,+10х3 +15х4 +35х,-Ф ’(0.75)(^х,2 +—х,2+—х; + —х2 +75х2)* 2 2 40; х, +л. >х3 +х4 +х, =1; і, >0, г = 1..5. 8.2. ДВОХЕТАПН1 ЗАДАЧІ СТОХАСТИЧНОГО ПРОГРАМУВАННЯ Постановка двохетапної задачі При дослідженні багатьох задач планування та керування в умовах дії випадкових збурень можна і доцільно процес прийняття рішень розподілити на два етапи. На першому етапі вибирається попередній план, який дає змогу провести підготовчі роботи. На другому етапі виконується компенсація нев’язок, виявлених після спостереження реалізованих значень випадкових параметрів умов задачі. Зрозуміло, що 550
Дослідження операцій попередній план і план-компенсація мають бути узгоджені так, щоб забезпечити мінімум середнього значення сумарних витрат, які виникають на обох етапах розв’язання задачі. У розв’язній задачі вибір попереднього плану має гарантувати існування плану- компенсації. Розглянемо таку задачу: мінімізувати с т х , (8.2.1) при обмеженнях: Ах = В; (8.2.2) А(1)х = В(1); (8.2.3) х>0, (8.2.4) де Сг=[су ], у = 1, п; А = ||а,у ||, і=\.т, ]=\,п; А(,,=|а‘1’ |, к = 1, т . Припустимо, що елементи матриці А = а(су) і вектори В = В(су) , С=С(су) - випадкові величини, які іалежать від реалізації деякої випадкової події со, а рішення х потрібно приймати до спостереження випадкових параметрів А(су ), В(су), С( су). Уявімо собі процес розв’язання задачі (8.2.1)-(8.2.4) таким чином. Виберемо спочатку (на першому етапі) вектор х , що задовольняє умови (8.2.3), (8.2.4). Далі зафіксуємо реалізацію со випадкової події та відповідні їй значення а(й), В(й), оцінимо нев’язку В(й)-А(су)х в умовах (8.2.2) й обчислимо вектор у>0, який компенсує нев’язку відповідно до співвідношення: Ву=В(су)- А(й )х , Де В=||с7„. |, ї=1, т, /=1, п - матриця компенсації. У загальному випадку елементи В - випадкові. Якщо задачу (8.2.1 )-(8.2.4) 'нтерпретувати в термінах планування виробництва і А - матриця основних технологічних способів виробництва, го В інтерпретуєт ься як матриця аварійних технологічних способів, які визначають можливі шляхи компенсації виявлених нев’язок. 551
Зайченко Ю.П. За порушення умов задачі встановлюється штраф, що залежить від значення складових вектора у, що компенсує нев’язки. Характеризуватимемо штраф величиною д г у, причому в загально- му випадку д - випадковий п\ -вимірний вектор, д>0. Вектор у можна вибрати багатьма способами. Зазвичай, його вибирають таким чином, щоб забезпечити мінімальний очікуваний штраф за компенсацію умов задачі, які визначаються попереднім планом х. Іншими словами, на другому етапі розв’язується задача: мінімізувати д т у , (8.2.5) при обмеженнях: Оу = В-Ах, (8.2.6) У>0. (8.2.7) Обидва етапи можна звести в один. Тоді приходимо до постановки двохетапної задачі стохастичного програмування: тіпЛ/^ {сг (й>)х + тіп[дг (су )у]}« (8-2.8) при обмеженнях: А<І>х = В<”; (8.2.9) В(су)у = В(щ)-А(су)х; (8.2.10) х>0,у>0. (8.2.11) Таким чином, розв’язок двохетапної стохастичної задачі складається з двох векторів: детермінованого п -вимірного вектора х, який визначає попередній план, і випадкового п! -вимірного вектора у (су) , який визначає план-компенсацію. Для розв’язання задачі достатньо обчислити оптимальний попередній план х. Після реалізації випадкової події со (тобто після реалізації випадкових параметрів умов задачі) відповідна реалізація оптимального плану- компенсації обчислюється як розв’язок задачі ЛП (8.2.5)-(8.2.7). Витрати на план-компенсацію мають бути найменшими. Тому доцільно для перспективного планування (двохетапної схеми) використати малочутливі до варіації параметрів умови задачі. 552
Дос лідження операцій Область визначення планів першого етапу. Розглянемо множину попередніх планів х двохетапної задачі. Нехай х - вектор, який задовольняє обмеження задачі (8.2.8)- (8.2.11). У загальному випадку, коли матрицю компенсації В задано довільно, немає гарантії, що не існує такої реалізації й, для якої система В(бУ)у = В(й>)-А(д?)х, у>0, не матиме розв’язку. У цьому разі неможливо ліквідувати нсв’язку, що виникла, за допомогою векгора компенсації у. Для того, щоб вектор х був допустимим планом двохетапної задачі, необхідно, щоб для всіх юєО існував вектор у такий, що В(то)у = В(ту)-А(ту)х. Такі неявно задані обмеження на вибір вектора у називають індукованими (або наведеними) [57]. Умови (8.2.9). (8.2.11) звуться фіксованими. Позначимо множину векторів х, яка визначається фіксованими обмеженнями, через Я,, а індукованими - через Я2, тобзо /?, ={х:А(,)х=В(1); х>0}; Я, ={х:У (туєО) Зу>0, В(то)у = В(то)-А(й>)х]. Тоді область визначення вектора X задається множиною Я = Я ,0 7?2 . Розглянемо випадок, коли матриця В детермінована. Встановимо достатні умови того, що Я2=£*'’1 , де £(,’) - п - вимірний евклідів простір, тобто достатні умови того, що множина планів задачі другого етапу непорожня. Вони формулюються в такій теоремі [18; 57]. Теорема 8.1. Для того, щоб Я2=£’,”\ достатньо виконання таких умов: — матриця компенсації В вимірності тхп) має ранг т (т<п\); - існує невід 'ємний розв ’язок системи В і = 0, причому гу>О,при у = 1,/л. (8.2.12) 24і 553
кіичеико Ю.П Перевірка умови (8.2.12) досить складна. Однак в окремих випадках ці умови можуть бути конструктивними. Нехай, наприклад, л, -т-1. Тоді умова (8.2.12) матиме вигляд: £ 2 іЬ/»4і гшц • (8.2.13) /=і Згідно з умовою 1) теореми, перші т стовпців Ь у матриці в лінійно незалежні, і тому 2,„+І*0. В силу умови 2) маємо г,п+І >0. Тому співвідношення (8.2.13) набирає вигляду: т Ь,- 1=1 Якщо всі г у =—-—>0 , у = 1, т, то /?2 = . Отже, теорема 8.1 - 014 і справедлива. Справедливе також і таке твердження: множина попередніх планів двохепіапної задачі опукла. Умови розв'язності задачі другого етапу. Запишемо задачу (8.2.8)-(8.2.11) у вигляді: мінімізувати М ю {сх + Р(х,А,В)}, (8.2.14) при обмеженнях: А'1’ х = В(1), (8.2.15) х>0, (8.2.16) де Р(х, А,В )=тіпц г у, (8.2.17) Ву=В-Ах, (8.2.18) у>0. (8.2.19) Умови розв’язності задачі другого етапу (8.2.17)- (8.2.19) формулюються так [57]. 554
Дослідження операцій Теорема 8.2. Для розв'язності задачі другого етапу при будь- яких реалізаціях А(су),В(су) і будь-якому попередньому плані х необхідно, щоб система нерівностей Огг<4 (8.2.20) була розв ’язна Доведення. За умовою, множина планів задачі (8.2.17)-(8.2.19) непорожня. Згідно з теоремою двоїстості ЛП функція Р(х,А.В), обмежена знизу тоді і тільки тоді, коли область визначення планів двоїстої задачі для кожного х, А та В {)(х, А,В )=тахг г ( В-А х ), (8.2.21) при обмеженні: Огг<ц, (8.2 22) є непорожньою Оскільки область визначення задачі (8.2.21), (8.2.22) не залежить від А, В, х. то якщо виконується умова (8.2.22), задача другого етапу розв’язна при всіх А, В, х, коли ж вона не виконується, то задача не має розв’язків при жодних значеннях цих змінних. Еквівалентна детермінована задача. Побудуємо детермінова- ний еквівалент двохетапної задачі стохастичного програмування. Її розв’язком є попередній план X. По компонентах оптимального попереднього плану X та реалізації параметрів умов задачі со будується задача другого етапу - задача ЛП, розв’язок якої визначає необхідну компенсацію плану. Еквівалентна детермінована задача мас вигляд тіпС(х). Дослідимо функціонал С(х) - показник якості попереднього плану. Виразимо Ст(х) через статистичні характеристики параметрів умов задачі та доведемо, що детермінована задача, еквівалентна задачі стохастичної о програмування, є задачею опуклого програмування. Розглянемо задачу другого етану (8.2.17)-(8.2.19) та двоїсту до неї задачу (8.2.21), (8.2.22) для кожного А. В, х. 24* 555
іші їсико Ю П Припустимо, що задача другого етапу та двоїста до неї розв’язні Згідно з іеоремою 2.5 двоїстості для задач ЛП, маємо: Р(х,А,В)-(2(х,А,в)=л ’ (А,х.В)(В-Ах), де 7 (а.х,В) - оптимальний розв’язок задачі (8 2.21), (8.2 22), який залежить від параметрів А, В, х. Враховуючи ці позначення, двохетапну задачу можна записати так: тіпС(\) = тіп{сг х + Л/0(х, А,В)} (8.2.23) або ппп{с7 х + М {г*г(В-Ах)}}. Детермінована задача (8.2.23), еквівалентна двохетапній задачі (8.2.14)-(8.2.19), є задачею опуклого програмування. Деякі окремі постановки двохетапної задачі У загальному випадку відшукання точного розв’язку детермінованого еквівалента двохетапної задачі становить великі труднощі, тому розв’язок шукають наближено. Однак в окремих випадках ця задача суттєво спрощується і її можна розв’язати класичними методами лінійного та опуклого програмування. Розглянемо такі випадки. Розілянемо двохетапну задачу, в якій випадковим є тільки вектор обмежень Ь(щ), а матрицю компенсації В після відповідної переста- новки рядків та стовпців можна записати у вигляді В=[е,-Е], де Е одинична мазриця вимірності яхи. Аналогічним чином розіб’ємо вектори у та ц на дві частини: [у,,у2] за ’ відповідні матрицям Е та -Е . Тоді задача (8.2.8)—(8.2.11) матиме вигляд: £)(х) — с7 х + Л/Р(х,Ь) —> тіп , (8.2.24) при обмеженнях’ А(Пх = В">, (8.2.25) 556
Дос лідження операцій х>0, (8.2.26) Де Р(х,Ь)=тіп(ч^ у, +д2у,) , (8.2.27) при обмеженнях: у,-у2=Ь(<и) - Ах; (8.2.28) у,>0 , у2>0. (8.2.29) Тут Уі,У->>Чі»Чз~п -вимірні вектори Очевидно, що задача (8.2.29) другого етапу має плани при довільній реалізації со і при будь-якому попередньому плані х, тобто 1 Я = Л1 = {х:А"’х =Ь(”, х>0}. Необхідна та достатня умови існування скінченного розв’язку задачі другого етапу в даному випадку матиме такий простий вигляд. Як відомо, у загальному випадку ця умова записується у формі: г<д. В даному випадку {г:[Е,-Е]гг<д} = {г:-ц2<г<я1} Оскільки, зазвичай Ч| >о, д >0, то ця умова виконується завжди. Задача, двоїста до (8.2.27)-(8.2.29), записується так: (2(х,Ь)=тахгг (Ь-Ах), (8.2.30) при обмеженнях: -д,<г<д,- (8-2.31) Задача (8.2.30) легко розв’язується і її розв’язок має вигляд т Є(*,ь)=£а(хД), (8-2.32) де (?(х, />,)=> ь,-±а. п якщо Ь, - £ а І х . > 0 ; /-і у протилежному випадку. (8.2.33) , чг, 242 557
Зайченко Ю.П. Тому еквівалентна опукла іадача для двохетапної стохастичної іадачі (8.2.27)-(8.2.29) записується так: сгх+Л/ ) —>тіп, ( 1 - ) / (8.2.34) при обмеженнях: А,,1х = В,,,> (8.2.35) х>0, (8.2.36) де (2(х,Ь') визначаються із співвідношень (8.2.33). Наведемо ще одну форму запису цієї самої задачі. Введемо позначення: Ах=\¥, (8.2.37) (Ах),.=£а.ух,=И> (8.2.38) 7 = 1 М 0(х,Ь)=Л^ X £>, (х Д) ^=М X 0, ,ЬІ )=£ ^|(ЗV|) (8.2.39) Зазначимо, що функції так само, як і <2, (И:Д), опуклі по И', . Двохетанна стохастична задача в цій найпростішій постановці зводиться, таким чином, до задачі опуклого програмування: сгх+]Г2.(И',)->пііп' (8.2.40) при обмеженнях: А(1)х=В(1), (8.2.41) Ах = \У, (8.2.42) х>0. (8.2.43) Дослідимо функції Для цього позначимо через 8,, у, відповідні точні верхню та нижню межі випадкової величини ЬІ {со), через Ь=[Ь, ,Ь2,...,Ьт]=МЬ - математичне сподівання вектора обмежень, а через Д (6.) - функцію розподілу компонент Ьі {со). 558
Дослідження операцій Розіб’ємо множину значень со, на три області: г,),[/,, $], (А Якщо />,(со) не має нижньої межі (відповідно верхньої), то покладемо =-оо (£,=оо). Обчислимо значення (), (ІТ) у кожній з цих областей. Використовуючи (8.2.33), одержимо: Є, (И'І)=Л/(0,(И', ,*,)}= =-9.'2’ / (Ьі-И',)сіРІ(Ь,)+ч'" | (ЬІ-Н',)<1 Е(Ь,) = я л, <н; Звідси: С?,(И,,)=д,",(ї’-И,і)-(?,1” + 9‘2>) | (/>,-И,і)с/Р’,(6,)- (8.2.44) А, <ІГ, Розглянемо три випадки. 1. Нехай И7, < у ,. Тоді {Л( :ЬІ <Ц\ } =0 і з (8.2.33) дістанемо: 2. Нехай (V, є[/. Тоді функція &(№,) на цьому проміжку виражається співвідношенням: в. )=Ч1‘" (Ь, -М,)-()ч+ ч'-1 І (Ь, -ІУ,) сі Г, () • г. 3. ІР,>5,. У цьому випадку множина збігається з усією областю зміни Ь (со). тобто О , і тому | (6,(су)-И’,)с/Р’,(6,)= \(Ьі(со)-(У.)аРі(Ь,)^Ь-РУі- Ь, 51Г. Я Отже, функція 0,(И'І) на інтервалі (^,,°о) має вигляд: (ИЛ,)=91'2,(И,1 -Ь,)=-д^ (Ь,-РК,). Як бачимо, функція О, (РР,) неперервна та опукла на всій числовій осі. 24** 559
іийченко Ю.І1 При деяких спеціальних розподілах компоненти вектора Ь(а>), двохетапну задачу можна звести до стандартних задач ЛП або опуклого ироірамування Розглянемо деякі такі випадки [18]. Приклад 8.2. Нехай компоненти розподілені рівномірно на відрізку |/ ,с>; | Тоді Т (6, )= 0 , при Ь <у,', Ь, V 1 -------, при <Ь <0 , <1 Е(Ь ) ------------іІЬ ~ У, ' 3, у, І , при Ь > д' . (8.2 45) Припустимо, що Тоді: С,,(и,І)=7,"’(Л1-ил,)+(91ІІ’+9’2’) ] )сір(Ь ) = Ь,<ІГ, _ IV -Ь =я-"(Ь,-и2 Ж??" -<7,п') [-і—'-аь,. °>~У< Враховуючи, що —-----------------------аЬ,=-------------------, -Т, 2 одержуємо: о‘” + а<2) (’К)=9," ’ (ї ~^,) + -- (IV,-у у. ^>-71) Тоді двохетапна задача стохастичного програмування (8.2.40) (8.2.43) зводиться до такої задачі квадратичного програмування [18]: ^,сіхі+^Ч (Л._^,І)Т^--------~~ (И,'|-у,)2 - >тіп, (8.2.46) /=і 2 за умов Л'”х=л"’, 560
Дослідження операцій або /-і (Лх ), =Х °‘іХі- >=1.т’ Лу>0 , 7 = 1. п . (8.2.47) (8.2.48) (8.2.49) Приклад 8.3. Нехай всі компоненти ь, вектора л(«?) розподілені експоненціально, тобто: [ 0 , при Ь^у,; _ ,п. Г(Ь)={ (8.2.50) ' ' | І-ехрї-ЛДЬ. -/,)], при Ьі €[/,,00] ^г,(^,)=л,е ^•'г'аь,. У такому випадку, згідно з формулою (8.2.50), одержимо: | Р(ЬД=А., Г''(1Ь, • (8.2.51) Ь, $№. г, Інтегруючи вираз (8.2.51) частинами, після нескладних перетворень дістанемо: я, І(бі-ж)е’Л'(Ь,’Л'аь^^-ь^е *ЛЬ,~Г''- (8.2.52) і —Х,(б,—/ ) 1 П /ЇХ/ ~—е -А(^,-/,)] я, /, я, Підставляючи (8.2.52) в (8.2.44) і враховуючи, що л(=у,4-у-, знаходимо: 243 561
Зийченко Ю.П. О, (м,)=7, (А, - и;)- (у;11+9;21 І - е '' - Я, (и; -/,)] = л =я лГ“[,-е (8.2 53) 9."’ „ (7І<" и"(7,<21 , [1-е Л л Отже, двохетапна задача стохастичного програмування зводиться до такої задачі опуклого програмування: Л,и' ЧЛ-ніт (8.2.54) 1«1 .-1 .-=1 Л, ЛІ при обмеженнях (8.2.41), (8.2.42) У випадку, коли можна вважати, що іуі°«~~=ьі , розклавши функцію [1-е Л <и ’] в ряд Тейлора, одержимо: £ сіх,+'£ -у ) -----(^г,-у,)! ->1П1П • /=і »=і »-і 2 Отже, ця задача зводиться до задачі квадратичного програмування. Приклад 8.4. Розглянемо випадок скінченого числа реалізацій випадкового вектора />(<у). Нехай складові б, вектора А(л>) можуть набувати значень ь}"<Ь-2)< з імовірностями .є,1**. Із формули (8.2.39) випливає, що при дискретному розподілі випадкової величини ЬІ {со) функції (со^Ь^ с кусково-лінійними функціями змінних <п, . Введення додаткових змінних та обмежень дає змогу звести опуклу кусково-лінійну задачу до задачі ЛП Позначимо 562
Дослідження операцій Р‘"=^ Р'Г' = Р{Ь, <Л‘”}; (8.2.55) /7<‘.‘;> = |. рі'>=р{Ь <Ь'і"}=0; Ь.=М (61}=^6(,и Р'" г=) Введемо змінні и',(г|,г=і,2.....*, +1, які задовольняють умови: 0<<г,<л‘г,-б‘'-І)^;'’) ,г=1,2. .*, + ! . (8.2.56) И'*,+1 >0 . В цьому випадку (>гі)=9‘"(6,-И',)-(9,,,,+9.'1’) | (Ь,(Ь,) = Ь <11 =9.'"(6,-^,)-(9'" + 91!2')Е (6,іи-РГ,,г’)Р," = Г=1 =9?Ь,-Е[9.'"Ч9,1,’+9(П’)/\1''] г-> Отже, задача стохастичного програмування (8.2.40)-(8.2.43) зводиться до задачі ЛП вигляду: Е І9,,"~(9,,"+9.1!,)С1 И','и->тіп. (8.2.57) /=1 /=1 Г=1 при обмеженнях: £ (8.2.58) і=і (8-2-59) /-1 г=! де ; 0<и7Г)-<-Г1' г=2-і..............................к> ' (8.2.60) И'.(*і+п>о, І=ї^; (8.2.61) х >о, п . (8.2.62) 24*** 563
Зайченкц Ю.П. Приклад 8.5. Двохетапну задачу, в якій усі випадкові компоненти вектора Ь(а>) мають неперервну функцію розподілу, можна набзижено звести до задачі квадратичної о програмування. Для цього потрібно замінити неперервну гладку функцію розподілу східчастою функцією і представити у вигляді суми рівномірно розподілених випадкових величин: *, * л, = Е Л'' ’ ьіГ1 • Е р,<г> =і. (8.2.63) Г-1 Г=1 0 при Т, у; І . при Відповідна детермінована задача годі запишеться так: 171 *. 1 ІН /•,(*' їж. (8.2.64) _> тіп, при обмеженнях: Е ",7 А'=Л/') • (8.2.65) /=і >=Г^; (8.2.66) іг.ІГ’>о, л,>о. (8.2.67) Приклад 8.6. Розглянемо задачу, що зводиться до двохетапноі моделі стохастичного програмування. Нехай існує декілька підприємств, що виробляють деякий однорідний продукт. Підприємства розташовані в пунктах 4|,Л2,...,Л„, . Обсяги виробництва продукту у відповідних пунктах дорівнюють о, , і = 1,т Крім того, є п пунктів споживання цього продукту й|,я2....в„ з рівнями споживання ь},ь2....ь„ відповідно. 564
Дослідження операцій Позначимо виробничі витрати на виробництво одиниці продукту в пункті г, через с,, а транспортні витрати на перевезення ОДИНИЦІ продукту ІЗ пункту А, в пункт В ! - через с> (1 = 1. т , /=!, п) Припустимо, що величина попиту в пунктах б, - випадкова, з відомою функцією розподілу Р(Ь ), і нехай р (Ь ) ~ рівномірний розподіл на відрізку ]. Позначимо через витрати на зберігання одиниці надлишкового продукту в пункті . Якщо попит перевищує обсяг ввезеного продукту х і , то потрібні додаткові витрати на виробництво та ввезення продукції. Позначимо питомі виграти на виробництво та ввезення одиниці продукту в пункт в через ^тіп (є, +£,,) Припустимо, що величини с, та ч, випадкові, з відомими середніми с, та сц. Потрібно визначити такі обсяги перевезень хц із пункту А, в пункт в,, а також плани випуску додаткової продукції л-,, при яких мінімізується сума очікуваних витрат на виробництво за перевезення продукції та зберігання надлишкового запасу. Розв’язання. Складемо математичну модель задачі. На першому етапі потрібно знайти такий план перевезень х_| т ц, для якого М {с7 х} = Л/ £ £ сІ( хи I—>тіп, (8.2.68) І ' і ' ] при обмеженнях: А х=£ х,, <а,, і=1, т (8 2 69) і > Позначимо обсяг виробництва продукту, який перевезено в пункт В, через і . Очевидно, А121 х = £ хи і, / = !, п. 565
іайченко Ю.П. Введемо вектор компенсації ''=||т/|| , де у,^ь, я , ,/=),» та матрицю компенсації £7(Х.Ь)=£ (?(Оу)=£ Сди;./, ) ’ / । /=і де [ Ь, - IV ] а, , якщо Ь О (IV УЬ )= ' ' 1 ' ' ' , якщо Ьі<М''. Використовуючи співвідношення (8.2.40)-(8.2.43), запишемо детермінований еквівалент для даної задачі в такому вигляді: МІ £ І‘.,*,+£ 1-мліп. (8.2.70) І /=> /=1 ] при обмеженнях: £.»о50,, і=і7^; (8.2.71) /=і їі>=и'у-7=1'"’ (8.2.72) >=і л/7го. (8.2.73) Використовуючи вираз (8.2.46), зведемо цю задачу до вигляду: т н н Н С 4- <7 Е ЕГма'.,+£ Я —'—^1 г,)2 ->тіп> (8-2.74) і=1 /=< /=І 7=1 при обмеженнях: Ххіу <а,-, і=І,т; (8.2.75) У = > X . У=Г7; (8.2.76) і = 1 де гУ/>о. (8.2.77) Задача (8.2.74)-(8.2.77) є задачею квадратичного програмування з обмеженнями-рівностями і обмеженнями-нерівностями. Щоб розв’язати її застосуємо теорему Куна-Таккера. Для цього складемо функцію Лагранжа для даної задачі: Л(Х,А)=^ ± с., л„ уХ Х- )+£ '-І /-І і і \ /,) 566
Дослідження операцій Запишемо необхідні та достатні умови оптимальності: гі(Х.Л) _ V. 7— —; (8.2.78) —'------ с,, ~Ч +~ Ч 2_л' /< +Х,>0 . і=1. м , /=^1, п ' ^ГГДн ) (8.2.79) аг ‘-1 ' акх.Л) а*,, Л| і=1 т,/=1,л; ^)Цух _ А (8-2.81) ах Ітг " ) Для подальшого розв’язання цієї задачі застосуємо стандартні методи ЛП або метод перебору варіантів. с. -ч -г, +х, х, =0, (8-2.80) ' ' 8,-гХк ) 8.3. МЕТОД ПРОЕКТУВАННЯ СТОХАСТИЧНИХ КВАЗІГРАДІЄНТІВ Розглянемо клас оперативних задач стохастичного програму- вання. в яких потрібно мінімізувани цільову функцію /(х,лі), яка визначається в умовах дії похибок. Точне значення самої функції /(х), а також її похідних ї( (х) = V/ (х), визначити неможливо. Втім є можливість багаторазово спостерігати за станом природи ш (зовнішнього середовища) та оцінювати реалізації цільової функції /(Х],й?|),/(х2,<у2),..., /’(хл.,бУл.). У такому випадку доцільне використання прямих методів стохастичного програмування, до числа яких належить метод проектування стохастичних квазіградієнтів (СКГ), або стохастичний квазіградієнтний метод, розроблений Ю. М. Єрмольєвим [17]. Стохастичний квазіградієнтний метод призначений для розв’язання задач як стохастичного програмування, так і нелінійного програмування з негладкими, або опуклими функціями та обмеженнями в умовах неточної інформації про ці функції та їхні похідні. 567
Зиііченко Ю.П. Отже, нехай потрібно мінімізувати /(Х.Й>) = ДХ|,Г2,...,Х„,ГУ), (8.3.1) при обмеженні: х є /?(х), де /?(х) - опукла замкнена множина; /(х) - опукла негладка функція, точне значення якої, а також її похідних обчислити неможливо. У цьому випадку замість точних значень градієнтів або узагальнених градієнтів функції /(х) використовують випадкові вектори, що є статистичними оцінками цих величин. У методі СКГ за напрями спуску і вибирають такі випадкові вектори. Отже, нехай існує деякий випадковий простір із множиною елементарних подій а>. Розглянемо послідовність випадкових точок х у (<у), 5 = 0,1,..., що визначаються за формулою: «5+1 = -Р.гЛЛ (8.3.2) де л, - оператор проектування на множину К(х) ; хп - довільна початкова точка простору; р д. - величина кроку; у - нормуючий множник; (;,(«) - випадковий вектор, умовне математичне сподівання якого дорівнює: Л/|х0,х,,...,х,} = {(х5) + Вд, (8.3.3) де скаляр ад. >0; Вд. = [6|д.,62д.,...,6нд.] - випадковий вектор, який не залежить від послідовності (хс,Х],...,хд); величини рд., уд. вимірні за Борелем. Як відомо (див. розд. 6), узагальнений градієнт функції /(хд.) у точці хд. - вектор Гд (хд.) - задовольняє при будь-якому векторі £ нерівності: /(2)-Лхд.)>Г;(х,)(2-хд). (8.3.4) Вектор ^д, що задовольняє (8.3.3), з точністю до параметрів ах, Вд. збігається в середньому з вектором узагальненого градієнта. Якщо покласти од. = 1, Вд. =0, то £д цілком природно назвати стохас- 568
Дослідження операцій тичним узагальненим градієнтом (або квазіградіснтом), а процедуру (8.3.2) методом проектування стохастичних квазіградієнтів. З аналізу процедури (8.3.3) випливає питання про збіжність послідовності {хх} . Існують різні варіанти збіжності випадкових послідовностей: за ймовірністю, в середньому квадратичному та з ймовірністю 1 (тобто майже обов’язково). Найбільший практичний інтерес становить збіжність з імовірністю 1. Наведемо умови, за яких ця збіжність гарантується. Припустимо, що ух =1, 5 = 0,1,..., а р4 не залежить від ш. Позначимо через х множину оптимальних розв’язків задачі (8.3.1). Справедлива така теорема [17;18]. Теорема 8.3. Нехай виконуються умови-. Ц^. ||2 < с = соп.м, 5 = 0,1,..., (8.3.5) ах(й>)>с,, ||В4.(«)||< В,, (8.3.6) рЛ. >0, £р4.ЛЇ5,. <а>, Ер2<оо, (8.3.7) 5=0 5=0 00 £р4.є4. = оо , з імовірністю 1. (8.3.8) 5=0 Нехай множина /?(х) обмежена і Л/||х0||2 <оо. Тоді послідовність х4.(й>) , визначена згідно з (8.3.2), (8.3.3), збігається до х* з імовірністю І, причому Ііт х4.(ю) є х . 5->00 Доведення. Нехай х є X* , згідно з означенням операції проектування ттг (п. 6.9) маємо: =||х* -ХїЦ +2р4Л4Г(х* -хл) + р2 Щ2. Візьмемо операцію умовного математичного сподівання від обох частин нерівності (8.3.9) за умов х-, х2, ... , х4: 569
Заїїченко Ю.П. М{(х* ~ хч+;|'|х0, х...х.} < ||х’ - х,|2 4 2да, £(х,)(х' - х,) + (8 3 ]0) 4 2р,В[(х'-х,)4-А2|^|\ Оскільки ,/(х) - опукла вниз функція, то 0> /(х*)-/(х4)>Г^(х4)(х* -х4), отже: Г^(х4 )(х*-х4) < 0. (8.3.11) Тому, застосовуючи нерівність Коші-Буняковського Вг(х*-х )<||В !І]|х*-х І| 1 використовуючи (8.3.5), одержуємо з (8.3.10): Л/{|х*-х4.+І| | х0,х1,...,х4.}<||х‘-х4.|| + 2/р4.54+ср2, (8.3.12) де у - деяка константа. Позначимо Тоді із (8.3.13) випливає: Л/(24+і і Х0,Х|,...,х4.)^74, і внаслідок того, що 74 залежить тільки від х5: М(25+\ | 70,71,...,74)<74. Така послідовність випадкових величин (74.) зветься супермартин- галом [17]. Оскільки супермартингал невід’ємний (2\>0), то він збігається з імовірністю 1 [17]. Звідси з урахуванням (8.3.7) можна зробити висновок, що послідовність |х*-х4. | збігається з імовірністю 1, отже, послідовність {х4.} обмежена і множина її граничних точок X непорожня. Нехай х'(<у), х"(<у) - дві довільні 570
______________________________________________Дослідження операцій граничні точки послідовності {х5(ю)} . Тоді для будь-якого х'єЛ’’ матимемо ||х* - х'(йі)|| = ||х’ - х"(й>)|| - Якщо тепер показати, що одна з граничних точок з імовірністю 1 належить множині X* , то із останньої рівності випливатиме, що вона і є єдиною граничною точкою послідовності. Із (8.3.9) маємо: |х’~х,+і| -||х’-хо| + 2І>*Фх*-х*) + сІ>і • 11 " " 11 *=0 А=0 Звідси: Л/{>|х _х0||‘} + 2£рЛЛ/аАГДх4)(х -хх) + ‘=° (8.3.14) + г£аЖ + с£р;. *=0 1 о Оскільки ліва частина (8.3.14) невід’ємна, то справедлива нерівність: М{||х’ -х0| } + 2^ркМак Гх(хЛ)(х* -х*) + /Хр*Л/Ва *=0 *=0 *=0 Переходячи до границі при $->оо і враховуючи (8.3.7), одержуємо з імовірністю 1: т £ А Л/а4 Е (х4 )(х’ - х4) > -оо *-« і внаслідок (8.3.6): ЛТ Еає*. Гг(х*.)(х -хА. )>-<». (8.3.15) *=о □О Оскільки Хр*А =°°, го звідси випливає, що знайдеться така *=о послідовність {хі7}, що з імовірністю 1: (ХЛ/)(х* - хі7) -> 0 при І -> ОО, 571
Зайченко Ю.П. Г г(х) - узагальнений градієнт, і тому: Лт /(х*)-/(хі7)> Гг(х5/)(х’ -х17)-->0. Отже, для будь-якої граничної точки х„р(ш) послідовності |хл/| , одержимо: /(х„/,(й>)) = ./(х*),тобтоз імовірністю 1 х„р є X*. Теорему доведено. Покажемо тепер, як за допомогою методу СКГ можна конструювати різні варіанти прямих методів стохастичного проірамування. До них, зокрема, належить метод стохастичної апроксимації. Метод стохастичної апроксимації Цей метод запропонували Н. Робіне і С. Монро і розвинули Е. Кіфер та Дж. Вольфовітц для розв’язання екстремальних стохастичних задач без обмежень. Нехай потрібно знайти мінімум функції регресії: Г(х) = Л/й,{/(х,й>)1= Р^С(2,х), (8.3.16) де С(2,х) = Р{/(х,<а)<2}. Основна ідея цього методу полягає в тому, що при мінімізації Р(х) за напрямок спуску вибирається антиградієнт функції /(х,л?) замість невідомого антиградієнта - ЕЛ(х) функції Г(х), яку точно виміряти (визначити) неможливо. У методі стохастичної апроксимації розглядаються ітеративні процедури пошуку, що визначаються співвідношеннями; х,+) = х5-рх їх(хх,со), 5 = 0,1,.... (8.3.17) 572
Дослідження операцій Якщо при кожному со градієнт і\.(х,со) аналітично обчислити неможливо, то розглядають різницевий варіант методу, в якому ірадієнт визначають чисельно х = х , (8.3.18) де е, - орг у-ї осі; <Оу (/= 0,1,2,..., п) - результати незалежних спостережень за станом природи со ; рЛ. - довжина кроку; Д$. - зміщення. Збіжність методу стохастичної апроксимації зазвичай досліджують у припущенні, що Е(х) має неперервні та обмежені другі похідні. Можна показати, шо за цих припущень [17]: V Д х> + “ Лхл>Чо) , X А, = Рг(х,) + У,Д,< (8.3.19) де V, - деякий вектор такий, що ||У4Ц < сога/. Отже, метод стохастичної апроксимації є окремим випадком методуСКГ, де = ± . Є) (8 з 2С) /=> Дс Наведемо деякі узагальнення процедури (8.3.17). Припустимо, що розмірність простору Е*"’ велика і на чисельне визначення напряму спуску згідно з (8.3.20) втрачається дуже багато часу, а крім того є обмеження х є /?(х). Тоді можна використати випадкові напрямки Р - {Р\ ,Рп [ 3 незалежними та рівномірно розподіленими компонентами ру на проміжку [-1, 1] і розглянути такий процес пошуку: х541 = Л-,(х1 - Л X + ~.Чо) . р }, (8.3.21) *=і А, де А = 0,1,2,..., А, - серія незалежних реалізацій вектора ві-й ітерації (1<А4. <п) ; Л4 - зміщення по осі. Величини А4. та Д4 вважаються скрізь вимірними за Борелем. У розглядуваному 573
Зайченко Ю.П. випадку, якщо Е(х) двічі диференційовна, має обмежені другі похідні при х є К(х), то *&,/(х, +Л,В,і,сі>.і)-/(х,,г»,о) А, Л/( X—------- Рй > «5) = — *\(*,) + '''А , (8.3.22) *=і Д5 З де \УЛ. - деякий випадковий вектор, причому ||\¥, ||2 = сопхі. Оскільки другі ПОХІДНІ функції /(X) обмежені, ТО ||^Л2 <СОП5/, а величини р5, к5, Д5 слід вибирати так, щоб виконувались наступні умови збіжності: а) рЛ >0, б) ЕрА =°°, 5=0 в) Ер?<°°, 0 ЕріЛ/Ді <оо. 5=0 5=0 Якщо Ал. = А = сопзі, то умови збіжності мають вигляд; а)р5>0, Ір4.=оо,б) Хр2<оо,в) ІР.А <оо. (8.3.23) 5=0 5=0 5=0 Типовим прикладом послідовності, що задовольняє умові (8.3.23), є гармонійний ряд: р, = —•—, 5 = 0,1,..., с = сопм. с + з Статистичні методи пошуку нелінійного програмування За допомогою методу СКГ можна розв’язувати задачі не тільки стохастичного, а й нелінійного програмування, в яких через деякі обставини обчислити значення ^(х) важко (або неможливо). Так, якщо невідомий аналітичний вигляд функції /(х) , то обчислити д/(хк) неперервні похідні ----— неможливо і тоді використовують різницевий аналог градієнта: 574
___________________________________________Дослідження операцій = Е/(-- + А5Є,)~/(Хг)-е . (83.24) /-> А, де еу - орт у-ї осі; Ду - зміщення вздовж у -ї осі. Якщо я - досить велике число (» = 102 -103), то обчислення числового значення градієн- та потребує великих витрат. У такому випадку відмовляються від використання напрямку градієнта і послуговуються будь-яким допустимим напрямком таким, що кут між та їд(х4) менший за 90°. Зокрема, виявляється доцільним використати методи випадкового пошуку, які являють собою окремий випадок методу СКГ [40]. Розілянемо випадковий вектор р = [/?|, Д„] із незалежними і рівномірно розподіленими на проміжку [-1, 1] компонентами і покладемо <г ' +Д'Р'<)~ ЯХ3 . р , (8.3.25) ю А< Де р,А , А = 1, 2,. , А, - серія незалежних спостережень вектора в 5-й ітерації (1 < Ау < в) , Ду > 0 . Випадкові величини АЛ , Дл вважають скрізь вимірними за Борелем. Неважко показати, що ЛУ(^ / х4) = у Гу (х4.) + \У5Д4., (8.3.26) Де - деякий випадковий вектор, причому |\¥4. || < сопзі. Отже, для мінімізації Дх) можна застосувати метод СКГ вигляду Х5+І = (ХА “ РаЛа )’ 5 = 0,1,2,..., в якому вектор 44 обчислюється згідно з (8.3.25). Оскільки другі похідні функції Дх) вважаються обмеженими, то <СОЛ15/ і величини р4., Ау , Д4. слід вибирати так, щоб виконувалися умови: Р4 0 > ЕРаА=о0. А —о 575
Зайченко Ю.П. < °° > ІЕр^мд* < °° »-0 іО У цьому разі послідовність {х }, з = І,<х збігається до точки мінімуму /(х)- 8.4. ЗАСТОСУВАННЯ МЕТОДУ СТОХАСТИЧНИХ КВАЗІГРАДІЄНТІВ ДО ЗАД А Ч СТОХАСТИЧНОГО ПРОГРАМУВАННЯ Найпростіша задача керування запасами Нехай є деякий склад місткістю а, в якому потрібно створити запас деякою однорідного продукту. Нехай попит со на продукт випадковий з функцією розподілу Я(г) = Р{ш < Позначимо запла- нований обсяг запасу через х одиниць. Розглянемо функцію витрат (а(х--со), якщо х > со - витрати на зберігання', Дх,и>) = ( [Р(со х), якщо х < со - штрафи внаслідок дефіциту, (8.4.1) де а - питомі витрати на зберігання одиниці запасів; р - питомий штраф внаслідок дефіциту. Необхідно знайти такий рівень запасів х, при якому: Г(х) = М {/(х,со)} = а /(х- г)с///(х) + Р |(г - х)<Я/(г) —> тіп . (8.4.2) о х Оскільки функція /(х,со) - недиференційовна при х = со, то в загальному випадку Г(х) - теж недиференційовна Очевидно, Р(х) = М тах{сс(х-со), Р(со-х)}, (8.4.3) тобто маємо окремий випадок мінімаксної задачі. 576
Дослідження операцій Знаходимо сгохастичний квазіградієнт: л а, якщо х><аг; (~р, якщо с\<со5, (8 4.4) і рекурентний процес визначення оптимальною обсягу запасів л .матеме такий вигляд: к,.+) = Ч - РА аб° х5+і = МХ* “ Р.А») (8 4.5) Ігрова стохастична задача Задачі цього типу виникають при виборі оптимальних рішень в умовах невизначеності та ризику, коли є перший гравець - ОПР га другий грав&ць - протидіюче середовище Припустимо, що усі фактори можна розбити на три групи: - фактори, що контролюються першим гравцем; - фактори, що контролюються другим гравцем; - то - стан природи (випадкові фактори). Нехай перший гравець приймає (вибирає) рішення х із допустимої множини рішень Кх, друпій іравець приймає рішення у, у є А , де - допустима множина рішень другого гравця, со - елементарна подія деякої о імовірнісного простору О . Припустимо, що друїий іравець робить свій вибір після першою, йому відоме рішення першого гравця х та стан природи со Позна- чимо через /(х,у,ш) суму, яку перший іравець сплачує друюму, якщо природа перебуває в стані со. Тоді очікуваний програш першого гравця дорівнює: /•'(х) = Л/Дтах /(х,у,ст)}, (8.4.6) V і потрібно знайти такий х є Л,., для якого: Р(\) = М (тах /(х,у,<у)} —> тіп • (8.4.7) 16я, ' Отже, приходимо до міні.максної задачі, яка є задачею стохастичною ирої рамування Її складність полягає в тому, що тільки у виняткових випадках можна знайти / (х) в аналітичному вигляді, і, крім гою, Р(х) не 25і 577
Зайченко Ю.П. буде неперервно диференційовною навіть при гладкій функції Дх,у,й>). Нехай множина Я, опукла і замкнена, і при кожних х та со існує такий у(х,су),що тах /\х,у.со) = /(х,у(х,а>),со), гє/?, причому /(х,у(х,®),<у) - неперервна та опукла функція в області Кх, а Гд(х,у.су) - її узагальнений градієні по х при фіксованих у іа со. Застосуємо для розв’язання задачі (8.4.7) метод СКІ, в якому = Т.г(х4.,у(х4. - стохастичний квазіградієнт, де со4., 5 = 0,1,... - результати незалежних спостережень за станом природи со Щоб переконатися в цьому, покажемо, що для довільної точки х є Яг виконується нерівність Нх) - Я(х4) > М{Г г (х4., у(х4.,су,),со4. )|г (х - х4.), (8.4.8) іншими словами, що М(Е,4 | х4.} = Г А (х4.). Очевидно, Дх,у(х,си,),су>)-Дх,,у(х,,сод))> Дх,у(х,,сич)сид -Дх ,у(х ,су,)) Внаслідок зроблених припущень щодо функції /\х,у,ю) маємо- /'(х,у(х4,сої),со4.)-/(х4,у(х5,л>$),го()>Гт7'(х4,у(х4,л>5),су4)(х-х4.) (8.4.9) і тому: ,7 Дх,у(х,с»Д сц) - Дх„у(хі ,суч ),«,)> Д (х„у(х4,су, ),а>д)(х-х). (8.4 10) Взявши операцію умовного математичного сподівання від обох частин (8.4.10) при фіксованих х та х4., одержимо (8 4.8). 578
Дослідження операцій Стохастична задача про найкраще наближення (стохастичний аналог задачі Чебишова) Задачу вигляду: п мінімізувати /’(х,у,си)= Ду.й>)л- -6(у.а>), (8.4.11) 7=1 де у є У , К = {1,2,, називають стохастичним аналогом задачі Чебишова [18]. У цьому випадку вектор = {£н> 1» яки” визначається як = Г, (х5, у(х, ,ші),со,), має вигляд: = а^(у(хі.,со,},со!і)зі^Хаі^х^(оч^ю^хр ).<«,.)]. (8.4.12) ( >=’ Двохетапна задача стохастичного програмування У розділі 8.2 розглянуто двохетапну задачу стохастичного програмування: мінімізувати Г(х) = тіпЛ/й{сг(г»)х^цг(й>)у(х,л?)} (8.4 13) V, 1 при обмеженнях: А(«?)х + В(л>)у = В(й>), (8.4.14) х є Я(х), у є/?(у). (8.4.15) Функція Р(х) у загальному випадку не має неперервних похідних У найбільш загальному вигляді попередній план х та план-компенсація у замість (8.4.14) мають при всіх со задовольняти обмеження: (х,у,су) < 0, і = 1,»і (8.4 16) Далі, нехай виграти, пов’язані з реалізацією плану х та його корекцією у в стані со, дорівнюють /’(х,у,л>). 25* 579
ІСПІЧЄНКІ) Ю.П Позначимо через у(х. ш) план-компенсацію, що мінімізує /(х,у,єу) за умов (8.4.16), (8 4.15) га фіксованих х , <>. Годі очікувані виграти на реалізацію плану х та його корекцію у (х <о) дорівнюють Р(*) = М„{/(х,у,а>)}, (8.4 17) і потрібно знайти такий х , для якого Р(х) —> тіп , за умов (8.4.15), (8.4.16) Припустимо, що #,(х,у,сл) і Дх,у,су) при кожному со опуклі вниз при всіх со , га існує сідлова точка (х(су),у(<у)) функції Лагранжа: <р(х,у,«) = /(х,у,со) + ^Я,§,(х,у,<у) (84 18) і=) при уєЯ(у) та к = [Л|,Л2,...,Лга]>0 Нехай Г,(х, у, су) , §п(х,у,су) - узаіальнені ірадієнти функцій /(х,у,со), £,(х,у,су) по х при фіксованому со. Тоді для розв’язання задачі (8.4.13) методом СКГ за умов (8.4 15), (8.4.16) на опуклій та замкненій множині /?(х) потрібно покласти: = Гг (*5<у(»4- -<4, )>С'Р) * Е А(*л«Р) 8, х (*л • у(*4- • Ю,). <ул.) (8 4 19) і-і *ї+і = х4. -р.Л.,, (8.4.20) або х,.^ =л\(х4.-р4^.) (8.4.21) Можна показати [17], що для функції Р(х) і вектора , який задається (8.4.19), Л/(£,(хл)) = Г с(хл ), тобто Л/(^5|хл ) - субградієнт функції Р(х.,). Розглянемо двохетапну задачу стохастичного програмування з лінійними обмеженнями та функцією витрат: Р(х) = сгх + Ма',цг(<у)у(х,су)} тіп , (8.4.22) X 580
Дослідження операцій при обмеженнях: А(л>)х + В(ю)у = О( ю), (8.4.23) х > 0, ¥ > 0. (8.4.24) Вектор ¥(х,а>) мінімізує ЧГ(<у)¥, (8.4.25) при обмеженнях: В(&>)¥ = В(гу) А(л>)х, (8 4.26) тобто є розв’язком задачі ЛП (8.4.25), (8.4.26). Позначимо через Л(х,лі) = Ц^.т.йі), Л2(х. а>)...., Лш(х,л>)1 - двоїсті змінні, які відповідають у(х,го) У цьому випадку вектор в методі СКГ обчислюється так: після з -ї ітерації одержуємо х, , спостерігаємо ш, (наприклад, моделюючи деякі сценарії на ЕОМ), знаходимо А(хЛ,о>,) і обчислюємо =С Аг(<у4.)Л(ха.,ші.) , де Аг(а>) - транспонована матриця до А(л>х ). Запишемо задачу, двоїсту до (8 4 25), (8.4.26) максимізувати М(1) {Л.т(О(со) А(аі)х), (8.4.27) л при обмеженні: ВГЛ<Ч Оскільки тахЛГ(О(йі) А(єл)х = пііпчГ(й))у(х.бу) , то двохетапній А V задачі (8 4.22)-(8.4.24) відповідає така еквівалентна задача: мінімізувати Г(х) = Мш{стх^ Лг(х,го)(В(<«)-А(ґу)Х)} , (8.4.28) а оскільки Гї(х, ) = С-Аг(<оч)Л(хї,лії),то = С-Аг(л/х)Л(хї,йіх). Відповідна процедура для пошуку оптимального розв’язку записується так: хх і = х, - для задачі без обмежень; хї+1 = (х, рх£х) - для задачі з обмеженнями. 252 581
Зайченко Ю.П. Екстремальні задачі математичної статистики У математичній статистиці досить поширеною є задача оцінки параметрів розподілу випадкових величин та процесів, яка формулюється так. Є випадкова величина (або вектор) ч, розподіл якої відомий з іочністю до параметрів х=[х. ,л,....хч] , та відомі реалізації Пі »П2 • випадкової величини ч при х = х . Необхідно за цими спостереженнями визначити х *. Традиційно намагаються відшукати таку оцінку х =/(71,73,—,7Х) » яка була б незміщеною та ефективною Покажемо, що численні задачі оцінки х зводяться до розв’язання відповідних задач стохастичного проірамування. Оцінка середнього значення. Нехай ч ” випадковий векіор з невідомим середнім М а ч і - Пг > ~ незалежні спостереження вектора ч . за якими потрібно оцінити М п . Розглянемо функцію Т(х)=Л/||ч хЦ?- Мінімум цієї функції досягається при х* = Л/ п Крім того, для =-2(і]І+. ~х5) маємо М |х, )=ГЛ (хг) . Тоді зпдно із загальним алгоритмом СКГ (8.3.2), (8.3.3), одержимо таку процедуру [17] х.и=7ГЛхї + 2Р((П,,1-х.,)) , -ї=0,1,... (8.4.29) Якщо /?(х)=£л, а р =------!—, то процедура (8.4.29) матиме ' 2(?г!) вигляд: Ч» ’ (8.4.30) тобто дістанемо класичну формулу оцінки середнього. Оцінка моментів. Нехай у постановці задачі попереднього розділу (оцінка середнього) потрібно оцінити моменти Мц1, Л/|ч|', Л/(ч -М ї\)'. Припустимо, що ці моменти належать до деякої множини Е(п). 582
Дослідження операцій Аналогічно до попередньої задачі шукані моменти є точками Мінімуму функцій: А(х) = Л/||Л'-х||\ (8.4.31) А?(х) = м[||і]|'-х||?, Г, (х)=Л/ і])' -х ||}2 відповідно. Застосувавши стохастичний квазіградієнтний метод для перших двох випадків у процедурі (8.4.30), покладемо =-2(ц'+1-х,), =-201)^, — х,) відповідно. Тоді приходимо до процедури- Х^.=Хі- — (<>-*,)• (84.32) 5 1 При цьому для відповідної функції Г(х) маємо: ( Л/(^Л|хА)=Г,(хч). Для задачі мінімізації функції: /?(х) = Л/^||( і]-Л/ і])/-х| | в процедурі (8.3.2) або (8.3.3) за вектор £, , можна вибрати такий. £,=-2 І * 1 Тоді відповідна рекурентна процедура пошуку центрального моменту / -го порядку матиме вигляд: (8.4.33) ОЦІНКИ / *=і (8.4.34) Можна легко показати, що при цьому Л/(^( |хД = ГДхд) Справді, внаслідок незалежності т)А+1 та т)4+і+л > £ = 1 >2, ..,/,від х5 маємо- Л/й.|х.)=-2 м П(п =-2 А/ П *)-х, І * сі =-2М( |](і]Мті)-х, І (8.4.35) =-2М^ (ц-М гр' х, }=Г, (х ). 25** 583
іайченко Ю.П. Розділ 9 ПРИЙНЯТТЯ РІШЕНЬ ПРИ НЕЧІТКІЙ ІНФОРМАЦІЇ У задачах організаційного керування часто-густо трапляються ситуації, в яких вихідні умови задачі нечітко визначені Такі ситуації відображають недостатню інформованість особи, що приймає рішен- ня (ОПР). Використовувана інформація може бути суб’єктивною, а її від- ображення в мові людей, як правило, містить багато невизначеностей на кшталт «багато», «мало», «приблизно», які не мають аналогів у мові математики. Тому опис цієї інформації засобами традиційної математики сильно загрубляє математичну модель. Таким чином, для подальшого застосування математичних методів аналізу та дослі- дження дедалі складніших систем, з’явилася погреба у створенні но- вого математичного апарату, який дав би змогу формально описува- ти нечіткі поняття, якими користується людина, описуючи свої ба- жання, цілі та уявлення про систему. Таким апаратом стала теорія нечітких множин, створена Л. Заде, перша фундаментальна праця якого була опублікована ще в 1965 р. [65]. Протягом останніх сорока років цей новий напрямок інтенсивно розвивався, з’явилися сотні праць, присвячених теоретичним та при- кладним аспектам теорії нечітких множин. Яскравим свідченням де- далі зростаючого інтересу до цього напрямку в теорії прийняття рі- шень є, зокрема, організація в 1978 р. спеціального міжнародного журналу «Риггу 8е1к апб Зузіеть», присвяченого проблемам теорії нечітких множин. Одним з найактуальніших напрямків нової теорії є проблема прийняття рішень при нечітких умовах та критеріях, що привела до появи нового напрямку в математичному проламуванні - нечіткого математичного програмування (НМП). У цьому розділі викладено основні ідеї та методи нечіткого математичного програ- мування. 584
Дослідження операцій 9.1. НЕЧІТКІ МНОЖИНИ ТА ОПЕРАЦІЇ НАД НИМИ Основні поняття та означення Означення 9.1. Нечіткою множиною А, що задана на універсаль- ній множині X називається сукупність пар (х,рА(х)), де х є X, а рА — функція г->[0;1]. яка має назву функції належності множини А Значення рДх) для конкретного л називається ступенем належно- сті цього елемента до нечіткої:множини А (рис. 9.1.а). Звичайні множини утворюють підклас нечітких множин. Справді, функцією належності звичайної множини В с X є її характеристична функція рв(х) (рис. 9.1.6): {1, ЯКЩО .V є В, 0,якщо хіВ Означення 9.2. Нечітка .множина 0, визначена на X, назива- ється порожньою, якщо її функція належності дорівнює 0 на всій множині X, тобто р&(х) = 0, Ух&Х . Означення 9.3. Універсальна множина X описується функцією належності вигляду (х)=|,УхєХ Означення 9.4. Носієм нечіткої множини А з функцією належно- сті/л А(х) називається множина вигляду кирр А = {.V : рА(х) > 0,.г є Х\. 253 585
іайченко Ю.11. Нечітка множина А називається нормальною, якіцо виконується умова. хир р 4 (л) = 1, у протилежному разі вона називається субнормальною Нехай А та В - нечіткі множини на X, /у^(л) та рд(л) - їхні функції належності відповідно. Кажуть, що А включає в себе В (тобто В с А ), якщо для будь-якого хєХ виконується нерівність: (у)<^/ (і) (рис. 9.2). Якщо В с А , то ьирр В с зирр А. Множини А, В еквівалентні (А - В), якщо //й(л)= р4(л) ,УхєХ. Приклад 9.1. Розглянемо нечіткі множини: А = |.т величина х близька до 1}, В = {у : величина х дуже близька до 1}. Тоді в с а і функції належності цих множин мають задовольня- ти умову: рв(х)< р^х^МхєХ. Операції над нечіткими множинами Означення 9.5. Об’єднанням нечітких множин А та В в X назива- ється нечітка множина С = А[}В з функцією належності вигляду (рис. 9.3): ВсМ = тах{^ (х),^іе(х')} • (9-1-1) Означення 9.6. Сильним об'єднанням нечітких множин А та В в X називається нечітка множина С = А[дВ з функцією належності’. Ал (*), якщо рА (х) + рв (х) < 1, \,якщо рА(х) + рв(х)>\. 586
Дослідження операцій Означення 9.7. Перетином нечітких множин А та В в X називаєть- ся нечітка (множина С = Л П В з функцією належності вигляду (рис. 9.4): //<(*) = ^яПв(х)=гпіп^(х);^в(-ї)>' <91’2) Якщо {Л,} - скінченна або нескінченна сім’я нечітких множин з функціями належності (х, у), де у є ¥ - параметр сім’ї, то пере- тин С = ПЛ, є нечіткою множиною з функцією належності вигляду: г //г(г)= іпГ (х,у), хеХ . Означення 9.8. Сильний перетин нечітких множин А та В в X визна- чається як нечітка множина С = Л П В з функцією належності вигляду: Дс(х)= =нАх>)*Дв^ ’ л е х • (9-13) Означення 9.10. Різницею нечітких множин А та В в X назива- ється нечітка множина А\В з функцією належності вигляду. \РаОЇ~ РвО\якіцо рА(х)> рв(х)>б, <9 14'1 Р А вО) ] X • ) (О.в протилежному разі. Означення 9.11 Декартовим добутком А; * А2 *...х А„ нечітких множин Л, в Х,,і-Ї,п називається нечітка множина в декартово- му добутку X, х Х2 х. х Хп з функцією належності вигляду РлО) = тіп{/ц(л-, ),//л?(л2), ...рА (х,,)}. (9 1.5) 25*** 587
Зайченко Ю.ІІ. Означення 9.12 Опуклою комбінацією нечітких множин А,, А?.А„ на X називається нечітка множина А з функцією на- лежності вигляду: //,((*) = ЕАа('), де А = 1 (9 16) Означення 9 13 Операції концентрування (СОМ) та розтягнення (ОН) нечіткої множини А визначаютьсятак: СОМА = А2,ОІЬА = А' 2. Або в загальному випадку СОМА = Ак,ОІЬА = А],к, Де А > 0, А -ціле р^ (л) = (рА(х))к. Множини рівня та декомпозиції нечітких множин Означення 9 14. Множиною рівня а нечіткої множини А на X називається множина, складена з елементів х &Х таких, ступінь належності яких до множини А не мениі а , тобто, якщо Ао - множина рівня а нечіткої множини А, то Аа ={х: рА(х)>а] . (9.1.7) Справедливі такі співвідношення [18; 48]: (/>ив)с=Лаи^;(лП5)а = 4П5« (9.1.8) Якщо для операції об’єднання та перетину використовуються відповідні сильні операції, то (4Ха(лияа); (4>)оє(Аіі^)- <9,9) В деяких випадках доцільно користуватися розкладенням нечіткої множини р за її множинами рівня, а саме представленням нечіткої множини у вигляді: А=С)аАа, (9.1.10) а--0 588
Дослідження операцій це об’єднання нечітких множин береться згідно до означення (9.1.10) по всіх а від 0 до 1. Приклад 9.2. Нехай х = п.2.. ,6|, а функцію належності нечіткої множини а в х задано табл. 9.1. Таблиця 9 1 X 0 1 2 3 4 5 6 0 0,1 0,3 0,5 0,7 0,9 ’ 1 Тоді на множині а можна записати такі множини рівня: 40.) ^1.2,3,4.5,6} ; Л0.3 = {2,3,4,5,б} ; Л05 = {з,4,5,б} ; Л0?={4,5,б} ; л0,9 = {5,6}; д о = {б}. 1 нечітку множину а представити у вигляді: А = 0,1{1,2,3,4,5,б}і)0,3{2,3,4,5,б}О0,5{3.4,5,б}і)0,7{4,5,б}іІ0,9{5,б}іІ 1,0{б}. 9.2. НЕЧІТКІ ВІДНОШЕННЯ. ОПЕРАЦІЇ НАД НИМИ Перш ніж ввести поняття нечіткого відношення, розглянемо зви- чайні відношення та їх властивості. Відношенням В на множині X називається деяка підмножина декартового добутку X х X. Згідно з цим означенням, задати відношення В на множині У означає вказати всі пари (х,у), які зв’язані відношенням В. Для позначання того, що елементи х є X зв’язані відношенням, будемо користуватися такими двома еквівалентними формами запису: хВу або (х,у)єВ Якщо множина X, на якій задане відношення В, скінченна, то відношення задається в двох формах: 1) у матричній. Л=ІКІІ 589
Зайченко Ю.П. \,якщо (х,,Х;) є Я; О, у противному разі. 2) у графовій (рис. 9.5). Нехай на множині X * X задано два від- ношення А та В , множина А визначається матрицею Л=||«/;|| , і = 1,т , / = 1,л ,а В - матрицею Ц^Ц. Тоді розглянемо відношення С = А Ь В , яке є об’єднанням двох відношень: Рис. 9.5 с„ =тгЬф,,,ЬИ\ Якщо О є перетином відношень А та В ( й = А П В), то 4,-=тіп{а.,^}. Означення 9.15. Відношення В включає в себе відношення А, як- що для відповідних множин Ас X хХ та ВсХ хХ виконується умова Ас В. Означення 9.16. Якщо між х та у існує відношення В, то обер- неним до нього називається таке відношення Я 1, що хВ~'у існує тоді і тільки тоді, коли уКх. Якщо при цьому А =||«,/||, А-1 =||«„| матриці цих відношень, то елементи цих матриць зв’язані співвідно- шенням: аІІ=а}і,\/іД=\,п. Означення 9.17. Добуток (композиція) відношень А В на декар- товому добутку X хХ визначається так: С = А- В тоді і тільки тоді, коли існує такий з є X, для якого виконані одночасно відношення хАг та гВу. При цьому елементи матриць відношень зв’язані спів- відношенням: сг/ =тахтіп{аЛД.} Вкажемо основні властивості відношень: 590
Дослідження операцій 1. Відношення Я рефлексивне, якщо (л,л)єЯ або хКх для всіх х є X . Приклад рефлексивного відношення на множині дійсних чи- сел - відношення > («більше-дорівнює»). 2. Відношення К на X хХ антнрефлексгівне, якщо із того, що хКу випливає \ * у. У матриці рефлексивного відношення всі діаго- нальні елементи дорівнюють 1, а антирефлексивного - 0. 3. Відношення Я симетричне, якщо із того, що хКу випливає уКх. Матриця симетричного відношення - симетрична. Відношення називається антисиметричним, якщо з того, що хКу та уКх, випли- ває х = у . 4. Для транзитивного відношення виконується така умо- ва: К К с К. Нечіткі відношення Введемо поняття нечіткого відношення і розглянемо його власти- вості [37]. Означення 9.18. Нечітким відношенням 8 на множині X назива- ється нечітка підмножина декартового добутку X х X, яка характе- ризується такою функцією належності ря(х,у), іцоХ*Х—->[0,1]. Причому рк(х,у) розглядається як суб'єктивна міра виконання відно- шення хКу. Приклад 93. Нехай задано: а) чітке відношення щ>,х > у), де х є[о.і]; б) нечітке відношення К(»,х » у); На рис. 9.6.а наведено пари (%,>) з проміжку [0,і] зв’язані відно- шенням к, тобто такі, що х > у . Вони утворюють множину точок заштрихованої області, які відокремлені чіткою межею - діагонал- лю квадрата - від інших точок. Будуючи нечітке відношення К:х»у на одиничному квадраті, переконуємося, що існують пари (х,у)такі, які можна напевно відне- 591
Заііченко Ю.Н. Рис. 9.6 сти до множини я (наприклад, точку т = о.9,г = о.оі), а також які на- певно не належать до к (наприклад, л = о.оі..і=о9). Крім того є множина пар (х,п, про належність яких до множини к можна говорити лише наближено з певного суб’єктивністю (на- приклад, точка х = о.8,.і' = о.б). Тому нечітка множина /? характеризу- ється відсутністю чіткої межі від доповненої множини /?, і ступінь належності д«(х,т) пари (х,г) варто характеризувати щільністю штриховки (рис. 9.6.6). Можна розглянути деякі перетини відношення /? при фіксованому х„ . Відповідну сім’ю функцій //„(л„,г) наведено на рис. 9.6.в. Якщо відношення к на х скінчене, то його функція належності д,(х. і) задається у вигляді квадратної матриці ||л„||./,у = І,» з елементами г, є[0,1]. Якщо =а , то це означає, що ступінь виконання відношен- ня >,/?», дорівнює а . 592
Дослідження операцій Носієм нечіткого відношення В на множині X називається під- множина декартового добутку X х X , яка визначається так: БиррЛ = !(Л, 1): рк(х,у) > О,хє X, г є Г} . Операції над нечіткими відношеннями Нехай на множині X х X задано два нечітких відношення А та В з функціями належності д ,(.т,у).рв(х,і) Тоді множина С=ЛІ)Вє об’єднанням нечітких відношень А та В на множині X, якщо її фун- кція належності визначається виразом: рс(х, V) = тах{дл(х, у),да(л. у)}. Аналогічно множина О = А ГІВ є перетином нечітких множин А та В, якщо Ао(-М) = тіп{рл(х,.у),рв(х, у)} Можна ввести також операції сильного об’єднання та сильного перетину, аналогічні операціям над нечіткими множинами (див. означення 9.6, 9.8). Нечітке відношення В включає в себе нечітке відношення А (Ас В) , якщо для них виконується співвідношення рА(х,у)< <рИ(х,у)Ух,уеХ. Якщо В -нечітке відношення з функцією належності да(х,у), то відношення В , що характеризується функцією належності р~^(х,у) = = 1 - рк(х,у),\/х,у є X, називається доповненням В на множині X. Обернене до В відношення на X визначається так: хЛ-Іу<--->уВх, при цьому функції належності зв’язані між собою рівністю , (х,у) = рк(у,х). Властивості нечітких відношень 1 Рефлексивність. Нечітке відношення називається рефлексив- ним на X, якщо виконується умова рк(х,х) = [,Х/х є X (приклад реф- лексивних відношень: приблизно рівні, близькі). 2. Антирефлексивність. Нечітке відношення В на X антирефлексив- не, якщо для усіх х є X рв(х,х) = 0 (Наприклад В - набагато більше). 593
іаїіченко Ю.П. 3. Симетричність. Нечітке відношення В на X симетричне, як- що для всіх л-, геА' рк(х, »•) = рк( у,.г). Відношення В ангисиметри- чне, якщо з того, що рк(х,у) >0, випливає рк( і ,х) - 0 , Важливе значення в теорії нечітких множин мас композиція (або добуток) нечітких відношень. На відміну від звичайних (чітких) від- ношень, композицію (добуток) нечітких відношень можна визначити різними способами. Означення 9 19 Максимінна композиція (добуток) нечітких від- ношень А та В на X характеризується функцією належності ви- гляду: Юв( М’) = 8иртіп{р>|(л-,2),дв(2,у)} (9.2.1) ;е\ Означення 9 20 Мінімаксна композиція нечітких відношень А та В на X (вона позначається А°В) визначається функцією належнос- ті вигляду. А-кв(-М) = тіптах{дл(л-,’),дв(7, г)}. (9.2.2) гєЛ' Означення 9.21. Максимуіьтиплікаїпивна композиція нечітких відношень А та В на X - нечітке відношення С = А*В з функцією належності вигляду: Х^.в(л>г) = 8ир(р|(л,’) Ав(з,у)}. (9.2.3) зє V Приклад. Нехай задано два нечітких відношення а та В на множині х, яка складається з двох елементів х де матриці нечітких відношень такі: 2і Д’і Уі х,Г0 2 0 6 г,Г0.5 0.7 д.(х,г)= //„(;, у) = х,[0.5 0 8 г2 0 3 1 Тоді композиція (добуток) нечітких відношень визначається іак а) максимінна к;=ав: ^0.3 0.6' , ™ [О 5 0.8 б) мінімаксна /?,’ = а<в: 594
Дослідження операцій 0.5 0.7 II. „(-Ї, г) = ’ 48 [0.5 0.7 в) максимультишіікативна к: = а*в : Го. 18 0.6' Д.гвСм)- |^о.25 0.8 Нечітке відношення /? на множині X називається транзитивним, якщо К • К с К. З цього випливає, що властивість транзитивності не- чіткого відношення залежить від способу задання композиції нечіт- ких відношень. 9.3. ЗАДА 41 НЕЧІТКОГО МА ТЕМА ТИЧНОГО ПРОГРАМУВАННЯ Класифікація та загальна характеристика У багатьох випадках задачу прийняття рішень у загальному ви- гляді можна описати множиною допустимих виборів (альтернатив) і заданим не цій множині відношенням рівноваги, які відображають інтереси особи, яка приймає рішення. Звичайно, це відношення буває бінарним, тобто дає змогу порів- нювати попарно лише дві альтернативи. У цьому разі задача прийняття рішень полягає у виборі допусти- мої альтернативи, яка є кращою серед усіх альтернатив для заданого відношення переваги. Відношення переваги на множині альтернатив можна описати двома способами: 1) за допомогою функції корисності (иііііїу Гипсйоп); 2) у вигляді бінарного відношення переваги. Функція корисності зазвичай має вигляд відображення множини альтернатив на числову вісь. Не всяке відношення переваги і не на всякій множині альтерна- тив можна описати функцією корисності. 595
Зайченко Ю.П. В окремих випадках це відношення вдається описати за допомо- гою деякого набору функцій корисності, і тоді відповідні задачі при- йняття рішень є багатокритеріальними. Задачі прийняття рішень, в яких використовуються функції кори- сності, є задачами математичного програмування. Оптимальним рі- шенням у таких задачах є вибір допустимої альтернативи, на якій функція корисності набуває максимального значення. Нечіткість у постановці задачі математичного програмування може міститися як при описі множин альтернатив, так і при описі функцій корисності. Задачі, в яких нечітко описано множину альтернатив та (або) фу- нкції корисності, називають задачами нечіткого математичного про- грамування [20, 26, 37]. Аналізуючи задачі НМП, можна виділити два різних підходи до їх розв’язання. При одному з них, вперше запропонованому Р. Белманом та А. Заде [65], задача НМП формулюється як задача виконання нечіткої мети при нечітких обмеженнях, при цьому розв’язок задається перетином нечітких множин мети та обмежень. При другому підході припускається, що рішення повинні вибира- тися подібно до того, як це робиться в задачах багатокритеріальної оптимізації. Розглядаються лише такі рішення (альтернативи), які не домінуються строго жодними іншими альтернативами, тобто виби- раються ефективні альтернативи в розумінні Парето. Такі рішення використовують апарат нечітких відношень переваї и. Задача досягнення нечітко визначеної мети (підхід Белмана-Заде) Задача досягнення нечітко визначеної мети, сформульована Р.Белманом-Л.Заде, базується на припущенні, що мета прийнязтя рішень та множина альтернатив розглядаються як рівноправні нечіт- кі підмножини деякої універсальної множини альтернатив. Це при- пущення дає змогу знайти розв’язок задачі досить просто [65]. Нехай X- універсальна множина альтернатив, тобто універсальна сукупність можливих виборів ОПР. Нечіткою метою в X є нечітка підмножина X, яку позначимо С. 596
Дослідження операцій Нечітка мета описується функцією належності //0- х---»[о,і]. Приклад 9.5. Нехай X— числова вісь. Тоді нечіткою метою ОПР може бути, наприклад, нечітка множина вигляду: х - набагато бі- льше за 10. Припускається, що такі нечіткі множини досить точно опису- ються функціями корисності. Чим більше ступінь належності аль- тернативи х нечіткій .множині б, тобто чим більше значення д0(х), тим більша ступінь досягнення цієї мети при виборі альтернативи х за розв’язок. Нечіткі обмеження також описуються нечіткими під- множинами. Так, у вищенаведеному прикладі нечітке обмеження може бути, наприклад, таким: х має приблизно дорівнювати 31, або х має бу- ти набагато більшим за 25. Визначимо тепер, що розуміють під розв’язком задачі досягнен- ня нечіткої мети. Розв’язати цю задачу означає досягнути мети та задовольнити обмеження, причому в даній постановці потрібно го- ворити не просто про досягнення мети, а про її досягнення з певним ступенем, з врахуванням ступеня виконання обмежень. У підході Белмана-Заде ці фактори враховуються так. Нехай деяка альтернатива х забезпечує досягнення мети із ступе- нем дп(х)та задовольняє обмеження С із ступенем дс(х). Тоді вва- жають, що ступінь належності згаданої альтернативи розв’язку задачі дорівнює мінімуму серед цих величин. Таким чином, нечітким розв’язком задачі досягнення нечіткої мети є перетин нечітких мно- жин мети та обмежень, тобто функція належності рішень до(х) дорів- нює' дй(х)^ тіп{дс(х),//с(х)| (9.3.1) За наявності декількох цілей та обмежень нечітке рішення опи- сується функцією належності: //„(д) = тіп(дс (х),д^(х). (д).Дс (д ),дС;(д),.. ,дс;(х)} Якщо різні цілі та обмеження розрізняються за ступенем ваго- мості і задано відповідні коефіцієнти відносної вагомості ці- лей 2,(х) та обмежень г,, го /іо(х) задається виразом: д„(х) = тіп{Л|ДОі(х), ,/„д0 (х).и;дс (а),. ,и„,дс (х)} (9.3.2) 597
Зайченко ЮII. Приклад 9.6. Нехай задано універсальну множину х = {і,2,_ ,ю; на якій задано нечітку мету о (< близьке до 5), нечітке обмеження с, ( л близьке до 4) та є, ( і близьке до 6). Нехай їхні функції нале- жності задано в табл. 9.2. Таблиця 9.2 X 1 2 3 4 5 6 7 8 9 10 Л;(Л> 0 0 1 04 0.8 1 0 0.7 0.4 0.2 0.1 0 0.3 0.6 0.7 1 09 0.8 0.5 0.3 0.2 0 А,.<0 0.2 0.4 0.6 0.7 0.9 1 0.8 0.6 0.4 0.2 Тоді для рішення о одержимо функцію належності д„(х), а рішен- ня о інтерпретується як: л має бути близьким до 5 (для табл. 9.3). Таблиця 9.3 X 1 2 3 4 5 6 7 8 9 10 А„(.О 0 0 1 04 0.7 09 0.7 0.4 02 0.1 0 Це рішення можна інтерпретувати як нечітко сформульовану ін- струкцію. При такому представленні лишається невизначеність, яку ж альтернативу слід вибрати, тобто потрібно вирішити цю невиз- наченість. Існують різні способи вирішення цієї невизначеності. Найпоширеніший з них, запропонований Л.Заде, полягає у виборі альтернативи, що має максимальний ступінь належності до нечіткого рішення, тобто альтернатива визначається із умови: тах = тахтіп{д0 (л-),//с (л){ . X Такі альтернативи називають максимізуючими. 598
Дослідження операцій Класифікація задач нечіткого математичного програмування Задача математичного програмування у загальному вигляді фор- мулюється так: /(х)--->тах , при обмеженнях: £,(') < 0,і - 1,т, де /(х)— цільова функція, о, (х) обмеження. При моделюванні реальних задач у такій формі нечіткість ви- явиться у формі нечіткого опису функцій /(х), &,(х)та параметрів, від яких вони залежать, і самої множини X. Подібний опис ситуації може відображати, наприклад, недостатність інформації про цю си- туацію або служити формою наближеного опису ситуації, достат- ньою для розв’язання поставленої задачі. Форми нечіткого опису бувають різними. Відповідно існують рі- зні класи задач нечіткого математичного проі-рамування. Наведемо деякі типові класи задач НМП [20]. Задача 1. Максимізація заданої звичайної функції /(х) на зада- ній нечіткій множині допустимих альтернатив дс(х), де Дх) > 0. Для розв’язання цієї задачі пропонується провести нормування функції Дх) таким чином: /(*) = /(*) 5Пр/(х) де Дх) розглядається як функція належності нечіткої множини мети ОПР. Значення цієї функції інтерпретується як ступінь досягнення мети при виборі альтернативи х є X . Це дає змогу застосувати до розв’язання вказаної задачі підхід Белмана-Заде. Потрібно знайти таку альтернативу х0, для якої досягається: тахтіп(Дх),дс(х)}. (9.3.3). Неважко переконатися, що задачу відшукання цієї альтернативи можна сформулювати так: 599
іайченко Ю.П. при обмеженнях. 2---> тах , /'є (л)>Л: 7(\)>Я (9 З 4) Задача 2. Нечіткий варіант стандартної задачі математичного програмування. Нехай задано таку задачу НМП: тах /(л),#Дл) < 0,х є X (9 3 5) Нечіткий варіант цієї задачі утворюється якщо 1) пом’якшити обмеження, тобто допустити можливість їх пору- шення з певним ступенем; 2) замість максимізації функції /(л) намагатися досягти деякого заданого значення гоцієї функції, причому різним відхиленням /(л ) від зпслід приписати різні ступені допустимості Цю задачу можна записати так: /(л)> <0, г є X ’ (9 3.6) де знак - означає нечітке виконання відповідних нерівностей. Один з можливих підходів формалізації подібних поіано сфор- мульованих задач полягає у такому. Нехай ?0- задана величина ці- льової функції / (\), досягнення якої вважається достатнім для виконан- ня мети прийняття рішень, і нехай ОПР задає два порої и а і Ь такі, що нерівності /(х)<з0 -л,#,(х)>6, означають сильне порушення відпо- відних нерівностей /(х)>зо, £(л-)<0- Тоді можна ввести такі нечіткі множини ц. ф. та обмежень- г0,яки/о /(л)<г0 а; рс(х) = І р(хлі),якщо Х| -а< /(г)<20; 1, якщо /’(а ) > г0; [0, якщо ^(х)^^, Не, (-г) = ^ »'і (Л к якщо 0 < #Д л) < Л,; [1,як«/о #Дх) < 0; (9-3 7) (9.3.8) 600
Досчідження операцій де рс(х,а),\’і(х,Ь,) - деякі функції X----->{0,і], що описують ступінь виконання відповідних нерівностей з погляду ОПР. У підсумку вихі- дна задача буде сформульована у формі задачі досягнення нечіткої мети і до неї можна застосувати підхід Бел мана- Заде. Задача 3. Нечітко описана цільова функція, тобто задане відо- браження ----->[0;1], де X- універсальна множина альтернатив, Л(1)-числова вісь. Тут функція /у (х0,г) при кожному фіксованому х0 - це нечіткий опис оцінки результату вибору альтернативи, тобто нечітка оцінка альтернативи х0 . Крім того, задано нечітку множину допустимих альтернатив з функцією належності цс(х}:Х----------->[0;1]. До такої по- становки зводиться досить широкий клас задач НМП. Це найбільш загальна відома постановка задачі НМП. Задача 4. Задано звичайну цільову функцію /(х) та систему об- межень £,(х) < Ь,іі = \,т , причому параметри в описі функцій #,(х) задано у формі нечітких множин. Наприклад, для лінійної функції &,(х) мають вигляд: £,(*) = Хаихі = 7-і де параметри а Ь, є елементами нечітких множин з функціями на- лежності Рц(а(/),г,(6,). Названий клас задач можна звести до задач типу 1 або 3. Задача 5. Функції /(х), £,(х) задано з точністю до нечітко ви- значених параметрів с^а^Ь,, які є елементами нечітких множин із заданими функціями належності д/(с7),хуу(а,у),дД6І),і = 1,т,у = І.п . Цей клас задач можна звести до задач типу 3. 26і 601
Зайченко Ю.П. 9.4. ПРИЙНЯТТЯ РІШЕНЬ ПРИ НЕЧІТКОМУ ВІДНОШЕННІ ПЕРЕВАГИ НА МНОЖИНІ АЛЬТЕРНАТИВ Процес прийняття рішень як вибір найкращої (найбільш раціона- льної) альтернативи із деякої універсальної множини альтернатив X , може відбуватися при різному ступені інформованості ОІІР. Якщо інформацію про реальну ситуацію, на основі якої порівню- ються різні альтернативи, можна задати у формі функцій корисності, то маємо задачу НМП. Такі варіанти задачі розглянуто в п. 9.3. Од- нак подібний спосіб опису інформації можливий не завжди. Універ- сальнішим є опис інформації у формі відношення переваги на мно- жині альтернатив [37]. Розглянемо це відношення і його властивості. Припустимо, що на основі інформації, отриманої від ОПР, на множині допустимих аль- тернатив X введено чітке відношення нестрогої переваги Я. Це озна- чає, що для будь-якої пари альтернатив (х,у) можна висловити одне з таких тверджень; х не гірше за у, що записується так х > у або (х,у) є К; у не гірше за х, тобто у >= х або (у,х) є К; хта у не порівняні між собою, тобто (у,х) £ Я,(х, у) £ К . Така інформація дає змогу звузити клас раціональних виборів, включивши в нього лише ті альтернативи, що не домінуються жод- ною альтернативою з множини X. Для того, щоб визначити недоміновані альтернативи, введемо відношення строгої переваги Я5, відповідне відношенню нестрогої переваги Я, а також відношення байдужості . Казатимемо, що альтернатива х строго краща за альтернативу у, коїш одночасно, х > у , та у > х, тобто (х, у) є Я, (у,х) е Я Сукупність усіх та- ких пар(х,у) і називається відношенням строгої переваги Я5 на множині X . Для компактного запису відношення Ях використаємо означення відношення Я-!, оберненого до К . Відношення строгої переваги Ях , згідно з його означенням, записується так: Я5 = Я\Я'. (94.1) 602
Дослідження операцій Якщо (х,у)єЛ5, то казатимемо, що альтернатива х домінує аль- тернативу у (записується х >- у) Альтернативу х є X назвемо недо- мінованою на множині У із заданим відношенням /?5, якщо (у,х)іК8 для будь-якої альтернативи уєХ. Іншими словами, якщо х - недо- мінована альтернатива, то на множині X немає жодної альтернативи у, яка б домінувала х. Отже вибір недомінованих альтернатив мож- на вважати раціональним у задачі прийняття рішень. Таким чином, інформація у формі відношення переваги К дає можливість звузити клас раціональних виборів X до підмножинн не- домінованих альтернатив Х„д вигляду: Х„„ = {х : х є У,(у,х) Є В \ К~], Vу є У}. Якщо наявна в ОПР інформація у формі відношення переваги не- достатня, щоб зробити вибір між альтернативами х та у, то між цими альтернативами існує відношення «байдужості» (індиферентність). Більш строго, між альтернативами х та у є відношення байдужості (х,у) є тоді і тільки тоді, коли відношення переваги х > у та пере- ваги у> х одночасно виконуються або одночасно не виконуються. Із цього означення випливає , що можна записати у вигляді: П, = {У хУ}\{ЯІІ/? (9.4.2) Нечітке відношення переваги При моделюванні реальних систем можуть бути такі ситуації, ко- ли в ОПР немає чіткого уявлення (інформації) про відношення пере- ваги між усіма або деякими альтернативами, а можна лише оцінити ступінь виконання певної переваги між парами альтернатив у вигляді числа на відрізку [0;1]. У такому разі за допомогою ОПР (або експер- та) можна ввести нечітке відношення переваги. Означення 9.22. Нечітким відношення нестрогої переваги на мно- жині альтернатив X називатимемо будь-яке задане на цій множині нечітке рефлексивне відношення К [37]. 26* 603
Іаііченко Ю.П. Отже, нечітке відношення переваги Я на X описуватимемо фун- кцією належності дЛ(х,у), що має властивість рефлексивності, тобто дЛ(л. х) = 1 для всіх х є X . Якщо Я - нечітке відношення переваги на множині X , то для довільної пари альтернатив (х,у)єЯ значення рк(х, у) слід розуміти як ступінь виконання переваги х > у. На осно- ві заданого на X нечіткого відношення нестрогої переваги Я можна однозначно визначити три відповідних йому нечітких відношення: 1) байдужості Я7 ; 2) еквівалентності Яс; 3) строгої переваги Я5 , які використовуються для визначення і аналізу властивостей множини недомінованих альтернатив у задачах прийняття рішень [20; 37]. За аналогією із звичайними (тобто чіткими) відношеннями переваги во- ни визначаються так: Я/ = {Х*Х] \ {ЯІ)Я ’}0 {Я ЛЯ ЯІ=Я\ЯІ, Яс=ЯПА-‘- Тобто відношення еквівалентності Кг визначається так: альтернатива х еквівалентна у ( у - х), якщо одночасно виконуються відношення х>у та у>= х . Використовуючи раніше введені озна- чення операцій Л,П,\ неважко отримати вирази для функцій належно- сті цих відношень: 1) нечітке відношення байдужості: Рк(х,у) = тах[1-тах{дя(х,у);^(у,х)};тіп{^я(х,у);Дд(у,х)}] = (943) = тах[тіп{1-Ая(х,у);1-рл(у,х)}, тіп{дя(х,у);рй(у,х)}]; 2) нечітке відношення еквівалентності: Рк(х,у) = тіп{//я(х,у);^(у,х)}; (9.4.4) 3) нечітке відношення строгої переваги. якщо рк(х,у)>р„(у,х), ИП\Х'У)~ І - [0,у протилежному разі. Розглянемо деякі властивості введених нечітких відношень. 604
Дослідження операцій 1. Нечіткі відношення , К, рефлексивні і симетричні Справді, ЇХНЯ рефлексивність випливає ІЗ ТОГО, ЩО /7Л(х,х) = 1,Ул- є X , оскільки вихідне відношення Я рефлексивне. Тому Ая( Т,Л) = Ал(л'-т) = 1 Симетричність обох відношень випливає із їх означень. 2. Нечітке відношення строгої переваги антирефлексивне та антисиметричне. Справді: а) //я(л,л) = 0, оскільки вихідне відношення Н рефлексивне і для нього дЛ(х, г) — 1 для всіх х є X ; б) нехай дя(л,у) > 0 , тобто /ія(л,у)>//я(у,х)>0.Тоді ря(у,х) = 0, що означає антисиметричність цього відношення. Можна показати, що коли вихідне нечітке відношення переваги В на X транзитивне, то транзитивні також і відповідні відношення ек- вівалентності та строгої переваги [37]. Лінійність нечітких відношень Важливою властивістю заданого на X відношення переваги є йо- го лінійність. Означення 9.23. Відношення В на X називається лінійним, якщо цим відношенням або оберненим до нього В1 зв’язані будь-які дві альтернативи даної множини. Іншими словами, при лінійному від- ношенні на множині X немає непорівняних між собою альтернатив стосовно відношення переваги Очевидна лінійність звичайного (чіт- кого) відношення еквівалентна умові: /?1)Я 1 = ХхХ. Інакше цю умову можна записати так: Рк (х’ >) = 0-> рк (у, х) = 1 Розглянемо властивості лінійності для нечіткого відношення пере- ваги. 262 605
іайченко Ю.11. Означення 9 24. Нехай А — деяке число з проміжку [О, І] Нечітке відношення рк мас назву А -пишного, якщо його функція належності задовольняє умові: тах{^я(х,у),//л(_у,х)} > А , для будь-яких г, у є X . Нечітке відношення рк називається сильно лінійним, якщо його функція належності задовольняє умові: тах{//я(х, р),ал(у,х)! = 1, (9.4.6) для ДОВІЛЬНИХ Х,_у є X. Іншими словами, властивість сильної лінійності можна визначити таким чином Рн(*,У>> Рк(У,х)---->рк(х,у) = І.УхєX (9.4.7) Щоб пояснити зміст властивості сильної лінійності, покажемо, що воно еквівалентно умові: ря(х,у) = 1-/4(у.х), (9.4.8) де ~ відповідне нечітке відношення строгої переваги. Справді, якщо виконується (9.4.7), то згідно з означенням р% одержимо р%( у,х) = 0, тобто умова (9.4.8) також виконується. Навпа- ки, якщо виконується (9.4.8) і //я(х, у)>ря(у,х), то тоді ря(х,у) = і , тобто виконується (9.4.7). Розглянемо умову сильної лінійності у фомі (9.4.8). Неважко по- мітити, що його можна записати у вигляді Я-1 =(Хх Х)\ К5. З означення сильної лінійності випливає, що при сильно лінійному нечіткому відношенні переваги К на множині X для будь-яких двох довільних альтернатив х, ,х2 виконується хоча б одна з рівностсй: = 1 та(або) рЛ(х2,хІ)= І. Важливою особливістю сильно лінійного нечіткого відношення переваги є те, що відповідні йому множини /?, та Ле збігаються Припустимо, що для деякої пари (х, г)еАг виконується нерівність Дя(х, у) > ря( у,х). Тоді з (9.4.7) випливає ,що ря(х, у) = 1, а із визна- 606
Дослідження операцій чення ///(г.г) (див. 9 4.3) одержимо, що Рр(х,у) = рк( у,л). В силу симетричності Рр у випадку, коли рк(х,у) < рк(у. \) , матимемо Рр(х, у)^ рк(х,у). Отже: РІ(х,у)=тт{рр(х,у),рр(у, г)} = рея(х,у). (9.4.9) Нечітка підмножина недомінованих альтернатив Використаємо введені вище відношення строгої переваги для ви- значення підмножинн недомінованих альтернатив. Згідно з означен- ням нечіткого відношення переваги /?х для будь-яких альтернатив х,у є X , величина рр(х,у)є ступенем з яким альтернатива удоміну- ється альтернативою х. Тому при фіксованому уєХ функцію р£(у,х) можна розглядати як функцію належності нечіткої множини альтер- натив х є X , які строго домінуються альтернативою у . Звідси ви- пливає, що множина всіх альтернатив х, які не домінуються альтер- нативою з, є доповненням введеного відношення . Згідно з.озна- ченням доповнення одержимо, що ця нова нечітка множина опису- ється функцією належності вигляду: 1-/^(у.х),хєА'. (9.4.10) Якщо, наприклад, ря( у,х) = 0.3, то із ступенем 0.7 альтернатива л не домінується альтернативою і'. Звідси випливає, що для виділення в X підмножинн усіх альтернатив, кожна з яких не домінується жодною альтернативою із X , погрібно взяти перетин нечітких підмножин (9.4 10) по всіх уєХ. Такий перетин і назвемо нечіткою підмножи- ною недомінованих альтернатив і позначимо його ХПІ). Згідно з озна- ченням операції перетину нечітких множин, одержимо такий вираз для функції належності множини недомінованих альтернатив. Ал’(х) = іпГ[1-4(у,х)],лєУ. іє.¥ Або Ая',(х) = 1 5ирАя( »’,х), геХ . (9.411) і є V 26** 607
Зайченко Ю.П, Згідно з (9.4.11), //^(х) - ступінь з яким альтернатива г не домі- нується жодною з альтернатив множини X . Нехай /ф'’(л) = а для деякої альтернативи х0 Тоді х0 домінується будь-якими іншими альтернативами із ступенем, який не перевищує (1а). Користуючись означенням нечіткого відношення рд(л, г) можна показати, що вир Як(у,л) = вир[//к( г,х) - рр(х, у)],х є X . (9.4.12) ієЛ ієЛ" Вираз (9.4.12) дає змогу описати підмножину недомінованих аль- тернатив функцією належності вигтяду ^(х) = 1 5ир[Ая(у,х) - /7Л(л-,У», (9.4 13) іеХ де - вихідне нечітке відношення нестрогої переваги. Оскільки ве- личина є ступінь недомінованості альтернативи х, то раціо- нальним слід, звичайно, вважати вибір альтернатив, що мають найбі- льший ступінь належності нечіткій множині Х„д, тобто таких, що АГ(х°) = 8ирАя’М=: 1-іпГ8ир{/гя(у,х)-//я(х,і’)! (9.4.14) хе» 16 ' ієї Множину всіх альтернатив х„гі, які задовольняють умову (9.4.14), назвемо максимальними недомінованими альтернативами на множи- ні X. Очевидно X™ = {а- : рТМ = зир А"й(2),х є X}. хеХ Приклад 9.7. Нехай у скінченій множині х = іх„.г,,.ї3.х4і задано нечітке відношення нестрогої переваги (табл. 9.4). Таблиця 9.4 і\і х, Л, -V) 1 0.2 0.3 0.1 0.5 1 0.2 0.6 Лі 0.1 0.6 1 03 ь 06 0.1 0.5 1 608
Дослідження операцій Використовуючи введені вище означення, знайдемо відношення строгої переваги я, (табл. 9.5). Таблиця 9.5 /'«І»,,*,) = і\і X, X, -’з х4 0 0 0.2 0 А', 0.3 0 0 0.5 X, 0 0.4 0 0 Зі 0.5 0 0.2 0 Звідси одержимо шукану функцію належності нечіткої множини недомінованих альтернатив (табл. 9.6). Таблиця 9.6 Як (*) - Л’; *2 А'З 0.5 0.6 08 0.5 Як бачимо, найбільшу ступінь недомінованості мас альтернати- ва л-,(^''(л) = о.8) , тому її вибір слід вважати найкращим рішенням. Чітко недоміновані альтернативи та їхні властивості Розглянемо задачі раціонального вибору альтернатив, в яких множина недомінованих альтернатив являє собою нормальну нечітку підмножину множини X, тобто функція належності цієї підмножини має властивість: вир/у^х) = 1. (9.4.15) теЛ’ У цьому разі для будь-якої альтернативи х із множини ХИд мак- симальних недомінованих альтернатив виконується умова /^(х) - 1. Цс означає, що для будь-якої альтернативи х є X"6 та довільної аль- тернативи ге А" при цьому виконується рівність /^(у,х) = 0, тобто жодна з альтернатив не домінує з ненульовим ступенем дану альтер- нативу х. 263 609
Зийченко Ю П. Такі альтернативи, для яких р'р(х) = ) називатимемо чітко недо- иінованими (скорочено ч.нд.) , відповідну множину - множиною чі- тко недомінованих альтернатив, і позначатимемо її Х4"”. Тоді: Хч“д = (х : х є X та Ддгі(х) = 1} Множина ч.нд. альтернатив відіграє визначну роль у задачах ра- ціонального вибору, оскільки її можна розглядати як чітке рішення нечітко сформульованої задачі. Розглянемо деякі властивості ч.нд. альтернатив. Перш за все роз- глянемо питання про еквівалентність ч.нд. альтернатив. Покажемо, що ч.нд. альтернативи, якщо їх можна порівнювати, обов’язково ек- вівалентні. Як випливає із визначення X4'"', ^(х), для довільної ч.нд. аль- тернативи х є Хчнд виконується рівність яір^(у,х) = 0. (9.4 16) гєХ Звідси можна зробити висновок, що для будь-яких Х|,х2 є Х4"6 виконується рівність: Ая(л'і,х2) = рр (х2,Х|) = 0. (9.4.17). Тоді з означення рр(хігх2} випливає, що рр(х1,х2) = рк(х2,хі). Згідно з означенням нечіткого відношення еквівалентності /Уд(Х|,х2), одержимо: Ая (-«і >-»?) = тіп(хул(х1,х2),/у/г(х2,х1)} = рк(х},х2) Для всіх X] , х2 є Хч"д . (9.4.18). Розглянемо два типи лінійності нечіткого відношення переваги: )) Л : 2 - лінійне н.в.п. Якщо Я є Л - лінійним, тобто тах {рк (Х|, х2), рр (х2, х,)} > А , то з (9.4.18) випливає: ^(х„х2)>Л. (9.4.19). 610
Дослідження операцій Отже дві довільні ч. нд альтернативи еквівалентні із ступенем, більшим за Я . 2) /? сильно лінійне н.в.п. Якщо К сильно лінійне: тах{х7Л(л-|,л-2),^Л(>-2,\)} = 1, а хьх2 є Хчт>, то із означення сильної лінійності та рівності (9 4.18) випливає: (9.4.20). Багатокритеріальний вибір альтернатив на основі нечіткого відношення переваги Розглянемо застосування нечіткого відношення переваги та мно- жини недомінованих альтернатив у проблемі раціонального вибору за наявності декількох критеріїв. Нагадаємо, що цю проблему докла- дно розглянуто у розд. 1. Нехай маємо ситуацію, коли кожний з критеріїв у заданий.у фо- рмі чітких функцій корисності ;Х —> Я*11. Значення /Дх) можна трактувати як числову оцінку альтернативи х є X за ознакою у . Альтернатива г з більшою оцінкою /Дх) вважається кращою за критерієм (ознакою) у. Таким чином, кожна з функцій /Дх) опи- сує(задає) звичайне(чітке) відношення переваги на множині аль- тернатив X вигляду: = {(т.у): /,(х) > /Ду),х,у є X}. Завдання полягає в тому, щоб вибрати альтернативу х0, яка мала б найбільші оцінки за всіма критеріями (ознаками). Отже, раціональ- ним у розглядуваному випадку слід вважати вибір альтернативи х0 є X, яка має властивість: /Дх0)> /(у)Лу=І^,УуєХ. (9.4.21). Нагадаємо, що такі альтернативи називають ефективними (або Парето-оптимальними), і розв’язком цієї задачі вибору є множина всіх ефективних альтернатив. 26*** 611
Зайченко Ю.П. Для розв’язання сформульованої задачі багатокритеріального ви- бору потрібно вибрати належний спосіб згортки багатьох критеріїв (векторного критерію) в скалярний. 1. Одним з найпоширеніших способів згортки критеріїв є викори- стання перетину. Нехай 2, =р]Я, • Тоді множина ефективних альтер- >=і натив у множині X з відношенням переваги (У, збігається з множи- ною ефективних альтернатив для набору функцій /Дд). Таким чином, для відшукання множини ефективних альтернатив можна замість набору відношень Кі,у = 1,т використати їх перетин () і знайти множину недомінованих альтернатив за н.в.п (). Позначимо через рДх,у) функцію належності н.в.п. 2? .. Очеви- дно: 1, якщо ]7 (л) > (у), або (х, 0,у противному разі, (х,у)іК/ Тоді їх перетину - нечіткому відношенню переваги 2і ~ відповідає функція належності: Ар, (ї.у) = тіп{/У](х, у),р2(х,у),..,рт(х,у)}. (9.4.22) Така згортка критеріїв аналогічна згортці вигляду: /7(х) = тіпй>7/у(л-), (9.4.23) що застосовується у багатокритеріальних задачах прийняття рішень. Числа у (9.4.23) - це коефіцієнти відносної ваги відповідних кри- теріїв. У згортці (9.4.22) очевидно а>) = 1, V/ = 1.;л. Якщо ж * І, то Ар,(*>У) = тіп(й>1ху1(л-,у),й>:,ху2(л-,у),..,®„х7„(л-, у)}, (9.4.24) тобто відношення 21 вже не є рефлексивним. 2. Введемо згортку вихідних відношень } у вигляді суми: <2і = Х>,./,(*), дє X®, = о. /=1 7=1 А/(л,у) = - 612
Дослідження операцій їй відповідає функція належності вигляду: Рв1(.х,у) = '£а>ІрІІх,у). Зазначимо, що результуюче н.в.п. (У рефлексивне, оскільки усі вихідні н.в.п. К/ рефлексивні. Розглянемо спочатку випадок, коли усі вихідні відношення одна- ково важливі, тобто а> =—,у = 1,ш . Побудуємо нечітку підмножину 7 т недомінованих альтернатив , користуючись раніше введеними означеннями: а£(х) = і 1 - — 5ир т ,-єл- т Цр,(у,х)~ р^Х,уі) 7=1 ,х є X. (9.4.25) чмд Позначимо через Х} підмножину чітко недомінованих альтер- чмд натив множини {Л'.СіІ , а через А', відповідно підмножину чітко недомінованих альтернатив множини {Х,(}2}. Можна показати, що ^чнд ^чнд Дослідимо властивості альтернатив з множини (У?. Очевидно, £ функція а'.? (х) набуває лише значень вигляду—, де к- натуральне т число, к < т. Нехай для деякої альтернативи х' (х') = — - Згідно • т з (9.4.25) це означає, що т - ЦДх’,у)> = т -к , (9.4.26) або X А; ( У. х ) - ц і (х , у) | < т - к , для будь-якого уєХ. Оскільки члени суми в (9.4.25) набувають ли- ше значень 0 або ±1, то із (9.4.26) випливає, що різниця між числом 613
Заїіченко Ю.Г1 членів цієї суми, які дорівнюють +1, та числом членів, які дорівню- ють -1, не перевищує т к при довільному у є X. Це можна пояс- нити так. Нехай Р(у,х) - число функцій із заданого набору, по кожній із яких альтернатива у строго краща за х, і ?(у,х) - число фун- кцій , для яких альтернатива х строго краща за у. Якщо р'п,(х') = — . т то Р(у,х’) д(у,х')<т - к при довільному у є X . Таким чином, фун- кція упорядковує альтернативи за ступенем їх недомінованості. Далі доцільно шукати перетин множин НГ” . ОТ , 1 знайти =СГ'’П та відповідну функцію належності Р„д(т) = = тіп{/^(х),/і"'’(х)}. На множині <2н0 потрібно відшукати альтерна- тиви з максимальним ступенем недомінованості Це і буде найкращим вибором. Дамо опис алгоритму вибору альтернатив за наявності багатьох критеріїв оптимальності (нечітких відношень переваги) [20]. 1. Нехай на універсальній множині альтернатив X задано відно- шення переваги Л|,/?2,...,Ят (чіткі або нечіткі) з функціями належно- сті р) (х, у), а також со), у = 1, т - вагові коефіцієнти відповідних від- ношень. Будуємо згортку відношень Л(,Я2,...,Ят у вигляді перетину т £?і = , з функцією належності: 7=1 ^2іи»5')=тіп{Аі(х,у),/72(х,у),..,хіт(х,у)} . (9.4.26) 2. Визначимо множину недомінованих альтернативні'"’ У множи- ні (Х&у. (х) = 1-вир >еХ пі 1=1 (9.4.27) 3. Використовуючи згортку критеріїв у вигляді суми, будуємо нечітке відношення переваги (2з : Ар, (*<У) = 1>7А/(х,у) , = 1,% >0 (9.4 28) /=і і=і 614
Дослідження операцій 4 Знаходимо нечітку підмножину недомінованих альтернатив СТОСОВНО ЛІ (х) = 1 - зир] (у,х) (х, у) >Є V (9.4.29) 5. Знаходимо перетин множин £"<’,@2Г> > 1 спільну множину не- домінованих альтернатив РІІГ) =21'">П С??"’ 3 функцією належності. (*) = т,п(*>’А& (*)} • (9.4.30) Раціональним вважаємо вибір альтернатив із множини: = к’ Р,,ЛХ') = 5ирА1и,(х),х є X] (9.4.31) Отже, найкращим слід вважати вибір альтернатив із множини з найбільшим ступенем недомінованості. Приклад 9.8. Нехай громадянин N хоче якнайвигідніше вкласти свій приватизаційний майновий сертифікат (ПМС). При цьому він розглядає такі можливі варіанти: Х| - використати ПМС для приватизації житла; х, - використати його для придбання акцій автомобільної ком- панії, наприклад ЛОГОВАЗ; х,- вкласти ПМС в акції будівельної компанії, яка будує бізнес- центр у місті; х4 - продати свій ПМС. Громадянин оцінює альтернативи за такими критеріями: я, - очікуваний прибуток; я, - можливий ризик, пов’язаний з банкрутс- твом; ку - час, через який очікується одержання прибутку. Нехай за оцінками експерта згадані критерії встановлюють такі відношення переваги на множині альтернатив: я,: х, переважає х4 (записуємо так: х,>-х4); х, приблизно екві- валентне х, (х, = х3), х, переважає х(; • X] >- Х2«Х] « Х^Х^ >- Х2*Х| X Ху , ‘ хд > х2,х2 > х,,х4 - X) . 615
Зайченко Ю.П. Необхідно знайти найкраще компромісне рішення за сукупністю критеріїв, використовуючи згортки &,(?.. При цьому для (? взяти ваги критеріїв а>, - 0.4, а>, = 0 3, - 0 З Розв’язання. 1. Побудуємо матрицю відношення к,. Вважа- тимемо всі відношення транзитивними, тобто, якщох, > г,, а г, = х,, ТО х, > X,. Скористаємося співвідношеннями. [Ьяки/ох, або х ~х{:, М*.*,) [V, ЯКЩОХ, Одержимо матрицю відношення /?, (табл. 9 7) Таблиця 9.7 Дк1(-'..Г,) = х, \х, Х| х, х3 ДГ| Ч 1 0 0 1 X, 1 1 1 1 X, 1 ] 1 1 X, 0 0 0 1 Л>, =0.4 2. Аналогічно будуємо матрицю відношення я, (табл. 9.8). Таблиця 9.8 X, \ XІ ч X, х3 X. X, 1 1 1 1 Х2 0 1 0 0 X, 0 1 1 0 -Ч 1 1 1 1 й>, =оз З Аналогічно будуємо матрицю відношення к, (табл. 9.9) 616
Дослідження операцій Таблиця 9.9. .Х,) = Х,\Х, V, X, X. X, 1 1 1 1 ґ2 0 1 1 0 V, 0 0 1 0 Ц 1 1 1 1 ш, = о.з 4. Будуємо згортку відношень 0, = (табл. 9.10). Таблиця 9.10. г.'1, V, *з х4 її 1 0 0 1 X, 0 1 0 0 X, 0 0 1 0 Л4 0 0 0 1 5. Знаходимо підмножину недомінованих альтернатив: /'«" М =1" 5иР{Аи (Л *)-/'«( ге \ А"',(х,) = 1 8ир(0-0;0-0;0-1) = 1- р“’(х2) = 1 - хир{0- 0;0- 0;0- 0} = 1; /^(х,) = 1-8ир{0-0;0- 0;0-0} = 1і д£(х4) = 1-8ир{1-0;0-0-.0-0} = 0- Таким чином, д£,’(х) = [і;і;і;0]. 6. Будуємо н.в.п. р, (адитивну згортку відношень я,), р, = £>,/,(.0 > >-і де (х4 ) = 1 - тах(0.4;0.01 = 0.6 , = 0.4. й», = 0.3,= 0.3 . Його функцію належності наведено в табл. 9.11. 617
Зайченко Ю.П. Таблиця 9.11. РЙ(Х„Х,) = Ч — і, Г, 1 1 0.5 0.5 1 V . 0.4 1 0.7 0.4 'з 0.4 0.7 1 0.4 х4 0.6 0.6 0.6 1 7. Знаходимо підмножину недомінованих альтернатив для відно- шення у,: /'р (х) = І - (' -х) //у, (х,.г) //“(л,) - І-хир!(0.4-0.5);(0.4-0.5);(0.6-І)} = її //" (х:) = 1 -хирЦ0.5- 0.4);(() 7 -0.7),(0.6 0.4)} = 0.8 ; (х,) = 1 - тах{(0.5 - 0.4),(0.7-0.7);(0.6 0 4)] 0.8; /'й (х4 ) = 1 тах (0.4;0 0] = 0.6 . Таким ЧИНОМ, //"" (х,) = [1;0.8;0.8;0.6]. 8. Знаходимо перетин множин і обчислюємо функцію на- лежності результуючої підмножини =РГ'Р у;"’. Її функція належно- сті дорівнює р “ (х,) = тіп (х,), р" ( V,) | ; X, X, X, X, д“'(х,) = [1 0.8 0.8 0] Отже, найкращим вибором у розглянутому випадку є альтернати- ва х, - вкласти ПМС у приватизацію житла.
Дослідження операцій 9.5. УЗАГАЛЬНЕННЯ НЕЧІТКОГО ВІДНОШЕННЯ ПЕРЕВАГИ. ПРИНЦИП УЗАГАЛЬНЕННЯ. Нехай на універсальній множині У задано нечітке відношення переваги А з функцією належності рн-.УхУ---->[0;1] . Нехай У - клас усіх нечітких підмножин множини У, тобто клас усіх функцій вигляду у: У--->[0;1] . Сформулюємо таку задачу: визначити, яке нечітке відношення переваги відображає на клас ¥ вихідне н.в.п /? . Для розв’язання цієї задачі скористуємося принципом узагальнен- ня, запропонованим Л.Заде. В його основі лежить означення нечіткої множини при звичайному (чіткому) відображенні [20]. Нехай <р: X---> У — задане відображення, Л - деяка нечітка підмножина множини X з функцією належності рДх). Відповідно до принципу узагальнення, образ А при відображенні <р визначається як нечітка підмножина множини У, яка є сукупністю пар вигляду. (У,Ав(У)) = (р(4дДх))лєХ, (9.5.1) де рв( у): У->[0;1] — функція належності образу. Функцію належності рв( у) можна записати у вигляді: Ав(у)= зир рЛ(х),уєУ, (9.5.2) ГЄ(5 '(у) де множина (р'1 (у) для довільного фіксованого у є У має вигляд (о~'( у) = [.у: $?(х) = у,х є X}, тобто є множиною усіх елементів х є X , образом кожного з яких при відображенні (р є елемент у. Застосуємо принцип узагальнення у формі (9.5.1) для розширення області визначення нечіткого відображення [20; 137]. Нечітке відображення можна описати як відображення, при яко- му кожному елементу X є X ставиться у відповідність не конкретний елемент множини У, а у загальному випадку деяка нечітка підмно- жина множини У . Нечітке відображення описується функцією ви- гляду ру : X хУ-->[0;1], тоді функція р^(х0,у) при фіксованому х0 619
Зайченко Ю.П. є функцією належності нечіткої множини у є¥, яка являє собою не- чіткий образ елемента х0 при даному відображенні. Наприклад, для систем керування нечітку множину /^(х0, у) можна трактувати як нечіткий опис реакції цієї системи на керування х0 . Отже, нехай : Ух У------->[0;1] - задане нечітке відображення, р Дх) нечіт- ка множина в X, і потрібно знайти образ В нечіткої множини А при цьому відображенні. Якщо для цього застосувати принцип узагальнення у формі (9.5.1), то отримаємо сукупність пар вигляду: {/і (х,у),дя(х)|,хеХ, де р^(х,у) при кожному фіксованому хєХ є нечітка підмножина множини У Одержимо, що образ нечіткої множини рА у такому випадку - це складний об’єкт: нечіткий підклас класу всіх нечітких множин множини К . Використання таких об’єктів на практиці дуже складне. Тому С.А.Орловський запропонував принцип узагальнен- ня у більш зручній формі. В його основі лежить таке означення образу нечіткої множини при нечіткому відображенні [37]. Означення 9.25. Образом В нечіткої множини А в X при нечіт- кому відображенні р^-.Х-х.У----->[0;1] називається нечітка множи- на В з функцією належності вигляду. Рв(у) = Биртіп]///*),/^, г)[. (9.5.3) лгєЛ В основі цього означення образу лежить максимінна композиція нечітких відношень рА та . Можна перевірити, що в окремому випадку, коли р^ - звичайне (чітке) відображення вигляду (р:Х----->У (тобто рр(.х,у) = 1 , коли у = (р(х) і //#,(х,г) = 0 для усіх інших пар (х,у)), означення 9.25 дає: АВ(У)= кир рА(х), (9.5.4) ’о ) що відповідає вищенаведеному означенню образу при звичайному (чіткому) відображенні на основі принципу узагальнення Заде. Іноді задане нечітке відображення р може залежати від п змін- них, тобто мати вигляд: Р„:Х^У------->[0;1], де X = X, х Х2 х... х Х„ . 620
Дослідження операцій Нехай на множині X задано нечітку підмножину рА(х,у). У за- гальному випадку її функція належності задається так: А,і (*і .*2 -) = тіп {Аі (*і). /Л( г2 )> - А, (*„).^(-«і .*2••• >х«)} , (9.5.5) де ),і = 1,п та і/(хІ,х2,...,х„) - задані нечіткі підмножинн відпові- дних множин X/ та X. Застосувавши у цьому разі принцип узагаль- нення у формі (9.5.3), одержимо такий вираз для функцій належності образу нечіткої множини: = 5иР иііп^,(х1),^2(х2),..,^л(х„),і'(х1,х2,..,хл), (9.5.6) ^(х,,х2,..,х„ ,>’)}. Узагальнене нечітке відношення переваги. Використаємо введений вище принцип узагальнення для розв’язання сформульованої задачі на початку розд. 9.5. Розглянемо задане на множині У н.в.п. Я з функцією належності Ая(У.г), у,гєУ. Нехай V : У >[0;1] — деяка нечітка підмножина множини У. То- ді згідно з принципом узагальнення образ г при нечіткому відобра- женні дд(у,г) є нечітка підмножина У з функцією належності вигляду [20; 37]: 77(|/, у) = 5иртіп{и(г),//я(г,у)}. (9.5.7) Ця функція г] описує узагальнення відображення вихідного н.в.п. на множину ¥ х ¥. Іншими словами, для фіксованого и0 є¥ функція 7?(и0,,у) описує нечітку множину елементів У, звязаних з г0 узагаль- неним відношенням Я', тобто таких у є У , що г0Я'у. Отже величина є ступенем, з яким нечітка множина г0 переважає елемент у. Аналогічно: П(Уд'о') = 5иртіп{г(.?),//д( у,г)} (9.5.8) гєУ є ступенем оберненої переваги у > г0. 621
Зсгііченко ЮП Продовжимо процес узагальнення вихідного н в.п Е Розгляне- мо одержану функцією /7 у (9.5 7) як нечітке відображення У-> г , Рис. 9 7 підклас нечітких підмножин в У де у - клас усіх нечітких під- класів класу ¥. Згідно з принци- пом узагальнення, образом і-,, при нечіткому відображенні 77 є нечіткий підклас класу ¥ з фун- кцією належності вигляду: V, и0) = зир тіп {і-0 (у). у)}, гєУ причому його можна розуміти як таких, що и>и0. Із (9.5.8), (9.5.9) одержимо такий вираз для функції належності узагальненого нечіт- кого відношення переваги [20]: 7(1'1, и2) = зир тіп{И] (г),зир[и2 (?), дд(у,?)]} = гєУ гєУ = мір тіп(и1(у),и2(г),дд(у,г)} г.уєУ (9.5.10) Аналої ічно можна дійти висновку, що обернена перевага и, > г виконується із ступенем, який дорівнює величині: 77(1'2,1'])= яир {И](у),и2(2),хтд(г,у)} (9.5.11) г.ієУ Приклад 9.9. Нехай у - числова вісь і задане н.в.п. ж>) - зви- чайний порядок на у. Тоді рівняння (9.5.7), ( 9.5.8) записуються у вигляді 7(и,у)-8іір г(а); (9.5.12) £.161 7(у, и) = вир и(г) • (9.5.13) .-.уеі Нехай нечітка множина і має вигляд, наведений на рис. 9.7. Ко- ристуючись виразами (9.5.12), (9.5.13), одержимо 7(>'.Уі) = 7(і,гЛ') = 1 , '7(г,г,) = >?(гі.у) 07 622
________________________________________________Дос лідження операцій Зауважимо, що згідно із означенням відношень еквівалентності та строгого порядку, дістанемо, зокрема: і- еквівалентно і із ступенем 0.7, V строго краще за у із ступенем 0 З, і- еквівалентно у, із ступенем 0.7; і, строго краще за г із ступенем 0.3. Приклад 9.10. Нехай х = (л,.л,.х,) - задана нечітка множина л в х, яка має функцію належності ддг), що задається у табл. 9.12, а НеЧІТКе ВІДНОШеННЯ Я Має фуНКЦІЮ НалеЖНОСТІ р„(г) X хГ---------->[0;Ц (табл. 9.13) Таблиця 9.12 Таблиця 9.13 V Аі Х2 г\у У, г2 І’з >’< Я< (х) 0.3 0.7 1.0 ч 0.8 1 0 0.3 0.7 Х1 0.8 0.3 0.8 0.4 0.7 хі 0.2 0.3 0.5 0.2 1 Знайти образ В нечіткої множини а в х , що генерується відо- браженням в. Розв’язання. Згідно із (9.5.3) знайдемо функцію належності не- чіткої множини в. Обчислимо спочатку Для цього виконаємо операцію зна- ходження тіп для ВСІХ елементів рЯДКа Ял(') та стовпця у, (табл. 9.13). Це дає: X, х2 х} 0 8 0.3 П 0.8 ‘0.3’ [0.3 0.7 1]П 0.8 = 0.7 П 0.8 = 0.7 0.2 . Ш0.2 _ 0.2 Після виконання операції тах на елементах здобутого стовпця одержимо: тах{о.з.о.7,о.2! = о.7 Таким чином, яя(і’,) = о.7 . Виконавши аналогічні операції над рядком та усіма стовпцями у,,У2,у„і-4 табл. 9.13, дістанемо //„(гг) = о.з; //«(з,) 07; р»(у4)=о.4; я,(у,) = і. 623
Зайченко Ю.П. Розглянемо деякі властивості введеного нами узаіальненого нечі- ткого відношення переваги г}, які визначаються властивостями вихі- дного відношення дя та класом нечітких множин, на якому воно роз- глядається Теорема 9.1. Якщо н.в.п. рк на У рефлексивне. то й індуковане ним н.в.п. г) теж рефлексивне на класі всіх нормальних нечітких підмножин множини У. Доведення Якщо се У нормальне, тобто 8ири(з) = 1, то із уєГ (9.5.10) одержимо: і7(и,и)= мір тіп{и(д’)»’'(з),дДУ,з)} > 8иртіп)и( у),и( у)} - «г (9.5.14) = 8ПрУ(у) = 1, > отже робимо висновок, що р(е,е)=1 . Теорему доведено. У наступ- них теоремах розглядається питання лінійності н.в.п. Теорема 9.2. Якщо н.в.п рк на У сильно лінійне, то й індуковане ним н.в.п. г] також сильно лінійне на класі всіх нормальних нечітких підмножин множини У. Теорема 9.3. Якщо н.в.п. рк на У А - лінійне, то й індуковане ним н.в.п. г) також А - лінійне на класі всіх нормальних нечітких під- множин множини У. які мають властивість зири(у)> 2 Доведення цих теорем наведено в [37]. Таким чином, властивість лінійності вихідного н в п. дл перено- ситься на індуковане ним узагальнене н.в.п р. Приклад 9.11. Універсальна множина х неперервна. Нехай х = ю , а нечітку множину л в х задано у вигляді л = {л:д,(о=е *’,*, >о; Нечі- тке відношення в: х х у--------->[0;і] має функцію належності рд.ї,у) = е‘2І* >0, при *,>*, (функції //,(л)та дДх.») наведено на рис. 9.8.а, 9.8.6). Необхідно знайти образ в в у, що генерується не- чітким відношенням я. Розв’язання. Згідно з (9.5.7), д„(у) = 5иртіп;//,(г),//я(г, у)| . Знайдемо мінімум по л-для //.сота д„(.г,у). Ці дві криві перетинаються у двох точках: 624
Дослідження операцій а) умова о<х< у:е ‘'' =е "дає точку х, =—^—г; А, + А, ' б) умова х> у; е *р =е *2” ” дає точку к, . А’ На рис. 9.8.в суцільною лінією виділено криву лв(4 т) = //,,(-г)П/М-\-.г), максимум якої досягається при л- = к' г . Та- кх + А, ’ -А|Ь КИМ ЧИНОМ, рв(у) = е • Приклад 9.12. Нехай нечітку множину V на г=й‘=(О;^.) задано функцією належності у(г) = р‘Т- Я, де гєу,л,>о і задане на ухг чітке відношення порядку р(х,і ) = г> _» , де і.уєУ . Знайти образ в множини V в Г , ЩО генерується відношенням р(;,.г). Розв’язання. 77(к,у)= 5ир{у(з)} г.гєК Розглянемо два інтервали:о<3 <5;у>5 а)для о<і<5: 27 і 625
Зайченко Ю.П Рік 9 9 яір»4> ‘1|-5|} = 1 при г-5; б) ДЛЯ >>5 81ір{е *||г =е , тобто досягає максимуму при г = і . Отже / ч Р’ пРи 05»’<5; ОТЖЄ’7(і\У) = і ((15) [єпри г>5 Приклад 9.13. Нехай задано дві нечіткі множини и, та и, на у = к' з функціями належності і-1,)-? *'.*, >о та у,(з) = е ;-’|г 5| , де *, >о.*, >*.. Нехай я с у х у - чітке відношення нестрогої о порядку (г > । > , тобто: (1, при ~ > V; [0, при 2 < у. Знайти функцію належності узагальненого нечіткого відношен- ня переваги т](уг,у}), що генерується відношенням я на і-,, и,. Відповідно до співвідношення (9.5.10): '7(г'2,і-,)= 5иртіп1і',(>),и,(;),^/,(г,г)} = 5ир!к,(і).и,(г)|. Розглянемо криві п (і ),7,(г) (рис 9.9)1 знайдемо точки їх перетину Маємо *,у = *,(г 5). Знайдемо ліву точку перегину (г<5): *,1 =Л,(5 г) або Л|! = 5*, *,г; г = —|Г + 5*2 . 626
Дослідження операцій Точка перетину кривих визначається при і = г = 5*2 . Л: + л-> а) Отже, на інтервалі о < г < ял, т7(і',,г1)=е*'“ ; б) на інтервалі 5к? г с _ 5А'? . де - г, друга(права) точка А', + А, А2 А, перетину кривих ;,;(!) та ^(-) 7(1-!,Г|)=е‘' ; в) на інтервалі у > 2 _ - 2 к2-к. Недоміновані альтернативи у загальній задачі нечіткого математичного програмування. Розглянемо у загальному вигляді задачу нечіткого математичного програмування і зведемо її до задачі прийняття рішень при нечіткому відношенні переваги [20; 37]. Формально задача НМП формулюється таким чином. Нехай X- універсальна множина альтернатив і рЛ : X->[0;1]. Задано нечітку підмножину допустимих альтернатива. Нехай У - універсальна множина оцінок результатів альтернатив із множини X і : X х У---->[0;І] задане на множині У н.в.п. Вибори альтернатив оцінюються нечіткими значеннями заданої нечіткої функції цілі <р(х,у): X х У-»[0;1]. Завдання полягає у раціональному виборі альтернатив на основі інформації, заданої у вищеописаній формі Аналізуючи цю задачу, спочатку вважатимемо для простоти, що множину допустимих аль- тернатив X описано чітко. Побудуємо на множині X н.в.п., яке індуковане вихідним н.в.п. та нечіткою функцією цілі <р , а далі виділимо в ньому підмножи- ну недомінованих альтернатив. 27* 627
іайченко Ю.П. Довільній альтернативі х° задана функція <р ставить у відповід- ність нечітку оцінку цієї альтернативи у вигляді нечіткої шдмножини оцінок <р{ г,у) на У . Нехай р - н.в.п , що індукується вихідним відношенням н.в.п. на класі ¥ всіх нечітких підмножин множини У . Користуючись цим відношенням, можна порівнювати за відно- шенням переваги нечіткі оцінки альтернатив, а отже і самі ці альтер- нативи. Іншими словами, ступенем переваги альтернативи х, є X над альтернативою х2 є X вважатимемо ступінь переваги нечіткої оцін- ки ^(х,,г) над нечіткою оцінкою <г>(х2,у), тобто покладемо: /7(х,,х2 ) = г)(<р(Х],2). <р(х2,у)), (9.5.15) де ^,2) , <р(х2,у) - нечіткі П1ДМНОЖИНИ ОЦІНОК, ЯКІ відповідають X] га х2. Таким чином, використовуючи означення г/ (див. розділ 9.4.) одержимо н.в.п. на множині альтернатив такого вигляду: 7(иі,и2)= ?ир тіп^(х],г),у>(х9, г),дЛ(з,у)}. (9.5.16) -.геї" Зауважимо, що в аналогічній задачі з чітко описаною ц.ф. [’Х------>У визначення (9.5.15) зводиться до звичайного (чіткого) відношення переваги х( > х2 <---> /(Х|) > /(х2). Справді, у цьому разі: . \ Iі’ Л*) = у; Лх, = [0, у противному разі, /1, при г>у; РЯ(?,У) = { . . (І), в усіх інших випадках Тоді рівність (9 5 15) матиме вигляд: "р“ (0, в усіх інших випадках. 628
Дослідження операцій Можна переконатися у тому, що якщо функція ер нормальна (тобто зирср{х, у) = 1, V* є X), то н.в.п. рефлексивне, отже, г](х,х) = 1,¥х є X . 1-6 > Виділимо у множині X з н.в.п. Г] нечітку підмножину недоміно- ваних альтернатив. Згідно з означенням Хіи) вона задається так: г)"6 (х) = 1 - зир (г](х, х), - г](х, х')) (9.5.17) л'єХ Звідси, з урахуванням (9.5.15), одержимо: ^(-г) = 1-5игі5иртілМг».^т ,Л//Я(’,у)}- <«х «..«»• (9.5.1 о) зир тіп И*', з), <р(х, у), цк (у, з)} ]. і.ге»’ Розглянемо простішу, але практично важливу задачу, коли мно- жина оцінок ¥ - числова вісь. Тоді вираз (9.5.15) має вигляд: г](хі,х->) = зир тіп{^(Х|,2),^(х2,у)}, (9.5.19) г.уєГ а розв’язком відповідної задачі НМП є нечітка підмножина недомі- нованих альтернатив вигляду: с]"°(х) = 1- 8ир[зиртіп{(р(х',2),0>(х ,у)}- хеХ г~у (9.5.20) зир тіп {<р(х, г), <р(х', у)} ] г>>. Величина г/"л(х) є ступенем недомінованості альтернативи х . Якщо >}"А(х) >а, то у множині X немає жодної альтернативи, яка домінувала б альтернативу х із ступенем , більшим, ніж 1 а. Пока- жемо, що для знаходження альтернативи, недомінованої із ступенем, не меншим, ніж а, достатньо розв’язати таку задачу НМП: у----->тах, (9.5.21) при обмеженнях: ^(т,у) > а,х є Х;ує¥ . 272 629
Іийчеііко К) II Теорема 9.4. Нехай нечітка цільова функція ір.ХкХ----------»[0;І] така, іцо чир«с( г. г)>а при будь-якому \ є V і нехай ц - н.в.п. на X, яке індуковане відношенням нестрогого порядку (>) на числовій осі У та функцією <р Якщо (г°,і0) - розв'язок іадачі (9.5.21), то ц"0(Xі*)> а . де ц "(л) нечітка підмножина недомінованих альтер- натив на множині (Л ,//). Доведення Нехай пара (г°, і11) є X х У — розв’язок задачі (9.5.21). Тоді, як випливає із (9.5.20), для доведення теореми 9.4. до- сить показати, що 5ир[8иртіп)(£( \',2),^(х0. у)} -міртіп:),<р(х, у)}]< 1-а . зг’єЛ ;>1 г>і Припустимо супротивне, тобто, що знайдуться х є X та е > 0 та- кі, що [хиртіп{«о(х, з).р(.г’,у)} - (9.5.22) хиртіп \<р( ги,г),р(.г, г)! ] > 1 - а + е Виберемо геК так. що <р(х, г) > а - е (існування такого у ви- пливає із припущення про функцію<р{х, у) в умовах теореми 9 4). Оскільки пара (у0, у0) - розв’язок задачі (9.5.21), то у0 >уі. крім юго <р(х ,і )>а Звідси хиртіп{^(х0,л),<^(.х, у){ > а-г ’ але тод1 г>г нерівність (9.5.22) неможлива, оскільки лівий доданок у лівій частині (9.5.22) не може перевищувати 1 Із доведеної теореми випливат що будь-які умови, достатні для розв’язання задачі (9.5.21), достатні і для існування відповідних недомі- нованих альтернатив у множині. Зокрема, справедлива гака теорема [37]. Теорема 9.5. Якіцо множини X та У компактні, причому У - підмножина числової осі, функція ір: X хГ------>[0;І] нитвнеперервна на добутку X х У,хир49(л,у) > а при будь-якому хєХ і і] н.в.п. на X, індуковане відношенням порядку (>) на У та функцією ір. то у мно- жині (х.ц) існує хоча б одна альтернатива х, для якої г]"А(х) > а. 630
Дцс.шіження операми 9.6. ЗАГАЛЬНА ЗАДАЧА НЕЧІТКОГО МАТЕМАТИЧНОГО ПРОГРАМУВАННЯ І МЕТОДИ її РОЗВ'ЯЗАННЯ НА ОСНОВІ ПІДМНОЖИНИ НЕДОМІНОВА НИХ АЛЬ ТЕРН А ТИ В Розглянемо загальні задачі НМП, що описуються моделями типу 5 згідно з класифікацією, наведеною у розд. 9.3. Візьмемо для при- кладу таку практичну задачу планування виробництва на фірмі Нехай деяка виробнича фірма планує випуск різних виробів г,,...,х„ на поточний період (квартал або рік). Позначимо через є очікуваний прибуток на одиницю реалізованої продукції гину у.у = 1,л . Для виробництва кожного з виробів використовуються ре- сурси Ь},Ь2,—,Ьт~ виробничі потужності фірми, причому питомі ви- трати і-го ресурсу при виробництві одиниці продукції типу ] ста- новлять а, одиниць. Необхідно знайти такий раціональний план ви- пуску виробів кожного типу, який забезпечує максимальний прибу- ток фірми. Математична модель цієї задачі така: максимізувати ЕСЛ/’ (9.6.1) /-і при обмеженнях. І , (9.6.2) і \ > 0. хей". Цю задачу при фіксованих відомих значеннях параметрів єу , аіг розглянуто у розд. 2, а коли вони є випадковими величинами з відо- мими функціями розподілу Г(с ). її можна розв’язати мето- дами стохастичного програмування. Однак на практиці буває, що ці параметри невідомі і для параметрів с,,а,, можна лише вказали ін- тервал можливих значень. Задачу такого типу можна назвали зада- чею з багатозначними коефіцієнтами. У рамках цієї задачі немає сен- су говорити про максимізацію ц. ф., оскільки значення цієї функції — не числа, а множини чисел. Тут потрібно з’ясувати, яке відношення переваги на множині альтернатив породжує ця функція, а далі визна- чити, які вироби слід вважати раціональними стосовно цьою відно- шення переваги. 27** 631
Зайченко Ю.П Наступним еіапом на шляху деталізації та уточнення розглянутої тут моделі с опис параметрів задачі у вигляді нечітких множин. У модель вводиться додаткова інформація у вигляді функції належнос- ті цих нечітких множин. Ці функції можна розглядати як спосіб на- ближеного відображення експертом наявного у нього неформалізо- ваного уявлення про реальне значення даного параметра. Значення функцій належності - це вагові коефіцієнти, які експерти припису- ють різним можливим значенням цього параметра. Отже, після уточнення маємо таку постановку задачі НМП [20]. Задано лінійну форму вигляду: /(х,с) = £сух,---->тах, (9.6.3) 7=1 в якій значення коефіцієнтів {су} описано нечітко в формі нечітких підмножин відповідних універсальних множин, тобто задано функції належності дДс,),у = І, я . Крім того, задано обмеження: £я,,х; <6, ї=1,/я,ху >0,у = 1.л, (9.6.4) і причому значення коефіцієнтів аі],Ь> описано також у формі нечіт- ких множин з функціями належності у^а^г^Ь,). Потрібно здійсни- ти раціональний вибір вектора х є К" , який у певному розумінні мак- симізує задану нечітку лінійну форму. Формулювання задачі, її зведення до загальної задачі НМП. Нехай X - універсальна множина альтернатив. Підмножина до- пустимих альтернатив описується нерівностями, що випливають з (9.6.4): £,(*,«,і,аі2,...,а,п) < 0,і = 1,т , (9.6.5) де - задані функції , X х Я------> Я1 ; а ,«= 1,л, у = і,т, - числові па- рамезри, значення яких описано у формі нечітких множин числової осі. Нехай є,,(«,,) іадані функції належності цих нечітких множин. 632
Дослідження операцій Вибори альтернатив оцінуються шаченнями заданої функції /’-.А'хЯ"---->Л' вигляду Дх,с1,с2....,ся), в якій с,,с2,...,сп - числові параметри, значення яких також описано у формі нечітких підмно- жин числової осі. Нехай задані функції належності цих нечітких множин. Для завершення формулювання задачі потрібно відшукати відно- шення переваги в універсальній множині оцінок альтернатив. У роз- глянутому випадку ця універсальна множина являє собою числову вісь Я1. Вважатимемо, що вихідне відношення переваги - це нестро- гий порядок > на Я1. Побудуємо математичну модель задачі у формі загальної задачі НМП. Для цього розглянемо спочатку нечітке відношення (9.6.4) і по- будуємо відповідну йому нечітку підмножину допустимих альтерна- тив, функцію належності якої позначимо /ус(х). Нехай {а \,і = \,п,і = \,пі- деякі конкретні числові значення від- повідних параметрів у обмеженнях (9.6.4), ступені їх належності за- даним нечітким множинам дорівнюють відповідно: ^(<фл = 1.л.у = 1.иі . Позначимо через мінімальне з цих чисел, тобто = тіпи (а°). Якщо деяка альтернатива х є X задовольняє нерів- ності §,(х,а^,а°2,...,а° ) <0, і’ = 1,лі, то природно вважати, що ця аль- тернатива належить множині допустимих альтернатив із ступенем, не меншим, ніж , тобто вважати, що рс(х)> . Цією нерівністю і задається множина допустимих альтернатив. Для зручності запису її функції належності введемо такі позначення: г(А) = тіпи„(ц.), А = ||«„||,і = 1,»і,у = \,п, ' п ____________ (9.6.6) Р(х)= {А =||«Д. :£,(«„,а,х) < 0;і = 1,/п}. У цих позначеннях одержимо: дс(х)= зир І'(А). (9.6.7) 27і 633
Зиіічсііко Ю.Н. Кожній альтернативі х функція дс(х) ставить у відповідність ступінь її допустимості з урахуванням нечіткої інформації. Розглянемо нечітко задану функцію !\х,ск,с->....<„) і запишемо її у вигляді нечіткої ц.ф аналогічно тому, як це було зроблено для обме- жень. Нехай деякі конкретні числові значення параметрів функції (9.6.3), ступені її належності заданим нечітким множинам дорівнюють відповідно хі(с)), і = І,и. Нехай <р - мінімальне з них: (р - тіп/ (с ) . Нехай, нарешті, і 11 хєХ- деяка альтернатива і число /0 = /(х,с[),с5,...,с®) є відповідне альтернативі х та значенням параметрів },і = 1, п значення функції (9.6.3). Природно вважати, що це значення г° належить нечіткій оці- нці альтернативи х із ступенем, не меншим ніж <р. Звідси шукана нечітка ц.ф. <р(*.г) має вигляд: (р(х,г)= мір /(с), (9.6.8) сєр(*.г) де /(с) = тіп7?(с, ),с = [с1,с2....сн]Г;(7(х,г)= (с;сє /?", /(х,с) = г(. У Отже, вихідна задача з нечітко описаними параметрами форму- люється у вигляді такої загальної задачі НМП [20; 37]: максимізувати нечітко задану цільову функцію «9(х,г)= вир /(с) (9.6.9) сєР(х.г) на нечіткій множині допустимих альтернатив дс(х) = вир и(А), (9.6.10) ЛеР(х) де (?(х,г) та Р(х) задаються відповідно (9.6.8) та (9 6.6). 634
Дослідження операції/ Недоміновані альтернативи в загальній задачі нечіткого математичного програмування. 1. Розглянемо спочатку більш просту задачу з нечіткою ц.ф. (9.6.3) та звичайною (чіткою) множиною допустимих альтернатив, що задається нерівностями #,(х,а,;,а/2,...,аг,,)<0,/ = 1,т з точно відо- мими значеннями параметрів січ. Функція <р{х,г) і звичайний порядок (>) на числовій осі генеру- ють на множині альтернатив X узагальнене н.в.п. вигляду //: 7(х),х2) = зир тіп{(з(г,.2),<фг?,у)} = 17.0.11) = зиртіп{ зир /(с), зир /(є)}. ;,ЛеЯ еЄ(>І.г) «-Р1Т..О Нехай ц"й(х)~ відповідна множина недомінованих альтернатив у множині X з н.в.п. Г]. Виберемо деяке число а з інтервалу 0<а<1 і розглянемо задачу відшукання альтернативи, ступінь недомінова- ності якої, не менший за а, тобто Вважатимемо, що всі вихідні нечіткі множини /у(с7) такі, що 5ир^ (г )>а = Ї77Ї, і пока- жемо, що при цьому функція <р(х.г) мас таку властивість: зир^(х,г) > а,Х/х є X - (9.6.12) гей' Припустимо супротивне: знайдеться такий х є X , для якого зир<р(.г,г) = (1 < а (9.6.13) г Це означає (див. (9.5.15)), що для будь-якого гєЛ і будь-якого с є виконується нерівність: /(с) < сі < а. (9.6.14) Виберемо довільне число с з інтервалу 0 < £ < а сі і нехай ?,,у = 1,п такі, що Хі(сі)>а-£- Одержимо: /(с) = тіп//?,)>«-£. 27*** 635
іаичснко Ю.П. Разом з тим для г = Цх,сі,сг,...,с„) виконується умова сє(?(х,г). Однак у силу вибору £ нерівність (9 6.14) не викснуєіься для г є Я1 1 С = (>(Х,Г), отже, не виконується нерівність (9.6.13). Таким чином, якщо всі задані нечіткі множини с^такі, що мають ьир% (с )>«• ю виконуються всі умови теореми 9.4 і тому для зна- < . ходження альтернатив, ступінь недомінованості яких не нижчий ніж а, досить розв’язати таку задачу: максимізувати г, (9.6.15) при обмеженнях /)>«, __ (9 6 16) £,(х,а,(,...,аіл)< 0,і -= 1,т,гє Я‘. Припустимо, що множина X компактна, ^(су), у = 1,л неперервні на Я , функція /(х,с.,,с2,...,с„) також неперервна на добутку X хЯ”. Неважко показати, що при цих умовах задача (9.6.15), (9.6.16) екві- валентна такій задачі [20]: максимізувати /(х.СрС,,...,^), (9.6.17) при обмеженнях: Х,(с,) >а; _______________________ (9.6.18) £,(х,ял,...,а,„)<0,і = 1,»і. Справді, нехай пара (х°,г°) - розв’язок задачі (9.6.15), (9.6.16). Згідно із зробленими вище припущеннями функція /(с) неперервна па Я", а множина замкнена в Я1. Нехай с° єр(х,г) такий ве- ктор, що /(с0)^». Тоді згідно з визначенням множини £?(х.г) одер- жимо, що /(х°,с°,с2,...,с°) = г°. Припустимо, що (х°,с°) не є розв'я- зком задачі (9.6.17), тобто знайдуться (х',с’) , що задовольняють (9.6.18), такі, що /(х',с1 ,єт ,...,сн ) = г'> г° . Це означає, що с'є(7(х',г’) та <р(х\г') > а , тобто пара (х',г') задовольняє обмеження (9.6.16). Однак годі неможливо г'>г°, оскільки (х°,г0)- розв’язок задачі (9.6.15). 636
Дослідження операцій Аналогічно можна показати, що будь-який розв’язок задачі (9.6.17), (9.6.18) є також розв’язком задачі (9 6.15). 2. Розглянемо загальну задачу НМП, в якій нечітко задані як па- раметри Сі функції /(х), так і параметри обмежень (9.6.5). Як по- казано вище, цю задачу можна записати у вигляді (9.6.15), (9 6 16). Перш за все зазначимо, що в розі лядуваній задачі вибір альтер- натив має здійснюватися з урахуванням двох відношень: нечіткого, індукованого функцією <р(х,г) (9.6.8), і чіткого, індукованого функ- цією р( (х) та звичайним порядком на К . Як було показано в розд. 9.5, функція «?(х,г) і звичайний порядок (>) на /?' індукують на X нечітке відношення переваги вигляду: 71(х,,х2)= зир тіп{^(х(,у),<р(хг,-г)}. (9.6.19) О~)єЯ' >>- Друге відношення на X визначається тим, що переважатимуть альтернагиви, які мають більший ступінь допустимості, тобто ті, яким відповідають більші значення функції. Таким чином, (\,прн Дс(х,)> рс(х2); ^?(х1,х2) = < іО.при рс(х,)<рс(х2). Задачі такого типу розглянуто в розд. 9.4, де запропоновано про- цедуру побудови підмножини недомінованих альтернатив за наявно- сті декількох критеріїв (відношень переваги). Відповідно до неї по- трібно побудувати дві згортки з вихідних н.в.п. р, та іу2 - їх перетин та зважену суму. Перетин відношень /у,, /у2 має вигляд: &(хі,Х2) = тіп(/у1(х1,х2),^2(Хі,х2)}. (9.6.20) Зважена сума (критеріїв) при умові рівності вагових коефіцієнтів відношень іу, , /у,: С2(х1>х2) = уІ'71<*1-х2) + '72(*1,*2)]- (9.6.21) Нехай , 02<,(х)_ нечіткі підмножини недомінованих альте- рнатив множин (х,2і) , (х,02) відповідно. Тоді результуюча під- множина недомінованих альтернатив мас вигляд. р"гі(х) = тіп{0І"',(х):СГ (х)| (9.6.22) 637
Зайченко Ю.П. Функція належності (?'"’(х) і служить основою для вибору конк- ретних альтернатив у загальній задачі НМП. У цій задачі, як і раніше, практичний інтерес становить питання про відшукання альтернатив х є X , для яких (2""(х) > а , де а є [0;1 ]. Однак для спрощення спочатку розілянемо задачу відшукання ч.нд. альтернатив (тобто таких, для яких Ояі\х) = 1 а = 1). Отже, розглянемо задачу знаходження ч.нд. альтернативи, для якої £>'"*(х) - 1 - Із (9.6 22) одержимо, що для цього необхідним і достатнім є ви- конання умов р|'",(х) = 1 ,(32"д(х) = 1. З’ясуємо спочатку умови, за яких х є ч.нд. альтернатива на мно- жині (х,£2]), тобто коли (х) = 1. Якщо вихідні нечіткі МНОЖИНИ /Дср.у = 1,л нормальні, тобто коли 5ир//(с/) = 1, то, як показано вище, при а - 1 функція р(х,г) в 9 (9.6.8) має властивість 5ир<о(х,г) = 1 при довільному х є X . гєК’ Звідси, з теореми 9.2, випливає, що н.в.п. - сильно лінійне від- ношення. Неважко побачити, що т]2 - також сильно лінійне відношен- ня. Однак їх перетин ()} цієї властивості у загальному випадку не має. Нехай А'™'’-підмножина всіх ч.нд. альтернатив множини (х,іу,), тобто множина всіх х° є X, для яких рівність т?2(х0,х) = 1 виконуєть- ся при будь-якому х є X . Можна показати, що ч.нд. альтернативи множини (х,р,) досить шукати серед альтернатив множини Х2"д . Нехай ()? - нечітке відношення строгої переваги, яке відповідає н.в.п. (), і х0 є Х2"д . Покажемо, що £7^(х,хо) = О при довільному х0 є Х2‘" Припустимо супротивне, тобто, що знайдеться така альте- рнатива х, я Х2Н>, для якої £>/(Хі,х0) > 0> тобто: тіп{і;1(хІ,хп),^(хІ,х0)) тіп{^І(х0,хІ),72(х0,хІ)}>0. (9.6.23) 638
Дослідження операцій Однак, оскільки х, й Х'"'а , а х0 є Х™6, то т;2(хІ,хо) = О і нерів- ність (9 6.23) неможлива, тобто виконується Сі5(х,х0) = 0 Таким чином, жодна альтернатива х й Х™6 не домінує із строго додатнім ступенем альтернативи із множини Х™Л. Покажемо тепер, що коли х0 - ч.нд альтернатива в множині (АЧ""’,;; ) (тобто на множині %2""1 стосовно т]х), го вона є такою і в множині (Х,О|). Справді, як показано вище, при цьому (?]5(х,хо) = О для довіль- ного х й Х™6 с X . Нехай х є Х2'"’, тоді із того, що х0~ ч.нд. альтернатива в множині (Х*,Г] ) 1 Г], - сильно лінійне н.в п , одержимо згідно з теоремою 9.3, що 71(х0,х) = 1. Крім того, 72(х0,х) = 1, оскільки х0єА7'"’- Звідси, робимо ви- сновок, що нерівність 0.х(х,хо) = тіп{7І(х,х()),772(х,хо)}-тіпі^ДХо.х), 72(х0,х)} > 0 неможлива. Отже, коли х0 вибрано вищеописаним способом, то рівність 215(х,хо) = О виконується для будь-якого х є X , значить х0- ч.нд. альтернатива в множині (X, (?]). Таким чином, щоб знайти ч.нд. альтернативу в множині X з н.в.п. ві достатньо знайти ч.нд. альтернативу в множині з н.в.п тц. Нехай вихідні нечіткі множини (аДі = 1,лі,у = 1,л такі, що іс- нують ’о°), для яких і/(/(о°,;) = 1. При цьому множину Х2"л склада- ють альтернативи, які задовольняють умовам: й, (х.о,], а,2,..., аІп) < 0,і = 1, т, ’'у (ву) = 1,/ = 1, лі, і = 1, п (9.6.24) Задача відшукання ч. нд. альтернативи аналогічна задачі, розгля- нутій у н. 1. цього розділу 639
Зайченко Ю.П. Якщо виконуються введені в ній припущення (компактність множини X, неперервність функції / ), то маємо таку задачу знахо- дження ч.нд. альтернативи в множині [20:37]: максимізувати /(х,с1,с2,. .,с„), (9.6.25) при обмеженнях- £, (х, я(1, аі2,..., я,„) < 0, я,у є А1, = = (9.6.26) Иу(Яу)=],г = ],лг,/ = 1,п Будь-який розв’язок х® є X задачі (9.6.25), (9.6.26) є ч.нд. альте- рнатива в множині (.¥,£);), водночас він є ч.нд. альтернативою в множинах (А',//,) та (X,у2) • Покажемо, що будь-який розв’язок цієї задачі є ч.нд. альтернатива і в множині (х,(?2). Дійсно, нечітка підмножина недомінованих альтернатив множи- ни А" з н.в.п. ^2 має вигляд: £>" ” (х) = 1 - ^-зирі^ (у, х) - т]. (х, у)] + [т]2 (у, х) - г]г (х, у)]. (9.6.27) 2 у Нехай х® розв’язок задачі (9.6.25), (9.6.26). Тоді, оскільки х"- ч.нд. альтернатива в (х,(?,), то при будь-якому уєХ виконується умова ^(у,х®) = 0, або (у,х°) —17,(х°,у>< 0 . Крім того х°- ч.нд. альтернатива і в множині (х,г]2), отже, при довільному у є АГ вико- нується умова ;/2(у,х®) = 0 або 72(у,х°)->7,(х0,у)<0. Із двох останніх варіантів випливає, що в (9.6.27)- 8чр[ Пх (У, х°) - 7, (х", у ) -г г]2 (у, х°) - т?2 (х°, у)] = 0. (9.6.28). Отже, (?2^(х®) = 1. Таким чином, будь-який розв’язок задачі (9.6.25), (9.6.26) задово- льняє умови, (?|,й(х®) = 1 ,(?2"’(х°)= 1, тобто х"- ч.нд. альтернатива для вихідної загальної задачі НМП. 640
Дослідження операцій Наявність в одержаній задачі НМП (9.6.25), (9.6.26) обмежень ви- гляду /7(су) = = І означає, що для відшукання ч.нд. альтер- натив у вихідній задачі достатньо враховувати лише ті зі значень па- раметрів, які напевно, тобто із ступенем 1, належать відповідним не- чітким множинам. Тобто, якщо шукати лише ч.нд. альтернативи, то при формулюванні вихідної задачі можна не вимагати повного опису нечітких множин значень параметрів, а обмежитися лише значення- ми з інтервалів їх значень, які із ступенем 1 належать до цих множин. Аналогічні міркування приводять до висновку, що для знахо- дження альтернативи, яка має ступінь недомінованості не нижче за «(тобто //"^(х0)>« ) достатньо розв’язати таку задачу математич- ного програмування [20]: максимізувати /(х.с,,с,,....с„), (9.6.29) при обмеженнях (9.6.30): (х,..,«,„)<0,^/ є /?’; (9.6.30) //(с/)>а,у = 1,л; (9.6.31) Уу (ау )>а,і = \, пі, у = 1, л. Розв’язання задачі типу (9.6.29)-(9.6.31) дає змогу визначити ли- ше деякі з недомінованих альтернатив із відповідним ступенем а для вихідної загальної задачі НМП. Можна показати, що ще один спосіб знаходження недомінованих альтернатив із ступенем а полягає в розв’язанні такої задачі (так званої задачі «песиміста»; знайти шах тіл , (9.6.32) при обмеженнях: (9.6.30), (9.6.31). Отримане в цій задачі значенні функції /(х,с)- це найбільш обе- режна («гарантована») оцінка альтернатив, недомінованих із ступе- нем, не меншим, ніж а, а відповідне значення [ в задачі (9.6.29)- (9.6.31) — найменш обережна («оптимістична») оцінка. Інтервал між 641
іайчснко Ю.П. цими оцінками дас змогу судити про можливі значення функції /(х) при виборі альтернатив, недомінованих із ступенем а. Приклад 9.14. Нехай погрібно максимізувати £е,л,. (1) 7-І при обмеженнях: ЇХ»', । = і.»і , (2) 5 0,7 = !./>, (3) причому змінні с, - нечіткі параметри з функціями належності //(е і = ——. / =1.п. І + (с,-с ) Потрібно розв’язати відповідну задачу НМП, за умов '(»•)> 0.8, користуючись співвідношеннями (9.6.18): максимізувати /'(х,о , (4) Г-1 при обмеженнях (2) та А(с,) =---к^_>о.8,7=й. (5) 1 + (с, -с,)2 ' Обмеження (5) записують у такому еквівалентному виглядг (Су - с,)’< 0.25 або с7-05<с(<с +0.5 (6) Отже, задача зводиться до задачі параметричного програмуван- ня і може бути розв’язана відомими методами. Приклад 9.15. Розв’язати таку задачу НМП: максимізувати ХСУЛ'/ , (1) /=і при обмеженнях: ^-' = І «' , (2) г; >0,7 = 1,», (3) де змінні с,,а„ - нечіткі параметри з функціями належності д,(с,і та '•',(«„) , де 642
Дослиіження операцій я,(і ) е.хр с )’ 2/і' Необхідно знайти множину альтернатив, що не домінуються із ступенем а 075 Відповідна задача МП записується у вигляді (1)-(3) з додатко- вими обмеженнями вигляду. д,(с,) = ехр > 0.75, / = 1,л ’ (4) > (« ) ---1 — > 0 75 (5) І + («„ - а„ )‘ Після нескладних перетворень обмеження (4), (5) зводяться до виїляду: —-----~>Іп075----> -Л, 72 ІП 1.33 + $ с, < гу + />, 72 Іп І 33. / Б?; (6) а„ 7оЗЗ<«,;<«„+7оЗЗ . (7) Далі .можливо вибрати будь-які значення і з інтервалів (6), а з інтервалів (7). Отже, дана задача, як і попередня, приводиться до задачі ЛП з параметрами. Приклад 9.16. Для випуску продукції/ = 1,2, 3 три підприємства і - 1, 2, 3 використовують два види ресурсів к = 1,2, відповідно у об’ємах Ь\ = 250, 6’ = 150, /?’ = 100, Ь'г = 200, Ь'3 - 240 , = 300. Нехай норми витрат кожного ресурсу на /-му підприємстві для виготов існня /-Ї продукції - нечітка множина в інтервалі [у*,/?*] із функцією приналежності: =ехр---------- Собівартість виготовлення у-ї продукції на 7-му підприємстві також нечітка із функцією приналежності* 643
Зайченко Ю.П Підприємство 7=1 2=2 /=3 —1 а,\ —1 а,\ — 2 а,\ —2 а„ —з Л/1 —3 67/1 1 2 4 1 2 3 4 2 1.5 5 2 2.5 2 3 3 3 2 2 3 3 4 Підприємство 7=1 __ 7=2 7=3 1 4 8 5 2 4 6 7 3 3 7 5 Нехай виробничий план випуску виробів п} = 360 од. , П2 =170 од., П3 - 250 од. Скласти математичну модель і знайти оптимальну спеціаліза- цію виробництва, при якому мінімізується сумарна собівартість ви- робництва виробів при заданому плані. Записати підмножину не до- мінуючих альтернатив зі степенем а = 0.75. Разе ’язання: Нехай хц - обсяі випуску продукції у на і-му підприємстві. Тоді математична модель матиме вигляд’ тіпЕЕ\ і=| /=| при обмеженнях: Х^>/77, У = 13, 1=1 х„>0- Да,,)>0.75, ДС„ )> 0.75- 644
Дослідження операцій Д (а.) = ехр 2'Г'") > 0.75 - >1п0.75> 2 - , 14 («„ «„)- < 21п0 75 = 21п-= 21п —, " 0.75 З І 4 - І 4 ац - ^21п — < я(/ < а„ + Л21п — • Г,(С,)=—-- 2— >0.75> 2 + (с,-сД 0.5>0.75(Су-С,7)2, Задача песиміста: Задача оптиміста А' = (1-г)хлс, +гхпят, г є [0;1]. 645
іаиченко Ю.П. 9.7. БАГАТОКРИТЕРІАЛЬНІ ЗАДАЧІ ЛП З НЕЧІТКИМИ ЦІЛЬОВИМИ ФУНКЦІЯМИ Однокритеріальні задачі ПР з інтервально-заданими нечіткими параметрами цільових функцій Нехай задача прийняття рішень з декількома критеріями зводиться до багатокритеріальної задачі лінійного проірамування (МК ЛП-задача) такого вигляду: тахг =У\с х = с]х,і = \,К, (9-7.1) за умов: Ах<В; (9.7.2) х>0. (9.7.3) де ВСІ коефіцієнти ЦІЛЬОВИХ функцій Сі, є нечіткими числами, заданими на інтервалі с.. є [с,-, суі/]- Розглянемо спочатку випадок, коли ЛПР невідома функція приналежності (ФП) нечіткого параметра а відомі лише кінці інтервалу, нижній - Су/ і верхній с„„ Для такого ступеня інфор- мованої! ЛПР пропонується такий метод рішення [20]. Складаємо і розв’язуємо так звану задачу «песиміста» вигляду: тах г, = = с/х, (9-7.4) ;=і за умов- Ах<В; (9.7.5) х>0 (9.7.6) Знайдене її рішення позначимо через у*, а оптимальне значення ц Ф- =г,(х,'І = 2І. Одночасно розв’язуємо відповідну задачу мінімізації: тіпг,(х) = г,< (9.7.7) за умов (9.7.5), (9 7.6). 646
_______________________________________________Дос лідження операцій Потім розв’язуємо так звану задачу «оптиміста» (для найкращих умов зовнішнього середовища) тахг„(у) = ]Гс(11х( =с,)х, (9.7.8) за умов (9 7 5), (9.7.6) і знайдемо оптимальне її рішення, / а також 2* =тахіи(х) Далі визначаємо нижню границю критерію оптиміста: гі = тіпг„(х) , (9.7.9) за умов (9.7.5), (9.7.6). Тоді задачу знаходження оптимального рішення в умовах з інтервально-заданими параметрами цільової функції можна звести до задачі знаходження компромісного рішення наступної багатокритеріальної задачі: І г,(х) = с,тх тах1 [2„(х) = с> (9 7.10) за умов (9 7.2), (9.7.3). Для знаходження її рішення застосуємо такий підхід. Перейдемо від критерію 2,(х) до нечіткого критерію ^,(х) з функцією приналежності, що задається так: 0, якщо г7(х)<’(; якщо г, <г,(х)<г('; (9.7 10) І.якшо г,(х)>г’ Аналогічним чином для критерію оптимальності 2„(х), перейде- мо до нечіткої ц.ф. з ФП /и(х), яка визначається так 647
Заиченко Ю П. Ш = О, якнр гс(х)<г,( —-----= ,ЯЮ1Р 2„ <2и(х)<2и 2 ~2 — (9.7.12) 1,ЯКНС 2Дх)>2^ Далі застосовуємо підхід Белмана-Заде і шукаємо таке компромісне рішення х’, для якого: тіп{/(х),/Дх)}->тах, (9.7.13) за умов (9.7.2), (9.7.3). Дану мінімаксну задачу можна записати в такому еквівалентному вигляді: тах71 (9.7.14) за умов: ; (9.7.15) Ах<В; (9.7.16) х>0. (9.7.17) Величина Я°(/1 є [0,1]) характеризує досягнутий ступінь задоволення кожного з нечітких критеріїв (у и /и )• Задача ЛП з нечіткими параметрами критеріїв з відомими функціями приналежності Розглянемо тепер випадок більшої інформованості ЛПР про нечіткі параметри. Нехай ЛПР відома функція приналежності Дч(с0) неч'тких параметрів с Тоді він може задатися деяким рівнем а (« є (0,1)) і визначити підмножину рівня а си нечіткого числа 648
Дослідження операцій Тоді можна сформувати два критерія-песиміста :а(Х) для лівого кінця інтервалу і оптиміста - -“(Х) Для правого кінця інтервалу, і перейти до розв’язання двохкрисеріальної задачі вигляду: >(х) = с,“1х' тах <(х)=<’х Для знаходження найкращого компромісного рішення цієї задачі необхідно перейти до лінійної задачі вигляду: тах А., (9.7.18) за умов: Цг? -г.а)-г.а(х)<-г.а ' І (9.7.19) Ах<В; (9.7.20) х>0. (9.7.21) Вона с звичайною ЛП-задачею і розв’язується стандартними методами ЛП (симплекс-методом, методом зворотньої матриці і т.д.). За необхідності більш повного обліку інформації про вигляд ФП /Дс;), ЛПР може задатися декількома рівнями а а1,а3 ак, і тоді обмеження мінімаксної задачі (9.7.18) запишуться у вигляді: (9.7.22) Тобто отримаємо 2К. обмежень (зазвичай К = 3,4). 28і 649
Зайченко Ю.П. Багатокршперіальна задача ЛП з нечіткими параметрами в цільовій функції Розглянемо тепер загальний випадок МК ЛП-задачі з нечіткими п.ф. Вона запишеться у вигляді: тах сІхі = с' х, і = 1 ,к , н (9 7.23) за умов: Ах<В; (9.7.; х>0. де <?,7 - нечіткі числа з відомими ФП рч {сч). Задамося декількома рівнями а а,,а, ал і знайдемо відповідні інтервали невизначеності |"с"; ,с";]. Далі, використовуючи підхід, описаний у розділі, приводимо задачу (9.7.23), (9.7.24) до такої багатокритеріальної задачі: , і=1.К, при умові (9.7.24). Вона зводиться до такої однокритеріальної задачі: тах 2. (9.7.25) за умов: (9.7.26) Ах<В х>0 (9.7 27) 650
Дослідження операцій Відмітимо, що число додаваємих обмежень вигляду (9.7.26) складає 2К*К, тому число рівнів а нечітких чисел варто обмежувати В.=2-4. Приклад 9.17 В якості ілюстрації розглянемо таку багатокритеріальну ЛП-зада- чу з нечіткими цільовими функціями: тах (х) = с„х, + е12х2; (1) тах А, (л) = с2ІХ| + с22х2, (2) за умов: х,+х2>7 —2х, +х2 <4 х2 <10 х, + 2х2 < 24 (3) х,,х2>0, (4) де о,, нечіткі множини з функціями приналежності /л(сІГ ) =------=—. > + (£<,-с,)2 сч = 1; с|2 = 4; = 3; сгі = -2 Знайти найкращий компромісний розв’язок для рівня а = 0,8. Розв’язуємо задачу ірафоаналітично. Побудуємо область допустимих рішень, яка визначається за умови (3) і (4). Вона приведена на рис. 9.10. Знаходимо крайні точки ОДР та їх координати: А (1 ;6); В (3; 10); С(4; 10); Б (18;3); Е (6; 1). 28* 651
Зайченко Ю.П. Розв язусмо нерівності і знаходимо інтервали приналежності рівня а - 0,8 для нечітких коефіцієнтів с,,. 2 м -*,с- ‘ -<•1 Сц - 0,5 < с,( < с,7 + 0,5. Таким чином, знаходимо інтервали для с,р 0.5 <си <1,5; 3,5<с12<4,5; 2,5<с„<3,5; -2,5<с22 <-1,5. Виписуємо критерії песиміста і оптиміста; 2П = 0.5х,+3,5х2; =І.5х, -г4,5х2, Х2Ь =2,5х, -2,5х,; =3,5х, -1,5х, Розв’язуємо графічно задачі. 652
Досіідження операцій шах 7„ (х) = 7,и (С) = 2 + 35 = 37; тах 7„ (х) = 7„ (0 = 51; тах 7г/(х) = 7и(Л) = 37,5; тах 7И (х) = 7И (£>) = 58,5; тіп (х) = 7„ (Е) = 6,5; тіп7„ (х) = 7„ (Е) = 10,5, тіп72, (х) = 72, (В) = -17,5, тіп72, (х) = 72, (В) = -4,5. Тепер запишемо задачу знаходження компромісного рішення: тах А, за умов (37-6,5)2-(0,5х, + 3,5х2)<-6.5: (51-10.5)2-(1.5х,+4,5х2) <-10,5: (37,5 +17,5)2 - (2,5х, - 2,5х,) < 17,5; (58,5+4,5)2-(3.5х,-1.5х,)<4,5. і умовах (3) і (4); або: 30,52 - (0,5х, + 3,5х,) < -6,5, 40,52-(1,5х, + 4,5х,)<-10,5, 552-(2,5х,-2,5х,)< 17,5; 632-(3,5х, -1,5х2)<4.5. Розв’язуємо дану задачу симплекс-методом і знаходимо найкраще компромісне рішення, яке максимізує X. Зауважимо, що оскільки максимальні значення критеріїв досягаються в точках С і Б, то компромісне рішення належить відрізку СО, тобто лежить на прямій х/+2х:=24, і шукана точка Р може бути в цьому випадку знайдена графоаналітично. Виключивши одну змінну (х,) приходимо до системи нерівностей з двома змінними: X і х? і, побудувавши область допустимих рішень, знайдемо значення Лтак=0.606 і шукане компромісне рішення х, = 12;х" =6. Відповідна йому точка Р вказана на рис. 9.10. 282 653
Заііченко 10.11. 9.8. БАГАТОКРИТЕРИАЛЬНЕ НЕЛІНІЙНЕ ПРОГРАМУВАННЯ З НЕЧІТКИМИ ПАРАМЕТРАМИ У розд 9 7. розглянуто проблему нечіткої багатокритеріальної оптимізації в ЛП і описано підхід, який дас змогу вирішити її з використанням апарату нечітких множин. Розглянемо більш загальний випадок задач багатокритеріального нелінійного програмування (БКНП) з нечіткими параметрами. Пропонований підхід до її розв’язання використовує поняття Парсто- оптимальності а -рівня. Парето-оптимальність а-рівня У загальному випадку задачу БКНП можна записати у вигляді такої задачі векторної оптимізації: мінімізувати /(х) = [/1(х),/2(х),...,/л(х)]. (9.8.1) при обмеженнях: х є X = (х є ЯІИ),£у(х) < 0,у: = їли), (9.8.2) де х- п -вимірний вектор змінних розв’язку; 1/і(х),/2(х).. .,/*(х)]- А- різних цільових функцій; [Хі(х), .,£„,(х) < 0] - множина допустимих розв’язків (МДР). Центральним поняттям для задач багатокритеріальної оптимізації є поняття Парето-оптимального розв’язку. Нагадаємо, що вектор х є X називається Парето-отпимальним розв'язком задачі БКНП тоді і тільки тоді, коні не існує іншого вектора хєХ такого, що /(х)</дх’) для всіх і = \,к. причому хоча б для одного і це обмеження виконується строго. На практиці часто-густо в значеннях параметрів цільових функцій та обмежень трапляються неоднозначності, що відображають неповноту знань експертів про реальне середовище. Тоді доцільно розглядати БКНП з нечіткими параметрами в описі цільових функцій та обмежень: мінімізувати /(х,а) = 1/,(х,а, ),/2(х,а2),...,/Дх,ап)], (9.8.3) 654
Дослідження операцій при обмеженнях: х є Х(Ь) = {х є Е",%Дх,Ь) < 0,у = 1, лі}. Щр) Рис 9 11 де а; = [Ь)і,Ьі2,...,ЬІ, ] - вектори нечітких парамегрів, включених в цільову функцію /Дх,а,) та обмеження §/(х,Ьі) відповідно. Ці нечіткі параметри вважаються нечіткими числами, що були введені Дюбуа та Прейдом [60]. Означення 9.26. Нечітке число Р - це опукла неперервна нечітка підмножина чисювої осі, функція визначається таким чином [20]. 1) р(р):Е}---->[0;1]; 2) р(р) = 0 для всіх рє(-со;рД; 3) р(р) - строго зростаюча функція на проміжку [рІ;р2] ; 4) р{р} = \ для всіх ре[Рг,Рі]; 5) р(р) — строго спадна функція на проміжку [ру,рА ]; 6) //(р)-0 для всіх рє(рЛ;со), де рі - дійсні числа такі, що р, < р2 < р2 < р4 . Можливий вигляд функції належності для нечіткого числа наведено на рис. 9.11. Припустимо далі, що аІГ,Ь}І в нечіткому БКНП с нечіткі числа з функціями належності р(а1г),р(6(/) відповідно. Для спрощення позначень визначимо такі вектори та матрицг а. =[а,і>а,2.-.«ф,КЬі = [й/І,Л/,,...,д/Д; А =[аІ,а2,...,а4];В = [Ь,,Ь2.Ь„,]. належності р(р) якої Тоді можна ввести множину а рівня або а-перетин нечітких чисел д„ та Ь/5. Означення 9.27. Множиною рівня а нечітких чисел аІГ(і = \,к,г = \,р,) та Ь/5(Д =\,т,ь = ],</Д зветься множина £и(а,Ь), для якої ступінь належності всіх ечеиентів не нижчий за величину а, тобто: 28** 655
іаиченко Ю.П. (9.8.4) Множини рівня а мають таку властивість: а, < аг тоді і тільки тоді, коли Ьо (а, Ь) о Ьа (а,Ь). Отже, для деякого заданого значення а-задача нечіткого БКНП може трактуватися як така а - БКНП задача вигляду: мінімізувати /(х,а) = [/І(х,а1),/2(х,а2),...,/А(х,ак)], (9.8.5) при обмеженні: х є Х(Ь) = {х є Е" | £у(х,Ьр < О.у = 1дй,(а,Ь) є 6й(а,Ь)}. (9.8.6) Підкреслимо, що в а-БКНП задачі параметри (а,Ь) розглядають- ся як змінні, а не як константи. Використовуючи множини рівня а нечітких чисел, введемо поняття Парето- оптимальних розв’язків для нечітких а - БКНП задач [20, 62]. Означення 9.28. Вектор х'єА'(Ь’) називають а-Парето- оптимальним розв'язком задачі (9.8.5), (9.8.6) тоді і тільки тоді, коли не існує іншого х є А'(Ь),(а,Ь) є Д„(а,6) такого, що /,(х,аі)</,(х*,аі‘),/ = й. (9.8.7) і строга нерівність виконується хоча б для одного і, де відповідні величини параметрів (а ,Ь*) звуться оптимальними параметрами рівня а. Із властивостей множини рівня а випливає таке твердження. Нехай х‘,х2 - Парето-оптимальні розв’язки рівнів а, та аг відповідно, (а‘,61), (а2,Ь2) - відповідні оптимальні параметри рівня «, та а2 задачі БКНП. Якщоа( >а2, то існують х2 та (а2,Ь2) такі, що /(х,а* )>/(х,а2) для довільного х1 та (а1,!)1). Як випливає з цього означення, як правило а-Парето-оптимальні розв’язки складаються з нескінченної множини точок і ОПР повинна вибрати свій компроміс або задовільний розв’язок серед а-Парето-опти- мальних розв’язків, основаних на своїх суб’єктивних уявленнях. 656
Дослідження операцій Щоб відшукати «кандидата» на задовільний розв'язок (який є також і Парето-оптимальним) звертаються до ОПР з проханням визначити ступінь а для множини а-рівня, а також еталонні рівні досягнення значень ц.ф., які називаються «еталонними» рівнями. Для заданих ОПР ступеня а та еталонних рівнів відповідний а -Парего-оптимальний розв’язок, який відповідає вимогам ОПР (або кращий за них при умові, іцо еталонні рівні досяжні), отримують шляхом розв’язання такої мінімаксної задачі (у припущенні, що різниці [^(х.а;)-/, ] однаково важливі для ОПР): знайти тіп тах[ 6 (х,а=)-/.], хєА(Ь) і (9.8.7) або еквівалентно: мінімізувати &, (9.8.8) при обмеженнях: [/(х,а,)-7]< 5,І = І7, (9.8.9) (а,Ь)є ЬДа.Ь), * є Х(Ь) . (9.8.10) Слід підкреслити, що мінімаксна задача використовується як засіб генерації а-Парето-оптимальних розв’язків і, якшо ОПР не вдоволена поточним а-Парето-оптимальним розв’язком, то можна поліпшити цей розв’язок коригуванням його еталонних рівнів. Взаємозв’язки між оптимальними розв’язками мінімаксної задачі і поняттям а-Парето-оптимальних розв’язків задача БКНП описується такими теоремами [20, 62, 63]. Теорема 9.6. Якщо (х*,5*,а*,Ь ) - єдиний оптимальний розв'язок мінімаксної задачі для деякого / = [/],/?, , то тоді х* - а -Парето-оптимальний розв 'язок для а -БКНП задачі. Доведення Припустимо, що х не є а -Парето-оптимальним розв’язком задачі БКНП. Тоді існує х є А (Ь) (причому (а,Ь) є ї.„(а,Ь)) такий, що/,(х,а;) < /,(х*,а*). 28’ 657
Зайченко Ю.П. Звідси випливас: тах[/,(х,аі)--/,]<тах[/,(х,а')-/], а це і І суперечить припущенню, що (х ,і9 .а ,Ь ) - єдиний оптимальний розв’язок мінімаксної задачі. Звідси х* а Парего-оптимальний розв’язок а - БКНП задачі. Теорема 9.7. Якіцо х -а -Парето-оптимальний розв'язок і (а ,Ь ) - оптимальні параметри а-рівня в а-БКНП задачі, то існує вектор / = [/|,/2, -,/к\ такий, що (х’,,9”,а’,ь’) - оптимальний розв ’язок мінімаксної задачі. Доведення. Припустимо, що (х*,<9*,а*,Ь*) - не оптимальний розв’язок мінімаксної задачі для довільного /, що задовольняє умові- /іїх'Х)-/! = ... = /А(х.а'к)-Д = <9*. Тоді існують хє/(Ь) та (а,Ь) є і„(а,Ь) такі, що тах [/, (х,а,) - /, ] < тах [/, (х*,а^)-/,] = и*. І і Звідси випливас: тах{/(х,а( )-/(*',а*)} <0. І£/<А Якщо будь-яка різниця /"(х,а, )-/.(х*,а‘) додатна або дорівнює 0, то ця нерівність не виконуватиметься. Звідси має виконуватися /(х,а )-/(х‘,а‘), <0, Що суперечить припущенню про те, що х*-а- Парето-оптимальний розв’язок і (а*,Ь*) - оптимальні параметри а - рівня. Отже, теорему доведено. Якщо ж оптимальний розв’язок мінімаксної задачі (х‘,<9*,а*,Ь*) не єдиний, то можна перевірити а -Парето-оптимальність для х *, розв’язавши таку задачу: А знайти шах еі . (9.8.11) /=і при обмеженнях: 658
Дослідження операцій /і(х,иі) + еі -/(х',яі ),еі >0,і = І,к: х є Л"(Ь),(а,Ь)є Ло(а,Ь) (9.8.12) Нехай (х,а,Ь) - оптимальний розв’язок задачі (9.8 11), (9.8 12). Якщо всі є, = 0, то х*- а-Парето-оптимальний розв’язок. Якщо ж хоча б одне еі >0, то можна легко показати, що х є а-Парето- опгимальним. Інтерактивний алгоритм пошуку Парето-оптимальних рішень задачі БКНП Опишемо інтерактивний алгоритм для пошуку рішень із множини а -Парето-оптимальних рішень, задовольняючих ЛПР. КРОК 1. Обчислити індивідуальний мінімум і максимум для кожної цільової функції /(х) при заданих обмеженнях для а =0 та а = 1. КРОК 2. Запропонувати ЛПР обрати початкове значення а (0 < а <. 1) і початкові еталонні рівні /., і = 1 ,к . КРОК 3. Для обраних значень а, розв'язати мінімаксну задачу і виконати тест на перевірку а -Парето-оптимальності. КРОК 4. Повідомити ЛПР відповідне а -Парето-оптимальне рішення та рівні заміщення (обміну) між цільовою функцією та ступенем а. Якщо ЛПР задоволений поточними значеннями цільової функції та а , то кінець. Інакше ЛПР може скоректувати еталонні рівні і (або) значення а , розглянувши поточне значення цільових функції та а разом з рівнями (величинами) заміщення між ц.ф. та а . га повернутись до кроку 3. Слід підкреслити для ЛПР, що: 1) будь-яке поліпшення однієї ц.ф. може бути досягнутий тільки за рахунок погіршення, принаймні, однієї з інших ц.ф. для деякого фіксованого а, 2) збільшення рівня а приводить до погіршення значень ц.ф. і'рн іеяких фіксованих значеннях еталонних рівнів [ . 28*** 659
Зайченкп Ю.П. Експериментальні дослідження алгоритму розв'язання задач БКНП Для експериментального дослідження інтерактивного алгоритму розв’язання задачі БКНП було вибрано таку задачу: тіп(х, а, ) = (.г, — аи)2 + (.г2 -а12 )2 + 5(л, - я13)2; (9.8.13) тіп/2(х,а2) = (л1 -10)2 а2| +(л2 + 5)2-а22 +2(х3 -а23)2,(9.8.14) при обмеженні: + Ь2х2 + і3х32 <100, (9.8.15) де й|,,а2,Л,і = 1,3 - нечіткі числа з функціями належності (ФН) грикутного вигляду з параметрами рі,р2,рі та р4, значення яких наводяться в табл. 9.19. Для знаходження розв’язку мінімаксної задачі вигляду (9.8.8> (9.8.10) використовується метод бар’єрних поверхонь (МБП), для застосування якого будується бар’єрна функція вигляду: /Хх,гА) = гА£---- 1 (9.8.16) і=1 &СчЛ) де к - номер поточної ітерації, р = 0.1,г0 = 5,
Дослідження операцій Таблиця 9.19 Нечіткі параметри Рі Р2 =Рз Рі ап 3.8 4.0 4.3 аІ2 48.5 50.0 52.0 «ІЗ 1.85 2.0 2.2 «21 18.2 20.0 22.5 °22 2.9 3.0 3.15 °23 4.7 5.0 5.35 0.9 1.0 1.1 А2 0.8 1.0 1.2 Л3 0.85 1.1 1.15 Умови зупинки алгоритму такі: де г = 10 4;хк - оптимальний розв’язок після к -ої ітерації. При оптимізації бар’єрної функції використовується градієнтний метод із змінним кроком. Експерименти проводилися при різних рівнях а. Як еталонні рівні використовувалися значення Д та , які задавала ОПР. У табл. 9.20 наводяться результати експериментальних досліджень у залежності від варіацій а та значень еталонних рівнів /і = 2000, /, = 2500. Тут та Е2 - досягнуті значення критеріїв /і ,/2, Л/1Г число ітерацій оптимізації. У наступних експериментах було досліджено вплив вибору нечітких параметрів і, з проміжку = Ао(Л) на область допустимих рішень (ОДР) та досягнуті значення критеріїв при а = 0.5. Звичайно, що при 6“ = 6“ одержимо максимальну ОДР, а при Ь, = Ь° - мінімальну. 66 і
Зайченко Ю.П. Таблиця 9.20 а Г, і9 = .г0 «і хг Н,т 0.50 1635 4 2133 9 -364.2 і 542 9.807 1.136 177 0.60 1657 2156 -342.0 1.507 9.714 1 1402 113 0.80 1702 2200 -297.9 1.443 9.5339 1.1454 120 Відповідні результати наведено в табл. 9.21 Таблиця 9.21 Вид експерту 6 & Збільшення ОДР 1589 2089 -409.8 Зменшення ОДР 1748 2248 -251 5 Проаналізувавши наведені експериментальні результати, приходимо до таких висновків. Збільшення рівня а призводить до погіршення досяїнутих значень критеріїв Л, та Рг, що зрозуміло, бо скорочується інтервал . на якому відшукуємо тіп/(х^). х,а( Збільшення ОДР приводить до поліпшення значень критеріїв, а зменшення навпаки - до зворотного ефекту. Зменшуючи задані значення еталонних рівнів та /2, можна досягти покращення значення відповідного критерію внаслідок оптимізації.
___________________________________________Дослідження операцій 9.9 АРИФМЕТИЧНІ ОПЕРАЦІЇ НАД НЕЧІТКИМИ ЧИСЛАМИ Нехай А і В два НЧ на 2Ґ з функціями приналежності Д4(а) , ає8А, 8Ас.Х та ДВ(Ь), Ьє8вс.Х відповідно, де 5'4,5'в область визначення (або носій) нечіткої множини А або У відповідно. Позначимо через ® одну з чотирьох арифметичних операцій (+,-,*,/). Скориставшись принципом узагальнення, одержимо таке визначення: Бінарною арифметичною операцією над НЧ є операція, яка визначається так: С=А®В= Ц тіп{//Да),//в(6)}, (9.9.1) знак 0 об’єднання в (9.9.1) потрібно розуміти буквально. Нехай А і В - два неперервні НЧ, носії яких є відрізками числової осі =|а,,а2], 8В = [1\,Ь2]. Нехай також 8С = {с: є = а ® Ь,а є 84,Ь є $в} - нечітке число, що є результатом операції а®Ь . У прийнятих позначеннях вираз (9.9.1) можна конкретизувати таким чином: с = Л®Я= ^//г(с)= тах тіп{//Да),//в(6)}. Алгоритм виконання операцій Опишемо чисельний алгоритм формування функції приналежності нечіткої множини С - результату операції над нечіткими числами. Завдання побудови НМ С виконуватимемо по наступній схемі. КРОК 1. Визначити множину 8С і дискретизувати її, виходячи з необхідної точності табличного представлення графіка функції /т(с). КРОК 2. Для кожного з одержаних с є 8С розв’язати задачу: с = а®Ь, ае[а,,а2], 6є[615/?2]. (9.9.2) 663
Зайченко Ю.П. Розв’язком задачі (9.9.2) для заданого с є назвемо множину 5“ с , таку то: (Уа є 5° )(ЗЬ є )(с = а ® Ь), (У а є У, \ 5° )(У6 є 5„ )(с * а ® Ь) КРОК 3. Дискретизуваги множину 5^, результатом дискретизації буде кінцевий ряд значень а, є 5°. Знайти Ь є 8В таке, що с = а ®ЬІ. Для аі,Ьі визначити //(а ) та //(£>). Обчислити: Д, = тіп[д(а,);д(&,)]; Я (ї) = тах[//ДЇ-1);//,]. Для і = 1 прирівняти /тг(0) = 0 . Нехай після дискретизації множини |5"| = «• Тоді /гг(с) = //(«) Твердження 1. При даному визначенні операцій над НЧ справедливі такі властивості операцій: 1 Комутативність додавання та множенная: (Х/А,В)(А +В = В + А); (УА,В)(А* В = В * А). 2. Асоціативність арифметичних операций: (УА, В,С)[А ® (В ® С) = (А ® В) ® С]. 3. Відсутність дистрибутивності множення щодо складання в загальному випадку: А х (В + О) = А х В + А х В]. Розглянемо реалізацію вищевикладеного алгоритму для різних ариф- метичних операцій. 1. Додавання. Вважатимемо, що <ЬГ Нехай а є В є $в. с = а + Ь. 664
Дослідження операцій Твердження 2. Позначимо аІ + />, = с,, аг+Ь2=с*. Тоді (\/а, Ь)(с > с+); (Х/а,Ь)(с<с"}. Вважатимемо с+=с(; с+-с2. Результат операції сє[с,,с2]. Твердження 3. Нехай сє8с, а = тах[а1,с-62], а = тіп[а,,с-61]. Тоді відрізок 5^ = [а ,а ] - рішення задачі (9.9.2) при заміні операції ® на + . При цьому функція приналежності для суми с-а+Ь дорівнює //Де), де дс(с) визначається співвідношенням: дс(с)= тах тіп{иДя),//в(Л)}. (9.9.3) (гм>)т/®Л=г 2. Віднімання. Враховуючи, що(Х/а,6 є ії')(а -Ь -а + (-Ь)) можна замінити нечітке число - віднімаюче В на протилежне В. за таким правилом: Я. = 0аД-/>), де 5Я. = При цьому НЧ С = А — В стає рівносильним А + В.. 3. Множення. Вважатимемо, щоо1<Л|. Інакше цього можна добитися перестановкою операндів Введемо позначення: =а, В,; а2 =а, -В2; а3 = а2 В,; а4 =а2 Ь2. Нехай с. - тіп а,. о ' Тоді: (Х/а є 8А)(Х/В є 8в)(а-В>с¥). Нехай с*=тах«і. Тоді: (Х/а є 5А)(Х/В є 8в)(а Ь <сД. Звідси випливає, що С) =с+ га с2=с" і 5С =(с|,с2). Розв’язок задачі (9.9.2) для операції множення полягає в такому твердженні. Твердження 4. Припустимо, що Л, > 0 і Ь2 > 0 або Л, < 0 і Ь2 < 0. 665
Зайченко Ю.П. с с Ь’Ь Нехай а = тах а.,тіп і а = тіп а2,тах с с Тоді 5\ =[л,а ] - розв’язок задачі (9.9.2) при операції множення. Твердження 5. Припустимо, що Ьі<0<Ь2 і Ой(П|,а2). Розіб’ємо відрізок 8В на два відрізка: 5д=[6,;0] та =[0;Л2]. Звідси слідує, що Нехай №, - розв’язок задачі (9 9.2) при 8В=8В, 5Л - розв’язок задачі при 8В = 82в. Тут припускається, що в обох випадках потрібно взяти із початкової задачі, а саме розв’язок 5'( та 5’ знайдені відповідно до твердження 4. Тоді 5° = 5 і, - розв’язок задачі (2) при заміні операції ® на *. 4. Ділення. Будемо вважати, що результат операції А! В не визначений, якщо 0 є 5В. Якщо 0 £ 8В, то враховуючи, що: (Уа,Ь є П)(а/Ь = а (1/6)), (9.9.4) замінимо знаменник В на обернений В.1 за таким правилом: в і=іМГіі*; і<=5„ (9.9.5) ^ = 1 далі скористаємося результатами, одержаними для множення. Важливо підкреслити, що для будь-яких НЧ А і В, функція приналежності яких задовольняє стандартним умовам, має місце нерівність. ЛхД'^І.де/г'^ —. А Зокрема, для прямого і зворотного НЧ це випливає з розгляду носія результату їх множення. Приклад 9.18 Розглянемо приклад виконання арифметичних операцій над дискретними НЧ А і В. нехай А і В задані в таблиці 9.22 та 9.23. 666
Дослідження операцій 1. С=А + В //С(с)= тах тіп{дА(а\,дв(Ь)}. (9.9.6) 5С, = [9;13]. Результати /ус (с) наведені в таблиці 9.24. 2. С2 = А-В В. = -В-8в = [-6;-4]; £С;=[-1;3]. Обчислюємо дс(с) = тах тіп{//Да);//д(&)},Х/с є 5Г і результа- аАг.а-Ь=с ти заносимо в таблицю 9.25. 3. С3 = Лх£; =[20;42]. Обчислюємо дс^(с)~ тах тіп]/<|(а);/7л(Л)[ і результати заноси- (і.Ь.а^Ь-с мо в таблицю 9.26. < С4 = Л/5 = Л*5"‘, де 5 1 =Ц;^;Д; 5 =[- = 0,833; -=1.75 . (6 5 4] 4 [б 4 Обчислюємо дс(е) = тах тіп{//4(а);/уй(/?)| і результати и.Ь.а 'Ь=с заносимо в таблицю 9.27. Таблиця 9.22 А 5 6 7 0.1 0.8 0.4 Таблиця 9.23 В 4 5 6 0.2 0.9 0.3 Таблиця 9.24 о 9 10 11 12 13 0 1 0.2 0.8 0.4 0.3 667
Зайченко Ю.П. Таблиця 9.25 с -1 0 1 2 3 Ас, (с) 0.1 0.2 0.8 0.4 0.3 Таблиця 9.26 с 20 24 25 28 ЗО 35 36 42 ^с. 0.1 0.2 0.1 0.2 0.8 0.4 0.3 0.3 Таблиця 9.27 с 0.83 1 1.17 1.22 1.25 1.4 1.5 1.75 Ас (с) 0.1 0.2 0.3 0.8 0.1 0.4 0.2 0.2 668
Дослідження операцій Наближений метод виконання арифметичних операцій над нечіткими числами Розглянемо наближений метод виконання арифметичних опера- цій над НЧ, який ґрунтується на використанні підмножин рівня а . ВИЗНАЧЕННЯ. Операція називається монотонною, якщо вона задовольняє таким співвідношенням: якщо а, <а2 і В, <Ь2, то^є, =а, ®Ь, <с2 = а2 ®Л2, та С] ©А, <с3 =а2 \/а,,а2 є Х/6,,62 є 5В. При цьому припускається, що аі > 0,6, > 0. До числа монотонних операцій належать додавання (+) та множення (*), а до не монотонних - віднімання (-) та ділення (/). Нехай задані два неперервних монотонних числа А та В, функція приналежності яких д\а) та дв(Ь) наведено на рис. 9.12. Для заданих значень а,, а2,...,а„ є (0;1] визначимо а, а к,а2к такі, що Д.Л«І|) = А4(«21) = «І Аналогічним чином для НЧ В і значень рівнів ак є [0; 1] визначимо: В В Фік ) = В В (^2* ) ~ ак Позначимо. сІ2 =а12®Л,,;...; си = аІк®Ьік С2і—а2і®^2і> С22 ~ агг ® Ь22,...', сгк — а2к ®В1к. Будемо виконувати монотонні операції над операндами НЧ А і В на вітках кривих функцій приналежності однакового характеру монотонності (монотонно зростаюча або монотонно спадна). 669
Зайченко Ю.П. Використовуючи властивість монотонних операцій, неважко дістати, що: Аг(си) = тах тіп{^(а);//в(6)} = а|; (9.9.7) Ас(сі*) = тах тіп{//,(н);//в(6)} =ак. п.о:с^к-а®Ь І, за аналогією: Дс(с2і)= тах тіп{//<(а);Ав(£)}=«,; п.Ь.с2ї-а®Ь Вс) = тах тіп{/у4(а);/уд(Л)} = . Д.ОХЧ* =«®О Приклад 9.19 Нехай задані два НЧ А ® 2, ~ 3 з функціями приналежності трикутного вигляду (див. рис. 9.13), що задані в таблицях 9.28 і 9.29. Користуючись співвідношенням (9.9.6), отримуємо: а) С] = А + В == 5 . Відповідна ФП НЧ С\ /лс наведена в таблиці 9.30; б) С2 = А - В. Оскільки операція немонотонна, то, як і раніше, замінимо —В на В. і перейдемо до операції +. Відповідна ФП НЧ С2 наведена в таблиці 9.31 та на рис. 9.13. в) С3 = А* В. Виконуючи операцію * над операндами а та Ь на вітках /г4(а) та /лв(Ь) однакого характеру монотонності, обчислюємо Ас, (с) ’ результати наведені в таблицях 9.32 та на рис. 9.13. г) С^-А!В Замінивши НЧ В на В і обчисливши його ФП для заданих значень аІ,а2,...,аІІ, обчислюємо згідно зі співвідношенням. Результати наведені в таблиці 9.33 та на рис. 9.13.
Дослідження операцій Таблиця 9.28 X 1.0 1.25 1.5 7/4 2.0 9/4 2.5 11/4 3.0 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 Таблиця 9.29 X 2.0 2.25 2.5 11/4 3.0 13/4 3.5 15/4 4.0 МАХ} 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 Таблиця 9.30 С, = А + В = 5 с 3.0 3.5 4 4.5 5.0 5.5 6 6.5 7 Рс-(х) 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 Таблиця 9.31 С2 = А-В с -3.0 -2.5 -2 -1.5 -1.0 -0.5 0 0.5 1 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 Таблиця 9.32 С\ = А*В с 2,0 45/16 3.75 77.16 6.0 117/16 35/4 165/16 12.0 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 Таблиця 9.33 С4 = А!В с 1/4 1/3 3/7 7/13 2/3 9/11 1 11/9 1.5 Дса(х) 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0
Зайченко Ю.П. 9.10. Метод побудови функцій приналежності нечітких множин Застосування теорії нечітких множин для розв’язання практичних задач як перший крок використовує формалізацію нечітких множин та побудову функції приналежності. Як правило, ФП нечітких множин апріорі невідомі і можуть бути обчислені шляхом обробки експертної інформації про шанси появи певних значень. Одним з найбільш розвинених методів побудови ФП за даними опитування експертів є метод парних порівнянь, запропонований Т. Сааті [20]. Нехай є нечітка множина А з невідомою ФП р^х^, хі & X , і-ї,п. В результаті опитування експертів (ОПР) будуємо матрицю М = ||ш(/ ||, і,] = 1,л, де п - кількість точок, в яких порівнюється значення функції рА(х) . Число тп показує, в скільки разів рА(Х') , на думку експертів, перевищує р^х^. При цьому число запитань до експерта складає не 2 Л(Л-І) і • 1 . . Т— п ,алише--------, оскільки т =1, і крім того, т = —,/,у = 1,л. 2 ' 'и« При цьому значення т оцінюється по 9-ти бальній шкалі оцінок згідно таблиці 9.34. Таблиця 9.34 Значення Ш(/ Зміст оцінок ту 1 р4(х:) приблизно дорівнює р4(х ) 3 РЛ(.Х{) ірохи більше Р4(,Х ) 5 рАх,) більше р.,(Х') 7 Р1 (х( ) помітно більше р < (Х/ ) 9 р4(хі) набагато більше(х ) 2,4, 6, 8 Значення проміжні за ступенем переваги між вказаними. 672
._________________________________________Дослідження операцій Отже, на основі парних порівнянь, згідно з введеною шкалою оцінок, будуємо матрицю Мо = ||т„ ||. Далі для матриці Мо знаходимо власні числа Л1,Лї,...,Лп, вибираємо найбільше власне число і знаходимо найбільший власний вектор Ф=[ФД, / = 1,я розв’язуючи рівняння: МФ=\тФ. (9-10.1) Оскільки матриця Мо додатна за визначенням, то розв’язок (9.10.1) існує і єдиний. Ф Далі обчислюють: рА(хІ) =——. (9.10.2) І*. /=| При цьому Лт!і = п. Покажемо справедливість співвідношення (9.10.2). Нехай д.Ахі) Да(х,) Ра(х,) Дл(ху) ял*,) Да(х„) Л/о = Да(х.) Да^хА Да(хі) ДлМ Да(хі) Да(х„) р.АхА Рі(х„) р.АхА Да(х„) Тоді для і -ї компоненти вектора Мо ф- І^-Ф^^и).^ = Я„, Ф птах і /-і РАх,) 29і 673
Зайченко Ю.П. Звідки отримаємо: і \ гпал у х пАхА Просумувавши (9.10.4) по всіх і, дістанемо: пУ------------------------= Я У Ф‘ мР.А*,) ^ЯнА*,)' Звідки Япіах = п і з (9.10.4), отримуємо: Ф, 1 -Д Ф. ——— = — у ------= сопхі (9.10.4) (9.10.5) (9.10.6) Отже, вирішуючи (9.10.6), ми знайдемо: рА(х )=-Фі- . (9 10 7) І* /=1 Зауважимо, що матриця Мо має ранг 1, а Япмх = п В реальному випадку при опитуванні експертів за методом парних порівнянь, матриця М =|рі„|| не-буде мати ранг 1, а її найбільше власне число Ятах Ф п. Тоді ступінь неузгодженості оцінок експерта Я — н можна оцінити величиною: ——------ (9.10.8) п Множина А, для якої /тл(л) обчислюється за (9.10.7), не буде нормальною, і, щоб зробити її такою, необхідно нормувати ДДх) згідно зі співвідношенням: — , - НА*) ~ • (9.10.9) тах//4(х) І 674
Дослідження операцій Приклад 9.20 Нехай особа, що приймає рішення (ОПР), шукає спосіб найбільш вигідного вкладення грошей. Вона розглядає такі можливі альтернативи вкладення грошей: х, - купівля акцій компанії «Логоваз»; х2 - купівля акцій компанії «Лукойл»; х3 - купівля акцій компанії «Сибірнафта»; х4 - купівля акцій компанії «Гермес-фінаис». Позначимо через С - нечітку множину альтернатив «вигідне вкладення грошей». Нехай шляхом опитування експертів побудовано таку матрицю попарних порівнянь альтернатив М = І|лЦ: ‘ 1 5 6 1 1/5 1 4 6 м = 1/6 1/4 1 4 1/7 1/6 1/4 1 Знаходимо власні числа матриці М, для чого розв’язуємо гаку систему рівнянь: бе[(А/-Я£) = Я4 -4 Я'-6.914 Я2 - 2.715 = 0 , (9.10.10) і знаходимо: Я, =-0.312; Я,, =-0.140±1.305/; Я4 = 4.390 = Я1ТШ. Тепер знаходимо власний вектор Ф, що відповідає 2тах; 1-4.39 5 6 7 Гф> 1/5 1-4.39 4 6 X Ф2 1/6 1/4 1-4 39 4 Ф, 1/7 1/6 1/4 1-4.39 _Фд (9.10.11) 29* 675
Зайченко Ю.П. Розв’язуємо систему (9.10.11), використовуючи додаткову умову нормування: Ф, +Ф2 + Ф3 + Ф4 =1. В результаті отримуємо: Ф,=Ас(М = 0.619; ф2 = (х2) = 0.235; фз = Ас (х3) = 0.101; Ф, = М = 0.045. Таким чином, найбільш вигідною альтернативою с хі, що означає купівлю акцій компанії «Логоваз», для якої = 0.619-» тах . Коефіцієнт узгодженості результатів оцінок експерта: к = 2™ ~й = 2222 = 0.0975. п 4
Дослідження опертий Розділ 10 МЕТОДИ ОПТИМІЗАЦІЇ В ЗАДАЧАХ ВЕЛИКОЇ ВИМІРНОСТІ Характерною особливістю багатьох практичних задач дослідження с їхня велика вимірність. Зокрема, при розв’язуванні задач оптимального планування на макрорівні, матриця обмежень досягає розміру 104-105. При такій вимірності класичні методи математичного програмування (лінійного, нелінійного, дискретного) виявляються малоефективними. Тобто ми стикаємося тут з феноменом «прокляття вимірності» в розумінні Р.Беллмана. Це зумовило необхідність розробки спеціальних як точних, гак і наближених методів, призначених для задач великої вимірності У більшості з цих методів використовується ідея декомпозиції, яка полягає в розбитті початкової задачі великої вимірності, пошуку незалежних розв’язків для кожної з них і наступному пов’язуванні цих частинних розв’язків у загальний розв’язок початкової задачі. Вперше ідею декомпозиції стосовно задач ЛП сформулювали Г.Данциг і Вульф, а пізніше розвинули у своїх працях Д.Б.Юдін, Б.Г.Гольштейн [12], М.Месарович, Л.Лесдон [31], В.Цурков [52] та інші. 10.І. МЕТОД ДЕКОМПОЗИЦІЇ ДАНЦИГА-ВУЛЬФА У 1960 р. Данциг та Вульф розробили метод декомпозиції для розв’язування задач високої розмірності із спеціальною структурою матриці обмежень [31]. Цей метод виявився найбільш ефективним для розв’язування задач, матриця обмежень яких має блочно-діагональний виїляд з невеликою кількістю змінних. Але як показали дальші дослідження, метод можна застосовувати також і для задач ЛП з матрицею загального вигляду Відповідний метод запропонували Д.Б.Юдін та Е Г Гольшісйн і назвали його «блочне програмування» [12] 292 677
Зайченко Ю.П. Характерною особливістю методу декомпозиції є використання координуючої задачі, яка мас у порівнянні з початковою невелику кількість рядків і велике число стовпців. Суттєвим є те, що для розв’язання координуючої задачі не потрібно задавати усі стовпці в явному вигляді. Вони генеруються в процессі використання симплекс-методу. Такий підхід називають методом генерації стовпців. Його суть полягає в такому. Нехай задача ЛП має такий вигляд: максимізувати: * = (10.1.1) >=і при обмеженнях: £аЛ=Ь; (Ю.1.2) /і А, та Ь - /и-вимірні вектори-стовпці (т<п). Припустимо, що відомий деякий допустимий базисний розв’язок (Д.Б.Р.) Хв та відповідна йому матриця з базисних векторів Ал. Припустимо також, що Хв було знайдено методом оберненої матриці. Тоді одночасно було знайдено і вектор відносних оцінок Л=[Л,] = СІА, ', де С, - вектор коефіцієнтів цільової функції для поточного базису. Щоб визначити можливість покращення Д.Б.Р. Хв для кожного небазисного вектора Ау обчислюємо значення оцінки: А ,=Л*А -С=Уя,л -С,. (10.1.3) Якщо пііпЛ/ = Д5 < 0;то початковий розв’язок може бути поліпшений шляхом введення у, базис змінної Х5. Однак, коли маємо велику кількість небазисних стовпців (п>103), то знаходження Дч шляхом обчислення А, для усіх небазисних векторів у = 1, п і наступного їх порівняння практично неможливо. І як виявляється, це і не потрібно. Вважатимемо, що усі стовпці А5 вибираються із деякої опуклої множини 5, що визначається системою нерівностей та рівностей. 678
Дослідження операцій Тоді вектор-стовпець, який необхідно ввести у базис, можна визначити у результаті розв’язання допоміжної задачі вигляду: мінімізувати {ЛА,-С(А,)}. (Ю.1.4) де і ~ деяка задана функція вектора А,. Залежно від структури множини 5 та виду функції С(А,) обирається найбільш ефективний метод розв’язування вказаної задачі. Такий спосіб називають методом генерації стовпців, оскільки при розв’язуванні задачі (10.1.4.) фактично використовується лише невелика кількість стовпців, які генеруються поступово з потреби. При цьому значно знижується необхідний об’єм пам’яті для зберігання поточних результатів, що є суттєвою перевагою при розв’язуванні задач великої вимірності. Принцип декомпозиції Розглянемо задачу ЛП, матриця обмежень якої має блрчно- діагональну структуру вигляду: А = А, А2 ... А/ В, 0 ... 0 0 В2 ... 0 0 0 ... в„ (10.1.5) Рядок [А,, А2,..., Аг] називається зв’язуючим, бо він зв’язує разом усі змінні задачі у деякому обмеженні чи їх групі. Відповідна задача ЛП записується у вигляді: максимізувати с,х, (10.1.6) при обмеженнях: 29** 679
Заііченко Ю.ГІ. £а,х. =Ь0, (10.1.7) <=| В,х, =ь,, X, >0. (10.1.8) Зазначимо, що до вигляду (10.1.5) можна звести матрицю довільної задачі ЛП при р = 1 в результаті відповідного розбиття обмежень на дві записати у виї ляді: підмножинн. Дійсно, довільну задачу можна максимізувати / = сх, (10.1.9) при обмеженнях: А । х = Ь!, (т (обмеженнь), (10.1.10) А,Х = Ь,, (»»2 обмеженнь). (10.1.11) х>0. (10.1.12) Припустимо, що опукла многоіранна множина 53, що визначається умовою (10.1.11), є обмеженою, тобто являє собою многогранник (ця умова не дуже обмежуюча). Тоді справедлива лема про крайню точку, доведена у додатку 1. Нехай П = {х : Ах = Ь, х > 0} - непорожня замкнена обмежена множина, х,(ї = 1,г) - ії крайні точки. Тоді довільну точку хєЯ можна подати у вигляді опуклої комбінації крайніх точок множини К, тобто: Узагальнення цієї леми на випадок, коли множина необмежена, формулюється так: нехай Я = (х: Ах =Ь, х > 0}- непорожня. Довільна точка належить множині К тоді і тільки тоді, коли вона може бути представлена як опукла комбінація крайніх точок і лінійної комбінації з невід’ємними коефіцієнтами напрямних векторів необмежених ребер множини, тобто: 680
Досчідження операцій х = (10.1.14) і=1 де =1; «=і З, >0; [ 1, якщо х, - крайня точка К, є і = ( 10, якщо X) - необмежене ребро множини К. Відповідно до леми, будь-який елемент многоіранника З? може бути записаний у вигляді: х = £5уху, У л де 3/ > 0, , =1, х, - крайні точки многогранника 32. /=і Початкову задачу (10.1.9)—(10.1.12) можна сформулювати таким чином. Із усіх розв’язків (10.1.11)-(10.1.12) необхідно вибрати такий, який задовольняє (10.1.10) та доставляє функції (10.1.9) у максимум. Підставляючи (10.1.14) у (10.1.9), отримаємо новий вираз для цільової функції: / = Е(сху)г>у, а підставивши (10.1.14) у (10.1.10). одержимо: Позначимо: £(А,ху)г>у =Ь( . і Ах, = Р,;Сх,=г, (10.1.15) (10.1.16) (10.1.17) 29 і 681
Зайченко Ю.П З урахуванням (10.1.15)—(10.1.17) приходимо до такої задачі: максимізувати , і (10.1.18) при обмеженнях: 2>А==ь„ 7 (10.1.19) = 1, (10.1.20) £,>0. (10.1.20) Ця задача, яка еквівалентна початковій (10.1.9)-(10.1.12), називається координуючою задачею. Вона має тільки (ті +1) рядків обмежень порівняно з (ті + т2) рядками початкової задачі і дуже велику кількість стовпців, яка дорівнює числу крайніх точок множини 5г- Щоб не зберігати всі ці стовпці в пам’яті ЕОМ, будемо отримувати їх з потреби, користуючись методом генерації стовпців. 3 цією метою для кожного небазисного вектора обчислимо значення А-: = Ах V 1 2 і' (10.1.22) Подамо вектор А у вигляді Л = [Л1,Я0], де вектор А । відповідає обмеженням (10.1.19) а Ло - єдиному обмеженню (10.1.20). Використовуючи формули (10.1.16), (10.1.17) для визначення Ру та г,, одержимо: Ду=Л|Ру +Яо-зоу =(Л1АІ -с)ху + Л0. (10.1.23) Відповідно до звичайних правил симплекс-методу для визначення змінної , що вводиться у базис, необхідно мінімізувати ДІ=(Л,А,-С)хі+/Ії). (10.1.24) 682
Дослідження операцій Оскільки оптимальний розв’язок задачі ЛП (за умови, що допустима множина $2 - обмежена (досягається у крайній точці цієї множини, то виконання операції (10.1.24) еквівалентне розв’язанню підзадачі вигляду: мінімізувати (АД-Ох, (10.1.25) при обмеженнях: А,х = Ь,, х>0. (10.1.26) Знайшовши її розв’язок х$, перевіримо умову А$ = (Л| А। -С)ху + +Л0 <0 і, якщо вона виконується, то вектор х5 вигідно ввести в базис. Далі визначимо компоненти вектора Р$, який слід ввести у базис координуючої задачі: Р. А,х 1 (10.1.27) а також відповідний коефіцієнт у цільовій функції: г5=п5. (10.1.28) Такий підхід виявляється особливо ефективним, якщо р > 1, тобто початкова задача записується у вигляді: максимізувати / = С|Х| + с2х2 +...+срхр (10.1.29) при обмеженнях: А|Х| + А2х2 +...+ Архр -Ьо, (10.1.30) віхі =Ь|, В2х2 — Ь2, (10.1.31) х, >0, і = 1, р. (10.1.32) 29*** 683
Зайченко Ю П. Д ія такої задачі підзадача (10.1.25)-(10.1.26) матиме вигляд: мінімізувати при обмеженнях г Еса.а,-с- )*. (10.1.33) В^х, = Ь, (10.1.34) X; >0, 1 = 1, р (10.1.35) Внаслідок адитивності цільової функції (10.1.33) та незалежності обмежень (10.1.34) задача (10.1.33) розпадається на незалежні задачі вигляду: тіїХЛ.А. -с,)х,. (10.1.36) при обмеженнях: В,х,. =Ь,., х, > 0. (10.1.37) Позначимо розв’язок задачі (10.1.36) через х°, а {А,А, —с.}х° =Якщо 22/°+Ло<0, то вектор х0 = {х"(А,)}, »=і і— 1, р можна ввести у базис координуючої задачі. Якщо ж р /10 > 0, то поточний розв’язок оптимальний. Описання алгоритму декомпозиції Дамо формальне описання алгоритму декомпозиції Данцига- Вульфа для розв’язання задачі (10.1.29)—(10.1.32) [18]. Нехай вже маємо початковий допустимий базисний розв’язок задачі (10.1 18) (10.1.21), якому відповідає вектор розв’язувальних множників А =[А|,Л0]. Кожна ітерація алгоритму складається із двох етапів. 684
Дослідження операцій Перший етап 1. Використовуючи вектор оцінок А] поперед- ньої ітерації, сформуємо і розв’яжемо підзадачі (10.1.36)-(10.1.37) та знайдемо оптимальне значення цільової функції, а також відповідні розв’язки х^Л,), 1=1, р. 2. Обчислимо мінімальну оцінку: тіпД, =£/,°+20 (10.1.38) 1=1 З Якщо ^Г+Л0>0, то обчислення закінчується і і=і визначаємо оптимальний розв’язок задачі (10.1.29)-(10.1.32): Хор, =ЕХ/у, (10.1.39) 7 де {<?,}- попередній базисний розв’язок координуючої задачі, а Ху - крайня точка 5,, що відповідає базисній змінній . Якщо У' + Ло < 0, то переходимо до другого етапу. і=і Другий етап. Формуємо стовпець Ро,який необхідно ввести у базис задачі (10.1 18)-(10 1 21): Р.4ал”(Л,). <101-40) Введемо вектор Ро у базис, виконуємо один крок симплекс- методу, після чого знаходимо новий допустимий базисний розв’язок- а також новий вектор оцінок: А0*’ 685
Зайченко Ю.П. На цьому ітерація закінчується і переходимо до першого етапу наступної ітерації. Як бачимо з описання, алгоритм декомпозиції Данцига-Вульфа являє собою двохрівневий алгоритм, у якому на першому рівні розв’язуються підзадачі (10.1.36), (10.1.37), а на другому рівні - координуюча задача (10.1.18)-(10.1.21). Якщо координуюча задача є невиродженою, то на кожній ітерації значення цільової функції зростає і оскільки число базисів її скінченне і жоден з них не використовується двічі, оптимальний розв’язок знаходиться за скінченне число кроків. Обмежена координуюча задача Як випливає з наведеного вище описання алгоритму декомпози- ції, оптимізаційна задача в ньому розв’язується лише на першому рівні, тоді як на другому фактично виконується лише одна ітерація симплекс-методу. Однак, можлива модифікація цього методу, що полягає у розв’язанні оптимізаційних задач на двох рівнях. У цьому випадку розв’язується так звана обмежена координуюча задача, яку отримуємо з координуючої задачі (10.1.18)—(10.1.21) в результаті відкидання усіх стовпців за винятком базисних та тих, що претендують на включення у базис на поточній ітерації. Таку обмежену координуючу задачу можна подати у такому вигляді: максимізувати (10.1.41) 1=1 при обмеженнях: РД+РЛ+- + Р„А+Ро^=Ьо; + <50=1; >0, і=їрп, £0>0, (10.1.42) 1=1 686
Дослідження операцій де 8І (1 = 1,т) - змінні поточного базису: 80 — змінна, що вводиться в базис (для неї Ло < 0). Якщо поточний базис є невиродженим, то з нього буде виведена змінна, для якої Д, > 0, і отриманий розв’язок буде оптимальним. Зауважимо, що можливі випадки, коли використання обмеженої координуючої задачі, порівняно із звичайною координуючою зада- чею, дає ефект. Варіанти декомпозиції прямої задачі Існує багато різних способів декомпозиції прямої задачі, кожний з яких приводить до своєї форми координуючої та обмеженої координуючої задачі. Розглянемо, наприклад, варіант декомпозиції для матриці блочно-діагонального виду. Позначимо розв’язок системи В,-х; =Ь, (10.1.43) де х/ - крайні точки многогранника 5,.; 5, = {х : В,х( = Ь,, X, > 0}, > 0. Тоді координуюча задача матиме такий вигляд: максимізувати і і при обмеженнях: ' І і дс ~ сіхЛ Р» = А,х/. (10.1.44) (10.1.45) (10.1.46) 687
Заііченко Ю.П. Координуюча задача (10.1.44)—(10.1.46) відрізняється від координуючої задачі (10.1.18)—(10.1.21). По-перше, вона має не одне, а р обмежень типу (10.1.46), по-друге, розв’язок для кожної підсистеми В,х, =Ь,, х. >0 самостійно виражається через змінні 8, тоді як у задачі (1О.1.13)-(1О.1.21) ці розв’язки розглядались разом. Застосуємо метод оберненої матриці з використанням процедури генерації стовпців для розв’язання задачі (10.1.44)-(10 1.46). Нехай В - базисна матриця вимірності (щ, + р) х (т1 + р), а Л = (А|,Л0,Я02,...Л0р}- вектор відносних оцінок для цього розв’язку (Л|- оцінка обмежень (10.1.45), а ЛО( - оцінка для і-го обмеження (10.1.46)). Обчислимо тепер оцінки Д |у для векторів, які відповідають змінним 8^ : =(ЛІА,-С,)х/+Ло, (10.1.47) Для визначення тіп Д (7 при фіксованому і розв’яжемо підзадачу вигляду: мінімізувати (Л^-СДх, (10.1.48) при обмеженнях: В,х,=Ь,, х, >0. (10.1.49) Якщо тіпт і + Ло( = ті+ Лоі) > 0 ' У < то поточний розв’язок - оптимальний, а у протилежному випадку - у базис задачі (10.1 44)-( 10.1.46) вводиться змінна, для якої тіп(/° тЛо,)<0. (10.1.50) Якщо цей мінімум досягається при ї = $, а хЛ(Л|)- розв’язок підзадачі з індексом 8, то у базис координуючої задачі вводиться стовпець: 688
Досчідження операцій Аї*ї(Л1) с «Ч ]' де и $ - р -вимірний вектор, усі компоненти якого дорівнюють 0, за винятком компоненти 5 = і, що дорівнює 1. Приклад 10.1. Розв'язати наступну задачу методом декомпозиції Данцига- Вульфа: Р = (2х, + х, + Зх, + 2х4) —> шах 2х,-^3х,+х,+3х4 <24 Зх. + х, < 161 х.+2х, <12] ’ 5х.-2х4 <41 -х,+2х4<4| 1 хі >0,у = 1...4 Дана задача мас одне зв'язуюче обмеження та два незалежних блоки 5, і 5,. Області допустимих значень для обох підсистем представлено на рис. 10.1 га 10 2- 689
Зайченко Ю.П. Введемо позначення; - допустимі розв'язки блоків 5і, і відповідно. Тоді справедливо співвідношення: х = ^а,х, У = Х^,Ун І де х. і у. - крайні точки множини і 82. Запишемо цільову функцію у векторному вигляді: г = ерг + с2х. А зв'язуючі обмеження мають такий вигляд: ах = 24 де <=[2,1], <=[3,2], <=[2,3], <=[1,3] Запишемо тепер координуючу задачу: тах 2 = Е <-с,х, )а, + £ (с,у, )/3, +'£(а2у])Рі +5 = 24 ІЛ = 1 і «, > о, р > 0. Виберемо в якості початкового допустимого базисного рішення: <=[0,0], у,г =[0,0]; а,=1,Д=1. Будемо розв’язувати дану задачу методом оберненої матриці. Початкова симплекс таблиця буде мати такий вигляд: Таблиця 10.1 с. В І е0 Є, е3 0 5 24 1 0 0 0 1 0 1 0 0 А 1 0 0 1 0 0 0 0 А. Ан <2 690
Дослідження операцій 1-а ітерація І етап Побудуємо і розв’яжемо підзадачі, які відповідають початковому ДБР. 1) тіп {(Л^а, - < )х] = -2х1 - хг Оптимальний розв’язок даної задачі знаходимо графо-аналітично: х2 =[4,4] />-12 Знайдемо мінімальну оцінку вектора-стовпця: Да:=Л°-*-А)і=-і2<0 2) Складемо цільову функцію другої блочної задачі: тіп{(Л^а2 -с\ )у} = -Зх3 -х4 Оптимальний розв’язок даної задачі знаходимо графо-аналітично: =[2,3] Л° = -12 Знайдемо мінімальну оцінку вектора-стовпця: Дд; =Л° + А)2 =-12<0 Ми обчислюємо компоненти цільової функції та нових стовпців координуючої задачі: <х2=12 с2у2=12 а*х2 = 20 а2у2 = 11 1-а ітерація 11 етап Запишемо нову координуючу задачу: тах(12а2 -12 Д) 20а2+11Д1-5 = 24 + а2 = 1 Д+А = і а, £0,Д >0 691
Зайченко Ю.П. Розв’язуємо задачу методом оберненої матриці, для цього обчислюємо стовпець Рр^: вводимо його в таблицю 10.2 (яка повторює табл. 10.1 ) 1 0 0 Рр. 0 1 ° 0 0 1 11 0 = 1 11 0 . 1 Таблиця 10 2 сі вх е, Є2 ез А; 0 5 24 1 0 0 11 0 1 0 1 0 0 0<— д 1 0 0 1 в Виконавши одну ітерацію, ми отримаємо таблицю 10.3. Таблиця 10.3 с. А ез А о<- 5 13 1 0 -11 ІЙ 0 1 0 1 0 1 0 А 1 0 0 1 0 ? Обчислюємо стовпець Ра, і дописуємо його в табл. 10.3. Виконавши одну ітерацію методу оберненої матриці отримуємо чергову таблицю 10.4: _______________________________ Таблиця 10.4 с. вх ео еі Є2 ез 12 «з 13/20 1/20 0 -11/20 «і 7/20 -1/20 1 11/20 12 А 1 0 0 1 А 3/5 0 27/5 А. 4 Ай ’ 692
Дослідження операцій 2-а ітерація І етап Із останнього рядка таблиці 10.4 отримуємо такі значення для вектора розрішаючих множників: А [А > Лі ’Л)2 ] - 5 5 Використовуючи ці дані побудуємо дві нові підзадачі: Оптимальний розв’язок даної задачі знаходимо графо аналітично: х3 =[16/5;0] /° = -64/15 Знайдемо мінімальну оцінку вектора-стовпця: Х3 да =Л°+Лі=-—+о=<о л чи 15 15 Оскільки ця оцінка менше нуля, то відповідний вектор необхідно ввести в базис координуючої задачі Ми обчислюємо компоненти нового стовпця координуючої задачі: т 32 т 32 с'Лз=у а,Хз=Т 2) тіп{(л^2-с2г)у}=шіп|(|-[1,3]-[3,2])у| = -ух3-|х4 Оптимальний розв’язок даної задачі знаходимо графо-аналітично: Л=[2,3] /,”=-27/5 Знайдемо мінімальну оцінку вектора-стовпця: • ’ о , 27 27 п — /і + Лг _ 5 + 5 Оскільки оцінка =0 , цей вектор не вводимо в базис. Так як < 0 , переходимо на II етап. 693
Зайченко Ю.П. 2-а ітерація 11 етап Запишемо нову координуючу задачу: 32 тах(12а? + 12/?, +— а3) 32 20а, + 11/?,+—а,+5 = 24 - 3 5 а, + а2+а3 =1 А=і а, >0,Д. >0. Розв’язуємо задачу методом оберненої матриці, для цього обчислюємо і вводимо в таблицю 10.4 стовпець Раі . Отримуємо табл. 10.5. '-1/20 0 -11/20' 32/3 '8/15' Рау = -1/20 1 11/20 1 — 7/15 0 0 1 0 0 с, 5, ео Є. Є2 12 а2 13/20 1/20 0 -11/20 8/15 <— ах 7/20 -1/20 1 11/20 І|7/Ї5{ 12 А 1 0 0 1 0 Таблиця 10.5 Провівши одну ітерацію методу оберненої матриці, отримуємо таблицю 10.6: Ч А ео Є2 Є2 12 а2 1/4 3/28 -8/7 -33/28 32/3 а2 3/4 -3/28 15/7 33/28 12 02 1 0 0 1 Л 23 1/7 64/7 73/7 Таблиця 10.6 694
Дослідження операцій 3-я ітерація 1 етап Із останнього рядка таблиці 8.6 отримуємо такі іначення. — [А ’ Ап; А)? ]— 1.64.73 7’7’7 Використовуючи ці дані, побудуємо дві нові підзадачі: 1) тіп {(Л[а, -с[) х} = тіп |(| • [2,3] - [2,1])х} = х, ~х2 Оптимальний розв’язок даної задачі знаходимо графо-аналітично: х4=[16/3;0] /° = -64/7 Знайдемо мінімальну оцінку вектора-стовпця: Оптимальний розв’язок даної задачі знаходимо графо-аналітично: /®=-73/7 Знайдемо мінімальну оцінку вектора-стовпця: * го о 73 73 Дд — /і + Із — у+ ~ 6 Так як оцінки невід’ємні, то отриманий на другій ітерації розв’язок являється оптимальним. Записуємо його: К,„„ = Лт2=[2;3] Отже, ми отримали такий розв’язок: х° = 5, х2° = 1, х° = 2, х4° = 3; /;0 = 23 ПЕРЕВІРКА: Підставимо отримані значення у зв'язуюче обмеження: 2*5 + 3*1+2 + 3*3 = 24. Воно виконується строго, отже знайдений розв’язок є оптимальним 695
Зайченко Ю.П. 10.2. ДЕКОМПОЗИЦІЯ НА ОСНОВІ РОЗДІЛЕННЯ ЗМІННИХ Розглянемо задачу ЛП, в якій частина обмежень має блочно- діагональну структуру, а крім зв’язуючих обмежень є також і зв’язуючі змінні ¥={уі}, тобто: Максимізувати Е (<*, +соУ) /=і (10.2.1) при обмеженнях: ч..о X ч.. + □ О а- © (10.2.2) А^Ху +Вуу = Ьу;у = 1,У; (10.2.3) Ху > 0,у = 1,У; У = {>’|>У2> -»Ул0 }-0, (10.2.4) де у = {.V], У2’->УпО} - По- вимірний вектор, Во має вимірність тхПо, а Ц - вимірність т/По; ) = 1, 2,..., І відповідно. Для розв’язання задачі (10.2.1)-( 10.2.4) можна застосувати метод декомпозиції Данцига-Вульфа, розглянутий вище. Але в цьому випадку отримуємо досить складний трьохрівневий алгоритм (31). Тому виникла ідея виконувати ітерації при фіксованих значеннях зв’язуючих змінних У, а потім, використовуючи оптимальний розв’язок X, корегувати У. Вказана процедура породжує цілий клас методів декомпозиції, які основані на розділенні змінних. При цьому часто спосіб розділення підказує сама специфіка задачі, а в інших випадках цей прийом проводиться штучно Для розв’язання задачі (10.2.1)-( 10.2.4) використовується загальний метод релаксації обмежень (запропонований Джофрюном), який полягає в наступному (31). 696
Дослідження операцій Нехай розглядається задача математичного програмування: Максимізувати Г(х), (10 2.5) при обмеженнях: Як (х)>0,А = 1,т, х е Мх де Г(х), §к(х) - вгнуті функції від змінних х є /?": Мх - опукла підмножина. Мх с К'"’. Ідея релаксації полягає в такому. Спочатку розв’язується релаксована задача з невеликим числом обмежень. Якщо ця задача не має розв’язку, то нерозв’язна також і початкова задача. В інакшому разі, якщо отриманий розв’язок задовольняє усім обмеженням, що лишилися, то це оптимальний розв’язок початкової задачі. Якщо ж деякі обмеження не виконуються, то вводиться одне або кілька обмежень, що лишилися, і вся процедура повторюється. Метод релаксації є особливо ефективним, коли заздалегідь відомо, що в оптимальній точці суттєвими є лише невелика кількість обмежень. Докладно опишемо процедури релаксації. Нехай М=( 1,2,...,т}, а К - деяка підмножина індексів з М Вводиться так звана К-задача: Максимізувати Цх), (10.2.6) при обмеженнях: (х)>0,А є К с Л/,хє Мх . (10.2.7) Припустимо, що при початковому виборі К-задача (10.2.6) має скінченний максимум, який досягається при оптимальному розв’яз- ку Процедура релаксації є ітераційною і складається з таких кроків (етапів). 1) Спочатку покладемо / = а> і виберемо множину К так, щоб Г(х) була обмежена при обмеженнях (10.2.7). 2) Розв’язуємо К-задачу (10.2.6>-(10.2.7). Якщо вона нерозв’язна, го, очевидно, і початкова задача не має розв’язків. У супротивному разі маємо оптимальний розв’язок х*задачі (10.2.6)-( 10.2.7). ЗО1 697
іайчепко Ю.П. 3) Розв’язок х* перевіряємо на допустимість до обмежень, що лишились невикористаними. Якщо §а(ха.)>О,Х/А: є М\К , то хА. оптимальний розв’язок вихідної задачі (10.2.5) В протилежному разі переходимо до наступного етапу. Нехай 8 - підмножина індексів М\К, серед яких є хоча б один індекс А, такий, що для нього не виконується відповідне обмеження для х*. Введемо підмножину індексів Р із к, для яких обмеження (10.2.7) при розв’язку хА виконуються як строгі нерівності: Р = {А:£А.(ха.)>0,АєК}. Якщо виконується умова /(хА) = /, то К. замінюємо на К = К\35 і повертаємося до етапу 2. Якщо виконується умова /(хА. )</, то К замінюємо на К = К\^8Р і повертаємося до етапу 2 Виявляється, що така процедура релаксації після розв’язання скінченного числа задач або приводить до оптимального розв’язку вихідної задачі (10.2.5), або встановлює її нерозв’язність. Тепер повертаємося до блочної задачі із зв’язуючими змінними (10.2.1)—(10.2.4) і вкажемо застосування для неї методу релаксації. Припустимо, що при кожному у є 1,7 матриця А має ранг т,, тобто містить у собі невироджену квадратну підматрицю А,, Тоді обмеження (10.2.3) запишеться у вигляді: А, х, А 2х/;+ В;у = Ь ,у =1,7, (102.8) де вектор х, розбивається на вектори х,, та х,2. У відповідності з розбиттям матриці А; можна вибирати матриці оптимального базису після розв’язання відповідних локальних задач: максимізувати ст,х7 при обмеженнях: д х = & у х >д, де у - заданий вектор, такий, що існують допустимі розв’язки цих задач для усіх у = 1,7 Виражаючи згідно з (10.2.8) змінні хл через усі інші, одержимо х„ = д ь -ау;а,2х,2-а;;о(у (10.2.9) 698
Досіідження операцій Цільова функція (10.2.1) та умови (10.2.2) після розбиття х, на х,, та Хд запишуться у вигляді: Е(с;іхуі ^с;2Х;2)+соУ> (10.2.10) У=і при обмеженнях: ' . (10.2.11) Х(А>„ + А ,.х.?) + О..у = ЬИ- Підставляючи х,, із (10.2.9) у (10.2.10) та (10.2.11), одержуємо скорочену задачу: Максимізувати /=| при обмеженнях: £А>,2 + О0у=Ьс; (10.2.13) х,2>0;у>0. де ?У2 =С>2-с?1АДА;2; АУ2 = А/2_АДА7іА/2; Со =со-Есу1а;'о; 60 = в0-іа;іа;!оу; ;=1 7=1 ь0=ь0-і;а°1а]1ьу. /=1 Задача (10.2.12), (10.2.13) мас т обмежень та ^(л,-/»;)-гп0 /і змінних. Її обмеження такі самі, як і в початковій задачі (10.2.1)- (10.2.4), за винятком умов, коли х;1>0,у = 1,У. Саме ці останні обмеження і будуть релаксуватися згідно з описаною процедурою. ЗО* 699
Зайченко Ю.П. Отже, нехай знайдено оптимальний розв’язок |х°,,у0} скороченої задачі (10.2 12), (10.2.13). Тоді, підставляючи його в праву частину (10.2.9), одержимо розв’язок початкової задачі х0|,х02,у° (без припущення, що х,. > о, у = 177 )• Очевидно, критерієм оптимальності розв’язку х°,х°2,у° для початкової задачі (10.2.1)-( 10.2.4) є виконання нерівності х® >0,Х//є[1,У]- Якщо деякі з цих обмежень не виконуються, то згідно з загальною системою релаксації вони вводяться у скорочену задачу (10.2.12) і виводяться деякі обмеження ху, >0- Нехай при деякому /є[1,у] перші г, компонент вектора х,, є від’ємними, вектор х®2 має £, перших додатних компонент. Перепишемо для отриманого оптимального розв’язку вираз (10.2.9) у вигляді: —АдЧЛ + Ад'Ь, - АдО,?0- (10-2-14) Розглянемо два випадки. У першому випадку існує хоча б один ненульовий елемент підматриці АдАу2, утворений її першими Г,і рядками та першими стовпцями. Позначимо його відповідні індекси через г(. та . Тоді за допомогою лінійних перетворень співвідношення (10.2.14) елемент переводиться у ліву частину (10.2.14), а елемент ) опиниться при цьому в правій частині. г/ Вказана операція приводить до нового базису і нової скороченої задачі (10.2.12), (10.2.13). У другому випадку підматриця АдА.-2 має лише нульові коефіцієнти і тоді неможливо зробити заміну базису. В такому випадку вибирається деяка від’ємна компонента вектора хуЬ яку позначимо через х™ і вводиться додаткова умова невід’ємності вигляду: г‘, = *!. -а,/у2 -%у>0, (10.2.15) де Ь,у,а,ута -гу -ті рядки матриці А;|ІЬ/; АуІ'А/2;відповідно. 700
Дослідження операцій Обмеження (10.2.15) додаються до скороченої задачі (10.2.12), (10.2.13). Таким чином, приходимо до послідовності скорочених задач виду (10.2.13) із зміненими матрицями Ар та додатковим обмеженням (10.2.15), яка розв’язується доти, доки або не прийдемо до оптимального розв’язку початкової задачі, або не встановимо її нерозв’язність. Метод розділення змінних Бендерса У методі Бендерса розглядається така задача [20; 31]: Мінімізувати (сгх + /(у)), (10.2.16) за умов: Ах + #(у)>Ь; х > 0, х є М,, (10.2.17) (10.2.18) де с та х - п-вимірні всктор-стовпці; у - р-вимірний вектор, А<щ « ч) _ маТрИЦЯ вимірності ш х п; Ь - т-вимірний вектор, § - т- вимірна функція, а Му - деяка множина в просторі Кр. При кожному фіксованому у задача (10.2.16)-( 10.2.18) є задачею ЛП і тому доцільно розділити змінні х та у. Нехай Ру є М, - підмножина значень у при підстановці яких в (10.2.17) існує допустимий розв’язок задачі ЛП. Множина Ру може бути задана явно. Розглянемо багатогранний конус К = |л: АГЛ <0,Л >о|. Цей конус задається скінченним числом утворюючих векторів (базисних) Х',и = 1,Л/г так, що будь-який елемент (вектор), що належить конусу К, може бути записаний у вигляді: Л'л Н, Л = ^0; =|: г=1 г=і Ру = {у :(Ь-#(у))^.' <0;и = 1,А,}. (10.2.19) (10.2.20) Початкова задача (10.2.16}-(10.2.18) перетворюється тоді до вигляду: ЗО2 701
Зайченко Ю П Мінімізувати {£(у )+тіп стх} (10.2.21) при обмеженнях; Ах > Ь -£0 );х > 0. (10.2.21) Цільова функція у (10.2.21) задається алгоритмічно. Для її знаходження при фіксованому у необхідно розв’язати задачу ЛП: Мінімізувати стх, (10.2.23) за умов: Ах>Ь~е(у);х>0. (10.2.24) Розглянемо двоїсту до неї задачу: Максимізувати (Ь-е(у))Г>- (10.2.25) при обмеженнях: АІ~С; (10.2.26) Х>0 Згідно з теоремою 2.2 теорії двоїстості для оптимальних розв’язків значення цільових функцій пари спряжених задач (10.2.23) та (10.2.25) рівні. Тому задача (10.2.21) перетворюється до вигляду; Мінімізувати {/(у) + тах( Ь-в(у))Г А.) (10.2.27) за умов: А?К-с; (10.2.28) Х>0 Розглянемо множину (10.2.28). Як бачимо, вона не залежить від у і тому доцільно розглядати задачу (10.2 27), (10.2.28) замість задачі (10 2.21) Припустимо, що множина Л/Л, яка визначається умовами (10.2.28), обмежена і нехай , и = 1,Д/р — її крайні точки (вершини многогранника). Тоді задача (10.2.27) перепишеться у вигляді 702
Дослідження операцій Мінімізувати {/(у) + тах(Ь-8(У)); Остання задача еквівалентна такій: Мінімізувати 7 при обмеженнях: г>/(у) + (Ь-е(у))ГХ^;и = 1,; (Ь~Є(у))Г^С <0;і' = 1,Л\.;уєЛ/у. (10.2.29) (10.2.30) (10.2.31) (10.2.32) Проте процес розв’язання задачі (1О.2.3О)-(1О.2.32) дуже ускладнений через велику кількість її обмежень. Тому далі застосовуємо процедуру релаксації. Припустимо, що Му - замкнена та обмежена множина, а функції і’(у) та £(у) - опуклі. Задача (10.2.30) спочатку розглядається на невеликій кількості обмежень: Мінімізувати 7, (10.2.33) при обмеженнях: х> /(у) + (Ь-£(у)УХ;і'є/,; (10.2.34) (Ь-е(у))г^' <0;иє /2,з &Му , (10.2.35) де /, с[1,/УР],/, с[1,УУ,] - підмножини індексів. Нехай (2°,у°) - поточний оптимальний розв’язок задачі (10.2.33). Згідно з загальною процедурою релаксації, оптимальний розв’язок (х0,у°) повинен бути досліджений на допустимість стосовно відкинутих обмежень (10.2.31) та (10.2.32). Щоб уникнути великого перебору, вводиться допоміжна задача ЛП вигляду. максимізувати (Ь-Є(у))ГХ, (10.2.36) при обмеженнях: X є МЛ = {X; АГХ < с,Х > 0}. (10.2.37) 30** 703
Заїіченко Ю.П. Нехай к° - оптимальний розв’язок (10.2.36), який досягається на деякій крайній точці Л7Л . Тоді необхідно перевірити умову: (Ь-8(У°))Г^ <2°-/(у°);^и = їл7. (Ю.2.38) Ясно, шо вона виконуватиметься, якщо: (Ь - 8(У° ))г Xе < - Ж) • (10.2.39) Зазначимо, що друге обмеження (10.2.37) через обмеженість Л/л (згідно з припущенням) виконузться автоматично. Таким чином, приходимо до критерію оптимальності розв’язку (г°,у°), який зводиться до перевірки виконання нестрогої рівності у (10.2.39). У супротивному разі, коли має місце зворотна строга нерівність: (Ь-§(у°))'Х° >/-/(/), (10.2.40) то це співвідношення (10.2.40) вводиться як нове обмеження у задачу (10.2.30). Подальші кроки виконуються відповідно до загальної схеми релаксації. Встановимо зв’язок між методами розкладання Бсндерса та декомпозиції Данцига-Вульфа. Для цього розглянемо таку задачу ЛП (замість (10.2.1)): Мінімізувати {стх+<1ту}„ (10.2.41) при обмеженнях: А^ч- Аоу > Ь ; (10.2.42) х > 0; у > 0 , (10.2.43) та двоїсту до неї: максимізувати ЬГХ, (10.2.44) при обмеженнях: АоХ<гі, (10.2.45) А^Х < с. (10.2.46) Х>0 (10.2.47) 704
Доспдження операцій Якщо Мл многогранник, то задача (10.2.30)-(10.2.32) для задачі (10.2.41) матиме вигляд: Мінімізувати 7, (10.2.48) при обмеженнях: г-г(Асу-Ь)Г к' ><1'у;иє[ІЛ^], (10.2.49) де = - крайні точки многогранника ЛУл. У методі Бендерса вибираєтьея деяка підмножина індекеів и і критерієм оптимальності (г°, у°) є виконання рівності: тах {(Ь - Аоу° )г А} = г° - <1Г у0, (10.2.50) при обмеженнях: а[а<с, Л>0 Розв’язуватимемо задачу (10.2.44)-(10.2.47) методом Данцига- Вульфа. Будь-яку точку многогранника Мл, який задається умовами (10.2.46), (10.2.47), можна подати у вигляді опуклої комбінації крайніх точок: ______________________________________________ А = тг,. = 1; и є [1,^ ]. (10.2.51) |’=| »'—І Підстановка цього виразу в цільову функцію (10.2.44) га обмеження (10.2.45) приводять до такої координуючої задачі: Максимізувати Х(Ь%К. (10.2.52) У=І при обмеженнях: ^(А^.К <<1. (10.2.53) Г-І _______________________ =1;Л-,. >0;і/ = 1,А?3. (10.2.54) ЗО3 705
Зайченко Ю.П. (10.2.55) (10.2.56) (10.2.57) (10.2.58) Двоїста до координуючої задачі має вигляд: Мінімізувати а’у+ху. при обмеженнях: (Аок„ )Г у + > Ь и = 1, /Ур; у>0. Зробивши заміну г = <1ту + XV. приходимо до задачі: Мінімізувати Д при обмеженнях: г+(Аоу-б)7 к,. > йТу; \/V = І, /Ур . Як бачимо, задача (10.2.57), (10.2.58) точно збігається з задачею Бендерса (10.2.48), (10.2.49). У методі Данцига-Вульфа розглядається локальна підзадача: Максимізувати (Ь-Аоуо)гк, (10.2.59) при обмеженнях: А7 А<с, Д>0, Де {у0} - оптимальні двоїсті змінні, що відповідають скороченню координуючої задачі (10.2.57) та заміні змінних. Критерій оптимальності у методі Данцига-Вульфа записується у вигляді: тах{(Ь-Аоуо)Ч}=И; = г0-<Ґу0, при обмеженнях: а[л<с. Л>0, що збігається з критерієм оптимальності у методі Бендерса (10.2.39). Таким чином, методи Бендерса та Данцига-Вульфа є двоїстими один до одного. Проте, метод Бендерса можна застосувати до більш широкого класу задач математичного програмування, зокрема до задач частково-цілочисельного та нелінійного програмування. 706
Дослідження операцій 10.3. ДЕКОМПОЗИЦІЯ К0РНАЇ-Л1ПТАКА Нехай маємо задачу ЛП вигляду: Максимізувати стх, (10.3.1) при обмеженнях: Аох<Ьо, (10.3.2) х>0, (10.3.3) де СТ=[СьС2 ,...,сп]; хт=[хі,х2 хп]; ЬТо=[Ь|,Ь2,...,Ьт]; А0=||<ф = 1,т;у = 1.л. Розглянемо підхід до її розв’язання, що використовує метод декомпозиції Корнаї-Ліптака (20; 31). Розіб’ємо матрицю Ао на підматриці А°, А°, де при кожному /є[і,У] матриця А° має вимірність т х ц. Тоді розіб’ємо відповідно вектор с на підвектори сь с2, с,..........Су та х - на підвектори Х|, Х2, X,, де С/, х, - вектори, які мають вимірність п Vп =п. тоді задача (10.3.1)—(10.3.3) зводиться до вигляду: /=| максимізувати £сГУху , (10.3.4) 7=1 при обмеженнях: ЕАуХу<Ь0; (10.3.5) 7=1 ху >0,7 = 177. (10.3.6) Введемо т-вимірні вектори-стовпці у„ що задовольняють умови: Ху<Ь0. (10.3.7) /-1 ЗО*** 707
Зайченко Ю.П. Сформулюємо У задач ЛП: Максимізувати сух,, (10.3.8) при обмеженнях; А”ху<уу; (10.3.9) ху>0./ = й. (10.3.10) Розглянемо вектор У = [}'|,У2.»]• Позначимо через Му множину всіх векторів у таких, що виконується умова (10.3.7) і задачі (1О.3.8)-(1О.3.1О) мають розв’язки. Оптимальні значення функціоналів задач (10.3.8) (10.3.10) залежать від у„ як від параметрів. Вказану залежність запишемо у вигляді /(у,). Позначимо з С(у)= Х//(Уу) • Тоді задача (1О.3.8)-(1О.3.1О) зводиться до такої 7=1 координуючої задачі; Максимізувати Е(У), (10.3.11) при обмеженнях: Еу^Ьо. (10312> >=| Якщо розкладання матриці Ао інтерпретується як розбиття системи на 1 підсистем, а вектор Ьо розглядається як спільний ресурс системи, то задача (10.3.11), (10.3.12) полягає у знаходженні оптимального розподілу спільного ресурсу. Зауважимо, що тут не вводиться обмеження на знак величини у, (це означає, що система може як споживати так і виробляти ресурси (--)). Розглянемо задачу (10.3.11), (10.3.12). Її аналіз ускладнюється, оскільки функція Е(у) аналітично не відома, а задана лише алгоритмічно. Для її обчислення необхідно розв’язати задачу ЛП (10.3.8}-(10.3.10). Застосування певної системи максимізації функції Р(у) породжує відповідний метод розкладання на основі принципу Корнаї-Ліптака. Так. у роботі Корнаї-Ліптака пропонувалося зведення цієї задачі до мінімаксної. яка далі розв'язується методами теорії гри. Розглянемо цей підхід 708
Дослідження операцій Запишемо двоїсті задачі до задачі (10.3.8)—(10.3.10): Мінімізувати , (10.3.13) при обмеженнях: А*г*Ху£с,;7 = І7; (10.3.14) ку>0, (10.3.15) де вектор-стовпець х;(у = їд) має т компонент Нехай через Од позначені опуклі многогранники у просторі що задаються умовами (10.3.14), (10.3.15). Введемо вектор А з компонентами Х1,Х2,...,Х.у та множину . У відповід- ності з основною теоремою двоїстості . <х,=^У,=Л(У/)- (‘О-316) Таким чином /7(У>) = тіпХ.^у/;Х./(10.3.17) і остаточно задача (10.3.11), (10.3.12) зводиться до відшукання сідлової точки: знайти Лг¥ = тах/’Ху)’ (10.3.18) уєЛ/г де \ - фіксовані, у = 1,7 та дТу = А.г,у • і Задачу (10.3.18) можна розв’язати методом матричних ігор для фіктивної гри Брауна. Зазначений метод являє собою ітеративний процес, де кожна ітерація у термінах теорії ігор являє собою певну партію гри і відповідає вибору деяких стратегій двох гравців. Ці стратегії в даній 709
Заііченко Ю.П. задачі є векторами А та у. Стратегії кожного гравця вибираються найбільш вигідними з урахуванням відповіді його противника. Оптимальні стратегії для задачі (10.3 18) визначаються у вигляді: А*г(у) ¥ = тіп А V- (10.3.19) ЛєЯл =тахЛг¥- (10.3.20) гєл/,. Ітеративний процес, згідно з методом Брауна, складається з таких кроків [52]. Початкова ітерація (к= 1) Обирається довільна стратегія у, є л/ (. Покладемо у*[1] - у ] • Визначимо А, - Л*(у*[1]) згідно з (10 3.19). Покладемо А‘[1]=Л,- Нехай вже проведено (к-1) ітерацію, в результаті якої визначені ¥'[*-!] та Л*(А--1)- к-а ітерація. Знаходимо ¥(А) = у’(л’(А - 1)) згідно з (10.3.20). Обчислюємо у'(А) = у’(А- -1) + -¥(А) к к Знаходимо Л(А) = Л’(¥’(А-)) згідно з (10.3 19). Обчислюємо = Л’(А _1)+1 Л(А). А’ А Згідно з теоремою Робінсона про збіжність методу Брауна, послідовність |у*(к),Л*(к)} при к->сс збігається до сідлової точки задачі (10.3.18). Метод розкладання Корнаї-Ліптака виявляється найбільш ефективним у випадку, коли частина обмежень має блочно- діагональну структуру * Введемо у задачу (10.3.1)-(10.3.2) додаткові блочні обмеження. Максимізувати (Ю.3.21) /= 710
____________________________________________Дослідження операцій при обмеженнях: ІА>,<Ь0: (Ю.3.22) /=і А,х; <Ь7;У = Ї7а (10.3.23) де Ь; - ггі;-вимірний стовпець, а матриця А, має вимірність т,х п,. Складемо функцію Лагранжа для задачі (1О.3.8)-(1О.3.1О): і(ж.¥,Л) = Х<х,*І(у,-А,х,)'».,. <10.3.24) 2’1 /’І де х = {хрХ,,...,*./};х; єЛ/^;к; >0- Виберемо досить великі границі коливання змінних х. га у,, 0<Х, <Х(;-у; <у, <у,- Можна показати, що задача (10.3.11), (10.3.12) у випадку (10.3.21)- (10.3.24) зводиться до гри двох осіб із стратегіями у є М к є Сі , Де Л7.=І¥:-¥<¥<¥;^У/<Ь01; І /-і ={Х:О<Х, <Х;у = Г7), а функціонал ^>(у,Л)має вигляд: (о(¥,л)= тахЦх,У,Л) = £к^у7 +£тах(с, - А^Ух, • Остаточно ми приходимо до задачі про знаходження сідлової точки функції: тахтіп0>(¥,Л), уєЛ/ > л 711
Затеико Ю.П. Ця задача розв’язується методом фіктивної гри Брауна. Тоді перший гравець (мінімізуючий функціонал) на кожному кроці ітеративного процесу розв’язує задачу Мінімізувати при обмеженнях ЛєПЛ. де у, — фіксовані. Зауважимо, що описана задача розв’язується окремо по кожному виду 8-ресурсу (з = 1,гп), тому перший гравець може бути представлений як т незалежних гравців. При цьому першого гравця можна розглядати як центр, який розподіляє спільні ресурси і більші ресурси надсилаються тій підсистемі, для якої їх цінність у термінах величин к, є більшою. Другий гравець (максимізуючий функціонал), у процесі ітерацій розв’язує задачу про знаходження оптимальних значень двоїстих змінних, відповідних першій групі обмежень задач: Максимізувати <Х7’ (10.3.25) при обмеженнях (10.3.26) А,*, <Ь,;х, 2 0,у = 1,7, (10.3.27) де у, - фіксовані. Другий гравець розглядається як Д незалежних (підсистем) Таким чином, метод Корнаї-Дішака декомпозицію на (]+т) підзадач. Оскільки ітеративний процес Брауна для матричних дуже повільну збіжність, го для максимізацїї функцій гравців здійснює ігор мас (10.3.25) доцільно застосувати метод можливих напрямків Зойтендейка (див. розд. 6) 712
_______________________________________________Дослідження операцій Розглянемо задачу (10.3.11), коли початкова задача має вигляд (10.3.21 НІ 0.3.23). Можна показати [52], що функції /';(у7);у=ї?7 є вгнутими та кусково-лінійними, а точки зламу функцій відповідають зміні базису в задачах (10.3.25Н Ю.3.27). Застосуємо схему можливих напрямків Зойтендейка для даної задачі в простішому випадку, коли деяким заданим величинам у /(); у = 1, У відповідають єдині оптимальні двоїсті змінні [1°}. Згідно з основною теоремою двоїстості, маємо: Л(у,о) = І^Хо- (10-3-2^ 5-І Наступні значення величин у/у^) задаються в методі Зойтендейка у вигляді: Ууі (10.3.29) де г, - т-вимірний вектор можливих напрямків, що задовольняє умову нормування, наприклад: -1<г‘Л' <1;у = П;5 = йі, де р- параметр, що визначає довжину кроку (р > о). Підставляючи (10.3.29) в (10.3.11) з урахуванням (10.3.28) приходимо до такої задачі ЛП стосовно невідомих можливих напрямків: Максимізувати (10.3.30) /-1 5-1 при обмеженнях: у ___ <0;х = 1.т; (10.3.31) /=і <1;у =й7;5=йі. (10.3.32) 713
Зайченко Ю.ІІ. Задача (10.3.30)—(10.3.32) розпадається на т незалежних підзадач. Нехай для кожного 8 мають місце рівності: Л’. = тах Л*; Л’, = тіп Л‘. Тоді оптимальний розв’язок (10.3.30)-(10.3.32) має вигляд: + >,у = /; -М = Л; 0, інакше (10.3.33) Отримане правило (10.3.33) має дуже просту економічну інтерпретацію: вільний ресурс відбирається у тієї підсистеми, для якої він найменш цінний, і передається тій підсистемі, для якої він найбільш цінний. При цьому параметр р, який визначає довжину кроку по даному напрямку, знаходять у вигляді р- тіпір,,^,/?,}, де р, - максимальне значення р, яке задовольняє обмеженню: Еу,0 +РЕ27 ^ьо’ 7=1 /=і де р-, - максимальне значення р. при якому зберігаються всі початкові базиси в задачах (10.3.25), (10.3.26), а ру визначається у максимізацією функції (у (р)), при обмеженнях; 7=1 Л°х7 ^У.о + ^іАуХ; ^0,7^1,7- Приклад 10.2. Розв’язати таку задачу методом декомпозиції Корнаі-Ліптака: Р = (2х, з- х, + Зх, х4) —» тах; 2х, + Зх2 + х, + 2х4 < 20; Зх, +х, < 15; х, + 2х, <10; 5х, - 2х4 < 4; -х, + 2х4 < 6; х, >0,у = 1. 4. 714
Доспдження операцій Розв’язок 1) Запишемо 1 -у блочну задачу: тах(2х, + х2) = /(у,); 2х, + 3х2 <у,; - Зх, + х, < 15, х, + 2х2 < 10; Розв’язуємо її графоаналітично. Область рішення приводиться на Розв’язуємо систему: І Зх, + х, =15; [2х, + 3х, = у,. Нехай у, = 6; х° = ; х2 = 0 Тобто максимум спочатку досягається на вісі абсцис х, до точки х, = 5; у, = 2лс, = 10. При цьому /,(у,) = У, • Далі, при збільшенні у, >10 точка максимуму знаходиться на перехресті прямих 2х, +3х2 = у, та Зх, +х2 = 15. „ . 45 - у, Зу, - ЗО Звідси одержуємо: х, =—-—1 та х, -----------. /,(у,) = 2х, + х, = 60 . Це буде справедливо до точки 4(4;3) . їй відповідає у, = 17 . В цій точці (у,) = 11 . Таким чином ми отримуємо: У і +60. 7 ’ 11. 715
Зайчепко Ю.П. Неважко перевірити, що в граничних точках значення /(у,) співпадають для сусідніх інтервалів. 2) Запишемо 2-у блочну задачу: тах(3х, + х4 ) = /,(),), х, -*• 2.x. < у,; • 5х, - 2.x, < 4; -х, ~ 2х4 < 6; х, > 0, х. > 0, у, > 0 Розв’язуємо її графоаналітично. Область рішення приводиться на рис. 10.4. Переглядаємо інтервали функції /, ). 4 а) 0<у2< —• Тут л-“ = у2, х? = 0, /2 (у2) = Зу2. 4 б) У2 > - Точки максимуму знаходяться на прямій 5х3 - 2х4=4. Знайдемо 4 координати даної точки, для якої у, > —. Наприклад в т. В. Для цього розв’язуємо систему рівнянь: 716
Дослідження операцій Л3 -Т х.л4 — уг, 5л‘, - 2.ї, = 4. з Уг + 4 5 у, - 4 Звідси одержуємо: х3 — та хі = ^-=-—• Г , , , 11у2 + 20 Л (У 2 ) = Ч -* Л4 =------ • Граничною точкою, загальною для прямої х3 + 2х4=у2 та • С5 17Л відрізка АС, буде т. В даній точці у2 =11, а значення /із47 Таким чином ми отримуємо. 4 Зу,; 0<у,<—; '2 5 Ну,+20 4 12 ’ 5“ т— Складаємо і розв’язуємо координуючу задачу: тах Г(у) = /} (у,) + /г (у,); 0<у,+у2<20 Обчислюємо похідні: Крок І — = 1, 0<у,<10; Оскільки <Л’, (Іух то спочатку віддаємо ресурси другій 4 підсистемі у, = — 2 5 717
Зайченко Ю.П. 4 5 Крок 2 ^=И 12 Віддаємо ресурс першій підсистемі = 10. Крок З ^-1 1' ^2_=И Л’2 12 10<у,<17; -< у2<8. 5 ' Віддаємо ресурс другій підсистемі у2 = 8. Тоді, увесь залишок ресурсу отримує перша підсистема. у, =20-8 = 12. Обчислюємо: „ 45-у. 45-12 33 о Зу.-ЗО 6 „ х. =----— =--------= —; х, =--------—, х, - /. 7 7 7 ' 7 7 х“ =3 (т А). Перевіряємо правильність обчислень за зв’язуючим обмеженням; 2Х] + Зх, + х, + 2х4 = 2—тЗ— + 2 + 3 2 = 20. Тобто, дане обмеження виконується строго. Таким чином, знайдене рішення є оптимальним. Для нього: тах [ = 2—+ - + 3-2 + 3 = 19—. 7 7 7 Приклад 10.3. Розглянемо задачу: Максимізувати (х,х2+х2), (1) 718
Дослідження оперспіііі при обмеженнях: х* + х, < 2; х2 + х2 + х2 < 10; х. >0;х, >0;х3>0. Локальні задачі записуються у вигляді: Максимізувати /0і) = Х!Х2’ (2) при обмеженнях: х,2 Т х, = у, х,>0;х, >0 Максимізувати Л(л). (3) при обмеженнях: х3 + х3 < 2 хз ~ Уі х3>0 Для задачі (2) застосуємо метод множників Лагранжа. Функція Лагранжа: Ь(х],х2,уІ,Л) = х}х — = х, - 2Л,х = 0; 5г, ^ = х,-Л-0; сх2 СІ 2 — = V, - X - х, = 0; сЛ _2ц . 2і^ Хг~ з ’Го',)_ 3>/3 Для задачі (3) одержимо’ х‘+*> -2 и о < х, < 1;Л=х; < 719
Зайченко Ю.П. Координуюча задача має вигляд: Максимізувати при обмеженнях: 0<у, -гу2 <10; 0<у2 <1; у, >0. її розв’язок: і',0 = Ю;і“ =0. Він визначає оптимальний розв’язок початкової задачі: 10.4. МЕТОД ДЕКОМПОЗИЦІЇ НА ОСНОВІ АГРЕГУВАННЯ В ЗАДА ЧАХ ВЕЛИКОЇ РОЗМІРНОСТІ Однією із задач оптимального планування з великою кількістю змінних та обмежень є так звана модель галузевого планування. Річний план галузі формується на основі потреб народного господарства в цілому в її продукції. За критерій обирається максимізація прибутку (загальна модель). Дана модель приводить до задачі ЛП з блочно-діагональною структурою частини обмежень. Зв’язуючі обмеження та критерій оптимальності мають специфіку, обумовлену конкретною моделлю планування. Ця специфіка приводить до ідеї агрегування змінних при конструюванні декомпозиційного алгоритму розв’язання блочної задачі.
Дослідження операцій Постановка та математична модель задачі Розглянемо задачу галузевого планування. Існує галузь (або великий концерн), яка характеризується множиною заводів З , множиною індексів номенклатури виробів, що випускаються заводами галузі 7 = {1,1}, множиною номерів груп устаткування К„ яке встановлене на заводах ), множиною номерів номенклатури виробів, що виготовляється на заводі у-І ,1 є 7 Нехай Су - вартість одиниці продукції ху. Нехай, крім того, при виготовленні виробів і-го типу на заводі у використовуються як власні ресурси підприємства, так і деякі види спільних ресурсів /, / = 1, £, які знаходяться у розпорядженні галузі (концерну) і їх спільні обсяги обмежені. Позначимо через 6у/ норми витрат ресурсів /-го виду на виробництво продукції і-го типу (х,) на заводі у, а Р, - реальний обсяг цього ресурсу в галузі, Р/к - обсяг власного х-го ресурсу на заводі у, Ь,,к - норма витрат к-го ресурсу на виробництво продукції 1-го типу. Тоді розглянемо задачу максимізації прибутку від реалізації продукції при обмеженнях на спільні ресурси. Відповідна модель задачі має вигляд: максимізувати / = (10.4.1) / І іе/ при обмеженнях: ХЬ^х, (10.4.2) х„ > 0, при і є І < , х,=0 при / є 1\1'; (10.4.3) 7=1 іє/, Тут співвідношення (10.4.2), (10.4.3) - блочні, де номер у, як і раніше, відповідає фіксованому блоку, а (10.4.4) - зв’язуючі обмеження. 31і 721
Зсгііченко Ю.П. Дія задачі (10.4.1)-(10.4 4) запишемо двоїсту задачу: мінімізувати <1М5> і=\ кєК, 1=1 при обмеженнях: і __ ЕМ# + ХЬчі *7 с^‘ е = 1’-7; (10А6) *єК, /=І >О;7=й;Аєк.;к;>о;/ = її, (10.4.7) причому, змінні відповідають (10.4.2), а V / - обмеженням (10.4.4). __ Введемо апретовані змінні Хі = ; 7 = 1,/, і вагові /=і коефіцієнти агрегування ач = ^'^/х Очевидно, виконуються умови: 0;і є І/,а. = 0;і є 7 \ 7,. і=і Фіксуючи коефіцієнти а і підставляючи х = аІІХІ у (10.4 1)- (10.4.4) одержимо задачу в апретованих змінних: максимізувати ХС,Х, , (Ю.4.8) 1-І при обмеженнях: УВ,ікХ, <р-і = й,к^К,-, (10.4.9) »=І ^Р, ;/ = П; (Ю.4.10) X, >0;і=й. (10.4.11) Тут введено позначення. 722
Дослідження операцій В . -Ь .а \В,. =У\ЬІІаі., СІ =\с а (10.4.12) і/А ик і/ ’ її /--і ці ч і у і/ /=І 7=1 Двоїста задача до задачі (10.4.8)-( 10.4.11) має вигляд: мінімізувати <10-4-,3> /=І *єХ, І при обмеженнях аСді-й; (Ю.4.14) 7=1 кєК! >0; 7 = й7;Ає/С(;/ = к£;^ >0, (10.4.15) де змінні /?/А відповідають (10.4.9), а змінні <5, - (10.4 10). Нехай { 3“} - оптимальні двоїсті оцінки (змінні) задачі (10.4.13)- (10.4.15). Сформулюємо задачі для окремих блоків: максимізувати "0А,6) іе/ \ /=1 7 при обмеженнях: 00-4.17) /еС х„ > 0 при і є 1,, х,у=0 при і є І \ І) . (10.4.18) Двоїсті задачі для блочних задач мають вигляд: мінімізувати (,0-4,9) кеК при обмеженнях: У. *„* с., - Е ь.,і3і ' (1 °-4-20) *еК, /-І 2 . > 0; А є К , ~ [к / ’ (10.4.21) де двоїсті змінні ік відповідають (10 4.17) 31* 723
Зайченко Ю.П. Алгоритм розв’язання задачі конструюється по загальній схемі алгоритму декомпозиції на основі агрегування. При цьому зводимо задачу (10.4.1}( 10.4.4) до задач меншої вимірності. Дійсно, з початкова задача має у1 /, _ А змінних. Задача з аїреюваними /=і змінними (10.4.8) містить / змінних, а блочні задачі мають кожна по /; змінних, нарешті, задача максимізації функції 0(р/) на одиничному гіперкубі включає І змінних. На кожному кроці ітеративного процесу багаторазово розв’язується задача з агрегованими змінними (10.4.8), яка має невелике число змінних Х„ / = !,/ і велику кількість обмежень. Сформулюємо ознаку оптимальності поточного дезагрегованого розв’язання. Нехай при деяких вагових коефіцієнтах отримано оптимальний розв’язок Х,° макрозадачі (10.4 8)-( 10.4.10), а х“ - відповідний дезагрегований розв’язок. Нехай <5° - єдиний оптималь- ний розв’язок задачі (10.4.13)-(10.4.15), а х,. - оптимальні розв’язки блочних задач (10.4.16)-( 10.4.18). Теорема 10.1. Достатньою умовою оптимальності розв’язку {х“} задачі (10.4.1)-(10.4) є виконання рівності =0- (Ю-4-22) »=! <€/ \ /=І / /=! ІС/, Якщо ж задача (10.4.1 НІ0.4.4) - розв’язна і {х"} - неоптимальний розв’язок, то у співвідношенні (10.4.22) знак рівності замінюється на знак «>». Доведення. Дезагрегований розв’язок х" є допустимим до початкової задачі (10.4.1 )—(10.4.4). Це перевіряється безпосередньою підстановкою х" = аі/Х,‘ у (10.4.2) та (10.4.4) з урахуванням (10.4.9), (10.4.10) та позначень (10.4.11). Відповідно значення цільової функції /“ початкової задачі дорівнює: /=І <е/, 724
Дослідження операцій Набір {£,* ,<5,и}> Де 8°~ оптимальні розв’яз- ки задач, двоїстих до блочних (10.4.19), є допустимим розв’язком задачі, двоїстої до задачі (10.4.!)--(10.4.4), тобто задачі (10.4.5- 10 4.7). Це випливає із співвідношень (10 4.6), (10.4.7), (10.4.20). Значення функціоналу <р для вказаного розв’язку: (,ОА23> /=1 кєК* 1=\ Згідно з теоремою 2.5 двоїстості, рівність ф — /° забезпечує оптимальність допустимого розв’язку {х“} для задачі (10.4.1)- (10.4.4). Якщо ж розв’язок {%“} неоптимальний для задачі (10.4.1)- (10.4.4) за умови її розв’язання, то ф>/° Оскільки розв’язки блочних задач, а розв’язки, двоїстих до блочних, то для оптимальних розв’язків: <ІММ> Ге/, /=І *єК, Підставляючи (10.4.24) в (10.4.23) отримаємо: <р = Е Е (су - Ьчії + Е Р,5і 1=1 Підсумовуючи, одержимо критерій оптимальності у вигляді: і в' = ? (|0-4-25’ >=1іе/;Х 1=1 2 І~1 7—•іе/у Таким чином, теорему 10 1 доведено. Опишемо тепер алгоритм декомпозиції на основі аїрегування для задачі ЛП. Нехай загальна задача ЛП з блочно-діагональною структурою частини обмежень задана у вигляді (10.4.1)—(10.4.4). Попередній етап. Задаємось початковими коефіцієнтами агрегування а(/. (<5), розв’язуємо задачу з агреюваними змінними (10.4.8)—(10.4.11) і знаходимо Х”,х“ = ац(0)Х', і = 1,/ ,у = 1,7 ЗІ2 725
Зайченко Ю.П. Розв’язуємо двоїсту задачу (10.4.13)—(10 4 15) і знаходимо оптимальні двоїсті змінні {},{<5,°}. Розв’язуємо блочні задачі (10.4.16)—(10 4.18) і знаходимо оптимальні розв’язки {і }- Перевіримо умову (10.4.22). Якщо вона строго дорівнює нулю, то кінець, оптимальний розв’язок, у супротивному разі, коли вона має знак >, переходимо до першої ітерації. (£+1)-а ітерація. Нехай у результаті к-і ітерації одержали х" (к) та х., (к). Записуємо: х’(Аг) + рі (к + 1)[х„ (к) - х°(£)] ач (к +1) = " = а ч{р(к + 0). £*"(*)+л(Л+,и^*)_*°(А')] /-І Шукаємо- тах0({р,(* +1)}) = тах^^с.а,,(р(Л +1)) Л <=І у=І Де 0<р/ <1 і знаходимо р"у(к + 1) та а”(к +1) = а^р’їк + 1)). У випадку, коли р=р для всіх і, можна використати для знаходження ефективний метод одномірного пошуку, наприклад Фібоначчі, або «золотого перетину». Розв’язуємо задачу з агрегованими змінними (10.4.8)—(10.4.11) при заданих а“(£ + 1) і знаходимо <¥“(&+1); і = 1,/;х°( к+1). Розв’язуємо двоїсту задачу (10.4.13)-(10.4.15) до агрегованої і знаходимо оптимальні оцінки {<5,°}, І = 1, £. Розв’язуємо блочні задачі (10.4.16)-(10.4.18) при знайдених значеннях {<?„}, І = 1,£ і знаходимо {х1у }; і = 1./ ;у = 1,7 Перевіряємо критерій оптимальності. Якщо при знайдених значеннях { х(/ }, {<5°} та {х“ } умова (10.4.22) виконується як строга 726
Дослідження операцій рівність, то кінець, {х“ } - оптимальний розв’язок початкової задачі, у супротивному разі переходимо до (А+1) ітерації. Приклад 10.5. Розв’язати методом агрегування таку задачу ЛП: Максимізувати (Хц+2Х|2+ЗХіз+2Х2|+ЗХ22+Х2з), (1) при обмеженнях: 5-ї, । + 2х21 < 20 -х„ + Зх21 < 6 хІ2 + Зх22 2 12 Зх,, + Ху < 10 (2) 2х13 - х,, 4 л„ + Зх,, + 2х12 - х,, + Зх,, - 4хи < 12 -Хп + 2х21 + 4х,, + Зх,, + 2х,, + хи < 24 Х|, >0;х,, >0;х,г > 0.x,, >0;х,, > 0:х,, >0; Перша ітерація. Вибираємо початкові коефіцієнти агрегування. а,, (0) = 0.4. о,, (0) = 0,4;а„ (0) = 0.2. а,, (0) = а,, (0) = а,, (0) = 0,333 Складемо задачу з агрегованими змінними: тах 1,8х/+0,66х7, (3) при обмеженнях: о/ 2х, + 0,66х2 < 20; (і;,); б/ -0,4х, + їх, < 6; (%); в 1 0,4.x, + їх, < 12; (і?,); г/ -0,4х, + 0,66х, < 5, (%), (4) д/ їх, + 0,ЗЗх2 < 10; (%); є/ 0,66х, - О,33х, < 4; (?76), є/ 1.8х, 0,66х, < 12; (б,); ж/ 1,6х. + 2х, < 24, (д2)/ Розв’язуємо її графічно (див. рис 10.5) і знаходимо х(1) = 8,4; х(2) = 5, тах/(х,.х2) = 18.42. Одночасно знаходимо і дезагрегований розв’язок 31** 727
Заііченко Ю.П. х,“ = ап(О)Х| (1) = 3,36, х", = ап(0)х, (1) = 3,36;х", = а„(О)х. (1) = 1,68; хї, = хї, = хї, = а,,х, = 1.66 Записуємо задачу, двоїсту до агрегованої: тіпСгОту, ч-677, +127, +517, +107/5 +4% +12*5, + 24<52) = тіп£(7,,)5), (5) при обмеженнях 27 - 0,4);, + 0,47, - 0.4)7, + г]. ч 0,667, + 1.8*5, ч 1.6*5, > 1,8. 0,667 ч- І77, ч- І7, + 0.667, + О.ЗЗ7. - 0 33т, 0.66(5, + 2<5, > 0.66. (6) 7, іО.7, 20,7, -01% -°1% ^О-.й, >0;<5, >0 . Для її розв’язання зауважимо, що в оптимальному розв’язку прямої задачі як строгі рівності виконуються обмеження а) та ж). Це означає, що в оптимальному розв’язку двоїстої задачі відповідні ЇМ ДВОЇСТІ ЗМІННІ 7, та <52 не дорівнюють нулю. Тоді, розв’язуючи систему обмежень (6) відносно рівнянь’ 2*?, +1,6д, — 1,8 1 0,667 + 2<5, = 0,661 , звідси знайдемо п “ 0 871;г>- = °’045 „ г „ 4і = 1, = 7* = 7, = 7<. = 0:4, = 0. 7, >0;<5, >0, При цьому #(7,.л)= 18,42. Записуємо задачі для окремих блоків. Перша підзадача (/= 1): знайти тахЛ, =тах{(си -(б„,<5“ ч-6112^“))х,, + (с,, (б,,,<5,° + 6122<5ї)к?І }= І,045х„ -2.09.x,,* (7) при обмеженнях: 5хп + 2х2, < 20; -хп + Зх2| < 6, хп >0;х2І >0. Розв’язавши ЇЇ ГрафІЧНО, ЗНаЙдеМО х„ =4,х,, -0;л, =4,180. Друга підзадача (/ = 2): знайти тахЛ, =(с12 +(с,, -6п,<5“)л22 =1,82х,, +2,86х,, . (8) при обмеженнях: х12 + Зх,2 < 12; “ хі2 + 2х22 < 5; х|2 > 0;х22 > 0. 728
Дослідження операцій Рис. 10.5 Знаходимо її розв’язок : х12 = 12;х22 = 0; /г2 - 21,84. Третя підзадача: знайти тах/г, =(с|з Ц, + (с2з )хгз = 2,91хІЗ + 0,95Хц, при обмеженнях Зх13 + х23 < 10; 2*13 — Х23 - хв >0;х2, >0. Розв’язавши її (наприклад графічно), знайдемо: Хі3=1,8; х2, =1,6; Л3 =9,668. ЗР 729
Зийчеико Ю.П. Перевіряємо умови оптимальності: ДЛ(1)-Л, + Л ./, і і /=і = 4,180 + 21.84 і- 9.668 1,08 - 18,42 = 17,248 > 0 Оскільки ДЛ(1)>0, то поточний розв’язок не оптимальний, І переходимо до друї ої ітерації. Наступні ітерації виконуємо аналогічно - через три ітерації отримаємо розв’язок {х^}, для якого виконується ознака оптимальності: м - л,+л,+л, - х р, =°- /н ї=І 7=1 Оскільки дл(3) = 0, то дезагрегований розв’язок {.<9(3)} - оптимальний. Він дорівнює: х’(3) = с1|(3)х" =4;хІІ,3(3) = «ІЗ(3)х1° =2;а" (3) = 0;х2І = 0;хї, =1О/З;х“3 =10. Для цього розв’язку Д {т“} )=28.
Дослідження операцій 10.5. МЕТОД ДЕКОМПОЗИЦІЇ НА ОСНОВІ АГРЕГУВАННЯ В ЗАД А ЧАХ НЕЛІНІЙНОГО ПРОГРАМУВА ННЯ Задача квадратичного програмування Розглянемо тепер декомпозиції на основі агрегування для блочних задач квадратичного програмування Такі задачі можна огримати (10 4.55)-( 10.4.58) шляхом введення в цільову функцію квадратичних членів і вони мають такий вигляд: Максимізувати /=І їє/, /=! иіє/,яе// при обмеженнях: (Ю.5.2) іє/, хп >0 при =0 при іє!\1 г ; (10.5.3) "05-4> /-1іе/, Матриці п =||4?тп/||;іи,лє/і за припущенням симетричні і їм відповідають від’ємно визначені квадратичні форми. Для задачі (10 5.1)-( 10.5.4) розглянемо двоїсту задачу у вигляді: мінімізувати <р=-Е Е Е^лл» + Е Е ріЛ,к Ер?! ’ (,0-5-5) /=Ітє/|-пє// І=\кеК/ /=І при обмеженнях: - 2Е^-Л + ЕМд + ІМ * си; (10.5.6) иє/ ІсєК І 1-І хц > 0 при і є = 0 при і є І\І(; (10.5.7) >0;у=й Д єК, ;Г, >0;/=І?7. (10.5.8) зі*** 731
іайченко Ю11. Введемо задачу з агрегованими змінними для (10.5 1)-(10 5.4). Для цього, як і звичайно, підставимо а„ в (10.5.1)—(10 5.4), вважаючи вагові коефіцієнти фіксованими. Одержимо задачу: максимізувати пі І і <10-5-9) Г=І ЛІ=І»=| при обмеженнях: <Р)к; ] = й,кєКі-, (10.5.10) »=| / — ;/ = !,£; (10.5.11) Г=І 2С>0,і = ІД (10.5.12) де до позначень (10.4.12) додано таке: • /і Неважко переконатися в тому, що матриця О = ||<7ВИ|| також симетрична і їй відповідає від’ємно визначена квадратична форма. Двоїста задача до задачі (10.5.9)-(10.5.12) має вигляд: мінімізувати (10.5.13) т=1»=| ї=\к^К/ І=\ при обмеженнях- + Е Мл = М ; (10.5.14) Я=І кєКІ /-І Хп>0,п = \,1 -г]^ = -,к >О;/=ГЕ.(1О.5.15) Нехай {} - оптимальний розв’язок задачі (1О.5.13)-(1О.5.15), який припускається єдиним. Сформулюємо задачі для окремих блоків, тобто при фіксованих у (у = 1, У ): 732
Дослідження операцій Максимізувати ґ І \ ь,=Е К - Ем, к + Е Е<-Л/ч ’ іь/ х М / (10.5.16) при обмеженнях: У/? V <Р,,кеК,, ге/у (10 5.17) хч > 0 при / є /(;х0 =0 при і є І\І/. (10.5.18) Двоїсті задачі для блочних задач (10.5.16)-(10.5.18) записуються у вигляді: Мінімізувати X, = ~Е Е'МЛ + ЕРЛ* ’ І, мс/, кеК при обмеженнях: “2Е<Л, + Е -сч -ЕМ''1 є 1 ‘’ ле/ АеЛ, /=1 ху > 0 при і є ІІ\хч = 0 при ієІ\І (10.5.19) (10.5.20) (10.5.21) Сформулюємо критерій оптимальності проміжного розв’язку Нехай при деяких вагових коефіцієнтах а(/ отримано оптимальний розв’язок х“ макрозадачі (10.5.9)-(10.5.12) і єдиним двоїстим оцінкам <5,° відповідають оптимальні розв’язки для окремих блоків (10.5.16)—(10.5.18). Тоді справедлива така теорема [52]. Теорема 10.8. Достатньою умовою оптимальності дезагрегованого розв’язку х^=аіуХ° для задачі (10.5.1)-(10.5.4) є виконання рівності: х‘ +І.Рі $ = / І /є/# і 1 Ліє/у лс/і І^І (10.5.22) =ЕЕсХ+ЕЕЕ<Х<- /-І іє/, 7=1 тєі пє}. 733
Зийченко Ю.П. Якщо задача (10.5.1)-(10.5.4) розв’язна, а {,г°) неоптимальне для неї, то у співвідношенні (10 5.22) знак «=» замінюється на знак «>». Доведення 10.8 проводиться аналої ічно схемі доведення теореми 10.7. Задача опуклого програмування Узагальнимо метод декомпозиції на основі агрегування змінних для блочних сепарабельних задач опуклого програмування (загальна задача опуклого програмування) була розглянута в розд. 5). Нехай задано задачу вигляду: Максимізувати /(Х)=Х/,(Х,)=£^/,(г / = | 7=І1е/ „у (10.5.23) при обмеженнях’ ^.д.(Ху)<о;А єк, ,у X, >о;7=й, = ЇД, (10.5.24) (10.5.25) Е^(Х7)<о;/ = 1’£, 1=1 (10.5.26) де при кожному фіксованому ) вектор {х,',х,7, .,х/}; функції ДХ),£^(Х/),. ,§«.(Х7) X, має вважають компоненти неперервно диференційованими, а їхні частинні похідні задовольняють умову Ліпшица. Крім того, припускаємо, що функції ДХ,) - вгнуті, а «,*(Х,),...,^.(Х,)-опуклі Тоді двоїста задача для задачі (10.5.23) матиме вигляд: Мінімізувати = 8,(X,)- (10.5.27) 1=1 /=ІАєК, 1=1 ;=1 при обмеженнях: 734
Дослідження операцій 7-і 5хч бхч /=1/=1 дхч прих(г>0; (10.5.28) (10-5-29) /=і 8х:і /=|;=| дх,' при х„ =0; у = 1,7 ;і є 1,7; >0;У = й7;*еК,- (10.5.30) (10.5.31) (10.5.32) (10.5.33) (10.5 34) Ввівши агреювані змінні А'І=^хІ> . і є 7, і вагові коефіцієнти /=і агреіування х„ = ачХ, при фіксованих аі;, приходимо до задачі з агрегованими змінними: 8 - ) —> гпах ; С^ХД^О^^'кєК,, С,(Х,)<0-1 = \Д; х„ >0;/ = ї7, де для зручності позначено: Г(Х,) = І/, (^Х,); С д. = 8 Ік (аих,); /=і С/(^) = Е^(«,Л)- 7=1 Неважко переконатися в тому, що функції Д(х,), Од(х,)та О,(х,) Є ОПУКЛИМИ ПО ЗМІННИХ Хі, і = 1,7 . Запишемо двоїсту задачу до макрозадачі (1О.5.3О)-( 10.5.33): ^ = ЛЛ,)-ХЕ'7ЛСАИ.)-Іади,)-^п1іп; (Ю.5.35) /=» *єЛ /=1 735
Зайченко Ю.П. —іт—Ь\ч,—-—2/,ЧЬ^=е »/«' х,>о ^Х, і^кек, дХ, /=» гг(Х) ' _ л.с<7(Х) п'т х-=°-'є/ ПЛ, /Л*еЛ', СЛ, /=; х, >^і=и.Пц >0,4 >о, (10.5.36) с¥. де /]Ік та г>( - множники Лагранжа. Нехай при деяких вагових коефіцієнтах оіримані оптимальні множники Лагранжа {<?“},/ = 1,7, для задачі (10.5.35), (10.5.36). Розглянемо блочні задачі при кожному фіксованому у (у = 1,7 ): (10.5.37) А, = //х?) " тах ’ /=| ^^(Хр^О^єХ'^х, >0;/ = 1,7 • (10.5.38) Двоїсті задачі для блочних задач записуються у вигляді: 2Г, = <10-5-39> *еК, 1=1 = 0 при ,„>0. (Ю.5.40) / 1 ЙХ-, дх,, є/у(Л,1 Л |(Х ) (10541) —--------2У>, ——--------2. —7-------* 0 при X. = 0 . (10.5.41) 1 ЙГ,, *еА, “ АєХ'/.г/; >0^ не- припустимо, що задача (10.5.23)-(10.5.26) має розв’язок і для неї виконується умова Слейтера (див. розд. 5). Тоді ця сама умова виконується і для блочних задач (10.5.37) для обмежень (10.5.38). Ці самі припущення вважаються виконаними і для макрозадачі (10.5.30) для обмежень (10.5.31), (10.5.32), якщо вагові коефіцієнти задовольняють умовам: .і ач =1 ;/ = і,/. 736
Дослідження операцій Розглянемо критерій оптимальності проміжного розв’язку для ітеративного процесу. Нехай при деяких значеннях ач отримано розв’язок х° задачі з агрегованими змінними (10.5.30)-(10.5.33) і {<5"} - єдині оптимальні множники Лагранжа, яким відповідають розв’язки {}, у = 1,7 , і є блочних задач (10.5.37), (10.5.38). Тоді справедливе твердження [52]. Теорема 10.9. Достатньою дезагрегованого розв ’язку {х" } для виконання рівності: умовою оптимальності задачі (10.5.23)-(10.5.26) є я о (10.5.42) 1=1 1=1 Якщо ж розв’язок {X® } неоптимальний для задачі (10.5.23)- (10.5.26), то у співвідношенні (10.5.42) знак «=» замінюється на «>». Доведення. Дезагрегований розв’язок х° допустимий до задачі (10.5.23)—(10.5.26), що встановлюється безпосередньою перевіркою. Значення цільової функції (10.5.23) для цього розв'язку є = (X0)’ Нехай ]-\Д ,к є К< - оптимальні розв’язки двоїстих задач (10.5.39)-(10.5.41). Тоді набір {X ,<5,°} задовольняє умови (10.5.28) та (10.5.29) двоїстої задачі, що випливає із (10.5.40), (10.5.41) та (10.5.36). Іншими словами, вектор Ху, У = 1,7 є розв’язком задачі про максимізацію функціоналу (10.5.27) при фіксованих множниках Лагранжа {£А}, {<£,}, які дорівнюють {£, }, та д'1 Оскільки між значеннями ц.ф. двоїстої та прямої задач виконується нерівність виду > 0, то І/, <х,)-х х (х"г (|й5-43> 7=1 /=ПєХ, і / / При цьому рівність в (10.5.43) забезпечує оптимальність дезагрегованого розв’язку х° для задачі (10.5.23)—(10.5.26). За умови 737
Зайченко Ю.П. розв’язності цієї задачі і неоптимальності {х°} для неї співвідношення (10.5.43) виконується як строга нерівність. Другий член лівої частини нерівності (10.5.43) дорівнює нулю згідно з теоремою Куна-Таккера (умова доповнюючої нежорсткості стосовно блочних задач). Звідси і випливає справедливість теореми 10.9. Таким чином, загальний ітеративний метод розв’язування блочних задач ЛП на основі агрегування, розглянутий у розділі 10.4, узагальнено і на задачі квадратичного та опуклого програмування Описання алгоритму декомпозиції на основі агрегування для задач квадратичного програмування Нехай задано блочну задачу квадратичного програмування виду (10.5.1 НІ 0.5.4). Попередній етап. Задамося початковими коефіцієнтами агрегування а,; (0), у = !./,/= 1,7 і запишемо задачу квадратичного програмування з агрегованими змінними (10.5.9Н 10.5.12). Знаходимо розв’язок задачі (10.5.9Н 10.5.12) { А',0} та { }. Запишемо двоїсту задачу (10.5.13)—(10.5.15) і знаходимо її оптимальний розв’язок {5, }. Розв’язуємо блочні задачі (10.5.16)-(10.5.18) для усіх і і знаходимо їх оптимальні розв’язки {хч}, а також значення ц.ф. . Перевіряємо ознаку оптимальності (10.5.22) для знайдених значень { хгї}, {х°}. Якщо (10.5.22) виконується як строга рівність, то {} - оптимальні розв’язки. Якщо знак у цьому співвідношенні «>», то переходимо до к-ї ітерації. к-та ітерація. Нехай вже проведено (к-1) ітерацій, в результаті яких знайдено { х°(к-1)}, { х„ (к-1)}. 738
Дослідження операцій Формуємо вагові коефіцієнти: а^к) = -1) + Рі (*)[х„ (*-!)- хиДк -1)] Е х°(к -1) + р, (Л)[х„ (к - 1) - х°(к -1)] Шукаємо тах6'({р/}) = =тах ЕЕс„х.а„+ЕЕЕх«а>-,(р>(к^а.и(р,(*))} І І /-1 гп л } на п-вимірному гіперкубі 0 < Р> < 1, ( у = 1,7 ) і знаходимо оптимальні значення р° (к). Обчислюємо а° = аіг(р°(к)), у = 1,7 ,і є 1,7. Записуємо і розв’язуємо задачу з апретованими змінними (10.5.9)—(10.5.12) для нових значень коефіцієнтів а“ і знаходимо її розв’язок х°(к), і = 1,7 , а також обчислюємо х°(к) = х°(к)а°. Запишемо двоїсту задачу для агрегованої задачі (10.5.13)— (10.5.15) і знаходимо її оптимальний розв’язок { }, { 8* (к)}. Для знайдених значень {£°(к)}, 7 = 1,7, формуємо та розв’язуємо задачі для окремих блоків (10.5.16)-(Ю.5.18) і знаходимо їхні розв’язки І^(к)}. Перевіряємо умову оптимальності (10.5.22) для поточного розв’язку {х°(А)}. Якщо (10.5.22) виконується як строга рівність, то кінець, {х° (А)} - оптимальний розв’язок, інакше переходимо до (к+1)-ї ітерації.
Зайченко Ю.П. Розділ 11 ПРИЙНЯТТЯ РІШЕНЬ В КОНФЛІКТНИХ СИТУАЦІЯХ 11.1. ОСНОВНІ ПОНЯТТЯ І ВИЗНАЧЕННЯ В ОБЛАСТІ ТЕОРІЇ ІГОР. ПОЗИЦІЙНІ ІГРИ З іграми людство стикається протягом всієї своєї багатовікової історії. Існують різні види ігор: салонні ігри, спортивні ігри і т.п. Якщо розглядати салонні ігри, то гра починається з деякої вихідної позиції і складається з послідовності ходів, які гравці роблять по черзі. Деякі ходи можуть бути випадковими (наприклад, кидання кістки, тасування колоди карт). В деяких іграх, наприклад шахи і шашки, немає випадкових ходів. Крім того, ігри бувають з повною інформацією, коли попередній хід супротивника відомий, і з неповною інформацією, коли він не відомий і гравець повинен робити наступний хід, не знаючи точної позиції гри. Позиційні ігри В наше загальне уявлення про гру входять такі три елементи: 1) множина ходів, які можуть бути як особистими так і випадковими; ходи гравців чергуються; 2) наявність інформації про гру, яка може бути повною або неповною; 3) функція виграшу. Визначимо перш за все топологічне дерево, або дерево гри, як скінченну сукупність вузлів (названих вершинами), які сполучені лініями (ребрами), так, що виходить зв’язний граф, що не містить простих (замкнутих) циклів. В результаті ми приходимо до такого визначення ВИЗНАЧЕННЯ 1: Нехай Г-топологічне дерево з виділеною початковою вершиною А. Будемо говорити, що вершина С слідує за вершиною В, якщо послідовність ребер, що сполучають А і С проходить через В.
Дослідження операцій Говоритимемо, що С слідує за В безпосередньо, якщо існує ребро, що сполучає В із С. Вершина х називається кінцевою, якщо за х не слідує жодної вершини. ВИЗНАЧЕННЯ 2: Позиційною грою п осіб ми називатимемо гру, в якій задані такі елементи- 1) топологічне дерево Г з виділеною вершиною А, яка зветься початковою позицією гри; 2) функція виграшу, яка ставить у відповідність кожній остаточній позиції (вершині) дерева деякий л-мірний вектор (л - число гравців); 3) розбиття множини всіх неостаточних позицій (тобто неостаточних вершин) дерева Г на (и+1) множин: 80,5,,...,8п, що називаються множинами черговості, де 80 - позиція з випадковим ходом; 4) імовірнісні розподіли для кожної позиції із 50на множині безпосередньо слідуючих за нею позицій; 5) розбиття множини 8І для кожного гравця (/= 1,2,...,л) на підмножинн 5/ , що називаються інформаційними множинами. При цьому позиції з однієї і тієї ж інформаційної множини мають однакове число безпосередньо слідуючих за ними позицій, тобто - альтернатив, і жодна позиція не може слідувати за іншою позицією з тієї ж самої інформаційної множини; 6) для кожної інформаційної множини 8. задані множини індексів разом із взаємно однозначними відображеннями множини І' на множині альтернатив кожної позиції з 8!. Позначатимемо гру також через Г. Тут перераховані всі елементи гри. Умови. 1) встановлює, що є початкова позиція;\ 2) задає функцію виграшу; 3) розділяє множину неостаточних позицій на позиції з ходом випадку (З'о) і особисті позиції, відповідні кожному з гравців (80,8і,...,8„). 741
Зайченко Ю.П. Приклад 11.1 «І ра в орла» Гравець І вибирає решку (Р) або герб (Г) Гравець 11, не знаючи вибору іравця 1, також вибирає Р або Г. Якщо обидва супротивники роблять однаковий вибір, то гравець 11 виграє у гравця 1, в протилежному випадку - програє (тобто гравець І виграє одиницю). На дереві гри (рис. 11.1) вектори при остаточних позиціях представляють функцію виграшу. Число, при кожній з решти позицій, означає гравця, якому належить певний хід у даній позиції. Затінена область охоплює позиції з однієї інформаційної множини ВИЗНАЧЕННЯ 3: Гра /'називається грою з поєною інформацією для гравця і, якщо кожна його інформаційна множина 8' складається з одного елемента. Інакше говорять, що є гра з повною інформацією, якщо в Г кожний гравець має повну інформацію. Наприклад, шахи і шашки - це ігри з повною інформацією, а бридж і покер - ні. 11.2. СТРАТЕГІЯ ГРИ. НОРМАЛЬНА ФОРМА ГРИ. АНТАГОНІСТИЧНІ ІГРИ Важливим елементом гри є стратегія, під якою розуміється план розгортання гри. ВИЗНАЧЕННЯ 4: Стратегія гравця і є деяка функція, яка ставить у відповідність кожній інформаційній множині 8' цього гравця деяку альтернативу з множини альтернате, що описується 742
Дослідження операцій відповідним індексом з множини / (множини індексів всіх альтернатив). Множину всіх стратегій гравця і позначатимемо Е(.. Насправді, нас (також як і учасників гри) цікавить, які зі стратегій є найкращими з погляду максимізації частки кожного гравця у виграші (очевидно, кожний гравець і прагне максимізувати і-у компоненту функції виграшу). Оскільки результати випадкових ходів відомі тільки в імовірнісному значенні, то природно розглядати математичне очіку- вання функції виграшу, визначене у разі, коли гравці використовують заданий набір стратегій Тому, для математичного очікування функція виграшу за умови, що гравець і приймає стратегію є Е(. можна використовувати такий вираз: /7(сг,,сг,..... сг„) - [П, (сг,,сг2,....сгл), 772(ст,,о-2,..., сгл),...,77„(сг,,а2 сгп)] Отже, функцію виграшу можна записати у вигляді «-мірної таблиці п векторів розмірності п. У випадку п = 2, її можна представити у вигляді деякої матриці А - ||а(/Ц. Така матриця називається нормальною формою гри. Приклад 11.2 У грі в орла кожний гравець має 2-і стратегії: решку (Р) або герб (Г). Нормальною формою гри буде гака матриця- •м р г р (-і;і) (•;-•) г (1;-1) (-1;1) ВИЗНАЧЕННЯ 5: Гра називається скінченною, якщо її дерево містить скінченне число вершин (наприклад, шашки, шахи). Відмітимо, що в скінченній грі кожний гравець має лише скінченне число стратегій. 743
Зайченко Ю.П. Ситуація рівноваги ВИЗНАЧЕННЯ 6: Нехай дана гра Г Говорять, що ситуація (тобто набір стратегій о\ ...,сгл) рівноважна або, що вона є ситуацією рівноваги, якщо для будь-якого і = \,2,...,п і для будь- якого ст, є Е, маг місце нерівність: 77, (ст*,а',а’,, , о, ,,ол) < 77,О-*,...,сг*,, ст’, ст’+1сг*) Іншими словами, ситуація рівноважна, якщо жоден гравець не мас жодних розумних підстав для зміни своєї стратеїії, за умови, що вся решта гравців збирається дотримуватися своїх стратегій. В цьому випадку, якщо кожний гравець знає, як і-ратимуть інші, то він має підстави дотримуватися тієї стратегії, яка відповідає цій ситуації рівноваги, тобто, гра стає стійкою. Приклад 11.3 Для гри Г, в нормальній формі: А А (2;1) (0;0) а. (0,0) (І;2) Як (а,,р.) так і (а2,Р2) є стратегіями рівноваги. Не кожна гра має ситуації рівноваги (наприклад, гра в орла). Взагалі, якщо гра не має ситуацій рівноваги, то зазвичай деякі гравці намагаються відгадати стратегії решти учасників, зберіїаючи свої власні в таємниці. Можна довести, що в іграх з повною інформацією ситуації рівноваги завжди існують.
Дослідження операцій Розкладання гри Розглянемо питання про розкладання гри. Говоритимемо, що гра Г розкладена в деякій позиції X, якщо не існує інформаційних множин, які містили б позиції з таких двох множин одночасно: а) позиція X і всі насгупні за нею позиції; б) решта позицій дерева гри. В цьому випадку ми можемо виділити піді ру Гх, що складаезься з позиції X і всіх наступних за нею позицій і так звану фактор-гру ГІX , що складається з усіх позицій, що залишилися, плюс X. тобто розкласти іру Г. Для фактор-гри позиція X буде останнью (кінцевою). Якщо ми розкладемо гру в X, то можна також розкласти стратегію сг на 2 частини: 1) сгіГ/у , яка є обмеженням сг інформаційними множинами з ГІХ ; 2) сг, г , яка є обмеженням сг інформаційними множинами з Обернено, страгегія для ГІX і стратегія для Гх можуть бути з’єднані очевидним чином у стратегію для всієї гри Г. ТЕОРЕМА 1: Нехай Г розкладена у позиції X. Дія є поставимо у відповідність позиції X (що розглядається як остаточна позиція для ГІХ) виграш П(<л} Г х,а2 г х,...,ап г х). В цьому випадку П(ау,аг,...,аіІ) = П(а}, ,х,аг, х,...,апІ х ). Доведення цієї теореми не складне і надасться читачу На підставі цієї теореми можна довести таке твердження: Нехай гру Г розкладено в X і нехай сг є Е, така, що: а) сг, г ,сг2 г ,...,сггі г - є ситуація рівноваги для Гх; б) сг( г , сг2 ГІ гсгл Г/ г - є ситуація рівноваги ГІХ, з виграшем Гіх,<у-, ГІХ,...,(УП ГІХ), складеним для останьої іюзиції X. Тоді (сг(, сг2,..., сгя) є ситуація рівноваги. 32' 745
іайченко Ю.П. ДОВЕДЕННЯ Нехай сг, єЕ і /Цст, г ,о\! ,...,апГ) є сшуацією рівноваї и іля Гх, го ми магмо: П {(У , ,(У,Г,.. ,(У,г,...,СУ„г )< Піст,, ,(У2Г ,...,<7„г ) З другою боку в силу (б) ми знаємо, що якщо позиції ¥ приписаний виїраш П(су] г ,су1 г ,—,суп г ), іо / л’°Т/ \ ,СГ,7 V -СУ,, І П{(7}1 х,СУт / Х,..,(У:/ х,-.,СУаІ Л) Далі, виграш у даній ситуації є зважене середнє виграшів у деяких остаточних позиціях. Отже, якщо виїраш іравця і в даній остаточній позиції (А) зменшується, то його очікуваний виграш при будь-якому виборі сзратегій буде або залишагься тим самим, або зменшиться. Тому, застосовуючи теорему 1, ми озримаємо нерівність: /УДсг,,...,^-,,.. ,сг„)< П Так, що (єу},...,суи) є ситуацією рівноваги. Тепер ми можемо довести такий дуже важливий результат. ТЕОРЕМА 2 Будь-яка скінченна гра п осіб з повною інформацією має ситуацію рівноваги. ДОВЕДЕННЯ. Визначимо довжину гри як найбільше можливе число ребер, яке необхідно пройти перш, ніж потрапити в кінцеву позицію; тобто найбільше можливе число ходів до кінця іри. Очевидно, що скінченна гра має скінченну довжину. Доказ проводиться по індукції по довжині іри Якщо Г має довжину 1, то не більше ніж один гравець мас можливість зробити хід і він добивається рівноваги, вибираючи свою найкращу альтернативу. Якщо гра [ має довжину т, то з огляду на те, що інформація повна, вона розкладається на декілька підігор довжини, меншої, ніж т. То за припущенням індукції кожна з цих підігор має ситуацію рівноваги, і на підставі теореми 2 вони утворюють сиіуашю рівноваги для і ри Г 746
Дослідження операцій Антагоністичні ігри ВИЗНАЧЕННЯ 7 Гра Г називається грою з нуіьовою сумою, якщо в кожній остаточній позиції функція виграшу (П},П~,,...,Пп) задовольняє умові: п £>,=0 (11.1) /-і Тобто, сумарний виграш рівний сумарному програшу ВИЗНАЧЕННЯ 8: Гра 2-х осіб з нульовою сумою називається антагоністичною або строго конкурентною. У випадку антагоністичної іри можна просто задавати першу компоненту вектора виїрашів Друга компонента обов’язково рівна першій з протилежним знаком В цьому випадку назвемо першу компоненту просто виграшем. Дай покажемо, що антагоністична гра відрізняється від решти ігор тим, що в ній немає підстав для будь-яких переговорів між гравцями оскільки, якщо один виграє, то інший програє. Значення цієї властивості випливає з такої теореми. ТЕОРЕМА 3. Нехай (<7, ,<72) і (г^г,) - дві ситуації рівноваги антагоністичної гри. Тоді, і і су) також с ситуаціями рівноваги. При цьо \іу: П(о},а2) = П(г„г2) = П(у,су) (11.2) ДОВЕДЕННЯ. Ситуація (<7,,<7,)- рівноважна, отже П(су, <7,) > П(т},а2). Але з другого боку, (г|,г,)теж ситуація рівноважна Тому /7(г,,<72)> П(у,г2). Звідси випливає, що П(ст.,<72)> П(у,ст2)> П(у,г2). (11 3) Але по аналої її: П(у,г,)> П(а,,т,)> ІЦс^су). (11.4) 1 ці дві системи нерівностей доводять рівність (11.2). Далі для будь-якого <71: 32* 747
Зайченко Ю.П. П(сУ},о2) < П(а,,ст-,)-ГІ(т ,о2) (11.5) 1 для будь-якого сг,: /7(А,о-2)>/7(грг,)=/7(г..а,). (116) Отже. (г, ,сг2) с ситуацією рівноваги. Аналогічно і рівноважна ситуація (сгиг9) Нормальна форма гри Нормальна форма антагоністичної гри зводиться до деякої матриці Л = ||«ч| / = 1,/и - стратегія гравця 1; у = 1, я - стратегія іравця 2; <т; - виїраш іравця 1 (програш гравця 2), якщо гравець 1 вибирає стратегію і, а 2-й іравець - стратегію у . Як буде показано далі (ситуація - пара стратегій (і, у)) буде рівноважною тоді і тільки тоді, коли відповідний елемент а:/ буде найбільшим по стовпцю і одночасно найменшим по рядку. Такий елемент називається сідловою точкою матриці А. Приклад 11.4 Нехай матриця гри Я(| має такий вигляд: 5 1 Л= 3 [2] -З 0 о 4 1 Дана матриця має сідлову точку аї2 = 2. Якщо гравець 1 відмовиться від вибору стратегії іі = 2 і вибере стратегію ї = 1, то іравець 2 також вибере стратегію у = 2, і виграш гравця 1 складе а,2 = 1 < а12 = 2. Аналогічною буде ситуація у випадку і = 3. Якщо ж іравець 2 відмовиться від своєї стратегії у = 2 і вибере стратегію / = 1 або у = 3, то його програш збільшиться 748
Дос ііджєння операцій Таким чином, стратегії і = 2,у = 2 с рівноважними і їм відповідає сідлова точка а22 = 2 матриці А. Назвемо величину У} — тах тіп а - нижньою ціною гри (це > і 7 гарантований виграш першого гравця, при будь-якій стратегії і-равця 2), а величину У2 = тіп тах а - верхньою ціною гри (гарантований / і програш гравця 2 при будь-якій стратегії гравця 1). У загальному випадку: У}<У2. (11-7) Проте, якщо матриця А мас сідлову точку а/0 -0, то тах тіп а - тіп тах а.. - а|0 0. (11.8) Таким чином, у разі наявності в матриці А сідлової точки аі0 0 , оптимальні стратегії обох гравців (ї(), у0) і при цьому У} = У2 У , де У - ціна гри. 11.3. ТЕОРЕМА ПРО МІНІМАКС ДЖ. ФОН НЕЙМАНА. ЗАСТОСУВАННЯ ЛП ДЛЯ РОЗВ’ЯЗАННЯ МАТРИЧНИХ ІГОР Розглянемо антагоністичну гру двох осіб з платіжною матрицею А в загальному випадку, коли А не має сідлової точки. Введемо поняття змішаної стратегії ВИЗНАЧЕННЯ 9: Змішаною стратегією гравця 1 в антагоністичній грі двох осіб ми називатимемо вектор X - [х(] і = \,т , такий що 0 < х. < 1 і = 1 (119) ;=і 322 749
Зайченко Ю.П. ВИЗНАЧЕННЯ 10: Змішаною стратегією гравця 2 в антагоністичній ірі двох осіб ми називатимемо вектор Е = 1', ] .І = М, такий що уу > 0 і ±У/ =1 (И10) Величину .у можна трактувати як імовірність вибору іравцем стратегії і, а у/ - відповідно імовірність вибору ним стратегії у . ВИЗНАЧЕННЯ 11: Якщо .у — І , відповідно уі = 1, то така стратегія називається чистою Нехай гравець 1 використовує свою змішану стратегію X, а гравець 2 свою змішану стратегію У. Тоді математичне очікування виграшу 1-го гравця (програшу другого) дорівнює: У(Х,У) = ХТАУ При цьому іравець 1 прагне максимізувати свій виграш при будь- якій відповіді гравця 2. ВИЗНАЧЕННЯ 12: Нижньою ціною гри ми називатимемо гарантований виїраш гравця І при будь-якій відповіді гравця 2: тахтіп ХГАУ = І2. (Н-И) ВИЗНАЧЕННЯ 13: Верхньою ціною гри ми називатимемо гарантований мінімальний програш гравця 2 при довільній стратегії іравця 1 тіптах Хт АУ = У2. (1112) Справедлива така основна теорема матричних ігор двох осіб, сформульована Дж. Фон Нейманом (теорема про мінімакс). ТЕОРЕМА ПРО МІНІМАКС: Кожна антагоністична гра двох осіб мас рішення в чистих або змішаних стратегіях, і при цьому нижня ціна гри дорівнює верхній ціні гри і дорівнює ціні гри, тобто: тахтіп АгГЛК = тіптах ХТАУ = ХІАУп = И . (11 13) Аго Х>0 К>0 Л>0 0 0 ' ' ДО (*0Л) - оптимальні змішані стратегії гравців 1 і 2 відповідно. 750
Дослідження операцій Ця теорема має фундаментальне значення для всієї теорії ігор двох осіб. ДОВЕДЕННЯ Для доведення використовуємо теорію двоїстості ЛП Нехай другий гравець вибирає свою чисту сгратеию ] (тобто стовпець 4>- Тоді И. = тах тіп ХтА . (11.14) Хє-Х- і ' Таким чином задачу першого гравця можна записати як задачу ЛП: тах У} (11.15) за умов: ХТАІ >У„ ,/=Бц (Н16) £х,=1; (11.17) *-і х. >0. (11.18) У свою чергу, нехай гравець 1 вибирає чисту стратегію і (тобто рядок Л ). Тоді гравець 2 праіне мінімізувати свій програш, і ми маємо: К, = тіп тах А У. Г і (И.19) Тоді задачу гравця 2 можна записати гак: тіп У2; (11.20) за умов: А:¥ <У2, і=1,ія, (1121) ї>,=і; (11-22) 7=1 у,>0. (11.23) Запишемо ці дві задачі в розі орнсному вигляді: 32** 751
іаиченко Ю.П Задача і равця 1 тахГ, (1124) за умов: - '^ацхі <0. ] = 1,п, (11.25) 1=1 Е\=К (11.26) І=І Л-, >0, / = . (11.27) Задача гравця 2 ттГ, (11.28) за умов’ "X а»У, + уі - °’ * = й»й, (И -29) /=і £у,=1; (11.30) !-Л ^>0, 7 = їїї. (11.31) Неважко побачити, що задачі 1 і 2 є парою двоїстих задач ЛП. Якщо в якості двоїстих змінних у задачі іравця 1 вибрати У г 7 = 1,л та Г,, то отримаємо задачу гравця 2 (11.28-11.31). Тоді на підставі основної теореми двоїстості про оптимальні рішення, цільові функції обох задач повинні бути рівні для оптимальних розв’язків, тобто. тах = тіп И, = V, що і потрібно було довести. З приведеного доведення виходить, що для знаходження оптимальних стратегій гравців у матричній грі двох осіб з нульовою сумою можна застосувати апарат ЛП, записавши відповідну задачу гравця 1 (або гравця 2). 752
Дослідження операцій Тоді знайшовши розв’язок прямої задачі і оптимальну стратегію одного іравця, можна одночасно знайти і стратегію іншою і равця як рішення двоїстої задачі Приклад 11.5 Розв ‘язати матричну гру з матрицею методо м ЛП (лінійного програмування): 'З 6 1 4 А = 5 2 4 2 1 4 3 5 Розв’язок: Запишемо задачу максимізацїї виграшу 1-го іравця тах V тах V Зх, + 5х, + X, > V -Зх, - 5х2 - х3 + V < 0 Ц| 6т, + 2х2 + 4х3 > V -6х, - 2х2 - 4х, -- V < 0 и2 X] + 4х2 + Зх3 > V • —> -X] - 4х2 - Зх. + V < 0 и, ► - 4Х) + 2х2 + 5х. > г -4Х) - 2х, - 5х, + г < 0 и4 х1 і- х2 + х3 = 1 х( + х, + х3 = 1 х,,х2,х, > 0 х|5х2,г3 >0 з Вводимо вільні змінні и,, и2, и3, и4 та штучну змінну у в цільову функцію. Тепер функція мас такий вигляд- тах(У - Му}). Будуємо таблицю 1 га розв’язуємо її звичайним симплекс ме годом. 32’ 753
кійчснко Ю.П. Таблиця 1 л'| V, <3 V и, 11, из и4 З'ї <-л-, 0 0 0 1 0 0 0 0 0 в А А1> А А 4 4 4 4 Аі 4 4 0 0 -3 -5 -і і і 0 0 0 0 0 Ц2 0 -6 -2 -4 і 0 1 0 0 0 0 из 0 1 -4 -3 і 0 0 1 0 0 0 и4 0 -4 -2 -5 і 0 0 0 1 0 <--М Л 1 1 1 1 0 0 0 0 0 1 д -м -м -М -М -і 0 0 0 0 0 т Таблиця 2 -V, *з V ч. ч2 из «4 с,\с( 0 0 0 1 0 0 0 0 в V 4 Д 4 4 4 4 4 4 4 0 и! 3 0 -2 2 і і 0* 0 0 0 и2 6 0 4 2 і 0 1 0 0 <—0 из і 0 -3 -2 і 0 0 1 0 0 и4 4 0 2 -1 і 0 0 0 1 0 1 1 1 1 0 0 0 0 0 д 0 0 0 0 -1 0 0 0 0 754
Дослідження операцій Таблиця З *1 X, Х2 V Ч| из и4 С,\С/ 0 0 0 1 0 0 0 0 В Л 4 4 А, 4 4 А 4 4 4 0 и1 2 0 1 4 0 1 0 -1 0 0 Ц2 5 0 7 4 0 0 1 -1 0 1 V 1 0 -3 -2 1 0 0 -1 0 <-0 «4 3 0 5 1 0 0 0 -1 1 0 X, 1 1 1 1 0 0 0 0 0 А 1 0 -3 -2 0 0 0 1 0 Таблиця 4 хі х2 *3 V и. и. и. «4 С,.\С; 0 0 0 1 0 0 0 . 0 В X 4 А 4 4 4 4 4 4 4 0 1/8 1 0 0 0 1/8 1/8 -1/4 0 0 Х2 1/2 0 1 0 0 16 -1/6 0 0 0 Х1 1/8 0 0 0 0 -13/24 19/24 3/4 і 0 Х3 3/8 0 0 1 0 -7/24 1/24 1/4 0 1 V 13/4 0 0 0 1 1/12 5/12 1/2 0 А 13/4 0 0 0 0 1/12 5'12 1/2 0 Згідно останньої таблиці, ми одержали: о 1 . о 5 о 1 0 п ~ 12’ Уг ~ 12’ Уі ~ 2’ Л ~ ’ 4 ^2*** 755
Зайченко Ю П. 11.4. РОЗВ'ЯЗАННЯ ІГОР 3 МАГРИЦЕЮ[2х «] І МАТРИЦЕЮ[т х 2] Задача [2хп] Нехай матриця Л має вигляд: л=Г°іі " " аі» ,°21 а22 ” а2г ” а2п Запишемо задачу першого іравця: тах V,, а„х,+а2ух, > V,, і = \,п. Дану задачу представимо у вигляді: тах тіп(а1).х| + а2]х2)-, х, + х2 =1; х, = 1-х2. Підставимо (11.33) в (11.32). Отримаємо: тах тіп(є/.. + (а, - а,. )х,). (11.32) (11.33) На інтервалі [0;1] будуємо функцію /у(х2) - + (а2)-а. )х,. Дана пряма проходить через точку і при х2 = 0 та а2} при х2 = 1. Шукаємо нижню оімнаючу функцію Дх,): /(х2) = тіп {а,. + (а2] - а1у )х2} • Знайдемо її максимум. Нехай максимум досягається на перетині прямих /Дх2) та /Дх2). Тоді записуємо таку систему рівнянь, де - нижня ціна гри. а1/х1+а2/х,=и,; аіЛі +а2*х3 = и2; х, + х, = 1; х,,х, >0. 756
Дослідження операцій Розв’язуємо задачу графоаналітичним методом (рис. 11.2). Розв’язуємо дану систему. =лиХ|+а24х2; ам + -ам>х2=аи + (аи ~а^х2< 0 0.0 та знаходимо х, та х, = 1 — х,. Приклад 11.6. Розв’язати таку задачу і знайти стратегії обох гравців. Г2 3 1 51 А = 4 16 0 Розв’язання: Розв’язуємо дану задачу графоаналітичним методом' Х2 Рис. 11.3 757
Заіїченко Ю.П. Стратегія першого гравця визначається таким чином Зх, + х, = V,; х, + 6х, = V,; X, + X, = 1 о . 5 2 17 Звідси отримуємо, ЩО X, = — , х2 = —, V, = — . Стратеї ія другого іравця визначається таким чином: Зу2 + У З - Р2 ’ У2 + 6Уз = Г2 ' У 2 + Уз = 1 О 5 2 17 Звідси отримуємо, що у2 = — , у, = — , V, = -— , у, = 0, у_. = 0 ЗАД А ЧА з матрицею (т*2) Нехай матриця А має вигляд: «п «12 • «21 «22 А = • «,2 _ат\ Задача другого гравця при обранні першим і-ої стратегії матиме вигляд г, = тіп тах (а,, у, + а,2у2), У і + У, = 1; або тіптах(п„ +(а,2 -а,,)у2); 0 < у2 < 1 758
Дослідження операцій В даному випадку знаходимо верхню огибаючу /,(%) і знаходи- мо її мінімум, який однозначно визначає суттєві стратегії гравця 1: ї, та /,. Приклад 11.7 Розв’язати таку задачу: ’2 4 5 0 Розв’язання: Рис. 11.4 у, + бу2 = ; 5^і =^; V, +у, = і. 6 4 Звідси у, + 6у2 =5у,, 6у2 = 4у,. Тоді у, = у2=—, г2 = 3 . 759
Зайченко Ю.П. 11.5. ОСНОВИ ТЕОРІЇ КОРИСНОСТІ У антагоністичній ірі двох осіб виходять із іакого припущення, що два іравці мають прямо протилежні цілі, тобто, скільки виграв перший гравець - стільки програв другий гравець. Але так буває не завжди, якщо ставки у грі с не гроші, а товари, то їх цінність для різних осіб буде різна. Тому при розгляді таких задач слід ввести поняття індивідуальної корисності або цінності результатів. Теорія корисності Основи теорії корисності були розроблені Дж Фон Нсйманом і О Моргенштерном [36] Нехай є множина подій (результатів) А, В, С. На цій множині можемо ввести деякі відношення. 1) байдужості (еквівалентності); 2) переваги. Розглянемо аксіоми корисності на яких базується теорія корисності АКСІОМИ ТЕОРІЇ КОРИСНОСТІ А1. Для будь-яких двох подій А, В виконується' А > В або А — В або В >- А . А2., А ~ А , для кожного А. АЗ. Якщо А ~ В, то В ~ А . А4. Транзитивність щодо операцій еквівалентності. Якщо А — В і В — С, то А ~ С. А5. Якщо А >- В і Д > С, то А >- С. А6. Якщо А > В і В ~ С, го А> С. А7. Якщо Д - В і В>-С, то А >- С Аксіома 1 називаєт ься трі котом іч ним законом Аксіоми 2-4 означають, що ~ є відношення еквівалентності Аксіома 5 разом з 1 означає, що >- є відношення порядку Аксіоми 6,7 означають, що відношення > транзитивно відносно ~. Нехай є дві події: А і В, і число г є [0; 1]. 760
Достідження операцій ВИЗНАЧЕННЯ 14: Лотерея — деяка подія С, еквівалентна комбінації події А з імовірністю г і події В з імовірністю (1 — г). С ~ гА + (]-г}В. Можемо розі лядати складові лотереї. Лотерея підкоряється всім законам лінійної алгебри, тобто вико- нуються такі аксіоми А1. Комутативності: гА + (ї-г)В = (1 -г)В + гА . А2. Дистрибутивності: гА + (1 - г )[$С + (1 - 5)0] - гА + (1 - г )5С + (1 - г)(1 - 5)0 Властивості лотерей: 1. Якщо А - С, то гА + (1 - г}В ~ гС + (1 - г)В . 2. Якщо А >- С, то гА + (1 -г)В >- гС + (1 -г)В . АЗ. Неперервності: Нехай А і В, С такі, що А > С, С > В, тоді Зг, г є [0; 1], така, що виконується С~гА + (]-г)В (1134) ТЕОРЕМА 5 (сяйності) Якщо А > С, С > В і Зг, г є [0; 1], таке що С ~ гА + (1 - г )В, то г - єдине. ДОВЕДЕННЯ. Припустимо, що це не зак і існує інше 5 . Нехай 5 < г < 1 і ми маємо 0<(г-5)< 1 -5. Так як В = {(г-5)/(1-5')Д + (1-г)/(1-5)Д] (1135), ТО ЛО’І срея (г -5’)/(1 -5)Д + (1 -т)/(1 -5)Д > В . Ромлянемо лотерею гА + (1— г)В, вона еквівалентна такій лотереї: гЛ+(1 Г)В = лЛ + (1 5)[(г-5)/(1 5)Лє(1 г)/()-5)В]>.їЛ + (1-л)В (11.36) Звідси слідує, що г - єдине 761
Зайченко Ю.П. ТЕОРЕМА 6 (про наявність функції корисності) |36| Існує функція корисності и . яка відображає множину усіх подій (результатів) у дійсні числа, така що дія кожних двох подій А і В і гє[0;1]. • и(А) > и(В), тоді і тільки тоді, коли А >- В ; (11 37) • лінійність н(гЛ + (1-г)Я) = ги(Л) + (1-г)ц(В); (11.38) • функція и Є ЄДИНОЮ З ТОЧНІСТЮ до лінійного перетворення, тобто, якщо існує інша функція V, що задовольняє умови (11.37Н Н-38), то Г(Л) = сп/(Л) + /?,де а >0. (11.39) ДОВЕДЕННЯ. При А ~ В доведення очевидне. Розглянемо випадок А > В . Введемо дві події £0 та Ех, такі, що Е, Ео та и(Е}) = 1 та и(Е0) = 0 . Розглянемо декілька ситуацій для події А. 1 А >- Е{. Розглянемо таку лотерею: А >- £, >- Ео, тоді по теоремі про не- перервність існує г : Е1 ~ гА + (І —г)Е0, тоді корисність результату: м(£|) = 1 = ги(А), звідси слідує и(А) — Мг. 2. £| >- А >- Ео: існує г\ такий, що А - г\Е\ + (1 - )Е0, тоді и(А) = г\. 3. Ео >- А . Розглянемо Е(| - зЕ, + (1 - з) А; и(Е0) = 0 = 5 + (1 - $)і/(Л) => и(Л) = (-.$)/() - ж) < 0. Доведемо співвідношення (11.37): Нехай Е^А^Ед. Позначимо п(Д) = 5,, и(Д) = 52 і нехай > 52 . Тоді, згідно з виразом в п. 2, маємо: А -8хЕх + (ї — ; В~8?Е}+(\-82)Е0. 762
Дослідження операцій Так як 5) > х,, то можна показати, що (5,£, + (1 )Е0) > (52Е} + (1 -х2 )Е0) . Звідси слідує, що А >- В. Можна також довести і обернене твердження. Доведемо співвідношення ( 11.38) и(гА + (1 - г)В) = ги(А) + (1 - г)и(В); Розглянемо гє[0;1] і м(Л) = 5І, и(В) = 5 А -^Е, +(1-5,)Е0; В-82Еі+(\-51)Е0. Складемо з них лотерею: гА + (1-г)В ~ г(Л|Е] +(1-5і)Е0) + (1-г)(52Е1 + +(1-52)Е0 = (г$( +(1-тЦ)Е1 +(г(1-51) + (1-г)(1-52))Е0. Тепер візьмемо функцію корисності: и{гА +(1-г)В} = (/-51+(1-є).ї2)м(£1) = ги(24) + (1-г)н(в). (11.41) Покажемо єдиність функції корисності з точністю до лінійного перетворення. Нехай и(А) = г та подія Ех > А > Еп. По доведеному вище справедливо А ~ гЕ} -г (1 - г)£0. Розглянемо функцію V : Г(Е0) = /?, Г(Е1)-К(Еп) = сг. Е(А) = Р(г£, + (1 - / )£„) = гГ(£,) + (1 - г)Г(£0) = = / (« + /?) + (! ~' )Р = га + Р = а(и(А)) + р. Таким чином, теорема 6 доведена повністю.
Зайченко Ю.П. 11.6. ІГРИ 13 НЕНУЛЬОВОЮ СУМОЮ. БІМА ТРИЧНІ ІГРИ На практиці зустрічаються задачі, які с іграми із ненульовими сумами. Біматрична гра — це гра, в якій задана матриця виграшу першого гравця А і матриця виграшу другого гравця В при виборі відповідних стратегій: Л=11°"11’ і = ^т,І = \,п, 5=М1’ ' = Ь^7=1^- Тут можливі 2 випадки. 1. Можлива некооперативна гра (гравці діють окремо на ринку). 2. Кооперативна гра, коли вони вступають в коаліцію. Позначимо змішані сгратегії обох гравців: ___ т Першого: X = [а, і і — 1,/и, А,- = 1. Другого У = [у, 1 І = 1,/?, £>, = 1 • 7-1 Тоді виникає наступне: для першого гравця оптимальна стратегія визначається з умови: тах тіп X т А У , для другого гравця - з умови: Л>0 І>0 тах тіп Хт ВУ. у>0 т>0 ВИЗНАЧЕННЯ 15. Розглянемо біматричну гру двох осіб. Стратегія (х',У ) називається стратегією рівноваги, якщо для УА' Ф X* і У У ±У виконуються такі нерівності: ХТАУ' <Х"ГАУ‘; Х'ТВ¥ <Х’ТВУ‘. ТЕОРЕМА 7. Кожна біматрична гра має хоча б одну стратегію рівноваги 764
Дослідження операцій НЕКООПЕРАТИВНА БІМАТРИЧНА ГРА ДВОХ ОСІБ____________________________________________ Розглянемо біматричну гру, в якій гравці не можуть вступати в коаліцію, а діють окремо Перший гравець намагається максимізувати свій виграш тах тіп Хт А¥ = и'. (1142) V 1' Цьої о прагне також і другий гравець: тах тіп Хт В¥ = у*. (11.43) І -V Нехай X та ¥ довільні змішані стратегії обох гравців і перший гравець вибирає і-ту стратегію — рядок А,. Тоді його виграш А,¥ . Введемо величину с, =тах{0;,4,.Г-ХгЛг} (11.44) Нехай другий гравець вибирає свою сіратегію В Тоді його виграш дорівнює ХгВ/ Введемо величину: А/=тах{0,ХтВ/-ХтВ¥]. (11.45) Введемо таке перетворення стратегій: Т(Х. X) - (X , У ), де х, + с х.= „ ’ (4.46) 1+Ес, 1-І Ул+СІі Ул=-~- ; (11.47) І+Ь', /=| л=ІкІІ’ г=і^>7=|.« Покажемо, що отримані стратегії, які також є змішаними: 765
Заііченко Ю.П. Також: ї>,= = £— = 1 , де 0 < х < 1,0 < у < 1. п------------п І / <=’ /=1 Змішана стратегія — це рандомінізована стратегія, коли із деякою ймовірнісно вибирається одна із чистих стратегій (рядків матриці А). Справедливе гаке івердження. Твердження, (а , У )=(А, У) тоді і тільки тоді, коли (А', У) стратегія рівноваги. Якщо (А”, У) - стратегія рівноваги, то якщо перший гравець відмовиться від неї, то виграш зменшиться, тобто: А,У<ХТАУ = З іншої сторони, аналогічно і для другого гравця Тобто А'ГВ/<У'ВУ Звідси сі = 0 для довільної о і та =0 для довільної о/ Тоді із виразів (11.46) та (11.47) отримаємо: х, =хі,Х/і та у, = у,,У/ Припустимо, що (А',У) не є стратегією рівноваги. Тоді існує таке X, для якого виграш буде більший X АУ > X7 АУ. Так як X = [х.-] - це змішана стратегія, то існує таке і}, що Л У > Хт А У (знайдеться така чиста стратегія, при якій виграш буде більший). Звідси є', # 0 і х, =-----Ф х . і-Ес. і-1 Аналогічно для У. Якщо X не є стратеї ією рівноваги, го існує такс У , що X' В¥ > Хт В У . Так як У — це суміш чистих стратегій, то 766
Дослідження операцій існує таке у,, що Xі В ц > Хт В¥. Звідси слідує, що є// і уь * у . Отже, твердження доведено Це перетворення Т відображає відрізок [0;1] у гой же самий відрізок [0;1] (дивись рис. 11.5): т Рис 11.5 Це означає, що існує зочка, яка відображається сама в себе. А оскільки відображення Т є неперервним і замкнутим, то за теоремою Брауера: існує така точка ^(А^, У) що Т(Х, У) - (X , У ) = (X, У) А це і є стратегія рівноваги. На відміну від ігор із нульовою сумою, якщо у нас (X ,У ) — одна стратегія рівноваги, а (X ,У )- друга стратегія рівноваги, то стратегії (X ,У ) і (X ,У ) не є стратегіями рівноваї и. Приклад 11.8. Розглянемо біматричну гру з матрицею ?Д(4;1) (0.0)? [(0;0) (1,4)/ (X =[1;0], У =[1;0]) - перша стратегія рівноваги. (X =[0;1], У =[0;1]) - друга стратегія рівноваги. Але в той же час (X , У ) і (X , У ) не є стратегіями рівноваї и.
Зайченко Ю.П. 11.7. КООПЕРАТИВНА ГРА ДВОХ ОСІБ. ЗАДАЧА ПРО УГОДИ. ТЕОРЕМА НЕШЛ Розглянемо випадок бімагричної гри двох осіб, в якій гравці можуть вступати в коаліцію та припускається сумісний вибір змішаних стратегій, а корисність (доля виграшу) може передаватись від одною гравця до іншого. Необхідно визначити умови кооперації. У мови можливості укладання угоди: Нехай для обох гравців задані пара функцій корисності га розглядається множина результатів такої операції. Нехай 5(н, V) —допустима множина результатів кооперації; и - корисність першого гравця; V - корисність другого гравця. Властивості функції 5(и,у): 1 Обмеженість — тобто виграші обмежені; 2 . Замкнутість — ми включаємо точки границі цієї області Якшо допустити можливість створення лотерей, а функція корисності лінійна, то £(и,у) опукла. Кооперація буде виникати у тому випадку, коли виграші гравців будуть більшими, ніж у випадку відсутності кооперації. Нехай (А, В) ~ біматрична гра. Позначимо: и - тахтіп ХТА¥, г>о г>о де =1; =Н І / V = тах тіп ХТВ¥ . г>0 і >0 Виграш при коаліції повинен задовольняти умову (м,и): и > и ; V > у*. Нехай 8 - допустима множина результатів кооперації і відомі и та V , необхідно знайти таку вирішальну функцію <р. що іабезпечить найбільший виї раш кожного гравця. (р\ <р(8,н ,у ) = («,¥’) —арбітражний розв’язок і-ри 768
_____________________________________________Дос ііджения операцій Дослідженням даної задачі займався американський математик Неш. який сформулював такі аксіоми. Аксіоми Неша 1 Аксіома розумності: (м, у) > (и , у ) . 2 . Аксіома допустимості: (и, у) є 8 (її, у) . З.Оптимальність по Парето. Якщо існує така пара (»,у), що (и , у ) > («, у) та (и , у ) є 5(н, у), то (и , у ) = (и, у). 4 . Незалежність від сторонніх альтернатив. Якщо арбітражне рішення (м, у) є Т сі , і (р(8,и ,у ) = (н, у), то розв’язок три на меншій підмножині задовольняє умові <р{Т,и ,м) = (н,у) 5 .Лінійність. Якщо перетворення Т :(и,у) отримується із 5 за допомогою лінійного перетворення, де и = аи + /?,, У = а,У + Д та (р(8,и ,у*) = (и,у), то <р(8,и',м') = (и ,у ), які також зв’язують лінійні перетворення. и = и + /?!; у = а, у + Д. 6 .Симетрія. Якщо(н,у) є 5 тоді і тільки тоді, коли (у,п) є 5 і при цьому їх гарантовані виграші співпадають- и = у*, то також співпадають їх арбітражні виграші и — у. ТЕОРЕМА НЕША: Існує єдина функція <р визначена для задачі про угоди, яка задовольняє аксіо мам 1-6 Доведення основується на двох лемах. Лема 1. Якщо існують такі и>и і у>у - допустимі результати і (п,у) є 5, то функція Неша £(и,у) = (п-п’)(у-у*). досягає свою максимального значення п іьки в одній точці (п, у) . 33' 769
іиііченко Ю.П. ДОВЕДЕННЯ: Припустимо, що це не так, нехай існують дві точки максимума (и , у) іа (и ,і ) і ці точки різні: Позначимо тах у = М - &(и , у ) = £(м , у ) Припустимо, що її >и , тоді у <у . Так як множина 8(и,у)- опукла, то розглянемо точку - опуклу комбінацію (и, у), де: - и + и . - V+у - и-------- і у =------ га їй,у) є 5 . 2 2 Обчислимо функцію £(м,у) : (и ю Д(|/ -»') + (»'-»')] [0’ -г‘) + (у'-у‘)] = 2 ’ 2 _ (л -»*)(у - у*) (и -і/)(у —у") (и -и’)(у-у) __ + _ + _ 1 . , 1 , (и-и")(у'-у) .. (м -и')(у'-у') ,, = -«(« .V ) +----:----= м +-----------> М 1 2 4 4 Тобто, ми отримали точку, в якій значення більше максимальної о. що суперечить припущенню про те, що тах = £(» , у ) = М Звідси точка (к, у) = аг§ тах %(и, у) - являється єдиною. Лема 2. Нехай 8,и,У мають той самий зміст, що в лемі 1 і нехай функція А(п,у) = (у-у’)н + (п-п*)у. Тоді якщо (и,у)є5 , то для всіх (и, у) є 5 справедливе таке: Л(п,у) < Л(н,у) . (И.48) ДОВЕДЕННЯ: Припустимо, що це не так. нехай існує (її, у) , таке що Л(п.у) > А(п, у) . Візьмемо деяке £є[0;1] і виберемо точк} (п,г), яка є випуклою комбінацією (и, у) і (и, у) : її ~ її 4 і:(и - п); у = у+Ду-у). (1.149) 770
Дос іідження операцій Обчислимо: &(и, и) = £(и, V) + еіі(н - и; у - у) + е~ (и - и)( V - у) (11.50) Спрямовуємо Е —> 0 і отримуємо: ^(«,у) = ^(«,г) + £'/і(и-и;у-у) + £'2(ц-гО(У-у)> &(«,у). (11.51) Ми отримали протиріччя з лемою 1, так як гочка (и.у) - точка максимума функції £(і/, у). Неважко побачити, що пряма Л(«, V) являється дотичною до допустимої області рішення, помітимо, що кутовий коефіцієнт , У—V* нахилу дотичної дорівнює: к — ---- и - и ДОВЕДЕННЯ ТЕОРЕМИ НЕША: Припустимо, виконані умови леми 1. Тоді існує тільки одна точка (и, у) максимізуюча функцію Неша %(и, у). Дана точка задовольняє А1 і А2 по побудові. Вона задовольняє також і АЗ. так як якщо (и, у) > (». у) і (и,у)Х(“>у) , то %(и, у) > %(и, у). Вона задовольняє і аксіому 4, так як, якщо вона максимізує £(п, у) на 5, то тим більше вона максимізує дану функцію і на меншій множині Т. Аналогічно, вона задовольняє і аксіому А5, так як, якщо и = ахи + /Зх і у = + /7,, то: Д(и\у ) = {[і/ ~(ахи +/?!)][>’ ~(а,и + Д)]} = а,а2&(и,у). І, звідси слідує, якщо (м,у) максимізує функцію &(и,у) , то: %(и .у ) = тах&(« ,у ). Неважко побачити, що вона задовольняє і аксіому 6. Отже, ми показали, що точка (и, у) задовольняє шести аксіомам Неша. Тепер потрібно показати, що ця точка є єдиною, яка задовольняє усім аксіомам. Розглянемо множину: С/= {(ц, у): Л(и,у)<Л(и,у)} , згідно іемі 2 8<^и. 33* 771
Зайченко Ю.П. Введемо деяке лінійне пере творення. ♦ Т = (и ,і ) • и = (и - и ) Ци -и), V = -X—— V- V Тоді в перетворених координатах и = 1 та V = 1 Запишемо рівняння (11.48) в перетворених координатах: Т = {(« .г ). и + і1 < 2}и >0, г > 0 і крім цього и = V =0 .(11.52) Отже, маємо дві додаткові одиниці корисності, що розділені між гравцями (див. рис. 11.6). В силу симетрії и = у ми маємо єдиний розв’язок (11 48): г/=у=1. (11.53) Припустимо, що умови леми 1 не виконуються, тобто не існує точки (к,т)є5, для якої: и>и , у>у . З причини опуклості множини 5 ми знаємо, що якщо існує точка (и,у)є5, для якої и = и , а у > V , ми в якості (її, у) візьмемо точку в 5, яка максимізує у при обмеженнях и = и . Згідно леми 2, якщо межа множини 5 гладка (тобто вона має дотичну в точці (і/,у)), то пряма, на якій функція Л(и,у) - постійна, є дотичною до 5 в цій точці. Але нахил межі множини 5 в довільній точці є відношенням, в якому корисність може передаватися від одного гравця до іншого. Інакше кажучи, схема Неша стверджує, що додаткова корисність повинна ділитися між гравцями в такому ж відношенні, в якому вона повинна передаватися. А оскільки не передбачається, що корисність лінійно трансферабельна, го природно може існувати лише одна точка, в якій корисність передається в даному співвідношенні к. 772
Дослідження операцій Рис 116 У випадку лінійної трансферабельної корисності завдання ставиться простіше. Дійсно, ми можемо припустити (змінивши за необхідності шкали корисності), що відношення в якому додаткова корисність може передаватися від одного гравця до іншого, дорівнює 1:1. Таким чином, 5 містить всі точки, які лежать на деякій прямій и + V = Р. або нижче за неї, де /? - максимально можлива корисність, яку ці два гравці можуть одержати спільно і разом з тим, вище і правіше за точку (и , V ) (див. рис. 11.7) Розв’язком Неша буде така точка (и, V): Додаткові одиниці корисності діляться помолам між обома учасниками, оскільки: ЗЗ2 773
Зайченко Ю.І1 - . К-(и'+\') - . 7?-(» +г) Д» = и — и ~; Дг = V - V = ---------------------; 2 2 (и + V ) Д І] = II - II - V - V =----- . СТРАТЕГ ІЯ ПОГРОЗ Основним недоліком розглянутого підходу являється те, що стратегія Неша не враховує стратегію погроз. Тобто, в силу різних ситуацій один із гравців може опинитися у більш вигідному становищі і шантажувати іншого гравця з ціллю отримання більшого виграшу. Приклад 11.9 Розглянемо ситуацію: продавець проти покупця Продавець має такі стратегії: а — 1 — продати за високою ціною товар с1 — 103 грн; а - 2 — продати за низькою ціною товар с2 = 500 грн; а =3 — не продавати товар. Покупець має такі стратегії: Ь - 1 — заключити угоду; Ь = 2 — відмовитися від угоди. При цьому він повинен заплати- ти штраф 20 грн. У випадку а = 3 збиток продавця становить - 200 грн, а у випадку Ь=2 збиток покупця становить - 20 грн. Платіжна матриця (А,В) матиме вигляд: а, Ь2 (800,100) (-200,-20) а2 (400 500) (-200 -20) аі (0;0) — 774
___________________________________________Дослідження операцій Ми бачимо, що можливе шантажування з боку другого іравця, оскільки при другій чистій стратеги Ь2 він несе маленький збиток, а у першого гравця великий збиток З урахуванням стратегії погроз Неш запропонував таку трьохкро- кову схему: 1. Перший гравець пропонує свою стратегію погроз X . 2. Другий гравець пропонує свою стратегію погроз У . 3. Вони торгуються між собою і намагаються знайти компро- місний розв’язок — заключити угоду. Якщо це вдається, то вони вступають в договір В іншому випадку, гравці повинні реалізувати свої стратегії погроз. Пошук рішень: у випадку дії механізму погроз, якщо вони не домовились, то виграш обох гравців складає: иу = Х*АУу ; Уу = Х*В¥Г. Стратегія першого гравця: О = О, —> тах; Стратегія другого гравця: К = К —> тах. За наявності погроз функція Неша дорівнює: 8(У,У} = Ш-1/у)(У - Уу) -> тах . ТЕОРЕМА 8. Кожна біматрична гра має хоча б одну точку рівноваги у стратегії погроз. Доводиться аналогічно теоремі про звичайну біматричну гру [36]. ТЕОРЕМА 9. Якщо (х ,у ) і (х ,у ) — дві ситуації рівноваги в стратегіях погроз, то і (х ,у ) і (х ,у) також ситуації рівноваги. При цьому виграші гравців співпадають. ДОВЕДЕННЯ: Доведення даної теореми аналогічне доведенню теореми для іри з нульовою сумою. Виникає питання знаходження оптимальних стратегій за наявності погроз Відповідне рішення залежить від виду межі 8(и,У). Але це завдання спрощується якщо припустимо, що корисність лінійнотрансферабельна між двома гравцями. У такому 33** 775
Зайченко Ю.П. ран можемо вибрати такі шкали корисності, при яких корисності між гравцями передаватимуться в співвідношенні 1:1 Тоді застосування даної теорії тас таке рішення (арбітражна ціна для точки Неша) Якщо /? загальне число одиниць корисності, го арбітражна ціна дорівнює: Х'(4- В)¥ + В и =—------------; 2 - -Хту(А-В)У +К V, =---:----------- (11.55) 2 Не важко побачити, що. Хт(А - В)У — виграш першого гравця із матрицею (А - /?), Х?(В - А)Уі — виграш другого гравця із матрицею (В - А). (11.56) Отже, для знаходження стратегії погроз потрібно знайти рішення іри із нульовою сумою з матрицею (А — В). Тоді рішення за наявності погроз визначається так: 1. Знаходимо (А',,,У ) із задачі тах тіпXі (А-В)У , г V 2. Знаходимо величину /? ; 3. Обчислюємо виграші гравців у випадку дії погроз «1, (ДВ) = та V,. Приклад 11.10 Розглянемо біматричну гру, яка задається матрицею (А, В): (6; 10) (-1;-4)А (-3;-1) (8,4) )' Знайти розв’язок біматричної гри для таких випадків: 1. При відсутності коаліції знайти найкращі стратегії обох гравців і відповідні виграші; 2. У кооперативній грі двох осіб визначити доцільність створення коаліції і знайти точку Неша; 3. Перевірити вплив дії погроз, визначити арбітражний розв’язок у випадку дії погроз і порівняти з точкою Неша. 776
Дос лідж ення операцій РОЗВ’ЯЗОК. 1. Знайдемо гарантовані виграші обох гравців за відсутності коаліції. а) и = тах Хт 4У; У х, = 1; х, > 0, іі = 1 ,т , тах і; за умов: 6Х| -Зх, = и; -ІХ) +8х2 = и; X; + х2 - 1; 7х, -11х2 =0 Знаходимо оптимальні змішані 11 стратеги: хі=у^’ 7 2 18 . 45 5 и = — = —. 18 2 б) V* = тах ХТ ВУ, тах V за умов: 10у, - 4^2 - у; -ІУі +4у2 = г; л+л =і; УрУ2^0; Пу1-8у2=0. 8 Знаходимо оптимальні змішані стратегії: у}=—; 11 V = —»1,895- 19 2. Вважаємо, що маємо гру з лінійно-трансферабельною корисністю. Оскільки для двох стратегій рівноваги х, =[1;0], У|—[1;0] іа х, =[0;1], у2 =[0; 1] суми виграшів не однакові ЗЗ3 777
Зайченко Ю.П. (6 + 10*8 + 4), то перетворюємо масштаб по осі V: V — оп/, так щоб корисності гравців ділилися і передавалися у відношенні 1:1. 6 +10« = 8 + 4а, звідси 6а = 2, а = —. З В перетворених координатах, матриця {А, В ) така: Побудуємо область допустимих рішень 5(и,г), натягнувши лінійну оболонку на точки, які відповідають чистим стратегіям (див. рис. 11.8). Знаходимо точку Неша: 512 28 -_(и +В _ 2 19 + 3 _ 2,5-0,6315 + 9,333 и~ 2 “ 2 ~ 2~ 2 778
Дослідження операцій В вихідних координатах: V — — — З 3,733 — 11,197. а Оскільки ця точка N виходить за границю допустимої області 5(н,г), то за точку Неша обираємо найближчу точку допустимої області, це точка С, таким чином, точка Неша буде така: и — 6; у> = 10. 3. Будуємо матрицю А-В : ‘ 8 1 ' Із з З Знаходимо розв’язок цієї гри для гравця 1: тах и 8 8 1 20 —х. ч---х, = м; З 1 3 2 х, + х2 = 1; 7 28 4 1 24 8 —х.-----х, =0; х, ; х, ; и= — = — $ Тоді, Х?(А -В)¥у = — і знаходимо погроз: 8 28 Х'(А-В)У+П с+Т и, = —-----------= — і-= 5.466 2 2 точку Неша з урахуванням 8 28 . — + — V =-5—— = 3 87 • 2 V І тоді, г = — = 11.6. Оскільки ця точка знов виходить за межі а допустимої області, то необхідно вибрати найближчу до неї точку в допустимій області на відрізку СО. Неважко побачити, що це та сама точка С (и = 6; V = 10) . 33*** 779
Зайченко Ю П. ДОДАТКИ /, ДЕЯКІ ПИТАННЯ ЛІНІЙНОЇ АЛГЕБРИ______ 1.1. ЛІНІЙНА ЗАЛЕЖНІСТЬ І НЕЗАЛЕЖНІСТЬ ВЕКТОРІВ, ЛІНІЙНИЙ ПРОСТІР ТА БАЗИС. Означення 1. Задано множину т-вимірних векторів А|,А2,---,А„ та скаляри к\,к2,...,к„. Тоді т-вимірний вектор Ао виду =кДа' І=І зивається зінійною комбінацією векторів АИА2,. - -,А„. Означення 1.2. Система векторів А={ АЬА2,...,А„ } називаєть- ся зінійно незалежною, якщо рівність £Л,А,=0 (11) «=і виконується тоді і тільки тоді, коли ку=ку=.. .=£„=0. У протилежно- му разі система називається лінійно залежною. Припустимо, що умова (1.1) виконується при деяких к *0. Виб- равши вектор А,і так, що к,, * 0 і перенісши його в праву частину, одержимо. Означення 1.3. Задано множину т-вимірних векторів АЬА2,. ,А„ Множина К всіх лінійних комбінацій векторів {А|,А2,. ,А„} називається лінійною оболонкою (або простором), натягнутою на дану множину векторів: 7? = |а:А = £А,А <13> Розглянемо деякі приклади. 780
Дослідження операцій Якщо п = 2, і задано вектори Аь Аз, неколінсарні один одному, то їхньою лінійною оболонкою є площина. Нехай и=3 і вектори Аь А3, А3 не належать одній площині. Тоді їх лінійною оболонкою буде тривимірний простір. Отже, довільний век- тор А цього простору можна зобразити як лінійну комбінацію заданих векторів (рис. Д.1). При дослідженні деякого лінійного простору важливо вміти знаходити таку, що породжує множину векторів, яка містить мінімальне число векторів, необхідних для задання простору. Така найменша породжуюча множина називається бази- сом, і вона має ряд важливих властивостей. Означення 1.4. Нехай К - деякий простір, породжений систе- мою векторів {А|,А3,...,АП}. Тоді базисом цього простору назива- ється підмножина векторів Ах={А,;,Аі2,...,Аіт} с А, яка має такі властивості'. а) всі вектори базису — лінійно незалежні', б) вони породжують той самий простір (або оболонку), що й вихідна система векторів. При цьому вимірність простору визначається числом векторів базису. Розглянемо деякі важливі властивості базису. Довільний вектор А, множини А можна розкласти через базисні вектори єдиним способом, а саме: А/ = ІХАі’ <є/ь де ІЕ - множина індексів базисних векторів; ку - коефіцієнти розкла- дання нсбазисного вектора А, через базисні 781
Зайченко Ю.П. Таким чином, базис площини (при гл=2) утворює довільна пара векторів, що перетинаються А|, А2. Базис тривимірного простору утворюють три довільні вектори А|, А?, Аз, що не лежать в одній площині і т.д. В загальному випадку для довільного простору К вимірності т будь-яка множина із т лінійно незалежних векторів, які належать К, є базисом даного простору. Опуклі множини, опуклі многогранники та конуси, крайні точки Означення 1.5. Нехай дано множину векторів Аь А2, ..., А„. То- ді їх опуклою комбінацією називається вектор Ао, що визначається співвідношенням: Ао=Е*,А, ,кі>0,і = 1,т:^к, =1- (1.4) Дамо геометричну інтерпретацію опуклої комбінації. Для цього розглянемо деякі окремі випадки. 782
Дослідження операіііїі 1 1) т=2. Тоді А0=/с,А|+к2А2; Л, > Ота У' к, = І, або і=і А0 = Л1А1+(1-А,)А2. (1.5) Розглянемо, що являє собою множина опуклих комбінацій виду (1.5), для чого необхідно змінювати к| від 0 до 1. Очевидно, що при М=0, Ао=А2 при &і=1, А0=Аі, а при 0 < А, <1 вектор Ао розташований всере- дині кута АІ 0А2 і при змінюванні кі від 0 до 1 кінець вектора Ао описує відрізок АьА2 (див. рис. Д.2). Отже, множина усіх опуклих комбінацій точок Аі та А2являє собою відрізок, який сполучає ці точки. з 2) т=3. Тоді Ао=А|А|+А2А2+АзАз; к, >0 та =1- Очевидно, як- ій що один коефіцієнт, наприклад Аз=О, то цей випадок зводиться до попереднього, і вектор Ао належатиме відповідній грані Л,0Л2 піра- міди, ребрами якої є А|, А2та А3(рис. Д.З). У випадку, коли всі к, * 0, то вектор Ао належить внутрішній ча- стині піраміди 0А|А2Аз. Таким чином, множини опуклих комбінацій трьох векторів Аь А2 та Аз являє собою піраміду, бічними ребрами якої є вектори Аь А2- А3. Узагальнюючи ці висновки на випадок довільного т, можна показа- ти, що множина опуклих комбінацій т векторів Аь А2, ..., Ат являє со- бою гіперпіраміду (або конус), бічними ребрами якої є вектори Аь А2, ..., Ат(тобто яка породжується даною системою векторів). Введемо означення опуклої множини точок. Означення 1.6. Множино точок (векторів) К(х) в п—вимірному просторі називається опуклою, якщо для усіх х(,х; є А їх довільна опукла комбінація х0 = кх1 + (1 - А)ху для всіх 0 < к < 1 також нале- жатиме множині К(х). Як було показано вище, опукла комбінація пари векторів (точок) х.,х являє собою відрізок, що їх сполучає. Тому можна дати ще од- не еквівалентне означення опуклої множини. Множина К називається опуклою множиною, якщо для будь-якої пари точок (х, ,ху ). які належать Я, відрізок, що їх сполучає, також належить цій множині. 783
Зайченко Ю.П. Рис Д 5 На рис. Д.4 зображено деякі опуклі множини, а на рис. Д.5 - не- опуклі. Серед опуклих множин важливе значення в лінійному програму- ванні мають множини, межами яких є площини (гіперплощини). Означення 1.7. Множина /?(х) називається замкненою, якщо ра- зом із своїми внутрішніми точками вона включає і всі граничні точки. Означення 1.8. Множина Р(х) називається обмеженою тоді і тільки тоді, коли існує таке скінченне число с > 0, що для усіх х, є/?(х),||х,||<с- Означення 1.9. Півпростором А(х) називається множина всіх векторів х, які визначаються умовою Я(х) = { _ л х: АТх = У а.х, 7=1 (1-6) Оскільки рівняння межі: І»,.,*»- П” 7=1 визначає гіперплощину в п-вимірному просторі, то півпростір являє собою частину простору Км, межею якого є гіперплощина, що зада- ється рівнянням (1.7). Півпростір для випадку л=2 (тобто площина) зображено на рис. Д.6. Неважко показати, що півпростір є опуклою і замкненою мно- жиною. 784
____________________________________________Дослідження операцій Означення 1.10. Множина /?0(х), яка визначається обмежен- ням виду. К(х)-.'^аіхі <Ь' А - І.т, ;=і (1-8) називається миогогранною опуклою множиною. Якщо ж ця множина обмежена, то вона називається опуклим многогранником Як випливає з (1.8), опукла многогранна множина являє собою перетин кінцевого числа півпросторів, тобто: /?0(х) = /?1(х)П/?2(х)П...ПЛда(х), (19) де 7?,(х) визначається і-м обмеженням виду (1.8). Отже, опукла мно- гогранна множина є замкненою і опуклою (на рис. Д.7 зображено многоіранні множини та многогранники). Зазначимо, що опуклі многогранники та множини мають важливе значення в лінійному програмуванні і являють собою допустимі множини розв’язків ЛП-задач. Нехай п>т. Виберемо з матриці А=[А|,А2,...,А„] обмежень (1.8) деякий базис із векторів {Аіі,Аа,.. .,А,т}={ А, }, і є Ів . Складемо систему рівнянь виду: А=,’т (110) та знайдемо її розв’язок. 785
Зайченко ЮII Внаслідок лінійної незалежності векторів {А,|, А,2, ..., А„„[ цей розв’язок {х, = х 0) єдиний. Він називається крайньою точкою мно- гогранника. Очевидно, крайня точка є перетином т гіперплощин в т- вимірному просторі. Опуклі многогранники (многогранні множини) мають фундамен- тальну властивість, яка широко використовується в теорії лінійного програмування. Вона формулюється в такій лемі. Лема 1.1. Нехай /?(х) - опуклий многогранник з крайніми точками Х|,Х2,...,хт. Тоді будь-яку його точку можна подати як опуклу комбі- націю його крайніх точок, тобто, якщо х0 є /?(х), то: Х0=І^’ ПІ к, >0;£*г =1. »=! (1 12) Якщо жК|(х)- опукла многогранна множина, то її довільну то- чку можна записати у вигляді суми опуклої комбінації крайніх точок та лінійної комбінації з невід’ємними коефіцієнтами напрямних век- торів необмежених ребер множини, тобто: Х0 = І^,; <1,3) {1;х - крайня точка К (х): 0; х, - необ межене ребро /?, (х). Доведення леми наводиться в [58]. Проілюструємо справедливість леми на наступних прикладах. Нехай Ко - опуклий многогранник з крайніми точками хь х2, х3, х4 (рис. Д.8, а). Виберемо довільну точку х() і, сполучивши її з х2, про- довжимо відрізок до перетину хг х4 в точці х5. Оскільки точка х5 на- 786
________________________________________________Дослідження операцій лежить відрізку хіх4, то вона є опуклою комбінацією його крайніх точок X, та х41 тому: х5 = к}х1 + Л4х4, (1.14) де к, + к4 = 1; кх, к, > 0 . Далі, розглянувши точку х0 відрізка х2х5, з тієї самої причини одержимо: х0 -к2х2 +к5х5;к2 +к5 = 1;Л2,Л5 >0. (115) Підставимо (1.14)в(1.15)і отримаємо: х0 =к2х2 +к5(к\Х} + А4х4) = к2х2 +кіхік{ +к5к4х4 або х0 = к2х2 + к{х, + к'йхА; де к{ - к5к}; к\ = к5к4. Оскільки + к'4+к1-кі(кї+к,) + к1 = к5+к2=\, то перша частина леми справедлива. Для перевірки другої частини леми розглянемо опуклу многог- ранну множину 7?і(х), що зображена на рис. Д.8.6. Тут А3 та Д4 - на- прямні вектори необмежених ребер, Х| та х2- крайні точки. Виберемо точку х3 на ребрі А3, сполучимо х3 з х4 і продовжимо до перетину з необмеженим ребром А4 в точці х4. Очевидно: *3 = Х|+А3А3 (А3>0); (1.16) х4 = х3 + і4А4 (А4 > 0) Оскільки точка х0 лежить на відрізку х}х4, то для неї виконуються співвідношення: х„ = к2х4 + Л,х3, (1.17) де к,,к2 > 0,Л| + кг = 1. 787
Зайченко Ю.П. Рис Д 8 Підставляючи (1 16) в (1 17), одержимо: х0 = к2х2 + к2к4 А4 + к,х, + М3А3 = кіх1 + к2х2 + Л3 А3 + к'4 А4, де + к2 =1,*; >0;^' >0. Оскільки точка х0 була обрана довільно, то звідси випливає справедливість леми. Отже, як ми з’ясували, будь-яка точка многогранника може бути представлена як опукла комбінація його крайніх точок Х|,х2,....х,„, розглянемо тепер тільки крайні точки. Зазначимо, що жодна з них, наприклад х7, не може бути виражена через інші крайні точки і в цьому випадку лінійна комбінація виду (1.11) стає виродженою к/ = 1; кг =0 для всіх / * у . Розглянемо окремий випадок обмежень виду (1.9), коли т =п . Означення 1.11. Множина точок /?(х), що задовольняють об- меження'. £ а .х, < ; і = йь або А,тхт,х < В (118) 7-І називається опуклим многогранним конусом, якщо існує точка х0 така, що Ах0 = В Якщо А - невироджена, то точка х„ єдина і на- зивається вершиною конуса, а сам конус — невиродженим. Отже, як бачимо, многогранний конус - це окремий випадок мно- гогранної множини з однією крайньою точкою. 788
Дослідження операг/ііі Ребром опуклого многогранника називається множина, утворена пе- ретином (т І) гіперплощини із т площин, що обмежують конус. Існує й інше означення многог- ранного конуса. Означення 1.12. Нехай задано систему векторів Тоді множину усіх невід ємних ком- бінацій цих векторів виду: Рис Д 9 п ___ Ао = ХА/х>;х7 >0;/ = !,«’ /=і називають опуклим многогранним конусом, натягнутим на ці век- тори. Очевидно, вектори А!, А2,..., Ат, які не можуть бути виражені через невід’ємну комбінацію інших векторів даної системи, являють собою ребра цього конуса (рис. Д.9). Лема Фаркаша Надзвичайно важливе значення для теорії нелінійного програму- вання має лема Фаркаша, яка використовується при доведенні деяких фундаментальних положень. Лема 1.2. Нехай задано вектори д д/ = і. та вектор £. Нерівності: 8гх<0 (1-19) та А,гх>0;/ = 1.т (1-20) несумісні тоді і тільки тоді, коли вектор р належить опуклому ко- нжу. натягнутому на вектори А ,і — \,т Доведення. Нехай вектор £ належить вказаному конусу, тобто йо- го можна записати у вигляді (див рис. Д. 10, а): 789
Зайченко Ю.П. 8 = ХДА,>о,ї=і,™ (1-21) і-1 Тоді як неважко побачити, нерівності (1 19), (1-20) будуть несу- місні при будь-якому л, оскільки в цьому разі з умови (1.20) пови- нно випливати: ^гх=^Л А.гх> 0~ <=і Отже, достатність умов леми доведено. Припустимо тепер, що представлення у вигляді (1.21) неможливе і позначимо через Ь вектор конуса, натягнутого на вектори А ;( = !,/«, найближчий до вектора § в евклідовій метриці (рис. Д. 10. б). Неважко показати, що Ьг(Ь-8) = 0, (1.22) тому поклавши х = Ь-§. (1.23) одержимо Є7'х = ЄГ(Ь-Є) = -||Ь-еҐ <0- (1-24) 790
__________________________________________Дос лідження операцій Крім тої о, зі ідно з означенням Ь, для довільного вектора V, який належить тому самому конусу, що і Ь, при довільному в і відрізка (0; 1) матимемо' ІІь-е!Мь-е^(У-Н2- <к25> Звідси випливас, що (Ь-8)Г(У-Ь) > 0- (1.26) А цс з урахуванням (1.23), (1.24) еквівалентно нерівності хг¥>0- (1.27) Зокрема, за вектор V можна взяти будь-який з векторів А.,(і = \,т) і тим самим переконатися, щох задовольняє (1.20). Таким чином, допустивши неможливість представлення вектора у вигля- ді (1.21), ми одночасно показали розв’язність системи нерівностей (1 -19)—(1-20), що і доводить другу частину леми (тобто необхідність її умов). Із леми Фаркаша випливає один корисний наслідок який вико- ристовується при доведенні теореми Куна-Таккера. При довільнім матриці д =[АИ А2,..., Ат]г та векторі 2 = [£, ]7 або справедлива система нерівностей: А,х<О;ї = Гйг, (1.28) £гх<0’ (1.29) або справедлива система рівностей: АгХ + ХоЄ = 0 де Ь>О,Х.о >0- (1.30) Одночасно обидві ці системи виконуватися не можуть. Доведення. Припустимо, що система (1.28), (1.29) несумісна, це означає, що несумісна також і система: А,х <0;/ = Кти, (1 31) -8'х>0 791
Зайченко Ю.И. Згідно з лемою Фаркаша це буде тоді і тільки годі, коли вектор « належить конусу, натягнутому на вектори А,,/ = 1,/и . Таким чином, у цьому випадку -8 = ІДА,,Я, >0- і-і Звідки: т ЕЛА, + 8 = 0’ Ї=1 Поклавши 1 = [ЛІ ] > 0;/ = 1,ш і поклавши Ли = І, приходимо до співвідношення Агк + Яо2 = О. (1-32) Перша частина наслідку доведена. Друга частина доводиться аналогічно доведенню друг ої частини леми Фаркаша
ДослкЬісєння операцій 2. ВЛАСТИВОСТІ ОПУКЛИХ МНОЖИН Теорема 2.1. Про відокремлення опуклої множини (скінченнови- мірна теорема Хана-Банаха) Нехай А - непорожня опукла множи- на в В1"'. що не містить початку координат. Тоді існує гіперплощи- на. яка визначається рівнянням слх = 0, така, що сгх > 0 при х є А Якщо при цьому множина А - замкнена, то знайдеться таке £• > 0 ,що сГх > є при всіх х є А. Важливе значення в теорії опуклого програмування мас теорема Фана Теорема 2.2. Нехай В - непорожня опукла множина в В'"', / (х),/ = 1,/и - опуклі функції в В'"'. Якщо системо рівнянь-. Ті (х)<0,і = 1,т: (2.1) /і,(х) = ();)= (2.2) не має розв ’язків на множині В. то існують такі невід ємні Л, >0,і = І,т та дійсні = \.К , що (2’3) і=» і при всіх х є В , причому не всі Я, та /7, дорівнюють нулю одночасно. Доведення. Введемо гаку множину И(х) ’ Их) = {(у,г): /Дх) < у„/ = 1,т;й?(х) = 2у, / = І,К} Ця множина непорожня, причому згідно з припущенням вона не містить початку, оскільки система (2.1), (2.2) несумісна. Покажемо, що множина )/(х) - опукла. Дійсно, нехай (у,,ж,)є И(х,) та (у,,г2) є И(х,) Тоді. 2г, +(1-2)у2 > /(х,)-ь(1 -Л)/^(х2)^/(Лх! +(1-Л)х2)- 0 < 2 < 1. 34 і 793
Зайченко Ю.П Крім того: Яг. т (1 - Л)г2 = ЯЛ(х) (1 - Я)Л(х?) = Л(Лх, - (1 - Я )х,), де Г(х) = [/(х), /2(х),...,./ш(х)]л, Ь(х)=[Л(х).Л2(х),...,/іА (х)]т. Отже: к(у,.£,)-(! Я)(у_„<,)є1 (Лх, т(1 Я)х2) при 0<Я<1, (2.4) і множина К - опукла. Згідно з теоремою про відокремлення (теорема 2.1) існують такі невід’ємні к та дійсні р. які не дорівнюють нулю одночасно, що кгу~цтг >0 при всіх (у,г)є V. (2.5) Але оскільки у,, і = 1,ш, можуть бути вибрані довільно велики- ми, то для виконання (2.5) необхідно, щоб Л, >0 Нехай є - довільний додатний скаляр та нехай у = Г(х)+є1,г = Ь(х) при х є В (2.6) Де ї =[1,1,...,1]г. Тоді (у,г)єИ, і, підставляючи (2.6) в (2.5), одер- жимо Л.гГ(х) - ргй(х)- гк' ї >0 при х є В . (2.7) Оскільки є - довільне, то наближаючи його до нуля, одержимо КгГ(х)-ргЬ(х)>0 Для усіх х є В. (2.8) Отже, теорему доведено. Наслідок. Нехай В за Г(х) визначаються умовами теореми Фана. Нехай #(х),і = 1,/ опуклі функції на множині В Якщо система Пх),8(х)^(ХЬ(х) = 0 не має розв’язків при х є В , де 8(х) = [£,(х),£ї(х), -£,(х)]Т’ то існують такі вектори Х>0,¥>0 га ц є В1'", що не дорівнюють нулю одночасно, при яких Г Цх) - У'е(хь р' Ь(х) = ХА/(х) - *. (> 0 .-.і /=і . і при ВСІХ X є В 794
Дослідження операцій 3. ЕЛЕМЕНТИ ТЕОРІЇ ДВОЇСТОСТІ ГЕОМЕТРИЧНОГО ПРОГРАМУВАННЯ Розглянемо деякі важливі результати теорії двоїстості геометрич- ного прої рамування, на яких грунтуються методи розв’язування за- дач. Результати спираються на узагальнення класичної нерівності для середнього арифметичного та середнього геометричного і вико- ристовують ідеї опуклого програмування Розглянемо узагальнену геометричну нерівність, яка встанов- люється в такій теоремі. Теорема 3,1. Нехай л- довільний вектор і п компонентами, а 6- довільний вектор з невід’ємними компонентами. Ці два вектори задовольняють геометричній нерівності'. ІгА £<??. <з.і> ь к > І 7 і-і г=і к І-: ) де припускається, що 1п(2>,) = 0коли Р=0. Тому нерівність (3.1) стає рівністю тоді і тільки тоді, коли існує таке невід "ємне число ІЗ, що д, - Ве' .і - 1,2,..,п Доведення. Доведення узагальненої геометричної нерівності (3.1) грунтується на тому факті, шо експоненціальна функція е' - опукла. Так, е~ - (х Це <е’ для довільних х та з, оскільки пряма, дотична до експоненти е' в точці з, лежить строго нижче ВІД цієї кривої. Причому ця рівність стає рівністю тоді і тільки тоді, коли X = 3 , Поклавши і-е’. отримаємо г-(х 1п г)у = е‘ для довільного є та довільного додатного і , причому рівність досягається тоді, ко- ли х = Іп .і . Таким чином: Ї2 у і+X и -,п т )т. - Ее'' І-І І~1 34* 795
Зайченко Ю П. для довільною вектора х = {х1,х2, ,х,} та довільного додатною век- тора у = (у.,у2,.. , у„), причому строга рівність має місце лише у ви- падку, коли х, = 1п у,,і = 1,л Вибираючи довільний, але фіксований додатний вектор, ми за- ключаємо, що + £(х. - 1п(60,))< (3.2) і^і і=і ,=і для довільного х та додатного 0. При цьому рівність (3.2) матиме місце тоді і тільки тоді, коли х, = 1п 06,, і = 1,2,...,и. (33) Перетворюючи ліву частину нерівності (3.2), знаходимо, що де Д0) = ї>,(1 /(0)<Хе' . 1-І » 1 £г>, 0іп0, (3.4) (З 5) + х, - 1п <*>, )в 0>0. Диференціюючи співвідношення (3.5), по в, одержимо: та т= £^и-іп^), (3.6) (3.7) і- Із (3.7) випливає, що 1(0) сірого вгнута при 0>(), оскільки /"(&)< 0. Тому із (3.6) випливає, що ((6) має єдину точку максиму- му в’, яка визначається співвідношенням: 1пі9' = £#,.(х, -1п£, ) _____________ п (3.8) 796
Дослідження операції/ Підставляючи значення 6 в (3 5) та використовуючи (3.4) одер- жимо, що: ( п п Та у Xе'' V і-1 7 н Тоді із (3 8) випливає, що’ або " ( л \ ( " \ п ( п \ ( п х Е>, -[Із Д Iе'-(Ез ДЕд (3.9) для довільного х та додатного <5. Згідно з співвідношеннями (3.3) га (3.8) ця нерівність стає рівністю тоді і тільки тоді, коли ЕХ(х, х, = 1п <5 —------------- 1 1 II Е<>; 7-І або, що еквівалентно, коли х, = 1п <5, = 1п В , де В > 0. Отже, теорему 3.1 доведено для випадку, коли всі компоненти 8 додатні. Якщо ж всі компоненти 8 дорівнюють нулю, то геометрична нерівність та- кож задовольняється, оскільки обидві її частини дорівнюють нулю. Геометрична нерівність (3 1) еквівалентна простому узагальнен- ню класичної неперервності для середнього арифметичного та сере- днього геометричного. Це можна показати, вибравши вектор 8, ком- поненти якого задовольняють умову нормалізації: ££,.=!• (3-Ю) У цьому випадку геометрична нерівність має такий вигляд: Е (х, ~ 1п 8,) < е е '‘ (3-И) 342 797
Зайченко Ю.П. оскільки л =[х,] - довільний, в Л, - додатні, то можна вибрати: V, = 1п(д',7^);/ = 1,л (3-12) Тоді із (3.11) випливає, що: •> ( и А £г>, Іп /;. <1п ^8,Т, (3.13) Оскільки показникова функція є монотонною зростаючою, із не- рівності (3.13) випливає, що: []7/<£л,7;. (3.14) і~* і-'. Нерівність (3.14) є класичною геометричною нерівністю, вона справедлива для будь-яких 7] > 0, і = 1,л , і додатних Л,, що задово- льняють умову нормалізації = |. Ліва частина нерівності (3.14) являє собою середньозважене геометричне, права — середньозважене арифметичне для додатних чисел Т,,і - 1,п . Нерівність (3.14) стає строгою рівністю тоді і тільки тоді, коли для усіх і = 1.л;Т,=Т. Використаємо геометричну нерівність (3.14) для доведення осно- вної леми геометричного програмування (14). Лема. Якщо І > 0 задовольняє обмеження прямої задачі А , а 8 > 0 задовольняє обмеженню відповідної двоїстої задачі В, то #,,(1) > 17(8)- Крім того, при тих самих умовах £0(ї) = И(6) тоді і тільки тоді, коли: ! /1,гт 2 т ;/є/[0]; йо(») (3-15) Я*.(8)с,і є /[к]:к = \,р. Тут #о(і) та Н(8)- цільові функції прямої та двоїстої задачі від- повідно, що задаються співвідношеннями (5.6.21) та (5.6.24). 798
___________________________________________Дослідження операцій Доведення. Оскільки усі члени н((Г) позинома &к(1) додат- ні, го можна задати: г, = Іпи, (/), і є /[А-]. Застосувавши геометричну нерівність, одержимо: ЕЗ іп£<(і)> -НЗ)}-н ЕЗНп ЕЗ (3-16) /є/'* ІЄЛГ 1<єД*’ } ІЄІЧ' Неважко показати, що ця нерівність еквівалентна такій: Я,(1)Л *'”>[]Г—ЛД8)л‘(6’’ 0-17) к Ь ) де л* Е^- ієҐк і Зокрема: ,3|8> Оскільки 8 задовольняє умову нормалізації, то Д() (5) = ЕЗ ~1- ІЄ/(О) Із нерівності (3.17) закож випливає, що: 1>^«)Л‘,6‘> П АД8)л“О);А=Г7- (3-19) ,є/, і А ) Псремножаючи нерівність (3.18) на добуток нерівностей (3.19), одержимо: «.юДії^Пл,<*)*“ |3'2О) Враховуючи, іцо и (() є /-й член прямої задачі А . и, (і) — , і підставляючи його в (3.18), одержимо: 34** 799
Заіїченко Ю.П. > И(8)^' ...С Оскільки вектор 8 задовольняє умови ортогональності. то остан- ня нерівність зводиться до нерівності: £0(ї)>И(8)- (3.21) Отже, першу частину леми доведено. Перейдемо до доведення другої частини леми. Припустимо, що ^|](Ї) = И(8), де І і 8 задовольняють обмеження прямої та двоїстої задачі відповідно. Тоді нерівність (3.18) та всі нерівності (3.19) пови- нні бути рівностями. Тому: £4.(і)л‘ = 1,£ = 1,2,...,/?, (3.22) і відповідно до другого твердження леми існують такі невід’ємні числа Вк:к = 1,2....,р , що для £=0,1,...,/?; /є/[£]; <5'Д£) = В*и,(€). (3.23) Підсумовуючи (3.23) по і є /[А], одержимо: АД8) = В^к(і),к = 0,1,2,...,/?, (3.24) звідки в 1 . оскільки Л0(8) = 1- Розглянемо тепер співвідношення (3.24) для випадку, коли к * 0. Якщо Вк =0, то з (3.24) випливає, що Лі(б) = 0 та 8. =0 для усіх /є /[£]. Отже у цьому випадку співвідношення (3.15) виконується. Якщо ж Вк * 0 , то і ф 0, і тому, як випливає з (3.22), (і) = 1. Але тоді внаслідок рівності (3.24) = ЛА (8), і тому: 8, = Кк (І) = А Д8)С,7“'' ...С • Таким чином, співвідношення (3.15) справедливі. Отже, ми пока- зали, що якщо &(,(!) = К(8), то співвідношення (3.15) виконуються. 800
____________________________________________Дослідження операцій Припустимо, що І та 6 початково до обмежень прямої та двоїстої задач задовольняють і співвідношення (3.15). Тоді з другого твер- дження леми випливає, що нерівність (3.17) стає рівністю, і крім то- го, всі нерівності в співвідношенні (3.19) також г рівностями. Дійсно, якщо Лк (6) = 0, ю і 8, = 0 тля усіх і є /[А] і тому обидві нерівності (3.17), (3.18) стають рівностями. Тому розглянемо випадок, коли Л4(8)*0 Тоді із (3.15) випли- ває, що о (і) = 1. Ця обставина разом з другим твердженням кми іас можливісп зробити висновок, що усі нерівності (3.17) та (3.18) будуть рівностями. Тому- »п(П = 1 (6). На цьому доведення основної леми геомезричного програмуван- ня закінчується. Ця лема свідчить, що умовний мінімум прямої фун- кції #(ІЦ) більший або дорівнює умовному максимуму двоїстої зада- чі ґ(б) • Щоб показати, що ці величини рівні, необхідно показати, що існують такі вектори І га 6, які задовольняють як співвідношення (3.15), так і обмеження прямої та двоїстої задачі відповідно. Це встановлюється в основній теоремі ГП. яка зв’язує оптимальні розв’язки пари двоїстих задач. Теорема 3.2. Нехай пряма задача 1 сумісна і існує їїрозв 'язок і* такті, іцо , а також оптимальний розв 'язок. Тоді. 1) відповідна двоїста задача сумісна і існує точка, яка задово іь- няє обмеження двоїстої задачі, в якій досягається умовний макси- мум двоїстої функції И(6). 2) максимальне значення цільової функції двоїстої задачі дорів- нює мінімальному значенню цізьової функції прямої задачі: якщо і* - мінімізуюча точка прямої задачі, то існують невід'ємні множники Лагранжа {//,} ,А = 1,р такі, що функція Лагранжа: Л(1,р) = £„(І) + £рк (#,(і) -1)’ А 1 матиме таку властивість. що Т(і‘,р)< Л(і’,р*) = §„(»’)< Л(Гр*) (3.25) (3.26) 34’ 801
Зайченко Ю.П для довільних і, > 0 та Рі^.0. Крім того, існує максимізуючий век- тор двоїстої задачі з компонентами, що визначаються з умов: 8] сіа" = -‘-' т- ;ібД0]; £о(О (3-27) 6- = | "т ;іє/[А],Л є 1,р, де Далі. Є = Лр=р‘ ЛД8‘) = -А-; (3-28) £о(* ) 4) якщо 6* - максимізуюча точка двоїстої задачі В , то будь-яка мінімізуюча точка <* прямої задачі А задовольнятиме систему рівнянь г>,’ л*(б‘) є /[0]; (3-29) де к пробігає всі додатні цілі значення, для яких ЛД8')>0 Доведення. Для доведення перейдемо до перетвореної прямої І-.;.-, задачі А., як відомо, показникова функція иі - е ' є опуклою на усьому просторі Ет. Звідси випливає, що при додатних с, функція виду п і=і опукла як додатна лінійна комбінація опуклих функцій. Аналогічно, область, що визначається нерівністю: £ч2/ З* (г) = ске ' < 1, також буде опуклою. Тому до перетвореної прямої задачі А2 можна застосувати теорему Куна-Таккера. Припустимо тепер, що пряма задача А сумісна і існує мінімізую- ча точка і*, яка задовольняє обмеженням прямої задачі 802
____________________________________________Дослідження операцій Тоді і перетворена задача сумісна і перетворена пряма функ- ція §0(2) має точку мінімуму г*,де г’ =1пГ,;у =ї^;^ (г)<1;Л =ї^. Застосовуючи теорему Куна-Таккера, переконуємося, що іс- нують невід’ємні множники Лагранжа Дк',к - 1, р, такі, що функ- ція Лагранжа: Дг, М) = £0 (г) + ~ 1) ’ (3'30) *=і матиме таку властивість, що А(г*,р) < Цг‘,р‘) = £0(г’) < £(г,р‘) (3.31) для довільного г та довільних рк > 0. Таким чином, гє точкою безумовного мінімуму і тоді Звідси випливає, що ] = 0;д = 1,/п- О-32) Поділивши ці рівняння на £0(г0), переконуємося, що вектор 8* з компонентами: 8’ с е*'} ^—г-иеЛО]; £о(г ) РкСіе~-—;гєДА], ) (3-33) задовольняє умови ортогональності для двоїстої задачі. Із співвідношення (3.33) також випливає, що 8' >0, оскільки усі р‘к > 0. Таким чином, двоїста задача сумісна. Використовуючи (3.33), одержимо, що д (8‘)= д*^(.г):А- = 1,р. &(г) (3 34) 34*** 803
кіііченкгі Ю.П Далі з рівності £0(г*)=/(/ ,ц ) випливає, що /А(£*(г*)- 1)-0. Тому: л (6*) = _^*_ (335) £(.(* ) Таким чином, співвідношення (3.33) можна записати у вигляді Г п ЇХ . (3 36) д =< й(1(/ ) п їх*/ _ ^с.е'1 ;/Є /[А], А; = І.р Використавши (3.29), запишемо ешввщношення (3.35) в термінах змінних і Тоді на підставі другого твердження основної'леми дохо ДИМО висновку, ЩО £0(» ) = і (6*) Отже, ми довели перші гри твердження основної теореми ГП Доведемо тепер четверте твердження. Припустимо, що Г є мінімізуючою точкою прямої задачі А, а 6- максимізу ючою точкою відповідної двоїстої задачі В . Тоді, згі- дно з щойно доведеним, £П(Г) = Г(б‘). Використовуючи друге твердження основної леми, робимо ВИ- СНОВОК, що і* та 6* задовольняють співвідношення (3.29), а отже, і співвідношення - <5,К(6), і є/[0]; іи~ =( 8 [Л*-(6) (З 37) де К набуває таких додатних цілих значень, для яких ДА (й) > 0. На цьому доведення основної теореми закінчено Основна теоре- ма ГП дає змогу знайти оптимальний розв’язок б*двоїстої задачі за відомим оптимальним розв’язком прямої задачі <*і навпаки. Для цього використовують співвідношення (3 27) та (3 37). 804