Багатокритеріальна оптимізація

Багатокритеріальна оптимізація або програмування (англ. Multi-objective optimization),[1][2] — це процес одночасної оптимізації двох або більше конфліктуючих цільових функцій в заданій області визначення.

Задача багатокритеріальної оптимізації зустрічаються в багатьох галузях науки та техніки.

Визначення

Задача багатокритеріальної оптимізації формулюється таким чином:[3]

де це () цільових функцій. Вектори розв'язків належать до не порожньої області визначення .

Задача багатокритеріальної оптимізації полягає у пошуку вектора цільових змінних, який задовільняє накладеним обмеженням та оптимізує векторну функцію, елементи якої відповідають цільовим функціям. Ці функції утворюють математичне описання критерію задовільності та, зазвичай, взаємно конфліктують. Звідси, «оптимізувати» означає знайти такий розв'язок, за якого значення цільових функцій були б прийнятними для постановника задачі.[4]

Еталонні точки

Для можливості оцінки якості знайдених розв'язків, зазвичай розглядають такі точки в області значення цільової функції:

  • ідеальна точка, ,
  • утопічна точка, ,
  • надір (надир), .

У деяких випадках ці точки можуть бути розв'язками.

Ідеальна точка визначається як вектор , кожна з координат якого має оптимальне значення відповідної складової цільової функції:[5]

Точка надіру визначається як вектор:

Утопічну точку обчислюють на основі ідеальної:[6]

де ,  одиничний вектор.

Критерії оптимальності

Критерій Парето

Вектор розв'язку називається оптимальним за Парето якщо не існує такого, що для всіх та для бодай одного . Множину оптимальних за Парето розв'язків можна позначити як . Цільовий вектор є оптимальним за Парето, якщо відповідний йому вектор з області визначення також оптимальний за Парето. Множину оптимальних за Парето цільових векторів можна позначити як .

Множина оптимальних за Парето векторів є підмножиною оптимальних за Парето в слабкому сенсі векторів. Вектор є слабким оптимумом за Парето тоді, коли не існує вектора такого, що для всіх .

Діапазон значень оптимальних за Парето розв'язків в області допустимих значень дає корисну інформацію про досліджувану задачу якщо цільові функції обмежено областю визначення. Нижні границі оптимальної за Парето множини представлено в «ідеальному цільовому векторі» . Його компоненти отримані шляхом мінімізації кожної цільової функції у межах області визначення.

Множину оптимальних за Парето розв'язків також називають Парето-фронтом (англ. Pareto-frontier).

Лексикографічний порядок

Якщо одні цільові функції важливіші за інші, критерій оптимальності можна визначити за лексикографічним порядком.

Відношення лексикографічного порядку між векторами та виконується, якщо , де . Тобто, перші компонент вектора менші за компоненти вектора , а компоненти  — рівні (якщо такі є). Лексикографічний порядок для випадку дійсних чисел є лінійним.

Вектор є лексикографічним розв'язком, якщо не існує вектора такого, що .

Оскільки відношення лексикографічного порядку є лінійним, можна довести, що вектор є лексикографічним розв'язком, якщо для всіх виконується:

Основною особливістю розв'язків за лексикографічним порядком є існування вибору між критеріями. Лексикографічна впорядкованість вимагає ранжування критеріїв в тому сенсі, що оптимізація за критерієм можлива лише тоді, коли було досягнуто оптимуму для попередніх критеріїв. Це означає, що перший критерій має найбільший пріоритет, і лише у випадку існування декількох розв'язків за цим критерієм, буде пошук розв'язків за другим та рештою критеріїв.

Існування ієрархії серед критеріїв, дозволяє розв'язувати лексикографічні задачі послідовно, крок за кроком мінімізуючи за кожним наступним критерієм, та використовуючи оптимальні значення попередніх критеріїв як обмеження.

Скаляризація

Для отримання оптимальних за Парето розв'язків часто використовують методи скаляризації. Оскільки цільова функція задачі багатокритеріальної оптимізації має векторні значення, її перетворюють на функцію зі скалярним значенням. Таким чином, задача багатокритеріальної оптимізації зводиться до задачі оптимізації з однією скалярною цільовою функцією. Функція скаляризації має задовільняти наступним умовам.

Нехай  — функція скаляризації, що перетворює векторну функцію на скалярну. Якщо зберігає впорядкованість за Парето , тобто, якщо для довільних виконується:

