Optymalizacja wielokryterialna
Optymalizacja wielokryterialna (także programowanie wielokryterialne, ang. multi-objective optimization, multi-criteria optimization) — to dział optymalizacji matematycznej zajmujący się zagadnieniami jednoczesnej optymalizacji według dwóch lub więcej funkcji celu (kryteriów), które z reguły są ze sobą sprzeczne[1][2]. Formalnie zadanie zapisywane jest jako minimalizacja wektorowej funkcji celu na zbiorze rozwiązań dopuszczalnych.
Definicja i terminologia
Zadanie optymalizacji wielokryterialnej w ogólnej postaci zapisuje się następująco: gdzie — niepusty zbiór rozwiązań dopuszczalnych, a — funkcje celu ()[3]. Wektor nazywany jest wektorem celu.
W odróżnieniu od optymalizacji skalarnej, w sformułowaniu wielokryterialnym zazwyczaj nie istnieje jedyne rozwiązanie poprawiające wartości wszystkich kryteriów jednocześnie. Dlatego klasyczne pojęcie optimum uogólnia się przy użyciu koncepcji optymalności w sensie Pareto[4].
- Rozwiązanie Pareto (rozwiązanie Pareto-optymalne lub efektywne): rozwiązanie dopuszczalne , dla którego nie istnieje inne rozwiązanie takie, że dla wszystkich , przy czym dla przynajmniej jednego indeksu [3][4]. Innymi słowy, rozwiązanie jest Pareto-optymalne, jeśli żadnego kryterium nie można poprawić bez pogorszenia co najmniej jednego innego kryterium.
- Front Pareto (lub zbiór Pareto): zbiór wszystkich wektorów celu odpowiadających rozwiązaniom Pareto-optymalnym.
- Słabo Pareto-optymalne rozwiązanie: rozwiązanie , dla którego nie istnieje inne rozwiązanie takie, że dla wszystkich .
Kluczowe właściwości i twierdzenia
- Twierdzenie o ważonej sumie: W zadaniach wypukłych (gdzie wszystkie funkcje oraz zbiór są wypukłe) każde rozwiązanie Pareto-optymalne jest rozwiązaniem skalarnego zadania minimalizacji ważonej sumy kryteriów dla pewnego zestawu nieujemnych wag . Jednak w zadaniach niewypukłych metoda ta może nie znaleźć niektórych części frontu Pareto[5][6].
- Warunki optymalności Karusha-Kuhna-Tuckera (KKT): Warunki konieczne optymalności dla gładkich zadań uogólnia się na przypadek wielokryterialny. W punkcie Pareto-optimum istnieje niezerowy zestaw nieujemnych mnożników (wag), dla których gradienty funkcji celu i aktywnych ograniczeń są liniowo zależne[7].
- Właściwości zbioru rozwiązań: Front Pareto posiada szereg ważnych cech jakościowych. Jego granica wyznaczona jest przez punkt idealny (złożony z elementarnych minimów wszystkich kryteriów) oraz punkt nadir (z elementarnych maksimów na froncie)[7].
Przykłady
- Zadanie liniowe: Minimalizować i przy ograniczeniu , . Tutaj poprawa jednego kryterium (np. zwiększenie ) nieuchronnie prowadzi do pogorszenia drugiego (zmniejszenia ). Zbiór rozwiązań Pareto-optymalnych stanowi odcinek prostej .
- Zadanie niewypukłe: Minimalizować i na odcinku . Front Pareto jest niewypukły. Metoda ważonych sum z dodatnimi wagami nie będzie w stanie znaleźć rozwiązań wewnątrz tego odcinka (np. w punkcie ), ponieważ liniowa kombinacja kryteriów będzie osiągać minimum jedynie w punktach skrajnych lub [8].
Pojęcia pokrewne i zastosowania
Optymalizacja wielokryterialna jest ściśle powiązana z wielokryterialnym podejmowaniem decyzji (MCDM), które zajmuje się wyborem najlepszej alternatywy z uwzględnieniem preferencji osoby podejmującej decyzję. Podstawowe metody przekształcania zadania wielokryterialnego w skalarne (skalaryzacji) obejmują:
- Metodę ważonych sum.
- Metodę ograniczeń : Optymalizowane jest jedno kryterium, a pozostałe przekształcane są w ograniczenia postaci . Metoda ta jest w stanie znajdować rozwiązania na niewypukłych odcinkach frontu[9].
Optymalizacja wielokryterialna znajduje szerokie zastosowanie w projektowaniu inżynierskim, ekonomii (np. optymalizacja portfela), zarządzaniu i ekologii.
Zobacz też
- Optymalność w sensie Pareto
- Optymalizacja wektorowa
- Teoria podejmowania decyzji
- Systemy wspomagania decyzji
- Badania operacyjne
Przypisy
- ↑ "Многокритериальная оптимизация". Википедия. [1]
- ↑ Трифонов А. Г. Многокритериальная оптимизация. Matlab Exponenta. [2]
- ↑ 3.0 3.1 "Multi-objective optimization". Encyclopedia of Mathematics. [3]
- ↑ 4.0 4.1 Ehrgott, M. (2012). Vilfredo Pareto and Multi-objective Optimization. Documenta Mathematica, Extra Volume ISMP, 447–453. [4]
- ↑ Соболь И. М., Статников Р. Б. (2006). Выбор оптимальных параметров в задачах со многими критериями (2-е изд.). Дрофа.
- ↑ Marler, R. T., & Arora, J. S. (2010). The weighted sum method for multi-objective optimization: new insights. Structural and Multidisciplinary Optimization, 41(6), 853-862. [5]
- ↑ 7.0 7.1 Miettinen, K. (1998). Nonlinear Multiobjective Optimization. Kluwer Academic Publishers.
- ↑ Ehrgott, M. (2005). Multicriteria Optimization (2nd ed.). Springer-Verlag.
- ↑ Mavrotas, G. (2009). Effective implementation of the ε-constraint method in Multi-Objective Mathematical Programming problems. Applied Mathematics and Computation, 213(2), 455-465. [6]