Задача многокритериальной оптимизации. Multiobjectivization — различия между версиями
Строка 72: | Строка 72: | ||
# К системе ограничений добавляем неравенства <math>p_iw_i(x)\leq s</math> для каждого из критериев, где <math>p_i</math> - вес нормализованного критерия <math>w_i</math>; | # К системе ограничений добавляем неравенства <math>p_iw_i(x)\leq s</math> для каждого из критериев, где <math>p_i</math> - вес нормализованного критерия <math>w_i</math>; | ||
# Решаем полученную однокритериальную задачу симплекс-методом | # Решаем полученную однокритериальную задачу симплекс-методом | ||
+ | === Источники === | ||
+ | |||
+ | * [http://rain.ifmo.ru/~tsarev/teaching/ea-2012/lectures/3/multiobjectivization.pdf Knowles J., Watson R., Corne D. Reducing Local Optima in Single-Objective Problems by Multi-objectivization] | ||
+ | * [http://rain.ifmo.ru/~tsarev/teaching/ea-2012/lectures/3/p1213.pdf Friedrich T., Neumann F. Foundations of Evolutionary Multi-Objective Optimization] |
Версия 08:54, 18 июня 2012
Содержание
Определение
Мультикритериальная оптимизация - это процесс одновременной оптимизации двух или более конфликтующих целевых функций в заданной области определения.
Задача многокритериальной оптимизации
Задача многокритериальной оптимизации формулируется следующим образом:
где
это ( ) целевых функций. Векторы решений Относятся к области определения .Задача многокритериальной оптимизации состоит в поиске вектора целевых переменных, удовлетворяющего наложенным ограничениям и оптимизирующего векторную функцию, элементы которой соответствуют целевым функциям.
Критерий оптимальности
Перечислим основные критерии оптимальности
Критерий Парето
Вектор решения
- оптимальный по Парето, если : для всех и для хотя бы одного .- множество оптимальных по Парето решений.
Целевой вектор является оптимальным по Парето, если соответствующий ему вектор из области определения также оптимален по Парето.
- множество оптимальных по Парето целевых векторов.
Множество оптимальных по Парето векторов является подмножеством оптимальных по Парето в слабом смысле векторов. Вектор
является слабым оптимумом по Парето тогда, когда не существует вектора такого, что для всех .Множество оптимальных по Парето решений также называют Парето-фронтом.
Парето-фронт не может быть вычислен за полиномиальное время
Лексикографический порядок
Если одни целевые функции важнее других, критерий оптимальности можно определить по лексикографическому порядку.
Отношение лексикографического порядка
между векторами и выполняется, если , где . То есть, первая компонента вектора меньше компоненты вектора , а компоненты — уровни (если есть). Лексикографический порядок для случая действительных чисел является линейным.Вектор
является лексикографическим решением, если не существует вектора , такого, что .Поскольку отношение лексикографического порядка является линейным, можно доказать, что вектор
является лексикографическим решением, если для всех выполняется:Получение оптимальных по Парето решений
Для получения оптимальных по Парето решений используют методы скаляризации. Целевую функцию задачи многокритериальной оптимизации превращают в функцию со скалярным значением.
Функция скаляризации должна удовлетворять следующим условиям.
Пусть
- функция скаляризации. Если для выполняется:тогда решение
, что минимизирует до , является решением по Парето. Если сохраняет отношение порядка в , то есть, если для произвольных выполняется:тогда решение
, что минимизирует до , является слабым по Парето. Если непрерывна на и единственная точка минимума на , тогда является решением по Парето.Метод взвешенных множителей
Недостатки: невозможность охватить все оптимальные по Парето точки из множества Парето-фронта. В задачах комбинаторной многокритериальной оптимизации множество целевых значений не является выпуклым, поэтому метод взвешенных сумм не подходит для скаляризации целевых функций для этих задач.
Функция скаляризации Чебышева
Взвешенная функция скаляризации Чебышева сохраняет отношения
и поэтому минимум является слабым по Парето.Метод ограничений
В качестве решения задачи принимают компромиссное решение.
Компромиссное решение - эффективное решение, которое обеспечивает одинаковые минимальные взвешенные относительные потери по всем критериям одновременно. Если
- вес нормализованного критерия , то величина , где - компромиссное решение, будет постоянна для всех критериев.Описание алгоритма
- Задаем вектор предпочтений ;
- Заменяем все критерии одним ;
- К системе ограничений добавляем неравенства для каждого из критериев, где - вес нормализованного критерия ;
- Решаем полученную однокритериальную задачу симплекс-методом