тоді розв'язок , що мінімізує на є розв'язком за Парето.[7]

Якщо зберігає відношення порядку в , тобто, якщо для довільних виконується:

тоді розв'язок , що мінімізує на є слабким за Парето. Якщо неперервна на , та єдина точка мінімуму на , тоді є розв'язком за Парето.

Зважена сума

Наведена функція зберігає впорядкованість за Парето для . Тому розв'язки, що мінімізують на для довільних є оптимальними за Парето. Однак не зберігає впорядкованість за Парето для а зберігає лише відношення і тому розв'язки, що мінімізують на для є слабкими за Парето.[7]

Недоліком методу зважених сум у випадку неопуклої множини значень цільових функцій є неможливість охопити всі оптимальні за Парето точки з множини Парето-фронту.

У задачах комбінаторної багатокритеріальної оптимізації множина цільових значень не є опуклою, тому метод зважених сум не підходить для скаляризації цільових функцій для цих задач.

Функція скаляризації Чебишева

Зважена функція скаляризації Чебишева зберігає відношення і тому мінімум є слабким за Парето.[7]

Метод зміни обмежень (ε-обмеження)

За методом зміни обмежень одну з цільових функцій залишають як цільову, а решту перетворюють на обмеження. Тобто, нехай буде цільовою, а решта як обмеження нерівності:

за умов 

Значення можуть розглядатись як припустимі рівні для

Методи розв'язання

Інтерактивність

Часто, розв'язання задачі багатокритеріальної оптимізації відбувається за участю експерта — людини, яка обирає та ухвалює рішення на основі інформації, представленої системою підтримки прийняття рішень. Можлива участь групи з декількох експертів. У випадку участі людини у пошуку розв'язку алгоритми та методи називають інтерактивними.[3]

Еволюційні методи

Згадки про застосування генетичних алгоритмів для розв'язання задачі багатокритеріальної оптимізації відносяться до кінця 1960-х.[8]

Процедури вирішення задач багатокритеріальної оптимізації

Можна запропонувати наступну структуру існуючих на сьогодні процедур вирішення задач багатокритеріальної оптимізації:

  • По методу використання інформації
  • Апріорні
  • Апостеріорні
  • Адаптивні
  • По методу прийняття рішення та ін.

Апріорні процедури багатокритеріальної оптимізації та відповідні їм методи прийняття рішень

В процедурах апріорного типу робиться явне та неявне припущення, що вся інформація, що дозволяє визначити найкраще рішення, прихована у формальній моделі задач та, відповідно, за допомогою деяких перетворень може бути з цієї формальної моделі витягнена та використана. Прийнято, що множина альтернатив U та цільових функцій W1(u), W2(u),… достатньо для об'єктивного, незалежного від відсутніх в даній моделі факторів визначення оптимального рішення.

приклад 1. Вирішити задачу по двом критеріям, рахуючи найбільш бажаним. Його відхилення від максимального становить 10%:

W1 = x1 + 2 x2 (r)max;

W1 = x1 + 2 x2 (r)min;

x1 + 2 x2 >6;

x1 < 4;

x2 < 5;

x1 > 0; x2 > 0.

Вирішуючи задачу лінійного програмування за першим показником ефективності W1, наприклад в середовищі пакета EXCEL або графічно, отримуємо, що максимальне значення цільової функції W1*= 14 досягається при x1 = 4 і x2 = 5. Робимо поступку на 10%, тобто зменшуємо величину W1*= 14 до значення W1**= 14 × 0,9 = 12,6.

Вносимо в завдання додаткове обмеження x1 + 2 x2 ³ 12,6. Далі, вирішуючи завдання лінійного програмування при мінімізації другого показника ефективності маємо W2*= 7,6 при x1 = 2,6 і x2 = 5. При цьому значення показника ефективності W1 не змінилося і дорівнює 12,6.

Апостеріорні процедури багатоцільовий оптимізації і відповідні їм методи прийняття рішення

В основі апостеріорних процедур лежить припущення, що формальна модель багатоцільового завдання не містить інформації, достатньої для однозначного вибору найкращої альтернативи. Отже, рішення, прийняті за допомогою апостеріорних процедур, мають принципово суб'єктивний характер, що зумовлює необхідність залучення суб'єктивних суджень конструктора, облік переваг проєктанта в цьому випадку є одним з найбільш ефективних методів зняття наявної невизначеності.

