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

Многокритериальная оптимизация, или программирование () — это процесс одновременной оптимизации двух или более конфликтующих целевых функций в заданной области определения.

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

Определение 
Задача многокритериальной оптимизации формулируется следующим образом:
 
 
где  это  () целевых функций. Векторы решений  относятся к непустой области определения .

Задача многокритериальной оптимизации состоит в поиске вектора целевых переменных, удовлетворяющего наложенным ограничениям и оптимизирующего векторную функцию, элементы которой соответствуют целевым функциям. Эти функции образуют математическое описание критерия удовлетворительности и, как правило, взаимно конфликтуют. Отсюда, «оптимизировать» означает найти такое решение, при котором значения целевых функций были бы приемлемыми для постановщика задачи.

Эталонные точки 
Для возможности оценки качества найденных решений обычно рассматривают такие точки в области значения целевой функции:
 идеальная точка ,
 утопическая точка ,
 надир .
В некоторых случаях эти точки могут быть решениями.

Идеальная точка определяется как вектор , каждая из координат которого имеет оптимальное значение соответствующей составляющей целевой функции:
 

Точка надир  определяется как вектор:
 

Утопическую точку  вычисляют на основе идеальной:
 
где ,  — единичный вектор.

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

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

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

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

Диапазон значений оптимальных по Парето решений в области допустимых значений дает полезную информацию об исследуемой задаче, если целевые функции ограничены областью определения. Нижние границы оптимального по Парето множества представлены в «идеальном целевом векторе» . Его компоненты  получены путём минимализации каждой целевой функции в пределах области определения.

Множество оптимальных по Парето решений также называют Парето-фронтом ().

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

Если одни целевые функции важнее других, критерий оптимальности можно определить по лексикографическому порядку.

Отношение лексикографического порядка  между векторами  и  выполняется, если , где . То есть первая  компонента вектора  меньше компоненты вектора , а компоненты  — уровни (если есть). Лексикографический порядок для случая действительных чисел является линейным.

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

Поскольку отношение лексикографического порядка является линейным, можно доказать, что вектор  является лексикографическим решением, если для всех  выполняется:
 

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

Существование иерархии среди критериев позволяет решать лексикографические задачи последовательно, шаг за шагом минимизируя по каждому следующему критерию, и используя оптимальные значения предварительных критериев как ограничения.

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

Скалярное ранжирование 

Для получения оптимальных по Парето решений часто используют методы скаляризации. Поскольку целевая функция задачи многокритериальной оптимизации имеет векторные значения, её превращают в функцию со скалярным значением. Таким образом, задача многокритериальной оптимизации сводится к задаче оптимизации с одной скалярной целевой функцией. Функция скаляризации должна удовлетворять следующим условиям.

Пусть  — функция скаляризации, что превращает векторную функцию  в скалярную. Если  сохраняет упорядоченность по Парето , то есть, если для произвольных  выполняется:
 

тогда решение , что минимизирует  до , является решением по Парето.
Если  сохраняет отношение порядка  в , то есть, если для произвольных  выполняется:
 
тогда решение , что минимизирует  до , является слабым по Парето. Если  непрерывна на  и  единственная точка минимума  на , тогда  является решением по Парето.

Взвешенная сумма 
 
Приведенная функция  сохраняет упорядоченность по Парето для . Поэтому решения, минимизирующие  до  для произвольных , являются оптимальными по Парето. Однако  не сохраняет упорядоченность по Парето для , а сохраняет лишь отношение , поэтому решения, минимизирующие  на  для , являются слабыми по Парето.

Недостатком метода взвешенных сумм в случае выпуклого множества значений целевых функций является невозможность охватить все оптимальные по Парето точки из множества Парето-фронта.
В задачах комбинаторной многокритериальной оптимизации множество целевых значений не является выпуклым, поэтому метод взвешенных сумм не подходит для скаляризации целевых функций для этих задач.

Функция скаляризации Чебышёва 
 
Взвешенная функция скаляризации Чебышёва сохраняет отношения  и поэтому минимум  является слабым по Парето.

Метод изменения ограничений (ε-ограничения) 
По методу изменения ограничений одну из целевых функций оставляют в качестве целевой, а остальные превращают в ограничения. То есть пусть  будет целевой, а остальные  представим как ограничение неравенства:
 
 при условиях 
 
Значения  могут рассматриваться как допустимые уровни для .

Методы решения

Интерактивность 
Часто решение задачи многокритериальной оптимизации происходит с участием эксперта — человека, который выбирает и принимает решения на основе информации, представленной системой поддержки принятия решений. Возможно участие группы из нескольких экспертов. В случае участия человека в поиске решения алгоритмы и методы называют интерактивными.

Эволюционные методы 
Упоминания о применении генетических алгоритмов для решения задачи многокритериальной оптимизации относятся к концу 1960-х.

Метод исследования пространства параметров 
Метод основан на построении допустимого и Парето-оптимального множеств решений. Позволяет решать задачи проектирования, идентификации.

См. также 
 Эффективность по Парето
 Задача оптимизации
 Скалярное ранжирование

Примечания

Литература 
 
 Лотов А. В., Поспелова И. И. Конспект лекций по теории и методам многокритериальной оптимизации. Учеб. пос. М., 2005. 127 с.

Ресурсы интернета 
 Трифонов А. Г. Многокритериальная оптимизация

Теория оптимизации
Проектирование