Многокритериальная оптимизация или программирование ( англ. Multi-objective optimization ), - это процесс одновременной оптимизации двух или более конфликтующих целевых функций в заданной области определения.
Задача многокритериальной оптимизации встречаются во многих областях науки и техники.
Определение
Задача многокритериальной оптимизации формулируется следующим образом:
где это k ( ) целевых функций. Векторы решений относятся к не пустой области определения S.
Задача многокритериальной оптимизации состоит в поиске вектора целевых переменных, удовлетворяющий наложенным ограничениям и оптимизирует векторную функцию, элементы которой соответствуют целевым функциям. Эти функции образуют математическое описание критерия удовлетворительности и, как правило, взаимно конфликтуют. Отсюда, «оптимизировать» означает найти такое решение, при котором значение целевых функций были бы приемлемыми для постановщика задачи.
Эталонные точки
Для возможности оценки качества найденных решений, обычно рассматривают такие точки в области значения целевой функции:
- идеальная точка, Y I,
- утопическая точка, Y U,
- надир ( надир ), Y N.
В некоторых случаях эти точки могут быть решениями.
Идеальная точка определяется как вектор, каждая из координат которого имеет оптимальное значение соответствующей составляющей целевой функции:
Точка надир определяется как вектор:
Утопическую точку Y U вычисляют на основе идеальной:
где ?> 0, U - единичный вектор.
Критерии оптимальности
Критерий Парето
Вектор решения называется оптимальным по Парето если не существует такого, что для всех и для хотя бы одного i. Множество оптимальных по Парето решений можно обозначить как P ( S ). Целевой вектор является оптимальным по Парето, если соответствующий ему вектор из области определения также оптимальный по Парето. Множество оптимальных по Парето целевых векторов можно обозначить как P ( Z ).
Множество оптимальных по Парето векторов является подмножеством оптимальных по Парето в слабом смысле векторов. Вектор является слабым оптимумом по Парето тогда, когда не существует вектора такого, что для всех.
Диапазон значений оптимальных по Парето решений в области допустимых значений дает полезную информацию об исследуемой задачу если целевые функции ограничены областью определения. Нижние границы оптимальной по Парето множества представлено в «идеальном целевом векторе». Его компоненты Z и полученные путем минимазации каждой целевой функции в пределах области определения.
Множество оптимальных по Парето решений также называют Парето-фронтом ( англ. Pareto-frontier ).
Лексикографический порядок
Если одни целевые функции важнее другие, критерий оптимальности можно определить с лексикографическим порядком.
Отношение лексикографического порядка < lex между векторами и выполняется, если A Q < B Q, где. То есть, первые q компонент вектора меньше компоненты вектора, а компоненты q + 1 - уровни (если есть). Лексикографический порядок для случая действительных чисел является линейным.
Вектор является лексикографическим решением, если не существует вектора такого, что .
Поскольку отношение лексикографического порядка является линейным, можно доказать, что вектор является лексикографическим решением, если для всех выполняется:
Основной особенностью решений по лексикографическим порядком является существование выбора между критериями. Лексикографическая упорядоченность требует ранжирования критериев в том смысле, что оптимизация по критерию F K возможна лишь тогда, когда был достигнут оптимума для предыдущих критериев. Это означает, что первый критерий имеет наибольший приоритет, и только в случае существования нескольких решений по этому критерию, будет поиск решений по второму и остальным критериев.
Существование иерархии среди критериев, позволяет решать лексикографические задачи последовательно, шаг за шагом минимизируя за каждым следующим критерием, и использующие оптимальные значения предварительных критериев как ограничения.
Скаляризация
Для получения оптимальных по Парето решений часто используют методы скаляризации. Поскольку целевая функция задачи многокритериальной оптимизации имеет векторные значения, ее превращают в функцию со скалярным значением. Таким образом, задача многокритериальной оптимизации сводится к задаче оптимизации с одной скалярной целевой функцией. Функция скаляризации имеет удовлетворять следующим условиям.
Пусть F - функция скаляризации, что превращает векторную функцию на скалярную. Если F сохраняет упорядоченность по Парето, то есть, если для произвольных выполняется:
тогда решение, что минимизирует F на X является решением по Парето.
Если F сохраняет отношение порядка < в, то есть, если для произвольных выполняется:
тогда решение, что минимизирует F на X является слабым по Парето. Если F непрерывна на, и единственная точка минимума F на X, тогда является решением по Парето.
Взвешенная сумма
Приведенная функция F 1 сохраняет упорядоченность по Парето для w > 0. Поэтому решения, минимизирующие F 1 на X для произвольных w > 0 являются оптимальными по Парето. Однако F 1 не сохраняет упорядоченность по Парето для а сохраняет лишь отношение < и поэтому решения, минимизирующие F 1 на X для являются слабыми по Парето.
Недостатком метода взвешенных сумм в случае выпуклой множества значений целевых функций является невозможность охватить все оптимальные по Парето точки из множества Парето-фронта.
В задачах комбинаторной многокритериальной оптимизации множество целевых значений не является выпуклой, поэтому метод взвешенных сумм не подходит для скаляризации целевых функций для этих задач.
Функция скаляризации Чебышева
Взвешенная функция скаляризации Чебышева сохраняет отношения < и поэтому минимум является слабым по Парето.
Метод изменения ограничений (?-ограничения)
По методу изменения ограничений одну из целевых функций оставляют в качестве целевой, а остальные превращают в ограничения. То есть, пусть F R будет целевой, а остальные как ограничение неравенства:
-
- при условиях:
-
-
Значение могут рассматриваться как допустимые уровни для
Методы решения
Интерактивность
Часто, решения задачи многокритериальной оптимизации происходит с участием эксперта - человека, который выбирает и принимает решения на основе информации, представленной системой поддержки принятия решений. Возможно участие группы из нескольких экспертов. В случае участия человека в поиске решения алгоритмы и методы называют интерактивными.
Эволюционные методы
Упоминания о применении генетических алгоритмов для решения задачи многокритериальной оптимизации относятся к концу 1960-х.