Ottimizzazione multicriterio
Ottimizzazione multicriterio (anche programmazione multicriterio, ingl. multi-objective optimization, multi-criteria optimization) — è una branca dell'ottimizzazione matematica che studia i problemi di ottimizzazione simultanea rispetto a due o più funzioni obiettivo (criteri), che, di norma, sono in conflitto tra loro[1][2]. Formalmente il problema è formulato come minimizzazione di una funzione obiettivo vettoriale sull'insieme delle soluzioni ammissibili.
Definizione e terminologia
Il problema di ottimizzazione multicriterio nella forma generale è scritto come segue: dove — è un insieme non vuoto di soluzioni ammissibili, e — sono le funzioni obiettivo ()[3]. Il vettore è detto vettore obiettivo.
A differenza dell'ottimizzazione scalare, nella formulazione multicriterio di norma non esiste un'unica soluzione che migliori simultaneamente i valori di tutti i criteri. Pertanto, il classico concetto di ottimo viene generalizzato mediante il concetto di ottimalità di Pareto[4].
- Soluzione di Pareto (soluzione Pareto-ottimale o efficiente): una soluzione ammissibile , per la quale non esiste un'altra soluzione tale che per tutti , e inoltre per almeno un indice [3][4]. In altre parole, una soluzione è Pareto-ottimale se nessun valore di criterio può essere migliorato senza peggiorare almeno un altro criterio.
- Fronte di Pareto (o insieme di Pareto): l'insieme di tutti i vettori obiettivo corrispondenti alle soluzioni Pareto-ottimali.
- Soluzione debolmente Pareto-ottimale: una soluzione , per la quale non esiste un'altra soluzione tale che per tutti .
Proprietà chiave e teoremi
- Teorema della somma pesata: Nei problemi convessi (dove tutte le funzioni e l'insieme sono convessi) qualsiasi soluzione Pareto-ottimale è soluzione del problema scalare di minimizzazione della somma pesata dei criteri per un certo insieme di pesi non negativi . Tuttavia, nei problemi non convessi questo metodo potrebbe non trovare alcune parti del fronte di Pareto[5][6].
- Condizioni di ottimalità di Karush-Kuhn-Tucker (KKT): Le condizioni necessarie di ottimalità per problemi regolari sono generalizzate al caso multicriterio. In un punto di ottimo di Pareto esiste un insieme non nullo di moltiplicatori (pesi) non negativi per i quali i gradienti delle funzioni obiettivo e dei vincoli attivi sono linearmente dipendenti[7].
- Proprietà dell'insieme delle soluzioni: Il fronte di Pareto possiede una serie di importanti caratteristiche qualitative. Il suo confine è delimitato dal punto ideale (composto dai minimi elemento per elemento di tutti i criteri) e dal punto nadir (composto dai massimi elemento per elemento sul fronte)[7].
Esempi
- Problema lineare: Minimizzare e con il vincolo , . Qui il miglioramento di un criterio (ad esempio, l'aumento di ) porta inevitabilmente al peggioramento dell'altro (riduzione di ). L'insieme delle soluzioni Pareto-ottimali è il segmento di retta .
- Problema non convesso: Minimizzare e sul segmento . Il fronte di Pareto è non convesso. Il metodo delle somme pesate con pesi positivi non riesce a trovare soluzioni all'interno di questo segmento (ad esempio, nel punto ), poiché la combinazione lineare dei criteri raggiunge il minimo solo nei punti estremi o [8].
Concetti correlati e applicazioni
L'ottimizzazione multicriterio è strettamente legata al processo decisionale multicriterio (MCDM), che studia la scelta della migliore alternativa tenendo conto delle preferenze del decisore. I principali metodi di trasformazione del problema multicriterio in uno scalare (scalarizzazione) includono:
- Metodo della somma pesata.
- Metodo dei vincoli : Si ottimizza un criterio, mentre gli altri vengono trasformati in vincoli della forma . Questo metodo è in grado di trovare soluzioni nelle parti non convesse del fronte[9].
L'ottimizzazione multicriterio trova ampia applicazione nella progettazione ingegneristica, nell'economia (ad esempio, ottimizzazione del portafoglio), nella gestione e nell'ecologia.
Vedi anche
- Ottimalità di Pareto
- Ottimizzazione vettoriale
- Teoria delle decisioni
- Sistemi di supporto alle decisioni
- Ricerca operativa
Note
- ↑ "Многокритериальная оптимизация". Википедия. [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]