Апостеріорні процедури прийняття рішень полягають у формулюванні додаткових вимог, накладених на переваги проєктанта, виконання яких дозволяє однозначно відновити деяку скалярну функцію корисності P (u), після чого задача прийняття рішень зводиться до скалярної оптимізації.

Типова структура апостеріорної процедури вирішення багатокритеріальних завдань така. Спочатку виконується перевірка гіпотези про незалежність по корисності. Якщо відповіді проєктанта дозволяють зробити висновок, що незалежність дійсно має місце, то за допомогою спеціальних методів (часто використовується принцип лотереї) відновлюються всі величини, необхідні для ідентифікації шуканої функції корисності.

Основною перевагою апостеріорних процедур в порівнянні з апріорними є чітке визначення умов, при виконанні яких ними можна користуватися. Але їх практичне використання часто наштовхується на необхідність збору надзвичайно великої кількості інформації, а також на те, що проєктант в багатьох випадках або не може дати інформацію, необхідну для реалізації процедури, або дає її з великими помилками. Це пов'язано, як правило, з непідготовленістю проєктанта до вирішення такого роду завдань.

Адаптивні процедури багатоцільової оптимізації і відповідні їм методи прийняття рішення

Як відомо, в кібернетиці під адаптацією розуміється "процес накопичення і використання інформації в системі, спрямований на досягнення певного, зазвичай оптимального в деякому розумінні стану або поведінки системи при початковій невизначеності або мінливих зовнішніх умовах. З наведеного вище визначення в результаті аналізу можна сформулювати деякі загальні принципи адаптації:

  • адаптація являє, як правило, безперервний динамічний керований випадковий процес;
  • в процесі адаптації управління процесом має бути оптимальним з якого — або одному або декільком критеріям (показниками).

У процесі адаптації (адаптивного управління) можуть змінюватися: параметри, структура системи, алгоритм функціонування, управляючі дії тощо. Як відомо, процес оптимального проєктування може інтерпретуватися у вигляді задачі оптимального управління. Тому до нього можуть бути повністю застосовані як загальні принципи, так і методи адаптації. При цьому адаптація тут може розглядатися з двох точок зору:

  • по-перше, в ході проєктування відбувається безперервне надходження і накопичення знань про умови застосування майбутнього об'єкта, нових даних про матеріали, їхню поведінку при діючих навантаженнях тощо, які повинні враховуватися при прийнятті оптимальних рішень;
  • по-друге, деякі вироби після їх створення працюють в найрізноманітніших і невизначених умовах, що вимагає, в свою чергу, від конструктора забезпечення максимальної пристосовності машини до мінливих умов.

Див. також

Примітки

  1. Steuer, R.E. (1986). Multiple Criteria Optimization: Theory, Computations, and Application. New York: John Wiley & Sons, Inc. ISBN 047188846X.
  2. Sawaragi, Y.; Nakayama, H. and Tanino, T. (1985). Theory of Multiobjective Optimization (vol. 176 of Mathematics in Science and Engineering). Orlando, FL: Academic Press Inc. ISBN 0126203709.
  3. Jürgen Branke, Kalyanmoy Deb, Kaisa Miettinen та Roman Slowinski (2008). Multiobjective Optimization: Interactive and Evolutionary Approaches (Lecture Notes in Computer Science). Springer. ISBN 3-540-88907-8.
  4. A. Osyzka. Multicriteria optimization for engineering design // Design Optimization. — Academic Press. С. 193-227.
  5. (Ehrgott, c. 34)
  6. (Jürgen et al, с. XI)
  7. Nakayama, Hirotaka; Yun, Yeboon; Yoon, Min. Sequential Approximate Multiobjective Optimization Using Computational Intelligence (Vector Optimization). Springer. ISBN 978-3-540-88909-0.
  8. R. S. Rosenberg (1967). Simulation of genetic populations with biochemical properties. Ann Harbor: University of Michigan.

Посилання

  • А. Г. Трифонов. Многокритериальная оптимизация (рос.)
  • Вільний розв'язувач interalg з українського ПЗ OpenOpt[недоступне посилання з лютого 2019] для розв'язування багатокритеріальних задач з гарантованою точністю за допомогою інтервального аналізу

Література

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.