Többkritériumos optimalizálás

From Systems analysis Wiki
Jump to navigation Jump to search

Többkritériumos optimalizálás (más néven többkritériumos programozás, angolul multi-objective optimization, multi-criteria optimization) — a matematikai optimalizálás azon területe, amely két vagy több, általában egymással konfliktusban álló célfüggvény (kritérium) egyidejű optimalizálásának feladatát vizsgálja[1][2]. Formálisan a feladat egy vektoros célfüggvény minimalizálásaként írható fel a megengedett megoldások halmazán.

Definíció és terminológia

A többkritériumos optimalizálási feladat általános alakja a következő: minxS{f1(x),f2(x),,fk(x)} ahol Sn a megengedett megoldások nemüres halmaza, fi:S pedig a célfüggvények (k2)[3]. A f(x)=(f1(x),,fk(x)) vektort célvektornak nevezzük.

Az egykritériumos optimalizálással ellentétben a többkritériumos felállásban általában nem létezik egyetlen olyan megoldás, amely egyszerre minden kritérium értékét javítja. Ezért az optimum klasszikus fogalmát a Pareto-optimalitás koncepciójával általánosítják[4].

  • Pareto-megoldás (Pareto-optimális vagy hatékony megoldás): olyan megengedett xS megoldás, amelyhez nem létezik olyan másik xS megoldás, amelyre fi(x)fi(x) teljesül minden i=1,,k esetén, és emellett fj(x)<fj(x) legalább egy j indexre[3][4]. Más szóval egy megoldás Pareto-optimális, ha egyetlen kritérium értéke sem javítható legalább egy másik kritérium értékének rontása nélkül.
  • Pareto-front (vagy Pareto-halmaz): az összes Pareto-optimális megoldáshoz tartozó célvektor halmaza.
  • Gyengén Pareto-optimális megoldás: olyan xS megoldás, amelyhez nem létezik olyan másik xS megoldás, amelyre fi(x)<fi(x) teljesül minden i esetén.

Főbb tulajdonságok és tételek

  • Súlyozott összeg tétele: Konvex feladatokban (ahol az összes fi(x) függvény és a S halmaz konvex) minden Pareto-optimális x megoldás megoldása a kritériumok minxSi=1kwifi(x) súlyozott összegét minimalizáló skaláris feladatnak valamely nemnegatív wi0 súlykészlet mellett. Nemkonvex feladatokban azonban ez a módszer nem feltétlenül találja meg a Pareto-front egyes részeit[5][6].
  • Karush–Kuhn–Tucker (KKT) optimalitási feltételek: A sima feladatokra vonatkozó szükséges optimalitási feltételek általánosíthatók a többkritériumos esetre. A Pareto-optimum pontjában létezik nemnegatív szorzók (súlyok) egy nullától különböző halmaza, amelyekre a célfüggvények és az aktív korlátok gradienseinek lineáris kombinációja nulla[7].
  • A megoldáshalmaz tulajdonságai: A Pareto-front számos fontos minőségi jellemzővel rendelkezik. Határát az ideális pont (amelyet az összes kritérium elemenként vett minimumaiból alkotnak) és a nadírpont (a fronton elemenként vett maximumokból) határolja[7].

Példák

  • Lineáris feladat: Minimalizálandó f1(x)=x1 és f2(x)=x2 a x1+x21, x1,x20 korlátok mellett. Itt az egyik kritérium javítása (például x1 növelése) szükségszerűen a másik rontásához vezet (a x2 csökkenéséhez). A Pareto-optimális megoldások halmaza a x1+x2=1 egyenes egy szakasza.
  • Nemkonvex feladat: Minimalizálandó f1(x)=x2 és f2(x)=(x2)2 a [0,2] szakaszon. A Pareto-front nemkonvex. A pozitív súlyokat alkalmazó súlyozott összeg módszer nem képes megtalálni a szakasz belső megoldásait (például a x=1 pontban), mivel a kritériumok lineáris kombinációja csak a x=0 vagy x=2 szélső pontokban veszi fel minimumát[8].

Kapcsolódó fogalmak és alkalmazások

A többkritériumos optimalizálás szorosan kapcsolódik a többkritériumos döntéshozatalhoz (MCDM), amely a döntéshozó preferenciáit figyelembe véve vizsgálja a legjobb alternatíva kiválasztását. A többkritériumos feladat skaláris feladattá alakításának (skalárizálásának) főbb módszerei:

  • Súlyozott összeg módszer.
  • ε-korlát módszer: Egyetlen kritériumot optimalizálnak, a többit fi(x)εi alakú korlátokká alakítják. Ez a módszer képes a front nemkonvex szakaszain lévő megoldásokat is megtalálni[9].

A többkritériumos optimalizálás széles körben alkalmazzák mérnöki tervezésben, közgazdaságtanban (például portfólióoptimalizálás), menedzsmentben és ökológiában.

Lásd még

  • Pareto-optimalitás
  • Vektoros optimalizálás
  • Döntéselmélet
  • Döntéstámogató rendszerek
  • Operációkutatás

Megjegyzések

  1. "Многокритериальная оптимизация". Википедия. [1]
  2. Трифонов А. Г. Многокритериальная оптимизация. Matlab Exponenta. [2]
  3. 3.0 3.1 "Multi-objective optimization". Encyclopedia of Mathematics. [3]
  4. 4.0 4.1 Ehrgott, M. (2012). Vilfredo Pareto and Multi-objective Optimization. Documenta Mathematica, Extra Volume ISMP, 447–453. [4]
  5. Соболь И. М., Статников Р. Б. (2006). Выбор оптимальных параметров в задачах со многими критериями (2-е изд.). Дрофа.
  6. 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. 7.0 7.1 Miettinen, K. (1998). Nonlinear Multiobjective Optimization. Kluwer Academic Publishers.
  8. Ehrgott, M. (2005). Multicriteria Optimization (2nd ed.). Springer-Verlag.
  9. Mavrotas, G. (2009). Effective implementation of the ε-constraint method in Multi-Objective Mathematical Programming problems. Applied Mathematics and Computation, 213(2), 455-465. [6]